Page MenuHomec4science

No OneTemporary

File Metadata

Created
Fri, May 3, 21:51
This file is larger than 256 KB, so syntax highlighting was skipped.
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e48f8f25a..bf651251e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,179 +1,180 @@
#===============================================================================
# @file CMakeLists.txt
#
# @author Nicolas Richart <nicolas.richart@epfl.ch>
#
# @date Mon Jun 14 19:12:20 2010
#
# @brief main configuration file
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
# @section DESCRIPTION
#-------------------------------------------------------------------------------
# _ _
# | | | |
# __ _| | ____ _ _ __ | |_ _ _
# / _` | |/ / _` | '_ \| __| | | |
# | (_| | < (_| | | | | |_| |_| |
# \__,_|_|\_\__,_|_| |_|\__|\__,_|
#
#===============================================================================
#===============================================================================
# CMake Project
#===============================================================================
cmake_minimum_required(VERSION 2.8)
+
project(akantu)
enable_language(CXX)
#===============================================================================
# Misc. config for cmake
#===============================================================================
set(AKANTU_CMAKE_DIR "${PROJECT_SOURCE_DIR}/cmake")
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake")
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake/Modules")
set(BUILD_SHARED_LIBS ON CACHE BOOL "Build shared libraries.")
if(NOT AKANTU_TARGETS_EXPORT)
set(AKANTU_TARGETS_EXPORT AkantuLibraryDepends)
endif()
include(CMakeVersionGenerator)
include(CMakePackagesSystem)
include(CMakeFlagsHandling)
include(AkantuMacros)
#cmake_activate_debug_message()
#===============================================================================
# Version Number
#===============================================================================
# AKANTU version number. An even minor number corresponds to releases.
set(AKANTU_MAJOR_VERSION 1)
set(AKANTU_MINOR_VERSION 0)
set(AKANTU_PATCH_VERSION 0)
define_project_version()
#===============================================================================
# Options
#===============================================================================
# Debug
option(AKANTU_DEBUG "Compiles akantu with the debug messages" ON)
mark_as_advanced(AKANTU_DEBUG)
add_flags(cxx "-Wall")
if(NOT AKANTU_DEBUG)
set(AKANTU_NDEBUG ON)
else()
set(AKANTU_NDEBUG OFF)
endif()
#Profiling
set(CMAKE_CXX_FLAGS_PROFILING "-g -pg" CACHE STRING "Flags used by the compiler during profiling builds")
set(CMAKE_EXE_LINKER_FLAGS_PROFILING "-pg" CACHE STRING "Flags used by the linker during profiling builds")
set(CMAKE_SHARED_LINKER_FLAGS_PROFILING "-pg" CACHE STRING "Flags used by the linker during profiling builds")
mark_as_advanced(CMAKE_CXX_FLAGS_PROFILING)
mark_as_advanced(CMAKE_EXE_LINKER_FLAGS_PROFILING)
mark_as_advanced(CMAKE_SHARED_LINKER_FLAGS_PROFILING)
include(CMakeDetermineCCompiler)
#===============================================================================
# Dependencies
#===============================================================================
set(Boost_USE_STATIC_LIBS ON)
set(Boost_USE_MULTITHREADED ON)
set(Boost_USE_STATIC_RUNTIME OFF)
find_package( Boost 1.36.0 COMPONENTS chrono system)
if(Boost_FOUND)
include_directories(${Boost_INCLUDE_DIRS})
set (AKANTU_EXTERNAL_LIBRARIES ${Boost_LIBRARIES})
endif()
add_all_packages(${PROJECT_SOURCE_DIR}/packages ${PROJECT_SOURCE_DIR}/src)
## meta option \todo better way to do it when multiple package give enable the
## same feature
if(AKANTU_SCOTCH)
set(AKANTU_PARTITIONER ON)
else()
set(AKANTU_PARTITIONER OFF)
endif()
if(AKANTU_MUMPS)
set(AKANTU_SOLVER ON)
else()
set(AKANTU_SOLVER OFF)
endif()
#===============================================================================
# Akantu library
#===============================================================================
add_subdirectory(src)
#===============================================================================
# Documentation
#===============================================================================
option(AKANTU_DOCUMENTATION "Build source documentation using Doxygen." OFF)
if(AKANTU_DOCUMENTATION)
add_subdirectory(doc)
set(AKANTU_DOC_EXCLUDE_FILES "" CACHE INTERNAL "")
else()
set(AKANTU_DOC_EXCLUDE_FILES "${PROJECT_SOURCE_DIR}/doc/manual" CACHE INTERNAL "")
endif()
#===============================================================================
# Examples and tests
#===============================================================================
option(AKANTU_EXAMPLES "Activate examples" OFF)
option(AKANTU_TESTS "Activate tests" OFF)
if(AKANTU_EXAMPLES OR AKANTU_TESTS)
include(AkantuTestAndExamples)
find_package(GMSH REQUIRED)
endif()
if(AKANTU_EXAMPLES)
add_subdirectory(examples)
endif()
if(AKANTU_TESTS)
enable_testing()
include(CTest)
set(AKANTU_TESTS_EXCLUDE_FILES "" CACHE INTERNAL "")
add_subdirectory(test)
else()
set(AKANTU_TESTS_EXCLUDE_FILES "${PROJECT_SOURCE_DIR}/test" CACHE INTERNAL "")
endif()
#===============================================================================
# Install and Packaging
#===============================================================================
include(AkantuInstall)
if(NOT AKANTU_DISABLE_CPACK)
include(AkantuCPack)
endif()
set(TMP ${AKANTU_INCLUDE_DIRS})
set(AKANTU_INCLUDE_DIRS ${TMP} CACHE INTERNAL "Internal include directories to link with Akantu as a subproject")
diff --git a/CTestConfig.cmake b/CTestConfig.cmake
index 3495a9553..1b394e5d2 100644
--- a/CTestConfig.cmake
+++ b/CTestConfig.cmake
@@ -1,43 +1,43 @@
#===============================================================================
# @file CTestConfig.cmake
#
# @author Nicolas Richart <nicolas.richart@epfl.ch>
#
# @date Thu Jan 06 12:12:51 2011
#
# @brief configuration for ctest
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
#===============================================================================
## This file should be placed in the root directory of your project.
## Then modify the CMakeLists.txt file in the root directory of your
## project to incorporate the testing dashboard.
## # The following are required to uses Dart and the Cdash dashboard
## ENABLE_TESTING()
## INCLUDE(CTest)
set(CTEST_PROJECT_NAME "Akantu")
set(CTEST_NIGHTLY_START_TIME "06:10:00 EST")
set(CTEST_CMAKE_GENERATOR "Unix Makefiles")
-set(CTEST_DROP_METHOD "http")
+set(CTEST_DROP_METHOD "https")
set(CTEST_DROP_SITE "lsmssrv1.epfl.ch")
set(CTEST_DROP_LOCATION "/CDash/submit.php?project=Akantu")
set(CTEST_DROP_SITE_CDASH TRUE)
diff --git a/cmake/AkantuCPack.cmake b/cmake/AkantuCPack.cmake
index 654bbed2c..c046751ca 100644
--- a/cmake/AkantuCPack.cmake
+++ b/cmake/AkantuCPack.cmake
@@ -1,81 +1,70 @@
#===============================================================================
# @file AkantuCPack.cmake
#
# @author Nicolas Richart <nicolas.richart@epfl.ch>
#
# @date Wed Oct 17 15:19:18 2012
#
# @brief Configure the packaging system
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
#===============================================================================
set(PACKAGE_FILE_NAME "akantu" CACHE STRING "Name of package to be generated")
mark_as_advanced(PACKAGE_FILE_NAME)
set(CPACK_GENERATOR "DEB;TGZ;TBZ2;STGZ")
# Debian config package
set(CPACK_DEBIAN_PACKAGE_MAINTAINER "guillaume.anciaux@epfl.ch, nicolas.richart@epfl.ch")
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "amd64" CACHE STRING "Architecture of debian package generation")
else()
set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "i386" CACHE STRING "Architecture of debian package generation")
endif()
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "Akantu library")
set(CPACK_DEBIAN_PACKAGE_DEPENDS "${${_project}_PACKAGE_SYSTEM_DEBIAN_PACKAGE_DEPENDS}")
# General configuration
set(CPACK_PACKAGE_VENDOR "LSMS")
set(CPACK_PACKAGE_FILE_NAME "${PACKAGE_FILE_NAME}-${AKANTU_VERSION}-${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}")
set(CPACK_PACKAGE_VERSION "${AKANTU_VERSION}")
set(CPACK_COMPONENTS_ALL lib dev)
set(CPACK_COMPONENT_LIB_DISPLAY_NAME "Libraries")
set(CPACK_COMPONENT_DEV_DISPLAY_NAME "C++ Headers")
set(CPACK_COMPONENT_DEV_DEPENDS lib)
set(CPACK_COMPONENT_LIB_DESCRIPTION
"Akantu libraries")
set(CPACK_COMPONENT_DEV_DESCRIPTION
"Akantu C/C++ header files")
set(CPACK_COMPONENT_LIB_GROUP "Akantu Libraries")
set(CPACK_COMPONENT_DEV_GROUP "Development")
set(CPACK_SOURCE_PACKAGE_FILE_NAME "${PACKAGE_FILE_NAME}-${AKANTU_VERSION}-src")
set(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/COPYING")
list(APPEND CPACK_SOURCE_IGNORE_FILES ${AKANTU_EXCLUDE_SOURCE_FILES} ${AKANTU_TESTS_EXCLUDE_FILES} ${AKANTU_DOC_EXCLUDE_FILES})
foreach(_pkg ${${_project}_PACKAGE_SYSTEM_PACKAGES_OFF})
list(APPEND CPACK_SOURCE_IGNORE_FILES ${CMAKE_SOURCE_DIR}/packages/${_pkg}.cmake)
endforeach()
list(APPEND CPACK_SOURCE_IGNORE_FILES "/doc/manual/;/.*build.*/;/CVS/;/\\\\.svn/;/\\\\.bzr/;/\\\\.hg/;/\\\\.git/;\\\\.swp$;\\\\.#;/#;~")
include(CPack)
-
-set(AKANTU_AUTHENTICATION_FILE "${PROJECT_SOURCE_DIR_ACL}" CACHE PATH "File to generate the authentication for svn")
-set(AKANTU_TRUNK "/akantu/trunk" CACHE PATH "Akantu repos")
-set(AKANTU_SVNAUTHZ_FILE "${PROJECT_BINARY_DIR}/svnauthz.akantu" CACHE PATH "Generated authz file")
-mark_as_advanced(AKANTU_AUTHENTICATION_FILE)
-mark_as_advanced(AKANTU_TRUNK)
-mark_as_advanced(AKANTU_SVNAUTHZ_FILE)
-
-if(AKANTU_AUTHENTICATION_FILE)
- generate_svn_auth(${AKANTU_AUTHENTICATION_FILE} ${AKANTU_SVNAUTHZ_FILE})
-endif()
\ No newline at end of file
diff --git a/cmake/AkantuMacros.cmake b/cmake/AkantuMacros.cmake
index dcd397248..8e10c5ca5 100644
--- a/cmake/AkantuMacros.cmake
+++ b/cmake/AkantuMacros.cmake
@@ -1,135 +1,134 @@
#===============================================================================
# @file AkantuMacros.cmake
#
# @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
# @author Nicolas Richart <nicolas.richart@epfl.ch>
#
# @date Thu Feb 17 17:28:21 2011
#
# @brief Set of macros used by akantu cmake files
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
#===============================================================================
-#===============================================================================
macro(check_for_isnan result)
include(CheckFunctionExists)
check_function_exists(std::isnan HAVE_STD_ISNAN)
if(HAVE_STD_ISNAN)
set(result "std::isnan(x)")
else()
check_function_exists(isnan HAVE_ISNAN)
if(HAVE_ISNAN)
set(result "(::isnan(x))")
else()
check_function_exists(_isnan HAVE_ISNAN_MATH_H)
if(HAVE_ISNAN_MATH_H)
set(result "(_isnan(x))")
else()
set(result (x == std::numeric_limits<Real>::quiet_NAN()))
endif()
endif()
endif()
endmacro()
#===============================================================================
macro(copy_files target_depend)
foreach(_file ${ARGN})
set(_target ${CMAKE_CURRENT_BINARY_DIR}/${_file})
set(_source ${CMAKE_CURRENT_SOURCE_DIR}/${_file})
add_custom_command(
OUTPUT ${_target}
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${_source} ${_target}
DEPENDS ${_source}
)
set(_target_name ${target_depend}_${_file})
add_custom_target(${_target_name} DEPENDS ${_target})
add_dependencies(${target_depend} ${_target_name})
endforeach()
endmacro()
#===============================================================================
macro(add_akantu_definitions)
foreach(_definition ${AKANTU_DEFINITIONS})
add_definitions(-D${_definition})
endforeach()
endmacro()
#===============================================================================
if(__CMAKE_PARSE_ARGUMENTS_INCLUDED)
return()
endif()
set(__CMAKE_PARSE_ARGUMENTS_INCLUDED TRUE)
function(CMAKE_PARSE_ARGUMENTS prefix _optionNames _singleArgNames _multiArgNames)
# first set all result variables to empty/FALSE
foreach(arg_name ${_singleArgNames} ${_multiArgNames})
set(${prefix}_${arg_name})
endforeach(arg_name)
foreach(option ${_optionNames})
set(${prefix}_${option} FALSE)
endforeach(option)
set(${prefix}_UNPARSED_ARGUMENTS)
set(insideValues FALSE)
set(currentArgName)
# now iterate over all arguments and fill the result variables
foreach(currentArg ${ARGN})
list(FIND _optionNames "${currentArg}" optionIndex) # ... then this marks the end of the arguments belonging to this keyword
list(FIND _singleArgNames "${currentArg}" singleArgIndex) # ... then this marks the end of the arguments belonging to this keyword
list(FIND _multiArgNames "${currentArg}" multiArgIndex) # ... then this marks the end of the arguments belonging to this keyword
if(${optionIndex} EQUAL -1 AND ${singleArgIndex} EQUAL -1 AND ${multiArgIndex} EQUAL -1)
if(insideValues)
if("${insideValues}" STREQUAL "SINGLE")
set(${prefix}_${currentArgName} ${currentArg})
set(insideValues FALSE)
elseif("${insideValues}" STREQUAL "MULTI")
list(APPEND ${prefix}_${currentArgName} ${currentArg})
endif()
else(insideValues)
list(APPEND ${prefix}_UNPARSED_ARGUMENTS ${currentArg})
endif(insideValues)
else()
if(NOT ${optionIndex} EQUAL -1)
set(${prefix}_${currentArg} TRUE)
set(insideValues FALSE)
elseif(NOT ${singleArgIndex} EQUAL -1)
set(currentArgName ${currentArg})
set(${prefix}_${currentArgName})
set(insideValues "SINGLE")
elseif(NOT ${multiArgIndex} EQUAL -1)
set(currentArgName ${currentArg})
set(${prefix}_${currentArgName})
set(insideValues "MULTI")
endif()
endif()
endforeach(currentArg)
# propagate the result variables to the caller:
foreach(arg_name ${_singleArgNames} ${_multiArgNames} ${_optionNames})
set(${prefix}_${arg_name} ${${prefix}_${arg_name}} PARENT_SCOPE)
endforeach(arg_name)
set(${prefix}_UNPARSED_ARGUMENTS ${${prefix}_UNPARSED_ARGUMENTS} PARENT_SCOPE)
endfunction(CMAKE_PARSE_ARGUMENTS _options _singleArgs _multiArgs)
diff --git a/cmake/AkantuTestAndExamples.cmake b/cmake/AkantuTestAndExamples.cmake
index 10a2059cb..649350320 100644
--- a/cmake/AkantuTestAndExamples.cmake
+++ b/cmake/AkantuTestAndExamples.cmake
@@ -1,237 +1,240 @@
#===============================================================================
# @file AkantuTestAndExamples.cmake
#
# @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
# @author Nicolas Richart <nicolas.richart@epfl.ch>
#
# @date Mon Oct 25 13:55:14 2010
#
# @brief macros for tests and examples
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
# @section DESCRIPTION
#
#===============================================================================
set(AKANTU_DIFF_SCRIPT ${AKANTU_CMAKE_DIR}/akantu_diff.sh)
#===============================================================================
macro(manage_test_and_example et_name desc build_all label)
string(TOUPPER ${et_name} upper_name)
cmake_parse_arguments(manage_test_and_example
""
"PACKAGE"
""
${ARGN}
)
set(_activated ON)
if(manage_test_and_example_PACKAGE)
list(FIND ${_project}_PACKAGE_SYSTEM_PACKAGES_ON ${manage_test_and_example_PACKAGE} _ret)
if(_ret EQUAL -1)
set(_activated OFF)
file(RELATIVE_PATH _dir ${PROJECT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/${et_name})
list(APPEND AKANTU_TESTS_EXCLUDE_FILES /${_dir})
set(AKANTU_TESTS_EXCLUDE_FILES ${AKANTU_TESTS_EXCLUDE_FILES} CACHE INTERNAL "")
endif()
endif()
option(AKANTU_BUILD${label}${upper_name} "${desc}")
mark_as_advanced(AKANTU_BUILD_${upper_name})
if(${build_all} OR NOT _activated)
set(AKANTU_BUILD${label}${upper_name}_OLD
${AKANTU_BUILD${label}${upper_name}}
CACHE INTERNAL "${desc}" FORCE)
set(AKANTU_BUILD${label}${upper_name} ${_activated}
CACHE INTERNAL "${desc}" FORCE)
else()
if(DEFINED AKANTU_BUILD${label}${upper_name}_OLD)
set(AKANTU_BUILD${label}${upper_name}
${AKANTU_BUILD${label}${upper_name}_OLD}
CACHE BOOL "${desc}" FORCE)
unset(AKANTU_BUILD${label}${upper_name}_OLD
CACHE)
endif(DEFINED AKANTU_BUILD${label}${upper_name}_OLD)
endif()
if(AKANTU_BUILD${label}${upper_name})
add_subdirectory(${et_name})
endif(AKANTU_BUILD${label}${upper_name})
endmacro()
#===============================================================================
# Tests
#===============================================================================
if(AKANTU_TESTS)
option(AKANTU_BUILD_ALL_TESTS "Build all tests")
# mark_as_advanced(AKANTU_BUILD_ALL_TESTS)
endif(AKANTU_TESTS)
#===============================================================================
macro(register_test_old test_name)
add_executable(${test_name} ${ARGN})
target_link_libraries(${test_name} akantu ${AKANTU_EXTERNAL_LIBRARIES})
if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${test_name}.sh)
file(COPY ${test_name}.sh DESTINATION .)
endif()
if(EXISTS ${CMAKE_CURRENT_BINARY_DIR}/${test_name}.sh)
add_test(${test_name} ${CMAKE_CURRENT_BINARY_DIR}/${test_name}.sh)
elseif(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${test_name}.verified)
add_test(${test_name} ${AKANTU_DIFF_SCRIPT} ${test_name} ${CMAKE_CURRENT_SOURCE_DIR}/${test_name}.verified)
else()
add_test(${test_name} ${CMAKE_CURRENT_BINARY_DIR}/${test_name})
endif()
endmacro()
#===============================================================================
macro(add_akantu_test test_name desc)
manage_test_and_example(${test_name} ${desc} AKANTU_BUILD_ALL_TESTS _ ${ARGN})
endmacro()
#===============================================================================
# Examples
#===============================================================================
if(AKANTU_EXAMPLES)
option(AKANTU_BUILD_ALL_EXAMPLES "Build all examples")
# mark_as_advanced(AKANTU_BUILD_ALL_EXAMPLES)
endif(AKANTU_EXAMPLES)
#===============================================================================
macro(register_example example_name)
add_executable(${example_name} ${ARGN})
target_link_libraries(${example_name} akantu ${AKANTU_EXTERNAL_LIBRARIES})
endmacro()
#===============================================================================
macro(add_example example_name desc)
manage_test_and_example(${example_name} ${desc} AKANTU_BUILD_ALL_EXAMPLES _EXAMPLE_ ${ARGN})
endmacro()
#===============================================================================
-macro(register_test test_name)
+function(register_test test_name)
set(multi_variables
SOURCES FILES_TO_COPY DEPENDENCIES DIRECTORIES_TO_CREATE COMPILE_OPTIONS EXTRA_FILES
)
cmake_parse_arguments(register_test
""
"PACKAGE"
"${multi_variables}"
${ARGN}
)
# add the test in a package if needed
+ set(_package_name AKANTU_CORE)
if(register_test_PACKAGE)
package_pkg_name(${register_test_PACKAGE} _package_name)
list(FIND ${_package_name}_TESTS ${test_name} _ret)
if(_ret EQUAL -1)
list(APPEND ${_package_name}_TESTS ${test_name})
endif()
endif()
# check if the test should be activated
set(_activate_test 0)
foreach(_pkg ${${_project}_PACKAGE_SYSTEM_PACKAGES_ON})
package_pkg_name(${_pkg} _package_name)
list(FIND ${_package_name}_TESTS ${test_name} _ret)
if(NOT _ret EQUAL -1)
set(_activate_test 1)
endif()
endforeach()
# check if the package is registered in at least a package
set(_present_in_packages 0)
foreach(_pkg ${${_project}_PACKAGE_SYSTEM_PACKAGES_NAMES_LIST_ALL})
package_pkg_name(${_pkg} _package_name)
list(FIND ${_package_name}_TESTS ${test_name} _ret)
if(NOT _ret EQUAL -1)
set(_present_in_packages 1)
endif()
endforeach()
if(NOT _present_in_packages)
message("The test ${test_name} is not registered in any packages")
endif()
if(_activate_test)
set(_source_file)
foreach(_file ${register_test_SOURCES} ${register_test_UNPARSED_ARGUMENTS} ${register_test_EXTRA_FILES})
list(APPEND _source_file ${CMAKE_CURRENT_SOURCE_DIR}/${_file})
endforeach()
add_executable(${test_name} ${register_test_SOURCES} ${register_test_UNPARSED_ARGUMENTS})
if(register_test_COMPILE_OPTIONS)
set_target_properties(${test_name}
PROPERTIES COMPILE_DEFINITIONS "${register_test_COMPILE_OPTIONS}")
endif()
target_link_libraries(${test_name} akantu ${AKANTU_EXTERNAL_LIBRARIES})
if(register_test_FILES_TO_COPY)
foreach(_file ${register_test_FILES_TO_COPY})
file(COPY ${_file} DESTINATION .)
list(APPEND _source_file ${CMAKE_CURRENT_SOURCE_DIR}/${_file})
endforeach()
endif()
if(register_test_DIRECTORIES_TO_CREATE)
foreach(_dir ${register_test_DIRECTORIES_TO_CREATE})
if(IS_ABSOLUTE ${dir})
file(MAKE_DIRECTORY ${_dir})
else()
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_dir})
endif()
endforeach()
endif()
foreach(_dep ${register_test_DEPENDENCIES})
add_dependencies(${test_name} ${_dep})
get_target_property(_dep_in_ressources ${_dep} RESSOURCES)
if(_dep_in_ressources)
list(APPEND _source_file ${_dep_in_ressources})
endif()
endforeach()
if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${test_name}.sh)
file(COPY ${test_name}.sh DESTINATION .)
list(APPEND _source_file ${CMAKE_CURRENT_SOURCE_DIR}/${test_name}.sh)
add_test(${test_name} ${CMAKE_CURRENT_BINARY_DIR}/${test_name}.sh)
elseif(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${test_name}.verified)
list(APPEND _source_file ${CMAKE_CURRENT_SOURCE_DIR}/${test_name}.verified)
add_test(${test_name} ${AKANTU_DIFF_SCRIPT} ${test_name} ${CMAKE_CURRENT_SOURCE_DIR}/${test_name}.verified)
else()
add_test(${test_name} ${CMAKE_CURRENT_BINARY_DIR}/${test_name})
endif()
set(_tmp ${AKANTU_TESTS_FILES})
foreach(_file ${_source_file})
file(RELATIVE_PATH __file ${PROJECT_SOURCE_DIR} ${_file})
list(APPEND _tmp ${__file})
+ list(APPEND _pkg_tmp ${__file})
endforeach()
set(AKANTU_TESTS_FILES ${_tmp} CACHE INTERNAL "")
+ set(${_package_name}_TESTS_FILES ${_pkg_tmp} CACHE INTERNAL "")
endif()
-endmacro()
\ No newline at end of file
+endfunction()
\ No newline at end of file
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
index c9e8b3c56..53d832934 100644
--- a/doc/CMakeLists.txt
+++ b/doc/CMakeLists.txt
@@ -1,51 +1,52 @@
#===============================================================================
# @file CMakeLists.txt
#
# @author Nicolas Richart <nicolas.richart@epfl.ch>
#
# @date Wed Oct 17 15:19:18 2012
#
# @brief Build the documentation
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
#===============================================================================
find_package(Doxygen REQUIRED)
if(DOXYGEN_FOUND)
set(DOXYGEN_WARNINGS NO)
set(DOXYGEN_QUIET YES)
if(CMAKE_VERBOSE_MAKEFILE)
set(DOXYGEN_WARNINGS YES)
set(DOXYGEN_QUIET NO)
endif(CMAKE_VERBOSE_MAKEFILE)
add_subdirectory(doxygen)
endif(DOXYGEN_FOUND)
+string(TOUPPER ${PROJECT_NAME} _project)
-foreach(_pkg ${PACKAGE_SYSTEM_PACKAGES_OFF})
+foreach(_pkg ${${_project}_PACKAGE_SYSTEM_PACKAGES_OFF})
package_pkg_name(${_pkg} _package_name)
foreach(_file ${${_package_name}_DOC})
list(APPEND _AKANTU_DOC_EXCLUDE_FILES doc/${_file})
endforeach()
endforeach()
set(AKANTU_DOC_EXCLUDE_FILES ${_AKANTU_DOC_EXCLUDE_FILES} CACHE INTERNAL "Documentation files to excluse from Akantu Package" FORCE)
\ No newline at end of file
diff --git a/packages/cohesive_element.cmake b/packages/cohesive_element.cmake
index 0d33aef23..35143529e 100644
--- a/packages/cohesive_element.cmake
+++ b/packages/cohesive_element.cmake
@@ -1,80 +1,81 @@
#===============================================================================
# @file cohesive_element.cmake
#
# @author Nicolas Richart <nicolas.richart@epfl.ch>
#
# @date Tue Oct 16 14:05:02 2012
#
# @brief package description for cohesive elements
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
#===============================================================================
option(AKANTU_COHESIVE_ELEMENT "Use cohesive_element package of Akantu" OFF)
set(AKANTU_COHESIVE_ELEMENT_FILES
model/solid_mechanics/materials/material_cohesive_includes.hh
fem/cohesive_element.cc
fem/shape_cohesive.hh
fem/cohesive_element.hh
fem/fem_template_cohesive.cc
fem/fem_template_cohesive_inline_impl.cc
fem/fem_template_cohesive_tmpl.hh
fem/integrator_cohesive.hh
fem/integrator_cohesive_inline_impl.cc
fem/shape_cohesive_inline_impl.cc
+ model/solid_mechanics/solid_mechanics_model_cohesive_inline_impl.cc
model/solid_mechanics/materials/material_cohesive/material_cohesive_inline_impl.cc
model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_exponential_inline_impl.cc
model/solid_mechanics/solid_mechanics_model_cohesive.cc
model/solid_mechanics/solid_mechanics_model_cohesive_inline_impl.cc
model/solid_mechanics/materials/material_cohesive/material_cohesive.cc
model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_bilinear.cc
model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_linear_extrinsic.cc
model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_exponential.cc
model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_linear_exponential_extrinsic.cc
model/solid_mechanics/solid_mechanics_model_cohesive.hh
model/solid_mechanics/materials/material_cohesive/material_cohesive.hh
model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_bilinear.hh
model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_exponential.hh
model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_linear_extrinsic.hh
model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_linear_exponential_extrinsic.hh
- model/solid_mechanics/materials/material_viscoelastic/material_standard_linear_solid_deviatoric.hh
)
set(AKANTU_COHESIVE_ELEMENT_TESTS
test_cohesive_buildfacets_tetrahedron
test_cohesive_buildfacets_hexahedron
test_cohesive_intrinsic
test_cohesive_intrinsic_quadrangle
test_cohesive_extrinsic
test_cohesive_extrinsic_quadrangle
test_cohesive_buildfragments
test_cohesive_intrinsic_impl
+ test_cohesive_parallel_intrinsic
)
set(AKANTU_COHESIVE_ELEMENT_DOC
manual/manual-cohesive_element.tex
)
\ No newline at end of file
diff --git a/packages/core.cmake b/packages/core.cmake
index 123a18485..6710fa156 100644
--- a/packages/core.cmake
+++ b/packages/core.cmake
@@ -1,235 +1,234 @@
#===============================================================================
# @file core.cmake
#
# @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
# @author Nicolas Richart <nicolas.richart@epfl.ch>
#
# @date Mon Nov 21 18:19:15 2011
#
# @brief package description for core
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
#===============================================================================
set(AKANTU_CORE ON CACHE INTERNAL "core package for Akantu" FORCE)
set(AKANTU_CORE_FILES
# source files
common/aka_common.cc
common/aka_error.cc
common/aka_extern.cc
common/aka_static_memory.cc
common/aka_memory.cc
common/aka_vector.cc
common/aka_math.cc
fem/shape_lagrange.cc
fem/shape_linked.cc
- fem/integrator_gauss.cc
+ #fem/integrator_gauss.cc
fem/mesh.cc
fem/fem.cc
- fem/element_class.cc
io/dumper/dumpable.hh
+ io/mesh_io.cc
+ io/model_io.cc
+ io/mesh_io/mesh_io_msh.cc
+ io/mesh_io/mesh_io_diana.cc
model/model.cc
model/solid_mechanics/solid_mechanics_model.cc
model/solid_mechanics/solid_mechanics_model_mass.cc
model/solid_mechanics/solid_mechanics_model_boundary.cc
model/solid_mechanics/solid_mechanics_model_material.cc
model/solid_mechanics/material.cc
model/solid_mechanics/material_parameters.cc
model/solid_mechanics/materials/material_elastic.cc
- mesh_utils/mesh_io.cc
mesh_utils/mesh_pbc.cc
- mesh_utils/mesh_io/mesh_io_msh.cc
- mesh_utils/mesh_io/mesh_io_msh_struct.cc
- mesh_utils/mesh_io/mesh_io_diana.cc
mesh_utils/mesh_partition.cc
mesh_utils/mesh_utils.cc
solver/sparse_matrix.cc
solver/solver.cc
synchronizer/synchronizer_registry.cc
synchronizer/synchronizer.cc
synchronizer/distributed_synchronizer.cc
synchronizer/pbc_synchronizer.cc
synchronizer/data_accessor.cc
synchronizer/static_communicator.cc
synchronizer/dof_synchronizer.cc
#header files
- mesh_utils/mesh_io/mesh_io_msh.hh
- mesh_utils/mesh_io/mesh_io_msh_struct.hh
- mesh_utils/mesh_io/mesh_io_diana.hh
+ io/mesh_io.hh
+ io/model_io.hh
+ io/mesh_io/mesh_io_msh.hh
+ io/mesh_io/mesh_io_diana.hh
mesh_utils/mesh_utils.hh
mesh_utils/mesh_partition.hh
- mesh_utils/mesh_io.hh
mesh_utils/mesh_partition/mesh_partition_scotch.hh
solver/sparse_matrix.hh
solver/solver.hh
synchronizer/synchronizer.hh
synchronizer/synchronizer_registry.hh
synchronizer/static_communicator_dummy.hh
synchronizer/static_communicator_inline_impl.hh
synchronizer/distributed_synchronizer.hh
synchronizer/pbc_synchronizer.hh
synchronizer/static_communicator.hh
synchronizer/dof_synchronizer.hh
synchronizer/real_static_communicator.hh
synchronizer/data_accessor.hh
synchronizer/communication_buffer.hh
common/aka_fwd.hh
common/aka_grid.hh
common/aka_grid_tmpl.hh
common/aka_types.hh
common/aka_static_memory.hh
common/aka_static_memory_tmpl.hh
common/aka_memory.hh
common/aka_math.hh
common/aka_math_tmpl.hh
common/aka_csr.hh
common/aka_error.hh
common/aka_common.hh
common/aka_vector.hh
common/aka_vector_tmpl.hh
common/aka_circular_vector.hh
common/aka_event_handler.hh
+ common/aka_random_generator.hh
common/aka_bounding_box.hh
common/aka_ci_string.hh
common/aka_plane.hh
common/aka_polytope.hh
common/aka_sphere.hh
common/aka_timer.hh
common/aka_tree.hh
common/aka_typelist.hh
common/aka_visitor.hh
fem/mesh.hh
fem/fem.hh
fem/by_element_type.hh
fem/shape_functions.hh
fem/shape_lagrange.hh
fem/fem_template.hh
fem/fem_template_tmpl.hh
fem/integrator_gauss.hh
fem/integrator.hh
fem/element_class.hh
fem/shape_linked.hh
model/model.hh
model/parser.hh
model/parser_tmpl.hh
model/structural_mechanics/structural_mechanics_model.hh
model/integration_scheme/integration_scheme_2nd_order.hh
model/integration_scheme/generalized_trapezoidal.hh
model/integration_scheme/newmark-beta.hh
model/integration_scheme/integration_scheme_1st_order.hh
model/solid_mechanics/solid_mechanics_model.hh
model/solid_mechanics/solid_mechanics_model_tmpl.hh
model/solid_mechanics/material.hh
model/solid_mechanics/material_parameters.hh
model/solid_mechanics/material_parameters_tmpl.hh
model/solid_mechanics/materials/material_elastic.hh
#inline implementation files
mesh_utils/mesh_utils_inline_impl.cc
solver/sparse_matrix_inline_impl.cc
synchronizer/dof_synchronizer_inline_impl.cc
synchronizer/communication_buffer_inline_impl.cc
common/aka_common_inline_impl.cc
common/aka_memory_inline_impl.cc
common/aka_static_memory_inline_impl.cc
common/aka_circular_vector_inline_impl.cc
fem/integrator_gauss_inline_impl.cc
fem/fem_template_inline_impl.cc
fem/element_classes/element_class_triangle_3_inline_impl.cc
fem/element_classes/element_class_segment_2_inline_impl.cc
fem/element_classes/element_class_quadrangle_4_inline_impl.cc
fem/element_classes/element_class_quadrangle_8_inline_impl.cc
- fem/element_classes/element_class_bernoulli_beam_2_inline_impl.cc
fem/element_classes/element_class_hexahedron_8_inline_impl.cc
fem/element_classes/element_class_triangle_6_inline_impl.cc
fem/element_classes/element_class_tetrahedron_10_inline_impl.cc
fem/element_classes/element_class_segment_3_inline_impl.cc
fem/element_classes/element_class_tetrahedron_4_inline_impl.cc
fem/shape_functions_inline_impl.cc
fem/mesh_inline_impl.cc
- fem/element_class_inline_impl.cc
fem/by_element_type_tmpl.hh
fem/fem_inline_impl.cc
fem/shape_linked_inline_impl.cc
fem/shape_lagrange_inline_impl.cc
model/model_inline_impl.cc
model/integration_scheme/generalized_trapezoidal_inline_impl.cc
model/integration_scheme/newmark-beta_inline_impl.cc
model/solid_mechanics/solid_mechanics_model_inline_impl.cc
model/solid_mechanics/materials/material_elastic_inline_impl.cc
model/solid_mechanics/material_inline_impl.cc
model/parser_inline_impl.cc
-
+ fem/geometrical_element.cc
+ fem/element_class_tmpl.hh
+ fem/element_class.cc
+ fem/integration_element.cc
+ fem/interpolation_element.cc
model/solid_mechanics/materials/material_elastic_orthotropic.cc
model/solid_mechanics/materials/material_elastic_orthotropic.hh
model/solid_mechanics/materials/material_elastic_orthotropic_inline_impl.cc
)
-
include(CheckCXXCompilerFlag)
check_cxx_compiler_flag (-std=c++0x HAVE_NEW_STD)
if (HAVE_NEW_STD)
list(APPEND AKANTU_CORE_FILES
common/aka_point.hh
common/aka_bounding_box.hh
common/aka_bounding_box.cc
common/aka_geometry.hh
common/aka_geometry.cc
)
add_definitions(-std=c++0x)
else()
message(WARNING "*** WARNING *** Compiler does not support c++11 set of requirements.")
endif()
-
-
set(AKANTU_CORE_DEB_DEPEND
libboost-dev
)
set(AKANTU_CORE_TESTS
test_solid_mechanics_model_square
test_vector
test_vector_iterator
test_matrix
test_csr
test_grid
test_static_memory
test_mesh_io_msh
test_facet_extraction_triangle_3
test_facet_extraction_tetrahedron_4
test_pbc_tweak
test_purify_mesh
test_local_material
test_interpolate_stress
test_weight
test_solid_mechanics_model_circle_2
test_solid_mechanics_model_bar_traction2d
test_solid_mechanics_model_bar_traction2d_structured
test_solid_mechanics_model_bar_traction2d_structured_pbc
test_solid_mechanics_model_cube3d
test_solid_mechanics_model_cube3d_tetra10
test_solid_mechanics_model_cube3d_pbc
test_surface_extraction_triangle_3
test_surface_extraction_tetrahedron_4
test_material_damage_non_local
)
\ No newline at end of file
diff --git a/packages/iohelper.cmake b/packages/iohelper.cmake
index 054ebd3bc..68a8b5f07 100644
--- a/packages/iohelper.cmake
+++ b/packages/iohelper.cmake
@@ -1,63 +1,66 @@
#===============================================================================
# @file iohelper.cmake
#
# @author Nicolas Richart <nicolas.richart@epfl.ch>
#
# @date Tue Nov 29 15:16:35 2011
#
# @brief package description for iohelper
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
#===============================================================================
+if(EXISTS ${PROJECT_SOURCE_DIR}/third-party/iohelper)
+ option(AKANTU_USE_IOHELPER "Add IOHelper support in akantu" ON)
+ mark_as_advanced(AKANTU_USE_IOHELPER)
-option(AKANTU_USE_IOHELPER "Add IOHelper support in akantu" ON)
-mark_as_advanced(AKANTU_USE_IOHELPER)
+ if(AKANTU_USE_IOHELPER)
+ set(IOHELPER_TARGETS_EXPORT ${AKANTU_TARGETS_EXPORT})
+ add_subdirectory(third-party/iohelper)
-if(AKANTU_USE_IOHELPER)
- set(IOHELPER_TARGETS_EXPORT ${AKANTU_TARGETS_EXPORT})
- add_subdirectory(third-party/iohelper)
+ list(APPEND AKANTU_EXTERNAL_LIBRARIES iohelper)
+ list(APPEND AKANTU_EXTERNAL_LIB_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/third-party/iohelper/src)
- list(APPEND AKANTU_EXTERNAL_LIBRARIES iohelper)
- list(APPEND AKANTU_EXTERNAL_LIB_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/third-party/iohelper/src)
+ set(AKANTU_IOHELPER_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/third-party/iohelper/src)
- set(AKANTU_IOHELPER_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/third-party/iohelper/src)
+ list(APPEND AKANTU_EXPORT_LIST iohelper)
+ list(APPEND AKANTU_OPTION_LIST IOHELPER)
- list(APPEND AKANTU_EXPORT_LIST iohelper)
- list(APPEND AKANTU_OPTION_LIST IOHELPER)
-
- mark_as_advanced(IOHELPER_TESTS)
- set(AKANTU_IOHELPER ON)
+ mark_as_advanced(IOHELPER_TESTS)
+ set(AKANTU_IOHELPER ON)
+ else()
+ set(AKANTU_IOHELPER OFF)
+ endif()
else()
- set(AKANTU_IOHELPER OFF)
+ add_optional_external_package(IOHelper "Add IOHelper support in akantu" ON)
endif()
set(AKANTU_IOHELPER_FILES
io/dumper/dumper_iohelper.hh
io/dumper/dumper_iohelper.cc
io/dumper/dumper_iohelper_tmpl.hh
io/dumper/dumper_paraview.hh
io/dumper/dumper_paraview.cc
io/dumper/dumper_iohelper_tmpl_elemental_field.hh
io/dumper/dumper_iohelper_tmpl_homogenizing_field.hh
io/dumper/dumper_iohelper_tmpl_material_internal_field.hh
io/dumper/dumper_iohelper_tmpl_nodal_field.hh
io/dumper/dumper_iohelper_tmpl_quadrature_points_field.hh
)
diff --git a/packages/mumps.cmake b/packages/mumps.cmake
index 03cdc6236..355090a81 100644
--- a/packages/mumps.cmake
+++ b/packages/mumps.cmake
@@ -1,39 +1,38 @@
#===============================================================================
# @file mumps.cmake
#
# @author Nicolas Richart <nicolas.richart@epfl.ch>
#
# @date Mon Nov 21 18:19:15 2011
#
# @brief package description for mumps support
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
#===============================================================================
add_optional_external_package(Mumps "Add Mumps support in akantu" OFF)
set(AKANTU_MUMPS_FILES
solver/solver_mumps.cc
solver/solver_mumps.hh
)
-
set(AKANTU_MUMPS_DEB_DEPEND
libmumps-seq-dev
)
diff --git a/packages/scotch.cmake b/packages/scotch.cmake
index 92829f0de..c1b1d25c5 100644
--- a/packages/scotch.cmake
+++ b/packages/scotch.cmake
@@ -1,56 +1,57 @@
#===============================================================================
# @file scotch.cmake
#
# @author Nicolas Richart <nicolas.richart@epfl.ch>
#
# @date Mon Nov 21 18:19:15 2011
#
# @brief package description for scotch
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
#===============================================================================
add_optional_external_package(Scotch "Add Scotch support in akantu" OFF)
#add_optional_package(PTScotch "Add PTScotch support in akantu" OFF)
if(SCOTCH_INCLUDE_DIR)
file(STRINGS ${SCOTCH_INCLUDE_DIR}/scotch.h SCOTCH_INCLUDE_CONTENT)
string(REGEX MATCH "_cplusplus" _match ${SCOTCH_INCLUDE_CONTENT})
if(_match)
set(AKANTU_SCOTCH_NO_EXTERN ON)
list(APPEND AKANTU_DEFINITIONS AKANTU_SCOTCH_NO_EXTERN)
else()
set(AKANTU_SCOTCH_NO_EXTERN OFF)
endif()
endif()
set(AKANTU_SCOTCH_FILES
mesh_utils/mesh_partition/mesh_partition_scotch.cc
)
if(AKANTU_SCOTCH_ON OR AKANTU_PTSCOTCH_ON)
set(AKANTU_PARTITIONER_ON ON)
else()
set(AKANTU_PARTITIONER_ON OFF)
endif()
set(AKANTU_SCOTCH_TESTS
test_mesh_partitionate_scotch
+ test_mesh_partitionate_scotch_advanced
)
diff --git a/packages/structural_mechanics.cmake b/packages/structural_mechanics.cmake
index b9abf960d..c55f6f596 100644
--- a/packages/structural_mechanics.cmake
+++ b/packages/structural_mechanics.cmake
@@ -1,49 +1,60 @@
#===============================================================================
# @file structural_mechanics.cmake
#
# @author Nicolas Richart <nicolas.richart@epfl.ch>
#
# @date Mon Nov 21 18:19:15 2011
#
# @brief package description for structural mechanics
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
#===============================================================================
option(AKANTU_STRUCTURAL_MECHANICS "Use Structural mechanics model package of Akantu" OFF)
add_internal_package_dependencies(STRUCTURAL_MECHANICS IMPLICIT)
set(AKANTU_STRUCTURAL_MECHANICS_FILES
model/structural_mechanics/structural_mechanics_model.cc
model/structural_mechanics/structural_mechanics_model_boundary.cc
model/structural_mechanics/structural_mechanics_model_inline_impl.cc
+ fem/element_class_structural.hh
+ fem/element_classes/element_class_bernoulli_beam_inline_impl.cc
+ io/model_io/model_io_ibarras.cc
+ io/model_io/model_io_ibarras.hh
+ io/mesh_io/mesh_io_msh_struct.cc
+ io/mesh_io/mesh_io_msh_struct.hh
)
set(AKANTU_STRUCTURAL_MECHANICS_DOC
manual/manual-structuralmechanicsmodel.tex
)
set(AKANTU_STRUCTURAL_MECHANICS_TESTS
test_structural_mechanics_model_bernoulli_beam_2
test_structural_mechanics_model_boundary_bernoulli_beam_2
test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1
test_structural_mechanics_model_bernoulli_beam_2_complicated
+ test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1_y
+ test_structural_mechanics_model_bernoulli_beam_3_exemple_1_1_xy
+ test_structural_mechanics_model_bernoulli_beam_3_exemple_1_1_zy
+ test_structural_mechanics_model_bernoulli_beam_3_local_force
+ test_structural_mechanics_model_bernoulli_beam_3_exercice_12_10_13
)
\ No newline at end of file
diff --git a/src/common/aka_common.hh b/src/common/aka_common.hh
index bf198f996..69ae83f89 100644
--- a/src/common/aka_common.hh
+++ b/src/common/aka_common.hh
@@ -1,446 +1,494 @@
/**
* @file aka_common.hh
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Mon Jun 14 19:12:20 2010
*
* @brief common type descriptions for akantu
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
* @section DESCRIPTION
*
* All common things to be included in the projects files
*
*/
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_COMMON_HH__
#define __AKANTU_COMMON_HH__
/* -------------------------------------------------------------------------- */
#include <list>
#include <limits>
/* -------------------------------------------------------------------------- */
#define __BEGIN_AKANTU__ namespace akantu {
#define __END_AKANTU__ }
/* -------------------------------------------------------------------------- */
#include "aka_config.hh"
#include "aka_error.hh"
+#include "aka_safe_enum.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
/* Common types */
/* -------------------------------------------------------------------------- */
typedef double Real;
typedef unsigned int UInt;
typedef unsigned long long UInt64;
typedef signed int Int;
typedef std::string ID;
static const Real UINT_INIT_VALUE = 0;
#ifdef AKANTU_NDEBUG
static const Real REAL_INIT_VALUE = 0;
#else
static const Real REAL_INIT_VALUE = std::numeric_limits<Real>::quiet_NaN();
#endif
/* -------------------------------------------------------------------------- */
/* Memory types */
/* -------------------------------------------------------------------------- */
typedef UInt MemoryID;
/* -------------------------------------------------------------------------- */
/* Mesh/FEM/Model types */
/* -------------------------------------------------------------------------- */
typedef UInt Surface;
typedef std::pair<Surface, Surface> SurfacePair;
typedef std::list< SurfacePair > SurfacePairList;
/* -------------------------------------------------------------------------- */
/// @boost sequence of element to loop on in global tasks
#define AKANTU_REGULAR_ELEMENT_TYPE \
+ (_point_1) \
(_segment_2) \
(_segment_3) \
(_triangle_3) \
(_triangle_6) \
- (_tetrahedron_4) \
- (_tetrahedron_10) \
(_quadrangle_4) \
(_quadrangle_8) \
- (_hexahedron_8) \
- (_point) \
- (_bernoulli_beam_2)
+ (_tetrahedron_4) \
+ (_tetrahedron_10) \
+ (_hexahedron_8)
+
+#if defined(AKANTU_STRUCTURAL_MECHANICS)
+#define AKANTU_STRUCTURAL_ELEMENT_TYPE \
+ (_bernoulli_beam_2) \
+ (_bernoulli_beam_3)
+#else
+#define AKANTU_STRUCTURAL_ELEMENT_TYPE
+#endif
#if defined(AKANTU_COHESIVE_ELEMENT)
# define AKANTU_COHESIVE_ELEMENT_TYPE \
(_cohesive_2d_4) \
(_cohesive_2d_6)
#else
# define AKANTU_COHESIVE_ELEMENT_TYPE
#endif
#define AKANTU_ALL_ELEMENT_TYPE \
- AKANTU_REGULAR_ELEMENT_TYPE AKANTU_COHESIVE_ELEMENT_TYPE
+ AKANTU_REGULAR_ELEMENT_TYPE \
+ AKANTU_COHESIVE_ELEMENT_TYPE \
+ AKANTU_STRUCTURAL_ELEMENT_TYPE
+
+#define AKANTU_NOT_STRUCTURAL_ELEMENT_TYPE \
+ AKANTU_REGULAR_ELEMENT_TYPE \
+ AKANTU_COHESIVE_ELEMENT_TYPE
-/// @enum ElementType type of element potentially contained in a Mesh
+/// @enum ElementType type of elements
enum ElementType {
- _not_defined = 0,
- /// first order segment
- _segment_2 = 1,
- /// second order segment
- _segment_3 = 2,
- /// first order triangle
- _triangle_3 = 3,
- /// second order triangle
- _triangle_6 = 4,
- /// first order tetrahedron
- _tetrahedron_4 = 5,
- /// second order tetrahedron @remark not implemented yet
- _tetrahedron_10 = 6,
- /// first order quadrangle
- _quadrangle_4,
- /// second order quadrangle
- _quadrangle_8,
- /// first order hexahedron
- _hexahedron_8,
- /// point only for some algorithm to be generic like mesh partitioning
- _point,
- /// bernoulli beam 2D
- _bernoulli_beam_2,
+ _not_defined,
+ _point_1,
+ _segment_2, ///< first order segment
+ _segment_3, ///< second order segment
+ _triangle_3, ///< first order triangle
+ _triangle_6, ///< second order triangle
+ _tetrahedron_4, ///< first order tetrahedron
+ _tetrahedron_10, ///< second order tetrahedron
+ _quadrangle_4, ///< first order quadrangle
+ _quadrangle_8, ///< second order quadrangle
+ _hexahedron_8, ///< first order hexahedron
+ _bernoulli_beam_2, ///< Bernoulli beam 2D
+ _bernoulli_beam_3, ///< Bernoulli beam 3D
#if defined(AKANTU_COHESIVE_ELEMENT)
- /// first order 2D cohesive
- _cohesive_2d_4,
- /// second order 2D cohesive
- _cohesive_2d_6,
+ _cohesive_2d_4, ///< first order 2D cohesive
+ _cohesive_2d_6, ///< second order 2D cohesive
#endif
_max_element_type
};
+/// @enum GeometricalType type of element potentially contained in a Mesh
+enum GeometricalType {
+ _gt_point, ///< point @remark only for some algorithm to be generic like mesh partitioning */
+ _gt_segment_2, ///< 2 nodes segment
+ _gt_segment_3, ///< 3 nodes segment
+ _gt_triangle_3, ///< 3 nodes triangle
+ _gt_triangle_6, ///< 6 nodes triangle
+ _gt_quadrangle_4, ///< 4 nodes quadrangle
+ _gt_quadrangle_8, ///< 8 nodes quadrangle
+ _gt_tetrahedron_4, ///< 4 nodes tetrahedron
+ _gt_tetrahedron_10, ///< 10 nodes tetrahedron
+ _gt_hexahedron_8, ///< 8 nodes hexahedron
+#if defined(AKANTU_COHESIVE_ELEMENT)
+ _gt_cohesive_2d_4, ///< 4 nodes 2D cohesive
+ _gt_cohesive_2d_6, ///< 6 nodes 2D cohesive
+#endif
+ _gt_not_defined,
+};
+
+/// @enum InterpolationType type of elements
+enum InterpolationType {
+ _itp_lagrange_segment_2, ///< first order lagrangian segment
+ _itp_lagrange_segment_3, ///< second order lagrangian segment
+ _itp_lagrange_triangle_3, ///< first order lagrangian triangle
+ _itp_lagrange_triangle_6, ///< second order lagrangian triangle
+ _itp_lagrange_quadrangle_4, ///< first order lagrangian quadrangle
+ _itp_serendip_quadrangle_8, /**< second order serendipian quadrangle
+ @remark used insted of the 9 node
+ lagrangian element */
+ _itp_lagrange_tetrahedron_4, ///< first order lagrangian tetrahedron
+ _itp_lagrange_tetrahedron_10, ///< second order lagrangian tetrahedron
+ _itp_lagrange_hexahedron_8, ///< first order lagrangian hexahedron
+ _itp_bernoulli_beam, ///< Bernoulli beam
+ _itp_not_defined
+};
+
+/// @enum InterpolationKind the familly of interpolation types
+enum InterpolationKind {
+ _itk_lagrangian,
+ _itk_structural
+};
+
+
//! standard output stream operator for ElementType
inline std::ostream & operator <<(std::ostream & stream, ElementType type);
enum ElementKind {
- _ek_not_defined,
_ek_regular,
- _ek_cohesive
+ _ek_cohesive,
+ _ek_structural,
+ _ek_not_defined
};
/// enum MeshIOType type of mesh reader/writer
enum MeshIOType {
_miot_auto,
_miot_gmsh,
_miot_diana
};
/// enum AnalysisMethod type of solving method used to solve the equation of motion
enum AnalysisMethod {
_static,
_implicit_dynamic,
_explicit_dynamic
};
+/// enum CohesiveMethod type of insertion of cohesive elements
+enum CohesiveMethod {
+ _intrinsic,
+ _extrinsic
+};
+
/// myfunction(double * position, double * stress/force, double * normal, unsigned int material_id)
typedef void (*BoundaryFunction)(double *,double *, double*, unsigned int);
/// @enum BoundaryFunctionType type of function passed for boundary conditions
enum BoundaryFunctionType {
_bft_stress,
- _bft_traction
+ _bft_traction,
+ _bft_traction_local
};
/// @enum SparseMatrixType type of sparse matrix used
enum SparseMatrixType {
_unsymmetric,
_symmetric
};
/* -------------------------------------------------------------------------- */
/* Contact */
/* -------------------------------------------------------------------------- */
typedef ID ContactID;
typedef ID ContactSearchID;
typedef ID ContactNeighborStructureID;
enum ContactType {
_ct_not_defined = 0,
_ct_2d_expli = 1,
_ct_3d_expli = 2,
_ct_rigid = 3
};
enum ContactSearchType {
_cst_not_defined = 0,
_cst_2d_expli = 1,
_cst_expli = 2
};
enum ContactNeighborStructureType {
_cnst_not_defined = 0,
_cnst_regular_grid = 1,
_cnst_2d_grid = 2
};
/* -------------------------------------------------------------------------- */
/* Friction */
/* -------------------------------------------------------------------------- */
typedef ID FrictionID;
/* -------------------------------------------------------------------------- */
/* Ghosts handling */
/* -------------------------------------------------------------------------- */
typedef ID SynchronizerID;
/// @enum CommunicatorType type of communication method to use
enum CommunicatorType {
_communicator_mpi,
_communicator_dummy
};
/// @enum SynchronizationTag type of synchronizations
enum SynchronizationTag {
//--- SolidMechanicsModel tags ---
_gst_smm_mass, //< synchronization of the SolidMechanicsModel.mass
_gst_smm_for_strain, //< synchronization of the SolidMechanicsModel.current_position
_gst_smm_boundary, //< synchronization of the boundary, forces, velocities and displacement
_gst_smm_uv, //< synchronization of the nodal velocities and displacement
_gst_smm_res, //< synchronization of the nodal residual
_gst_smm_init_mat, //< synchronization of the data to initialize materials
_gst_smm_stress, //< synchronization of the stresses to compute the internal forces
- _gst_smmc_tractions, //< synchronitazion of cohesive elements' tractions
//--- HeatTransfer tags ---
_gst_htm_capacity, //< synchronization of the nodal heat capacity
_gst_htm_temperature, //< synchronization of the nodal temperature
_gst_htm_gradient_temperature, //< synchronization of the element gradient temperature
//--- Material non local ---
_gst_mnl_for_average, //< synchronization of data to average in non local material
_gst_mnl_weight, //< synchronization of data for the weight computations
//--- General tags ---
_gst_test, //< Test tag
_gst_material_id //< synchronization of the material ids
};
/// standard output stream operator for SynchronizationTag
inline std::ostream & operator <<(std::ostream & stream, SynchronizationTag type);
/// @enum GhostType type of ghost
enum GhostType {
_not_ghost,
_ghost,
_casper // not used but a real cute ghost
};
+
+/* -------------------------------------------------------------------------- */
+struct GhostType_def {
+ typedef GhostType type;
+ static const type _begin_ = _not_ghost;
+ static const type _end_ = _casper;
+};
+
+typedef safe_enum<GhostType_def> ghost_type_t;
+
/// standard output stream operator for GhostType
inline std::ostream & operator <<(std::ostream & stream, GhostType type);
/// @enum SynchronizerOperation reduce operation that the synchronizer can perform
enum SynchronizerOperation {
_so_sum,
_so_min,
_so_max,
_so_null
};
/* -------------------------------------------------------------------------- */
/* Global defines */
/* -------------------------------------------------------------------------- */
#define AKANTU_MIN_ALLOCATION 2000
#define AKANTU_INDENT " "
#define AKANTU_INCLUDE_INLINE_IMPL
/* -------------------------------------------------------------------------- */
template<class T>
struct is_scalar {
enum{ value = false };
};
#define AKANTU_SPECIFY_IS_SCALAR(type) \
template<> \
struct is_scalar<type> { \
enum { value = true }; \
}
AKANTU_SPECIFY_IS_SCALAR(Real);
AKANTU_SPECIFY_IS_SCALAR(UInt);
AKANTU_SPECIFY_IS_SCALAR(Int);
AKANTU_SPECIFY_IS_SCALAR(bool);
template < typename T1, typename T2 >
struct is_same {
enum { value = false }; // is_same represents a bool.
};
template < typename T >
struct is_same<T, T> {
enum { value = true };
};
/* -------------------------------------------------------------------------- */
#define AKANTU_SET_MACRO(name, variable, type) \
inline void set##name (type variable) { \
this->variable = variable; \
}
#define AKANTU_GET_MACRO(name, variable, type) \
inline type get##name () const { \
return variable; \
}
#define AKANTU_GET_MACRO_NOT_CONST(name, variable, type) \
inline type get##name () { \
return variable; \
}
-#define AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(name, variable, type) \
- inline const Vector<type> & \
- get##name (const ::akantu::ElementType & el_type, \
- const GhostType & ghost_type = _not_ghost) const { \
- AKANTU_DEBUG_IN(); \
- \
- AKANTU_DEBUG_OUT(); \
+#define AKANTU_GET_MACRO_BY_SUPPORT_TYPE(name, variable, type, \
+ support, con) \
+ inline con Vector<type> & \
+ get##name (const support & el_type, \
+ const GhostType & ghost_type = _not_ghost) con { \
return variable(el_type, ghost_type); \
}
#define AKANTU_GET_MACRO_BY_ELEMENT_TYPE(name, variable, type) \
- inline Vector<type> & \
- get##name (const ::akantu::ElementType & el_type, \
- const GhostType & ghost_type = _not_ghost) { \
- AKANTU_DEBUG_IN(); \
- \
- AKANTU_DEBUG_OUT(); \
- return variable(el_type, ghost_type); \
- }
+ AKANTU_GET_MACRO_BY_SUPPORT_TYPE(name, variable, type, ElementType,)
+#define AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(name, variable, type) \
+ AKANTU_GET_MACRO_BY_SUPPORT_TYPE(name, variable, type, ElementType, const)
+
+#define AKANTU_GET_MACRO_BY_GEOMETRIE_TYPE(name, variable, type) \
+ AKANTU_GET_MACRO_BY_SUPPORT_TYPE(name, variable, type, GeometricalType,)
+#define AKANTU_GET_MACRO_BY_GEOMETRIE_TYPE_CONST(name, variable, type) \
+ AKANTU_GET_MACRO_BY_SUPPORT_TYPE(name, variable, type, GeometricalType, const)
/* -------------------------------------------------------------------------- */
void initialize(int & argc, char ** & argv);
/* -------------------------------------------------------------------------- */
void finalize ();
/* -------------------------------------------------------------------------- */
/*
* For intel compiler annoying remark
*/
#if defined(__INTEL_COMPILER)
/// remark #981: operands are evaluated in unspecified order
#pragma warning ( disable : 981 )
/// remark #383: value copied to temporary, reference to temporary used
#pragma warning ( disable : 383 )
#endif //defined(__INTEL_COMPILER)
/* -------------------------------------------------------------------------- */
/* string manipulation */
/* -------------------------------------------------------------------------- */
inline std::string to_lower(const std::string & str);
/* -------------------------------------------------------------------------- */
inline std::string trim(const std::string & to_trim);
__END_AKANTU__
-#include "aka_common_inline_impl.cc"
-
/* -------------------------------------------------------------------------- */
// BOOST PART: TOUCH ONLY IF YOU KNOW WHAT YOU ARE DOING
#include <boost/preprocessor.hpp>
-#define AKANTU_EXCLUDE_ELEMENT_TYPE(type) \
- AKANTU_DEBUG_ERROR("Type (" << type << ") not handled by this function")
-
#define AKANTU_BOOST_CASE_MACRO(r,macro,type) \
case type : { macro(type); break; }
-#define AKANTU_BOOST_ELEMENT_SWITCH(macro1, list1, macro2, list2) \
+#define AKANTU_BOOST_ELEMENT_SWITCH(macro1, list1) \
do { \
switch(type) { \
BOOST_PP_SEQ_FOR_EACH(AKANTU_BOOST_CASE_MACRO, macro1, list1) \
- BOOST_PP_SEQ_FOR_EACH(AKANTU_BOOST_CASE_MACRO, macro2, list2) \
- case _not_defined: \
- case _max_element_type: { \
- AKANTU_DEBUG_ERROR("Wrong type : " << type); \
- break; \
+ default: { \
+ AKANTU_DEBUG_ERROR("Type (" << type << ") not handled by this function"); \
} \
} \
} while(0)
-#define AKANTU_BOOST_ALL_ELEMENT_SWITCH(macro1) \
- do { \
- switch(type) { \
- BOOST_PP_SEQ_FOR_EACH(AKANTU_BOOST_CASE_MACRO, macro1, AKANTU_ALL_ELEMENT_TYPE) \
- case _not_defined: \
- case _max_element_type: { \
- AKANTU_DEBUG_ERROR("Wrong type : " << type); \
- break; \
- } \
- } \
- } while(0)
+#define AKANTU_BOOST_ALL_ELEMENT_SWITCH(macro) \
+ AKANTU_BOOST_ELEMENT_SWITCH(macro, \
+ AKANTU_ALL_ELEMENT_TYPE)
#define AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(macro) \
AKANTU_BOOST_ELEMENT_SWITCH(macro, \
- AKANTU_REGULAR_ELEMENT_TYPE, \
- AKANTU_EXCLUDE_ELEMENT_TYPE, \
- AKANTU_COHESIVE_ELEMENT_TYPE)
+ AKANTU_REGULAR_ELEMENT_TYPE)
#define AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(macro) \
AKANTU_BOOST_ELEMENT_SWITCH(macro, \
- AKANTU_COHESIVE_ELEMENT_TYPE, \
- AKANTU_EXCLUDE_ELEMENT_TYPE, \
- AKANTU_REGULAR_ELEMENT_TYPE)
+ AKANTU_COHESIVE_ELEMENT_TYPE)
+
+#define AKANTU_BOOST_STRUCTURAL_ELEMENT_SWITCH(macro) \
+ AKANTU_BOOST_ELEMENT_SWITCH(macro, \
+ AKANTU_STRUCTURAL_ELEMENT_TYPE)
#define AKANTU_BOOST_LIST_MACRO(r,macro,type) \
macro(type)
-#define AKANTU_BOOST_ELEMENT_LIST(macro,list) \
+#define AKANTU_BOOST_ELEMENT_LIST(macro, list) \
BOOST_PP_SEQ_FOR_EACH(AKANTU_BOOST_LIST_MACRO,macro,list)
-#define AKANTU_BOOST_ALL_ELEMENT_LIST(macro) \
+#define AKANTU_BOOST_ALL_ELEMENT_LIST(macro) \
AKANTU_BOOST_ELEMENT_LIST(macro, AKANTU_ALL_ELEMENT_TYPE)
-#define AKANTU_BOOST_REGULAR_ELEMENT_LIST(macro) \
+#define AKANTU_BOOST_REGULAR_ELEMENT_LIST(macro) \
AKANTU_BOOST_ELEMENT_LIST(macro, AKANTU_REGULAR_ELEMENT_TYPE)
-#define AKANTU_BOOST_COHESIVE_ELEMENT_LIST(macro) \
+#define AKANTU_BOOST_STRUCTURAL_ELEMENT_LIST(macro) \
+ AKANTU_BOOST_ELEMENT_LIST(macro, AKANTU_STRUCTURAL_ELEMENT_TYPE)
+
+#define AKANTU_BOOST_COHESIVE_ELEMENT_LIST(macro) \
AKANTU_BOOST_ELEMENT_LIST(macro, AKANTU_COHESIVE_ELEMENT_TYPE)
+#include "aka_common_inline_impl.cc"
#include "aka_fwd.hh"
#endif /* __AKANTU_COMMON_HH__ */
diff --git a/src/common/aka_common_inline_impl.cc b/src/common/aka_common_inline_impl.cc
index 4bc5d4b6b..a9b9c3ecf 100644
--- a/src/common/aka_common_inline_impl.cc
+++ b/src/common/aka_common_inline_impl.cc
@@ -1,128 +1,133 @@
/**
* @file aka_common_inline_impl.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Thu Dec 01 12:54:29 2011
*
* @brief inline implementations of common akantu type descriptions
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
* @section DESCRIPTION
*
* All common things to be included in the projects files
*
*/
#include <algorithm>
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
//! standard output stream operator for ElementType
inline std::ostream & operator <<(std::ostream & stream, ElementType type)
+{
+#define STRINGIFY(type) \
+ stream << BOOST_PP_STRINGIZE(type);
+
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(STRINGIFY);
+#undef STRINGIFY
+ return stream;
+}
+
+/// standard output stream operator for InterpolationType
+inline std::ostream & operator <<(std::ostream & stream, InterpolationType type)
{
switch(type)
{
- case _segment_2 : stream << "_segment_2" ; break;
- case _segment_3 : stream << "_segment_3" ; break;
- case _triangle_3 : stream << "_triangle_3" ; break;
- case _triangle_6 : stream << "_triangle_6" ; break;
- case _tetrahedron_4 : stream << "_tetrahedron_4" ; break;
- case _tetrahedron_10 : stream << "_tetrahedron_10" ; break;
- case _quadrangle_4 : stream << "_quadrangle_4" ; break;
- case _quadrangle_8 : stream << "_quadrangle_8" ; break;
- case _hexahedron_8 : stream << "_hexahedron_8" ; break;
- case _bernoulli_beam_2 : stream << "_bernoulli_beam_2"; break;
-#if defined(AKANTU_COHESIVE_ELEMENT)
- case _cohesive_2d_4 : stream << "_cohesive_2d_4" ; break;
- case _cohesive_2d_6 : stream << "_cohesive_2d_6" ; break;
-#endif
- case _not_defined : stream << "_not_defined" ; break;
- case _max_element_type : stream << "ElementType(" << (int) type << ")"; break;
- case _point : stream << "point"; break;
+ case _itp_lagrange_segment_2 : stream << "_itp_lagrange_segment_2" ; break;
+ case _itp_lagrange_segment_3 : stream << "_itp_lagrange_segment_3" ; break;
+ case _itp_lagrange_triangle_3 : stream << "_itp_lagrange_triangle_3" ; break;
+ case _itp_lagrange_triangle_6 : stream << "_itp_lagrange_triangle_6" ; break;
+ case _itp_lagrange_quadrangle_4 : stream << "_itp_lagrange_quadrangle_4" ; break;
+ case _itp_serendip_quadrangle_8 : stream << "_itp_serendip_quadrangle_8" ; break;
+ case _itp_lagrange_tetrahedron_4 : stream << "_itp_lagrange_tetrahedron_4" ; break;
+ case _itp_lagrange_tetrahedron_10 : stream << "_itp_lagrange_tetrahedron_10"; break;
+ case _itp_lagrange_hexahedron_8 : stream << "_itp_lagrange_hexahedron_8" ; break;
+ case _itp_bernoulli_beam : stream << "_itp_bernoulli_beam" ; break;
+ case _itp_not_defined : stream << "_itp_not_defined" ; break;
}
return stream;
}
+
/// standard output stream operator for GhostType
inline std::ostream & operator <<(std::ostream & stream, GhostType type)
{
switch(type)
{
case _not_ghost : stream << "not_ghost"; break;
case _ghost : stream << "ghost" ; break;
case _casper : stream << "Casper the friendly ghost"; break;
}
return stream;
}
/// standard output stream operator for SynchronizationTag
inline std::ostream & operator <<(std::ostream & stream, SynchronizationTag type)
{
switch(type)
{
case _gst_smm_mass : stream << "_gst_smm_mass" ; break;
case _gst_smm_for_strain : stream << "_gst_smm_for_strain" ; break;
case _gst_smm_boundary : stream << "_gst_smm_boundary" ; break;
case _gst_smm_uv : stream << "_gst_smm_uv" ; break;
case _gst_smm_res : stream << "_gst_smm_res" ; break;
case _gst_smm_init_mat : stream << "_gst_smm_init_mat" ; break;
case _gst_smm_stress : stream << "_gst_smm_stress" ; break;
- case _gst_smmc_tractions : stream << "_gst_smmc_tractions" ; break;
case _gst_htm_capacity : stream << "_gst_htm_capacity" ; break;
case _gst_htm_temperature : stream << "_gst_htm_temperature" ; break;
case _gst_htm_gradient_temperature : stream << "_gst_htm_gradient_temperature"; break;
case _gst_mnl_for_average : stream << "_gst_mnl_for_average" ; break;
- case _gst_mnl_weight : stream << "_gst_mnl_weight" ; break;
+ case _gst_mnl_weight : stream << "_gst_mnl_weight" ; break;
case _gst_test : stream << "_gst_test" ; break;
case _gst_material_id : stream << "_gst_material_id" ; break;
}
return stream;
}
/* -------------------------------------------------------------------------- */
inline std::string to_lower(const std::string & str) {
std::string lstr = str;
std::transform(lstr.begin(),
lstr.end(),
lstr.begin(),
(int(*)(int))std::tolower);
return lstr;
}
/* -------------------------------------------------------------------------- */
inline std::string trim(const std::string & to_trim) {
std::string trimed = to_trim;
//left trim
trimed.erase(trimed.begin(),
std::find_if(trimed.begin(),
trimed.end(),
std::not1(std::ptr_fun<int, int>(std::isspace))));
// right trim
trimed.erase(std::find_if(trimed.rbegin(),
trimed.rend(),
std::not1(std::ptr_fun<int, int>(std::isspace))).base(),
trimed.end());
return trimed;
}
__END_AKANTU__
diff --git a/src/common/aka_config.hh.in b/src/common/aka_config.hh.in
index 200a305c6..3665cc3d4 100644
--- a/src/common/aka_config.hh.in
+++ b/src/common/aka_config.hh.in
@@ -1,59 +1,60 @@
/**
* @file aka_config.hh.in
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Jan 13 12:34:54 2012
*
* @brief Compilation time configuration of Akantu
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_AKA_CONFIG_HH__
#define __AKANTU_AKA_CONFIG_HH__
#cmakedefine AKANTU_NDEBUG
#cmakedefine AKANTU_USE_BLAS
#cmakedefine AKANTU_USE_LAPACK
#cmakedefine AKANTU_USE_MPI
#cmakedefine AKANTU_USE_SCOTCH
#cmakedefine AKANTU_USE_PTSCOTCH
#cmakedefine AKANTU_SCOTCH_NO_EXTERN
#cmakedefine AKANTU_USE_MUMPS
#cmakedefine AKANTU_USE_IOHELPER
#cmakedefine AKANTU_USE_QVIEW
#cmakedefine AKANTU_USE_NLOPT
#cmakedefine AKANTU_EXTRA_MATERIALS
#cmakedefine AKANTU_COHESIVE_ELEMENT
#cmakedefine AKANTU_DAMAGE_NON_LOCAL
+#cmakedefine AKANTU_STRUCTURAL_MECHANICS
#cmakedefine AKANTU_HEAT_TRANSFER
#define __aka_inline__ inline
#endif /* __AKANTU_AKA_CONFIG_HH__ */
diff --git a/src/common/aka_error.cc b/src/common/aka_error.cc
index 2601be65f..e166a7a7c 100644
--- a/src/common/aka_error.cc
+++ b/src/common/aka_error.cc
@@ -1,206 +1,207 @@
/**
* @file aka_error.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Mon Sep 06 00:18:58 2010
*
* @brief handling of errors
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "aka_config.hh"
#include "aka_error.hh"
+#include "aka_common.hh"
/* -------------------------------------------------------------------------- */
#include <iostream>
#include <csignal>
#include <execinfo.h>
#include <cxxabi.h>
#include <fstream>
#include <iomanip>
#include <cmath>
#include <sys/wait.h>
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
namespace debug {
/* ------------------------------------------------------------------------ */
void initSignalHandler() {
struct sigaction action;
action.sa_handler = &printBacktrace;
sigemptyset(&(action.sa_mask));
action.sa_flags = SA_RESETHAND;
sigaction(SIGSEGV, &action, NULL);
}
/* ------------------------------------------------------------------------ */
std::string demangle(const char* symbol) {
int status;
std::string result;
char * demangled_name;
if ((demangled_name = abi::__cxa_demangle(symbol, NULL, 0, &status)) != NULL) {
result = demangled_name;
free(demangled_name);
} else {
result = symbol;
}
return result;
//return symbol;
}
/* ------------------------------------------------------------------------ */
void printBacktrace(__attribute__((unused)) int sig) {
AKANTU_DEBUG_INFO("Caught signal " << sig << "!");
// std::stringstream pidsstr;
// pidsstr << getpid();
// char name_buf[512];
// name_buf[readlink("/proc/self/exe", name_buf, 511)]=0;
// std::string execname(name_buf);
// std::cout << "stack trace for " << execname << " pid=" << pidsstr.str() << std::endl;
// std::string cmd;
// cmd = "CMDFILE=$(mktemp); echo 'bt' > ${CMDFILE}; gdb --batch " + execname + " " + pidsstr.str() + " < ${CMDFILE};";
// int retval __attribute__((unused)) = system(("bash -c '" + cmd + "'").c_str());
const size_t max_depth = 100;
size_t stack_depth;
void *stack_addrs[max_depth];
char **stack_strings;
size_t i;
stack_depth = backtrace(stack_addrs, max_depth);
stack_strings = backtrace_symbols(stack_addrs, stack_depth);
std::cerr << "BACKTRACE : " << stack_depth << " stack frames." <<std::endl;
size_t w = size_t(std::floor(log(double(stack_depth))/std::log(10.))+1);
/// -1 to remove the call to the printBacktrace function
for (i = 1; i < stack_depth; i++) {
std::cerr << " [" << std::setw(w) << i << "] ";
std::string bt_line(stack_strings[i]);
size_t first, second;
if((first = bt_line.find('(')) != std::string::npos && (second = bt_line.find('+')) != std::string::npos) {
std::cerr << bt_line.substr(0,first + 1) << demangle(bt_line.substr(first + 1, second - first - 1).c_str()) << bt_line.substr(second) << std::endl;
// char name_exe[512];
// name_exe[readlink("/proc/self/exe", name_exe, 511)]=0;
// std::stringstream syscom;
// syscom << "addr2line " << stack_addrs[i] << "-C -s -e " << name_exe;
// for (UInt i = 0; i < w + 4; ++i) std::cerr << " ";
// std::cout << "-> " << std::flush;
// int retval __attribute__((unused)) = system(syscom.str().c_str());
} else {
std::cerr << bt_line << std::endl;
}
}
free(stack_strings);
std::cerr << "END BACKTRACE" << std::endl;
}
/* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ */
Debugger::Debugger() {
cout = &std::cerr;
level = dblInfo;
parallel_context = "";
file_open = false;
}
/* ------------------------------------------------------------------------ */
Debugger::~Debugger() {
if(file_open) {
dynamic_cast<std::ofstream *>(cout)->close();
delete cout;
}
}
/* ------------------------------------------------------------------------ */
void Debugger::throwException(const std::string & info) throw(akantu::debug::Exception) {
AKANTU_DEBUG(akantu::dblWarning, "!!! " << info);
::akantu::debug::Exception ex(info, __FILE__, __LINE__ );
throw ex;
}
/* ------------------------------------------------------------------------ */
void Debugger::exit(int status) {
#ifndef AKANTU_NDEBUG
int * a = NULL;
*a = 1;
#endif
if (status != EXIT_SUCCESS)
akantu::debug::printBacktrace(15);
#ifdef AKANTU_USE_MPI
MPI_Abort(MPI_COMM_WORLD, MPI_ERR_UNKNOWN);
#endif
exit(status); // not called when compiled with MPI due to MPI_Abort, but
// MPI_Abort does not have the noreturn attribute
}
/* ------------------------------------------------------------------------ */
void Debugger::setDebugLevel(const DebugLevel & level) {
this->level = level;
}
/* ------------------------------------------------------------------------ */
const DebugLevel & Debugger::getDebugLevel() const {
return level;
}
/* ------------------------------------------------------------------------ */
void Debugger::setLogFile(const std::string & filename) {
if(file_open) {
dynamic_cast<std::ofstream *>(cout)->close();
delete cout;
}
std::ofstream * fileout = new std::ofstream(filename.c_str());
file_open = true;
cout = fileout;
}
std::ostream & Debugger::getOutputStream() {
return *cout;
}
/* ------------------------------------------------------------------------ */
void Debugger::setParallelContext(int rank, int size) {
std::stringstream sstr;
sstr << "[" << std::setfill(' ') << std::right << std::setw(3)
<< (rank + 1) << "/" << size << "] ";
parallel_context = sstr.str();
}
void setDebugLevel(const DebugLevel & level) {
debugger.setDebugLevel(level);
}
}
__END_AKANTU__
diff --git a/src/common/aka_error.hh b/src/common/aka_error.hh
index c2556d687..b19a3ba06 100644
--- a/src/common/aka_error.hh
+++ b/src/common/aka_error.hh
@@ -1,283 +1,283 @@
/**
* @file aka_error.hh
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Mon Jun 14 19:12:20 2010
*
* @brief error management and internal exceptions
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_ERROR_HH__
#define __AKANTU_ERROR_HH__
/* -------------------------------------------------------------------------- */
#include <ostream>
#include <sstream>
#include <sys/time.h>
#ifdef AKANTU_USE_MPI
#include <mpi.h>
#endif
/* -------------------------------------------------------------------------- */
-#include "aka_common.hh"
+//#include "aka_common.hh"
/* -------------------------------------------------------------------------- */
-__BEGIN_AKANTU__
+namespace akantu {
/* -------------------------------------------------------------------------- */
enum DebugLevel {
dbl0 = 0,
dblError = 0,
dblAssert = 0,
dbl1 = 1,
dblException = 1,
dblCritical = 1,
dbl2 = 2,
dblMajor = 2,
dbl3 = 3,
dblCall = 3,
dblSecondary = 3,
dblHead = 3,
dbl4 = 4,
dblWarning = 4,
dbl5 = 5,
dblInfo = 5,
dbl6 = 6,
dblIn = 6,
dblOut = 6,
dbl7 = 7,
dbl8 = 8,
dblTrace = 8,
dbl9 = 9,
dblAccessory = 9,
dbl10 = 10,
dblDebug = 42,
dbl100 = 100,
dblDump = 100,
dblTest = 1337
};
/* -------------------------------------------------------------------------- */
namespace debug {
void setDebugLevel(const DebugLevel & level);
void initSignalHandler();
std::string demangle(const char * symbol);
void printBacktrace(int sig);
/* -------------------------------------------------------------------------- */
/// exception class that can be thrown by akantu
class Exception : public std::exception {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
//! full constructor
Exception(std::string info, std::string file, unsigned int line) :
_info(info), _file(file), _line(line) { }
//! destructor
virtual ~Exception() throw() {};
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
virtual const char* what() const throw() {
std::stringstream stream;
stream << "akantu::Exception"
<< " : " << _info
<< " [" << _file << ":" << _line << "]";
return stream.str().c_str();
}
virtual const char* info() const throw() {
return _info.c_str();
}
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
private:
/// exception description and additionals
std::string _info;
/// file it is thrown from
std::string _file;
/// ligne it is thrown from
unsigned int _line;
};
/// standard output stream operator
inline std::ostream & operator <<(std::ostream & stream, const Exception & _this)
{
stream << _this.what();
return stream;
}
/* -------------------------------------------------------------------------- */
class Debugger {
public:
Debugger();
virtual ~Debugger();
void exit(int status) __attribute__ ((noreturn));
void throwException(const std::string & info) throw(akantu::debug::Exception) __attribute__ ((noreturn));
inline void printMessage(const std::string & prefix,
const DebugLevel & level,
const std::string & info) const {
if(this->level >= level) {
struct timeval time;
gettimeofday(&time, NULL);
double timestamp = time.tv_sec*1e6 + time.tv_usec; /*in us*/
*(cout) << parallel_context
<< "{" << (unsigned int)timestamp << "} "
<< prefix << info
<< std::endl;
}
}
public:
void setParallelContext(int rank, int size);
void setDebugLevel(const DebugLevel & level);
const DebugLevel & getDebugLevel() const;
void setLogFile(const std::string & filename);
std::ostream & getOutputStream();
inline bool testLevel(const DebugLevel & level) const {
return (this->level >= (level));
}
private:
std::string parallel_context;
std::ostream * cout;
bool file_open;
DebugLevel level;
};
extern Debugger debugger;
}
/* -------------------------------------------------------------------------- */
#define AKANTU_LOCATION "(" <<__FILE__ << ":" << __func__ << "():" << __LINE__ << ")"
/* -------------------------------------------------------------------------- */
#define AKANTU_STRINGSTREAM_IN(_str, _sstr); \
do { \
std::stringstream _dbg_s_info; \
_dbg_s_info << _sstr; \
_str = _dbg_s_info.str(); \
} while(0)
/* -------------------------------------------------------------------------- */
#define AKANTU_EXCEPTION(info) \
do { \
std::string _dbg_str; \
AKANTU_STRINGSTREAM_IN(_dbg_str, info); \
::akantu::debug::debugger.throwException(_dbg_str); \
} while(0)
/* -------------------------------------------------------------------------- */
#ifdef AKANTU_NDEBUG
#define AKANTU_DEBUG_TEST(level) (false)
#define AKANTU_DEBUG_LEVEL_IS_TEST() (false)
#define AKANTU_DEBUG(level,info)
#define AKANTU_DEBUG_(pref,level,info)
#define AKANTU_DEBUG_IN()
#define AKANTU_DEBUG_OUT()
#define AKANTU_DEBUG_INFO(info)
#define AKANTU_DEBUG_WARNING(info)
#define AKANTU_DEBUG_TRACE(info)
#define AKANTU_DEBUG_ASSERT(test,info)
#define AKANTU_DEBUG_ERROR(info) AKANTU_EXCEPTION(info)
#define AKANTU_DEBUG_TO_IMPLEMENT() ::akantu::debug::debugger.exit(EXIT_FAILURE)
/* -------------------------------------------------------------------------- */
#else
#define AKANTU_DEBUG(level, info) \
AKANTU_DEBUG_(" ",level, info)
#define AKANTU_DEBUG_(pref, level, info) \
do { \
std::string _dbg_str; \
AKANTU_STRINGSTREAM_IN(_dbg_str, info << " " << AKANTU_LOCATION); \
::akantu::debug::debugger.printMessage(pref, level, _dbg_str); \
} while(0)
#define AKANTU_DEBUG_TEST(level) \
(::akantu::debug::debugger.testLevel(level))
#define AKANTU_DEBUG_LEVEL_IS_TEST() \
(::akantu::debug::debugger.testLevel(dblTest))
#define AKANTU_DEBUG_IN() \
AKANTU_DEBUG_("==> ", ::akantu::dblIn, __func__ << "()")
#define AKANTU_DEBUG_OUT() \
AKANTU_DEBUG_("<== ", ::akantu::dblOut, __func__ << "()")
#define AKANTU_DEBUG_INFO(info) \
AKANTU_DEBUG_("--- ", ::akantu::dblInfo, info)
#define AKANTU_DEBUG_WARNING(info) \
AKANTU_DEBUG_("/!\\ ", ::akantu::dblWarning, info)
#define AKANTU_DEBUG_TRACE(info) \
AKANTU_DEBUG_(">>> ", ::akantu::dblTrace, info)
#define AKANTU_DEBUG_ASSERT(test,info) \
do { \
if (!(test)) { \
AKANTU_DEBUG_("!!! ", ::akantu::dblAssert, "assert [" << #test << "] " \
<< info); \
::akantu::debug::debugger.exit(EXIT_FAILURE); \
} \
} while(0)
#define AKANTU_DEBUG_ERROR(info) \
do { \
AKANTU_DEBUG_("!!! ", ::akantu::dblError, info); \
::akantu::debug::debugger.exit(EXIT_FAILURE); \
} while(0)
#define AKANTU_DEBUG_TO_IMPLEMENT() \
AKANTU_DEBUG_ERROR(__func__ << " : not implemented yet !")
#endif // AKANTU_NDEBUG
/* -------------------------------------------------------------------------- */
-__END_AKANTU__
+}
#endif /* __AKANTU_ERROR_HH__ */
// LocalWords: acessory
diff --git a/src/common/aka_math.hh b/src/common/aka_math.hh
index 03e4cda0d..eae26b580 100644
--- a/src/common/aka_math.hh
+++ b/src/common/aka_math.hh
@@ -1,257 +1,264 @@
/**
* @file aka_math.hh
*
* @author Leonardo Snozzi <leonardo.snozzi@epfl.ch>
* @author Marion Estelle Chambart <marion.chambart@epfl.ch>
* @author Peter Spijker <peter.spijker@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @author David Simon Kammer <david.kammer@epfl.ch>
*
* @date Wed Aug 04 10:58:42 2010
*
* @brief mathematical operations
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_AKA_MATH_H__
#define __AKANTU_AKA_MATH_H__
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
template<typename T, bool is_scal>
class Vector;
class Math {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
/* ------------------------------------------------------------------------ */
/* Matrix algebra */
/* ------------------------------------------------------------------------ */
/// @f$ y = A*x @f$
static void matrix_vector(UInt m, UInt n,
const Vector<Real, true> & A,
const Vector<Real, true> & x,
Vector<Real, true> & y, Real alpha = 1.);
/// @f$ y = A*x @f$
static inline void matrix_vector(UInt m, UInt n,
const Real * A,
const Real * x,
Real * y, Real alpha = 1.);
/// @f$ y = A^t*x @f$
static inline void matrixt_vector(UInt m, UInt n,
const Real * A,
const Real * x,
Real * y, Real alpha = 1.);
/// @f$ C = A*B @f$
static void matrix_matrix(UInt m, UInt n, UInt k,
const Vector<Real, true> & A,
const Vector<Real, true> & B,
Vector<Real, true> & C, Real alpha = 1.);
/// @f$ C = A*B^t @f$
static void matrix_matrixt(UInt m, UInt n, UInt k,
const Vector<Real, true> & A,
const Vector<Real, true> & B,
Vector<Real, true> & C, Real alpha = 1.);
/// @f$ C = A*B @f$
static inline void matrix_matrix(UInt m, UInt n, UInt k,
const Real * A,
const Real * B,
Real * C, Real alpha = 1.);
/// @f$ C = A^t*B @f$
static inline void matrixt_matrix(UInt m, UInt n, UInt k,
const Real * A,
const Real * B,
Real * C, Real alpha = 1.);
/// @f$ C = A*B^t @f$
static inline void matrix_matrixt(UInt m, UInt n, UInt k,
const Real * A,
const Real * B,
Real * C, Real alpha = 1.);
/// @f$ C = A^t*B^t @f$
static inline void matrixt_matrixt(UInt m, UInt n, UInt k,
const Real * A,
const Real * B,
Real * C, Real alpha = 1.);
template <bool tr_A, bool tr_B>
static inline void matMul(UInt m, UInt n, UInt k,
Real alpha, const Real * A, const Real * B,
Real beta, Real * C);
template <bool tr_A>
static inline void matVectMul(UInt m, UInt n,
Real alpha, const Real * A, const Real * x,
Real beta, Real * y);
static inline void matrix33_eigenvalues(Real * A,
Real * Adiag);
static inline void matrix22_eigenvalues(Real * A,
Real * Adiag);
-
- /// solve @f$ A x = \Lambda x @f$ and return d and V such as @f$ A V[i:] = d[i] V[i:]@f$
- static void matrixEig(UInt n, Real * A, Real * d, Real * V = NULL);
-
template<UInt dim>
static inline void eigenvalues(Real * A, Real * d);
- /// determinent of a 3x3 matrix
- static inline Real det3(const Real * mat);
+ /// solve @f$ A x = \Lambda x @f$ and return d and V such as @f$ A V[i:] = d[i] V[i:]@f$
+ template<typename T>
+ static void matrixEig(UInt n, T * A, T * d, T * V = NULL);
/// determinent of a 2x2 matrix
static inline Real det2(const Real * mat);
+ /// determinent of a 3x3 matrix
+ static inline Real det3(const Real * mat);
+ /// determinent of a nxn matrix
+ template<UInt n>
+ static inline Real det(const Real * mat);
+ /// determinent of a nxn matrix
+ template<typename T>
+ static inline T det(UInt n, const T * mat);
/// inverse a nxn matrix
- static inline void inv(UInt n, const Real * mat, Real * inv);
-
+ template<UInt n>
+ static inline void inv(const Real * mat, Real * inv);
+ /// inverse a nxn matrix
+ template<typename T>
+ static inline void inv(UInt n, const T * mat, T * inv);
/// inverse a 3x3 matrix
static inline void inv3(const Real * mat, Real * inv);
-
/// inverse a 2x2 matrix
static inline void inv2(const Real * mat, Real * inv);
/* ------------------------------------------------------------------------ */
/* Vector algebra */
/* ------------------------------------------------------------------------ */
/// vector cross product
static inline void vectorProduct3(const Real * v1, const Real * v2, Real * res);
/// compute normal a normal to a vector
static inline void normal2(const Real * v1, Real * res);
/// compute normal a normal to a vector
static inline void normal3(const Real * v1,const Real * v2, Real * res);
/// normalize a vector
static inline void normalize2(Real * v);
/// normalize a vector
static inline void normalize3(Real * v);
/// return norm of a 2-vector
static inline Real norm2(const Real * v);
/// return norm of a 3-vector
static inline Real norm3(const Real * v);
/// return norm of a vector
static inline Real norm(UInt n, const Real * v);
/// return the dot product between 2 vectors in 2d
static inline Real vectorDot2(const Real * v1, const Real * v2);
/// return the dot product between 2 vectors in 3d
static inline Real vectorDot3(const Real * v1, const Real * v2);
/// return the dot product between 2 vectors
static __aka_inline__ Real vectorDot(const Real * v1, const Real * v2, UInt n);
/* ------------------------------------------------------------------------ */
/* Geometry */
/* ------------------------------------------------------------------------ */
/// distance in 2D between x and y
static inline Real distance_2d(const Real * x, const Real * y);
/// distance in 3D between x and y
static inline Real distance_3d(const Real * x, const Real * y);
/// radius of the in-circle of a triangle
static inline Real triangle_inradius(const Real * coord1, const Real * coord2, const Real * coord3);
/// radius of the in-circle of a tetrahedron
static inline Real tetrahedron_inradius(const Real * coord1, const Real * coord2, const Real * coord3, const Real * coord4);
/// volume of a tetrahedron
static inline Real tetrahedron_volume(const Real * coord1, const Real * coord2, const Real * coord3, const Real * coord4);
/// compute the barycenter of n points
static inline void barycenter(const Real * coord,
UInt nb_points, UInt spatial_dimension,
Real * barycenter);
/// vector between x and y
static inline void vector_2d(const Real * x, const Real * y, Real * vec);
/// vector pointing from x to y in 3 spatial dimension
static inline void vector_3d(const Real * x, const Real * y, Real * vec);
/// test if two scalar are equal within a given tolerance
static inline bool are_float_equal(Real x, Real y);
/// test if two vectors are equal within a given tolerance
static inline bool are_vector_equal(UInt n, Real * x, Real * y);
#ifdef isnan
# error "You probably included <math.h> which is incompatible with aka_math please use\
<cmath> or add a \"#undef isnan\" before akantu includes"
#endif
/// test if a real is a NaN
static inline bool isnan(Real x);
/// test if the line x and y intersects each other
static inline bool intersects(Real x_min, Real x_max, Real y_min, Real y_max);
/// test if a is in the range [x_min, x_max]
static inline bool is_in_range(Real a, Real x_min, Real x_max);
static inline Real getTolerance() { return tolerance; };
static inline void setTolerance(Real tol) { tolerance = tol; };
private:
/// tolerance for functions that need one
static Real tolerance;
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
#include "aka_math_tmpl.hh"
__END_AKANTU__
#endif /* __AKANTU_AKA_MATH_H__ */
diff --git a/src/common/aka_math_tmpl.hh b/src/common/aka_math_tmpl.hh
index e3d4391d1..0a4d37d90 100644
--- a/src/common/aka_math_tmpl.hh
+++ b/src/common/aka_math_tmpl.hh
@@ -1,669 +1,728 @@
/**
* @file aka_math_tmpl.hh
*
* @author Leonardo Snozzi <leonardo.snozzi@epfl.ch>
* @author Peter Spijker <peter.spijker@epfl.ch>
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Alejandro Marcos Aragon <alejandro.aragon@epfl.ch>
* @author Mathilde Radiguet <mathilde.radiguet@epfl.ch>
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @author David Simon Kammer <david.kammer@epfl.ch>
*
* @date Wed Aug 04 10:58:42 2010
*
* @brief Implementation of the inline functions of the math toolkit
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
__END_AKANTU__
#include <cmath>
#include <cstring>
+#include <typeinfo>
#ifdef AKANTU_USE_BLAS
# ifndef AKANTU_USE_BLAS_MKL
# include <cblas.h>
# else // AKANTU_USE_BLAS_MKL
# include <mkl_cblas.h>
# endif //AKANTU_USE_BLAS_MKL
#endif //AKANTU_USE_BLAS
#ifdef AKANTU_USE_LAPACK
extern "C" {
void dgeev_(char* jobvl, char* jobvr, int* n, double* a,
int* lda, double* wr, double* wi, double* vl, int* ldvl,
double* vr, int* ldvr, double* work, int* lwork, int* info);
// LU decomposition of a general matrix
void dgetrf_(int* m, int *n,
double* a, int* lda,
int* ipiv, int* info);
// generate inverse of a matrix given its LU decomposition
void dgetri_(int* n, double* a, int* lda,
int* ipiv, double* work, int* lwork, int* info);
}
#endif
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
inline void Math::matrix_vector(UInt m, UInt n,
const Real * A,
const Real * x,
Real * y, Real alpha) {
#ifdef AKANTU_USE_BLAS
/// y = alpha*op(A)*x + beta*y
- cblas_dgemv(CblasRowMajor, CblasNoTrans,
+ cblas_dgemv(CblasColMajor, CblasNoTrans,
m, n, alpha, A, n, x, 1, 0, y, 1);
#else
memset(y, 0, m*sizeof(Real));
for (UInt i = 0; i < m; ++i) {
- UInt A_i = i * n;
for (UInt j = 0; j < n; ++j) {
- y[i] += A[A_i + j] * x[j];
+ y[i] += A[i + j*m] * x[j];
}
y[i] *= alpha;
}
#endif
}
/* -------------------------------------------------------------------------- */
inline void Math::matrixt_vector(UInt m, UInt n,
const Real * A,
const Real * x,
Real * y, Real alpha) {
#ifdef AKANTU_USE_BLAS
/// y = alpha*op(A)*x + beta*y
- cblas_dgemv(CblasRowMajor, CblasNoTrans,
+ cblas_dgemv(CblasColMajor, CblasTrans,
m, n, alpha, A, m, x, 1, 0, y, 1);
#else
memset(y, 0, m*sizeof(Real));
for (UInt i = 0; i < m; ++i) {
for (UInt j = 0; j < n; ++j) {
- y[i] += A[i + j * m] * x[j];
+ y[i] += A[i * n + j] * x[j];
}
y[i] *= alpha;
}
#endif
}
/* -------------------------------------------------------------------------- */
inline void Math::matrix_matrix(UInt m, UInt n, UInt k,
const Real * A,
const Real * B,
Real * C, Real alpha) {
#ifdef AKANTU_USE_BLAS
/// C := alpha*op(A)*op(B) + beta*C
- cblas_dgemm(CblasRowMajor, CblasNoTrans, CblasNoTrans,
+ cblas_dgemm(CblasColMajor, CblasNoTrans, CblasNoTrans,
m, n, k,
alpha,
A, k,
B, n,
0,
C, n);
#else
memset(C, 0, m*n*sizeof(Real));
for (UInt j = 0; j < n; ++j) {
+ UInt _jb = j * k;
+ UInt _jc = j * m;
for (UInt i = 0; i < m; ++i) {
- UInt A_i = i * k;
- UInt C_i = i * n;
for (UInt l = 0; l < k; ++l) {
- UInt B_l = l * n;
- C[C_i + j] += A[A_i + l] * B[B_l + j];
+ UInt _la = l * m;
+ C[i + _jc] += A[i + _la] * B[l + _jb];
}
- C[C_i + j] *= alpha;
+ C[i + _jc] *= alpha;
}
}
#endif
}
/* -------------------------------------------------------------------------- */
inline void Math::matrixt_matrix(UInt m, UInt n, UInt k,
const Real * A,
const Real * B,
Real * C, Real alpha) {
#ifdef AKANTU_USE_BLAS
/// C := alpha*op(A)*op(B) + beta*C
- cblas_dgemm(CblasRowMajor, CblasTrans, CblasNoTrans,
+ cblas_dgemm(CblasColMajor, CblasTrans, CblasNoTrans,
m, n, k,
alpha,
A, m,
B, n,
0,
C, n);
#else
memset(C, 0, m*n*sizeof(Real));
- for (UInt i = 0; i < m; ++i) {
- // UInt A_i = i * k;
- UInt C_i = i * n;
- for (UInt j = 0; j < n; ++j) {
+ for (UInt j = 0; j < n; ++j) {
+ UInt _jc = j*m;
+ UInt _jb = j*k;
+ for (UInt i = 0; i < m; ++i) {
+ UInt _ia = i*k;
for (UInt l = 0; l < k; ++l) {
- C[C_i + j] += A[l * m + i] * B[l * n + j];
+ C[i + _jc] += A[l + _ia] * B[l + _jb];
}
- C[C_i + j] *= alpha;
+ C[i + _jc] *= alpha;
}
}
#endif
}
/* -------------------------------------------------------------------------- */
inline void Math::matrix_matrixt(UInt m, UInt n, UInt k,
const Real * A,
const Real * B,
Real * C, Real alpha) {
#ifdef AKANTU_USE_BLAS
/// C := alpha*op(A)*op(B) + beta*C
cblas_dgemm(CblasRowMajor, CblasNoTrans, CblasTrans,
m, n, k,
alpha,
A, k,
B, k,
0,
C, n);
#else
memset(C, 0, m*n*sizeof(Real));
- for (UInt i = 0; i < m; ++i) {
- UInt A_i = i * k;
- UInt C_i = i * n;
- for (UInt j = 0; j < n; ++j) {
- UInt B_j = j * k;
+ for (UInt j = 0; j < n; ++j) {
+ UInt _jc = j * m;
+ for (UInt i = 0; i < m; ++i) {
for (UInt l = 0; l < k; ++l) {
- C[C_i + j] += A[A_i + l] * B[B_j + l];
+ UInt _la = l * m;
+ UInt _lb = l * n;
+ C[i + _jc] += A[i + _la] * B[j + _lb];
}
- C[C_i + j] *= alpha;
+ C[i + _jc] *= alpha;
}
}
#endif
}
/* -------------------------------------------------------------------------- */
inline void Math::matrixt_matrixt(UInt m, UInt n, UInt k,
const Real * A,
const Real * B,
Real * C, Real alpha) {
#ifdef AKANTU_USE_BLAS
/// C := alpha*op(A)*op(B) + beta*C
- cblas_dgemm(CblasRowMajor, CblasTrans, CblasTrans,
+ cblas_dgemm(CblasColMajor, CblasTrans, CblasTrans,
m, n, k,
alpha,
A, m,
B, k,
0,
C, n);
#else
memset(C, 0, m * n * sizeof(Real));
- for (UInt i = 0; i < m; ++i) {
- UInt C_i = i * n;
- for (UInt j = 0; j < n; ++j) {
- UInt B_j = j * k;
+ for (UInt j = 0; j < n; ++j) {
+ UInt _jc = j*m;
+ for (UInt i = 0; i < m; ++i) {
+ UInt _ia = i*k;
for (UInt l = 0; l < k; ++l) {
- C[C_i + j] += A[l * m + i] * B[B_j + l];
+ UInt _lb = l * n;
+ C[i + _jc] += A[l + _ia] * B[j + _lb];
}
- C[C_i + j] *= alpha;
+ C[i + _jc] *= alpha;
}
}
#endif
}
/* -------------------------------------------------------------------------- */
inline Real Math::vectorDot(const Real * v1, const Real * v2, UInt n) {
#ifdef AKANTU_USE_BLAS
/// d := v1 . v2
Real d = cblas_ddot(n, v1, 1, v2, 1);
#else
Real d = 0;
for (UInt i = 0; i < n; ++i) {
d += v1[i] * v2[i];
}
#endif
return d;
}
/* -------------------------------------------------------------------------- */
template <bool tr_A, bool tr_B>
inline void Math::matMul(UInt m, UInt n, UInt k,
Real alpha, const Real * A, const Real * B,
__attribute__ ((unused)) Real beta, Real * C) {
if(tr_A) {
if(tr_B) matrixt_matrixt(m, n, k, A, B, C, alpha);
else matrixt_matrix(m, n, k, A, B, C, alpha);
} else {
if(tr_B) matrix_matrixt(m, n, k, A, B, C, alpha);
else matrix_matrix(m, n, k, A, B, C, alpha);
}
}
/* -------------------------------------------------------------------------- */
template <bool tr_A>
inline void Math::matVectMul(UInt m, UInt n,
Real alpha, const Real * A, const Real * x,
__attribute__ ((unused)) Real beta, Real * y) {
if(tr_A) {
matrixt_vector(m, n, A, x, y, alpha);
} else {
matrix_vector(m, n, A, x, y, alpha);
}
}
/* -------------------------------------------------------------------------- */
+template<typename T>
+inline void Math::matrixEig(__attribute__((unused)) UInt n,
+ __attribute__((unused)) T * A,
+ __attribute__((unused)) T * d,
+ __attribute__((unused)) T * V) {
+ AKANTU_DEBUG_ERROR("You have to compile with the support of LAPACK activated to use this function! Or implement it for the type " << debug::demangle(typeid(T).name()));
+}
+
#ifdef AKANTU_USE_LAPACK
-inline void Math::matrixEig(UInt n, Real * A, Real * d, Real * V) {
+template<>
+inline void Math::matrixEig<double>(UInt n, double * A, double * d, double * V) {
// Matrix A is row major, so the lapack function in fortran will process
// A^t. Asking for the left eigenvectors of A^t will give the transposed right
// eigenvectors of A so in the C++ code the right eigenvectors.
char jobvl;
if(V != NULL)
jobvl = 'V'; // compute left eigenvectors
else
jobvl = 'N'; // compute left eigenvectors
char jobvr('N'); // compute right eigenvectors
double * di = new double[n]; // imaginary part of the eigenvalues
int info;
int N = n;
double wkopt;
int lwork = -1;
// query and allocate the optimal workspace
dgeev_(&jobvl, &jobvr, &N, A, &N, d, di, V, &N, NULL, &N, &wkopt, &lwork, &info);
lwork = int(wkopt);
double * work = new double[lwork];
// solve the eigenproblem
dgeev_(&jobvl, &jobvr, &N, A, &N, d, di, V, &N, NULL, &N, work, &lwork, &info);
AKANTU_DEBUG_ASSERT(info == 0, "Problem computing eigenvalues/vectors. DGEEV exited with the value " << info);
delete [] work;
delete [] di; // I hope for you that there was no complex eigenvalues !!!
}
-#else
-inline void Math::matrixEig(__attribute__((unused)) UInt n,
- __attribute__((unused)) Real * A,
- __attribute__((unused)) Real * d,
- __attribute__((unused)) Real * V) {
- AKANTU_DEBUG_ERROR("You have to compile with the support of LAPACK activated to use this function!");
-}
-#endif
-
-/* -------------------------------------------------------------------------- */
-#ifdef AKANTU_USE_LAPACK
-inline void Math::inv(UInt n, const Real * A, Real * invA) {
- int N = n;
- int info;
- int * ipiv = new int[N+1];
- int lwork = N*N;
- double * work = new double[lwork];
-
- std::copy(A, A + n*n, invA);
-
- dgetrf_(&N, &N, invA, &N, ipiv, &info);
- if(info > 0) {
- AKANTU_DEBUG_ERROR("Singular matrix - cannot factorize it (info: "
- << info <<" )");
- }
-
- dgetri_(&N, invA, &N, ipiv, work, &lwork, &info);
- if(info != 0) {
- AKANTU_DEBUG_ERROR("Cannot invert the matrix (info: "<< info <<" )");
- }
-
- delete [] ipiv;
- delete [] work;
-}
-#else
-inline void Math::inv(__attribute__((unused)) UInt n,
- __attribute__((unused)) const Real * A,
- __attribute__((unused)) Real * Ainv) {
- AKANTU_DEBUG_ERROR("You have to compile with the support of LAPACK activated to use this function!");
-}
#endif
/* -------------------------------------------------------------------------- */
inline void Math::matrix22_eigenvalues(Real * A, Real *Adiag) {
///d = determinant of Matrix A
Real d = det2(A);
///b = trace of Matrix A
Real b = A[0]+A[3];
Real c = sqrt(b*b - 4 *d);
Adiag[0]= .5*(b + c);
Adiag[1]= .5*(b - c);
}
/* -------------------------------------------------------------------------- */
inline void Math::matrix33_eigenvalues(Real * A, Real *Adiag) {
/// a L^3 + b L^2 + c L + d = 0
matrixEig(3, A, Adiag);
// Real a = -1 ;
// ///b = trace of Matrix A
// Real b = A[0]+A[4]+A[8];
// /// c = 0.5*(trace(M^2)-trace(M)^2)
// Real c = A[1]*A[3] + A[2]*A[6] + A[5]*A[7] - A[0]*A[4] -
// A[0]*A[8] - A[4]*A[8];
// ///d = determinant of Matrix A
// Real d = det3(A);
//
// /// Define x, y, z
// Real x = c/a - b*b/(3.*a*a);
// Real y = 2.*b*b*b/(27.*a*a*a) - b*c/(3.*a*a) + d/a;
// Real z = y*y/4. + x*x*x/27.;
// /// Define I, j, k, m, n, p (so equations are not so cluttered)
// Real i = sqrt(y*y/4. - z);
// Real j = pow(i,1./3.);
// Real k = 0;
// if (std::abs(i) > 1e-12)
// k = acos(-(y/(2.*i)));
//
// Real m = cos(k/3);
// Real n = sqrt(3.)*sin(k/3);
// Real p = -b/(3.*a);
//
// Adiag[0] = 2*j*m + p;
// Adiag[1] = -j *(m + n) + p;
// Adiag[2] = -j * (m - n) + p;
}
/* -------------------------------------------------------------------------- */
template<UInt dim>
inline void Math::eigenvalues(Real * A, Real * d) {
if(dim == 1) { d[0] = A[0]; }
else if(dim == 2) { matrix22_eigenvalues(A, d); }
// else if(dim == 3) { matrix33_eigenvalues(A, d); }
else matrixEig(dim, A, d);
}
/* -------------------------------------------------------------------------- */
inline Real Math::det2(const Real * mat) {
return mat[0]*mat[3] - mat[1]*mat[2];
}
/* -------------------------------------------------------------------------- */
inline Real Math::det3(const Real * mat) {
return
mat[0]*(mat[4]*mat[8]-mat[7]*mat[5])
- mat[3]*(mat[1]*mat[8]-mat[7]*mat[2])
+ mat[6]*(mat[1]*mat[5]-mat[4]*mat[2]);
}
+/* -------------------------------------------------------------------------- */
+template<UInt n>
+inline Real Math::det(const Real * mat) {
+ if(n == 1) return *mat;
+ else if(n == 2) return det2(mat);
+ else if(n == 3) return det3(mat);
+ else return det(n, mat);
+}
+
+/* -------------------------------------------------------------------------- */
+template<typename T>
+inline T Math::det(__attribute__((unused)) UInt n,
+ __attribute__((unused)) const T * A) {
+ AKANTU_DEBUG_ERROR("You have to compile with the support of LAPACK activated to use this function!");
+ return T();
+}
+
+#ifdef AKANTU_USE_LAPACK
+template<>
+inline Real Math::det<double>(UInt n, const double * A) {
+ int N = n;
+ int info;
+ int * ipiv = new int[N+1];
+
+ double * LU = new double[N*N];
+ std::copy(A, A + N*N, LU);
+
+ // LU factorization of A
+ dgetrf_(&N, &N, LU, &N, ipiv, &info);
+ if(info > 0) {
+ AKANTU_DEBUG_ERROR("Singular matrix - cannot factorize it (info: "
+ << info <<" )");
+ }
+
+ // det(A) = det(L) * det(U) = 1 * det(U) = product_i U_{ii}
+ double det = 1.;
+ for (int i = 0; i < N; ++i) det *= (2*(ipiv[i] == i) - 1) * LU[i*n+i];
+
+ delete [] ipiv;
+ delete [] LU;
+ return det;
+}
+#endif
+
/* -------------------------------------------------------------------------- */
inline void Math::normal2(const Real * vec,Real * normal) {
normal[0] = vec[1];
normal[1] = -vec[0];
Math::normalize2(normal);
}
/* -------------------------------------------------------------------------- */
inline void Math::normal3(const Real * vec1,const Real * vec2,Real * normal) {
Math::vectorProduct3(vec1,vec2,normal);
Math::normalize3(normal);
}
/* -------------------------------------------------------------------------- */
inline void Math::normalize2(Real * vec) {
Real norm = Math::norm2(vec);
vec[0] /= norm;
vec[1] /= norm;
}
/* -------------------------------------------------------------------------- */
inline void Math::normalize3(Real * vec) {
Real norm = Math::norm3(vec);
vec[0] /= norm;
vec[1] /= norm;
vec[2] /= norm;
}
/* -------------------------------------------------------------------------- */
inline Real Math::norm2(const Real * vec) {
return sqrt(vec[0]*vec[0] + vec[1]*vec[1]);
}
/* -------------------------------------------------------------------------- */
inline Real Math::norm3(const Real * vec) {
return sqrt(vec[0]*vec[0] + vec[1]*vec[1] + vec[2]*vec[2]);
}
/* -------------------------------------------------------------------------- */
inline Real Math::norm(UInt n, const Real * vec) {
Real norm = 0.;
for (UInt i = 0; i < n; ++i) {
norm += vec[i]*vec[i];
}
return sqrt(norm);
}
/* -------------------------------------------------------------------------- */
inline void Math::inv2(const Real * mat,Real * inv) {
Real det_mat = det2(mat);
inv[0] = mat[3] / det_mat;
inv[1] = -mat[1] / det_mat;
inv[2] = -mat[2] / det_mat;
inv[3] = mat[0] / det_mat;
}
/* -------------------------------------------------------------------------- */
inline void Math::inv3(const Real * mat,Real * inv) {
Real det_mat = det3(mat);
inv[0] = (mat[4]*mat[8] - mat[7]*mat[5])/det_mat;
inv[1] = (mat[2]*mat[7] - mat[8]*mat[1])/det_mat;
inv[2] = (mat[1]*mat[5] - mat[4]*mat[2])/det_mat;
inv[3] = (mat[5]*mat[6] - mat[8]*mat[3])/det_mat;
inv[4] = (mat[0]*mat[8] - mat[6]*mat[2])/det_mat;
inv[5] = (mat[2]*mat[3] - mat[5]*mat[0])/det_mat;
inv[6] = (mat[3]*mat[7] - mat[6]*mat[4])/det_mat;
inv[7] = (mat[1]*mat[6] - mat[7]*mat[0])/det_mat;
inv[8] = (mat[0]*mat[4] - mat[3]*mat[1])/det_mat;
}
+/* -------------------------------------------------------------------------- */
+template<UInt n>
+inline void Math::inv(const Real * A, Real * Ainv) {
+ if(n == 1) *Ainv = 1./ *A;
+ else if(n == 2) inv2(A, Ainv);
+ else if(n == 3) inv3(A, Ainv);
+ else inv(n, A, Ainv);
+}
+
+/* -------------------------------------------------------------------------- */
+template<typename T>
+inline void Math::inv(__attribute__((unused)) UInt n,
+ __attribute__((unused)) const T * A,
+ __attribute__((unused)) T * Ainv) {
+ AKANTU_DEBUG_ERROR("You have to compile with the support of LAPACK activated to use this function! Or implement it for the type " << debug::demangle(typeid(T).name()));
+}
+
+#ifdef AKANTU_USE_LAPACK
+template<>
+inline void Math::inv<double>(UInt n, const double * A, double * invA) {
+ int N = n;
+ int info;
+ int * ipiv = new int[N+1];
+ int lwork = N*N;
+ double * work = new double[lwork];
+
+ std::copy(A, A + n*n, invA);
+
+ dgetrf_(&N, &N, invA, &N, ipiv, &info);
+ if(info > 0) {
+ AKANTU_DEBUG_ERROR("Singular matrix - cannot factorize it (info: "
+ << info <<" )");
+ }
+
+ dgetri_(&N, invA, &N, ipiv, work, &lwork, &info);
+ if(info != 0) {
+ AKANTU_DEBUG_ERROR("Cannot invert the matrix (info: "<< info <<" )");
+ }
+
+ delete [] ipiv;
+ delete [] work;
+}
+#endif
+
/* -------------------------------------------------------------------------- */
inline void Math::vectorProduct3(const Real * v1, const Real * v2, Real * res) {
res[0] = v1[1]*v2[2] - v1[2]*v2[1];
res[1] = v1[2]*v2[0] - v1[0]*v2[2];
res[2] = v1[0]*v2[1] - v1[1]*v2[0];
}
/* -------------------------------------------------------------------------- */
inline Real Math::vectorDot2(const Real * v1, const Real * v2) {
return (v1[0]*v2[0] + v1[1]*v2[1]);
}
/* -------------------------------------------------------------------------- */
inline Real Math::vectorDot3(const Real * v1, const Real * v2) {
return (v1[0]*v2[0] + v1[1]*v2[1] + v1[2]*v2[2]);
}
/* -------------------------------------------------------------------------- */
inline Real Math::distance_2d(const Real * x, const Real * y) {
return sqrt((y[0] - x[0])*(y[0] - x[0]) + (y[1] - x[1])*(y[1] - x[1]));
}
/* -------------------------------------------------------------------------- */
inline Real Math::triangle_inradius(const Real * coord1,
const Real * coord2,
const Real * coord3) {
/**
* @f{eqnarray*}{
* r &=& A / s \\
* A &=& 1/4 * \sqrt{(a + b + c) * (a - b + c) * (a + b - c) (-a + b + c)} \\
* s &=& \frac{a + b + c}{2}
* @f}
*/
Real a, b, c;
a = distance_2d(coord1, coord2);
b = distance_2d(coord2, coord3);
c = distance_2d(coord1, coord3);
Real s;
s = (a + b + c) * 0.5;
return sqrt((s - a) * (s - b) * (s - c) / s);
}
/* -------------------------------------------------------------------------- */
inline Real Math::distance_3d(const Real * x, const Real * y) {
return sqrt((y[0] - x[0])*(y[0] - x[0])
+ (y[1] - x[1])*(y[1] - x[1])
+ (y[2] - x[2])*(y[2] - x[2])
);
}
/* -------------------------------------------------------------------------- */
inline Real Math::tetrahedron_volume(const Real * coord1,
const Real * coord2,
const Real * coord3,
const Real * coord4) {
Real xx[9], vol;
xx[0] = coord2[0]; xx[1] = coord2[1]; xx[2] = coord2[2];
xx[3] = coord3[0]; xx[4] = coord3[1]; xx[5] = coord3[2];
xx[6] = coord4[0]; xx[7] = coord4[1]; xx[8] = coord4[2];
vol = det3(xx);
xx[0] = coord1[0]; xx[1] = coord1[1]; xx[2] = coord1[2];
xx[3] = coord3[0]; xx[4] = coord3[1]; xx[5] = coord3[2];
xx[6] = coord4[0]; xx[7] = coord4[1]; xx[8] = coord4[2];
vol -= det3(xx);
xx[0] = coord1[0]; xx[1] = coord1[1]; xx[2] = coord1[2];
xx[3] = coord2[0]; xx[4] = coord2[1]; xx[5] = coord2[2];
xx[6] = coord4[0]; xx[7] = coord4[1]; xx[8] = coord4[2];
vol += det3(xx);
xx[0] = coord1[0]; xx[1] = coord1[1]; xx[2] = coord1[2];
xx[3] = coord2[0]; xx[4] = coord2[1]; xx[5] = coord2[2];
xx[6] = coord3[0]; xx[7] = coord3[1]; xx[8] = coord3[2];
vol -= det3(xx);
vol /= 6;
return vol;
}
/* -------------------------------------------------------------------------- */
inline Real Math::tetrahedron_inradius(const Real * coord1,
const Real * coord2,
const Real * coord3,
const Real * coord4) {
Real l12, l13, l14, l23, l24, l34;
l12 = distance_3d(coord1, coord2);
l13 = distance_3d(coord1, coord3);
l14 = distance_3d(coord1, coord4);
l23 = distance_3d(coord2, coord3);
l24 = distance_3d(coord2, coord4);
l34 = distance_3d(coord3, coord4);
Real s1, s2, s3, s4;
s1 = (l12 + l23 + l13) * 0.5;
s1 = sqrt(s1*(s1-l12)*(s1-l23)*(s1-l13));
s2 = (l12 + l24 + l14) * 0.5;
s2 = sqrt(s2*(s2-l12)*(s2-l24)*(s2-l14));
s3 = (l23 + l34 + l24) * 0.5;
s3 = sqrt(s3*(s3-l23)*(s3-l34)*(s3-l24));
s4 = (l13 + l34 + l14) * 0.5;
s4 = sqrt(s4*(s4-l13)*(s4-l34)*(s4-l14));
Real volume = Math::tetrahedron_volume(coord1,coord2,coord3,coord4);
return 3*volume/(s1+s2+s3+s4);
}
/* -------------------------------------------------------------------------- */
inline void Math::barycenter(const Real * coord,
UInt nb_points, UInt spatial_dimension,
Real * barycenter) {
memset(barycenter, 0, spatial_dimension * sizeof(Real));
for (UInt n = 0; n < nb_points; ++n) {
UInt offset = n * spatial_dimension;
for (UInt i = 0; i < spatial_dimension; ++i) {
barycenter[i] += coord[offset + i] / (Real) nb_points;
}
}
}
/* -------------------------------------------------------------------------- */
inline void Math::vector_2d(const Real * x, const Real * y, Real * res) {
res[0] = y[0]-x[0];
res[1] = y[1]-x[1];
}
/* -------------------------------------------------------------------------- */
inline void Math::vector_3d(const Real * x, const Real * y, Real * res) {
res[0] = y[0]-x[0];
res[1] = y[1]-x[1];
res[2] = y[2]-x[2];
}
/* -------------------------------------------------------------------------- */
inline bool Math::are_float_equal(const Real x, const Real y){
return (std::abs( x - y) < tolerance);
}
/* -------------------------------------------------------------------------- */
inline bool Math::isnan(Real x) {
#if defined(__INTEL_COMPILER)
#pragma warning ( push )
#pragma warning ( disable : 1572 )
#endif //defined(__INTEL_COMPILER)
// x = x return false means x = quiet_NaN
return !(x == x);
#if defined(__INTEL_COMPILER)
#pragma warning ( pop )
#endif //defined(__INTEL_COMPILER)
}
/* -------------------------------------------------------------------------- */
inline bool Math::are_vector_equal(UInt n, Real * x, Real * y){
bool test = true;
for (UInt i = 0; i < n; ++i) {
test &= are_float_equal(x[i],y[i]);
}
return test;
}
/* -------------------------------------------------------------------------- */
inline bool Math::intersects(Real x_min, Real x_max, Real y_min, Real y_max) {
return ! ((x_max < y_min) || (x_min > y_max));
}
/* -------------------------------------------------------------------------- */
inline bool Math::is_in_range(Real a, Real x_min, Real x_max) {
return ((a >= x_min) && (a <= x_max));
}
diff --git a/src/common/aka_random_generator.hh b/src/common/aka_random_generator.hh
new file mode 100644
index 000000000..93c692a8e
--- /dev/null
+++ b/src/common/aka_random_generator.hh
@@ -0,0 +1,214 @@
+/**
+ * @file aka_random_generator.hh
+ *
+ * @author Nicolas Richart <nicolas.richart@epfl.ch>
+ *
+ * @date Fri Nov 9 14:53:08 2012
+ *
+ * @brief generic random generator
+ *
+ * @section LICENSE
+ *
+ * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
+ * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
+ *
+ * Akantu is free software: you can 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 3 of the License, or (at your option) any
+ * later version.
+ *
+ * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+/* -------------------------------------------------------------------------- */
+#include "aka_common.hh"
+#include "aka_vector.hh"
+#include "static_communicator.hh"
+
+#ifndef __AKANTU_AKA_RANDOM_GENERATOR_HH__
+#define __AKANTU_AKA_RANDOM_GENERATOR_HH__
+
+__BEGIN_AKANTU__
+
+template<typename T>
+class RandomGenerator {
+ /* ------------------------------------------------------------------------ */
+ /* Constructors/Destructors */
+ /* ------------------------------------------------------------------------ */
+public:
+
+ RandomGenerator(long int seed = 0) : seed(seed) {
+ if(seed == 0) this->seed = time(NULL) * (StaticCommunicator::getStaticCommunicator().whoAmI() + 1);
+ srand48(seed);
+ }
+
+ virtual ~RandomGenerator() {}
+
+
+ virtual void generate(const T & avg, Vector<T> & vect) = 0;
+ virtual void setParams(std::string value) = 0;
+
+ void setSeed(long int seed) {
+ this->seed = seed;
+ srand48(seed);
+ }
+
+ inline T rand();
+
+ /* ------------------------------------------------------------------------ */
+ /* Methods */
+ /* ------------------------------------------------------------------------ */
+public:
+
+ /// function to print the contain of the class
+ virtual void printself(std::ostream & stream, int indent = 0) const {
+ stream << "seed=" << seed;
+ }
+
+ /* ------------------------------------------------------------------------ */
+ /* Accessors */
+ /* ------------------------------------------------------------------------ */
+public:
+
+ /* ------------------------------------------------------------------------ */
+ /* Class Members */
+ /* ------------------------------------------------------------------------ */
+private:
+ long int seed;
+};
+
+template<>
+inline Real RandomGenerator<Real>::rand() {
+ return drand48();
+}
+
+/// standard output stream operator
+template<typename T>
+inline std::ostream & operator <<(std::ostream & stream, const RandomGenerator<T> & _this)
+{
+ _this.printself(stream);
+ return stream;
+}
+
+/* -------------------------------------------------------------------------- */
+/* Uniform generator */
+/* -------------------------------------------------------------------------- */
+template<typename T>
+class UniformRandomGenerator :public RandomGenerator<T> {
+ /* ------------------------------------------------------------------------ */
+ /* Constructors/Destructors */
+ /* ------------------------------------------------------------------------ */
+public:
+
+ UniformRandomGenerator(long int seed = 0) : RandomGenerator<T>(seed) { };
+
+ virtual ~UniformRandomGenerator() {};
+
+ void generate(const T & ref, Vector<T> & vect) {
+ UInt n = vect.getSize();
+ for (UInt i = 0; i < n; ++i)
+ vect(i) = ref * ((1. - random_factor_min) + (random_factor_min + random_factor_max) * this->rand());
+ }
+
+ /* ------------------------------------------------------------------------ */
+ /* Methods */
+ /* ------------------------------------------------------------------------ */
+public:
+
+ virtual void setParams(std::string value) {
+ std::stringstream sstr(value);
+ sstr >> random_factor_min;
+ sstr >> random_factor_max;
+ }
+
+ /// function to print the contain of the class
+ virtual void printself(std::ostream & stream, int indent = 0) const {
+ stream << "Uniform [ ";
+ RandomGenerator<T>::printself(stream, indent);
+ stream << ", min=" << 100*random_factor_min << "%, max=" << 100*random_factor_max << "%]";
+ };
+
+ /* ------------------------------------------------------------------------ */
+ /* Accessors */
+ /* ------------------------------------------------------------------------ */
+public:
+
+ /* ------------------------------------------------------------------------ */
+ /* Class Members */
+ /* ------------------------------------------------------------------------ */
+private:
+ T random_factor_min;
+ T random_factor_max;
+};
+
+
+/* -------------------------------------------------------------------------- */
+/* Weibull generator */
+/* -------------------------------------------------------------------------- */
+template<typename T>
+class WeibullRandomGenerator :public RandomGenerator<T> {
+ /* ------------------------------------------------------------------------ */
+ /* Constructors/Destructors */
+ /* ------------------------------------------------------------------------ */
+public:
+
+ WeibullRandomGenerator(long int seed = 0) : RandomGenerator<T>(seed) { };
+
+ virtual ~WeibullRandomGenerator() {};
+
+ /* ------------------------------------------------------------------------ */
+ /* Methods */
+ /* ------------------------------------------------------------------------ */
+public:
+
+ void generate(const T & ref, Vector<T> & vect) {
+ UInt n = vect.getSize();
+ T e = T(1) / m;
+ for (UInt i = 0; i < n; ++i) {
+ T r = rand();
+ vect(i) = ref + lambda * std::pow(- std::log(r), e);
+ }
+ }
+
+ virtual void setParams(std::string value) {
+ std::stringstream sstr(value);
+ sstr >> m;
+ sstr >> lambda;
+ }
+
+ /// function to print the contain of the class
+ virtual void printself(std::ostream & stream, int indent = 0) const {
+ stream << "Weibull [ ";
+ RandomGenerator<T>::printself(stream, indent);
+ stream << ", scale=" << m << ", shape=" << lambda << "]";
+ }
+
+ /* ------------------------------------------------------------------------ */
+ /* Accessors */
+ /* ------------------------------------------------------------------------ */
+public:
+
+ AKANTU_SET_MACRO(Shape, m, Real);
+ AKANTU_SET_MACRO(Scale, lambda, Real);
+
+ /* ------------------------------------------------------------------------ */
+ /* Class Members */
+ /* ------------------------------------------------------------------------ */
+private:
+ /// shape parameter or Weibull modulus
+ T m;
+ /// scale parameter
+ T lambda;
+};
+
+
+__END_AKANTU__
+
+#endif /* __AKANTU_AKA_RANDOM_GENERATOR_HH__ */
diff --git a/src/common/aka_safe_enum.hh b/src/common/aka_safe_enum.hh
new file mode 100644
index 000000000..2c32c9c44
--- /dev/null
+++ b/src/common/aka_safe_enum.hh
@@ -0,0 +1,80 @@
+/**
+ * @file aka_safe_enum.hh
+ *
+ * @author Nicolas Richart <nicolas.richart@epfl.ch>
+ *
+ * @date Wed Nov 28 17:15:04 2012
+ *
+ * @brief Safe enums type (see More C++ Idioms/Type Safe Enum on Wikibooks
+ * http://en.wikibooks.org/wiki/More_C%2B%2B_Idioms/Type_Safe_Enum)
+ *
+ * @section LICENSE
+ *
+ * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
+ * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
+ *
+ * Akantu is free software: you can 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 3 of the License, or (at your option) any
+ * later version.
+ *
+ * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+/* -------------------------------------------------------------------------- */
+
+#ifndef __AKANTU_AKA_SAFE_ENUM_HH__
+#define __AKANTU_AKA_SAFE_ENUM_HH__
+
+__BEGIN_AKANTU__
+
+template<typename def, typename inner = typename def::type>
+class safe_enum : public def {
+ typedef typename def::type type;
+public:
+ safe_enum(type v) : val(v) {}
+ inner underlying() const { return val; }
+
+ bool operator == (const safe_enum & s) const { return this->val == s.val; }
+ bool operator != (const safe_enum & s) const { return this->val != s.val; }
+ bool operator < (const safe_enum & s) const { return this->val < s.val; }
+ bool operator <= (const safe_enum & s) const { return this->val <= s.val; }
+ bool operator > (const safe_enum & s) const { return this->val > s.val; }
+ bool operator >= (const safe_enum & s) const { return this->val >= s.val; }
+
+ operator inner() { return val; };
+
+public:
+ // Works only if enumerations are contiguous.
+ class iterator {
+ public:
+ iterator(type v) : it(v) { }
+ void operator++() { ++it; }
+ safe_enum operator*() { return static_cast<type>(it); }
+ bool operator!=(iterator const & it) { return it.it != this->it; }
+ private:
+ int it;
+ };
+
+ static iterator begin() {
+ return def::_begin_;
+ }
+
+ static iterator end() {
+ return def::_end_;
+ }
+
+protected:
+ inner val;
+};
+
+__END_AKANTU__
+
+#endif /* __AKANTU_AKA_SAFE_ENUM_HH__ */
diff --git a/src/common/aka_types.hh b/src/common/aka_types.hh
index 167244bdd..8ff4bb05d 100644
--- a/src/common/aka_types.hh
+++ b/src/common/aka_types.hh
@@ -1,533 +1,640 @@
/**
* @file aka_types.hh
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Thu Feb 17 17:27:24 2011
*
* @brief description of the "simple" types
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "aka_error.hh"
#include "aka_math.hh"
#include "aka_vector.hh"
/* -------------------------------------------------------------------------- */
#include <iomanip>
#ifndef __INTEL_COMPILER
#include <tr1/unordered_map>
#else
#include <map>
#endif
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_AKA_TYPES_HH__
#define __AKANTU_AKA_TYPES_HH__
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
/* maps */
/* -------------------------------------------------------------------------- */
#ifndef __INTEL_COMPILER
template<class Key, class Ty>
struct unordered_map { typedef typename std::tr1::unordered_map<Key, Ty> type; };
#else
template<class Key, class Ty>
struct unordered_map { typedef typename std::map<Key, Ty> type; };
#endif
namespace types {
template<typename T>
class Matrix;
/* ------------------------------------------------------------------------ */
/* Vector */
/* ------------------------------------------------------------------------ */
template<typename T>
class Vector {
public:
Vector() : n(0), values(NULL), wrapped(false) {}
Vector(UInt n, T def = T()) : n(n), values(new T[n]), wrapped(false) {
std::fill_n(values, n, def);
}
Vector(T* data, UInt n) : n(n), values(data), wrapped(true) {}
Vector(const Vector & src) {
wrapped = src.wrapped;
n = src.n;
if (src.wrapped) {
values = src.values;
} else {
values = new T[n];
memcpy(this->values, src.values, n * sizeof(T));
}
}
virtual ~Vector() { if(!wrapped) delete [] values; };
/* ---------------------------------------------------------------------- */
UInt size() const { return n; }
T * storage() const { return values; }
/* ---------------------------------------------------------------------- */
void shallowCopy(const Vector & src) {
if(!wrapped) delete [] values;
this->n = src.n;
this->wrapped = true;
this->values = src.values;
}
/* ---------------------------------------------------------------------- */
inline T& operator()(UInt i) { return *(values + i); };
inline const T& operator()(UInt i) const { return *(values + i); };
inline T& operator[](UInt idx) { return *(values + idx); };
inline const T& operator[](UInt idx) const { return *(values + idx); };
/* ---------------------------------------------------------------------- */
inline Vector & operator=(const Vector & src) {
if(this != &src) {
if (wrapped) {
AKANTU_DEBUG_ASSERT(n == src.n, "vectors of different size");
memcpy(this->values, src.values, n * sizeof(T));
} else {
n = src.n;
delete [] values;
values = new T[n];
memcpy(this->values, src.values, n * sizeof(T));
}
}
return *this;
}
/* ---------------------------------------------------------------------- */
inline Vector & operator+=(const Vector & vect) {
T * a = this->storage();
T * b = vect.storage();
for (UInt i = 0; i < n; ++i) *(a++) += *(b++);
return *this;
}
/* ---------------------------------------------------------------------- */
inline Vector & operator+=(const T & x) {
T * a = this->values;
for (UInt i = 0; i < n; ++i) *(a++) += x;
return *this;
}
/* ---------------------------------------------------------------------- */
inline Vector & operator-=(const Vector & vect) {
T * a = this->storage();
T * b = vect.storage();
for (UInt i = 0; i < n; ++i) *(a++) -= *(b++);
return *this;
}
/* ---------------------------------------------------------------------- */
inline Vector & operator*=(const T & scalar) {
T * a = this->storage();
for (UInt i = 0; i < n; ++i) *(a++) *= scalar;
return *this;
}
/* ---------------------------------------------------------------------- */
inline Vector & operator*=(const Vector & vect) {
T * a = this->storage();
T * b = vect.storage();
for (UInt i = 0; i < n; ++i) *(a++) *= *(b++);
return *this;
}
/* -------------------------------------------------------------------------- */
inline Vector & operator=(T & scalar) {
T * a = this->storage();
for (UInt i = 0; i < n; ++i) *(a++) = scalar;
return *this;
}
/* ---------------------------------------------------------------------- */
inline Vector & operator/=(const T & x) {
T * a = this->values;
for (UInt i = 0; i < n; ++i) *(a++) /= x;
return *this;
}
/* ---------------------------------------------------------------------- */
inline Vector & operator/=(const Vector & vect) {
T * a = this->storage();
T * b = vect.storage();
for (UInt i = 0; i < n; ++i) *(a++) /= *(b++);
return *this;
}
/* ---------------------------------------------------------------------- */
inline Real dot(const Vector & vect) {
return Math::vectorDot(values, vect.storage(), n);
}
/* ---------------------------------------------------------------------- */
inline Vector & crossProduct(const Vector & v1, const Vector & v2) {
AKANTU_DEBUG_ASSERT(n == 3,
"crossProduct is only defined in 3D");
AKANTU_DEBUG_ASSERT(n == v1.n && n == v2.n,
"crossProduct is not a valid operation non matching size vectors");
// for (UInt i = 0; i < n; ++i) {
// values[i] =
// v1((i+1) % n) * v2((i+2) % n) -
// v1((i+2) % n) * v1((i+1) % n);
// }
Math::vectorProduct3(v1.values, v2.values, this->values);
return *this;
}
/* ---------------------------------------------------------------------- */
inline void clear() { memset(values, 0, n * sizeof(T)); };
template<bool tr_A>
inline void mul(const Matrix<T> & A, const Vector & x, Real alpha = 1.0);
/* ---------------------------------------------------------------------- */
inline Real norm() const {
return Math::norm(this->n, this->values);
}
+ /* ---------------------------------------------------------------------- */
+ inline void normalize() {
+ Real n = norm();
+ operator/=(n);
+ }
+
+ /* ---------------------------------------------------------------------- */
+ inline void copy(const Vector & src) {
+ memcpy(values, src.storage(), n * sizeof(T));
+ }
+
/* ---------------------------------------------------------------------- */
/// norm of (*this - x)
inline Real distance(const Vector & y) const {
Real * vx = values; Real * vy = y.storage();
Real sum_2 = 0;
for (UInt i = 0; i < n; ++i, ++vx, ++vy) sum_2 += (*vx - *vy)*(*vx - *vy);
return sqrt(sum_2);
}
/* ---------------------------------------------------------------------- */
/// function to print the containt of the class
virtual void printself(std::ostream & stream, int indent = 0) const {
std::string space;
for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
stream << space << "types::Vector<" << debug::demangle(typeid(T).name()) << "> [" << n <<"] :" << std::endl;
stream << space << AKANTU_INDENT << "| ";
for (UInt i = 0; i < n; ++i) {
stream << values[i] << " ";
}
stream << "|" << std::endl;
}
friend class ::akantu::Vector<T>;
protected:
UInt n;
T * values;
bool wrapped;
};
typedef Vector<Real> RVector;
// support operations for the creation of other vectors
template <typename T> Vector<T> operator*(T scalar, const Vector<T>& a);
template <typename T> Vector<T> operator+(const Vector<T>& a, const Vector<T>& b);
template <typename T> Vector<T> operator-(const Vector<T>& a, const Vector<T>& b);
/* -------------------------------------------------------------------------- */
template <typename T>
Vector<T> operator*(T scalar, const Vector<T>& a) {
Vector<T> r = a;
r *= scalar;
return r;
}
template <typename T>
Vector<T> operator+(const Vector<T>& a, const Vector<T>& b) {
Vector<T> r = a;
r += b;
return r;
}
template <typename T>
Vector<T> operator-(const Vector<T>& a, const Vector<T>& b) {
Vector<T> r = a;
r -= b;
return r;
}
/* ------------------------------------------------------------------------ */
/* Matrix */
/* ------------------------------------------------------------------------ */
template<typename T>
class Matrix {
public:
- Matrix() : m(0), n(0), values(NULL), wrapped(true) {};
+ Matrix() : m(0), n(0), values(NULL), wrapped(false) {};
Matrix(UInt m, UInt n, T def = 0) : m(m), n(n), values(new T[n*m]), wrapped(false) {
std::fill_n(values, n*m, def);
};
Matrix(T * data, UInt m, UInt n) : m(m), n(n), values(data), wrapped(true) {};
Matrix(const Matrix & src) {
- m = src.m;
- n = src.n;
- values = src.values;
wrapped = src.wrapped;
- const_cast<Matrix &>(src).wrapped = true;
- };
+ n = src.n;
+ m = src.m;
+ if (src.wrapped) {
+ values = src.values;
+ } else {
+ values = new T[n*m];
+ memcpy(this->values, src.values, n*m * sizeof(T));
+ }
+ }
virtual ~Matrix() { if(!wrapped) delete [] values; };
/* ---------------------------------------------------------------------- */
UInt size() const { return n*m; };
UInt rows() const { return m; };
UInt cols() const { return n; };
T * storage() const { return values; };
/* ---------------------------------------------------------------------- */
void shallowCopy(const Matrix & src) {
if(!wrapped) delete [] values;
this->n = src.n;
this->m = src.m;
this->wrapped = true;
this->values = src.values;
}
/* ---------------------------------------------------------------------- */
- inline T& operator()(UInt i, UInt j) { return *(values + i*n + j); };
- inline const T& operator()(UInt i, UInt j) const { return *(values + i*n + j); };
+ inline T& operator()(UInt i, UInt j) { return *(values + i + j*m); };
+ inline const T& operator()(UInt i, UInt j) const { return *(values + i + j*m); };
+
+ /// give a line vector wrapped on the column i
+ inline Vector<T> operator()(UInt j) { return types::Vector<T>(values + j*m, m); }
+ inline const Vector<T> operator()(UInt j) const { return types::Vector<T>(values + j*m, m); }
+
inline T& operator[](UInt idx) { return *(values + idx); };
inline const T& operator[](UInt idx) const { return *(values + idx); };
- inline Matrix & operator=(const Matrix & mat) {
- if(this != &mat) {
- if(values != NULL) {
- memcpy(this->values, mat.values, m*n*sizeof(T));
+ inline Matrix & operator=(const Matrix & src) {
+ if(this != &src) {
+ if (wrapped) {
+ AKANTU_DEBUG_ASSERT(n == src.n && m == src.m, "vectors of different size");
+ memcpy(this->values, src.values, n*m * sizeof(T));
} else {
- this->m = mat.m;
- this->n = mat.n;
-
- this->values = mat.values;
- const_cast<Matrix &>(mat).wrapped = true;
- this->wrapped = false;
+ n = src.n;
+ m = src.m;
+ delete [] values;
+ values = new T[n*m];
+ memcpy(this->values, src.values, n*m * sizeof(T));
}
}
return *this;
};
/* ---------------------------------------------------------------------- */
inline Matrix & operator=(T x) {
T * a = this->values;
for (UInt i = 0; i < n*m; ++i) *(a++) = x;
return *this;
}
/* ---------------------------------------------------------------------- */
inline Matrix operator* (const Matrix & B) {
Matrix C(this->m, B.n);
C.mul<false, false>(*this, B);
return C;
};
+ /* ----------------------------------------------------------------------- */
+ inline Matrix & operator*= (const Matrix & B) {
+ Matrix C(this->m, this->n);
+ C.mul<false, false>(*this, B);
+ this->copy(C);
+ return *this;
+ };
+
/* ---------------------------------------------------------------------- */
- inline Matrix & operator+=(const Matrix & A) {
- T * a = this->storage();
- T * b = A.storage();
- for (UInt i = 0; i < n*m; ++i)
- *(a++) += *(b++);
- return *this;
- }
+ inline Matrix & operator+=(const Matrix & A) {
+ T * a = this->storage();
+ T * b = A.storage();
+ for (UInt i = 0; i < n*m; ++i)
+ *(a++) += *(b++);
+ return *this;
+ }
+
+ /* ---------------------------------------------------------------------- */
+ inline Matrix & operator-=(const Matrix & A) {
+ T * a = this->storage();
+ T * b = A.storage();
+ for (UInt i = 0; i < n*m; ++i)
+ *(a++) -= *(b++);
+ return *this;
+ }
/* ---------------------------------------------------------------------- */
inline Matrix & operator+=(T x) {
T * a = this->values;
for (UInt i = 0; i < n*m; ++i) *(a++) += x;
return *this;
}
/* ---------------------------------------------------------------------- */
inline Matrix & operator*=(T x) {
T * a = this->storage();
for (UInt i = 0; i < n*m; ++i) *(a++) *= x;
return *this;
}
/* ---------------------------------------------------------------------- */
inline Matrix & operator/=(T x) {
T * a = this->values;
for (UInt i = 0; i < n*m; ++i) *(a++) /= x;
return *this;
}
/* ---------------------------------------------------------------------- */
template<bool tr_A, bool tr_B>
inline void mul(const Matrix & A, const Matrix & B, T alpha = 1.0) {
UInt k = A.n;
if(tr_A) k = A.m;
#ifndef AKANTU_NDEBUG
if (tr_B){
AKANTU_DEBUG_ASSERT(k == B.n, "matrices to multiply have no fit dimensions");
AKANTU_DEBUG_ASSERT(n == B.m, "matrices to multiply have no fit dimensions");
}
else {
AKANTU_DEBUG_ASSERT(k == B.m, "matrices to multiply have no fit dimensions");
AKANTU_DEBUG_ASSERT(n == B.n, "matrices to multiply have no fit dimensions");
}
if (tr_A){
AKANTU_DEBUG_ASSERT(m == A.n, "matrices to multiply have no fit dimensions");
}
else{
AKANTU_DEBUG_ASSERT(m == A.m, "matrices to multiply have no fit dimensions");
}
#endif //AKANTU_NDEBUG
Math::matMul<tr_A, tr_B>(m, n, k, alpha, A.storage(), B.storage(), 0., values);
}
/* ---------------------------------------------------------------------- */
inline void outerProduct(const types::Vector<T> & A,
const types::Vector<T> & B) {
AKANTU_DEBUG_ASSERT(A.size() == m && B.size() == n, "A and B are not compatible with the size of the matrix");
for (UInt i = 0; i < m; ++i) {
for (UInt j = 0; j < n; ++j) {
- values[i * m + j] += A[i] * B[j];
+ values[i + j * m] += A[i] * B[j];
}
}
}
/* ---------------------------------------------------------------------- */
inline void eig(types::Vector<T> & eigenvalues, Matrix & eigenvectors) const {
AKANTU_DEBUG_ASSERT(n == m, "eig is not a valid operation on a rectangular matrix");
Math::matrixEig(this->n, this->values, eigenvalues.storage(), eigenvectors.storage());
}
/* ---------------------------------------------------------------------- */
inline void clear() { std::fill_n(values, m * n, 0); };
/* ---------------------------------------------------------------------- */
inline void copy(const Matrix & src) {
memcpy(values, src.storage(), m * n * sizeof(T));
}
/* ---------------------------------------------------------------------- */
inline void eye(T alpha = 1.) {
AKANTU_DEBUG_ASSERT(n == m, "eye is not a valid operation on a rectangular matrix");
clear();
for (UInt i = 0; i < n; ++i) {
- values[i*n + i] = alpha;
+ values[i + i * m] = alpha;
}
}
/* ---------------------------------------------------------------------- */
inline T trace() const {
AKANTU_DEBUG_ASSERT(n == m, "trace is not a valid operation on a rectangular matrix");
T trace = 0.;
for (UInt i = 0; i < n; ++i)
- trace += values[i*n + i];
+ trace += values[i + i * m];
return trace;
}
/* -------------------------------------------------------------------------- */
inline T norm() const {
return Math::norm(this->n*this->m, this->values);
}
/* ---------------------------------------------------------------------- */
inline Matrix transpose() const {
Matrix tmp(m, n);
for (UInt i = 0; i < n; ++i) {
for (UInt j = 0; j < m; ++j) {
tmp(j,i) = operator()(i,j);
}
}
return tmp;
}
/* ---------------------------------------------------------------------- */
inline void inverse(const Matrix & A) {
AKANTU_DEBUG_ASSERT(A.n == A.m, "inv is not a valid operation on a rectangular matrix");
AKANTU_DEBUG_ASSERT(n == A.n, "the matrix should have the same size as its inverse");
Math::inv(A.n, A.values, this->values);
}
+ inline T det() {
+ AKANTU_DEBUG_ASSERT(n == m, "inv is not a valid operation on a rectangular matrix");
+ if(n == 1) return *values;
+ else if(n == 2) return Math::det2(values);
+ else if(n == 3) return Math::det3(values);
+ else Math::det(values, n);
+ }
+
/* ---------------------------------------------------------------------- */
/// function to print the containt of the class
virtual void printself(std::ostream & stream, int indent = 0) const {
std::string space;
for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
stream << space << "types::Matrix" << " [" << n << "," << m <<"] :" << std::endl;
for (UInt i = 0; i < m; ++i) {
stream << space << AKANTU_INDENT << "| ";
for (UInt j = 0; j < n; ++j) {
- stream << std::setw(10) << values[i*n +j] << " ";
+ stream << std::setw(10) << operator()(i, j) << " ";
}
stream << "|" << std::endl;
}
};
friend class ::akantu::Vector<T>;
protected:
UInt m;
UInt n;
T* values;
bool wrapped;
};
typedef Matrix<Real> RMatrix;
/* ------------------------------------------------------------------------ */
template<typename T>
template<bool tr_A>
inline void Vector<T>::mul(const Matrix<T> & A,
const Vector<T> & x,
Real alpha) {
UInt n = x.n;
+#ifndef AKANTU_NDEBUG
+ if (tr_A){
+ AKANTU_DEBUG_ASSERT(n == A.rows(), "matrix and vector to multiply have no fit dimensions");
+ AKANTU_DEBUG_ASSERT(this->n == A.cols(), "matrix and vector to multiply have no fit dimensions");
+ } else {
+ AKANTU_DEBUG_ASSERT(n == A.cols(), "matrix and vector to multiply have no fit dimensions");
+ AKANTU_DEBUG_ASSERT(this->n == A.rows(), "matrix and vector to multiply have no fit dimensions");
+ }
+#endif
Math::matVectMul<tr_A>(this->n, n, alpha, A.storage(), x.storage(), 0., values);
}
/* -------------------------------------------------------------------------- */
template<typename T>
inline std::ostream & operator<<(std::ostream & stream, const Matrix<T> & _this)
{
_this.printself(stream);
return stream;
}
/* -------------------------------------------------------------------------- */
template<typename T>
inline std::ostream & operator<<(std::ostream & stream, const Vector<T> & _this)
{
_this.printself(stream);
return stream;
}
+ /* ------------------------------------------------------------------------ */
+ /* Tensor3 */
+ /* ------------------------------------------------------------------------ */
+ template<typename T>
+ class Tensor3 {
+ public:
+ public:
+ Tensor3() : values(NULL), wrapped(true) { dim[0] = dim[1] = dim[2] = 0; };
+
+ Tensor3(UInt m, UInt n, UInt p, T def = 0) : values(new T[n*m*p]), wrapped(false) {
+ dim[0] = m; dim[1] = n; dim[2] = p;
+ std::fill_n(values, n*m*p, def);
+ };
+
+ Tensor3(T * data, UInt m, UInt n, UInt p) : values(data), wrapped(true) {
+ dim[0] = m; dim[1] = n; dim[2] = p;
+ };
+
+ Tensor3(const Tensor3 & src) {
+ wrapped = src.wrapped;
+ for (UInt i = 0; i < 3; ++i) dim[i] = src.dim[i];
+ if (src.wrapped) {
+ values = src.values;
+ } else {
+ values = new T[size()];
+ memcpy(this->values, src.values, size() * sizeof(T));
+ }
+ }
+
+ virtual ~Tensor3() { if(!wrapped) delete [] values; };
+ /* ---------------------------------------------------------------------- */
+ UInt size() const { return dim[0]*dim[1]*dim[2]; };
+ UInt size(UInt i) const { return dim[i]; };
+ T * storage() const { return values; };
+
+ /* ---------------------------------------------------------------------- */
+ void shallowCopy(const Tensor3 & src) {
+ if(!wrapped) delete [] values;
+ for (UInt i = 0; i < 3; ++i) dim[i] = src.dim[i];
+ this->wrapped = true;
+ this->values = src.values;
+ }
+
+ /* ---------------------------------------------------------------------- */
+ inline T& operator()(UInt i, UInt j, UInt k) { return *(values + (k*dim[0] + i)*dim[1] + j); };
+ inline const T& operator()(UInt i, UInt j, UInt k) const { return *(values + (k*dim[0] + i)*dim[1] + j); };
+ inline Matrix<T> operator()(UInt k) { return types::Matrix<T>(values + k*dim[0]*dim[1], dim[0], dim[1]); }
+ inline const Matrix<T> operator()(UInt k) const { return types::Matrix<T>(values + k*dim[0]*dim[1], dim[0], dim[1]); }
+ protected:
+ UInt dim[3];
+ T* values;
+ bool wrapped;
+ };
}
__END_AKANTU__
#endif /* __AKANTU_AKA_TYPES_HH__ */
diff --git a/src/common/aka_vector.hh b/src/common/aka_vector.hh
index 5240aef63..5ce70a576 100644
--- a/src/common/aka_vector.hh
+++ b/src/common/aka_vector.hh
@@ -1,372 +1,373 @@
/**
* @file aka_vector.hh
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Jun 18 11:48:28 2010
*
* @brief class of vectors
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_VECTOR_HH__
#define __AKANTU_VECTOR_HH__
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
/* -------------------------------------------------------------------------- */
#include <typeinfo>
//#include <cstring>
#include <vector>
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
class Matrix;
/// class that afford to store vectors in static memory
class VectorBase {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
VectorBase(const ID & id = "");
virtual ~VectorBase();
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
/// get the amount of space allocated in bytes
inline UInt getMemorySize() const;
/// set the size to zero without freeing the allocated space
inline void empty();
/// function to print the containt of the class
virtual void printself(std::ostream & stream, int indent = 0) const;
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
AKANTU_GET_MACRO(AllocatedSize, allocated_size, UInt);
AKANTU_GET_MACRO(Size, size, UInt);
AKANTU_GET_MACRO(NbComponent, nb_component, UInt);
AKANTU_GET_MACRO(ID, id, const ID &);
AKANTU_GET_MACRO(Tag, tag, const std::string &);
AKANTU_SET_MACRO(Tag, tag, const std::string &);
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
protected:
/// id of the vector
ID id;
/// the size allocated
UInt allocated_size;
/// the size used
UInt size;
/// number of components
UInt nb_component;
/// size of the stored type
UInt size_of_type;
/// User defined tag
std::string tag;
};
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
namespace types {
template<typename T> class Matrix;
template<typename T> class Vector;
}
/* -------------------------------------------------------------------------- */
template<typename T, bool is_scal>
class Vector : public VectorBase {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
typedef T value_type;
typedef value_type & reference;
typedef value_type * pointer_type;
typedef const value_type & const_reference;
/// Allocation of a new vector
inline Vector(UInt size = 0, UInt nb_component = 1,
const ID & id = "");
/// Allocation of a new vector with a default value
Vector(UInt size, UInt nb_component,
const value_type def_values[], const ID & id = "");
/// Allocation of a new vector with a default value
Vector(UInt size, UInt nb_component,
const_reference value, const ID & id = "");
/// Copy constructor (deep copy if deep=true)
Vector(const Vector<value_type, is_scal>& vect, bool deep = true, const ID & id = "");
/// Copy constructor (deep copy)
Vector(const std::vector<value_type> & vect);
virtual inline ~Vector();
/* ------------------------------------------------------------------------ */
/* Iterator */
/* ------------------------------------------------------------------------ */
/// \todo protected: does not compile with intel check why
public:
template <class R, class IR = R, bool issame = is_same<IR, T>::value >
class iterator_internal;
public:
/* ------------------------------------------------------------------------ */
// template<typename R, int fps = 0> class iterator : public iterator_internal<R> {};
// template<typename R, int fps = 0> class const_iterator : public iterator_internal<const R> {};
/* ------------------------------------------------------------------------ */
//template<class R> using iterator = iterator_internal<R>;
template<typename R = T>
class iterator : public iterator_internal<R> {
public:
typedef iterator_internal<R> parent;
typedef typename parent::value_type value_type;
typedef typename parent::pointer pointer;
typedef typename parent::reference reference;
typedef typename parent::difference_type difference_type;
typedef typename parent::iterator_category iterator_category;
public:
iterator() : parent() {};
iterator(pointer_type data, UInt offset) : parent(data, offset) {};
iterator(pointer warped) : parent(warped) {};
iterator(const iterator & it) : parent(it) {};
iterator(const parent & it) : parent(it) {};
inline iterator operator+(difference_type n)
{ return parent::operator+(n);; }
inline iterator operator-(difference_type n)
{ return parent::operator-(n);; }
inline difference_type operator-(const iterator & b)
{ return parent::operator-(b); }
inline iterator & operator++()
{ parent::operator++(); return *this; };
inline iterator & operator--()
{ parent::operator--(); return *this; };
inline iterator & operator+=(const UInt n)
{ parent::operator+=(n); return *this; }
};
/* ------------------------------------------------------------------------ */
//template<class R> using const_iterator = iterator_internal<const R, R>;
template<typename R = T>
class const_iterator : public iterator_internal<const R, R> {
public:
typedef iterator_internal<const R, R> parent;
typedef typename parent::value_type value_type;
typedef typename parent::pointer pointer;
typedef typename parent::reference reference;
typedef typename parent::difference_type difference_type;
typedef typename parent::iterator_category iterator_category;
public:
const_iterator() : parent() {};
const_iterator(pointer_type data, UInt offset) : parent(data, offset) {};
const_iterator(pointer warped) : parent(warped) {};
const_iterator(const parent & it) : parent(it) {};
+ const_iterator(const iterator<R> & it) : parent(it) {};
inline const_iterator operator+(difference_type n)
{ return parent::operator+(n); }
inline const_iterator operator-(difference_type n)
{ return parent::operator-(n); }
inline difference_type operator-(const const_iterator & b)
{ return parent::operator-(b); }
inline const_iterator & operator++()
{ parent::operator++(); return *this; };
inline const_iterator & operator--()
{ parent::operator--(); return *this; };
inline const_iterator & operator+=(const UInt n)
{ parent::operator+=(n); return *this; }
-
};
inline iterator<T> begin();
inline iterator<T> end();
inline const_iterator<T> begin() const;
inline const_iterator<T> end() const;
inline iterator< types::Vector<T> > begin(UInt n);
inline iterator< types::Vector<T> > end(UInt n);
inline const_iterator< types::Vector<T> > begin(UInt n) const;
inline const_iterator< types::Vector<T> > end(UInt n) const;
inline iterator< types::Matrix<T> > begin(UInt m, UInt n);
inline iterator< types::Matrix<T> > end(UInt m, UInt n);
inline const_iterator< types::Matrix<T> > begin(UInt m, UInt n) const;
inline const_iterator< types::Matrix<T> > end(UInt m, UInt n) const;
/// /!\ to use with caution
inline iterator< types::Vector<T> > begin_reinterpret(UInt n, UInt size);
inline iterator< types::Vector<T> > end_reinterpret(UInt n, UInt size);
inline const_iterator< types::Vector<T> > begin_reinterpret(UInt n, UInt size) const;
inline const_iterator< types::Vector<T> > end_reinterpret(UInt n, UInt size) const;
inline iterator< types::Matrix<T> > begin_reinterpret(UInt m, UInt n, UInt size);
inline iterator< types::Matrix<T> > end_reinterpret(UInt m, UInt n, UInt size);
inline const_iterator< types::Matrix<T> > begin_reinterpret(UInt m, UInt n, UInt size) const;
inline const_iterator< types::Matrix<T> > end_reinterpret(UInt m, UInt n, UInt size) const;
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
/// add an element at the end of the vector with the value value for all
/// component
inline void push_back(const_reference value);
/// add an element at the end of the vector
inline void push_back(const value_type new_elem[]);
template<typename Ret>
inline void push_back(const iterator<Ret> & it);
+ inline void push_back(const types::Vector<T> new_elem);
/**
* remove an element and move the last one in the hole
* /!\ change the order in the vector
*/
inline void erase(UInt i);
template<typename R>
inline void erase(const iterator<R> & it);
/// change the size of the vector and allocate more memory if needed
void resize(UInt size);
/// change the number of components by interlacing data
void extendComponentsInterlaced(UInt multiplicator, UInt stride);
/// function to print the containt of the class
virtual void printself(std::ostream & stream, int indent = 0) const;
// Vector<T, is_scal>& operator=(const Vector<T, is_scal>& vect);
/// search elem in the vector, return the position of the first occurrence or
/// -1 if not found
Int find(const_reference elem) const;
Int find(T elem[]) const;
/// set a vvector to 0
inline void clear() { std::fill_n(values, size*nb_component, T()); };
/// copy the content of an other vector
void copy(const Vector<T, is_scal> & vect);
/// give the address of the memory allocated for this vector
T * storage() const { return values; };
protected:
/// perform the allocation for the constructors
void allocate(UInt size, UInt nb_component = 1);
/// resize without initializing the memory
void resizeUnitialized(UInt new_size);
/* ------------------------------------------------------------------------ */
/* Operators */
/* ------------------------------------------------------------------------ */
public:
Vector<T, is_scal> & operator-=(const Vector<T, is_scal> & vect);
Vector<T, is_scal> & operator+=(const Vector<T, is_scal> & vect);
Vector<T, is_scal> & operator*=(const T & alpha);
inline reference operator()(UInt i, UInt j = 0);
inline const_reference operator()(UInt i, UInt j = 0) const;
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
UInt getSize() const{ return this->size; };
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
public:
/// array of values
T * values; // /!\ very dangerous
};
__END_AKANTU__
#include "aka_types.hh"
__BEGIN_AKANTU__
#include "aka_vector_tmpl.hh"
/* -------------------------------------------------------------------------- */
/* Inline Functions Vector<T, is_scal> */
/* -------------------------------------------------------------------------- */
template <typename T, bool is_scal>
inline std::ostream & operator<<(std::ostream & stream, const Vector<T, is_scal> & _this)
{
_this.printself(stream);
return stream;
}
/* -------------------------------------------------------------------------- */
/* Inline Functions VectorBase */
/* -------------------------------------------------------------------------- */
inline std::ostream & operator<<(std::ostream & stream, const VectorBase & _this)
{
_this.printself(stream);
return stream;
}
__END_AKANTU__
#endif /* __AKANTU_VECTOR_HH__ */
diff --git a/src/common/aka_vector_tmpl.hh b/src/common/aka_vector_tmpl.hh
index 0e4ac6c8a..ecb467aa4 100644
--- a/src/common/aka_vector_tmpl.hh
+++ b/src/common/aka_vector_tmpl.hh
@@ -1,865 +1,921 @@
/**
* @file aka_vector_tmpl.hh
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Thu Jul 15 00:41:12 2010
*
* @brief Inline functions of the classes Vector<T> and VectorBase
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
/* Inline Functions Vector<T> */
/* -------------------------------------------------------------------------- */
__END_AKANTU__
#include <memory>
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline T & Vector<T, is_scal>::operator()(UInt i, UInt j) {
AKANTU_DEBUG_ASSERT(size > 0,
"The vector \"" << id << "\" is empty");
AKANTU_DEBUG_ASSERT((i < size) && (j < nb_component),
"The value at position [" << i << "," << j
<< "] is out of range in vector \"" << id << "\"");
return values[i*nb_component + j];
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline const T & Vector<T, is_scal>::operator()(UInt i, UInt j) const {
AKANTU_DEBUG_ASSERT(size > 0,
"The vector \"" << id << "\" is empty");
AKANTU_DEBUG_ASSERT((i < size) && (j < nb_component),
"The value at position [" << i << "," << j
<< "] is out of range in vector \"" << id << "\"");
return values[i*nb_component + j];
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline void Vector<T, is_scal>::push_back(const T & value) {
UInt pos = size;
resizeUnitialized(size+1);
std::uninitialized_fill_n(values + pos * nb_component, nb_component, value);
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline void Vector<T, is_scal>::push_back(const T new_elem[]) {
UInt pos = size;
resizeUnitialized(size+1);
T * tmp = values + nb_component * pos;
std::uninitialized_copy(new_elem, new_elem + nb_component, tmp);
}
+/* -------------------------------------------------------------------------- */
+template <class T, bool is_scal>
+inline void Vector<T, is_scal>::push_back(const types::Vector<T> new_elem) {
+ AKANTU_DEBUG_ASSERT(nb_component == new_elem.size(),
+ "The vector as not a size compatible with the Array.");
+ UInt pos = size;
+ resizeUnitialized(size+1);
+
+ T * tmp = values + nb_component * pos;
+ std::uninitialized_copy(new_elem.storage(), new_elem.storage() + nb_component, tmp);
+}
+
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
template<class Ret>
inline void Vector<T, is_scal>::push_back(const Vector<T, is_scal>::iterator<Ret> & it) {
UInt pos = size;
resizeUnitialized(size+1);
T * tmp = values + nb_component * pos;
T * new_elem = it.data();
std::uninitialized_copy(new_elem, new_elem + nb_component, tmp);
}
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline void Vector<T, is_scal>::erase(UInt i){
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT((size > 0),
"The vector is empty");
AKANTU_DEBUG_ASSERT((i < size),
"The element at position [" << i << "] is out of range (" << i << ">=" << size << ")");
if(i != (size - 1)) {
for (UInt j = 0; j < nb_component; ++j) {
values[i*nb_component + j] = values[(size-1)*nb_component + j];
}
}
resize(size - 1);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
Vector<T, is_scal> & Vector<T, is_scal>::operator-=(const Vector<T, is_scal> & vect) {
AKANTU_DEBUG_ASSERT((size == vect.size) && (nb_component == vect.nb_component),
"The too vector don't have the same sizes");
T * a = values;
T * b = vect.values;
for (UInt i = 0; i < size*nb_component; ++i) {
*a -= *b;
++a;++b;
}
return *this;
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
Vector<T, is_scal> & Vector<T, is_scal>::operator+=(const Vector<T, is_scal> & vect) {
AKANTU_DEBUG_ASSERT((size == vect.size) && (nb_component == vect.nb_component),
"The too vector don't have the same sizes");
T * a = values;
T * b = vect.values;
for (UInt i = 0; i < size*nb_component; ++i) {
*a++ += *b++;
}
return *this;
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
Vector<T, is_scal> & Vector<T, is_scal>::operator*=(const T & alpha) {
T * a = values;
for (UInt i = 0; i < size*nb_component; ++i) {
*a++ *= alpha;
}
return *this;
}
/* -------------------------------------------------------------------------- */
/* Functions Vector<T, is_scal> */
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
Vector<T, is_scal>::Vector (UInt size,
UInt nb_component,
const ID & id) :
VectorBase(id), values(NULL) {
AKANTU_DEBUG_IN();
allocate(size, nb_component);
if(!is_scal) {
T val = T();
std::uninitialized_fill(values, values + size*nb_component, val);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
Vector<T, is_scal>::Vector (UInt size,
UInt nb_component,
const T def_values[],
const ID & id) :
VectorBase(id), values(NULL) {
AKANTU_DEBUG_IN();
allocate(size, nb_component);
T * tmp = values;
for (UInt i = 0; i < size; ++i) {
tmp = values + nb_component * i;
std::uninitialized_copy(def_values, def_values + nb_component, tmp);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
Vector<T, is_scal>::Vector (UInt size,
UInt nb_component,
const T & value,
const ID & id) :
VectorBase(id), values(NULL) {
AKANTU_DEBUG_IN();
allocate(size, nb_component);
std::uninitialized_fill_n(values, size*nb_component, value);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
Vector<T, is_scal>::Vector(const Vector<T, is_scal> & vect,
bool deep,
const ID & id) {
AKANTU_DEBUG_IN();
this->id = (id == "") ? vect.id : id;
if (deep) {
allocate(vect.size, vect.nb_component);
T * tmp = values;
std::uninitialized_copy(vect.values, vect.values + size * nb_component, tmp);
} else {
this->values = vect.values;
this->size = vect.size;
this->nb_component = vect.nb_component;
this->allocated_size = vect.allocated_size;
this->size_of_type = vect.size_of_type;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
Vector<T, is_scal>::Vector(const std::vector<T>& vect) {
AKANTU_DEBUG_IN();
this->id = "";
allocate(vect.size(), 1);
T * tmp = values;
std::uninitialized_copy(&(vect[0]), &(vect[size-1]), tmp);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
Vector<T, is_scal>::~Vector () {
AKANTU_DEBUG_IN();
AKANTU_DEBUG(dblAccessory, "Freeing "
<< allocated_size*nb_component*sizeof(T) / 1024.
<< "kB (" << id <<")");
if(values){
if(!is_scal)
for (UInt i = 0; i < size * nb_component; ++i) {
T * obj = values+i;
obj->~T();
}
free(values);
}
size = allocated_size = 0;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
void Vector<T, is_scal>::allocate(UInt size,
UInt nb_component) {
AKANTU_DEBUG_IN();
if (size == 0){
values = NULL;
} else {
values = static_cast<T*>(malloc(nb_component * size * sizeof(T)));
AKANTU_DEBUG_ASSERT(values != NULL,
"Cannot allocate "
<< nb_component * size * sizeof(T) / 1024.
<< "kB (" << id <<")");
}
if (values == NULL) {
this->size = this->allocated_size = 0;
} else {
AKANTU_DEBUG(dblAccessory, "Allocated "
<< size * nb_component * sizeof(T) / 1024.
<< "kB (" << id <<")");
this->size = this->allocated_size = size;
}
this->size_of_type = sizeof(T);
this->nb_component = nb_component;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
void Vector<T, is_scal>::resize(UInt new_size) {
UInt old_size = size;
T * old_values = values;
if(new_size < size) {
for (UInt i = new_size * nb_component; i < size * nb_component; ++i) {
T * obj = old_values+i;
obj->~T();
}
}
resizeUnitialized(new_size);
T val = T();
if(size > old_size)
std::uninitialized_fill(values + old_size*nb_component, values + size*nb_component, val);
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
void Vector<T, is_scal>::resizeUnitialized(UInt new_size) {
// AKANTU_DEBUG_IN();
// free some memory
if(new_size <= allocated_size) {
if(allocated_size - new_size > AKANTU_MIN_ALLOCATION) {
AKANTU_DEBUG(dblAccessory, "Freeing "
<< (allocated_size - size)*nb_component*sizeof(T) / 1024.
<< "kB (" << id <<")");
// Normally there are no allocation problem when reducing an array
T * tmp_ptr = static_cast<T*>(realloc(values, new_size * nb_component * sizeof(T)));
if(new_size != 0 && tmp_ptr == NULL) {
AKANTU_DEBUG_ERROR("Cannot free data (" << id << ")"
<< " [current allocated size : " << allocated_size << " | "
<< "requested size : " << new_size << "]");
}
values = tmp_ptr;
allocated_size = new_size;
}
size = new_size;
// AKANTU_DEBUG_OUT();
return;
}
// allocate more memory
UInt size_to_alloc = (new_size - allocated_size < AKANTU_MIN_ALLOCATION) ?
allocated_size + AKANTU_MIN_ALLOCATION : new_size;
T *tmp_ptr = static_cast<T*>(realloc(values, size_to_alloc * nb_component * sizeof(T)));
AKANTU_DEBUG_ASSERT(tmp_ptr != NULL,
"Cannot allocate "
<< size_to_alloc * nb_component * sizeof(T) / 1024.
<< "kB");
if (tmp_ptr == NULL) {
AKANTU_DEBUG_ERROR("Cannot allocate more data (" << id << ")"
<< " [current allocated size : " << allocated_size << " | "
<< "requested size : " << new_size << "]");
}
AKANTU_DEBUG(dblAccessory, "Allocating "
<< (size_to_alloc - allocated_size)*nb_component*sizeof(T) / 1024.
<< "kB");
allocated_size = size_to_alloc;
size = new_size;
values = tmp_ptr;
// AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
void Vector<T, is_scal>::extendComponentsInterlaced(UInt multiplicator,
UInt block_size) {
AKANTU_DEBUG_IN();
if (multiplicator == 1) return;
AKANTU_DEBUG_ASSERT(multiplicator > 1,
"invalid multiplicator");
AKANTU_DEBUG_ASSERT(nb_component%block_size == 0,
"stride must divide actual number of components");
values = static_cast<T*>(realloc(values, nb_component*multiplicator*size* sizeof(T)));
UInt new_component = nb_component/block_size * multiplicator;
for (UInt i = 0,k=size-1; i < size; ++i,--k) {
for (UInt j = 0; j < new_component; ++j) {
UInt m = new_component - j -1;
UInt n = m/multiplicator;
for (UInt l = 0,p=block_size-1; l < block_size; ++l,--p) {
values[k*nb_component*multiplicator+m*block_size+p] =
values[k*nb_component+n*block_size+p];
}
}
}
nb_component = nb_component * multiplicator;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
Int Vector<T, is_scal>::find(const T & elem) const {
AKANTU_DEBUG_IN();
UInt i = 0;
for (; (i < size) && (values[i] != elem); ++i);
AKANTU_DEBUG_OUT();
return (i == size) ? -1 : (Int) i;
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
Int Vector<T, is_scal>::find(T elem[]) const {
AKANTU_DEBUG_IN();
T * it = values;
UInt i = 0;
for (;i < size; ++i) {
if(*it == elem[0]) {
T * cit = it;
UInt c = 0;
for(; (c < nb_component) && (*cit == elem[c]); ++c, ++cit);
if(c == nb_component) {
AKANTU_DEBUG_OUT();
return i;
}
}
it += nb_component;
}
return -1;
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
void Vector<T, is_scal>::copy(const Vector<T, is_scal>& vect) {
AKANTU_DEBUG_IN();
if(AKANTU_DEBUG_TEST(dblWarning))
if(vect.nb_component != nb_component) {
AKANTU_DEBUG(dblWarning, "The two vectors do not have the same number of components");
}
// this->id = vect.id;
resize((vect.size * vect.nb_component) / nb_component);
T * tmp = values;
std::uninitialized_copy(vect.values, vect.values + size * nb_component, tmp);
// memcpy(this->values, vect.values, vect.size * vect.nb_component * sizeof(T));
AKANTU_DEBUG_OUT();
}
+/* -------------------------------------------------------------------------- */
+template<bool is_scal>
+class VectorPrintHelper {
+public:
+ template<typename T>
+ static void print_content(const Vector<T> & vect, std::ostream & stream, int indent) {
+ if(AKANTU_DEBUG_TEST(dblDump)) {
+ std::string space;
+ for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
+
+ stream << space << " + values : {";
+ for (UInt i = 0; i < vect.getSize(); ++i) {
+ stream << "{";
+ for (UInt j = 0; j < vect.getNbComponent(); ++j) {
+ stream << vect(i, j);
+ if(j != vect.getNbComponent() - 1) stream << ", ";
+ }
+ stream << "}";
+ if(i != vect.getSize() - 1) stream << ", ";
+ }
+ stream << "}" << std::endl;
+ }
+ }
+};
+
+template<>
+class VectorPrintHelper<false> {
+public:
+ template<typename T>
+ static void print_content(const Vector<T> & vect, std::ostream & stream, int indent) { }
+};
+
+
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
void Vector<T, is_scal>::printself(std::ostream & stream, int indent) const {
std::string space;
for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
Real real_size = allocated_size * nb_component * size_of_type / 1024.0;
std::streamsize prec = stream.precision();
std::ios_base::fmtflags ff = stream.flags();
stream.setf (std::ios_base::showbase);
stream.precision(2);
stream << space << "Vector<" << debug::demangle(typeid(T).name()) << "> [" << std::endl;
stream << space << " + id : " << this->id << std::endl;
stream << space << " + size : " << this->size << std::endl;
stream << space << " + nb_component : " << this->nb_component << std::endl;
stream << space << " + allocated size : " << this->allocated_size << std::endl;
stream << space << " + memory size : "
<< real_size << "kB" << std::endl;
if(!AKANTU_DEBUG_LEVEL_IS_TEST())
stream << space << " + address : " << std::hex << this->values
<< std::dec << std::endl;
stream.precision(prec);
stream.flags(ff);
- if(AKANTU_DEBUG_TEST(dblDump)) {
- stream << space << " + values : {";
- for (UInt i = 0; i < this->size; ++i) {
- stream << "{";
- for (UInt j = 0; j < this->nb_component; ++j) {
- stream << this->values[i*nb_component + j];
- if(j != this->nb_component - 1) stream << ", ";
- }
- stream << "}";
- if(i != this->size - 1) stream << ", ";
- }
- stream << "}" << std::endl;
- }
+ VectorPrintHelper<is_scal>::print_content(*this, stream, indent);
+
stream << space << "]" << std::endl;
}
-
/* -------------------------------------------------------------------------- */
/* Inline Functions VectorBase */
/* -------------------------------------------------------------------------- */
inline UInt VectorBase::getMemorySize() const {
return allocated_size * nb_component * size_of_type;
}
inline void VectorBase::empty() {
size = 0;
}
/* -------------------------------------------------------------------------- */
/* Iterators */
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
template<class R, class IR, bool is_r_scal>
class Vector<T, is_scal>::iterator_internal {
public:
typedef R value_type;
typedef R* pointer;
typedef R& reference;
typedef IR internal_value_type;
typedef IR* internal_pointer;
typedef std::ptrdiff_t difference_type;
typedef std::random_access_iterator_tag iterator_category;
public:
iterator_internal() : _offset(0), initial(NULL), ret(NULL) {};
iterator_internal(pointer_type data, UInt _offset) :
_offset(_offset),
initial(data),
ret(new value_type(data)) {
AKANTU_DEBUG_ASSERT(_offset == ret->size(),
"The iterator_internal is not compatible with the type "
<< typeid(value_type).name());
}
iterator_internal(pointer warped) : _offset(warped->size()),
initial(warped->storage()),
ret(const_cast<internal_pointer>(warped)) {
}
iterator_internal(const iterator_internal & it) {
if(this != &it) {
this->_offset = it._offset;
this->initial = it.initial;
this->ret = new internal_value_type(*it.ret);
}
}
+ iterator_internal(const Vector<T, is_scal>::iterator<IR> & it) {
+ this->_offset = it.offset();
+ this->initial = it.data();
+ this->ret = new internal_value_type(*it);
+ }
+
virtual ~iterator_internal() { delete ret; };
inline iterator_internal & operator=(const iterator_internal & it) {
if(this != &it) {
this->_offset = it._offset;
this->initial = it.initial;
if(this->ret) this->ret->shallowCopy(*it.ret);
else this->ret = new internal_value_type(*it.ret);
}
return *this;
}
+ inline iterator_internal & operator=(const iterator<IR> & it) {
+ this->_offset = it.offset();
+ this->initial = it.data();
+ if(this->ret) this->ret->shallowCopy(*it);
+ else this->ret = new internal_value_type(*it);
+ return *this;
+ }
+
inline reference operator*() { return *ret; };
+ inline const reference operator*() const { return *ret; };
inline pointer operator->() { return ret; };
inline iterator_internal & operator++() { ret->values += _offset; return *this; };
inline iterator_internal & operator--() { ret->values -= _offset; return *this; };
inline iterator_internal & operator+=(const UInt n) { ret->values += _offset * n; return *this; }
inline iterator_internal & operator-=(const UInt n) { ret->values -= _offset * n; return *this; }
inline reference operator[](const UInt n) { ret->values = initial + n*_offset; return *ret; }
+ inline const reference operator[](const UInt n) const { ret->values = initial + n*_offset; return *ret; }
inline bool operator==(const iterator_internal & other) const { return (*this).ret->storage() == other.ret->storage(); }
inline bool operator!=(const iterator_internal & other) const { return (*this).ret->storage() != other.ret->storage(); }
inline bool operator <(const iterator_internal & other) const { return (*this).ret->storage() < other.ret->storage(); }
inline bool operator<=(const iterator_internal & other) const { return (*this).ret->storage() <= other.ret->storage(); }
inline bool operator> (const iterator_internal & other) const { return (*this).ret->storage() > other.ret->storage(); }
inline bool operator>=(const iterator_internal & other) const { return (*this).ret->storage() >= other.ret->storage(); }
inline iterator_internal operator+(difference_type n) { iterator_internal tmp(*this); tmp += n; return tmp; }
inline iterator_internal operator-(difference_type n) { iterator_internal tmp(*this); tmp -= n; return tmp; }
inline difference_type operator-(const iterator_internal & b) { return ret->values - b.ret->values; }
inline pointer_type data() const { return ret->storage(); }
inline difference_type offset() const { return _offset; }
protected:
UInt _offset;
pointer_type initial;
internal_pointer ret;
};
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::iterator< types::Vector<T> > Vector<T, is_scal>::begin(UInt n) {
AKANTU_DEBUG_ASSERT(nb_component == n,
"The iterator is not compatible with the type Vector("
<< n<< ")");
return iterator< types::Vector<T> >(new types::Vector<T>(values, n));
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::iterator< types::Vector<T> > Vector<T, is_scal>::end(UInt n) {
AKANTU_DEBUG_ASSERT(nb_component == n,
"The iterator is not compatible with the type Vector("
<< n<< ")");
return iterator< types::Vector<T> >(new types::Vector<T>(values + nb_component * size,
n));
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::const_iterator< types::Vector<T> > Vector<T, is_scal>::begin(UInt n) const {
AKANTU_DEBUG_ASSERT(nb_component == n,
"The iterator is not compatible with the type Vector("
<< n<< ")");
return const_iterator< types::Vector<T> >(new types::Vector<T>(values, n));
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::const_iterator< types::Vector<T> > Vector<T, is_scal>::end(UInt n) const {
AKANTU_DEBUG_ASSERT(nb_component == n,
"The iterator is not compatible with the type Vector("
<< n<< ")");
return const_iterator< types::Vector<T> >(new types::Vector<T>(values + nb_component * size,
n));
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::iterator< types::Vector<T> >
Vector<T, is_scal>::begin_reinterpret(UInt n, __attribute__((unused)) UInt size) {
AKANTU_DEBUG_ASSERT(n * size == this->nb_component * this->size,
"The new values for size (" << size
<< ") and nb_component (" << n <<
") are not compatible with the one of this vector");
return iterator< types::Vector<T> >(new types::Vector<T>(values, n));
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::iterator< types::Vector<T> >
Vector<T, is_scal>::end_reinterpret(UInt n, UInt size) {
AKANTU_DEBUG_ASSERT(n * size == this->nb_component * this->size,
"The new values for size (" << size
<< ") and nb_component (" << n <<
") are not compatible with the one of this vector");
return iterator< types::Vector<T> >(new types::Vector<T>(values + n * size, n));
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::const_iterator< types::Vector<T> >
Vector<T, is_scal>::begin_reinterpret(UInt n, __attribute__((unused)) UInt size) const {
AKANTU_DEBUG_ASSERT(n * size == this->nb_component * this->size,
"The new values for size (" << size
<< ") and nb_component (" << n <<
") are not compatible with the one of this vector");
return const_iterator< types::Vector<T> >(new types::Vector<T>(values, n));
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::const_iterator< types::Vector<T> >
Vector<T, is_scal>::end_reinterpret(UInt n, UInt size) const {
AKANTU_DEBUG_ASSERT(n * size == this->nb_component * this->size,
"The new values for size (" << size
<< ") and nb_component (" << n <<
") are not compatible with the one of this vector");
return const_iterator< types::Vector<T> >(new types::Vector<T>(values + n * size, n));
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::iterator< types::Matrix<T> > Vector<T, is_scal>::begin(UInt m, UInt n) {
AKANTU_DEBUG_ASSERT(nb_component == n*m,
"The iterator is not compatible with the type Matrix("
<< m << "," << n<< ")");
return iterator< types::Matrix<T> >(new types::Matrix<T>(values, m, n));
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::iterator< types::Matrix<T> > Vector<T, is_scal>::end(UInt m, UInt n) {
AKANTU_DEBUG_ASSERT(nb_component == n*m,
"The iterator is not compatible with the type Matrix("
<< m << "," << n<< ")");
return iterator< types::Matrix<T> >(new types::Matrix<T>(values + nb_component * size, m, n));
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::const_iterator< types::Matrix<T> > Vector<T, is_scal>::begin(UInt m, UInt n) const {
AKANTU_DEBUG_ASSERT(nb_component == n*m,
"The iterator is not compatible with the type Matrix("
<< m << "," << n<< ")");
return const_iterator< types::Matrix<T> >(new types::Matrix<T>(values, m, n));
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::const_iterator< types::Matrix<T> > Vector<T, is_scal>::end(UInt m, UInt n) const {
AKANTU_DEBUG_ASSERT(nb_component == n*m,
"The iterator is not compatible with the type Matrix("
<< m << "," << n<< ")");
return const_iterator< types::Matrix<T> >(new types::Matrix<T>(values + nb_component * size, m, n));
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::iterator< types::Matrix<T> >
Vector<T, is_scal>::begin_reinterpret(UInt m, UInt n, __attribute__((unused)) UInt size) {
AKANTU_DEBUG_ASSERT(n * m * size == this->nb_component * this->size,
"The new values for size (" << size
<< ") and nb_component (" << n * m <<
") are not compatible with the one of this vector");
return iterator< types::Matrix<T> >(new types::Matrix<T>(values, m, n));
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::iterator< types::Matrix<T> >
Vector<T, is_scal>::end_reinterpret(UInt m, UInt n, UInt size) {
AKANTU_DEBUG_ASSERT(n * m * size == this->nb_component * this->size,
"The new values for size (" << size
<< ") and nb_component (" << n * m <<
") are not compatible with the one of this vector");
return iterator< types::Matrix<T> >(new types::Matrix<T>(values + n * m * size, m, n));
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::const_iterator< types::Matrix<T> >
Vector<T, is_scal>::begin_reinterpret(UInt m, UInt n, __attribute__((unused)) UInt size) const {
AKANTU_DEBUG_ASSERT(n * m * size == this->nb_component * this->size,
"The new values for size (" << size
<< ") and nb_component (" << n * m <<
") are not compatible with the one of this vector");
return const_iterator< types::Matrix<T> >(new types::Matrix<T>(values, m, n));
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::const_iterator< types::Matrix<T> >
Vector<T, is_scal>::end_reinterpret(UInt m, UInt n, UInt size) const {
AKANTU_DEBUG_ASSERT(n * m * size == this->nb_component * this->size,
"The new values for size (" << size
<< ") and nb_component (" << n * m <<
") are not compatible with the one of this vector");
return const_iterator< types::Matrix<T> >(new types::Matrix<T>(values + n * m * size, m, n));
}
/* -------------------------------------------------------------------------- */
/**
* Specialization for scalar types
*/
template <class T, bool is_scal>
template <class R, class IR>
class Vector<T, is_scal>::iterator_internal<R, IR, true> {
public:
typedef R value_type;
typedef R* pointer;
typedef R& reference;
typedef IR internal_value_type;
typedef IR* internal_pointer;
typedef std::ptrdiff_t difference_type;
typedef std::random_access_iterator_tag iterator_category;
public:
iterator_internal(pointer data = NULL, __attribute__ ((unused)) UInt _offset = 1) : _offset(_offset), ret(data), initial(data) { };
iterator_internal(const iterator_internal & it) {
if(this != &it) { this->ret = it.ret; this->initial = it.initial; }
}
+ iterator_internal(const Vector<T, is_scal>::iterator<IR> & it) {
+ this->ret = it.data(); this->initial = it.data();
+ }
virtual ~iterator_internal() { };
inline iterator_internal & operator=(const iterator_internal & it)
{ if(this != &it) { this->ret = it.ret; this->initial = it.initial; } return *this; }
+ inline iterator_internal & operator=(const Vector<T, is_scal>::iterator<IR> & it)
+ { if(this != &it) { this->ret = it.data(); this->initial = it.data(); } return *this; }
+
inline reference operator*() { return *ret; };
+ inline const reference operator*() const { return *ret; };
inline pointer operator->() { return ret; };
inline iterator_internal & operator++() { ++ret; return *this; };
inline iterator_internal & operator--() { --ret; return *this; };
inline iterator_internal & operator+=(const UInt n) { ret += n; return *this; }
inline iterator_internal & operator-=(const UInt n) { ret -= n; return *this; }
inline reference operator[](const UInt n) { ret = initial + n; return *ret; }
inline bool operator==(const iterator_internal & other) const { return ret == other.ret; }
inline bool operator!=(const iterator_internal & other) const { return ret != other.ret; }
inline bool operator< (const iterator_internal & other) const { return ret < other.ret; }
inline bool operator<=(const iterator_internal & other) const { return ret <= other.ret; }
inline bool operator> (const iterator_internal & other) const { return ret > other.ret; }
inline bool operator>=(const iterator_internal & other) const { return ret >= other.ret; }
inline iterator_internal operator-(difference_type n) { return iterator_internal(ret - n); }
inline iterator_internal operator+(difference_type n) { return iterator_internal(ret + n); }
inline difference_type operator-(const iterator_internal & b) { return ret - b.ret; }
inline pointer data() const { return ret; }
inline difference_type offset() const { return _offset; }
protected:
difference_type _offset;
pointer ret;
pointer initial;
};
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
template<typename R>
inline void Vector<T, is_scal>::erase(const iterator<R> & it) {
T * curr = it.getCurrentStorage();
UInt pos = (curr - values) / nb_component;
erase(pos);
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::iterator<T> Vector<T, is_scal>::begin() {
AKANTU_DEBUG_ASSERT(nb_component == 1, "this iterator cannot be used on a vector which has nb_component != 1");
return iterator<T>(values);
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::iterator<T> Vector<T, is_scal>::end() {
AKANTU_DEBUG_ASSERT(nb_component == 1, "this iterator cannot be used on a vector which has nb_component != 1");
return iterator<T>(values + size);
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::const_iterator<T> Vector<T, is_scal>::begin() const {
AKANTU_DEBUG_ASSERT(nb_component == 1, "this iterator cannot be used on a vector which has nb_component != 1");
return const_iterator<T>(values);
}
/* -------------------------------------------------------------------------- */
template <class T, bool is_scal>
inline Vector<T, is_scal>::const_iterator<T> Vector<T, is_scal>::end() const {
AKANTU_DEBUG_ASSERT(nb_component == 1, "this iterator cannot be used on a vector which has nb_component != 1");
return const_iterator<T>(values + size);
}
diff --git a/src/fem/by_element_type.hh b/src/fem/by_element_type.hh
index 9a956786a..0219dbb74 100644
--- a/src/fem/by_element_type.hh
+++ b/src/fem/by_element_type.hh
@@ -1,188 +1,190 @@
/**
* @file by_element_type.hh
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Wed Aug 31 11:09:48 2011
*
* @brief storage class by element type
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_BY_ELEMENT_TYPE_HH__
#define __AKANTU_BY_ELEMENT_TYPE_HH__
#include "aka_common.hh"
#include "aka_vector.hh"
#include "aka_memory.hh"
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
/* ByElementType */
/* -------------------------------------------------------------------------- */
-template<class Stored> class ByElementType {
-protected:
- typedef std::map<ElementType, Stored> DataMap;
+template<class Stored, typename SupportType = ElementType>
+class ByElementType {
public:
ByElementType(const ID & id = "by_element_type",
const ID & parent_id = "");
~ByElementType();
- inline static std::string printType(const ElementType & type, const GhostType & ghost_type);
+ inline static std::string printType(const SupportType & type, const GhostType & ghost_type);
- inline bool exists(ElementType type, GhostType ghost_type = _not_ghost) const;
+ inline bool exists(const SupportType & type, const GhostType & ghost_type = _not_ghost) const;
- inline const Stored & operator()(const ElementType & type,
+ inline const Stored & operator()(const SupportType & type,
const GhostType & ghost_type = _not_ghost) const;
- inline Stored & operator()(const ElementType & type,
+ inline Stored & operator()(const SupportType & type,
const GhostType & ghost_type = _not_ghost);
inline Stored & operator()(const Stored & insert,
- const ElementType & type,
+ const SupportType & type,
const GhostType & ghost_type = _not_ghost);
- void printself(std::ostream & stream, int indent = 0) const;
+ virtual void printself(std::ostream & stream, int indent = 0) const;
/* ------------------------------------------------------------------------ */
/* Element type Iterator */
/* ------------------------------------------------------------------------ */
- class type_iterator : private std::iterator<std::forward_iterator_tag, const ElementType> {
+ typedef std::map<SupportType, Stored> DataMap;
+ class type_iterator : private std::iterator<std::forward_iterator_tag, const SupportType> {
public:
- typedef const ElementType value_type;
- typedef const ElementType* pointer;
- typedef const ElementType& reference;
+ typedef const SupportType value_type;
+ typedef const SupportType* pointer;
+ typedef const SupportType& reference;
protected:
typedef typename ByElementType<Stored>::DataMap::const_iterator DataMapIterator;
public:
type_iterator(DataMapIterator & list_begin,
DataMapIterator & list_end,
UInt dim,
ElementKind ek);
type_iterator(const type_iterator & it);
inline reference operator*();
inline reference operator*() const;
inline type_iterator & operator++();
type_iterator operator++(int);
inline bool operator==(const type_iterator & other) const;
inline bool operator!=(const type_iterator & other) const;
private:
DataMapIterator list_begin;
DataMapIterator list_end;
UInt dim;
ElementKind kind;
};
inline type_iterator firstType(UInt dim = 0,
GhostType ghost_type = _not_ghost,
ElementKind kind = _ek_not_defined) const;
inline type_iterator lastType(UInt dim = 0,
GhostType ghost_type = _not_ghost,
ElementKind kind = _ek_not_defined) const;
inline void setID(const ID & id) { this->id = id; }
protected:
inline DataMap & getData(GhostType ghost_type);
inline const DataMap & getData(GhostType ghost_type) const;
public:
AKANTU_GET_MACRO(ID, id, ID);
/* -------------------------------------------------------------------------- */
protected:
ID id;
DataMap data;
DataMap ghost_data;
};
/* -------------------------------------------------------------------------- */
/* Some typedefs */
/* -------------------------------------------------------------------------- */
-
-template <typename T>
-class ByElementTypeVector : public ByElementType<Vector<T> *>, protected Memory {
+template <typename T, typename SupportType = ElementType>
+class ByElementTypeVector : public ByElementType<Vector<T> *, SupportType>, protected Memory {
protected:
- typedef typename ByElementType<Vector<T> *>::DataMap DataMap;
+ typedef typename ByElementType<Vector<T> *, SupportType>::DataMap DataMap;
public:
+ typedef typename ByElementType<Vector<T> *, SupportType>::type_iterator type_iterator;
+
ByElementTypeVector() {};
// ByElementTypeVector(const ID & id = "by_element_type_vector",
// const MemoryID & memory_id = 0) :
// ByElementType<Vector<T> *>(id, memory_id) {};
ByElementTypeVector(const ID & id, const ID & parent_id,
const MemoryID & memory_id = 0) :
- ByElementType<Vector<T> *>(id, parent_id), Memory(memory_id) {};
+ ByElementType<Vector<T> *, SupportType>(id, parent_id), Memory(memory_id) {};
inline Vector<T> & alloc(UInt size,
UInt nb_component,
- const ElementType & type,
+ const SupportType & type,
const GhostType & ghost_type);
inline void alloc(UInt size,
UInt nb_component,
- const ElementType & type);
+ const SupportType & type);
- inline const Vector<T> & operator()(const ElementType & type,
+ inline const Vector<T> & operator()(const SupportType & type,
const GhostType & ghost_type = _not_ghost) const;
- inline Vector<T> & operator()(const ElementType & type,
+ inline Vector<T> & operator()(const SupportType & type,
const GhostType & ghost_type = _not_ghost);
- inline void setVector(const ElementType & type,
+ inline void setVector(const SupportType & type,
const GhostType & ghost_type,
const Vector<T> & vect);
inline void free();
inline void onElementsRemoved(const ByElementTypeVector<UInt> & new_numbering);
+ virtual void printself(std::ostream & stream, int indent = 0) const;
};
/// to store data Vector<Real> by element type
typedef ByElementTypeVector<Real> ByElementTypeReal;
/// to store data Vector<Int> by element type
typedef ByElementTypeVector<Int> ByElementTypeInt;
/// to store data Vector<UInt> by element type
-typedef ByElementTypeVector<UInt> ByElementTypeUInt;
+typedef ByElementTypeVector<UInt, ElementType> ByElementTypeUInt;
/// Map of data of type UInt stored in a mesh
typedef std::map<std::string, Vector<UInt> *> UIntDataMap;
-typedef ByElementType<UIntDataMap> ByElementTypeUIntDataMap;
+typedef ByElementType<UIntDataMap, ElementType> ByElementTypeUIntDataMap;
// /* -------------------------------------------------------------------------- */
// /* inline functions */
// /* -------------------------------------------------------------------------- */
// #if defined (AKANTU_INCLUDE_INLINE_IMPL)
// # include "by_element_type_inline_impl.cc"
// #endif
__END_AKANTU__
#endif /* __AKANTU_BY_ELEMENT_TYPE_HH__ */
diff --git a/src/fem/by_element_type_tmpl.hh b/src/fem/by_element_type_tmpl.hh
index 9dbc8b093..ac1855987 100644
--- a/src/fem/by_element_type_tmpl.hh
+++ b/src/fem/by_element_type_tmpl.hh
@@ -1,408 +1,444 @@
/**
* @file by_element_type_tmpl.hh
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Wed Aug 31 11:09:48 2011
*
* @brief implementation of template functions of the ByElementType and
* ByElementTypeVector classes
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
/* ByElementType */
/* -------------------------------------------------------------------------- */
-
-/* -------------------------------------------------------------------------- */
-template<class Stored>
-inline std::string ByElementType<Stored>::printType(const ElementType & type,
+template<class Stored, typename SupportType>
+inline std::string ByElementType<Stored, SupportType>::printType(const SupportType & type,
const GhostType & ghost_type) {
std::stringstream sstr; sstr << "(" << ghost_type << ":" << type << ")";
return sstr.str();
}
/* -------------------------------------------------------------------------- */
-template<class Stored>
-inline bool ByElementType<Stored>::exists(ElementType type, GhostType ghost_type) const {
+template<class Stored, typename SupportType>
+inline bool ByElementType<Stored, SupportType>::exists(const SupportType & type, const GhostType & ghost_type) const {
return this->getData(ghost_type).find(type) != this->getData(ghost_type).end();
}
/* -------------------------------------------------------------------------- */
-template<class Stored>
-inline const Stored & ByElementType<Stored>::operator()(const ElementType & type,
+template<class Stored, typename SupportType>
+inline const Stored & ByElementType<Stored, SupportType>::operator()(const SupportType & type,
const GhostType & ghost_type) const {
typename DataMap::const_iterator it =
this->getData(ghost_type).find(type);
if(it == this->getData(ghost_type).end())
AKANTU_EXCEPTION("No element of type "
- << ByElementType<Stored>::printType(type, ghost_type)
+ << ByElementType::printType(type, ghost_type)
<< " in this ByElementType<"
<< debug::demangle(typeid(Stored).name()) << "> class");
return it->second;
}
/* -------------------------------------------------------------------------- */
-template<class Stored>
-inline Stored & ByElementType<Stored>::operator()(const ElementType & type,
- const GhostType & ghost_type) {
+template<class Stored, typename SupportType>
+inline Stored & ByElementType<Stored, SupportType>::operator()(const SupportType & type,
+ const GhostType & ghost_type) {
typename DataMap::iterator it =
this->getData(ghost_type).find(type);
// if(it == this->getData(ghost_type).end())
// AKANTU_EXCEPTION("No element of type "
- // << ByElementType<Stored>::printType(type, ghost_type)
+ // << ByElementType<Stored, SupportType>::printType(type, ghost_type)
// << " in this ByElementType<"
// << debug::demangle(typeid(Stored).name()) << "> class");
if(it == this->getData(ghost_type).end()) {
DataMap & data = this->getData(ghost_type);
const std::pair<typename DataMap::iterator, bool> & res =
data.insert(std::pair<ElementType, Stored>(type, Stored()));
it = res.first;
}
return it->second;
}
/* -------------------------------------------------------------------------- */
-template<class Stored>
-inline Stored & ByElementType<Stored>::operator()(const Stored & insert,
- const ElementType & type,
+template<class Stored, typename SupportType>
+inline Stored & ByElementType<Stored, SupportType>::operator()(const Stored & insert,
+ const SupportType & type,
const GhostType & ghost_type) {
typename DataMap::iterator it =
this->getData(ghost_type).find(type);
if(it != this->getData(ghost_type).end()) {
AKANTU_EXCEPTION("Element of type "
- << ByElementType<Stored>::printType(type, ghost_type)
+ << ByElementType::printType(type, ghost_type)
<< " already in this ByElementType<"
<< debug::demangle(typeid(Stored).name()) << "> class");
} else {
DataMap & data = this->getData(ghost_type);
const std::pair<typename DataMap::iterator, bool> & res =
data.insert(std::pair<ElementType, Stored>(type, insert));
it = res.first;
}
return it->second;
}
/* -------------------------------------------------------------------------- */
-template<class Stored>
-inline typename ByElementType<Stored>::DataMap &
-ByElementType<Stored>::getData(GhostType ghost_type) {
+template<class Stored, typename SupportType>
+inline typename ByElementType<Stored, SupportType>::DataMap &
+ByElementType<Stored, SupportType>::getData(GhostType ghost_type) {
if(ghost_type == _not_ghost) return data;
else return ghost_data;
}
/* -------------------------------------------------------------------------- */
-template<class Stored>
-inline const typename ByElementType<Stored>::DataMap &
-ByElementType<Stored>::getData(GhostType ghost_type) const {
+template<class Stored, typename SupportType>
+inline const typename ByElementType<Stored, SupportType>::DataMap &
+ByElementType<Stored, SupportType>::getData(GhostType ghost_type) const {
if(ghost_type == _not_ghost) return data;
else return ghost_data;
}
/* -------------------------------------------------------------------------- */
/// Works only if stored is a pointer to a class with a printself method
-template<class Stored>
-void ByElementType<Stored>::printself(std::ostream & stream, int indent) const {
+template<class Stored, typename SupportType>
+void ByElementType<Stored, SupportType>::printself(std::ostream & stream, int indent) const {
std::string space;
for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
stream << space << "ByElementType<" << debug::demangle(typeid(Stored).name()) << "> [" << std::endl;
for(UInt g = _not_ghost; g <= _ghost; ++g) {
GhostType gt = (GhostType) g;
const DataMap & data = getData(gt);
typename DataMap::const_iterator it;
for(it = data.begin(); it != data.end(); ++it) {
- stream << space << space << ByElementType<Stored>::printType(it->first, gt) << " [" << std::endl;
- it->second->printself(stream, indent + 3);
+ stream << space << space << ByElementType::printType(it->first, gt) << std::endl;
}
}
stream << space << "]" << std::endl;
}
/* -------------------------------------------------------------------------- */
-template<class Stored>
-ByElementType<Stored>::ByElementType(const ID & id,
+template<class Stored, typename SupportType>
+ByElementType<Stored, SupportType>::ByElementType(const ID & id,
const ID & parent_id) {
AKANTU_DEBUG_IN();
std::stringstream sstr;
if(parent_id != "") sstr << parent_id << ":";
sstr << id;
this->id = sstr.str();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-template<class Stored>
-ByElementType<Stored>::~ByElementType() {
+template<class Stored, typename SupportType>
+ByElementType<Stored, SupportType>::~ByElementType() {
}
/* -------------------------------------------------------------------------- */
-template <typename T>
-inline Vector<T> & ByElementTypeVector<T>::alloc(UInt size,
+/* ByElementTypeVector */
+/* -------------------------------------------------------------------------- */
+template <typename T, typename SupportType>
+inline Vector<T> & ByElementTypeVector<T, SupportType>::alloc(UInt size,
UInt nb_component,
- const ElementType & type,
+ const SupportType & type,
const GhostType & ghost_type) {
std::string ghost_id = "";
if (ghost_type == _ghost) ghost_id = ":ghost";
Vector<T> * tmp;
- typename ByElementTypeVector<T>::DataMap::iterator it =
+ typename ByElementTypeVector<T, SupportType>::DataMap::iterator it =
this->getData(ghost_type).find(type);
if(it == this->getData(ghost_type).end()) {
std::stringstream sstr; sstr << this->id << ":" << type << ghost_id;
tmp = &(Memory::alloc<T>(sstr.str(), size,
nb_component, T()));
std::stringstream sstrg; sstrg << ghost_type;
tmp->setTag(sstrg.str());
this->getData(ghost_type)[type] = tmp;
} else {
AKANTU_DEBUG_INFO("The vector " << this->id << this->printType(type, ghost_type)
<< " already exists, it is resized instead of allocated.");
tmp = it->second;
it->second->resize(size);
}
return *tmp;
}
/* -------------------------------------------------------------------------- */
-template <typename T>
-inline void ByElementTypeVector<T>::alloc(UInt size,
+template <typename T, typename SupportType>
+inline void ByElementTypeVector<T, SupportType>::alloc(UInt size,
UInt nb_component,
- const ElementType & type) {
+ const SupportType & type) {
this->alloc(size, nb_component, type, _not_ghost);
this->alloc(size, nb_component, type, _ghost);
}
/* -------------------------------------------------------------------------- */
-template <typename T>
-inline void ByElementTypeVector<T>::free() {
+template <typename T, typename SupportType>
+inline void ByElementTypeVector<T, SupportType>::free() {
AKANTU_DEBUG_IN();
for(UInt g = _not_ghost; g <= _ghost; ++g) {
GhostType gt = (GhostType) g;
const DataMap & data = this->getData(gt);
typename DataMap::const_iterator it;
for(it = data.begin(); it != data.end(); ++it) {
dealloc(it->second->getID());
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-template <typename T>
-inline const Vector<T> & ByElementTypeVector<T>::operator()(const ElementType & type,
+template <typename T, typename SupportType>
+inline const Vector<T> & ByElementTypeVector<T, SupportType>::operator()(const SupportType & type,
const GhostType & ghost_type) const {
- typename ByElementTypeVector<T>::DataMap::const_iterator it =
+ typename ByElementTypeVector<T, SupportType>::DataMap::const_iterator it =
this->getData(ghost_type).find(type);
if(it == this->getData(ghost_type).end())
AKANTU_EXCEPTION("No element of type "
- << ByElementTypeVector<T>::printType(type, ghost_type)
+ << ByElementTypeVector::printType(type, ghost_type)
<< " in this const ByElementTypeVector<"
<< debug::demangle(typeid(T).name()) << "> class(\""
<< this->id << "\")");
return *(it->second);
}
/* -------------------------------------------------------------------------- */
-template <typename T>
-inline Vector<T> & ByElementTypeVector<T>::operator()(const ElementType & type,
+template <typename T, typename SupportType>
+inline Vector<T> & ByElementTypeVector<T, SupportType>::operator()(const SupportType & type,
const GhostType & ghost_type) {
- typename ByElementTypeVector<T>::DataMap::iterator it =
+ typename ByElementTypeVector<T, SupportType>::DataMap::iterator it =
this->getData(ghost_type).find(type);
if(it == this->getData(ghost_type).end())
AKANTU_EXCEPTION("No element of type "
- << ByElementTypeVector<T>::printType(type, ghost_type)
+ << ByElementTypeVector::printType(type, ghost_type)
<< " in this ByElementTypeVector<"
<< debug::demangle(typeid(T).name()) << "> class (\""
<< this->id << "\")");
return *(it->second);
}
/* -------------------------------------------------------------------------- */
-template <typename T>
-inline void ByElementTypeVector<T>::setVector(const ElementType & type,
+template <typename T, typename SupportType>
+inline void ByElementTypeVector<T, SupportType>::setVector(const SupportType & type,
const GhostType & ghost_type,
const Vector<T> & vect) {
- typename ByElementTypeVector<T>::DataMap::iterator it =
+ typename ByElementTypeVector<T, SupportType>::DataMap::iterator it =
this->getData(ghost_type).find(type);
if(AKANTU_DEBUG_TEST(dblWarning) && it != this->getData(ghost_type).end() && it->second != &vect) {
AKANTU_DEBUG_WARNING("The Vector " << this->printType(type, ghost_type)
<< " is already registred, this call can lead to a memory leak.");
}
this->getData(ghost_type)[type] = &(const_cast<Vector<T> &>(vect));
}
/* -------------------------------------------------------------------------- */
-template <typename T>
-inline void ByElementTypeVector<T>::onElementsRemoved(const ByElementTypeVector<UInt> & new_numbering) {
+template <typename T, typename SupportType>
+inline void ByElementTypeVector<T, SupportType>::onElementsRemoved(const ByElementTypeVector<UInt> & new_numbering) {
for(UInt g = _not_ghost; g <= _ghost; ++g) {
GhostType gt = (GhostType) g;
ByElementTypeVector<UInt>::type_iterator it = new_numbering.firstType(0, gt, _ek_not_defined);
ByElementTypeVector<UInt>::type_iterator end = new_numbering.lastType(0, gt, _ek_not_defined);
for (; it != end; ++it) {
- ElementType type = *it;
+ SupportType type = *it;
if(this->exists(type, gt)){
const Vector<UInt> & renumbering = new_numbering(type, gt);
Vector<T> & vect = this->operator()(type, gt);
UInt nb_component = vect.getNbComponent();
Vector<T> tmp(renumbering.getSize(), nb_component);
UInt new_size = 0;
for (UInt i = 0; i < vect.getSize(); ++i) {
UInt new_i = renumbering(i);
if(new_i != UInt(-1)) {
memcpy(tmp.storage() + new_i * nb_component,
vect.storage() + i *nb_component,
nb_component * sizeof(T));
++new_size;
}
}
tmp.resize(new_size);
vect.copy(tmp);
}
}
}
}
+/* -------------------------------------------------------------------------- */
+template<typename T, typename SupportType>
+void ByElementTypeVector<T, SupportType>::printself(std::ostream & stream, int indent) const {
+ std::string space;
+ for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
+
+ stream << space << "ByElementTypeVector<" << debug::demangle(typeid(T).name()) << "> [" << std::endl;
+ for(UInt g = _not_ghost; g <= _ghost; ++g) {
+ GhostType gt = (GhostType) g;
+
+ const DataMap & data = this->getData(gt);
+ typename DataMap::const_iterator it;
+ for(it = data.begin(); it != data.end(); ++it) {
+ stream << space << space << ByElementTypeVector::printType(it->first, gt) << " [" << std::endl;
+ it->second->printself(stream, indent + 3);
+ stream << space << space << " ]" << std::endl;
+ }
+ }
+ stream << space << "]" << std::endl;
+}
+
/* -------------------------------------------------------------------------- */
-/* ElementType Iterator */
+/* SupportType Iterator */
/* -------------------------------------------------------------------------- */
-
-template <class Stored>
-ByElementType<Stored>::type_iterator::type_iterator(DataMapIterator & list_begin,
+template <class Stored, typename SupportType>
+ByElementType<Stored, SupportType>::type_iterator::type_iterator(DataMapIterator & list_begin,
DataMapIterator & list_end,
UInt dim, ElementKind ek) :
list_begin(list_begin), list_end(list_end), dim(dim), kind(ek) {
}
/* -------------------------------------------------------------------------- */
-template <class Stored>
-ByElementType<Stored>::type_iterator::type_iterator(const type_iterator & it) :
+template <class Stored, typename SupportType>
+ByElementType<Stored, SupportType>::type_iterator::type_iterator(const type_iterator & it) :
list_begin(it.list_begin), list_end(it.list_end), dim(it.dim), kind(it.kind) {
}
/* -------------------------------------------------------------------------- */
-template <class Stored>
-inline typename ByElementType<Stored>::type_iterator::reference
-ByElementType<Stored>::type_iterator::operator*() {
+template <class Stored, typename SupportType>
+inline typename ByElementType<Stored, SupportType>::type_iterator::reference
+ByElementType<Stored, SupportType>::type_iterator::operator*() {
return list_begin->first;
}
/* -------------------------------------------------------------------------- */
-template <class Stored>
-inline typename ByElementType<Stored>::type_iterator::reference
-ByElementType<Stored>::type_iterator::operator*() const {
+template <class Stored, typename SupportType>
+inline typename ByElementType<Stored, SupportType>::type_iterator::reference
+ByElementType<Stored, SupportType>::type_iterator::operator*() const {
return list_begin->first;
}
/* -------------------------------------------------------------------------- */
-template <class Stored>
-inline typename ByElementType<Stored>::type_iterator &
-ByElementType<Stored>::type_iterator::operator++() {
+// template <class Stored, typename SupportType>
+// inline typename ByElementType<Stored, SupportType>::type_iterator &
+// ByElementType<Stored, SupportType>::type_iterator::operator++() {
+// ++list_begin;
+// while((list_begin != list_end) &&
+// (((dim != 0) && (dim != Mesh::getSpatialDimension(list_begin->first))))
+// )
+// ++list_begin;
+// return *this;
+// }
+
+// /* -------------------------------------------------------------------------- */
+// template <class Stored>
+// inline typename ByElementType<Stored, ElementType>::type_iterator &
+// ByElementType<Stored, ElementType>::type_iterator::operator++() {
+template <class Stored, typename SupportType>
+inline typename ByElementType<Stored, SupportType>::type_iterator &
+ByElementType<Stored, SupportType>::type_iterator::operator++() {
++list_begin;
while((list_begin != list_end) &&
(((dim != 0) && (dim != Mesh::getSpatialDimension(list_begin->first))) ||
- ((kind != _ek_not_defined) && (kind != Mesh::getKind(list_begin->first)))))
+ ((kind != _ek_not_defined) && (kind != Mesh::getKind(list_begin->first)))
+ )
+ )
++list_begin;
return *this;
}
/* -------------------------------------------------------------------------- */
-template <class Stored>
-typename ByElementType<Stored>::type_iterator ByElementType<Stored>::type_iterator::operator++(int) {
+template <class Stored, typename SupportType>
+typename ByElementType<Stored, SupportType>::type_iterator ByElementType<Stored, SupportType>::type_iterator::operator++(int) {
type_iterator tmp(*this);
operator++();
return tmp;
}
/* -------------------------------------------------------------------------- */
-template <class Stored>
-inline bool ByElementType<Stored>::type_iterator::operator==(const type_iterator & other) const {
+template <class Stored, typename SupportType>
+inline bool ByElementType<Stored, SupportType>::type_iterator::operator==(const type_iterator & other) const {
return this->list_begin == other.list_begin;
}
/* -------------------------------------------------------------------------- */
-template <class Stored>
-inline bool ByElementType<Stored>::type_iterator::operator!=(const type_iterator & other) const {
+template <class Stored, typename SupportType>
+inline bool ByElementType<Stored, SupportType>::type_iterator::operator!=(const type_iterator & other) const {
return this->list_begin != other.list_begin;
}
/* -------------------------------------------------------------------------- */
-template <class Stored>
-inline typename ByElementType<Stored>::type_iterator
-ByElementType<Stored>::firstType(UInt dim, GhostType ghost_type, ElementKind kind) const {
+template <class Stored, typename SupportType>
+inline typename ByElementType<Stored, SupportType>::type_iterator
+ByElementType<Stored, SupportType>::firstType(UInt dim, GhostType ghost_type, ElementKind kind) const {
typename DataMap::const_iterator b,e;
if(ghost_type == _not_ghost) {
b = data.begin();
e = data.end();
} else {
b = ghost_data.begin();
e = ghost_data.end();
}
// loop until the first valid type
while((b != e) &&
(((dim != 0) && (dim != Mesh::getSpatialDimension(b->first))) ||
((kind != _ek_not_defined) && (kind != Mesh::getKind(b->first)))))
++b;
- return typename ByElementType<Stored>::type_iterator(b, e, dim, kind);
+ return typename ByElementType<Stored, SupportType>::type_iterator(b, e, dim, kind);
}
/* -------------------------------------------------------------------------- */
-template <class Stored>
-inline typename ByElementType<Stored>::type_iterator
-ByElementType<Stored>::lastType(UInt dim, GhostType ghost_type, ElementKind kind) const {
+template <class Stored, typename SupportType>
+inline typename ByElementType<Stored, SupportType>::type_iterator
+ByElementType<Stored, SupportType>::lastType(UInt dim, GhostType ghost_type, ElementKind kind) const {
typename DataMap::const_iterator e;
if(ghost_type == _not_ghost) {
e = data.end();
} else {
e = ghost_data.end();
}
- return typename ByElementType<Stored>::type_iterator(e, e, dim, kind);
+ return typename ByElementType<Stored, SupportType>::type_iterator(e, e, dim, kind);
}
diff --git a/src/fem/cohesive_element.cc b/src/fem/cohesive_element.cc
index c06e5bebc..41ae53813 100644
--- a/src/fem/cohesive_element.cc
+++ b/src/fem/cohesive_element.cc
@@ -1,61 +1,61 @@
/**
* @file cohesive_element.cc
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Feb 03 16:28:03 2012
*
* @brief CohesiveElement implementation
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "cohesive_element.hh"
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
-/* 2D cohesive elements */
-/* -------------------------------------------------------------------------- */
-template<> ElementType ElementClass<_cohesive_2d_4>::p1_element_type = _cohesive_2d_4;
-template<> UInt CohesiveElement<_cohesive_2d_4>::vec_facet_connectivity[]= {0, 1,
- 2, 3};
-template<> UInt * CohesiveElement<_cohesive_2d_4>::facet_connectivity[] = {&vec_facet_connectivity[0],
- &vec_facet_connectivity[2]};
-
-/* -------------------------------------------------------------------------- */
-template<> ElementType ElementClass<_cohesive_2d_6>::p1_element_type = _cohesive_2d_4;
-template<> UInt CohesiveElement<_cohesive_2d_6>::vec_facet_connectivity[]= {0, 1, 2,
- 3, 4, 5};
-template<> UInt * CohesiveElement<_cohesive_2d_6>::facet_connectivity[] = {&vec_facet_connectivity[0],
- &vec_facet_connectivity[3]};
-/* -------------------------------------------------------------------------- */
-
+template<> UInt GeometricalElement<_gt_cohesive_2d_4>::spatial_dimension = 2;
+template<> UInt GeometricalElement<_gt_cohesive_2d_4>::nb_nodes_per_element = 4;
+template<> UInt GeometricalElement<_gt_cohesive_2d_4>::nb_facets = 2;
+template<> UInt GeometricalElement<_gt_cohesive_2d_4>::nb_nodes_per_facet = 2;
+template<> UInt GeometricalElement<_gt_cohesive_2d_4>::facet_connectivity[] = {0, 2,
+ 1, 3};
+template<> ElementType ElementClass<_cohesive_2d_4>::facet_type = _segment_2;
+template<> ElementType ElementClass<_cohesive_2d_4>::p1_type = _cohesive_2d_4;
/* -------------------------------------------------------------------------- */
-/* 3D cohesive elements */
+template<> UInt GeometricalElement<_gt_cohesive_2d_6>::spatial_dimension = 2;
+template<> UInt GeometricalElement<_gt_cohesive_2d_6>::nb_nodes_per_element = 6;
+template<> UInt GeometricalElement<_gt_cohesive_2d_6>::nb_facets = 2;
+template<> UInt GeometricalElement<_gt_cohesive_2d_6>::nb_nodes_per_facet = 3;
+template<> UInt GeometricalElement<_gt_cohesive_2d_6>::facet_connectivity[] = {0, 3,
+ 1, 4,
+ 2, 5};
+
+template<> ElementType ElementClass<_cohesive_2d_6>::facet_type = _segment_3;
+template<> ElementType ElementClass<_cohesive_2d_6>::p1_type = _cohesive_2d_4;
/* -------------------------------------------------------------------------- */
-
__END_AKANTU__
diff --git a/src/fem/cohesive_element.hh b/src/fem/cohesive_element.hh
index ba2277d28..ff8c656ac 100644
--- a/src/fem/cohesive_element.hh
+++ b/src/fem/cohesive_element.hh
@@ -1,132 +1,49 @@
/**
* @file cohesive_element.hh
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Feb 03 16:28:03 2012
*
* @brief Cohesive element class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "element_class.hh"
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_COHESIVE_ELEMENT_HH__
#define __AKANTU_COHESIVE_ELEMENT_HH__
__BEGIN_AKANTU__
-/* -------------------------------------------------------------------------- */
-template<ElementType t>
-struct CohesiveElementSubElementType {
- enum { value = _not_defined };
-};
-
-template<>
-struct CohesiveElementSubElementType<_cohesive_2d_4> {
- enum { value = _segment_2 };
-};
-
-template<>
-struct CohesiveElementSubElementType<_cohesive_2d_6> {
- enum { value = _segment_3 };
-};
-
-
-/* -------------------------------------------------------------------------- */
-template<ElementType ct>
-class CohesiveElement : public ElementClass<ElementType(CohesiveElementSubElementType<ct>::value)> {
- typedef ElementClass<ElementType(CohesiveElementSubElementType<ct>::value)> Parent;
-
- /// function to print the containt of the class
- virtual void printself(std::ostream & stream, int indent = 0) const {};
-
- /* ------------------------------------------------------------------------ */
- /* Accessors */
- /* ------------------------------------------------------------------------ */
-public:
-
- static UInt getNbNodesPerElement() {
- return 2 * Parent::getNbNodesPerElement();
-}
-
- static UInt getNbQuadraturePoints() {
- return Parent::getNbQuadraturePoints();
- }
-
- static UInt getSpatialDimension() {
- return Parent::getSpatialDimension() + 1;
- }
-
- static UInt getNbShapeFunctions() {
- return Parent::getNbShapeFunctions();
- }
-
- static inline Real * getQuadraturePoints() {
- return Parent::getQuadraturePoints();
- }
-
- static inline UInt getShapeSize() {
- return Parent::getShapeSize();
- }
-
- static inline UInt getShapeDerivativesSize(){
- return Parent::getShapeDerivativesSize();
- }
-
- /// compute the in-radius
- static inline Real getInradius(const Real * coord) {
- return Parent::getInradius(coord);
- }
-
- static inline Real * getGaussIntegrationWeights() {
- return Parent::getGaussIntegrationWeights();
- }
-
- static inline ElementType getFacetElementType() {
- return ElementType(CohesiveElementSubElementType<ct>::value);
- }
-
- static inline UInt getNbFacetsPerElement() { return 2; }
-
- static AKANTU_GET_MACRO_NOT_CONST(FacetLocalConnectivityPerElement, facet_connectivity, UInt**);
-
-
- /* ------------------------------------------------------------------------ */
- /* Class Members */
- /* ------------------------------------------------------------------------ */
-private:
- /// local connectivity of facets
- static UInt * facet_connectivity[];
-
- /// vectorial connectivity of facets
- static UInt vec_facet_connectivity[];
-
-};
+AKANTU_DEFINE_ELEMENT_CLASS_PROPERTY(_cohesive_2d_4, _gt_cohesive_2d_4, _itp_lagrange_segment_2,
+ _ek_cohesive, 2);
+AKANTU_DEFINE_ELEMENT_CLASS_PROPERTY(_cohesive_2d_6, _gt_cohesive_2d_6, _itp_lagrange_segment_3,
+ _ek_cohesive, 2);
__END_AKANTU__
#endif /* __AKANTU_COHESIVE_ELEMENT_HH__ */
diff --git a/src/fem/element_class.cc b/src/fem/element_class.cc
index 101a73d79..c0a6b7eac 100644
--- a/src/fem/element_class.cc
+++ b/src/fem/element_class.cc
@@ -1,304 +1,74 @@
/**
* @file element_class.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Peter Spijker <peter.spijker@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Jul 20 23:40:43 2010
*
* @brief Common part of element_classes
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "element_class.hh"
/* -------------------------------------------------------------------------- */
-__BEGIN_AKANTU__
-
-/* -------------------------------------------------------------------------- */
-template<ElementType type> ElementKind ElementClass<type>::kind = _ek_regular;
-template<ElementType type> UInt ElementClass<type>::nb_nodes_per_element = 0;
-template<ElementType type> ElementType ElementClass<type>::p1_element_type = _not_defined;
-template<ElementType type> UInt ElementClass<type>::nb_quadrature_points = 0;
-template<ElementType type> UInt ElementClass<type>::spatial_dimension = 0;
-template<ElementType type> ElementType ElementClass<type>::facet_type = _not_defined;
-template<ElementType type> UInt ElementClass<type>::nb_shape_functions = 1;
-
-
-template<> ElementKind ElementClass<_not_defined>::kind = _ek_regular;
-template<> UInt ElementClass<_not_defined>::nb_nodes_per_element = 0;
-template<> ElementType ElementClass<_not_defined>::p1_element_type = _not_defined;
-template<> UInt ElementClass<_not_defined>::nb_quadrature_points = 0;
-template<> UInt ElementClass<_not_defined>::spatial_dimension = 0;
-template<> ElementType ElementClass<_not_defined>::facet_type = _not_defined;
-template<> UInt ElementClass<_not_defined>::nb_shape_functions = 1;
-template<> Real ElementClass<_not_defined>::quad[] = {};
-template<> UInt ElementClass<_not_defined>::nb_facets = 0;
-template<> UInt * ElementClass<_not_defined>::facet_connectivity[] = {};
-template<> Real ElementClass<_not_defined>::gauss_integration_weights[] = {2.};
-
-/* -------------------------------------------------------------------------- */
-/* Element Kind */
-/* -------------------------------------------------------------------------- */
-template<> ElementKind ElementClass<_segment_2 >::kind = _ek_regular;
-template<> ElementKind ElementClass<_segment_3 >::kind = _ek_regular;
-template<> ElementKind ElementClass<_triangle_3 >::kind = _ek_regular;
-template<> ElementKind ElementClass<_triangle_6 >::kind = _ek_regular;
-template<> ElementKind ElementClass<_tetrahedron_4 >::kind = _ek_regular;
-template<> ElementKind ElementClass<_tetrahedron_10 >::kind = _ek_regular;
-template<> ElementKind ElementClass<_quadrangle_4 >::kind = _ek_regular;
-template<> ElementKind ElementClass<_quadrangle_8 >::kind = _ek_regular;
-template<> ElementKind ElementClass<_hexahedron_8 >::kind = _ek_regular;
-template<> ElementKind ElementClass<_point >::kind = _ek_regular;
-template<> ElementKind ElementClass<_bernoulli_beam_2>::kind = _ek_regular;
-/* -------------------------------------------------------------------------- */
-#if defined(AKANTU_COHESIVE_ELEMENT)
-template<> ElementKind ElementClass<_cohesive_2d_4 >::kind = _ek_cohesive;
-template<> ElementKind ElementClass<_cohesive_2d_6 >::kind = _ek_cohesive;
-#endif
-/* -------------------------------------------------------------------------- */
-/* Regular Elements */
-/* -------------------------------------------------------------------------- */
+using std::sqrt;
-/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_point>::nb_shape_functions = 1;
-template<> UInt ElementClass<_point>::nb_nodes_per_element = 1;
-template<> ElementType ElementClass<_point>::p1_element_type = _point;
-template<> UInt ElementClass<_point>::nb_quadrature_points = 1;
-template<> Real ElementClass<_point>::quad[] = {0};
-template<> ElementType ElementClass<_point>::facet_type = _not_defined;
-template<> UInt ElementClass<_point>::spatial_dimension = 0;
-template<> UInt ElementClass<_point>::nb_facets = 0;
-template<> UInt * ElementClass<_point>::facet_connectivity[] = {};
-
-/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_segment_2>::nb_shape_functions = 1;
-template<> UInt ElementClass<_segment_2>::nb_nodes_per_element = 2;
-template<> ElementType ElementClass<_segment_2>::p1_element_type = _segment_2;
-template<> UInt ElementClass<_segment_2>::nb_quadrature_points = 1;
-template<> Real ElementClass<_segment_2>::quad[] = {0};
-template<> UInt ElementClass<_segment_2>::spatial_dimension = 1;
-template<> UInt ElementClass<_segment_2>::nb_facets = 2;
-template<> ElementType ElementClass<_segment_2>::facet_type = _point;
-template<> UInt ElementClass<_segment_2>::vec_facet_connectivity[]= {0,
- 1};
-template<> UInt * ElementClass<_segment_2>::facet_connectivity[] = {&vec_facet_connectivity[0],
- &vec_facet_connectivity[1]};
+__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_segment_3>::nb_shape_functions = 1;
-template<> UInt ElementClass<_segment_3>::nb_nodes_per_element = 3;
-template<> ElementType ElementClass<_segment_3>::p1_element_type = _segment_2;
-template<> UInt ElementClass<_segment_3>::nb_quadrature_points = 2;
-template<> Real ElementClass<_segment_3>::quad[] = {-1./sqrt(3.), 1./sqrt(3.)};
-template<> UInt ElementClass<_segment_3>::spatial_dimension = 1;
-template<> UInt ElementClass<_segment_3>::nb_facets = 2;
-template<> ElementType ElementClass<_segment_3>::facet_type = _point;
-template<> UInt ElementClass<_segment_3>::vec_facet_connectivity[]= {0,
- 1};
-template<> UInt * ElementClass<_segment_3>::facet_connectivity[] = {&vec_facet_connectivity[0],
- &vec_facet_connectivity[1]};
-/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_triangle_3>::nb_shape_functions = 1;
-template<> UInt ElementClass<_triangle_3>::nb_nodes_per_element = 3;
-template<> ElementType ElementClass<_triangle_3>::p1_element_type = _triangle_3;
-template<> UInt ElementClass<_triangle_3>::nb_quadrature_points = 1;
-template<> Real ElementClass<_triangle_3>::quad[] = {1./3., 1./3.};
-template<> UInt ElementClass<_triangle_3>::spatial_dimension = 2;
-template<> UInt ElementClass<_triangle_3>::nb_facets = 3;
-template<> ElementType ElementClass<_triangle_3>::facet_type = _segment_2;
-template<> UInt ElementClass<_triangle_3>::vec_facet_connectivity[]= {0, 1,
- 1, 2,
- 2, 0};
-template<> UInt * ElementClass<_triangle_3>::facet_connectivity[] = {&vec_facet_connectivity[0],
- &vec_facet_connectivity[2],
- &vec_facet_connectivity[4]};
+template<> ElementType ElementClass<_not_defined>::p1_type = _not_defined;
+template<> ElementType ElementClass<_not_defined>::facet_type = _not_defined;
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_triangle_6>::nb_shape_functions = 1;
-template<> UInt ElementClass<_triangle_6>::nb_nodes_per_element = 6;
-template<> ElementType ElementClass<_triangle_6>::p1_element_type = _triangle_3;
-template<> UInt ElementClass<_triangle_6>::nb_quadrature_points = 3;
-template<> Real ElementClass<_triangle_6>::quad[] = {1./6., 1./6.,
- 2./3., 1./6.,
- 1./6., 2./3.};
-template<> UInt ElementClass<_triangle_6>::spatial_dimension = 2;
-template<> UInt ElementClass<_triangle_6>::nb_facets = 3;
-template<> ElementType ElementClass<_triangle_6>::facet_type = _segment_3;
-template<> UInt ElementClass<_triangle_6>::vec_facet_connectivity[]= {0, 1, 3,
- 1, 2, 4,
- 2, 0, 5};
-template<> UInt * ElementClass<_triangle_6>::facet_connectivity[] = {&vec_facet_connectivity[0],
- &vec_facet_connectivity[3],
- &vec_facet_connectivity[6]};
+template<> ElementType ElementClass<_point_1>::p1_type = _point_1;
+template<> ElementType ElementClass<_point_1>::facet_type = _point_1;
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_tetrahedron_4>::nb_shape_functions = 1;
-template<> UInt ElementClass<_tetrahedron_4>::nb_nodes_per_element = 4;
-template<> ElementType ElementClass<_tetrahedron_4>::p1_element_type = _tetrahedron_4;
-template<> UInt ElementClass<_tetrahedron_4>::nb_quadrature_points = 1;
-template<> Real ElementClass<_tetrahedron_4>::quad[] = {1./4., 1./4., 1./4.};
-template<> UInt ElementClass<_tetrahedron_4>::spatial_dimension = 3;
-template<> UInt ElementClass<_tetrahedron_4>::nb_facets = 4;
-template<> ElementType ElementClass<_tetrahedron_4>::facet_type = _triangle_3;
-template<> UInt ElementClass<_tetrahedron_4>::vec_facet_connectivity[]= {0, 2, 1,
- 1, 2, 3,
- 2, 0, 3,
- 0, 1, 3};
-template<> UInt * ElementClass<_tetrahedron_4>::facet_connectivity[] = {&vec_facet_connectivity[0],
- &vec_facet_connectivity[3],
- &vec_facet_connectivity[6],
- &vec_facet_connectivity[9]};
+template<> ElementType ElementClass<_segment_2>::p1_type = _segment_2;
+template<> ElementType ElementClass<_segment_2>::facet_type = _point_1;
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_tetrahedron_10>::nb_shape_functions = 1;
-template<> UInt ElementClass<_tetrahedron_10>::nb_nodes_per_element = 10;
-template<> ElementType ElementClass<_tetrahedron_10>::p1_element_type = _tetrahedron_4;
-template<> UInt ElementClass<_tetrahedron_10>::nb_quadrature_points = 4;
-template<> Real ElementClass<_tetrahedron_10>::quad[] = {0.1381966011250, 0.1381966011250, 0.1381966011250, // a = (5-sqrt(5))/20
- 0.5854101966250, 0.1381966011250, 0.1381966011250, // b = (5+3*sqrt(5))/20
- 0.1381966011250, 0.5854101966250, 0.1381966011250,
- 0.1381966011250, 0.1381966011250, 0.5854101966250};
-template<> UInt ElementClass<_tetrahedron_10>::spatial_dimension = 3;
-template<> UInt ElementClass<_tetrahedron_10>::nb_facets = 4;
-template<> ElementType ElementClass<_tetrahedron_10>::facet_type = _triangle_6;
-template<> UInt ElementClass<_tetrahedron_10>::vec_facet_connectivity[]= {0, 2, 1, 6, 5, 4,
- 1, 2, 3, 5, 9, 8,
- 2, 0, 3, 6, 7, 9,
- 0, 1, 3, 4, 8, 7};
-template<> UInt * ElementClass<_tetrahedron_10>::facet_connectivity[] = {&vec_facet_connectivity[0],
- &vec_facet_connectivity[6],
- &vec_facet_connectivity[12],
- &vec_facet_connectivity[18]};
+template<> ElementType ElementClass<_segment_3>::p1_type = _segment_2;
+template<> ElementType ElementClass<_segment_3>::facet_type = _point_1;
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_quadrangle_4>::nb_shape_functions = 1;
-template<> UInt ElementClass<_quadrangle_4>::nb_nodes_per_element = 4;
-template<> ElementType ElementClass<_quadrangle_4>::p1_element_type = _quadrangle_4;
-template<> UInt ElementClass<_quadrangle_4>::nb_quadrature_points = 4;
-//template<> Real ElementClass<_quadrangle_4>::quad[] = {0, 0};
-template<> Real ElementClass<_quadrangle_4>::quad[] = {-1./std::sqrt(3), -1./sqrt(3),
- 1./sqrt(3), -1./sqrt(3),
- 1./sqrt(3), 1./sqrt(3),
- -1./sqrt(3), 1./sqrt(3)};
-template<> UInt ElementClass<_quadrangle_4>::spatial_dimension = 2;
-template<> UInt ElementClass<_quadrangle_4>::nb_facets = 4;
-template<> ElementType ElementClass<_quadrangle_4>::facet_type = _segment_2;
-template<> UInt ElementClass<_quadrangle_4>::vec_facet_connectivity[]= {0, 1,
- 1, 2,
- 2, 3,
- 3, 0};
-template<> UInt * ElementClass<_quadrangle_4>::facet_connectivity[] = {&vec_facet_connectivity[0],
- &vec_facet_connectivity[2],
- &vec_facet_connectivity[4],
- &vec_facet_connectivity[6]};
+template<> ElementType ElementClass<_triangle_3>::p1_type = _triangle_3;
+template<> ElementType ElementClass<_triangle_3>::facet_type = _segment_2;
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_quadrangle_8>::nb_shape_functions = 1;
-template<> UInt ElementClass<_quadrangle_8>::nb_nodes_per_element = 8;
-template<> ElementType ElementClass<_quadrangle_8>::p1_element_type = _quadrangle_8;
-template<> UInt ElementClass<_quadrangle_8>::nb_quadrature_points = 9;
-template<> Real ElementClass<_quadrangle_8>::quad[] = { 0., 0.,
- sqrt(3./5.), sqrt(3./5.),
- -sqrt(3./5.), sqrt(3./5.),
- -sqrt(3./5.), -sqrt(3./5.),
- sqrt(3./5.), -sqrt(3./5.),
- 0., sqrt(3./5.),
- -sqrt(3./5.), 0.,
- 0., -sqrt(3./5.),
- sqrt(3./5.), 0.};
-template<> UInt ElementClass<_quadrangle_8>::spatial_dimension = 2;
-template<> UInt ElementClass<_quadrangle_8>::nb_facets = 4;
-template<> ElementType ElementClass<_quadrangle_8>::facet_type = _segment_3;
-template<> UInt ElementClass<_quadrangle_8>::vec_facet_connectivity[]= {0, 1, 4,
- 1, 2, 5,
- 2, 3, 6,
- 3, 0, 7};
-template<> UInt * ElementClass<_quadrangle_8>::facet_connectivity[] = {vec_facet_connectivity + 0,
- vec_facet_connectivity + 3,
- vec_facet_connectivity + 6,
- vec_facet_connectivity + 9};
+template<> ElementType ElementClass<_triangle_6>::p1_type = _triangle_3;
+template<> ElementType ElementClass<_triangle_6>::facet_type = _segment_3;
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_hexahedron_8>::nb_shape_functions = 1;
-template<> UInt ElementClass<_hexahedron_8>::nb_nodes_per_element = 8;
-template<> ElementType ElementClass<_hexahedron_8>::p1_element_type = _hexahedron_8;
-template<> UInt ElementClass<_hexahedron_8>::nb_quadrature_points = 8;
-template<> Real ElementClass<_hexahedron_8>::quad[] = {-1./sqrt(3.), -1./sqrt(3.), -1./sqrt(3.),
- 1./sqrt(3.), -1./sqrt(3.), -1./sqrt(3.),
- 1./sqrt(3.), 1./sqrt(3.), -1./sqrt(3.),
- -1./sqrt(3.), 1./sqrt(3.), -1./sqrt(3.),
- -1./sqrt(3.), -1./sqrt(3.), 1./sqrt(3.),
- 1./sqrt(3.), -1./sqrt(3.), 1./sqrt(3.),
- 1./sqrt(3.), 1./sqrt(3.), 1./sqrt(3.),
- -1./sqrt(3.), 1./sqrt(3.), 1./sqrt(3.)};
-template<> UInt ElementClass<_hexahedron_8>::spatial_dimension = 3;
-template<> UInt ElementClass<_hexahedron_8>::nb_facets = 6;
-template<> ElementType ElementClass<_hexahedron_8>::facet_type = _quadrangle_4;
-template<> UInt ElementClass<_hexahedron_8>::vec_facet_connectivity[]= {0, 1, 2, 3,
- 0, 1, 5, 4,
- 1, 2, 6, 5,
- 2, 3, 7, 6,
- 3, 0, 4, 7,
- 4, 5, 6, 7};
-template<> UInt * ElementClass<_hexahedron_8>::facet_connectivity[] = {&vec_facet_connectivity[0],
- &vec_facet_connectivity[4],
- &vec_facet_connectivity[8],
- &vec_facet_connectivity[12],
- &vec_facet_connectivity[16],
- &vec_facet_connectivity[20]};
+template<> ElementType ElementClass<_tetrahedron_4>::p1_type = _tetrahedron_4;
+template<> ElementType ElementClass<_tetrahedron_4>::facet_type = _triangle_3;
/* -------------------------------------------------------------------------- */
-
+template<> ElementType ElementClass<_tetrahedron_10>::p1_type = _tetrahedron_4;
+template<> ElementType ElementClass<_tetrahedron_10>::facet_type = _triangle_6;
/* -------------------------------------------------------------------------- */
-/* Structural elements */
+template<> ElementType ElementClass<_quadrangle_4>::p1_type = _quadrangle_4;
+template<> ElementType ElementClass<_quadrangle_4>::facet_type = _segment_2;
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_bernoulli_beam_2>::nb_nodes_per_element = 2;
-template<> ElementType ElementClass<_bernoulli_beam_2>::p1_element_type = _bernoulli_beam_2;
-template<> UInt ElementClass<_bernoulli_beam_2>::nb_quadrature_points = 2;
-template<> Real ElementClass<_bernoulli_beam_2>::quad[] = {-1/sqrt(3), 0,
- 1/sqrt(3), 0};
-template<> UInt ElementClass<_bernoulli_beam_2>::spatial_dimension = 2;
-template<> UInt ElementClass<_bernoulli_beam_2>::nb_facets = 2;
-template<> ElementType ElementClass<_bernoulli_beam_2>::facet_type = _point;
-template<> UInt ElementClass<_bernoulli_beam_2>::vec_facet_connectivity[]= {0,
- 1};
-template<> UInt * ElementClass<_bernoulli_beam_2>::facet_connectivity[] = {&vec_facet_connectivity[0],
- &vec_facet_connectivity[1]};
-template<> UInt ElementClass<_bernoulli_beam_2>::nb_shape_functions = 5;
+template<> ElementType ElementClass<_quadrangle_8>::p1_type = _quadrangle_4;
+template<> ElementType ElementClass<_quadrangle_8>::facet_type = _segment_3;
/* -------------------------------------------------------------------------- */
-
-/* -------------------------------------------------------------------------- */
-/* Gauss integration */
-/* -------------------------------------------------------------------------- */
-template<> Real ElementClass<_segment_2 >::gauss_integration_weights[] = {2.};
-template<> Real ElementClass<_segment_3 >::gauss_integration_weights[] = {1., 1.};
-template<> Real ElementClass<_triangle_3 >::gauss_integration_weights[] = {1./2.};
-template<> Real ElementClass<_triangle_6 >::gauss_integration_weights[] = {1./6., 1./6., 1./6.};
-template<> Real ElementClass<_tetrahedron_4 >::gauss_integration_weights[] = {1./6.};
-template<> Real ElementClass<_tetrahedron_10 >::gauss_integration_weights[] = {1./24., 1./24., 1./24., 1./24.};
-template<> Real ElementClass<_quadrangle_4 >::gauss_integration_weights[] = {1., 1., 1., 1.};
-template<> Real ElementClass<_quadrangle_8 >::gauss_integration_weights[] = {64./81.,
- 25./81., 25./81., 25./81., 25./81.,
- 40./81., 40./81., 40./81., 40./81.};
-template<> Real ElementClass<_hexahedron_8 >::gauss_integration_weights[] = {1., 1., 1., 1.,
- 1., 1., 1., 1.};
-template<> Real ElementClass<_point >::gauss_integration_weights[] = {1.};
-template<> Real ElementClass<_bernoulli_beam_2>::gauss_integration_weights[] = {1., 1.};
-
+template<> ElementType ElementClass<_hexahedron_8>::p1_type = _hexahedron_8;
+template<> ElementType ElementClass<_hexahedron_8>::facet_type = _quadrangle_4;
__END_AKANTU__
-
diff --git a/src/fem/element_class.hh b/src/fem/element_class.hh
index 28d64d2e2..8bf60e648 100644
--- a/src/fem/element_class.hh
+++ b/src/fem/element_class.hh
@@ -1,309 +1,317 @@
/**
- * @file element_class.hh
- *
- * @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
- * @author Nicolas Richart <nicolas.richart@epfl.ch>
- *
- * @date Fri Jun 18 11:47:19 2010
- *
- * @brief element class definition
- *
- * @section LICENSE
- *
- * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
- * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
- *
- * Akantu is free software: you can 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 3 of the License, or (at your option) any
- * later version.
- *
- * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
- * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
- * details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
- *
- */
+ * @file element_class.hh
+ *
+ * @author Nicolas Richart <nicolas.richart@epfl.ch>
+ *
+ * @date Wed Nov 14 11:00:21 2012
+ *
+ * @brief Desciption of the element classes
+ *
+ * @section LICENSE
+ *
+ * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
+ * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
+ *
+ * Akantu is free software: you can 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 3 of the License, or (at your option) any
+ * later version.
+ *
+ * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
/* -------------------------------------------------------------------------- */
-
+#include "aka_common.hh"
+#include "aka_types.hh"
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_ELEMENT_CLASS_HH__
#define __AKANTU_ELEMENT_CLASS_HH__
+__BEGIN_AKANTU__
+
/* -------------------------------------------------------------------------- */
-#include "aka_common.hh"
-#include "aka_math.hh"
-#include "aka_types.hh"
+template<ElementType element_type>
+struct ElementClassProperty {
+ static const GeometricalType geometrical_type = _gt_not_defined;
+ static const InterpolationType interpolation_type = _itp_not_defined;
+ static const ElementKind element_kind = _ek_regular;
+ static const UInt spatial_dimension = 0;
+};
+
+#define AKANTU_DEFINE_ELEMENT_CLASS_PROPERTY(elem_type, geom_type, interp_type, elem_kind, sp) \
+ template<> \
+ struct ElementClassProperty<elem_type> { \
+ static const GeometricalType geometrical_type = geom_type; \
+ static const InterpolationType interpolation_type = interp_type; \
+ static const ElementKind element_kind = elem_kind; \
+ static const UInt spatial_dimension = sp; \
+ }
/* -------------------------------------------------------------------------- */
+/* Geometrie */
+/* -------------------------------------------------------------------------- */
+enum GeometricalShapeType {
+ _gst_point,
+ _gst_triangle,
+ _gst_square
+};
-__BEGIN_AKANTU__
+template<GeometricalType geometrical_type>
+struct GeometricalShape {
+ static const GeometricalShapeType shape = _gst_point;
+};
+
+template<GeometricalShapeType shape>
+struct GeometricalShapeContains {
+ static inline bool contains(const types::Vector<Real> & coord);
+};
+#define AKANTU_DEFINE_SHAPE(geom_type, geom_shape) \
+ template<> \
+ struct GeometricalShape<geom_type> { \
+ static const GeometricalShapeType shape = geom_shape; \
+ }
+
+AKANTU_DEFINE_SHAPE(_gt_point, _gst_point);
+AKANTU_DEFINE_SHAPE(_gt_segment_2, _gst_square);
+AKANTU_DEFINE_SHAPE(_gt_segment_3, _gst_square);
+AKANTU_DEFINE_SHAPE(_gt_quadrangle_4, _gst_square);
+AKANTU_DEFINE_SHAPE(_gt_quadrangle_8, _gst_square);
+AKANTU_DEFINE_SHAPE(_gt_hexahedron_8, _gst_square);
+AKANTU_DEFINE_SHAPE(_gt_triangle_3, _gst_triangle);
+AKANTU_DEFINE_SHAPE(_gt_triangle_6, _gst_triangle);
+AKANTU_DEFINE_SHAPE(_gt_tetrahedron_4, _gst_triangle);
+AKANTU_DEFINE_SHAPE(_gt_tetrahedron_10, _gst_triangle);
-/**
- * Class describing the different type of element for mesh or finite element
- * purpose
- *
- * @tparam type the element type for the specialization of the element class
- */
-template<ElementType type> class ElementClass {
- /* ------------------------------------------------------------------------ */
- /* Constructors/Destructors */
- /* ------------------------------------------------------------------------ */
+/* -------------------------------------------------------------------------- */
+template< GeometricalType geometrical_type,
+ GeometricalShapeType shape = GeometricalShape<geometrical_type>::shape >
+class GeometricalElement {
public:
+ /// compute the in-radius
+ static inline Real getInradius(const types::Matrix<Real> & coord) {
+ AKANTU_DEBUG_TO_IMPLEMENT();
+ }
- /* ------------------------------------------------------------------------ */
- /* Methods */
- /* ------------------------------------------------------------------------ */
+ /// true if the natural coordinates are in the element
+ static inline bool contains(const types::Vector<Real> & coord);
public:
+ static AKANTU_GET_MACRO_NOT_CONST(SpatialDimension, spatial_dimension, UInt);
+ static AKANTU_GET_MACRO_NOT_CONST(NbNodesPerElement, nb_nodes_per_element, UInt);
+ static AKANTU_GET_MACRO_NOT_CONST(NbFacetsPerElement, nb_facets, UInt);
+ static inline const types::Matrix<UInt> getFacetLocalConnectivityPerElement();
+protected:
+ /// Number of nodes per element
+ static UInt nb_nodes_per_element;
+ /// spatial dimension of the element
+ static UInt spatial_dimension;
+ /// number of facets for element
+ static UInt nb_facets;
+ /// local connectivity of facets
+ static UInt facet_connectivity[];
+private:
+ /// Type of the facet elements
+ static UInt nb_nodes_per_facet;
+};
- /**
- * compute the shape functions, the shape functions derivatives and the
- * jacobians
- * @param[in] coord coordinates of the nodes
- * @param[out] shape shape functions [nb_quad*node_per_elem]
- * @param[out] shape_deriv shape functions derivatives [nb_quad*node_per_elem*spatial_dim]
- * @param[out] jacobian jacobians * integration weights [nb_quad]
- */
- inline static void preComputeStandards(const Real * coord,
- const UInt dimension,
- Real * shape,
- Real * shape_deriv,
- Real * jacobian);
- /// compute the shape values for a point given in natural coordinates
- inline static void computeShapes(const Real * natural_coords, Real * shapes);
-
-
- /// compute the shape values for a set of points given in natural coordinates
- inline static void computeShapes(const Real * natural_coords,
- const UInt nb_points,
- Real * shapes);
-
- inline static void computeShapes(const Real * natural_coords,
- const UInt nb_points,
- Real * shapes,
- const Real * local_coord,
- UInt id = 0);
- inline static void computeShapes(const Real * natural_coords,
- Real * shapes,
- const Real * local_coord,
- UInt id = 0);
+/* -------------------------------------------------------------------------- */
+/* Interpolation */
+/* -------------------------------------------------------------------------- */
+template<InterpolationType interpolation_type>
+struct InterpolationPorperty {
+ static const InterpolationKind kind = _itk_lagrangian;
+};
- /**
- * compute dxds the variation of real coordinates along with
- * variation of natural coordinates on a given point in natural
- * coordinates
- */
- inline static void computeDXDS(const Real * dnds,
- const Real * node_coords,
- const UInt dimension,
- Real * dxds);
+template<>
+struct InterpolationPorperty<_itp_bernoulli_beam> {
+ static const InterpolationKind kind = _itk_structural;
+};
+
+/* -------------------------------------------------------------------------- */
+template<InterpolationType interpolation_type,
+ InterpolationKind kind = InterpolationPorperty<interpolation_type>::kind>
+class InterpolationElement {
+public:
+ /// compute the shape values for a given set of points in natural coordinates
+ static inline void computeShapes(const types::Matrix<Real> & natural_coord,
+ types::Matrix<Real> & N);
+
+ /// compute the shape values for a given point in natural coordinates
+ static inline void computeShapes(const types::Vector<Real> & natural_coord,
+ types::Vector<Real> & N) {
+ AKANTU_DEBUG_TO_IMPLEMENT();
+ }
/**
- * compute dxds the variation of real coordinates along with
- * variation of natural coordinates on a given set of points in
- * natural coordinates
+ * compute @f$ B_{ij} = \frac{\partial N_j}{\partial S_i} @f$ the variation of
+ * shape functions along with variation of natural coordinates on a given set
+ * of points in natural coordinates
*/
- inline static void computeDXDS(const Real * dnds,
- const UInt nb_points,
- const Real * node_coords,
- const UInt dimension, Real * dxds);
-
+ static inline void computeDNDS(const types::Matrix<Real> & natural_coord,
+ types::Tensor3<Real> & dnds);
/**
- * compute dnds the variation of real shape functions along with
+ * compute @f$ B_{ij} = \frac{\partial N_j}{\partial S_i} @f$ the variation of shape functions along with
* variation of natural coordinates on a given point in natural
* coordinates
*/
- inline static void computeDNDS(const Real * natural_coords,
- Real * dnds);
-
- /**
- * compute dnds the variation of shape functions along with
- * variation of natural coordinates on a given set of points in
- * natural coordinates
- */
- inline static void computeDNDS(const Real * natural_coords,
- const UInt nb_points,
- Real * dnds);
-
-
- /// compute jacobian (or integration variable change factor) for a set of points
- inline static void computeJacobian(const Real * dxds,
- const UInt nb_points,
- const UInt dimension,
- Real * jac);
+ static inline void computeDNDS(const types::Vector<Real> & natural_coord,
+ types::Matrix<Real> & dnds) {
+ AKANTU_DEBUG_TO_IMPLEMENT();
+ }
/// compute jacobian (or integration variable change factor) for a given point
- inline static void computeJacobian(const Real * dxds,
- const UInt dimension,
- Real & jac);
-
- /// compute shape derivatives (input is dxds) for a set of points
- inline static void computeShapeDerivatives(const Real * dxds,
- const Real * dnds,
- const UInt nb_points,
- const UInt dimension,
- Real * shape_deriv);
- /// compute shape derivatives (input is dxds) for a given point
- inline static void computeShapeDerivatives(const Real * dxds,
- const Real * dnds,
- Real * shape_deriv);
-
- inline static void computeShapeDerivatives(const Real * natural_coords,
- const UInt nb_points,
- const UInt dimension,
- Real * shape_deriv,
- const Real * local_coord,
- UInt id = 0);
-
- inline static void computeShapeDerivatives(const Real * natural_coords,
- Real * shape_deriv,
- const Real * local_coord,
- UInt id);
-
- /// compute normals on quad points
- inline static void computeNormalsOnQuadPoint(const Real * dxds,
- const UInt dimension,
- Real * normals);
-
+ /// in the case of spatial_dimension != natural_space_dimension
+ static inline void computeSpecialJacobian(const types::Matrix<Real> & J,
+ Real & jacobians) {
+ AKANTU_DEBUG_TO_IMPLEMENT();
+ }
/// interpolate a field given (arbitrary) natural coordinates
- inline static void interpolateOnNaturalCoordinates(const Real * natural_coords,
- const Real * nodal_values,
- UInt dimension,
- Real * interpolated);
-
- /// inverse map: get natural coordinates from real coordinates
- /**
- * In the non linear cases we need to iterate to find the natural coordinates @f$\xi@f$
- * provided real coordinates @f$x@f$.
- *
- * We want to solve: @f$ x- \phi(\xi) = 0@f$ with @f$\phi(\xi) = \sum_I N_I(\xi) x_I@f$
- * the mapping function which uses the nodal coordinates @f$x_I@f$.
- *
- * To that end we use the Newton method and the following series:
- *
- * @f$ \frac{\partial \phi(x_k)}{\partial \xi} \left( \xi_{k+1} - \xi_k \right) = x - \phi(x_k)@f$
- *
- * When we consider elements embedded in a dimension higher than them (2D triangle in a 3D space for example)
- * @f$ J = \frac{\partial \phi(\xi_k)}{\partial \xi}@f$ is of dimension @f$dim_{space} \times dim_{elem}@f$ which
- * is not invertible in most cases. Rather we can solve the problem:
- *
- * @f$ J^T J \left( \xi_{k+1} - \xi_k \right) = J^T \left( x - \phi(\xi_k) \right) @f$
- *
- * So that
- *
- * @f$ d\xi = \xi_{k+1} - \xi_k = (J^T J)^{-1} J^T \left( x - \phi(\xi_k) \right) @f$
- *
- * So that if the series converges we have:
- *
- * @f$ 0 = J^T \left( \phi(\xi_\infty) - x \right) @f$
- *
- * And we see that this is ill-posed only if @f$ J^T x = 0@f$ which means that the vector provided
- * is normal to any tangent which means it is outside of the element itself.
- *
- *
- * @param real_coords: the real coordinates the natural coordinates are sought for
- * @param node_coords: the coordinates of the nodes forming the element
- * @param natural_coords: output->the sought natural coordinates
- * @param spatial_dimension: spatial dimension of the problem
- **/
- inline static void inverseMap(const types::RVector & real_coords,
- const types::RMatrix & node_coords,
- UInt spatial_dimension,
- types::RVector & natural_coords,
- Real tolerance = 1e-8);
-
-
- //! return true if the provided natural coordinates are with the element. False otherwise
- inline static bool contains(const types::RVector & natural_coords);
-
- /// function to print the containt of the class
- virtual void printself(std::ostream & stream, int indent = 0) const {};
-
- /* ------------------------------------------------------------------------ */
- /* Accessors */
- /* ------------------------------------------------------------------------ */
-public:
- static AKANTU_GET_MACRO_NOT_CONST(Kind, kind, ElementKind);
- static AKANTU_GET_MACRO_NOT_CONST(NbNodesPerElement, nb_nodes_per_element, UInt);
- static AKANTU_GET_MACRO_NOT_CONST(P1ElementType, p1_element_type, ElementType);
- static AKANTU_GET_MACRO_NOT_CONST(NbQuadraturePoints, nb_quadrature_points, UInt);
- static AKANTU_GET_MACRO_NOT_CONST(SpatialDimension, spatial_dimension, UInt);
- static AKANTU_GET_MACRO_NOT_CONST(FacetElementType, facet_type, const ElementType &);
- static AKANTU_GET_MACRO_NOT_CONST(NbFacetsPerElement, nb_facets, UInt);
- static AKANTU_GET_MACRO_NOT_CONST(FacetLocalConnectivityPerElement, facet_connectivity, UInt**);
- static AKANTU_GET_MACRO_NOT_CONST(NbShapeFunctions, nb_shape_functions, UInt);
-
- static inline Real * getQuadraturePoints();
- static inline UInt getShapeSize();
- static inline UInt getShapeDerivativesSize();
-
- /// compute the in-radius
- static inline Real getInradius(const Real * coord);
+ static inline void interpolateOnNaturalCoordinates(const types::Vector<Real> & natural_coords,
+ const types::Matrix<Real> & nodal_values,
+ types::Vector<Real> & interpolated);
- static inline Real * getGaussIntegrationWeights();
- /* ------------------------------------------------------------------------ */
- /* Class Members */
- /* ------------------------------------------------------------------------ */
+ /// compute the gradient of a given field on the given natural coordinates
+ static inline void gradientOnNaturalCoordinates(const types::Vector<Real> & natural_coords,
+ const types::Matrix<Real> & f,
+ types::Matrix<Real> & gradient);
public:
- /// Number of nodes per element
+ static AKANTU_GET_MACRO_NOT_CONST(ShapeSize, nb_nodes_per_element, UInt);
+ static AKANTU_GET_MACRO_NOT_CONST(ShapeDerivativesSize, (nb_nodes_per_element * natural_space_dimension), UInt);
+ static AKANTU_GET_MACRO_NOT_CONST(NaturalSpaceDimension, natural_space_dimension, UInt);
+ static AKANTU_GET_MACRO_NOT_CONST(NbNodesPerInterpolationElement, nb_nodes_per_element, UInt);
+protected:
+ /// number of nodes per element
static UInt nb_nodes_per_element;
+ /// dimension of the natural space of the element
+ static UInt natural_space_dimension;
+};
+/* -------------------------------------------------------------------------- */
+/* Integration */
+/* -------------------------------------------------------------------------- */
+template<ElementType element_type>
+class GaussIntegrationElement {
+public:
+ static AKANTU_GET_MACRO_NOT_CONST(NbQuadraturePoints, nb_quadrature_points, UInt);
+ static const types::Matrix<Real> getQuadraturePoints();
+ static const types::Vector<Real> getWeights();
private:
-
- /// Kind of element
- static ElementKind kind;
-
+ /// quadrature points in natural coordinates
+ static Real quad[];
+ /// weights for the Gauss integration
+ static Real weights[];
/// Number of quadrature points per element
static UInt nb_quadrature_points;
+};
- /// Dimension of the element
- static UInt spatial_dimension;
-
- /// Type of the facet elements
- static ElementType facet_type;
-
- /// number of facets for element
- static UInt nb_facets;
+/* -------------------------------------------------------------------------- */
+/* ElementClass */
+/* -------------------------------------------------------------------------- */
+template<ElementType element_type,
+ ElementKind element_kind = ElementClassProperty<element_type>::element_kind>
+class ElementClass :
+ public GeometricalElement<ElementClassProperty<element_type>::geometrical_type>,
+ public InterpolationElement<ElementClassProperty<element_type>::interpolation_type> {
+protected:
+ typedef GeometricalElement<ElementClassProperty<element_type>::geometrical_type> geometrical_element;
+ typedef InterpolationElement<ElementClassProperty<element_type>::interpolation_type> interpolation_element;
+ typedef ElementClassProperty<element_type> element_property;
+public:
+ /**
+ * compute @f$ J = \frac{\partial x_j}{\partial s_i} @f$ the variation of real
+ * coordinates along with variation of natural coordinates on a given point in
+ * natural coordinates
+ */
+ static inline void computeJMat(const types::Matrix<Real> & dnds,
+ const types::Matrix<Real> & node_coords,
+ types::Matrix<Real> & J);
- /// local connectivity of facets
- static UInt * facet_connectivity[];
+ /**
+ * compute the Jacobian matrix by computing the variation of real coordinates
+ * along with variation of natural coordinates on a given set of points in
+ * natural coordinates
+ */
+ static inline void computeJMat(const types::Tensor3<Real> & dnds,
+ const types::Matrix<Real> & node_coords,
+ types::Tensor3<Real> & J);
- /// vectorial connectivity of facets
- static UInt vec_facet_connectivity[];
+ /// compute the jacobians of a serie of natural coordinates
+ static inline void computeJacobian(const types::Matrix<Real> & natural_coords,
+ const types::Matrix<Real> & node_coords,
+ types::Vector<Real> & jacobians);
- /// type of element P1 associated
- static ElementType p1_element_type;
+ /// compute jacobian (or integration variable change factor) for a set of points
+ static inline void computeJacobian(const types::Tensor3<Real> & J,
+ types::Vector<Real> & jacobians);
- /// quadrature points in natural coordinates
- static Real quad[];
+ /// compute jacobian (or integration variable change factor) for a given point
+ static inline void computeJacobian(const types::Matrix<Real> & J,
+ Real & jacobians);
- /// Number of shape functions
- static UInt nb_shape_functions;
+ /// compute shape derivatives (input is dxds) for a set of points
+ static inline void computeShapeDerivatives(const types::Tensor3<Real> & J,
+ const types::Tensor3<Real> & dnds,
+ types::Tensor3<Real> & shape_deriv);
- /// weights for the Gauss integration
- static Real gauss_integration_weights[];
+ /// compute shape derivatives (input is dxds) for a given point
+ static inline void computeShapeDerivatives(const types::Matrix<Real> & J,
+ const types::Matrix<Real> & dnds,
+ types::Matrix<Real> & shape_deriv);
+
+ /// compute the normal of a surface defined by the function f
+ static inline void computeNormalsOnNaturalCoordinates(const types::Matrix<Real> & coord,
+ types::Matrix<Real> & f,
+ types::Matrix<Real> & normals);
+
+ /// get natural coordinates from real coordinates
+ static inline void inverseMap(const types::Vector<Real> & real_coords,
+ const types::Matrix<Real> & node_coords,
+ types::Vector<Real> & natural_coords,
+ Real tolerance = 1e-8);
+public:
+ static AKANTU_GET_MACRO_NOT_CONST(Kind, element_kind, ElementKind);
+ static AKANTU_GET_MACRO_NOT_CONST(SpatialDimension, ElementClassProperty<element_type>::spatial_dimension, UInt);
+ static AKANTU_GET_MACRO_NOT_CONST(P1ElementType, p1_type, const ElementType &);
+ static AKANTU_GET_MACRO_NOT_CONST(FacetType, facet_type, const ElementType &);
+private:
+ /// Type of the facet elements
+ static ElementType facet_type;
+ /// type of element P1 associated
+ static ElementType p1_type;
};
-/* -------------------------------------------------------------------------- */
-/* inline functions */
-/* -------------------------------------------------------------------------- */
-#if defined (AKANTU_INCLUDE_INLINE_IMPL)
-# include "element_class_inline_impl.cc"
-#endif
+/* -------------------------------------------------------------------------- */
+#include "element_class_tmpl.hh"
/* -------------------------------------------------------------------------- */
+AKANTU_DEFINE_ELEMENT_CLASS_PROPERTY(_point_1, _gt_point, _itp_not_defined, _ek_regular, 0);
+#include "element_classes/element_class_segment_2_inline_impl.cc"
+#include "element_classes/element_class_segment_3_inline_impl.cc"
+#include "element_classes/element_class_triangle_3_inline_impl.cc"
+#include "element_classes/element_class_triangle_6_inline_impl.cc"
+#include "element_classes/element_class_tetrahedron_4_inline_impl.cc"
+#include "element_classes/element_class_tetrahedron_10_inline_impl.cc"
+#include "element_classes/element_class_quadrangle_4_inline_impl.cc"
+#include "element_classes/element_class_quadrangle_8_inline_impl.cc"
+#include "element_classes/element_class_hexahedron_8_inline_impl.cc"
+
+#if defined(AKANTU_STRUCTURAL_MECHANICS)
+# include "element_class_structural.hh"
+# include "element_classes/element_class_bernoulli_beam_inline_impl.cc"
+#endif
__END_AKANTU__
-
#endif /* __AKANTU_ELEMENT_CLASS_HH__ */
diff --git a/src/fem/element_class_structural.hh b/src/fem/element_class_structural.hh
new file mode 100644
index 000000000..18191d077
--- /dev/null
+++ b/src/fem/element_class_structural.hh
@@ -0,0 +1,120 @@
+/**
+ * @file element_class_structural.hh
+ *
+ * @author Nicolas Richart <nicolas.richart@epfl.ch>
+ *
+ * @date Sat Nov 17 19:32:51 2012
+ *
+ * @brief Specialization for structural elements
+ *
+ * @section LICENSE
+ *
+ * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
+ * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
+ *
+ * Akantu is free software: you can 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 3 of the License, or (at your option) any
+ * later version.
+ *
+ * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+/* -------------------------------------------------------------------------- */
+template<InterpolationType interpolation_type>
+class InterpolationElement<interpolation_type, _itk_structural> {
+public:
+ /// compute the shape values for a given set of points in natural coordinates
+ static inline void computeShapes(const types::Matrix<Real> & natural_coord,
+ types::Matrix<Real> & N,
+ const types::Matrix<Real> & real_nodal_coord,
+ UInt n = 0) {
+ UInt nb_points = natural_coord.cols();
+ for (UInt p = 0; p < nb_points; ++p) {
+ types::Vector<Real> Np = N(p);
+ computeShapes(natural_coord(p), Np, real_nodal_coord, n);
+ }
+ }
+
+ /// compute the shape values for a given point in natural coordinates
+ static inline void computeShapes(const types::Vector<Real> & natural_coord,
+ types::Vector<Real> & N,
+ const types::Matrix<Real> & real_nodal_coord,
+ UInt n = 0);
+ /**
+ * compute @f$ B_{ij} = \frac{\partial N_j}{\partial S_i} @f$ the variation of
+ * shape functions along with variation of natural coordinates on a given set
+ * of points in natural coordinates
+ */
+ static inline void computeDNDS(const types::Matrix<Real> & natural_coord,
+ types::Tensor3<Real> & dnds,
+ const types::Matrix<Real> & real_nodal_coord,
+ UInt n = 0) {
+ for (UInt i = 0; i < natural_coord.cols(); ++i) {
+ types::Matrix<Real> dnds_t = dnds(i);
+ computeDNDS(natural_coord(i), dnds_t, real_nodal_coord, n);
+ }
+ }
+
+ /**
+ * compute @f$ B_{ij} = \frac{\partial N_j}{\partial S_i} @f$ the variation of shape functions along with
+ * variation of natural coordinates on a given point in natural
+ * coordinates
+ */
+ static inline void computeDNDS(const types::Vector<Real> & natural_coord,
+ types::Matrix<Real> & dnds,
+ const types::Matrix<Real> & real_nodal_coord,
+ UInt n = 0);
+
+public:
+ static AKANTU_GET_MACRO_NOT_CONST(NbShapeFunctions, nb_shape_functions, UInt);
+ static AKANTU_GET_MACRO_NOT_CONST(ShapeSize, nb_nodes_per_element, UInt);
+ static AKANTU_GET_MACRO_NOT_CONST(ShapeDerivativesSize, (nb_nodes_per_element * natural_space_dimension), UInt);
+ static AKANTU_GET_MACRO_NOT_CONST(NaturalSpaceDimension, natural_space_dimension, UInt);
+protected:
+ /// nb shape functions
+ static UInt nb_shape_functions;
+ /// number of nodes per element
+ static UInt nb_nodes_per_element;
+ /// dimension of the natural space of the element
+ static UInt natural_space_dimension;
+};
+
+/* -------------------------------------------------------------------------- */
+template<ElementType element_type>
+class ElementClass<element_type, _ek_structural> :
+ public GeometricalElement<ElementClassProperty<element_type>::geometrical_type>,
+ public InterpolationElement<ElementClassProperty<element_type>::interpolation_type> {
+protected:
+ typedef GeometricalElement<ElementClassProperty<element_type>::geometrical_type> geometrical_element;
+ typedef InterpolationElement<ElementClassProperty<element_type>::interpolation_type> interpolation_element;
+public:
+ /// compute shape derivatives (input is dxds) for a set of points
+ static inline void computeShapeDerivatives(const types::Matrix<Real> & natural_coord,
+ types::Tensor3<Real> & shape_deriv,
+ const types::Matrix<Real> & real_nodal_coord,
+ UInt n = 0) {
+ UInt nb_points = natural_coord.cols();
+ for (UInt p = 0; p < nb_points; ++p) {
+ types::Matrix<Real> shape_deriv_p = shape_deriv(p);
+ interpolation_element::computeDNDS(natural_coord(p), shape_deriv_p, real_nodal_coord, n);
+ }
+ }
+
+ /// compute jacobian (or integration variable change factor) for a given point
+ static inline void computeJacobian(const types::Matrix<Real> & natural_coords,
+ const types::Matrix<Real> & nodal_coords,
+ types::Vector<Real> & jacobians);
+public:
+ static AKANTU_GET_MACRO_NOT_CONST(Kind, _ek_structural, ElementKind);
+ static AKANTU_GET_MACRO_NOT_CONST(P1ElementType, _not_defined, const ElementType);
+ static AKANTU_GET_MACRO_NOT_CONST(FacetType, _not_defined, const ElementType);
+ static AKANTU_GET_MACRO_NOT_CONST(SpatialDimension, ElementClassProperty<element_type>::spatial_dimension, UInt);
+};
diff --git a/src/fem/element_class_tmpl.hh b/src/fem/element_class_tmpl.hh
new file mode 100644
index 000000000..79141affa
--- /dev/null
+++ b/src/fem/element_class_tmpl.hh
@@ -0,0 +1,397 @@
+/**
+ * @file element_class_tmpl.hh
+ *
+ * @author Nicolas Richart <nicolas.richart@epfl.ch>
+ *
+ * @date Wed Nov 14 16:40:51 2012
+ *
+ * @brief Implementation of the inline templated function of the element class
+ * descriptions
+ *
+ * @section LICENSE
+ *
+ * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
+ * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
+ *
+ * Akantu is free software: you can 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 3 of the License, or (at your option) any
+ * later version.
+ *
+ * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+/* -------------------------------------------------------------------------- */
+/* GaussIntegrationElement */
+/* -------------------------------------------------------------------------- */
+template<ElementType element_type>
+const types::Matrix<Real> GaussIntegrationElement<element_type>::getQuadraturePoints() {
+ types::Matrix<Real> quads(quad,
+ ElementClass<element_type>::getNaturalSpaceDimension(),
+ nb_quadrature_points);
+ return quads;
+}
+
+/* -------------------------------------------------------------------------- */
+template<ElementType element_type>
+const types::Vector<Real> GaussIntegrationElement<element_type>::getWeights() {
+ return types::Vector<Real>(weights, nb_quadrature_points);
+}
+
+/* -------------------------------------------------------------------------- */
+/* GeometricalElement */
+/* -------------------------------------------------------------------------- */
+template<GeometricalType geometrical_type, GeometricalShapeType shape>
+inline const types::Matrix<UInt>
+GeometricalElement<geometrical_type, shape>::getFacetLocalConnectivityPerElement() {
+ return types::Matrix<UInt>(facet_connectivity, nb_facets, nb_nodes_per_facet);
+}
+
+/* -------------------------------------------------------------------------- */
+template<GeometricalType geometrical_type, GeometricalShapeType shape>
+inline bool
+GeometricalElement<geometrical_type, shape>::contains(const types::Vector<Real> & coords) {
+ return GeometricalShapeContains<shape>::contains(coords);
+}
+
+/* -------------------------------------------------------------------------- */
+template<>
+inline bool
+GeometricalShapeContains<_gst_point>::contains(const types::Vector<Real> & coords) {
+ return (coords(0) < std::numeric_limits<Real>::epsilon());
+}
+
+/* -------------------------------------------------------------------------- */
+template<>
+inline bool
+GeometricalShapeContains<_gst_square>::contains(const types::Vector<Real> & coords) {
+ bool in = true;
+ for (UInt i = 0; i < coords.size() && in; ++i)
+ in &= ((coords(i) >= -1.) && (coords(i) <= 1.));
+ return in;
+}
+
+/* -------------------------------------------------------------------------- */
+template<>
+inline bool
+GeometricalShapeContains<_gst_triangle>::contains(const types::Vector<Real> & coords) {
+ bool in = true;
+ Real sum = 0;
+ for (UInt i = 0; (i < coords.size()) && in; ++i) {
+ in &= ((coords(i) >= 0) && (coords(i) <= 1.));
+ sum += coords(i);
+ }
+ if(in) return (in && (sum <= 1));
+ return in;
+}
+
+/* -------------------------------------------------------------------------- */
+/* InterpolationElement */
+/* -------------------------------------------------------------------------- */
+template<InterpolationType interpolation_type, InterpolationKind kind>
+inline void
+InterpolationElement<interpolation_type, kind>::computeShapes(const types::Matrix<Real> & natural_coord,
+ types::Matrix<Real> & N) {
+ UInt nb_points = natural_coord.cols();
+ for (UInt p = 0; p < nb_points; ++p) {
+ types::Vector<Real> Np = N(p);
+ computeShapes(natural_coord(p), Np);
+ }
+}
+
+/* -------------------------------------------------------------------------- */
+template<InterpolationType interpolation_type, InterpolationKind kind>
+inline void
+InterpolationElement<interpolation_type, kind>::computeDNDS(const types::Matrix<Real> & natural_coord,
+ types::Tensor3<Real> & dnds) {
+ UInt nb_points = natural_coord.cols();
+ for (UInt p = 0; p < nb_points; ++p) {
+ types::Matrix<Real> dnds_p = dnds(p);
+ computeDNDS(natural_coord(p), dnds_p);
+ }
+}
+
+/* -------------------------------------------------------------------------- */
+/**
+ * interpolate the field on a point given in natural coordinates the field which
+ * values are given on the node of the element
+ *
+ * @param natural_coords natural coordinates of point where to interpolate \xi
+ * @param nodal_values values of the function per node @f$ f_{ij} = f_{n_i j} @f$ so it should be a matrix of size nb_nodes_per_element @f$\times@f$ nb_degree_of_freedom
+ * @param interpolated interpolated value of f @f$ f_j(\xi) = \sum_i f_{n_i j} N_i @f$
+ */
+template<InterpolationType interpolation_type, InterpolationKind kind>
+inline void
+InterpolationElement<interpolation_type, kind>::interpolateOnNaturalCoordinates(const types::Vector<Real> & natural_coords,
+ const types::Matrix<Real> & nodal_values,
+ types::Vector<Real> & interpolated) {
+ types::Vector<Real> shapes(nb_nodes_per_element);
+ computeShapes(natural_coords, shapes);
+
+ types::Matrix<Real> interpm(interpolated.storage(), nodal_values.rows(), 1);
+ types::Matrix<Real> shapesm(shapes.storage(), nb_nodes_per_element, 1);
+ interpm.mul<false, false>(nodal_values, shapesm);
+}
+
+
+/* -------------------------------------------------------------------------- */
+/// @f$ gradient_{ij} = \frac{\partial f_j}{\partial s_i} = \sum_k \frac{\partial N_k}{\partial s_i}f_{j n_k} @f$
+template<InterpolationType interpolation_type, InterpolationKind kind>
+inline void
+InterpolationElement<interpolation_type, kind>::gradientOnNaturalCoordinates(const types::Vector<Real> & natural_coords,
+ const types::Matrix<Real> & f,
+ types::Matrix<Real> & gradient) {
+ types::Matrix<Real> dnds(natural_space_dimension, nb_nodes_per_element);
+ computeDNDS(natural_coords, dnds);
+ gradient.mul<false, true>(f, dnds);
+}
+
+/* -------------------------------------------------------------------------- */
+/* ElementClass */
+/* -------------------------------------------------------------------------- */
+
+/* -------------------------------------------------------------------------- */
+template <ElementType type, ElementKind kind>
+inline void ElementClass<type, kind>::computeJMat(const types::Tensor3<Real> & dnds,
+ const types::Matrix<Real> & node_coords,
+ types::Tensor3<Real> & J) {
+ UInt nb_points = dnds.size(2);
+ for (UInt p = 0; p < nb_points; ++p) {
+ types::Matrix<Real> J_p = J(p);
+ computeJMat(dnds(p), node_coords, J_p);
+ }
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementType type, ElementKind kind>
+inline void ElementClass<type, kind>::computeJMat(const types::Matrix<Real> & dnds,
+ const types::Matrix<Real> & node_coords,
+ types::Matrix<Real> & J) {
+ /// @f$ J = dxds = dnds * x @f$
+ J.mul<false, true>(dnds, node_coords);
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementType type, ElementKind kind>
+inline void ElementClass<type, kind>::computeJacobian(const types::Matrix<Real> & natural_coords,
+ const types::Matrix<Real> & node_coords,
+ types::Vector<Real> & jacobians) {
+ UInt nb_points = natural_coords.cols();
+ types::Matrix<Real> dnds(interpolation_element::natural_space_dimension,
+ interpolation_element::nb_nodes_per_element);
+ types::Matrix<Real> J(natural_coords.rows(),
+ node_coords.rows());
+
+ for (UInt p = 0; p < nb_points; ++p) {
+ interpolation_element::computeDNDS(natural_coords(p), dnds);
+ computeJMat(dnds, node_coords, J);
+ computeJacobian(J, jacobians(p));
+ }
+}
+
+
+
+/* -------------------------------------------------------------------------- */
+template <ElementType type, ElementKind kind>
+inline void ElementClass<type, kind>::computeJacobian(const types::Tensor3<Real> & J,
+ types::Vector<Real> & jacobians) {
+ UInt nb_points = J.size(2);
+ for (UInt p = 0; p < nb_points; ++p) {
+ computeJacobian(J(p), jacobians(p));
+ }
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementType type, ElementKind kind>
+inline void ElementClass<type, kind>::computeJacobian(const types::Matrix<Real> & J,
+ Real & jacobians) {
+ if(J.rows() == J.cols()) {
+ jacobians = Math::det<element_property::spatial_dimension>(J.storage());
+ } else {
+ interpolation_element::computeSpecialJacobian(J, jacobians);
+ }
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementType type, ElementKind kind>
+inline void
+ElementClass<type, kind>::computeShapeDerivatives(const types::Tensor3<Real> & J,
+ const types::Tensor3<Real> & dnds,
+ types::Tensor3<Real> & shape_deriv) {
+ UInt nb_points = J.size(2);
+ for (UInt p = 0; p < nb_points; ++p) {
+ types::Matrix<Real> shape_deriv_p = shape_deriv(p);
+ computeShapeDerivatives(J(p), dnds(p), shape_deriv_p);
+ }
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementType type, ElementKind kind>
+inline void
+ElementClass<type, kind>::computeShapeDerivatives(const types::Matrix<Real> & J,
+ const types::Matrix<Real> & dnds,
+ types::Matrix<Real> & shape_deriv) {
+ types::Matrix<Real> inv_J(J.rows(), J.cols());
+ Math::inv<element_property::spatial_dimension>(J.storage(), inv_J.storage());
+
+ shape_deriv.mul<false, false>(inv_J, dnds);
+}
+
+
+/* -------------------------------------------------------------------------- */
+template<ElementType type, ElementKind kind>
+inline void
+ElementClass<type, kind>::computeNormalsOnNaturalCoordinates(const types::Matrix<Real> & coord,
+ types::Matrix<Real> & f,
+ types::Matrix<Real> & normals) {
+ UInt dimension = normals.rows();
+ UInt nb_points = coord.cols();
+
+ AKANTU_DEBUG_ASSERT((dimension - 1) == interpolation_element::natural_space_dimension,
+ "cannot extract a normal because of dimension mismatch "
+ << dimension << " " << interpolation_element::natural_space_dimension);
+
+ types::Matrix<Real> J(dimension, interpolation_element::natural_space_dimension);
+ for (UInt p = 0; p < nb_points; ++p) {
+ interpolation_element::gradientOnNaturalCoordinates(coord(p), f, J);
+ if (dimension == 2) {
+ Math::normal2(J.storage(), normals(p).storage());
+ }
+ if (dimension == 3){
+ Math::normal3(J(0).storage(), J(1).storage(), normals(p).storage());
+ }
+ }
+}
+
+/* ------------------------------------------------------------------------- */
+/**
+ * In the non linear cases we need to iterate to find the natural coordinates @f$\xi@f$
+ * provided real coordinates @f$x@f$.
+ *
+ * We want to solve: @f$ x- \phi(\xi) = 0@f$ with @f$\phi(\xi) = \sum_I N_I(\xi) x_I@f$
+ * the mapping function which uses the nodal coordinates @f$x_I@f$.
+ *
+ * To that end we use the Newton method and the following series:
+ *
+ * @f$ \frac{\partial \phi(x_k)}{\partial \xi} \left( \xi_{k+1} - \xi_k \right) = x - \phi(x_k)@f$
+ *
+ * When we consider elements embedded in a dimension higher than them (2D triangle in a 3D space for example)
+ * @f$ J = \frac{\partial \phi(\xi_k)}{\partial \xi}@f$ is of dimension @f$dim_{space} \times dim_{elem}@f$ which
+ * is not invertible in most cases. Rather we can solve the problem:
+ *
+ * @f$ J^T J \left( \xi_{k+1} - \xi_k \right) = J^T \left( x - \phi(\xi_k) \right) @f$
+ *
+ * So that
+ *
+ * @f$ d\xi = \xi_{k+1} - \xi_k = (J^T J)^{-1} J^T \left( x - \phi(\xi_k) \right) @f$
+ *
+ * So that if the series converges we have:
+ *
+ * @f$ 0 = J^T \left( \phi(\xi_\infty) - x \right) @f$
+ *
+ * And we see that this is ill-posed only if @f$ J^T x = 0@f$ which means that the vector provided
+ * is normal to any tangent which means it is outside of the element itself.
+ *
+ * @param real_coords: the real coordinates the natural coordinates are sought for
+ * @param node_coords: the coordinates of the nodes forming the element
+ * @param natural_coords: output->the sought natural coordinates
+ * @param spatial_dimension: spatial dimension of the problem
+ *
+ **/
+template <ElementType type, ElementKind kind>
+inline void ElementClass<type, kind>::inverseMap(const types::Vector<Real> & real_coords,
+ const types::Matrix<Real> & node_coords,
+ types::RVector & natural_coords,
+ Real tolerance) {
+ UInt spatial_dimension = real_coords.size();
+ UInt dimension = natural_coords.size();
+
+ //matrix copy of the real_coords
+ types::RMatrix mreal_coords(real_coords.storage(), spatial_dimension, 1);
+
+ //initial guess
+ // types::RMatrix natural_guess(natural_coords.storage(), dimension, 1);
+ natural_coords.clear();
+
+ // real space coordinates provided by initial guess
+ types::RMatrix physical_guess(dimension, 1);
+
+ // objective function f = real_coords - physical_guess
+ types::RMatrix f(dimension, 1);
+
+ // dnds computed on the natural_guess
+ // types::RMatrix dnds(interpolation_element::nb_nodes_per_element, spatial_dimension);
+
+ // J Jacobian matrix computed on the natural_guess
+ types::RMatrix J(spatial_dimension, dimension);
+
+ // G = J^t * J
+ types::RMatrix G(spatial_dimension, spatial_dimension);
+
+ // Ginv = G^{-1}
+ types::RMatrix Ginv(spatial_dimension, spatial_dimension);
+
+ // J = Ginv * J^t
+ types::RMatrix F(spatial_dimension, dimension);
+
+ // dxi = \xi_{k+1} - \xi in the iterative process
+ types::RMatrix dxi(spatial_dimension, 1);
+
+ /* --------------------------- */
+ /* init before iteration loop */
+ /* --------------------------- */
+ // do interpolation
+ types::Vector<Real> physical_guess_v(physical_guess.storage(), dimension);
+ interpolation_element::interpolateOnNaturalCoordinates(natural_coords,
+ node_coords,
+ physical_guess_v);
+
+ // compute initial objective function value f = real_coords - physical_guess
+ f = mreal_coords;
+ f -= physical_guess;
+
+ // compute initial error
+ Real inverse_map_error = f.norm();
+
+ /* --------------------------- */
+ /* iteration loop */
+ /* --------------------------- */
+ while(tolerance < inverse_map_error) {
+ //compute J^t
+ interpolation_element::gradientOnNaturalCoordinates(natural_coords, node_coords, J);
+
+ //compute G
+ G.mul<true, false>(J, J);
+
+ // inverse G
+ Ginv.inverse(G);
+
+ //compute F
+ F.mul<false, true>(Ginv, J);
+
+ //compute increment
+ dxi.mul<false,false>(F, f);
+
+ //update our guess
+ natural_coords += dxi(0);
+
+ //interpolate
+ interpolation_element::interpolateOnNaturalCoordinates(natural_coords,
+ node_coords,
+ physical_guess_v);
+
+ // compute error
+ f = mreal_coords;
+ f -= physical_guess;
+ inverse_map_error = f.norm();
+ }
+ // memcpy(natural_coords.storage(), natural_guess.storage(), sizeof(Real) * natural_coords.size());
+}
diff --git a/src/fem/element_classes/element_class_bernoulli_beam_2_inline_impl.cc b/src/fem/element_classes/element_class_bernoulli_beam_inline_impl.cc
similarity index 52%
rename from src/fem/element_classes/element_class_bernoulli_beam_2_inline_impl.cc
rename to src/fem/element_classes/element_class_bernoulli_beam_inline_impl.cc
index 7915d7443..bcb3c8be3 100644
--- a/src/fem/element_classes/element_class_bernoulli_beam_2_inline_impl.cc
+++ b/src/fem/element_classes/element_class_bernoulli_beam_inline_impl.cc
@@ -1,230 +1,198 @@
/**
- * @file element_class_bernoulli_beam_2_inline_impl.cc
- *
+ * @file element_class_bernoulli_beam_2.cc
* @author Fabian Barras <fabian.barras@epfl.ch>
- *
- * @date Fri Jul 15 19:41:58 2011
+ * @date Thu Mar 31 14:02:22 2011
*
* @brief Specialization of the element_class class for the type _bernoulli_beam_2
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
* @section DESCRIPTION
*
* @verbatim
+
--x-----q1----|----q2-----x---> x
-a 0 a
@endverbatim
*
* @subsection coords Nodes coordinates
*
* @f[
* \begin{array}{ll}
* x_{1} = -a & x_{2} = a
* \end{array}
* @f]
*
* @subsection shapes Shape functions
+
* @f[
* \begin{array}{ll}
* N_1(x) &= \frac{1-x}{2a}\\
* N_2(x) &= \frac{1+x}{2a}
* \end{array}
*
* \begin{array}{ll}
* M_1(x) &= 1/4(x^{3}/a^{3}-3x/a+2)\\
* M_2(x) &= -1/4(x^{3}/a^{3}-3x/a-2)
* \end{array}
*
* \begin{array}{ll}
* L_1(x) &= a/4(x^{3}/a^{3}-x^{2}/a^{2}-x/a+1)\\
* L_2(x) &= a/4(x^{3}/a^{3}+x^{2}/a^{2}-x/a-1)
* \end{array}
*
* \begin{array}{ll}
* M'_1(x) &= 3/4a(x^{2}/a^{2}-1)\\
* M'_2(x) &= -3/4a(x^{2}/a^{2}-1)
* \end{array}
*
* \begin{array}{ll}
* L'_1(x) &= 1/4(3x^{2}/a^{2}-2x/a-1)\\
* L'_2(x) &= 1/4(3x^{2}/a^{2}+2x/a-1)
* \end{array}
*@f]
*
* @subsection dnds Shape derivatives
*
*@f[
* \begin{array}{ll}
* N'_1(x) &= -1/2a\\
* N'_2(x) &= 1/2a
* \end{array}]
*
* \begin{array}{ll}
* -M''_1(x) &= -3x/(2a^{3})\\
* -M''_2(x) &= 3x/(2a^{3})\\
* \end{array}
*
* \begin{array}{ll}
* -L''_1(x) &= -1/2a(3x/a-1)\\
* -L''_2(x) &= -1/2a(3x/a+1)
* \end{array}
*@f]
*
* @subsection quad_points Position of quadrature points
*
* @f[
* \begin{array}{ll}
* x_{q1} = -a/\sqrt{3} & x_{q2} = a/\sqrt{3}
* \end{array}
* @f]
*/
/* -------------------------------------------------------------------------- */
+// template<> UInt ElementClass<_bernoulli_beam_2>::nb_nodes_per_element;
+// template<> UInt ElementClass<_bernoulli_beam_2>::nb_quadrature_points;
+// template<> UInt ElementClass<_bernoulli_beam_2>::spatial_dimension;
-
-template<> UInt ElementClass<_bernoulli_beam_2>::nb_nodes_per_element;
-template<> UInt ElementClass<_bernoulli_beam_2>::nb_quadrature_points;
-template<> UInt ElementClass<_bernoulli_beam_2>::spatial_dimension;
+AKANTU_DEFINE_ELEMENT_CLASS_PROPERTY(_bernoulli_beam_2, _gt_segment_2, _itp_bernoulli_beam, _ek_structural, 2);
+AKANTU_DEFINE_ELEMENT_CLASS_PROPERTY(_bernoulli_beam_3, _gt_segment_2, _itp_bernoulli_beam, _ek_structural, 3);
/* -------------------------------------------------------------------------- */
template <>
-inline void ElementClass<_bernoulli_beam_2>::computeShapes(const Real * natural_coords,
- Real * shapes,
- const Real * local_coord,
- UInt id) {
+inline void
+InterpolationElement<_itp_bernoulli_beam>::computeShapes(const types::Vector<Real> & natural_coords,
+ types::Vector<Real> & N,
+ const types::Matrix<Real> & real_coord,
+ UInt id) {
/// Compute the dimension of the beam
- Real a=.5 * Math::distance_2d(local_coord, local_coord+2);
-
+ Real a = .5 * real_coord(0).distance(real_coord(1));
/// natural coordinate
- Real c =(*natural_coords)*a;
-
+ Real c = natural_coords(0);
switch (id) {
-
- case 0:
- shapes[0]=0.5*(1-c/a);
- shapes[1]=0.5*(1+c/a);
+ case 0: { // N
+ N(0) = 0.5*(1 - c);
+ N(1) = 0.5*(1 + c);
break;
-
- case 1:
- shapes[0]=0.25*(pow(c,3)/pow(a,3)-3*c/a+2);
- shapes[1]=-0.25*(pow(c,3)/pow(a,3)-3*c/a-2);
+ }
+ case 1: { // M
+ N(0) = 0.25 * (c*c*c - 3*c + 2);
+ N(1) = -0.25 * (c*c*c - 3*c - 2);
break;
-
- case 2:
- shapes[0]=0.25*a*(pow(c,3)/pow(a,3)-c*c/(a*a)-c/a+1);
- shapes[1]=0.25*a*(pow(c,3)/pow(a,3)+c*c/(a*a)-c/a-1);
+ }
+ case 2: { // L
+ N(0) = 0.25*a * (c*c*c - c*c - c + 1);
+ N(1) = 0.25*a * (c*c*c + c*c - c - 1);
+ break;
+ }
+ case 3: { // M'
+ N(0) = 0.75/a * (c*c - 1);
+ N(1) = -0.75/a * (c*c - 1);
break;
-
- case 3:
- shapes[0]=0.75/a*(c*c/(a*a)-1);
- shapes[1]=-0.75/a*(c*c/(a*a)-1);
- break;
-
- case 4:
- shapes[0]=0.25*(3*c*c/(a*a)-2*c/a-1);
- shapes[1]=0.25*(3*c*c/(a*a)+2*c/a-1);
- break;
+ }
+ case 4: { // L'
+ N(0) = 0.25 * (3*c*c - 2*c - 1);
+ N(1) = 0.25 * (3*c*c + 2*c - 1);
+ break;
+ }
}
}
/* -------------------------------------------------------------------------- */
template <>
-inline void ElementClass<_bernoulli_beam_2>::computeShapeDerivatives(const Real * natural_coords,
- Real * shape_deriv,
- const Real * local_coord,
- UInt id) {
-
-
- /// Compute the dimension of the beam
- Real a=0.5*Math::distance_2d(local_coord,local_coord+2);
- Real x1=*local_coord;
- Real y1=*(local_coord+1);
- Real x2=*(local_coord+2);
- Real y2=*(local_coord+3);
- Real tetha=std::atan((y2-y1)/(x2-x1));
- Real pi = std::atan(1.0)*4;
-
- if ((x2-x1) < 0) {
- tetha += pi;
- }
-
+inline void
+InterpolationElement<_itp_bernoulli_beam>::computeDNDS(const types::Vector<Real> & natural_coords,
+ types::Matrix<Real> & dnds,
+ const types::Matrix<Real> & real_nodes_coord,
+ UInt id) {
+ /// Compute the dimension of the beam
+ Real a = .5 * real_nodes_coord(0).distance(real_nodes_coord(1));
/// natural coordinate
- Real c = (*natural_coords)*a;
+ Real c = natural_coords(0)*a;
- /// Definition of the rotation matrix
- Real T[4];
- T[0]= cos(tetha);
- T[1]= sin(tetha);
- T[2]=-T[1];
- T[3]= T[0];
- // B archetype
- Real shape_deriv_arch[4];
switch (id) {
-
- case 0:
- shape_deriv_arch[0]=-0.5/a;
- shape_deriv_arch[1]= 0;
- shape_deriv_arch[2]= 0.5/a;
- shape_deriv_arch[3]= 0;
-
- Math::matrix_matrix(2,2,2,shape_deriv_arch,T,shape_deriv);
-
+ case 0: { // N'
+ dnds(0, 0) = -0.5/a;
+ dnds(0, 1) = 0.5/a;
break;
-
- case 1:
- shape_deriv_arch[0]= 0.;
- shape_deriv_arch[1]=-3.*c/(2.*pow(a,3));
- shape_deriv_arch[2]= 0.;
- shape_deriv_arch[3]= 3.*c/(2.*pow(a,3));
-
- Math::matrix_matrix(2,2,2,shape_deriv_arch,T,shape_deriv);
-
+ }
+ case 1: { // M''
+ dnds(0, 0) = -3.*c/(2.*pow(a,3));
+ dnds(0, 1) = 3.*c/(2.*pow(a,3));
break;
-
- case 2:
- shape_deriv[0]=-0.5/a*(3*c/a-1);
- shape_deriv[1]=-0.5/a*(3*c/a+1);
- shape_deriv[2]=0;
- shape_deriv[3]=0;
+ }
+ case 2: { // L''
+ dnds(0, 0) = -0.5/a * (3*c/a - 1);
+ dnds(0, 1) =- 0.5/a * (3*c/a + 1);
break;
}
-
-}
-
-/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_bernoulli_beam_2>::computeJacobian(const Real * coord,
- const UInt nb_points,
- __attribute__((unused)) const UInt dimension,
- Real * jac){
- Real a=0.5*Math::distance_2d(coord,coord+2);
-
- for (UInt p = 0; p < nb_points; ++p) {
- jac[p]=a;
}
}
/* -------------------------------------------------------------------------- */
-template<> inline Real ElementClass<_bernoulli_beam_2>::getInradius(const Real * coord) {
- return Math::distance_2d(coord, coord+2);
+template <>
+inline void
+ElementClass<_bernoulli_beam_2>::computeJacobian(const types::Matrix<Real> & natural_coord,
+ const types::Matrix<Real> & nodes_coords,
+ types::Vector<Real> & jac){
+ Real a = 0.5 * nodes_coords(0).distance(nodes_coords(1));
+ for (UInt i = 0; i < jac.size(); ++i) jac(i) = a;
}
/* -------------------------------------------------------------------------- */
+template <>
+inline void
+ElementClass<_bernoulli_beam_3>::computeJacobian(const types::Matrix<Real> & natural_coord,
+ const types::Matrix<Real> & nodes_coords,
+ types::Vector<Real> & jac){
+ Real a = 0.5 * nodes_coords(0).distance(nodes_coords(1));
+ for (UInt i = 0; i < jac.size(); ++i) jac(i) = a;
+}
diff --git a/src/fem/element_classes/element_class_hexahedron_8_inline_impl.cc b/src/fem/element_classes/element_class_hexahedron_8_inline_impl.cc
index 623fafbc4..d38963b47 100644
--- a/src/fem/element_classes/element_class_hexahedron_8_inline_impl.cc
+++ b/src/fem/element_classes/element_class_hexahedron_8_inline_impl.cc
@@ -1,213 +1,203 @@
/**
* @file element_class_hexahedron_8_inline_impl.cc
*
* @author Peter Spijker <peter.spijker@epfl.ch>
*
* @date Mon Mar 14 15:53:28 2011
*
* @brief Specialization of the element_class class for the type _hexahedron_8
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
* @section DESCRIPTION
*
* @verbatim
\zeta
^
(-1,1,1) | (1,1,1)
8---|------7
/| | /|
/ | | / |
(-1,-1,1) 5----------6 | (1,-1,1)
| | | | |
| | | | |
| | +---|-------> \xi
| | / | |
(-1,1,-1) | 4-/-----|--3 (1,1,-1)
| / / | /
|/ / |/
1-/--------2
(-1,-1,-1) / (1,-1,-1)
/
\eta
@endverbatim
*
* @subsection shapes Shape functions
* @f[
* \begin{array}{llll}
* N1 = (1 - \xi) (1 - \eta) (1 - \zeta) / 8
* & \frac{\partial N1}{\partial \xi} = - (1 - \eta) (1 - \zeta) / 8
* & \frac{\partial N1}{\partial \eta} = - (1 - \xi) (1 - \zeta) / 8
* & \frac{\partial N1}{\partial \zeta} = - (1 - \xi) (1 - \eta) / 8 \\
* N2 = (1 + \xi) (1 - \eta) (1 - \zeta) / 8
* & \frac{\partial N2}{\partial \xi} = (1 - \eta) (1 - \zeta) / 8
* & \frac{\partial N2}{\partial \eta} = - (1 + \xi) (1 - \zeta) / 8
* & \frac{\partial N2}{\partial \zeta} = - (1 + \xi) (1 - \eta) / 8 \\
* N3 = (1 + \xi) (1 + \eta) (1 - \zeta) / 8
* & \frac{\partial N3}{\partial \xi} = (1 + \eta) (1 - \zeta) / 8
* & \frac{\partial N3}{\partial \eta} = (1 + \xi) (1 - \zeta) / 8
* & \frac{\partial N3}{\partial \zeta} = - (1 + \xi) (1 + \eta) / 8 \\
* N4 = (1 - \xi) (1 + \eta) (1 - \zeta) / 8
* & \frac{\partial N4}{\partial \xi} = - (1 + \eta) (1 - \zeta) / 8
* & \frac{\partial N4}{\partial \eta} = (1 - \xi) (1 - \zeta) / 8
* & \frac{\partial N4}{\partial \zeta} = - (1 - \xi) (1 + \eta) / 8 \\
* N5 = (1 - \xi) (1 - \eta) (1 + \zeta) / 8
* & \frac{\partial N5}{\partial \xi} = - (1 - \eta) (1 + \zeta) / 8
* & \frac{\partial N5}{\partial \eta} = - (1 - \xi) (1 + \zeta) / 8
* & \frac{\partial N5}{\partial \zeta} = (1 - \xi) (1 - \eta) / 8 \\
* N6 = (1 + \xi) (1 - \eta) (1 + \zeta) / 8
* & \frac{\partial N6}{\partial \xi} = (1 - \eta) (1 + \zeta) / 8
* & \frac{\partial N6}{\partial \eta} = - (1 + \xi) (1 + \zeta) / 8
* & \frac{\partial N6}{\partial \zeta} = (1 + \xi) (1 - \eta) / 8 \\
* N7 = (1 + \xi) (1 + \eta) (1 + \zeta) / 8
* & \frac{\partial N7}{\partial \xi} = (1 + \eta) (1 + \zeta) / 8
* & \frac{\partial N7}{\partial \eta} = (1 + \xi) (1 + \zeta) / 8
* & \frac{\partial N7}{\partial \zeta} = (1 + \xi) (1 + \eta) / 8 \\
* N8 = (1 - \xi) (1 + \eta) (1 + \zeta) / 8
* & \frac{\partial N8}{\partial \xi} = - (1 + \eta) (1 + \zeta) / 8
* & \frac{\partial N8}{\partial \eta} = (1 - \xi) (1 + \zeta) / 8
* & \frac{\partial N8}{\partial \zeta} = (1 - \xi) (1 + \eta) / 8 \\
* \end{array}
* @f]
*
* @subsection quad_points Position of quadrature points
* @f{eqnarray*}{
* \xi_{q0} &=& -1/\sqrt{3} \qquad \eta_{q0} = -1/\sqrt{3} \qquad \zeta_{q0} = -1/\sqrt{3} \\
* \xi_{q1} &=& 1/\sqrt{3} \qquad \eta_{q1} = -1/\sqrt{3} \qquad \zeta_{q1} = -1/\sqrt{3} \\
* \xi_{q2} &=& 1/\sqrt{3} \qquad \eta_{q2} = 1/\sqrt{3} \qquad \zeta_{q2} = -1/\sqrt{3} \\
* \xi_{q3} &=& -1/\sqrt{3} \qquad \eta_{q3} = 1/\sqrt{3} \qquad \zeta_{q3} = -1/\sqrt{3} \\
* \xi_{q4} &=& -1/\sqrt{3} \qquad \eta_{q4} = -1/\sqrt{3} \qquad \zeta_{q4} = 1/\sqrt{3} \\
* \xi_{q5} &=& 1/\sqrt{3} \qquad \eta_{q5} = -1/\sqrt{3} \qquad \zeta_{q5} = 1/\sqrt{3} \\
* \xi_{q6} &=& 1/\sqrt{3} \qquad \eta_{q6} = 1/\sqrt{3} \qquad \zeta_{q6} = 1/\sqrt{3} \\
* \xi_{q7} &=& -1/\sqrt{3} \qquad \eta_{q7} = 1/\sqrt{3} \qquad \zeta_{q7} = 1/\sqrt{3} \\
* @f}
*/
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_hexahedron_8>::nb_nodes_per_element;
-template<> UInt ElementClass<_hexahedron_8>::nb_quadrature_points;
-template<> UInt ElementClass<_hexahedron_8>::spatial_dimension;
+// template<> UInt ElementClass<_hexahedron_8>::nb_nodes_per_element;
+// template<> UInt ElementClass<_hexahedron_8>::nb_quadrature_points;
+// template<> UInt ElementClass<_hexahedron_8>::spatial_dimension;
+AKANTU_DEFINE_ELEMENT_CLASS_PROPERTY(_hexahedron_8,
+ _gt_hexahedron_8,
+ _itp_lagrange_hexahedron_8,
+ _ek_regular,
+ 3);
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_hexahedron_8>::computeShapes(const Real * natural_coords,
- Real * shapes) {
+template <>
+inline void
+InterpolationElement<_itp_lagrange_hexahedron_8>::computeShapes(const types::Vector<Real> & c,
+ types::Vector<Real> & N) {
/// Natural coordinates
- const Real * c = natural_coords;
-
- shapes[0] = .125 * (1 - c[0]) * (1 - c[1]) * (1 - c[2]); /// N1(q_0)
- shapes[1] = .125 * (1 + c[0]) * (1 - c[1]) * (1 - c[2]); /// N2(q_0)
- shapes[2] = .125 * (1 + c[0]) * (1 + c[1]) * (1 - c[2]); /// N3(q_0)
- shapes[3] = .125 * (1 - c[0]) * (1 + c[1]) * (1 - c[2]); /// N4(q_0)
- shapes[4] = .125 * (1 - c[0]) * (1 - c[1]) * (1 + c[2]); /// N5(q_0)
- shapes[5] = .125 * (1 + c[0]) * (1 - c[1]) * (1 + c[2]); /// N6(q_0)
- shapes[6] = .125 * (1 + c[0]) * (1 + c[1]) * (1 + c[2]); /// N7(q_0)
- shapes[7] = .125 * (1 - c[0]) * (1 + c[1]) * (1 + c[2]); /// N8(q_0)
+ N(0) = .125 * (1 - c(0)) * (1 - c(1)) * (1 - c(2)); /// N1(q_0)
+ N(1) = .125 * (1 + c(0)) * (1 - c(1)) * (1 - c(2)); /// N2(q_0)
+ N(2) = .125 * (1 + c(0)) * (1 + c(1)) * (1 - c(2)); /// N3(q_0)
+ N(3) = .125 * (1 - c(0)) * (1 + c(1)) * (1 - c(2)); /// N4(q_0)
+ N(4) = .125 * (1 - c(0)) * (1 - c(1)) * (1 + c(2)); /// N5(q_0)
+ N(5) = .125 * (1 + c(0)) * (1 - c(1)) * (1 + c(2)); /// N6(q_0)
+ N(6) = .125 * (1 + c(0)) * (1 + c(1)) * (1 + c(2)); /// N7(q_0)
+ N(7) = .125 * (1 - c(0)) * (1 + c(1)) * (1 + c(2)); /// N8(q_0)
}
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_hexahedron_8>::computeDNDS(const Real * natural_coords,
- Real * dnds) {
-
+template <>
+inline void
+InterpolationElement<_itp_lagrange_hexahedron_8>::computeDNDS(const types::Vector<Real> & c,
+ types::Matrix<Real> & dnds) {
/**
* @f[
* dnds = \left(
* \begin{array}{cccccccc}
* \frac{\partial N1}{\partial \xi} & \frac{\partial N2}{\partial \xi}
* & \frac{\partial N3}{\partial \xi} & \frac{\partial N4}{\partial \xi}
* & \frac{\partial N5}{\partial \xi} & \frac{\partial N6}{\partial \xi}
* & \frac{\partial N7}{\partial \xi} & \frac{\partial N8}{\partial \xi}\\
* \frac{\partial N1}{\partial \eta} & \frac{\partial N2}{\partial \eta}
* & \frac{\partial N3}{\partial \eta} & \frac{\partial N4}{\partial \eta}
* & \frac{\partial N5}{\partial \eta} & \frac{\partial N6}{\partial \eta}
* & \frac{\partial N7}{\partial \eta} & \frac{\partial N8}{\partial \eta}\\
* \frac{\partial N1}{\partial \zeta} & \frac{\partial N2}{\partial \zeta}
* & \frac{\partial N3}{\partial \zeta} & \frac{\partial N4}{\partial \zeta}
* & \frac{\partial N5}{\partial \zeta} & \frac{\partial N6}{\partial \zeta}
* & \frac{\partial N7}{\partial \zeta} & \frac{\partial N8}{\partial \zeta}
* \end{array}
* \right)
* @f]
*/
+ dnds(0, 0) = - .125 * (1 - c(1)) * (1 - c(2));;
+ dnds(0, 1) = .125 * (1 - c(1)) * (1 - c(2));;
+ dnds(0, 2) = .125 * (1 + c(1)) * (1 - c(2));;
+ dnds(0, 3) = - .125 * (1 + c(1)) * (1 - c(2));;
+ dnds(0, 4) = - .125 * (1 - c(1)) * (1 + c(2));;
+ dnds(0, 5) = .125 * (1 - c(1)) * (1 + c(2));;
+ dnds(0, 6) = .125 * (1 + c(1)) * (1 + c(2));;
+ dnds(0, 7) = - .125 * (1 + c(1)) * (1 + c(2));;
- const Real * c = natural_coords;
-
- dnds[0] = - .125 * (1 - c[1]) * (1 - c[2]);;
- dnds[1] = .125 * (1 - c[1]) * (1 - c[2]);;
- dnds[2] = .125 * (1 + c[1]) * (1 - c[2]);;
- dnds[3] = - .125 * (1 + c[1]) * (1 - c[2]);;
- dnds[4] = - .125 * (1 - c[1]) * (1 + c[2]);;
- dnds[5] = .125 * (1 - c[1]) * (1 + c[2]);;
- dnds[6] = .125 * (1 + c[1]) * (1 + c[2]);;
- dnds[7] = - .125 * (1 + c[1]) * (1 + c[2]);;
-
- dnds[8] = - .125 * (1 - c[0]) * (1 - c[2]);;
- dnds[9] = - .125 * (1 + c[0]) * (1 - c[2]);;
- dnds[10] = .125 * (1 + c[0]) * (1 - c[2]);;
- dnds[11] = .125 * (1 - c[0]) * (1 - c[2]);;
- dnds[12] = - .125 * (1 - c[0]) * (1 + c[2]);;
- dnds[13] = - .125 * (1 + c[0]) * (1 + c[2]);;
- dnds[14] = .125 * (1 + c[0]) * (1 + c[2]);;
- dnds[15] = .125 * (1 - c[0]) * (1 + c[2]);;
-
- dnds[16] = - .125 * (1 - c[0]) * (1 - c[1]);;
- dnds[17] = - .125 * (1 + c[0]) * (1 - c[1]);;
- dnds[18] = - .125 * (1 + c[0]) * (1 + c[1]);;
- dnds[19] = - .125 * (1 - c[0]) * (1 + c[1]);;
- dnds[20] = .125 * (1 - c[0]) * (1 - c[1]);;
- dnds[21] = .125 * (1 + c[0]) * (1 - c[1]);;
- dnds[22] = .125 * (1 + c[0]) * (1 + c[1]);;
- dnds[23] = .125 * (1 - c[0]) * (1 + c[1]);;
-}
-
+ dnds(1, 0) = - .125 * (1 - c(0)) * (1 - c(2));;
+ dnds(1, 1) = - .125 * (1 + c(0)) * (1 - c(2));;
+ dnds(1, 2) = .125 * (1 + c(0)) * (1 - c(2));;
+ dnds(1, 3) = .125 * (1 - c(0)) * (1 - c(2));;
+ dnds(1, 4) = - .125 * (1 - c(0)) * (1 + c(2));;
+ dnds(1, 5) = - .125 * (1 + c(0)) * (1 + c(2));;
+ dnds(1, 6) = .125 * (1 + c(0)) * (1 + c(2));;
+ dnds(1, 7) = .125 * (1 - c(0)) * (1 + c(2));;
-/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_hexahedron_8>::computeJacobian(const Real * dxds,
- const UInt dimension,
- Real & jac){
- if (dimension == spatial_dimension){
- Real det_dxds = Math::det3(dxds);
- jac = det_dxds;
- } else {
- AKANTU_DEBUG_TO_IMPLEMENT();
- }
+ dnds(2, 0) = - .125 * (1 - c(0)) * (1 - c(1));;
+ dnds(2, 1) = - .125 * (1 + c(0)) * (1 - c(1));;
+ dnds(2, 2) = - .125 * (1 + c(0)) * (1 + c(1));;
+ dnds(2, 3) = - .125 * (1 - c(0)) * (1 + c(1));;
+ dnds(2, 4) = .125 * (1 - c(0)) * (1 - c(1));;
+ dnds(2, 5) = .125 * (1 + c(0)) * (1 - c(1));;
+ dnds(2, 6) = .125 * (1 + c(0)) * (1 + c(1));;
+ dnds(2, 7) = .125 * (1 - c(0)) * (1 + c(1));;
}
-
-
/* -------------------------------------------------------------------------- */
-template<> inline Real ElementClass<_hexahedron_8>::getInradius(const Real * coord) {
- Real a = Math::distance_3d(coord + 0, coord + 3);
- Real b = Math::distance_3d(coord + 3, coord + 6);
- Real c = Math::distance_3d(coord + 6, coord + 9);
- Real d = Math::distance_3d(coord + 9, coord + 0);
- Real e = Math::distance_3d(coord + 0, coord + 12);
- Real f = Math::distance_3d(coord + 3, coord + 15);
- Real g = Math::distance_3d(coord + 6, coord + 18);
- Real h = Math::distance_3d(coord + 9, coord + 21);
- Real i = Math::distance_3d(coord + 12, coord + 15);
- Real j = Math::distance_3d(coord + 15, coord + 18);
- Real k = Math::distance_3d(coord + 18, coord + 21);
- Real l = Math::distance_3d(coord + 21, coord + 12);
+template<>
+inline Real
+GeometricalElement<_gt_hexahedron_8>::getInradius(const types::Matrix<Real> & coord) {
+ Real a = coord(0).distance(coord(1));
+ Real b = coord(1).distance(coord(2));
+ Real c = coord(2).distance(coord(3));
+ Real d = coord(3).distance(coord(0));
+ Real e = coord(0).distance(coord(4));
+ Real f = coord(1).distance(coord(5));
+ Real g = coord(2).distance(coord(6));
+ Real h = coord(3).distance(coord(7));
+ Real i = coord(4).distance(coord(5));
+ Real j = coord(5).distance(coord(6));
+ Real k = coord(6).distance(coord(7));
+ Real l = coord(7).distance(coord(4));
Real x = std::min(a, std::min(b, std::min(c, d)));
Real y = std::min(e, std::min(f, std::min(g, h)));
Real z = std::min(i, std::min(j, std::min(k, l)));
Real p = std::min(x, std::min(y, z));
return p;
}
diff --git a/src/fem/element_classes/element_class_quadrangle_4_inline_impl.cc b/src/fem/element_classes/element_class_quadrangle_4_inline_impl.cc
index 47754b13d..1df39137f 100644
--- a/src/fem/element_classes/element_class_quadrangle_4_inline_impl.cc
+++ b/src/fem/element_classes/element_class_quadrangle_4_inline_impl.cc
@@ -1,158 +1,133 @@
/**
* @file element_class_quadrangle_4_inline_impl.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Mon Dec 13 10:45:15 2010
*
* @brief Specialization of the element_class class for the type _quadrangle_4
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
* @section DESCRIPTION
*
* @verbatim
\eta
^
(-1,1) | (1,1)
x---------x
| | |
| | |
--|---------|-----> \xi
| | |
| | |
x---------x
(-1,-1) | (1,-1)
@endverbatim
*
* @subsection shapes Shape functions
* @f[
* \begin{array}{lll}
* N1 = (1 - \xi) (1 - \eta) / 4
* & \frac{\partial N1}{\partial \xi} = - (1 - \eta) / 4
* & \frac{\partial N1}{\partial \eta} = - (1 - \xi) / 4 \\
* N2 = (1 + \xi) (1 - \eta) / 4 \\
* & \frac{\partial N2}{\partial \xi} = (1 - \eta) / 4
* & \frac{\partial N2}{\partial \eta} = - (1 + \xi) / 4 \\
* N3 = (1 + \xi) (1 + \eta) / 4 \\
* & \frac{\partial N3}{\partial \xi} = (1 + \eta) / 4
* & \frac{\partial N3}{\partial \eta} = (1 + \xi) / 4 \\
* N4 = (1 - \xi) (1 + \eta) / 4
* & \frac{\partial N4}{\partial \xi} = - (1 + \eta) / 4
* & \frac{\partial N4}{\partial \eta} = (1 - \xi) / 4 \\
* \end{array}
* @f]
*
* @subsection quad_points Position of quadrature points
* @f{eqnarray*}{
* \xi_{q0} &=& 0 \qquad \eta_{q0} = 0
* @f}
*/
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_quadrangle_4>::nb_nodes_per_element;
-template<> UInt ElementClass<_quadrangle_4>::nb_quadrature_points;
-template<> UInt ElementClass<_quadrangle_4>::spatial_dimension;
+// template<> UInt ElementClass<_quadrangle_4>::nb_nodes_per_element;
+// template<> UInt ElementClass<_quadrangle_4>::nb_quadrature_points;
+// template<> UInt ElementClass<_quadrangle_4>::spatial_dimension;
+AKANTU_DEFINE_ELEMENT_CLASS_PROPERTY(_quadrangle_4, _gt_quadrangle_4, _itp_lagrange_quadrangle_4, _ek_regular, 2);
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_quadrangle_4>::computeShapes(const Real * natural_coords,
- Real * shapes) {
- /// Natural coordinates
- const Real * c = natural_coords;
-
- shapes[0] = .25 * (1 - c[0]) * (1 - c[1]); /// N1(q_0)
- shapes[1] = .25 * (1 + c[0]) * (1 - c[1]); /// N2(q_0)
- shapes[2] = .25 * (1 + c[0]) * (1 + c[1]); /// N3(q_0)
- shapes[3] = .25 * (1 - c[0]) * (1 + c[1]); /// N4(q_0)
+template <>
+inline void
+InterpolationElement<_itp_lagrange_quadrangle_4>::computeShapes(const types::Vector<Real> & c,
+ types::Vector<Real> & N) {
+ N(0) = .25 * (1 - c(0)) * (1 - c(1)); /// N1(q_0)
+ N(1) = .25 * (1 + c(0)) * (1 - c(1)); /// N2(q_0)
+ N(2) = .25 * (1 + c(0)) * (1 + c(1)); /// N3(q_0)
+ N(3) = .25 * (1 - c(0)) * (1 + c(1)); /// N4(q_0)
}
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_quadrangle_4>::computeDNDS(const Real * natural_coords,
- Real * dnds) {
-
+template <>
+inline void
+InterpolationElement<_itp_lagrange_quadrangle_4>::computeDNDS(const types::Vector<Real> & c,
+ types::Matrix<Real> & dnds) {
/**
* @f[
* dnds = \left(
* \begin{array}{cccc}
* \frac{\partial N1}{\partial \xi} & \frac{\partial N2}{\partial \xi}
* & \frac{\partial N3}{\partial \xi} & \frac{\partial N4}{\partial \xi}\\
* \frac{\partial N1}{\partial \eta} & \frac{\partial N2}{\partial \eta}
* & \frac{\partial N3}{\partial \eta} & \frac{\partial N4}{\partial \eta}
* \end{array}
* \right)
* @f]
*/
- const Real * c = natural_coords;
+ dnds(0, 0) = - .25 * (1 - c(1));
+ dnds(0, 1) = .25 * (1 - c(1));
+ dnds(0, 2) = .25 * (1 + c(1));
+ dnds(0, 3) = - .25 * (1 + c(1));
- dnds[0] = - .25 * (1 - c[1]);
- dnds[1] = .25 * (1 - c[1]);
- dnds[2] = .25 * (1 + c[1]);
- dnds[3] = - .25 * (1 + c[1]);
-
- dnds[4] = - .25 * (1 - c[0]);
- dnds[5] = - .25 * (1 + c[0]);
- dnds[6] = .25 * (1 + c[0]);
- dnds[7] = .25 * (1 - c[0]);
-}
-
-
-/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_quadrangle_4>::computeJacobian(const Real * dxds,
- const UInt dimension,
- Real & jac){
- if (dimension == spatial_dimension){
- Real det_dxds = Math::det2(dxds);
- jac = det_dxds;
- } else {
- AKANTU_DEBUG_TO_IMPLEMENT();
- }
+ dnds(1, 0) = - .25 * (1 - c(0));
+ dnds(1, 1) = - .25 * (1 + c(0));
+ dnds(1, 2) = .25 * (1 + c(0));
+ dnds(1, 3) = .25 * (1 - c(0));
}
-
-
/* -------------------------------------------------------------------------- */
-template<> inline Real ElementClass<_quadrangle_4>::getInradius(const Real * coord) {
- Real a = Math::distance_2d(coord + 0, coord + 2);
- Real b = Math::distance_2d(coord + 2, coord + 4);
- Real c = Math::distance_2d(coord + 4, coord + 6);
- Real d = Math::distance_2d(coord + 6, coord + 0);
+template<>
+inline Real
+GeometricalElement<_gt_quadrangle_4>::getInradius(const types::Matrix<Real> & coord) {
+ Real a = coord(0).distance(coord(1));
+ Real b = coord(1).distance(coord(2));
+ Real c = coord(2).distance(coord(3));
+ Real d = coord(3).distance(coord(0));
// Real septimetre = (a + b + c + d) / 2.;
// Real p = Math::distance_2d(coord + 0, coord + 4);
// Real q = Math::distance_2d(coord + 2, coord + 6);
// Real area = sqrt(4*(p*p * q*q) - (a*a + b*b + c*c + d*d)*(a*a + c*c - b*b - d*d)) / 4.;
// Real h = sqrt(area); // to get a length
// Real h = area / septimetre; // formula of inradius for circumscritable quadrelateral
Real h = std::min(a, std::min(b, std::min(c, d)));
return h;
}
-
-/* -------------------------------------------------------------------------- */
-
-template<> inline bool ElementClass<_quadrangle_4>::contains(const types::RVector & natural_coords) {
- if (natural_coords[0] < -1.) return false;
- if (natural_coords[0] > 1.) return false;
- if (natural_coords[1] < -1.) return false;
- if (natural_coords[1] > 1.) return false;
- return true;
-}
-/* -------------------------------------------------------------------------- */
diff --git a/src/fem/element_classes/element_class_quadrangle_8_inline_impl.cc b/src/fem/element_classes/element_class_quadrangle_8_inline_impl.cc
index 354262f0c..931effeea 100644
--- a/src/fem/element_classes/element_class_quadrangle_8_inline_impl.cc
+++ b/src/fem/element_classes/element_class_quadrangle_8_inline_impl.cc
@@ -1,171 +1,164 @@
/**
* @file element_class_quadrangle_8_inline_impl.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Wed May 18 13:27:32 2011
*
* @brief Specialization of the ElementClass for the _quadrangle_8
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
* @section DESCRIPTION
*
* @verbatim
\eta
^
|
(-1,1) (0,1) (1,1)
x-------x-------x
| | |
| | |
| | |
(-1,0)| | |(1,0)
----x---------------X-----> \xi
| | |
| | |
| | |
| | |
x-------x-------x
(-1,-1) (0,-1) (1,-1)
|
@endverbatim
*
* @subsection shapes Shape functions
* @f[
* \begin{array}{lll}
* N1 = (1 - \xi) (1 - \eta)(- 1 - \xi - \eta) / 4
* & \frac{\partial N1}{\partial \xi} = (1 - \eta)(2 \xi + \eta) / 4
* & \frac{\partial N1}{\partial \eta} = (1 - \xi)(\xi + 2 \eta) / 4 \\
* N2 = (1 + \xi) (1 - \eta)(- 1 + \xi - \eta) / 4 \\
* & \frac{\partial N2}{\partial \xi} = (1 - \eta)(2 \xi - \eta) / 4
* & \frac{\partial N2}{\partial \eta} = - (1 + \xi)(\xi - 2 \eta) / 4 \\
* N3 = (1 + \xi) (1 + \eta)(- 1 + \xi + \eta) / 4 \\
* & \frac{\partial N3}{\partial \xi} = (1 + \eta)(2 \xi + \eta) / 4
* & \frac{\partial N3}{\partial \eta} = (1 + \xi)(\xi + 2 \eta) / 4 \\
* N4 = (1 - \xi) (1 + \eta)(- 1 - \xi + \eta) / 4
* & \frac{\partial N4}{\partial \xi} = (1 + \eta)(2 \xi - \eta) / 4
* & \frac{\partial N4}{\partial \eta} = - (1 - \xi)(\xi - 2 \eta) / 4 \\
* N5 = (1 - \xi^2) (1 - \eta) / 2
* & \frac{\partial N1}{\partial \xi} = - \xi (1 - \eta)
* & \frac{\partial N1}{\partial \eta} = - (1 - \xi^2) / 2 \\
* N6 = (1 + \xi) (1 - \eta^2) / 2 \\
* & \frac{\partial N2}{\partial \xi} = (1 - \eta^2) / 2
* & \frac{\partial N2}{\partial \eta} = - \eta (1 + \xi) \\
* N7 = (1 - \xi^2) (1 + \eta) / 2 \\
* & \frac{\partial N3}{\partial \xi} = - \xi (1 + \eta)
* & \frac{\partial N3}{\partial \eta} = (1 - \xi^2) / 2 \\
* N8 = (1 - \xi) (1 - \eta^2) / 2
* & \frac{\partial N4}{\partial \xi} = - (1 - \eta^2) / 2
* & \frac{\partial N4}{\partial \eta} = - \eta (1 - \xi) \\
* \end{array}
* @f]
*
* @subsection quad_points Position of quadrature points
* @f{eqnarray*}{
* \xi_{q0} &=& 0 \qquad \eta_{q0} = 0
* @f}
*/
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_quadrangle_8>::nb_nodes_per_element;
-template<> UInt ElementClass<_quadrangle_8>::nb_quadrature_points;
-template<> UInt ElementClass<_quadrangle_8>::spatial_dimension;
+// template<> UInt ElementClass<_quadrangle_8>::nb_nodes_per_element;
+// template<> UInt ElementClass<_quadrangle_8>::nb_quadrature_points;
+// template<> UInt ElementClass<_quadrangle_8>::spatial_dimension;
+
+AKANTU_DEFINE_ELEMENT_CLASS_PROPERTY(_quadrangle_8, _gt_quadrangle_8, _itp_serendip_quadrangle_8, _ek_regular, 2);
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_quadrangle_8>::computeShapes(const Real * natural_coords,
- Real * shapes) {
+template <>
+inline void
+InterpolationElement<_itp_serendip_quadrangle_8>::computeShapes(const types::Vector<Real> & c,
+ types::Vector<Real> & N) {
/// Natural coordinates
- const Real xi = natural_coords[0];
- const Real eta = natural_coords[1];
-
- shapes[0] = .25 * (1 - xi) * (1 - eta) * (- 1 - xi - eta);
- shapes[1] = .25 * (1 + xi) * (1 - eta) * (- 1 + xi - eta);
- shapes[2] = .25 * (1 + xi) * (1 + eta) * (- 1 + xi + eta);
- shapes[3] = .25 * (1 - xi) * (1 + eta) * (- 1 - xi + eta);
- shapes[4] = .5 * (1 - xi * xi) * (1 - eta );
- shapes[5] = .5 * (1 + xi ) * (1 - eta * eta);
- shapes[6] = .5 * (1 - xi * xi) * (1 + eta );
- shapes[7] = .5 * (1 - xi ) * (1 - eta * eta);
+ const Real xi = c(0);
+ const Real eta = c(1);
+
+ N(0) = .25 * (1 - xi) * (1 - eta) * (- 1 - xi - eta);
+ N(1) = .25 * (1 + xi) * (1 - eta) * (- 1 + xi - eta);
+ N(2) = .25 * (1 + xi) * (1 + eta) * (- 1 + xi + eta);
+ N(3) = .25 * (1 - xi) * (1 + eta) * (- 1 - xi + eta);
+ N(4) = .5 * (1 - xi * xi) * (1 - eta );
+ N(5) = .5 * (1 + xi ) * (1 - eta * eta);
+ N(6) = .5 * (1 - xi * xi) * (1 + eta );
+ N(7) = .5 * (1 - xi ) * (1 - eta * eta);
}
+
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_quadrangle_8>::computeDNDS(const Real * natural_coords,
- Real * dnds) {
- const Real xi = natural_coords[0];
- const Real eta = natural_coords[1];
+template <>
+inline void
+InterpolationElement<_itp_serendip_quadrangle_8>::computeDNDS(const types::Vector<Real> & c,
+ types::Matrix<Real> & dnds) {
+ const Real xi = c(0);
+ const Real eta = c(1);
/// dN/dxi
- dnds[0] = .25 * (1 - eta) * (2 * xi + eta);
- dnds[1] = .25 * (1 - eta) * (2 * xi - eta);
- dnds[2] = .25 * (1 + eta) * (2 * xi + eta);
- dnds[3] = .25 * (1 + eta) * (2 * xi - eta);
- dnds[4] = - xi * (1 - eta);
- dnds[5] = .5 * (1 - eta * eta);
- dnds[6] = - xi * (1 + eta);
- dnds[7] = - .5 * (1 - eta * eta);
+ dnds(0, 0) = .25 * (1 - eta) * (2 * xi + eta);
+ dnds(0, 1) = .25 * (1 - eta) * (2 * xi - eta);
+ dnds(0, 2) = .25 * (1 + eta) * (2 * xi + eta);
+ dnds(0, 3) = .25 * (1 + eta) * (2 * xi - eta);
+ dnds(0, 4) = - xi * (1 - eta);
+ dnds(0, 5) = .5 * (1 - eta * eta);
+ dnds(0, 6) = - xi * (1 + eta);
+ dnds(0, 7) = - .5 * (1 - eta * eta);
/// dN/deta
- dnds[8] = .25 * (1 - xi) * (2 * eta + xi);
- dnds[9] = .25 * (1 + xi) * (2 * eta - xi);
- dnds[10] = .25 * (1 + xi) * (2 * eta + xi);
- dnds[11] = .25 * (1 - xi) * (2 * eta - xi);
- dnds[12] = - .5 * (1 - xi * xi);
- dnds[13] = - eta * (1 + xi);
- dnds[14] = .5 * (1 - xi * xi);
- dnds[15] = - eta * (1 - xi);
-}
-
-
-/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_quadrangle_8>::computeJacobian(const Real * dxds,
- const UInt dimension,
- Real & jac){
- if (dimension == spatial_dimension){
- Real det_dxds = Math::det2(dxds);
- jac = det_dxds;
- } else {
- AKANTU_DEBUG_TO_IMPLEMENT();
- }
+ dnds(1, 0) = .25 * (1 - xi) * (2 * eta + xi);
+ dnds(1, 1) = .25 * (1 + xi) * (2 * eta - xi);
+ dnds(1, 2) = .25 * (1 + xi) * (2 * eta + xi);
+ dnds(1, 3) = .25 * (1 - xi) * (2 * eta - xi);
+ dnds(1, 4) = - .5 * (1 - xi * xi);
+ dnds(1, 5) = - eta * (1 + xi);
+ dnds(1, 6) = .5 * (1 - xi * xi);
+ dnds(1, 7) = - eta * (1 - xi);
}
-
-
/* -------------------------------------------------------------------------- */
-template<> inline Real ElementClass<_quadrangle_8>::getInradius(const Real * coord) {
+template<>
+inline Real
+GeometricalElement<_gt_quadrangle_8>::getInradius(const types::Matrix<Real> & coord) {
Real a, b, h;
- a = Math::distance_2d(coord + 0*2, coord + 4*2);
- b = Math::distance_2d(coord + 4*2, coord + 1*2);
+ a = coord(0).distance(coord(4));
+ b = coord(4).distance(coord(1));
h = std::min(a, b);
- a = Math::distance_2d(coord + 1*2, coord + 5*2);
- b = Math::distance_2d(coord + 5*2, coord + 2*2);
+ a = coord(1).distance(coord(5));
+ b = coord(5).distance(coord(2));
h = std::min(h, std::min(a, b));
- a = Math::distance_2d(coord + 2*2, coord + 6*2);
- b = Math::distance_2d(coord + 6*2, coord + 3*2);
+ a = coord(2).distance(coord(6));
+ b = coord(6).distance(coord(3));
h = std::min(h, std::min(a, b));
- a = Math::distance_2d(coord + 3*2, coord + 7*2);
- b = Math::distance_2d(coord + 7*2, coord + 0*2);
+ a = coord(3).distance(coord(7));
+ b = coord(7).distance(coord(0));
h = std::min(h, std::min(a, b));
-
return h;
}
diff --git a/src/fem/element_classes/element_class_segment_2_inline_impl.cc b/src/fem/element_classes/element_class_segment_2_inline_impl.cc
index 798a8a72d..2a8ac14cd 100644
--- a/src/fem/element_classes/element_class_segment_2_inline_impl.cc
+++ b/src/fem/element_classes/element_class_segment_2_inline_impl.cc
@@ -1,103 +1,101 @@
/**
* @file element_class_segment_2_inline_impl.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Jul 16 09:09:21 2010
*
* @brief Specialization of the element_class class for the type _segment_2
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
* @section DESCRIPTION
*
* @verbatim
q
--x--------|--------x---> x
-1 0 1
@endverbatim
*
* @subsection shapes Shape functions
* @f{eqnarray*}{
* w_1(x) &=& 1/2(1 - x) \\
* w_2(x) &=& 1/2(1 + x)
* @f}
*
* @subsection quad_points Position of quadrature points
* @f{eqnarray*}{
* x_{q} &=& 0
* @f}
*/
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_segment_2>::nb_nodes_per_element;
-template<> UInt ElementClass<_segment_2>::nb_quadrature_points;
-template<> UInt ElementClass<_segment_2>::spatial_dimension;
-
+// template<> UInt InterpolationElement<_itp_lagrange_segment_2>::nb_nodes_per_element;
+// template<> UInt ElementClass<_segment_2>::nb_quadrature_points;
+// template<> UInt ElementClass<_segment_2>::spatial_dimension;
+AKANTU_DEFINE_ELEMENT_CLASS_PROPERTY(_segment_2, _gt_segment_2, _itp_lagrange_segment_2, _ek_regular, 1);
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_segment_2>::computeShapes(const Real * natural_coords,
- Real * shapes){
+template <>
+inline void
+InterpolationElement<_itp_lagrange_segment_2>::computeShapes(const types::Vector<Real> & natural_coords,
+ types::Vector<Real> & N) {
/// natural coordinate
- Real c = natural_coords[0];
+ Real c = natural_coords(0);
/// shape functions
- shapes[0] = 0.5*(1-c);
- shapes[1] =0.5*(1+c);
+ N(0) = 0.5*(1-c);
+ N(1) = 0.5*(1+c);
}
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_segment_2>::computeDNDS(__attribute__ ((unused))
- const Real * natural_coords,
- Real * dnds){
+template <> inline void
+InterpolationElement<_itp_lagrange_segment_2>::computeDNDS(__attribute__ ((unused)) const types::Vector<Real> & natural_coords,
+ types::Matrix<Real> & dnds){
/// dN1/de
- dnds[0] = - .5;
+ dnds(0, 0) = - .5;
/// dN2/de
- dnds[1] = .5;
+ dnds(0, 1) = .5;
}
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_segment_2>::computeJacobian(const Real * dxds,
- const UInt dimension,
- Real & jac){
-
- if (dimension == spatial_dimension){
- jac = dxds[0];
- }
- else {
- jac = Math::norm2(dxds);
- }
+template <>
+inline void
+InterpolationElement<_itp_lagrange_segment_2>::computeSpecialJacobian(const types::Matrix<Real> & dxds,
+ Real & jac) {
+ jac = Math::norm2(dxds.storage());
}
/* -------------------------------------------------------------------------- */
-template<> inline Real ElementClass<_segment_2>::getInradius(const Real * coord) {
- return sqrt((coord[0] - coord[1])*(coord[0] - coord[1]));
+template<>
+inline Real
+GeometricalElement<_gt_segment_2>::getInradius(const types::Matrix<Real> & coord) {
+ return std::abs(coord(0, 0) - coord(0, 1));
}
-/* -------------------------------------------------------------------------- */
-
-template<> inline bool ElementClass<_segment_2>::contains(const types::RVector & natural_coords) {
- if (natural_coords[0] < -1.) return false;
- if (natural_coords[0] > 1.) return false;
- return true;
-}
+// /* -------------------------------------------------------------------------- */
+// template<> inline bool ElementClass<_segment_2>::contains(const types::RVector & natural_coords) {
+// if (natural_coords(0) < -1.) return false;
+// if (natural_coords(0) > 1.) return false;
+// return true;
+// }
/* -------------------------------------------------------------------------- */
diff --git a/src/fem/element_classes/element_class_segment_3_inline_impl.cc b/src/fem/element_classes/element_class_segment_3_inline_impl.cc
index 954cdf945..2c56c4525 100644
--- a/src/fem/element_classes/element_class_segment_3_inline_impl.cc
+++ b/src/fem/element_classes/element_class_segment_3_inline_impl.cc
@@ -1,103 +1,103 @@
/**
* @file element_class_segment_3_inline_impl.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Jul 16 09:09:21 2010
*
* @brief Specialization of the element_class class for the type _segment_3
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
* @section DESCRIPTION
*
* @verbatim
-1 0 1
-----x---------x---------x-----> x
1 3 2
@endverbatim
*
* @subsection coords Nodes coordinates
*
* @f[
* \begin{array}{lll}
* x_{1} = -1 & x_{2} = 1 & x_{3} = 0
* \end{array}
* @f]
*
* @subsection shapes Shape functions
* @f[
* \begin{array}{ll}
* w_1(x) = \frac{x}{2}(x - 1) & w'_1(x) = x - \frac{1}{2}\\
* w_2(x) = \frac{x}{2}(x + 1) & w'_2(x) = x + \frac{1}{2}\\
* w_3(x) = 1-x^2 & w'_3(x) = -2x
* \end{array}
* @f]
*
* @subsection quad_points Position of quadrature points
* @f[
* \begin{array}{ll}
* x_{q1} = -1/\sqrt{3} & x_{q2} = 1/\sqrt{3}
* \end{array}
* @f]
*/
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_segment_3>::nb_nodes_per_element;
-template<> UInt ElementClass<_segment_3>::nb_quadrature_points;
-template<> UInt ElementClass<_segment_3>::spatial_dimension;
-
-
+// template<> UInt ElementClass<_segment_3>::nb_nodes_per_element;
+// template<> UInt ElementClass<_segment_3>::nb_quadrature_points;
+// template<> UInt ElementClass<_segment_3>::spatial_dimension;
+AKANTU_DEFINE_ELEMENT_CLASS_PROPERTY(_segment_3, _gt_segment_3, _itp_lagrange_segment_3, _ek_regular, 1);
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_segment_3>::computeShapes(const Real * natural_coords,
- Real * shapes){
- Real c = natural_coords[0];
- shapes[0] = (c - 1) * c / 2;
- shapes[1] = (c + 1) * c / 2;
- shapes[2] = 1 - c * c;
+template <>
+inline void
+InterpolationElement<_itp_lagrange_segment_3>::computeShapes(const types::Vector<Real> & natural_coords,
+ types::Vector<Real> & N) {
+ Real c = natural_coords(0);
+ N(0) = (c - 1) * c / 2;
+ N(1) = (c + 1) * c / 2;
+ N(2) = 1 - c * c;
}
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_segment_3>::computeDNDS(const Real * natural_coords,
- Real * dnds){
+template <>
+inline void
+InterpolationElement<_itp_lagrange_segment_3>::computeDNDS(const types::Vector<Real> & natural_coords,
+ types::Matrix<Real> & dnds){
- Real c = natural_coords[0];
- dnds[0] = c - .5;
- dnds[1] = c + .5;
- dnds[2] = -2 * c;
+ Real c = natural_coords(0);
+ dnds(0, 0) = c - .5;
+ dnds(0, 1) = c + .5;
+ dnds(0, 2) = -2 * c;
}
-
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_segment_3>::computeJacobian(const Real * dxds,
- const UInt dimension,
- Real & jac){
- if (dimension == spatial_dimension){
- jac = dxds[0];
- } else {
- jac = Math::norm2(dxds);
- }
+template <>
+inline void
+InterpolationElement<_itp_lagrange_segment_3>::computeSpecialJacobian(const types::Matrix<Real> & dxds,
+ Real & jac) {
+ jac = Math::norm2(dxds.storage());
}
/* -------------------------------------------------------------------------- */
-template<> inline Real ElementClass<_segment_3>::getInradius(const Real * coord) {
- Real dist1 = sqrt((coord[0] - coord[1])*(coord[0] - coord[1]));
- Real dist2 = sqrt((coord[1] - coord[2])*(coord[1] - coord[2]));
- return dist1 < dist2 ? dist1 : dist2;
+template<> inline Real
+GeometricalElement<_gt_segment_3>::getInradius(const types::Matrix<Real> & coord) {
+ Real dist1 = std::abs(coord(0, 0) - coord(0, 1));
+ Real dist2 = std::abs(coord(0, 1) - coord(0, 2));
+ return std::min(dist1, dist2);
}
diff --git a/src/fem/element_classes/element_class_tetrahedron_10_inline_impl.cc b/src/fem/element_classes/element_class_tetrahedron_10_inline_impl.cc
index 12cf81f4a..ceda8d2c6 100644
--- a/src/fem/element_classes/element_class_tetrahedron_10_inline_impl.cc
+++ b/src/fem/element_classes/element_class_tetrahedron_10_inline_impl.cc
@@ -1,270 +1,261 @@
/**
* @file element_class_tetrahedron_10_inline_impl.cc
*
* @author Peter Spijker <peter.spijker@epfl.ch>
*
* @date Fri Jul 16 09:09:21 2010
*
* @brief Specialization of the element_class class for the type _tetrahedron_10
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
* @section DESCRIPTION
*
* @verbatim
- \zeta
- ^
- |
- (0,0,1)
- x
- |` .
- | ` .
- | ` .
- | ` . (0,0.5,0.5)
- | ` x.
- | q4 o ` . \eta
- | ` . -,
-(0,0,0.5) x ` x (0.5,0,0.5) -
- | ` x-(0,1,0)
- | q3 o` - '
- | (0,0.5,0) - ` '
- | x- ` x (0.5,0.5,0)
- | q1 o - o q2` '
- | - ` '
- | - ` '
- x---------------x--------------` x-----> \xi
- (0,0,0) (0.5,0,0) (1,0,0)
+ \zeta
+ ^
+ |
+ (0,0,1)
+ x
+ |` .
+ | ` .
+ | ` .
+ | ` . (0,0.5,0.5)
+ | ` x.
+ | q4 o ` . \eta
+ | ` . -,
+ (0,0,0.5) x ` x (0.5,0,0.5) -
+ | ` x-(0,1,0)
+ | q3 o` - '
+ | (0,0.5,0) - ` '
+ | x- ` x (0.5,0.5,0)
+ | q1 o - o q2` '
+ | - ` '
+ | - ` '
+ x---------------x--------------` x-----> \xi
+ (0,0,0) (0.5,0,0) (1,0,0)
@endverbatim
*
* @subsection coords Nodes coordinates
*
* @f[
* \begin{array}{lll}
* \xi_{0} = 0 & \eta_{0} = 0 & \zeta_{0} = 0 \\
* \xi_{1} = 1 & \eta_{1} = 0 & \zeta_{1} = 0 \\
* \xi_{2} = 0 & \eta_{2} = 1 & \zeta_{2} = 0 \\
* \xi_{3} = 0 & \eta_{3} = 0 & \zeta_{3} = 1 \\
* \xi_{4} = 1/2 & \eta_{4} = 0 & \zeta_{4} = 0 \\
* \xi_{5} = 1/2 & \eta_{5} = 1/2 & \zeta_{5} = 0 \\
* \xi_{6} = 0 & \eta_{6} = 1/2 & \zeta_{6} = 0 \\
* \xi_{7} = 0 & \eta_{7} = 0 & \zeta_{7} = 1/2 \\
* \xi_{8} = 1/2 & \eta_{8} = 0 & \zeta_{8} = 1/2 \\
* \xi_{9} = 0 & \eta_{9} = 1/2 & \zeta_{9} = 1/2
* \end{array}
* @f]
*
* @subsection shapes Shape functions
* @f[
* \begin{array}{llll}
* N1 = (1 - \xi - \eta - \zeta) (1 - 2 \xi - 2 \eta - 2 \zeta)
* & \frac{\partial N1}{\partial \xi} = 4 \xi + 4 \eta + 4 \zeta - 3
* & \frac{\partial N1}{\partial \eta} = 4 \xi + 4 \eta + 4 \zeta - 3
* & \frac{\partial N1}{\partial \zeta} = 4 \xi + 4 \eta + 4 \zeta - 3 \\
* N2 = \xi (2 \xi - 1)
* & \frac{\partial N2}{\partial \xi} = 4 \xi - 1
* & \frac{\partial N2}{\partial \eta} = 0
* & \frac{\partial N2}{\partial \zeta} = 0 \\
* N3 = \eta (2 \eta - 1)
* & \frac{\partial N3}{\partial \xi} = 0
* & \frac{\partial N3}{\partial \eta} = 4 \eta - 1
* & \frac{\partial N3}{\partial \zeta} = 0 \\
* N4 = \zeta (2 \zeta - 1)
* & \frac{\partial N4}{\partial \xi} = 0
* & \frac{\partial N4}{\partial \eta} = 0
* & \frac{\partial N4}{\partial \zeta} = 4 \zeta - 1 \\
* N5 = 4 \xi (1 - \xi - \eta - \zeta)
* & \frac{\partial N5}{\partial \xi} = 4 - 8 \xi - 4 \eta - 4 \zeta
* & \frac{\partial N5}{\partial \eta} = -4 \xi
* & \frac{\partial N5}{\partial \zeta} = -4 \xi \\
* N6 = 4 \xi \eta
* & \frac{\partial N6}{\partial \xi} = 4 \eta
* & \frac{\partial N6}{\partial \eta} = 4 \xi
* & \frac{\partial N6}{\partial \zeta} = 0 \\
* N7 = 4 \eta (1 - \xi - \eta - \zeta)
* & \frac{\partial N7}{\partial \xi} = -4 \eta
* & \frac{\partial N7}{\partial \eta} = 4 - 4 \xi - 8 \eta - 4 \zeta
* & \frac{\partial N7}{\partial \zeta} = -4 \eta \\
* N8 = 4 \zeta (1 - \xi - \eta - \zeta)
* & \frac{\partial N8}{\partial \xi} = -4 \zeta
* & \frac{\partial N8}{\partial \eta} = -4 \zeta
* & \frac{\partial N8}{\partial \zeta} = 4 - 4 \xi - 4 \eta - 8 \zeta \\
* N9 = 4 \zeta \xi
* & \frac{\partial N9}{\partial \xi} = 4 \zeta
* & \frac{\partial N9}{\partial \eta} = 0
* & \frac{\partial N9}{\partial \zeta} = 4 \xi \\
* N10 = 4 \eta \zeta
* & \frac{\partial N10}{\partial \xi} = 0
* & \frac{\partial N10}{\partial \eta} = 4 \zeta
* & \frac{\partial N10}{\partial \zeta} = 4 \eta \\
* \end{array}
* @f]
*
* @subsection quad_points Position of quadrature points
* @f[
* a = \frac{5 - \sqrt{5}}{20}\\
* b = \frac{5 + 3 \sqrt{5}}{20}
* \begin{array}{lll}
* \xi_{q_0} = a & \eta_{q_0} = a & \zeta_{q_0} = a \\
* \xi_{q_1} = b & \eta_{q_1} = a & \zeta_{q_1} = a \\
* \xi_{q_2} = a & \eta_{q_2} = b & \zeta_{q_2} = a \\
* \xi_{q_3} = a & \eta_{q_3} = a & \zeta_{q_3} = b
* \end{array}
* @f]
*/
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_tetrahedron_10>::nb_nodes_per_element;
-template<> UInt ElementClass<_tetrahedron_10>::nb_quadrature_points;
-template<> UInt ElementClass<_tetrahedron_10>::spatial_dimension;
+// template<> UInt ElementClass<_tetrahedron_10>::nb_nodes_per_element;
+// template<> UInt ElementClass<_tetrahedron_10>::nb_quadrature_points;
+// template<> UInt ElementClass<_tetrahedron_10>::spatial_dimension;
+AKANTU_DEFINE_ELEMENT_CLASS_PROPERTY(_tetrahedron_10, _gt_tetrahedron_10, _itp_lagrange_tetrahedron_10, _ek_regular, 3);
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_tetrahedron_10>::computeShapes(const Real * natural_coords,
- Real * shapes){
+template <>
+inline void
+InterpolationElement<_itp_lagrange_tetrahedron_10>::computeShapes(const types::Vector<Real> & natural_coords,
+ types::Vector<Real> & N) {
/// Natural coordinates
- Real xi = natural_coords[0];
- Real eta = natural_coords[1];
- Real zeta = natural_coords[2];
+ Real xi = natural_coords(0);
+ Real eta = natural_coords(1);
+ Real zeta = natural_coords(2);
Real sum = xi + eta + zeta;
Real c0 = 1 - sum;
Real c1 = 1 - 2*sum;
Real c2 = 2*xi - 1;
Real c3 = 2*eta - 1;
Real c4 = 2*zeta - 1;
/// Shape functions
- shapes[0] = c0 * c1;
- shapes[1] = xi * c2;
- shapes[2] = eta * c3;
- shapes[3] = zeta * c4;
- shapes[4] = 4 * xi * c0;
- shapes[5] = 4 * xi * eta;
- shapes[6] = 4 * eta * c0;
- shapes[7] = 4 * zeta * c0;
- shapes[8] = 4 * xi * zeta;
- shapes[9] = 4 * eta * zeta;
+ N(0) = c0 * c1;
+ N(1) = xi * c2;
+ N(2) = eta * c3;
+ N(3) = zeta * c4;
+ N(4) = 4 * xi * c0;
+ N(5) = 4 * xi * eta;
+ N(6) = 4 * eta * c0;
+ N(7) = 4 * zeta * c0;
+ N(8) = 4 * xi * zeta;
+ N(9) = 4 * eta * zeta;
}
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_tetrahedron_10>::computeDNDS(__attribute__ ((unused)) const Real * natural_coords,
- Real * dnds) {
-
+template <>
+inline void
+InterpolationElement<_itp_lagrange_tetrahedron_10>::computeDNDS(const types::Vector<Real> & natural_coords,
+ types::Matrix<Real> & dnds) {
/**
* @f[
* dnds = \left(
* \begin{array}{cccccccccc}
* \frac{\partial N1}{\partial \xi} & \frac{\partial N2}{\partial \xi}
* & \frac{\partial N3}{\partial \xi} & \frac{\partial N4}{\partial \xi}
* & \frac{\partial N5}{\partial \xi} & \frac{\partial N6}{\partial \xi}
* & \frac{\partial N7}{\partial \xi} & \frac{\partial N8}{\partial \xi}
* & \frac{\partial N9}{\partial \xi} & \frac{\partial N10}{\partial \xi} \\
* \frac{\partial N1}{\partial \eta} & \frac{\partial N2}{\partial \eta}
* & \frac{\partial N3}{\partial \eta} & \frac{\partial N4}{\partial \eta}
* & \frac{\partial N5}{\partial \eta} & \frac{\partial N6}{\partial \eta}
* & \frac{\partial N7}{\partial \eta} & \frac{\partial N8}{\partial \eta}
* & \frac{\partial N9}{\partial \eta} & \frac{\partial N10}{\partial \eta} \\
* \frac{\partial N1}{\partial \zeta} & \frac{\partial N2}{\partial \zeta}
* & \frac{\partial N3}{\partial \zeta} & \frac{\partial N4}{\partial \zeta}
* & \frac{\partial N5}{\partial \zeta} & \frac{\partial N6}{\partial \zeta}
* & \frac{\partial N7}{\partial \zeta} & \frac{\partial N8}{\partial \zeta}
* & \frac{\partial N9}{\partial \zeta} & \frac{\partial N10}{\partial \zeta}
* \end{array}
* \right)
* @f]
*/
/// Natural coordinates
- Real xi = natural_coords[0];
- Real eta = natural_coords[1];
- Real zeta = natural_coords[2];
+ Real xi = natural_coords(0);
+ Real eta = natural_coords(1);
+ Real zeta = natural_coords(2);
Real sum = xi + eta + zeta;
- /// dN/dxi
- dnds[0] = 4 * sum - 3;
- dnds[1] = 4 * xi - 1;
- dnds[2] = 0;
- dnds[3] = 0;
- dnds[4] = 4 * (1 - sum - xi);
- dnds[5] = 4 * eta;
- dnds[6] = -4 * eta;
- dnds[7] = -4 * zeta;
- dnds[8] = 4 * zeta;
- dnds[9] = 0;
-
- /// dN/deta
- dnds[10] = 4 * sum - 3;
- dnds[11] = 0;
- dnds[12] = 4 * eta - 1;
- dnds[13] = 0;
- dnds[14] = -4 * xi;
- dnds[15] = 4 * xi;
- dnds[16] = 4 * (1 - sum - eta);
- dnds[17] = -4 * zeta;
- dnds[18] = 0;
- dnds[19] = 4 * zeta;
+ /// \frac{\partial N_i}{\partial \xi}
+ dnds(0, 0) = 4 * sum - 3;
+ dnds(0, 1) = 4 * xi - 1;
+ dnds(0, 2) = 0;
+ dnds(0, 3) = 0;
+ dnds(0, 4) = 4 * (1 - sum - xi);
+ dnds(0, 5) = 4 * eta;
+ dnds(0, 6) = -4 * eta;
+ dnds(0, 7) = -4 * zeta;
+ dnds(0, 8) = 4 * zeta;
+ dnds(0, 9) = 0;
- /// dN/dzeta
- dnds[20] = 4 * sum - 3;
- dnds[21] = 0;
- dnds[22] = 0;
- dnds[23] = 4 * zeta - 1;
- dnds[24] = -4 * xi;
- dnds[25] = 0;
- dnds[26] = -4 * eta;
- dnds[27] = 4 * (1 - sum - zeta);
- dnds[28] = 4 * xi;
- dnds[29] = 4 * eta;
-
-}
+ /// \frac{\partial N_i}{\partial \eta}
+ dnds(1, 0) = 4 * sum - 3;
+ dnds(1, 1) = 0;
+ dnds(1, 2) = 4 * eta - 1;
+ dnds(1, 3) = 0;
+ dnds(1, 4) = -4 * xi;
+ dnds(1, 5) = 4 * xi;
+ dnds(1, 6) = 4 * (1 - sum - eta);
+ dnds(1, 7) = -4 * zeta;
+ dnds(1, 8) = 0;
+ dnds(1, 9) = 4 * zeta;
-/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_tetrahedron_10>::computeJacobian(const Real * dxds,
- const UInt dimension,
- Real & jac) {
+ /// \frac{\partial N_i}{\partial \zeta}
+ dnds(2, 0) = 4 * sum - 3;
+ dnds(2, 1) = 0;
+ dnds(2, 2) = 0;
+ dnds(2, 3) = 4 * zeta - 1;
+ dnds(2, 4) = -4 * xi;
+ dnds(2, 5) = 0;
+ dnds(2, 6) = -4 * eta;
+ dnds(2, 7) = 4 * (1 - sum - zeta);
+ dnds(2, 8) = 4 * xi;
+ dnds(2, 9) = 4 * eta;
- if (dimension == spatial_dimension){
- Real det_dxds = Math::det3(dxds);
- jac = det_dxds;
- }
- else {
- AKANTU_DEBUG_TO_IMPLEMENT();
- }
}
/* -------------------------------------------------------------------------- */
-template<> inline Real ElementClass<_tetrahedron_10>::getInradius(const Real * coord) {
-
+template<>
+inline Real
+GeometricalElement<_gt_tetrahedron_10>::getInradius(const types::Matrix<Real> & coord) {
// Only take the four corner tetrahedra
UInt tetrahedra[4][4] = {
{0, 4, 6, 7},
{4, 1, 5, 8},
{6, 5, 2, 9},
{7, 8, 9, 3}
};
Real inradius = std::numeric_limits<Real>::max();
for (UInt t = 0; t < 4; t++) {
- Real ir = Math::tetrahedron_inradius(coord + tetrahedra[t][0] * spatial_dimension,
- coord + tetrahedra[t][1] * spatial_dimension,
- coord + tetrahedra[t][2] * spatial_dimension,
- coord + tetrahedra[t][3] * spatial_dimension);
- inradius = ir < inradius ? ir : inradius;
+ Real ir = Math::tetrahedron_inradius(coord(tetrahedra[t][0]).storage(),
+ coord(tetrahedra[t][1]).storage(),
+ coord(tetrahedra[t][2]).storage(),
+ coord(tetrahedra[t][3]).storage());
+ inradius = std::min(ir, inradius);
}
return inradius;
}
diff --git a/src/fem/element_classes/element_class_tetrahedron_4_inline_impl.cc b/src/fem/element_classes/element_class_tetrahedron_4_inline_impl.cc
index ceb689162..cb5726260 100644
--- a/src/fem/element_classes/element_class_tetrahedron_4_inline_impl.cc
+++ b/src/fem/element_classes/element_class_tetrahedron_4_inline_impl.cc
@@ -1,132 +1,127 @@
/**
* @file element_class_tetrahedron_4_inline_impl.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
*
* @date Fri Jul 16 09:09:21 2010
*
* @brief Specialization of the element_class class for the type _tetrahedron_4
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
* @section DESCRIPTION
*
* @verbatim
\eta
^
|
x (0,0,1,0)
|`
| ` ° \xi
| ` ° -
| ` x (0,0,0,1)
| q.` - '
| -` '
| - ` '
| - ` '
x------------------x-----> \zeta
(1,0,0,0) (0,1,0,0)
@endverbatim
*
* @subsection shapes Shape functions
* @f{eqnarray*}{
* N1 &=& 1 - \xi - \eta - \zeta \\
* N2 &=& \xi \\
* N3 &=& \eta \\
* N4 &=& \zeta
* @f}
*
* @subsection quad_points Position of quadrature points
* @f[
* \xi_{q0} = 1/4 \qquad \eta_{q0} = 1/4 \qquad \zeta_{q0} = 1/4
* @f]
*/
/* -------------------------------------------------------------------------- */
// /// shape functions
// shape[0] = 1./4.; /// N1(q_0)
// shape[1] = 1./4.; /// N2(q_0)
// shape[2] = 1./4.; /// N3(q_0)
// shape[3] = 1./4.; /// N4(q_0)
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_tetrahedron_4>::nb_nodes_per_element;
-template<> UInt ElementClass<_tetrahedron_4>::nb_quadrature_points;
-template<> UInt ElementClass<_tetrahedron_4>::spatial_dimension;
-
+// template<> UInt ElementClass<_tetrahedron_4>::nb_nodes_per_element;
+// template<> UInt ElementClass<_tetrahedron_4>::nb_quadrature_points;
+// template<> UInt ElementClass<_tetrahedron_4>::spatial_dimension;
+AKANTU_DEFINE_ELEMENT_CLASS_PROPERTY(_tetrahedron_4, _gt_tetrahedron_4, _itp_lagrange_tetrahedron_4, _ek_regular, 3);
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_tetrahedron_4>::computeShapes(const Real * natural_coords,
- Real * shapes){
- Real c0 = 1 - natural_coords[0] - natural_coords[1] - natural_coords[2];/// @f$ c2 = 1 - \xi - \eta - \zeta @f$
- Real c1 = natural_coords[1]; /// @f$ c0 = \xi @f$
- Real c2 = natural_coords[2]; /// @f$ c1 = \eta @f$
- Real c3 = natural_coords[0]; /// @f$ c2 = \zeta @f$
+template <>
+inline void
+InterpolationElement<_itp_lagrange_tetrahedron_4>::computeShapes(const types::Vector<Real> & natural_coords,
+ types::Vector<Real> & N) {
+ Real c0 = 1 - natural_coords(0) - natural_coords(1) - natural_coords(2);/// @f$ c2 = 1 - \xi - \eta - \zeta @f$
+ Real c1 = natural_coords(1); /// @f$ c0 = \xi @f$
+ Real c2 = natural_coords(2); /// @f$ c1 = \eta @f$
+ Real c3 = natural_coords(0); /// @f$ c2 = \zeta @f$
- shapes[0] = c0;
- shapes[1] = c1;
- shapes[2] = c2;
- shapes[3] = c3;
+ N(0) = c0;
+ N(1) = c1;
+ N(2) = c2;
+ N(3) = c3;
}
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_tetrahedron_4>::computeDNDS(__attribute__ ((unused)) const Real * natural_coords,
- Real * dnds) {
+template <>
+inline void
+InterpolationElement<_itp_lagrange_tetrahedron_4>::computeDNDS(__attribute__ ((unused)) const types::Vector<Real> & natural_coords,
+ types::Matrix<Real> & dnds) {
/**
* @f[
* dnds = \left(
* \begin{array}{cccccc}
* \frac{\partial N1}{\partial \xi} & \frac{\partial N2}{\partial \xi}
* & \frac{\partial N3}{\partial \xi} & \frac{\partial N4}{\partial \xi} \\
* \frac{\partial N1}{\partial \eta} & \frac{\partial N2}{\partial \eta}
* & \frac{\partial N3}{\partial \eta} & \frac{\partial N4}{\partial \eta} \\
* \frac{\partial N1}{\partial \zeta} & \frac{\partial N2}{\partial \zeta}
* & \frac{\partial N3}{\partial \zeta} & \frac{\partial N4}{\partial \zeta}
* \end{array}
* \right)
* @f]
*/
- dnds[0] = -1.; dnds[1] = 1.; dnds[2] = 0.; dnds[3] = 0.;
- dnds[4] = -1.; dnds[5] = 0.; dnds[6] = 1.; dnds[7] = 0.;
- dnds[8] = -1.; dnds[9] = 0.; dnds[10] = 0.; dnds[11] = 1.;
-
+ dnds(0, 0) = -1.; dnds(0, 1) = 1.; dnds(0, 2) = 0.; dnds(0, 3) = 0.;
+ dnds(1, 0) = -1.; dnds(1, 1) = 0.; dnds(1, 2) = 1.; dnds(1, 3) = 0.;
+ dnds(2, 0) = -1.; dnds(2, 1) = 0.; dnds(2, 2) = 0.; dnds(2, 3) = 1.;
-}
-
-/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_tetrahedron_4>::computeJacobian(const Real * dxds,
- const UInt dimension,
- Real & jac) {
- if (dimension == spatial_dimension){
- Real det_dxds = Math::det3(dxds);
- jac = det_dxds;
- }
- else {
- AKANTU_DEBUG_TO_IMPLEMENT();
- }
}
/* -------------------------------------------------------------------------- */
-template<> inline Real ElementClass<_tetrahedron_4>::getInradius(const Real * coord) {
- return Math::tetrahedron_inradius(coord, coord+3, coord+6, coord+9);
+template<>
+inline Real
+GeometricalElement<_gt_tetrahedron_4>::getInradius(const types::Matrix<Real> & coord) {
+ return Math::tetrahedron_inradius(coord(0).storage(),
+ coord(1).storage(),
+ coord(2).storage(),
+ coord(3).storage());
}
diff --git a/src/fem/element_classes/element_class_triangle_3_inline_impl.cc b/src/fem/element_classes/element_class_triangle_3_inline_impl.cc
index ec12f89c8..e9c16dad5 100644
--- a/src/fem/element_classes/element_class_triangle_3_inline_impl.cc
+++ b/src/fem/element_classes/element_class_triangle_3_inline_impl.cc
@@ -1,134 +1,136 @@
/**
* @file element_class_triangle_3_inline_impl.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Jul 16 09:09:21 2010
*
* @brief Specialization of the element_class class for the type _triangle_3
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
* @section DESCRIPTION
*
* @verbatim
\eta
^
|
x (0,0,1)
|`
| `
| q `
| ° `
x--------x-----> \xi
(1,0,0) (0,1,0)
@endverbatim
*
* @subsection shapes Shape functions
* @f{eqnarray*}{
* N1 &=& 1 - \xi - \eta \\
* N2 &=& \xi \\
* N3 &=& \eta
* @f}
*
* @subsection quad_points Position of quadrature points
* @f{eqnarray*}{
* \xi_{q0} &=& 1/3 \qquad \eta_{q0} = 1/3
* @f}
*/
// /// shape functions
// shape[0] = 1./3.; /// N1(q_0)
// shape[1] = 1./3.; /// N2(q_0)
// shape[2] = 1./3.; /// N3(q_0)
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_triangle_3>::nb_nodes_per_element;
-template<> UInt ElementClass<_triangle_3>::nb_quadrature_points;
-template<> UInt ElementClass<_triangle_3>::spatial_dimension;
+// template<> UInt ElementClass<_triangle_3>::nb_nodes_per_element;
+// template<> UInt ElementClass<_triangle_3>::nb_quadrature_points;
+// template<> UInt ElementClass<_triangle_3>::spatial_dimension;
+AKANTU_DEFINE_ELEMENT_CLASS_PROPERTY(_triangle_3, _gt_triangle_3, _itp_lagrange_triangle_3, _ek_regular, 2);
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_triangle_3>::computeShapes(const Real * natural_coords,
- Real * shapes){
+template <>
+inline void
+InterpolationElement<_itp_lagrange_triangle_3>::computeShapes(const types::Vector<Real> & natural_coords,
+ types::Vector<Real> & N) {
/// Natural coordinates
- Real c0 = 1 - natural_coords[0] - natural_coords[1]; /// @f$ c0 = 1 - \xi - \eta @f$
- Real c1 = natural_coords[0]; /// @f$ c1 = \xi @f$
- Real c2 = natural_coords[1]; /// @f$ c2 = \eta @f$
+ Real c0 = 1 - natural_coords(0) - natural_coords(1); /// @f$ c0 = 1 - \xi - \eta @f$
+ Real c1 = natural_coords(0); /// @f$ c1 = \xi @f$
+ Real c2 = natural_coords(1); /// @f$ c2 = \eta @f$
- shapes[0] = c0; /// N1(q_0)
- shapes[1] = c1; /// N2(q_0)
- shapes[2] = c2; /// N3(q_0)
+ N(0) = c0; /// N1(q_0)
+ N(1) = c1; /// N2(q_0)
+ N(2) = c2; /// N3(q_0)
}
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_triangle_3>::computeDNDS(__attribute__ ((unused)) const Real * natural_coords,
- Real * dnds){
+template <>
+inline void
+InterpolationElement<_itp_lagrange_triangle_3>::computeDNDS(__attribute__ ((unused)) const types::Vector<Real> & natural_coords,
+ types::Matrix<Real> & dnds) {
/**
* @f[
* dnds = \left(
* \begin{array}{cccccc}
* \frac{\partial N1}{\partial \xi} & \frac{\partial N2}{\partial \xi} & \frac{\partial N3}{\partial \xi} \\
* \frac{\partial N1}{\partial \eta} & \frac{\partial N2}{\partial \eta} & \frac{\partial N3}{\partial \eta}
* \end{array}
* \right)
* @f]
*/
-
- dnds[0] = -1.; dnds[1] = 1.; dnds[2] = 0.;
- dnds[3] = -1.; dnds[4] = 0.; dnds[5] = 1.;
+ dnds(0, 0) = -1.; dnds(0, 1) = 1.; dnds(0, 2) = 0.;
+ dnds(1, 0) = -1.; dnds(1, 1) = 0.; dnds(1, 2) = 1.;
}
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_triangle_3>::computeJacobian(const Real * dxds,
- const UInt dimension,
- Real & jac){
- if (dimension == spatial_dimension){
- Real det_dxds = Math::det2(dxds);
- jac = det_dxds;
- }
- else {
- Real vprod[dimension];
- Math::vectorProduct3(dxds,dxds+3,vprod);
- jac = Math::norm3(vprod);
- }
+template <>
+inline void
+InterpolationElement<_itp_lagrange_triangle_3>::computeSpecialJacobian(const types::Matrix<Real> & J,
+ Real & jac){
+ types::Vector<Real> vprod(J.rows());
+ vprod.crossProduct(J(0), J(1));
+ jac = vprod.norm();
}
/* -------------------------------------------------------------------------- */
-template<> inline Real ElementClass<_triangle_3>::getInradius(const Real * coord) {
- return Math::triangle_inradius(coord, coord+2, coord+4);
+template<>
+inline Real
+GeometricalElement<_gt_triangle_3>::getInradius(const types::Matrix<Real> & coord) {
+ return Math::triangle_inradius(coord(0).storage(),
+ coord(1).storage(),
+ coord(2).storage());
}
/* -------------------------------------------------------------------------- */
-
-template<> inline bool ElementClass<_triangle_3>::contains(const types::RVector & natural_coords) {
- if (natural_coords[0] < 0.) return false;
- if (natural_coords[0] > 1.) return false;
- if (natural_coords[1] < 0.) return false;
- if (natural_coords[1] > 1.) return false;
- if (natural_coords[0]+natural_coords[1] > 1.) return false;
- return true;
-}
+// template<> inline bool ElementClass<_triangle_3>::contains(const types::RVector & natural_coords) {
+// if (natural_coords[0] < 0.) return false;
+// if (natural_coords[0] > 1.) return false;
+// if (natural_coords[1] < 0.) return false;
+// if (natural_coords[1] > 1.) return false;
+// if (natural_coords[0]+natural_coords[1] > 1.) return false;
+// return true;
+// }
/* -------------------------------------------------------------------------- */
diff --git a/src/fem/element_classes/element_class_triangle_6_inline_impl.cc b/src/fem/element_classes/element_class_triangle_6_inline_impl.cc
index d92b1657c..2b0e0b605 100644
--- a/src/fem/element_classes/element_class_triangle_6_inline_impl.cc
+++ b/src/fem/element_classes/element_class_triangle_6_inline_impl.cc
@@ -1,214 +1,208 @@
/**
* @file element_class_triangle_6_inline_impl.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Jul 16 09:09:21 2010
*
* @brief Specialization of the element_class class for the type _triangle_6
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
* @section DESCRIPTION
*
* @verbatim
\eta
^
|
x 2
| `
| `
| . `
| q2 `
5 x x 4
| `
| `
| .q0 q1. `
| `
x---------x---------x-----> \xi
0 3 1
@endverbatim
*
* @subsection coords Nodes coordinates
*
* @f[
* \begin{array}{ll}
* \xi_{0} = 0 & \eta_{0} = 0 \\
* \xi_{1} = 1 & \eta_{1} = 0 \\
* \xi_{2} = 0 & \eta_{2} = 1 \\
* \xi_{3} = 1/2 & \eta_{3} = 0 \\
* \xi_{4} = 1/2 & \eta_{4} = 1/2 \\
* \xi_{5} = 0 & \eta_{5} = 1/2
* \end{array}
* @f]
*
* @subsection shapes Shape functions
* @f[
* \begin{array}{lll}
* N1 = -(1 - \xi - \eta) (1 - 2 (1 - \xi - \eta))
* & \frac{\partial N1}{\partial \xi} = 1 - 4(1 - \xi - \eta)
* & \frac{\partial N1}{\partial \eta} = 1 - 4(1 - \xi - \eta) \\
* N2 = - \xi (1 - 2 \xi)
* & \frac{\partial N2}{\partial \xi} = - 1 + 4 \xi
* & \frac{\partial N2}{\partial \eta} = 0 \\
* N3 = - \eta (1 - 2 \eta)
* & \frac{\partial N3}{\partial \xi} = 0
* & \frac{\partial N3}{\partial \eta} = - 1 + 4 \eta \\
* N4 = 4 \xi (1 - \xi - \eta)
* & \frac{\partial N4}{\partial \xi} = 4 (1 - 2 \xi - \eta)
* & \frac{\partial N4}{\partial \eta} = - 4 \xi \\
* N5 = 4 \xi \eta
* & \frac{\partial N5}{\partial \xi} = 4 \eta
* & \frac{\partial N5}{\partial \eta} = 4 \xi \\
* N6 = 4 \eta (1 - \xi - \eta)
* & \frac{\partial N6}{\partial \xi} = - 4 \eta
* & \frac{\partial N6}{\partial \eta} = 4 (1 - \xi - 2 \eta)
* \end{array}
* @f]
*
* @subsection quad_points Position of quadrature points
* @f{eqnarray*}{
* \xi_{q0} &=& 1/6 \qquad \eta_{q0} = 1/6 \\
* \xi_{q1} &=& 2/3 \qquad \eta_{q1} = 1/6 \\
* \xi_{q2} &=& 1/6 \qquad \eta_{q2} = 2/3
* @f}
*/
// /// quadrature point position
// quad[0] = 1./6.; /// q0_{\xi}
// quad[1] = 1./6.; /// q0_{\eta}
// quad[2] = 2./3.; /// q1_{\xi}
// quad[3] = 1./6.; /// q1_{\eta}
// quad[4] = 1./6.; /// q2_{\xi}
// quad[5] = 2./3.; /// q2_{\eta}
/* -------------------------------------------------------------------------- */
-template<> UInt ElementClass<_triangle_6>::nb_nodes_per_element;
-template<> UInt ElementClass<_triangle_6>::nb_quadrature_points;
-template<> UInt ElementClass<_triangle_6>::spatial_dimension;
+// template<> UInt ElementClass<_triangle_6>::nb_nodes_per_element;
+// template<> UInt ElementClass<_triangle_6>::nb_quadrature_points;
+// template<> UInt ElementClass<_triangle_6>::spatial_dimension;
+AKANTU_DEFINE_ELEMENT_CLASS_PROPERTY(_triangle_6, _gt_triangle_6, _itp_lagrange_triangle_6, _ek_regular, 2);
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_triangle_6>::computeShapes(const Real * natural_coords,
- Real * shapes){
-
+template <> inline void
+InterpolationElement<_itp_lagrange_triangle_6>::computeShapes(const types::Vector<Real> & natural_coords,
+ types::Vector<Real> & N) {
/// Natural coordinates
- Real c0 = 1 - natural_coords[0] - natural_coords[1]; /// @f$ c0 = 1 - \xi - \eta @f$
- Real c1 = natural_coords[0]; /// @f$ c1 = \xi @f$
- Real c2 = natural_coords[1]; /// @f$ c2 = \eta @f$
-
- shapes[0] = c0 * (2 * c0 - 1.);
- shapes[1] = c1 * (2 * c1 - 1.);
- shapes[2] = c2 * (2 * c2 - 1.);
- shapes[3] = 4 * c0 * c1;
- shapes[4] = 4 * c1 * c2;
- shapes[5] = 4 * c2 * c0;
+ Real c0 = 1 - natural_coords(0) - natural_coords(1); /// @f$ c0 = 1 - \xi - \eta @f$
+ Real c1 = natural_coords(0); /// @f$ c1 = \xi @f$
+ Real c2 = natural_coords(1); /// @f$ c2 = \eta @f$
+
+ N(0) = c0 * (2 * c0 - 1.);
+ N(1) = c1 * (2 * c1 - 1.);
+ N(2) = c2 * (2 * c2 - 1.);
+ N(3) = 4 * c0 * c1;
+ N(4) = 4 * c1 * c2;
+ N(5) = 4 * c2 * c0;
}
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_triangle_6>::computeDNDS(const Real * natural_coords,
- Real * dnds){
+template <>
+inline void
+InterpolationElement<_itp_lagrange_triangle_6>::computeDNDS(const types::Vector<Real> & natural_coords,
+ types::Matrix<Real> & dnds) {
/**
* @f[
* dnds = \left(
* \begin{array}{cccccc}
* \frac{\partial N1}{\partial \xi}
* & \frac{\partial N2}{\partial \xi}
* & \frac{\partial N3}{\partial \xi}
* & \frac{\partial N4}{\partial \xi}
* & \frac{\partial N5}{\partial \xi}
* & \frac{\partial N6}{\partial \xi} \\
*
* \frac{\partial N1}{\partial \eta}
* & \frac{\partial N2}{\partial \eta}
* & \frac{\partial N3}{\partial \eta}
* & \frac{\partial N4}{\partial \eta}
* & \frac{\partial N5}{\partial \eta}
* & \frac{\partial N6}{\partial \eta}
* \end{array}
* \right)
* @f]
*/
/// Natural coordinates
- Real c0 = 1 - natural_coords[0] - natural_coords[1]; /// @f$ c0 = 1 - \xi - \eta @f$
- Real c1 = natural_coords[0]; /// @f$ c1 = \xi @f$
- Real c2 = natural_coords[1]; /// @f$ c2 = \eta @f$
-
- dnds[0] = 1 - 4 * c0;
- dnds[1] = 4 * c1 - 1.;
- dnds[2] = 0.;
- dnds[3] = 4 * (c0 - c1);
- dnds[4] = 4 * c2;
- dnds[5] = - 4 * c2;
-
- dnds[6] = 1 - 4 * c0;
- dnds[7] = 0.;
- dnds[8] = 4 * c2 - 1.;
- dnds[9] = - 4 * c1;
- dnds[10] = 4 * c1;
- dnds[11] = 4 * (c0 - c2);
+ Real c0 = 1 - natural_coords(0) - natural_coords(1); /// @f$ c0 = 1 - \xi - \eta @f$
+ Real c1 = natural_coords(0); /// @f$ c1 = \xi @f$
+ Real c2 = natural_coords(1); /// @f$ c2 = \eta @f$
+
+ dnds(0, 0) = 1 - 4 * c0;
+ dnds(0, 1) = 4 * c1 - 1.;
+ dnds(0, 2) = 0.;
+ dnds(0, 3) = 4 * (c0 - c1);
+ dnds(0, 4) = 4 * c2;
+ dnds(0, 5) = - 4 * c2;
+
+ dnds(1, 0) = 1 - 4 * c0;
+ dnds(1, 1) = 0.;
+ dnds(1, 2) = 4 * c2 - 1.;
+ dnds(1, 3) = - 4 * c1;
+ dnds(1, 4) = 4 * c1;
+ dnds(1, 5) = 4 * (c0 - c2);
}
/* -------------------------------------------------------------------------- */
-template <> inline void ElementClass<_triangle_6>::computeJacobian(const Real * dxds,
- const UInt dimension,
- Real & jac){
-
- // if element dimension is the same as the space dimension
- // then jacobian factor is the determinent of dxds
- if (dimension == spatial_dimension){
- jac = Math::det2(dxds);
- AKANTU_DEBUG_ASSERT(jac > 0,
- "Negative jacobian computed, possible problem in the element node order.");
-
- }
- else {
- AKANTU_DEBUG_ERROR("to implement");
- }
+template <>
+inline void
+InterpolationElement<_itp_lagrange_triangle_6>::computeSpecialJacobian(const types::Matrix<Real> & dxds,
+ Real & jac){
+ AKANTU_DEBUG_ERROR("to implement");
}
/* -------------------------------------------------------------------------- */
-template<> inline Real ElementClass<_triangle_6>::getInradius(const Real * coord) {
+template<>
+inline Real
+GeometricalElement<_gt_triangle_6>::getInradius(const types::Matrix<Real> & coord) {
UInt triangles[4][3] = {
{0, 3, 5},
{3, 1, 4},
{3, 4, 5},
{5, 4, 2}
};
Real inradius = std::numeric_limits<Real>::max();
for (UInt t = 0; t < 4; t++) {
- Real ir = Math::triangle_inradius(coord + triangles[t][0] * spatial_dimension,
- coord + triangles[t][1] * spatial_dimension,
- coord + triangles[t][2] * spatial_dimension);
- inradius = ir < inradius ? ir : inradius;
+ Real ir = Math::triangle_inradius(coord(triangles[t][0]).storage(),
+ coord(triangles[t][1]).storage(),
+ coord(triangles[t][2]).storage());
+ inradius = std::min(ir, inradius);
}
return inradius;
}
/* -------------------------------------------------------------------------- */
-
-template<> inline bool ElementClass<_triangle_6>::contains(const types::RVector & natural_coords) {
- return ElementClass<_triangle_3>::contains(natural_coords);
-}
+// template<> inline bool ElementClass<_triangle_6>::contains(const types::RVector & natural_coords) {
+// return ElementClass<_triangle_3>::contains(natural_coords);
+// }
diff --git a/src/fem/fem.cc b/src/fem/fem.cc
index d3311c029..33d83f4e4 100644
--- a/src/fem/fem.cc
+++ b/src/fem/fem.cc
@@ -1,237 +1,324 @@
/**
* @file fem.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Jul 20 23:40:43 2010
*
* @brief Implementation of the FEM class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "fem.hh"
#include "mesh.hh"
#include "element_class.hh"
#include "static_communicator.hh"
#include "aka_math.hh"
#include "dof_synchronizer.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
-
/* -------------------------------------------------------------------------- */
FEM::FEM(Mesh & mesh, UInt element_dimension, ID id, MemoryID memory_id) :
Memory(memory_id), id(id), normals_on_quad_points("normals_on_quad_points", id) {
AKANTU_DEBUG_IN();
this->element_dimension = (element_dimension != 0) ?
element_dimension : mesh.getSpatialDimension();
init();
this->mesh = &mesh;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void FEM::init() {
}
/* -------------------------------------------------------------------------- */
FEM::~FEM() {
AKANTU_DEBUG_IN();
mesh = NULL;
AKANTU_DEBUG_OUT();
}
+/* -------------------------------------------------------------------------- */
+void FEM::extractNodalToElementField(const Mesh & mesh,
+ const Vector<Real> & nodal_f,
+ Vector<Real> & elemental_f,
+ const ElementType & type,
+ const GhostType & ghost_type,
+ const Vector<UInt> * filter_elements) {
+ AKANTU_DEBUG_IN();
+
+ UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
+ UInt nb_degree_of_freedom = nodal_f.getNbComponent();
+ UInt nb_element = mesh.getNbElement(type, ghost_type);
+ UInt * conn_val = mesh.getConnectivity(type, ghost_type).storage();
+
+ UInt * filter_elem_val = NULL;
+ if(filter_elements != NULL) {
+ nb_element = filter_elements->getSize();
+ filter_elem_val = filter_elements->storage();
+ }
+
+ elemental_f.resize(nb_element);
+
+ Real * nodal_f_val = nodal_f.storage();
+ Real * f_val = elemental_f.storage();
+
+ UInt * el_conn;
+ for (UInt el = 0; el < nb_element; ++el) {
+ if(filter_elements != NULL) el_conn = conn_val + filter_elem_val[el] * nb_nodes_per_element;
+ else el_conn = conn_val + el * nb_nodes_per_element;
+
+ for (UInt n = 0; n < nb_nodes_per_element; ++n) {
+ UInt node = *(el_conn + n);
+ std::copy(nodal_f_val + node * nb_degree_of_freedom,
+ nodal_f_val + (node + 1) * nb_degree_of_freedom,
+ f_val);
+ f_val += nb_degree_of_freedom;
+ }
+ }
+
+ AKANTU_DEBUG_OUT();
+}
+
+/* -------------------------------------------------------------------------- */
+void FEM::filterQuadraturePointsData(const Mesh & mesh,
+ const Vector<Real> & quad_f,
+ Vector<Real> & filtered_f,
+ const ElementType & type,
+ const GhostType & ghost_type,
+ const Vector<UInt> * filter_elements) {
+ AKANTU_DEBUG_IN();
+
+ UInt nb_element = mesh.getNbElement(type, ghost_type);
+
+
+ if(nb_element == 0) {
+ filtered_f.resize(0);
+ return;
+ }
+
+ UInt nb_degree_of_freedom = quad_f.getNbComponent();
+ UInt nb_quadrature_points = quad_f.getSize() / nb_element;
+
+ UInt * filter_elem_val = NULL;
+ if(filter_elements != NULL) {
+ nb_element = filter_elements->getSize();
+ filter_elem_val = filter_elements->values;
+ }
+
+ filtered_f.resize(nb_element * nb_quadrature_points);
+
+ Real * quad_f_val = quad_f.storage();
+ Real * f_val = filtered_f.storage();
+
+ UInt el_offset;
+ for (UInt el = 0; el < nb_element; ++el) {
+ if(filter_elements != NULL) el_offset = filter_elem_val[el];
+ else el_offset = el;
+
+ std::copy(quad_f_val + el_offset * nb_quadrature_points * nb_degree_of_freedom,
+ quad_f_val + (el_offset + 1) * nb_quadrature_points * nb_degree_of_freedom,
+ f_val);
+ f_val += nb_degree_of_freedom * nb_quadrature_points;
+ }
+
+ AKANTU_DEBUG_OUT();
+}
+
+
/* -------------------------------------------------------------------------- */
void FEM::assembleVector(const Vector<Real> & elementary_vect,
Vector<Real> & nodal_values,
const Vector<Int> & equation_number,
UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements,
Real scale_factor) const {
AKANTU_DEBUG_IN();
UInt nb_element = mesh->getNbElement(type,ghost_type);
UInt * conn_val = mesh->getConnectivity(type,ghost_type).values;
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
UInt nb_nodes = mesh->getNbNodes();
UInt * filter_elem_val = NULL;
if(filter_elements != NULL) {
nb_element = filter_elements->getSize();
filter_elem_val = filter_elements->values;
}
AKANTU_DEBUG_ASSERT(elementary_vect.getSize() == nb_element,
"The vector elementary_vect(" << elementary_vect.getID()
<< ") has not the good size.");
AKANTU_DEBUG_ASSERT(elementary_vect.getNbComponent()
== nb_degree_of_freedom*nb_nodes_per_element,
"The vector elementary_vect(" << elementary_vect.getID()
<< ") has not the good number of component."
<< "(" << elementary_vect.getNbComponent()
<< " != " << nb_degree_of_freedom*nb_nodes_per_element << ")");
AKANTU_DEBUG_ASSERT(nodal_values.getNbComponent() == nb_degree_of_freedom,
"The vector nodal_values(" << nodal_values.getID()
<< ") has not the good number of component."
<< "(" << nodal_values.getNbComponent()
<< " != " << nb_degree_of_freedom << ")");
nodal_values.resize(nb_nodes);
Real * elementary_vect_val = elementary_vect.values;
Real * nodal_values_val = nodal_values.values;
for (UInt el = 0; el < nb_element; ++el) {
UInt el_offset = el * nb_nodes_per_element;
if(filter_elements != NULL) {
el_offset = filter_elem_val[el] * nb_nodes_per_element;
}
for (UInt n = 0; n < nb_nodes_per_element; ++n) {
UInt node = conn_val[el_offset + n];
UInt offset_node = node * nb_degree_of_freedom;
for (UInt d = 0; d < nb_degree_of_freedom; ++d) {
nodal_values_val[equation_number.values[offset_node + d]]
+= scale_factor * elementary_vect_val[d];
}
elementary_vect_val += nb_degree_of_freedom;
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void FEM::assembleMatrix(const Vector<Real> & elementary_mat,
SparseMatrix & matrix,
UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const {
AKANTU_DEBUG_IN();
UInt nb_element;
if(ghost_type == _not_ghost) {
nb_element = mesh->getNbElement(type);
} else {
AKANTU_DEBUG_TO_IMPLEMENT();
}
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
UInt * filter_elem_val = NULL;
if(filter_elements != NULL) {
nb_element = filter_elements->getSize();
filter_elem_val = filter_elements->values;
}
AKANTU_DEBUG_ASSERT(elementary_mat.getSize() == nb_element,
"The vector elementary_mat(" << elementary_mat.getID()
<< ") has not the good size.");
AKANTU_DEBUG_ASSERT(elementary_mat.getNbComponent()
== nb_degree_of_freedom * nb_nodes_per_element * nb_degree_of_freedom * nb_nodes_per_element,
"The vector elementary_mat(" << elementary_mat.getID()
<< ") has not the good number of component.");
Real * elementary_mat_val = elementary_mat.values;
UInt offset_elementary_mat = elementary_mat.getNbComponent();
UInt * connectivity_val = mesh->getConnectivity(type, ghost_type).values;
UInt size_mat = nb_nodes_per_element * nb_degree_of_freedom;
UInt size = mesh->getNbGlobalNodes() * nb_degree_of_freedom;
Int * eq_nb_val = matrix.getDOFSynchronizer().getGlobalDOFEquationNumbers().values;
- Int * local_eq_nb_val = new Int[nb_degree_of_freedom * nb_nodes_per_element];
+ Int * local_eq_nb_val = new Int[size_mat];
for (UInt e = 0; e < nb_element; ++e) {
UInt el = e;
if(filter_elements != NULL) el = filter_elem_val[e];
Int * tmp_local_eq_nb_val = local_eq_nb_val;
UInt * conn_val = connectivity_val + el * nb_nodes_per_element;
for (UInt i = 0; i < nb_nodes_per_element; ++i) {
UInt n = conn_val[i];
for (UInt d = 0; d < nb_degree_of_freedom; ++d) {
*tmp_local_eq_nb_val++ = eq_nb_val[n * nb_degree_of_freedom + d];
}
// memcpy(tmp_local_eq_nb_val, eq_nb_val + n * nb_degree_of_freedom, nb_degree_of_freedom * sizeof(Int));
// tmp_local_eq_nb_val += nb_degree_of_freedom;
}
for (UInt i = 0; i < size_mat; ++i) {
UInt c_irn = local_eq_nb_val[i];
if(c_irn < size) {
UInt j_start = (matrix.getSparseMatrixType() == _symmetric) ? i : 0;
for (UInt j = j_start; j < size_mat; ++j) {
UInt c_jcn = local_eq_nb_val[j];
if(c_jcn < size) {
- matrix(c_irn, c_jcn) += elementary_mat_val[i * size_mat + j];
+ matrix(c_irn, c_jcn) += elementary_mat_val[j * size_mat + i];
}
}
}
}
elementary_mat_val += offset_elementary_mat;
}
delete [] local_eq_nb_val;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void FEM::printself(std::ostream & stream, int indent) const {
std::string space;
for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
stream << space << "FEM [" << std::endl;
stream << space << " + id : " << id << std::endl;
stream << space << " + element dimension : " << element_dimension << std::endl;
stream << space << " + mesh [" << std::endl;
mesh->printself(stream, indent + 2);
stream << space << AKANTU_INDENT << "]" << std::endl;
stream << space << " + mesh [" << std::endl;
mesh->printself(stream, indent + 2);
stream << space << AKANTU_INDENT << "]" << std::endl;
stream << space << "]" << std::endl;
}
/* -------------------------------------------------------------------------- */
__END_AKANTU__
diff --git a/src/fem/fem.hh b/src/fem/fem.hh
index 11d5116a8..b7aebac90 100644
--- a/src/fem/fem.hh
+++ b/src/fem/fem.hh
@@ -1,348 +1,361 @@
/**
* @file fem.hh
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Jul 20 23:40:43 2010
*
* @brief FEM class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_FEM_HH__
#define __AKANTU_FEM_HH__
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "aka_memory.hh"
#include "mesh.hh"
#include "element_class.hh"
#include "sparse_matrix.hh"
/* -------------------------------------------------------------------------- */
namespace akantu {
class Integrator;
class ShapeFunctions;
}
__BEGIN_AKANTU__
class QuadraturePoint : public Element {
public:
QuadraturePoint(ElementType type = _not_defined, UInt element = 0,
UInt num_point = 0, GhostType ghost_type = _not_ghost) :
Element(type, element, ghost_type), num_point(num_point), global_num(0),
position((Real *)NULL, 0) { };
QuadraturePoint(UInt element, UInt num_point,
UInt global_num,
const types::RVector & position,
ElementType type,
GhostType ghost_type = _not_ghost) :
Element(type, element, ghost_type), num_point(num_point), global_num(global_num),
position((Real *)NULL, 0) { this->position.shallowCopy(position); };
QuadraturePoint(const QuadraturePoint & quad) :
Element(quad), num_point(quad.num_point), position((Real *) NULL, 0) {
position.shallowCopy(quad.position);
};
inline QuadraturePoint & operator=(const QuadraturePoint & q) {
if(this != &q) {
element = q.element;
type = q.type;
ghost_type = q.ghost_type;
num_point = q.num_point;
global_num = q.global_num;
position.shallowCopy(q.position);
}
return *this;
}
AKANTU_GET_MACRO(Position, position, const types::RVector &);
void setPosition(const types::RVector & position) {
this->position.shallowCopy(position);
}
/// function to print the containt of the class
virtual void printself(std::ostream & stream, int indent = 0) const {
std::string space;
for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
stream << space << "QuadraturePoint [";
Element::printself(stream, 0);
stream << ", " << num_point << "]";
}
public:
UInt num_point;
UInt global_num;
private:
types::RVector position;
};
/**
* The generic FEM class derived in a FEMTemplate class containing the
* shape functions and the integration method
*/
class FEM : protected Memory {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
FEM(Mesh & mesh, UInt spatial_dimension = 0,
ID id = "fem", MemoryID memory_id = 0);
virtual ~FEM();
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
-
/// build the profile of the sparse matrix corresponding to the mesh
void initSparseMatrixProfile(SparseMatrixType sparse_matrix_type = _unsymmetric);
-
/// pre-compute all the shape functions, their derivatives and the jacobians
virtual void initShapeFunctions(const GhostType & ghost_type = _not_ghost) = 0;
+ /// extract the nodal values and store them per element
+ static void extractNodalToElementField(const Mesh & mesh,
+ const Vector<Real> & nodal_f,
+ Vector<Real> & elemental_f,
+ const ElementType & type,
+ const GhostType & ghost_type = _not_ghost,
+ const Vector<UInt> * filter_elements = NULL);
+
+ /// filter a field
+ static void filterQuadraturePointsData(const Mesh & mesh,
+ const Vector<Real> & quad_f,
+ Vector<Real> & filtered_f,
+ const ElementType & type,
+ const GhostType & ghost_type = _not_ghost,
+ const Vector<UInt> * filter_elements = NULL);
+
/* ------------------------------------------------------------------------ */
/* Integration method bridges */
/* ------------------------------------------------------------------------ */
-
/// integrate f for all elements of type "type"
virtual void integrate(const Vector<Real> & f,
Vector<Real> &intf,
UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const = 0;
/// integrate a scalar value on all elements of type "type"
virtual Real integrate(const Vector<Real> & f,
const ElementType & type,
const GhostType & ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const = 0;
/// integrate f for all quadrature points of type "type"
virtual void integrateOnQuadraturePoints(const Vector<Real> & f,
Vector<Real> &intf,
UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const = 0;
-
+
/// integrate one element scalar value on all elements of type "type"
virtual Real integrate(const types::RVector & f,
const ElementType & type,
UInt index, const GhostType & ghost_type = _not_ghost) const = 0;
-
-
+
+
/* ------------------------------------------------------------------------ */
/* compatibility with old FEM fashion */
/* ------------------------------------------------------------------------ */
-
/// get the number of quadrature points
virtual UInt getNbQuadraturePoints(const ElementType & type,
const GhostType & ghost_type = _not_ghost) const = 0;
/// get the precomputed shapes
const virtual Vector<Real> & getShapes(const ElementType & type,
const GhostType & ghost_type = _not_ghost) const = 0;
/// get the derivatives of shapes
const virtual Vector<Real> & getShapesDerivatives(const ElementType & type,
const GhostType & ghost_type = _not_ghost,
UInt id = 0) const = 0;
/// get quadrature points
- const virtual Vector<Real> & getQuadraturePoints(const ElementType & type,
- const GhostType & ghost_type = _not_ghost) const = 0;
+ const virtual types::Matrix<Real> & getQuadraturePoints(const ElementType & type,
+ const GhostType & ghost_type = _not_ghost) const = 0;
/* ------------------------------------------------------------------------ */
/* Shape method bridges */
/* ------------------------------------------------------------------------ */
-
virtual
void gradientOnQuadraturePoints(const Vector<Real> &u,
Vector<Real> &nablauq,
const UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const = 0;
virtual
void interpolateOnQuadraturePoints(const Vector<Real> &u,
Vector<Real> &uq,
UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const =0;
-
+
/* ------------------------------------------------------------------------ */
/* Other methods */
/* ------------------------------------------------------------------------ */
/// pre-compute normals on control points
virtual void computeNormalsOnControlPoints(const GhostType & ghost_type = _not_ghost) = 0;
/// pre-compute normals on control points
virtual void computeNormalsOnControlPoints(__attribute__((unused)) const Vector<Real> & field,
__attribute__((unused)) const GhostType & ghost_type = _not_ghost) {
AKANTU_DEBUG_TO_IMPLEMENT();
}
-
+
/// pre-compute normals on control points
virtual void computeNormalsOnControlPoints(__attribute__((unused)) const Vector<Real> & field,
__attribute__((unused)) Vector<Real> & normal,
__attribute__((unused)) const ElementType & type,
__attribute__((unused)) const GhostType & ghost_type = _not_ghost) const {
AKANTU_DEBUG_TO_IMPLEMENT();
}
/// assemble vectors
void assembleVector(const Vector<Real> & elementary_vect,
Vector<Real> & nodal_values,
const Vector<Int> & equation_number,
UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL,
Real scale_factor = 1) const;
/// assemble matrix in the complete sparse matrix
void assembleMatrix(const Vector<Real> & elementary_mat,
SparseMatrix & matrix,
UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const;
/// assemble a field as a lumped matrix (ex. rho in lumped mass)
virtual void assembleFieldLumped(__attribute__ ((unused)) const Vector<Real> & field_1,
__attribute__ ((unused)) UInt nb_degree_of_freedom,
__attribute__ ((unused)) Vector<Real> & lumped,
__attribute__ ((unused)) const Vector<Int> & equation_number,
__attribute__ ((unused)) ElementType type,
__attribute__ ((unused)) const GhostType & ghost_type) const {
AKANTU_DEBUG_TO_IMPLEMENT();
};
/// assemble a field as a matrix (ex. rho to mass matrix)
virtual void assembleFieldMatrix(__attribute__ ((unused)) const Vector<Real> & field_1,
__attribute__ ((unused)) UInt nb_degree_of_freedom,
__attribute__ ((unused)) SparseMatrix & matrix,
__attribute__ ((unused)) ElementType type,
__attribute__ ((unused)) const GhostType & ghost_type) const {
AKANTU_DEBUG_TO_IMPLEMENT();
}
/// function to print the containt of the class
virtual void printself(std::ostream & stream, int indent = 0) const;
private:
/// initialise the class
void init();
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
AKANTU_GET_MACRO(ElementDimension, element_dimension, UInt);
/// get the mesh contained in the fem object
inline Mesh & getMesh() const;
/// get the in-radius of an element
- static inline Real getElementInradius(Real * coord, const ElementType & type);
+ static inline Real getElementInradius(const types::Matrix<Real> & coord, const ElementType & type);
/// get the normals on quadrature points
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(NormalsOnQuadPoints, normals_on_quad_points, Real);
/// get cohesive element type for a given facet type
static inline ElementType getCohesiveElementType(const ElementType & type_facet);
virtual const ShapeFunctions & getShapeFunctionsInterface() const = 0;
virtual const Integrator & getIntegratorInterface() const = 0;
+ static inline InterpolationType getInterpolationType(const ElementType & el_type);
+
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
protected:
/// id of the fem object
ID id;
/// spatial dimension of the problem
UInt element_dimension;
/// the mesh on which all computation are made
Mesh * mesh;
/// normals at quadrature points
ByElementTypeReal normals_on_quad_points;
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
#if defined (AKANTU_INCLUDE_INLINE_IMPL)
# include "fem_inline_impl.cc"
#endif
/// standard output stream operator
inline std::ostream & operator <<(std::ostream & stream, const FEM & _this)
{
_this.printself(stream);
return stream;
}
/// standard output stream operator
inline std::ostream & operator <<(std::ostream & stream, const QuadraturePoint & _this)
{
_this.printself(stream);
return stream;
}
__END_AKANTU__
#include "fem_template.hh"
#endif /* __AKANTU_FEM_HH__ */
diff --git a/src/fem/fem_inline_impl.cc b/src/fem/fem_inline_impl.cc
index ba9682d8b..b60faa974 100644
--- a/src/fem/fem_inline_impl.cc
+++ b/src/fem/fem_inline_impl.cc
@@ -1,72 +1,89 @@
/**
* @file fem_inline_impl.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Jul 20 23:40:43 2010
*
* @brief Implementation of the inline functions of the FEM Class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
inline Mesh & FEM::getMesh() const {
return *mesh;
}
/* -------------------------------------------------------------------------- */
-inline Real FEM::getElementInradius(Real * coord, const ElementType & type) {
+inline Real FEM::getElementInradius(const types::Matrix<Real> & coord, const ElementType & type) {
AKANTU_DEBUG_IN();
Real inradius = 0;
#define GET_INRADIUS(type) \
inradius = ElementClass<type>::getInradius(coord); \
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(GET_INRADIUS);
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_INRADIUS);
#undef GET_INRADIUS
AKANTU_DEBUG_OUT();
return inradius;
}
+/* -------------------------------------------------------------------------- */
+inline InterpolationType FEM::getInterpolationType(const ElementType & type) {
+ AKANTU_DEBUG_IN();
+
+ InterpolationType itp_type = _itp_not_defined;
+
+#define GET_ITP(type) \
+ itp_type = ElementClassProperty<type>::interpolation_type; \
+
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_ITP);
+#undef GET_ITP
+
+ AKANTU_DEBUG_OUT();
+ return itp_type;
+}
+
/* -------------------------------------------------------------------------- */
/// @todo rewrite this function in order to get the cohesive element
/// type directly from the facet
#if defined(AKANTU_COHESIVE_ELEMENT)
inline ElementType FEM::getCohesiveElementType(const ElementType & type_facet) {
AKANTU_DEBUG_IN();
ElementType type_cohesive = _not_defined;
if (type_facet == _segment_2) type_cohesive = _cohesive_2d_4;
else if (type_facet == _segment_3) type_cohesive = _cohesive_2d_6;
AKANTU_DEBUG_OUT();
return type_cohesive;
}
#else
inline ElementType FEM::getCohesiveElementType(const ElementType & type_facet) {
return _not_defined;
}
#endif
+
diff --git a/src/fem/fem_template.hh b/src/fem/fem_template.hh
index efaa09f02..e0cab5415 100644
--- a/src/fem/fem_template.hh
+++ b/src/fem/fem_template.hh
@@ -1,272 +1,266 @@
/**
* @file fem_template.hh
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
*
* @date Tue Feb 15 16:32:44 2011
*
* @brief templated class that calls integration and shape objects
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
#ifndef __AKANTU_FEM_TEMPLATE_HH__
#define __AKANTU_FEM_TEMPLATE_HH__
/* -------------------------------------------------------------------------- */
#include "fem.hh"
#include "integrator.hh"
#include "shape_functions.hh"
-#include "shape_lagrange.hh"
-#include "shape_linked.hh"
-#include "integrator_gauss.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-class FEMTemplate : public FEM{
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind = _ek_regular>
+class FEMTemplate : public FEM {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
+ typedef I<kind> Integ;
+ typedef S<kind> Shape;
+
FEMTemplate(Mesh & mesh, UInt spatial_dimension = 0,
ID id = "fem", MemoryID memory_id = 0);
virtual ~FEMTemplate();
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
/// pre-compute all the shape functions, their derivatives and the jacobians
void initShapeFunctions(const GhostType & ghost_type = _not_ghost);
+ void initShapeFunctions(const Vector<Real> & nodes,
+ const GhostType & ghost_type = _not_ghost);
/* ------------------------------------------------------------------------ */
/* Integration method bridges */
/* ------------------------------------------------------------------------ */
/// integrate f for all elements of type "type"
void integrate(const Vector<Real> & f,
Vector<Real> &intf,
UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const;
/// integrate a scalar value on all elements of type "type"
Real integrate(const Vector<Real> & f,
const ElementType & type,
const GhostType & ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const;
/// integrate one element scalar value on all elements of type "type"
virtual Real integrate(const types::RVector & f,
const ElementType & type,
UInt index, const GhostType & ghost_type = _not_ghost) const;
/// integrate partially around a quadrature point (@f$ intf_q = f_q * J_q * w_q @f$)
void integrateOnQuadraturePoints(const Vector<Real> & f,
Vector<Real> &intf,
UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const;
/// get the number of quadrature points
UInt getNbQuadraturePoints(const ElementType & type,
const GhostType & ghost_type = _not_ghost) const;
/// get shapes precomputed
const Vector<Real> & getShapes(const ElementType & type,
const GhostType & ghost_type = _not_ghost) const;
/// get the derivatives of shapes
const Vector<Real> & getShapesDerivatives(const ElementType & type,
const GhostType & ghost_type = _not_ghost,
UInt id=0) const;
/// get quadrature points
- const Vector<Real> & getQuadraturePoints(const ElementType & type,
- const GhostType & ghost_type = _not_ghost) const;
-
+ const inline types::Matrix<Real> & getQuadraturePoints(const ElementType & type,
+ const GhostType & ghost_type = _not_ghost) const;
/* ------------------------------------------------------------------------ */
/* Shape method bridges */
/* ------------------------------------------------------------------------ */
/// compute the gradient of a nodal field on the quadrature points
void gradientOnQuadraturePoints(const Vector<Real> &u,
Vector<Real> &nablauq,
const UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const;
/// interpolate a nodal field on the quadrature points
void interpolateOnQuadraturePoints(const Vector<Real> &u,
Vector<Real> &uq,
UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const;
/// find natural coords from real coords provided an element
void inverseMap(const types::RVector & real_coords,
UInt element,
const ElementType & type,
types::RVector & natural_coords,
const GhostType & ghost_type = _not_ghost) const;
/// return true if the coordinates provided are inside the element, false otherwise
inline bool contains(const types::RVector & real_coords,
UInt element,
const ElementType & type,
const GhostType & ghost_type = _not_ghost) const;
/// compute the shape on a provided point
inline void computeShapes(const types::RVector & real_coords,
UInt element,
const ElementType & type,
types::RVector & shapes,
const GhostType & ghost_type = _not_ghost) const;
/* ------------------------------------------------------------------------ */
/* Other methods */
/* ------------------------------------------------------------------------ */
/// pre-compute normals on control points
void computeNormalsOnControlPoints(const GhostType & ghost_type = _not_ghost);
void computeNormalsOnControlPoints(const Vector<Real> & field,
const GhostType & ghost_type = _not_ghost);
void computeNormalsOnControlPoints(const Vector<Real> & field,
Vector<Real> & normal,
const ElementType & type,
const GhostType & ghost_type = _not_ghost) const;
+ template<ElementType type>
+ void computeNormalsOnControlPoints(const Vector<Real> & field,
+ Vector<Real> & normal,
+ const GhostType & ghost_type) const;
/// function to print the contain of the class
// virtual void printself(std::ostream & stream, int indent = 0) const{};
void assembleFieldLumped(const Vector<Real> & field_1,
UInt nb_degree_of_freedom,
Vector<Real> & lumped,
const Vector<Int> & equation_number,
ElementType type,
const GhostType & ghost_type = _not_ghost) const;
void assembleFieldMatrix(const Vector<Real> & field,
UInt nb_degree_of_freedom,
SparseMatrix & matrix,
ElementType type,
const GhostType & ghost_type = _not_ghost) const;
private:
template <ElementType type>
void assembleLumpedTemplate(const Vector<Real> & field_1,
UInt nb_degree_of_freedom,
Vector<Real> & lumped,
const Vector<Int> & equation_number,
const GhostType & ghost_type) const;
/// @f$ \tilde{M}_{i} = \sum_j M_{ij} = \sum_j \int \rho \varphi_i \varphi_j dV = \int \rho \varphi_i dV @f$
template <ElementType type>
void assembleLumpedRowSum(const Vector<Real> & field_1,
UInt nb_degree_of_freedom,
Vector<Real> & lumped,
const Vector<Int> & equation_number,
const GhostType & ghost_type) const;
/// @f$ \tilde{M}_{i} = c * M_{ii} = \int_{V_e} \rho dV @f$
template <ElementType type>
void assembleLumpedDiagonalScaling(const Vector<Real> & field_1,
UInt nb_degree_of_freedom,
Vector<Real> & lumped,
const Vector<Int> & equation_number,
const GhostType & ghost_type) const;
template <ElementType type>
void assembleFieldMatrix(const Vector<Real> & field,
UInt nb_degree_of_freedom,
SparseMatrix & matrix,
const GhostType & ghost_type) const;
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
const ShapeFunctions & getShapeFunctionsInterface() const { return shape_functions; };
const Shape & getShapeFunctions() const { return shape_functions; };
const Integrator & getIntegratorInterface() const { return integrator; };
const Integ & getIntegrator() const { return integrator; };
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
private:
-
Integ integrator;
Shape shape_functions;
-
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
-#include "fem_template_inline_impl.cc"
#include "fem_template_tmpl.hh"
/* -------------------------------------------------------------------------- */
#if defined(AKANTU_COHESIVE_ELEMENT)
-# include "fem_template_cohesive_inline_impl.cc"
-# include "fem_template_cohesive_tmpl.hh"
+//# include "fem_template_cohesive_inline_impl.cc"
+//# include "fem_template_cohesive_tmpl.hh"
#endif
-
-/// standard output stream operator
-
-// inline std::ostream & operator <<(std::ostream & stream, const FEMTemplate & _this)
-// {
-// _this.printself(stream);
-// return stream;
-// }
-
-
__END_AKANTU__
// #if defined(AKANTU_COHESIVE_ELEMENT)
// # include "shape_cohesive.hh"
// # include "integrator_cohesive.hh"
// #endif
#endif /* __AKANTU_FEM_TEMPLATE_HH__ */
diff --git a/src/fem/fem_template_cohesive.cc b/src/fem/fem_template_cohesive.cc
index ab5709b57..01ef5977c 100644
--- a/src/fem/fem_template_cohesive.cc
+++ b/src/fem/fem_template_cohesive.cc
@@ -1,170 +1,169 @@
/**
* @file fem_template_cohesive.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Wed Oct 31 16:24:42 2012
*
* @brief Specialization for cohesive element
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "fem_template.hh"
#include "shape_cohesive.hh"
#include "integrator_cohesive.hh"
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
-template <>
-void FEMTemplate< IntegratorCohesive<IntegratorGauss>, ShapeCohesive<ShapeLagrange> >::
-initShapeFunctions(const GhostType & ghost_type) {
- AKANTU_DEBUG_IN();
-
- UInt spatial_dimension = mesh->getSpatialDimension();
- Mesh::type_iterator it = mesh->firstType(element_dimension, ghost_type, _ek_cohesive);
- Mesh::type_iterator end = mesh->lastType(element_dimension, ghost_type, _ek_cohesive);
- for(; it != end; ++it) {
- ElementType type = *it;
-
-#define INIT_SHAPE_FUNCTIONS(type) \
- integrator.computeQuadraturePoints<type>(ghost_type); \
- integrator. \
- precomputeJacobiansOnQuadraturePoints<type>(ghost_type); \
- integrator. \
- checkJacobians<type>(ghost_type); \
- const Vector<Real> & control_points = \
- integrator.getQuadraturePoints<type>(ghost_type); \
- shape_functions. \
- setControlPointsByType<type>(control_points, ghost_type); \
- shape_functions. \
- precomputeShapesOnControlPoints<type>(ghost_type); \
- if (element_dimension == spatial_dimension) \
- shape_functions. \
- precomputeShapeDerivativesOnControlPoints<type>(ghost_type);
-
- AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(INIT_SHAPE_FUNCTIONS);
-#undef INIT_SHAPE_FUNCTIONS
- }
- AKANTU_DEBUG_OUT();
-}
+// template <>
+// void FEMTemplate< IntegratorGauss, ShapeLagrange, _ek_cohesive >::
+// initShapeFunctions(const GhostType & ghost_type) {
+// AKANTU_DEBUG_IN();
+
+// UInt spatial_dimension = mesh->getSpatialDimension();
+// Mesh::type_iterator it = mesh->firstType(element_dimension, ghost_type, _ek_cohesive);
+// Mesh::type_iterator end = mesh->lastType(element_dimension, ghost_type, _ek_cohesive);
+// for(; it != end; ++it) {
+// ElementType type = *it;
+
+// #define INIT_SHAPE_FUNCTIONS(type) \
+// integrator.computeQuadraturePoints<type>(ghost_type); \
+// integrator. \
+// precomputeJacobiansOnQuadraturePoints<type>(ghost_type); \
+// integrator. \
+// checkJacobians<type>(ghost_type); \
+// const Vector<Real> & control_points = \
+// integrator.getQuadraturePoints<type>(ghost_type); \
+// shape_functions. \
+// setControlPointsByType<type>(control_points, ghost_type); \
+// shape_functions. \
+// precomputeShapesOnControlPoints<type>(ghost_type); \
+// if (element_dimension == spatial_dimension) \
+// shape_functions. \
+// precomputeShapeDerivativesOnControlPoints<type>(ghost_type);
+
+// AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(INIT_SHAPE_FUNCTIONS);
+// #undef INIT_SHAPE_FUNCTIONS
+// }
+// AKANTU_DEBUG_OUT();
+// }
/* -------------------------------------------------------------------------- */
/* compatibility functions */
/* -------------------------------------------------------------------------- */
template <>
-Real FEMTemplate<IntegratorCohesive<IntegratorGauss>,ShapeCohesive<ShapeLagrange> >::integrate(const Vector<Real> & f,
- const ElementType & type,
- const GhostType & ghost_type,
- const Vector<UInt> * filter_elements) const{
+Real FEMTemplate<IntegratorGauss, ShapeLagrange, _ek_cohesive>::integrate(const Vector<Real> & f,
+ const ElementType & type,
+ const GhostType & ghost_type,
+ const Vector<UInt> * filter_elements) const{
AKANTU_DEBUG_IN();
#ifndef AKANTU_NDEBUG
// std::stringstream sstr; sstr << ghost_type;
// AKANTU_DEBUG_ASSERT(sstr.str() == nablauq.getTag(),
// "The vector " << nablauq.getID() << " is not taged " << ghost_type);
UInt nb_element = mesh->getNbElement(type, ghost_type);
if(filter_elements != NULL) nb_element = filter_elements->getSize();
UInt nb_quadrature_points = getNbQuadraturePoints(type);
AKANTU_DEBUG_ASSERT(f.getSize() == nb_element * nb_quadrature_points,
"The vector f(" << f.getID()
<< ") has not the good size.");
AKANTU_DEBUG_ASSERT(f.getNbComponent() == 1,
"The vector f(" << f.getID()
<< ") has not the good number of component.");
#endif
Real integral = 0.;
#define INTEGRATE(type) \
integral = integrator. integrate<type>(f, \
- ghost_type, \
- filter_elements);
+ ghost_type, \
+ filter_elements);
AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(INTEGRATE);
#undef INTEGRATE
AKANTU_DEBUG_OUT();
return integral;
}
/* -------------------------------------------------------------------------- */
template <>
-void FEMTemplate<IntegratorCohesive<IntegratorGauss>,ShapeCohesive<ShapeLagrange> >
+void FEMTemplate<IntegratorGauss, ShapeLagrange, _ek_cohesive>
::integrate(const Vector<Real> & f,
Vector<Real> &intf,
UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const{
#ifndef AKANTU_NDEBUG
// std::stringstream sstr; sstr << ghost_type;
// AKANTU_DEBUG_ASSERT(sstr.str() == nablauq.getTag(),
// "The vector " << nablauq.getID() << " is not taged " << ghost_type);
UInt nb_element = mesh->getNbElement(type, ghost_type);
if(filter_elements != NULL) nb_element = filter_elements->getSize();
UInt nb_quadrature_points = getNbQuadraturePoints(type);
AKANTU_DEBUG_ASSERT(f.getSize() == nb_element * nb_quadrature_points,
"The vector f(" << f.getID() << " size " << f.getSize()
<< ") has not the good size (" << nb_element << ").");
AKANTU_DEBUG_ASSERT(f.getNbComponent() == nb_degree_of_freedom ,
"The vector f(" << f.getID()
<< ") has not the good number of component.");
AKANTU_DEBUG_ASSERT(intf.getNbComponent() == nb_degree_of_freedom,
"The vector intf(" << intf.getID()
<< ") has not the good number of component.");
AKANTU_DEBUG_ASSERT(intf.getSize() == nb_element,
"The vector intf(" << intf.getID()
<< ") has not the good size.");
#endif
#define INTEGRATE(type) \
integrator. integrate<type>(f, \
intf, \
nb_degree_of_freedom, \
ghost_type, \
filter_elements);
- // AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(INTEGRATE);
AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(INTEGRATE);
#undef INTEGRATE
}
/* -------------------------------------------------------------------------- */
template <>
-void FEMTemplate< IntegratorCohesive<IntegratorGauss>, ShapeCohesive<ShapeLagrange> >::
+void FEMTemplate<IntegratorGauss, ShapeLagrange, _ek_cohesive>::
gradientOnQuadraturePoints(__attribute__((unused)) const Vector<Real> &u,
__attribute__((unused)) Vector<Real> &nablauq,
__attribute__((unused)) const UInt nb_degree_of_freedom,
__attribute__((unused)) const ElementType & type,
__attribute__((unused)) const GhostType & ghost_type,
__attribute__((unused)) const Vector<UInt> * filter_elements) const {
AKANTU_DEBUG_TO_IMPLEMENT();
}
__END_AKANTU__
diff --git a/src/fem/fem_template_cohesive_inline_impl.cc b/src/fem/fem_template_cohesive_inline_impl.cc
index 3e1635777..7927ec682 100644
--- a/src/fem/fem_template_cohesive_inline_impl.cc
+++ b/src/fem/fem_template_cohesive_inline_impl.cc
@@ -1,107 +1,107 @@
/**
* @file fem_template_cohesive_inline_impl.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Mon Nov 5 15:05:16 2012
*
* @brief Inline part of FEMTemplate for cohesive elements
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
__END_AKANTU__
#include "shape_cohesive.hh"
#include "integrator_cohesive.hh"
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
template <>
inline void FEMTemplate<IntegratorCohesive<IntegratorGauss>,ShapeCohesive<ShapeLagrange> >::
inverseMap(__attribute__((unused)) const types::RVector & real_coords,
__attribute__((unused)) UInt element,
__attribute__((unused)) const ElementType & type,
__attribute__((unused)) types::RVector & natural_coords,
__attribute__((unused)) const GhostType & ghost_type) const{
AKANTU_DEBUG_TO_IMPLEMENT();
}
/* -------------------------------------------------------------------------- */
template <>
inline bool FEMTemplate<IntegratorCohesive<IntegratorGauss>,ShapeCohesive<ShapeLagrange> >::
contains(__attribute__((unused)) const types::RVector & real_coords,
__attribute__((unused)) UInt element,
__attribute__((unused)) const ElementType & type,
__attribute__((unused)) const GhostType & ghost_type) const{
AKANTU_DEBUG_TO_IMPLEMENT();
}
/* -------------------------------------------------------------------------- */
template <>
inline void FEMTemplate<IntegratorCohesive<IntegratorGauss>,ShapeCohesive<ShapeLagrange> >::
computeShapes(__attribute__((unused)) const types::RVector & real_coords,
__attribute__((unused)) UInt element,
__attribute__((unused)) const ElementType & type,
__attribute__((unused)) types::RVector & shapes,
__attribute__((unused)) const GhostType & ghost_type) const{
AKANTU_DEBUG_TO_IMPLEMENT();
}
/* -------------------------------------------------------------------------- */
template <>
inline UInt FEMTemplate<IntegratorCohesive<IntegratorGauss>,ShapeCohesive<ShapeLagrange> >::
getNbQuadraturePoints(const ElementType & type,
const GhostType & ghost_type) const {
AKANTU_DEBUG_IN();
UInt nb_quad_points = 0;
#define GET_NB_QUAD(type) \
nb_quad_points = \
- integrator. getQuadraturePoints<type>(ghost_type).getSize();
+ integrator. getQuadraturePoints<type>(ghost_type).cols();
// AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(GET_NB_QUAD);
AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(GET_NB_QUAD);
#undef GET_NB_QUAD
AKANTU_DEBUG_OUT();
return nb_quad_points;
}
/* -------------------------------------------------------------------------- */
template <>
inline const Vector<Real> & FEMTemplate<IntegratorCohesive<IntegratorGauss>,ShapeCohesive<ShapeLagrange> >::
getShapes(const ElementType & type,
const GhostType & ghost_type) const {
AKANTU_DEBUG_IN();
const Vector<Real> * ret = NULL;
#define GET_SHAPES(type) \
ret = &(shape_functions.getShapes(type, ghost_type));
// AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(GET_SHAPES);
AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(GET_SHAPES);
#undef GET_SHAPES
AKANTU_DEBUG_OUT();
return *ret;
}
diff --git a/src/fem/fem_template_cohesive_tmpl.hh b/src/fem/fem_template_cohesive_tmpl.hh
index e0e6455d7..9a015ad9b 100644
--- a/src/fem/fem_template_cohesive_tmpl.hh
+++ b/src/fem/fem_template_cohesive_tmpl.hh
@@ -1,59 +1,61 @@
/**
* @file fem_template_cohesive_tmpl.hh
* @author Nicolas Richart <nicolas.richart@epfl.ch>
* @date Mon Nov 5 17:23:44 2012
*
* @brief Cohesive element template specialization declaration
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
template <>
void FEMTemplate< IntegratorCohesive<IntegratorGauss>, ShapeCohesive<ShapeLagrange> >::
gradientOnQuadraturePoints(const Vector<Real> &u,
Vector<Real> &nablauq,
const UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const;
+
/* -------------------------------------------------------------------------- */
template <>
void FEMTemplate< IntegratorCohesive<IntegratorGauss>, ShapeCohesive<ShapeLagrange> >::
initShapeFunctions(const GhostType & ghost_type);
+
/* -------------------------------------------------------------------------- */
template <>
Real FEMTemplate< IntegratorCohesive<IntegratorGauss>, ShapeCohesive<ShapeLagrange> >::
integrate(const Vector<Real> & f,
const ElementType & type,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const;
/* -------------------------------------------------------------------------- */
template <>
void FEMTemplate< IntegratorCohesive<IntegratorGauss>, ShapeCohesive<ShapeLagrange> >::
integrate(const Vector<Real> & f,
Vector<Real> &intf,
UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const;
diff --git a/src/fem/fem_template_inline_impl.cc b/src/fem/fem_template_inline_impl.cc
index 59fe00868..86993130b 100644
--- a/src/fem/fem_template_inline_impl.cc
+++ b/src/fem/fem_template_inline_impl.cc
@@ -1,220 +1,29 @@
/**
* @file fem_template_inline_impl.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
*
* @date Tue May 22 20:45:51 2012
*
* @brief FEMTemplate inline implementation
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
-/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-inline void FEMTemplate<Integ,Shape>::inverseMap(const types::RVector & real_coords,
- UInt element,
- const ElementType & type,
- types::RVector & natural_coords,
- const GhostType & ghost_type) const{
-
- AKANTU_DEBUG_IN();
-
-#define INVERSE_MAP(type) \
- shape_functions.template inverseMap<type>(real_coords,element,natural_coords,ghost_type);
-
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(INVERSE_MAP);
-
-#undef INVERSE_MAP
-
- AKANTU_DEBUG_OUT();
-}
-
-/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-inline bool FEMTemplate<Integ,Shape>::contains(const types::RVector & real_coords,
- UInt element,
- const ElementType & type,
- const GhostType & ghost_type) const{
-
- AKANTU_DEBUG_IN();
-
- bool contain = false;
-
-#define CONTAINS(type) \
- contain = shape_functions.template contains<type>(real_coords,element,ghost_type);
-
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(CONTAINS);
-
-#undef CONTAINS
-
- AKANTU_DEBUG_OUT();
- return contain;
-}
-
-/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-inline void FEMTemplate<Integ,Shape>::computeShapes(const types::RVector & real_coords,
- UInt element,
- const ElementType & type,
- types::RVector & shapes,
- const GhostType & ghost_type) const{
-
- AKANTU_DEBUG_IN();
-
-#define COMPUTE_SHAPES(type) \
- shape_functions.template computeShapes<type>(real_coords,element,shapes,ghost_type);
-
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(COMPUTE_SHAPES);
-
-#undef COMPUTE_SHAPES
-
- AKANTU_DEBUG_OUT();
-}
-
-/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-inline UInt FEMTemplate<Integ,Shape>::getNbQuadraturePoints(const ElementType & type,
- const GhostType & ghost_type) const {
- AKANTU_DEBUG_IN();
-
- UInt nb_quad_points = 0;
-
-#define GET_NB_QUAD(type) \
- nb_quad_points = \
- integrator. template getQuadraturePoints<type>(ghost_type).getSize();
-
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(GET_NB_QUAD);
-#undef GET_NB_QUAD
-
- AKANTU_DEBUG_OUT();
- return nb_quad_points;
-}
-
-
-/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-inline const Vector<Real> & FEMTemplate<Integ,Shape>::getShapes(const ElementType & type,
- const GhostType & ghost_type) const {
- AKANTU_DEBUG_IN();
- const Vector<Real> * ret = NULL;
-
-#define GET_SHAPES(type) \
- ret = &(shape_functions.getShapes(type, ghost_type));
-
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(GET_SHAPES);
-#undef GET_SHAPES
-
- AKANTU_DEBUG_OUT();
- return *ret;
-}
-
-/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-inline const Vector<Real> & FEMTemplate<Integ,Shape>::getShapesDerivatives(const ElementType & type,
- const GhostType & ghost_type,
- __attribute__((unused)) UInt id) const {
- AKANTU_DEBUG_IN();
- const Vector<Real> * ret = NULL;
-
-#define GET_SHAPES(type) \
- ret = &(shape_functions.getShapesDerivatives(type, ghost_type));
-
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(GET_SHAPES);
-#undef GET_SHAPES
-
- AKANTU_DEBUG_OUT();
- return *ret;
-}
-
-/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-inline const Vector<Real> & FEMTemplate<Integ,Shape>::getQuadraturePoints(const ElementType & type,
- const GhostType & ghost_type) const {
- AKANTU_DEBUG_IN();
- const Vector<Real> * ret = NULL;
-
-#define GET_QUADS(type) \
- ret = &(integrator. template getQuadraturePoints<type>(ghost_type));
-
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(GET_QUADS);
-#undef GET_QUADS
-
- AKANTU_DEBUG_OUT();
- return *ret;
-}
-
-/* -------------------------------------------------------------------------- */
-/* Shape Linked specialization */
-/* -------------------------------------------------------------------------- */
-
-
-/* -------------------------------------------------------------------------- */
-template <>
-inline bool FEMTemplate<IntegratorGauss,ShapeLinked >
-::contains(__attribute__((unused)) const types::RVector & real_coords,
- __attribute__((unused)) UInt element,
- __attribute__((unused)) const ElementType & type,
- __attribute__((unused)) const GhostType & ghost_type) const{
-
- AKANTU_DEBUG_TO_IMPLEMENT();
-}
-
-/* -------------------------------------------------------------------------- */
-template <>
-inline void FEMTemplate<IntegratorGauss,ShapeLinked >
-::computeShapes(__attribute__((unused)) const types::RVector & real_coords,
- __attribute__((unused)) UInt element,
- __attribute__((unused)) const ElementType & type,
- __attribute__((unused)) types::RVector & shapes,
- __attribute__((unused)) const GhostType & ghost_type) const{
- AKANTU_DEBUG_TO_IMPLEMENT();
-}
-
-/* -------------------------------------------------------------------------- */
-template <>
-inline void FEMTemplate<IntegratorGauss,ShapeLinked >
-::inverseMap(__attribute__((unused)) const types::RVector & real_coords,
- __attribute__((unused)) UInt element,
- __attribute__((unused)) const ElementType & type,
- __attribute__((unused)) types::RVector & natural_coords,
- __attribute__((unused)) const GhostType & ghost_type) const{
-
- AKANTU_DEBUG_TO_IMPLEMENT();
-}
-
-/* -------------------------------------------------------------------------- */
-template <>
-inline const Vector<Real> &
-FEMTemplate<IntegratorGauss, ShapeLinked>::getShapesDerivatives(const ElementType & type,
- const GhostType & ghost_type,
- UInt id) const {
- AKANTU_DEBUG_IN();
- const Vector<Real> * ret = NULL;
-
-#define GET_SHAPES(type) \
- ret = &(shape_functions.getShapesDerivatives(type, ghost_type, id));
-
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(GET_SHAPES);
-#undef GET_SHAPES
-
- AKANTU_DEBUG_OUT();
- return *ret;
-}
diff --git a/src/fem/fem_template_tmpl.hh b/src/fem/fem_template_tmpl.hh
index cd9ab6a76..5ebc4d1b0 100644
--- a/src/fem/fem_template_tmpl.hh
+++ b/src/fem/fem_template_tmpl.hh
@@ -1,669 +1,922 @@
/**
* @file fem_template_tmpl.hh
* @author Nicolas Richart <nicolas.richart@epfl.ch>
* @date Mon Nov 5 17:08:50 2012
*
* @brief Template implementation of FEMTemplate
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-FEMTemplate<Integ,Shape>::FEMTemplate(Mesh & mesh, UInt spatial_dimension,
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+FEMTemplate<I, S, kind>::FEMTemplate(Mesh & mesh, UInt spatial_dimension,
ID id, MemoryID memory_id) :
FEM(mesh,spatial_dimension,id,memory_id),
integrator(mesh, id, memory_id),
shape_functions(mesh, id, memory_id) { }
/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-FEMTemplate<Integ,Shape>::~FEMTemplate() { }
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+FEMTemplate<I, S, kind>::~FEMTemplate() { }
/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-void FEMTemplate<Integ,Shape>::gradientOnQuadraturePoints(const Vector<Real> &u,
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+void FEMTemplate<I, S, kind>::gradientOnQuadraturePoints(const Vector<Real> &u,
Vector<Real> &nablauq,
const UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const {
AKANTU_DEBUG_IN();
#ifndef AKANTU_NDEBUG
-// std::stringstream sstr; sstr << ghost_type;
-// AKANTU_DEBUG_ASSERT(sstr.str() == nablauq.getTag(),
-// "The vector " << nablauq.getID() << " is not taged " << ghost_type);
UInt nb_element = mesh->getNbElement(type, ghost_type);
if(filter_elements != NULL) nb_element = filter_elements->getSize();
UInt element_dimension = mesh->getSpatialDimension(type);
- UInt nb_points = shape_functions.getControlPoints(type, ghost_type).getSize();
+ UInt nb_points = shape_functions.getControlPoints(type, ghost_type).cols();
AKANTU_DEBUG_ASSERT(u.getSize() == mesh->getNbNodes(),
"The vector u(" << u.getID()
<< ") has not the good size.");
AKANTU_DEBUG_ASSERT(u.getNbComponent() == nb_degree_of_freedom ,
"The vector u(" << u.getID()
<< ") has not the good number of component.");
AKANTU_DEBUG_ASSERT(nablauq.getNbComponent()
== nb_degree_of_freedom * element_dimension,
"The vector nablauq(" << nablauq.getID()
<< ") has not the good number of component.");
AKANTU_DEBUG_ASSERT(nablauq.getSize() == nb_element * nb_points,
"The vector nablauq(" << nablauq.getID()
<< ") has not the good size.");
#endif
#define COMPUTE_GRADIENT(type) \
if (element_dimension == ElementClass<type>::getSpatialDimension()) \
shape_functions.template gradientOnControlPoints<type>(u, \
nablauq, \
nb_degree_of_freedom, \
ghost_type, \
filter_elements);
+
+ if(kind == _ek_regular)
AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(COMPUTE_GRADIENT);
+ else if(kind == _ek_cohesive)
+ AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(COMPUTE_GRADIENT);
+ else
+ AKANTU_DEBUG_TO_IMPLEMENT();
#undef COMPUTE_GRADIENT
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-void FEMTemplate<Integ,Shape>::initShapeFunctions(const GhostType & ghost_type) {
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+void FEMTemplate<I, S, kind>::initShapeFunctions(const GhostType & ghost_type) {
+ initShapeFunctions(mesh->getNodes(), ghost_type);
+}
+
+/* -------------------------------------------------------------------------- */
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+void FEMTemplate<I, S, kind>::initShapeFunctions(const Vector<Real> & nodes,
+ const GhostType & ghost_type) {
AKANTU_DEBUG_IN();
- UInt spatial_dimension = mesh->getSpatialDimension();
- Mesh::type_iterator it = mesh->firstType(element_dimension, ghost_type);
- Mesh::type_iterator end = mesh->lastType(element_dimension, ghost_type);
+ Mesh::type_iterator it = mesh->firstType(element_dimension, ghost_type, kind);
+ Mesh::type_iterator end = mesh->lastType(element_dimension, ghost_type, kind);
for(; it != end; ++it) {
ElementType type = *it;
-
-#define INIT_SHAPE_FUNCTIONS(type) \
- integrator.template computeQuadraturePoints<type>(ghost_type); \
- integrator. \
- template precomputeJacobiansOnQuadraturePoints<type>(ghost_type); \
- integrator. \
- template checkJacobians<type>(ghost_type); \
- const Vector<Real> & control_points = \
- integrator.template getQuadraturePoints<type>(ghost_type); \
- shape_functions. \
- template setControlPointsByType<type>(control_points, ghost_type); \
- shape_functions. \
- template precomputeShapesOnControlPoints<type>(ghost_type); \
- if (element_dimension == spatial_dimension) \
- shape_functions. \
- template precomputeShapeDerivativesOnControlPoints<type>(ghost_type);
-
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(INIT_SHAPE_FUNCTIONS);
-#undef INIT_SHAPE_FUNCTIONS
+ integrator.initIntegrator(nodes, type, ghost_type);
+ const types::Matrix<Real> control_points =
+ getQuadraturePoints(type, ghost_type);
+ shape_functions.initShapeFunctions(nodes, control_points, type, ghost_type);
}
+
AKANTU_DEBUG_OUT();
}
-
-
/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-void FEMTemplate<Integ,Shape>::integrate(const Vector<Real> & f,
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+void FEMTemplate<I, S, kind>::integrate(const Vector<Real> & f,
Vector<Real> &intf,
UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const{
#ifndef AKANTU_NDEBUG
-// std::stringstream sstr; sstr << ghost_type;
-// AKANTU_DEBUG_ASSERT(sstr.str() == nablauq.getTag(),
-// "The vector " << nablauq.getID() << " is not taged " << ghost_type);
UInt nb_element = mesh->getNbElement(type, ghost_type);
if(filter_elements != NULL) nb_element = filter_elements->getSize();
UInt nb_quadrature_points = getNbQuadraturePoints(type);
AKANTU_DEBUG_ASSERT(f.getSize() == nb_element * nb_quadrature_points,
"The vector f(" << f.getID() << " size " << f.getSize()
<< ") has not the good size (" << nb_element << ").");
AKANTU_DEBUG_ASSERT(f.getNbComponent() == nb_degree_of_freedom ,
"The vector f(" << f.getID()
<< ") has not the good number of component.");
AKANTU_DEBUG_ASSERT(intf.getNbComponent() == nb_degree_of_freedom,
"The vector intf(" << intf.getID()
<< ") has not the good number of component.");
AKANTU_DEBUG_ASSERT(intf.getSize() == nb_element,
"The vector intf(" << intf.getID()
<< ") has not the good size.");
#endif
#define INTEGRATE(type) \
integrator.template integrate<type>(f, \
intf, \
nb_degree_of_freedom, \
ghost_type, \
filter_elements);
+ if(kind == _ek_regular)
AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(INTEGRATE);
+ else if(kind == _ek_cohesive)
+ AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(INTEGRATE);
+ else if(kind == _ek_structural)
+ AKANTU_BOOST_STRUCTURAL_ELEMENT_SWITCH(INTEGRATE);
+ else
+ AKANTU_DEBUG_TO_IMPLEMENT();
#undef INTEGRATE
}
/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-Real FEMTemplate<Integ,Shape>::integrate(const Vector<Real> & f,
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+Real FEMTemplate<I, S, kind>::integrate(const Vector<Real> & f,
const ElementType & type,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const{
AKANTU_DEBUG_IN();
#ifndef AKANTU_NDEBUG
// std::stringstream sstr; sstr << ghost_type;
// AKANTU_DEBUG_ASSERT(sstr.str() == nablauq.getTag(),
// "The vector " << nablauq.getID() << " is not taged " << ghost_type);
UInt nb_element = mesh->getNbElement(type, ghost_type);
if(filter_elements != NULL) nb_element = filter_elements->getSize();
UInt nb_quadrature_points = getNbQuadraturePoints(type, ghost_type);
AKANTU_DEBUG_ASSERT(f.getSize() == nb_element * nb_quadrature_points,
"The vector f(" << f.getID()
<< ") has not the good size. (" << f.getSize() << "!=" << nb_quadrature_points * nb_element << ")");
AKANTU_DEBUG_ASSERT(f.getNbComponent() == 1,
"The vector f(" << f.getID()
<< ") has not the good number of component.");
#endif
Real integral = 0.;
#define INTEGRATE(type) \
integral = integrator.template integrate<type>(f, \
ghost_type, \
filter_elements);
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(INTEGRATE);
+ if(kind == _ek_regular)
+ AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(INTEGRATE);
+ else if(kind == _ek_cohesive)
+ AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(INTEGRATE);
+ else if(kind == _ek_structural)
+ AKANTU_BOOST_STRUCTURAL_ELEMENT_SWITCH(INTEGRATE);
+ else
+ AKANTU_DEBUG_TO_IMPLEMENT();
#undef INTEGRATE
AKANTU_DEBUG_OUT();
return integral;
}
/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-Real FEMTemplate<Integ,Shape>::integrate(const types::RVector & f,
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+Real FEMTemplate<I, S, kind>::integrate(const types::RVector & f,
const ElementType & type,
UInt index,
const GhostType & ghost_type) const{
Real res = 0.;
#define INTEGRATE(type) \
res = integrator.template integrate<type>(f, \
index, \
ghost_type);
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(INTEGRATE);
+ if(kind == _ek_regular)
+ AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(INTEGRATE);
+ else if(kind == _ek_cohesive)
+ AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(INTEGRATE);
+ else if(kind == _ek_structural)
+ AKANTU_BOOST_STRUCTURAL_ELEMENT_SWITCH(INTEGRATE);
+ else
+ AKANTU_DEBUG_TO_IMPLEMENT();
#undef INTEGRATE
return res;
}
/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-void FEMTemplate<Integ,Shape>::integrateOnQuadraturePoints(const Vector<Real> & f,
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+void FEMTemplate<I, S, kind>::integrateOnQuadraturePoints(const Vector<Real> & f,
Vector<Real> &intf,
UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const{
#ifndef AKANTU_NDEBUG
// std::stringstream sstr; sstr << ghost_type;
// AKANTU_DEBUG_ASSERT(sstr.str() == nablauq.getTag(),
// "The vector " << nablauq.getID() << " is not taged " << ghost_type);
UInt nb_element = mesh->getNbElement(type, ghost_type);
if(filter_elements != NULL) nb_element = filter_elements->getSize();
UInt nb_quadrature_points = getNbQuadraturePoints(type);
AKANTU_DEBUG_ASSERT(f.getSize() == nb_element * nb_quadrature_points,
"The vector f(" << f.getID() << " size " << f.getSize()
<< ") has not the good size (" << nb_element << ").");
AKANTU_DEBUG_ASSERT(f.getNbComponent() == nb_degree_of_freedom ,
"The vector f(" << f.getID()
<< ") has not the good number of component.");
AKANTU_DEBUG_ASSERT(intf.getNbComponent() == nb_degree_of_freedom,
"The vector intf(" << intf.getID()
<< ") has not the good number of component.");
AKANTU_DEBUG_ASSERT(intf.getSize() == nb_element * nb_quadrature_points,
"The vector intf(" << intf.getID()
<< ") has not the good size.");
#endif
#define INTEGRATE(type) \
integrator.template integrateOnQuadraturePoints<type>(f, \
intf, \
nb_degree_of_freedom, \
ghost_type, \
filter_elements);
+ if(kind == _ek_regular)
AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(INTEGRATE);
+ else if(kind == _ek_cohesive)
+ AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(INTEGRATE);
+ else if(kind == _ek_structural)
+ AKANTU_BOOST_STRUCTURAL_ELEMENT_SWITCH(INTEGRATE);
+ else
+ AKANTU_DEBUG_TO_IMPLEMENT();
#undef INTEGRATE
}
/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-void FEMTemplate<Integ,Shape>::interpolateOnQuadraturePoints(const Vector<Real> &u,
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+void FEMTemplate<I, S, kind>::interpolateOnQuadraturePoints(const Vector<Real> &u,
Vector<Real> &uq,
UInt nb_degree_of_freedom,
const ElementType & type,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const{
AKANTU_DEBUG_IN();
#ifndef AKANTU_NDEBUG
// std::stringstream sstr; sstr << ghost_type;
// AKANTU_DEBUG_ASSERT(sstr.str() == nablauq.getTag(),
// "The vector " << nablauq.getID() << " is not taged " << ghost_type);
UInt nb_element = mesh->getNbElement(type, ghost_type);
if(filter_elements != NULL) nb_element = filter_elements->getSize();
- UInt nb_points = shape_functions.getControlPoints(type, ghost_type).getSize();
+ UInt nb_points = shape_functions.getControlPoints(type, ghost_type).cols();
AKANTU_DEBUG_ASSERT(u.getSize() == mesh->getNbNodes(),
"The vector u(" << u.getID()
<< ") has not the good size.");
AKANTU_DEBUG_ASSERT(u.getNbComponent() == nb_degree_of_freedom ,
"The vector u(" << u.getID()
<< ") has not the good number of component.");
AKANTU_DEBUG_ASSERT(uq.getNbComponent() == nb_degree_of_freedom,
"The vector uq(" << uq.getID()
<< ") has not the good number of component.");
AKANTU_DEBUG_ASSERT(uq.getSize() == nb_element * nb_points,
"The vector uq(" << uq.getID()
<< ") has not the good size.");
#endif
#define INTERPOLATE(type) \
shape_functions.template interpolateOnControlPoints<type>(u, \
uq, \
nb_degree_of_freedom, \
ghost_type, \
filter_elements);
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(INTERPOLATE);
+ if(kind == _ek_regular)
+ AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(INTERPOLATE);
+ else if(kind == _ek_cohesive)
+ AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(INTERPOLATE);
+ else
+ AKANTU_DEBUG_TO_IMPLEMENT();
#undef INTERPOLATE
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-void FEMTemplate<Integ,Shape>::computeNormalsOnControlPoints(const GhostType & ghost_type) {
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+void FEMTemplate<I, S, kind>::computeNormalsOnControlPoints(const GhostType & ghost_type) {
AKANTU_DEBUG_IN();
computeNormalsOnControlPoints(mesh->getNodes(),
ghost_type);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-void FEMTemplate<Integ,Shape>::computeNormalsOnControlPoints(const Vector<Real> & field,
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+void FEMTemplate<I, S, kind>::computeNormalsOnControlPoints(const Vector<Real> & field,
const GhostType & ghost_type) {
AKANTU_DEBUG_IN();
if (ghost_type == _ghost) { AKANTU_DEBUG_TO_IMPLEMENT(); }
// Real * coord = mesh->getNodes().values;
UInt spatial_dimension = mesh->getSpatialDimension();
//allocate the normal arrays
mesh->initByElementTypeVector(normals_on_quad_points, spatial_dimension, element_dimension);
//loop over the type to build the normals
- Mesh::type_iterator it = mesh->firstType(element_dimension, ghost_type);
- Mesh::type_iterator end = mesh->lastType(element_dimension, ghost_type);
+ Mesh::type_iterator it = mesh->firstType(element_dimension, ghost_type, kind);
+ Mesh::type_iterator end = mesh->lastType(element_dimension, ghost_type, kind);
for(; it != end; ++it) {
Vector<Real> & normals_on_quad = normals_on_quad_points(*it, ghost_type);
computeNormalsOnControlPoints(field, normals_on_quad, *it, ghost_type);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-void FEMTemplate<Integ,Shape>::computeNormalsOnControlPoints(const Vector<Real> & field,
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+void FEMTemplate<I, S, kind>::computeNormalsOnControlPoints(const Vector<Real> & field,
Vector<Real> & normal,
const ElementType & type,
const GhostType & ghost_type) const {
+#define COMPUTE_NORMALS_ON_QUAD(type) \
+ computeNormalsOnControlPoints<type>(field, normal, ghost_type);
+
+ if(kind == _ek_regular)
+ AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(COMPUTE_NORMALS_ON_QUAD);
+ else if(kind == _ek_cohesive)
+ AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(COMPUTE_NORMALS_ON_QUAD);
+ else
+ AKANTU_DEBUG_TO_IMPLEMENT();
+
+#undef COMPUTE_NORMALS_ON_QUAD
+}
+
+/* -------------------------------------------------------------------------- */
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+template<ElementType type>
+void FEMTemplate<I, S, kind>::computeNormalsOnControlPoints(const Vector<Real> & field,
+ Vector<Real> & normal,
+ const GhostType & ghost_type) const {
AKANTU_DEBUG_IN();
if (ghost_type == _ghost) { AKANTU_DEBUG_TO_IMPLEMENT(); }
UInt spatial_dimension = mesh->getSpatialDimension();
- UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
- UInt nb_quad_points = getQuadraturePoints(type, ghost_type).getSize();
- UInt * elem_val = mesh->getConnectivity(type, ghost_type).storage();
- UInt nb_element = mesh->getConnectivity(type, ghost_type).getSize();
-
- normal.resize(nb_element * nb_quad_points);
- Real * normals_on_quad_val = normal.storage();
+ UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
+ UInt nb_points = getNbQuadraturePoints(type, ghost_type);
- /* ---------------------------------------------------------------------- */
-#define COMPUTE_NORMALS_ON_QUAD(type) \
- do { \
- const Vector<Real> & quads = \
- integrator. template getQuadraturePoints<type>(ghost_type); \
- UInt nb_points = quads.getSize(); \
- Real local_coord[spatial_dimension * nb_nodes_per_element]; \
- for (UInt elem = 0; elem < nb_element; ++elem) { \
- mesh->extractNodalValuesFromElement(field, \
- local_coord, \
- elem_val+elem*nb_nodes_per_element, \
- nb_nodes_per_element, \
- spatial_dimension); \
- \
- ElementClass<type>::computeNormalsOnQuadPoint(local_coord, \
- spatial_dimension, \
- normals_on_quad_val); \
- normals_on_quad_val += spatial_dimension*nb_points; \
- } \
- } while(0)
- /* ---------------------------------------------------------------------- */
-
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(COMPUTE_NORMALS_ON_QUAD);
-#undef COMPUTE_NORMALS_ON_QUAD
+ UInt nb_element = mesh->getConnectivity(type, ghost_type).getSize();
+ normal.resize(nb_element * nb_points);
+ Vector<Real>::iterator< types::Matrix<Real> > normals_on_quad = normal.begin_reinterpret(spatial_dimension,
+ nb_points,
+ nb_element);
+ Vector<Real> f_el(0, spatial_dimension * nb_nodes_per_element);
+ FEM::extractNodalToElementField(*mesh, field, f_el, type, ghost_type);
+
+ const types::Matrix<Real> quads =
+ integrator. template getQuadraturePoints<type>(ghost_type);
+
+ Vector<Real>::iterator< types::Matrix<Real> > f_it = f_el.begin(spatial_dimension, nb_nodes_per_element);
+
+ for (UInt elem = 0; elem < nb_element; ++elem) {
+ ElementClass<type>::computeNormalsOnNaturalCoordinates(quads,
+ *f_it,
+ *normals_on_quad);
+ ++normals_on_quad;
+ ++f_it;
+ }
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/* Matrix lumping functions */
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-void FEMTemplate<Integ,Shape>::assembleFieldLumped(const Vector<Real> & field_1,
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+void FEMTemplate<I, S, kind>::assembleFieldLumped(const Vector<Real> & field_1,
UInt nb_degree_of_freedom,
Vector<Real> & lumped,
const Vector<Int> & equation_number,
ElementType type,
const GhostType & ghost_type) const {
AKANTU_DEBUG_IN();
#define ASSEMBLE_LUMPED(type) \
assembleLumpedTemplate<type>(field_1, nb_degree_of_freedom,lumped, equation_number,ghost_type)
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(ASSEMBLE_LUMPED);;
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(ASSEMBLE_LUMPED);;
#undef ASSEMBLE_LUMPED
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
-void FEMTemplate<Integ,Shape>::assembleFieldMatrix(const Vector<Real> & field_1,
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+void FEMTemplate<I, S, kind>::assembleFieldMatrix(const Vector<Real> & field_1,
UInt nb_degree_of_freedom,
SparseMatrix & matrix,
ElementType type,
const GhostType & ghost_type) const {
AKANTU_DEBUG_IN();
#define ASSEMBLE_MATRIX(type) \
assembleFieldMatrix<type>(field_1, nb_degree_of_freedom, \
matrix, \
ghost_type)
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(ASSEMBLE_MATRIX);;
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(ASSEMBLE_MATRIX);;
#undef ASSEMBLE_MATRIX
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-template <>
-template <>
-inline void FEMTemplate<IntegratorGauss,ShapeLagrange>::
-assembleLumpedTemplate<_triangle_6>(const Vector<Real> & field_1,
- UInt nb_degree_of_freedom,
- Vector<Real> & lumped,
- const Vector<Int> & equation_number,
- const GhostType & ghost_type) const {
- assembleLumpedDiagonalScaling<_triangle_6>(field_1, nb_degree_of_freedom,lumped, equation_number,ghost_type);
-}
-
-/* -------------------------------------------------------------------------- */
-template <>
-template <>
-inline void FEMTemplate<IntegratorGauss,ShapeLagrange>::
-assembleLumpedTemplate<_tetrahedron_10>(const Vector<Real> & field_1,
- UInt nb_degree_of_freedom,
- Vector<Real> & lumped,
- const Vector<Int> & equation_number,
- const GhostType & ghost_type) const {
- assembleLumpedDiagonalScaling<_tetrahedron_10>(field_1, nb_degree_of_freedom,lumped, equation_number,ghost_type);
-}
-
-/* -------------------------------------------------------------------------- */
-template <>
-template <>
-inline void
-FEMTemplate<IntegratorGauss,ShapeLagrange>::assembleLumpedTemplate<_quadrangle_8>(const Vector<Real> & field_1,
- UInt nb_degree_of_freedom,
- Vector<Real> & lumped,
- const Vector<Int> & equation_number,
- const GhostType & ghost_type) const {
- assembleLumpedDiagonalScaling<_quadrangle_8>(field_1, nb_degree_of_freedom,lumped, equation_number, ghost_type);
-}
-
-
-/* -------------------------------------------------------------------------- */
-template <typename Integ, typename Shape>
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
template <ElementType type>
-void FEMTemplate<Integ,Shape>::assembleLumpedTemplate(const Vector<Real> & field_1,
+void FEMTemplate<I, S, kind>::assembleLumpedTemplate(const Vector<Real> & field_1,
UInt nb_degree_of_freedom,
Vector<Real> & lumped,
const Vector<Int> & equation_number,
const GhostType & ghost_type) const {
this->template assembleLumpedRowSum<type>(field_1, nb_degree_of_freedom,lumped, equation_number,ghost_type);
}
/* -------------------------------------------------------------------------- */
/**
* @f$ \tilde{M}_{i} = \sum_j M_{ij} = \sum_j \int \rho \varphi_i \varphi_j dV = \int \rho \varphi_i dV @f$
*/
-template <typename Integ, typename Shape>
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
template <ElementType type>
-void FEMTemplate<Integ,Shape>::assembleLumpedRowSum(const Vector<Real> & field_1,
+void FEMTemplate<I, S, kind>::assembleLumpedRowSum(const Vector<Real> & field_1,
UInt nb_degree_of_freedom,
Vector<Real> & lumped,
const Vector<Int> & equation_number,
const GhostType & ghost_type) const {
AKANTU_DEBUG_IN();
UInt shapes_size = ElementClass<type>::getShapeSize();
Vector<Real> * field_times_shapes = new Vector<Real>(0, 1);//shapes_size);
shape_functions.template fieldTimesShapes<type>(field_1, *field_times_shapes, ghost_type);
UInt nb_element = mesh->getNbElement(type, ghost_type);
Vector<Real> * int_field_times_shapes = new Vector<Real>(nb_element, shapes_size,
"inte_rho_x_shapes");
integrator.template integrate<type>(*field_times_shapes, *int_field_times_shapes,
shapes_size, ghost_type, NULL);
delete field_times_shapes;
int_field_times_shapes->extendComponentsInterlaced(nb_degree_of_freedom,1);
assembleVector(*int_field_times_shapes, lumped, equation_number,nb_degree_of_freedom, type, ghost_type);
delete int_field_times_shapes;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/**
* @f$ \tilde{M}_{i} = c * M_{ii} = \int_{V_e} \rho dV @f$
*/
-template <typename Integ, typename Shape>
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
template <ElementType type>
-void FEMTemplate<Integ,Shape>::assembleLumpedDiagonalScaling(const Vector<Real> & field_1,
+void FEMTemplate<I, S, kind>::assembleLumpedDiagonalScaling(const Vector<Real> & field_1,
UInt nb_degree_of_freedom,
Vector<Real> & lumped,
const Vector<Int> & equation_number,
const GhostType & ghost_type) const {
AKANTU_DEBUG_IN();
- UInt nb_nodes_per_element_p1 = Mesh::getNbNodesPerElement(Mesh::getP1ElementType(type));
+ UInt nb_nodes_per_element_p1 = ElementClass<type>::getNbNodesPerElement();
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
- UInt nb_quadrature_points = integrator.template getQuadraturePoints<type>(ghost_type).getSize();
+ UInt nb_quadrature_points = integrator.template getQuadraturePoints<type>(ghost_type).cols();
UInt nb_element = field_1.getSize() / nb_quadrature_points;
Real corner_factor = 0;
Real mid_factor = 0;
if(type == _triangle_6) {
corner_factor = 1./12.;
mid_factor = 1./4.;
}
if (type == _tetrahedron_10) {
corner_factor = 1./32.;
mid_factor = 7./48.;
}
if (type == _quadrangle_8) {
corner_factor = 1./36.;
mid_factor = 8./36.;
}
-
if (nb_element == 0) {
AKANTU_DEBUG_OUT();
return;
}
/// compute @f$ \int \rho dV = \rho V @f$ for each element
Vector<Real> * int_field_1 = new Vector<Real>(field_1.getSize(), 1,
"inte_rho_x_1");
integrator.template integrate<type>(field_1, *int_field_1, 1, ghost_type, NULL);
/// distribute the mass of the element to the nodes
Vector<Real> * lumped_per_node = new Vector<Real>(nb_element, nb_nodes_per_element, "mass_per_node");
Real * int_field_1_val = int_field_1->values;
Real * lumped_per_node_val = lumped_per_node->values;
for (UInt e = 0; e < nb_element; ++e) {
Real lmass = *int_field_1_val * corner_factor;
for (UInt n = 0; n < nb_nodes_per_element_p1; ++n)
*lumped_per_node_val++ = lmass; /// corner points
lmass = *int_field_1_val * mid_factor;
for (UInt n = nb_nodes_per_element_p1; n < nb_nodes_per_element; ++n)
*lumped_per_node_val++ = lmass; /// mid points
int_field_1_val++;
}
delete int_field_1;
lumped_per_node->extendComponentsInterlaced(nb_degree_of_freedom,1);
assembleVector(*lumped_per_node, lumped, equation_number, nb_degree_of_freedom, type, ghost_type);
delete lumped_per_node;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/**
* @f$ \tilde{M}_{i} = \sum_j M_{ij} = \sum_j \int \rho \varphi_i \varphi_j dV = \int \rho \varphi_i dV @f$
*/
-template <typename Integ, typename Shape>
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
template <ElementType type>
-void FEMTemplate<Integ,Shape>::assembleFieldMatrix(const Vector<Real> & field_1,
+void FEMTemplate<I, S, kind>::assembleFieldMatrix(const Vector<Real> & field_1,
UInt nb_degree_of_freedom,
SparseMatrix & matrix,
const GhostType & ghost_type) const {
AKANTU_DEBUG_IN();
UInt vect_size = field_1.getSize();
UInt shapes_size = ElementClass<type>::getShapeSize();
UInt lmat_size = nb_degree_of_freedom * shapes_size;
const Vector<Real> & shapes = shape_functions.getShapes(type,ghost_type);
Vector<Real> * modified_shapes = new Vector<Real>(vect_size, lmat_size * nb_degree_of_freedom);
modified_shapes->clear();
Vector<Real> * local_mat = new Vector<Real>(vect_size, lmat_size * lmat_size);
Vector<Real>::iterator<types::RMatrix> shape_vect = modified_shapes->begin(nb_degree_of_freedom, lmat_size);
Real * sh = shapes.values;
for(UInt q = 0; q < vect_size; ++q) {
Real * msh = shape_vect->storage();
for (UInt d = 0; d < nb_degree_of_freedom; ++d) {
Real * msh_tmp = msh + d * (lmat_size + 1);
for (UInt s = 0; s < shapes_size; ++s) {
*msh_tmp = sh[s];
msh_tmp += nb_degree_of_freedom;
}
}
++shape_vect;
sh += shapes_size;
}
shape_vect = modified_shapes->begin(nb_degree_of_freedom, lmat_size);
Vector<Real>::iterator<types::RMatrix> lmat = local_mat->begin(lmat_size, lmat_size);
Real * field_val = field_1.values;
for(UInt q = 0; q < vect_size; ++q) {
(*lmat).mul<true, false>(*shape_vect, *shape_vect, *field_val);
++lmat; ++shape_vect; ++field_val;
}
delete modified_shapes;
UInt nb_element = mesh->getNbElement(type, ghost_type);
Vector<Real> * int_field_times_shapes = new Vector<Real>(nb_element, lmat_size * lmat_size,
"inte_rho_x_shapes");
integrator.template integrate<type>(*local_mat, *int_field_times_shapes,
lmat_size * lmat_size, ghost_type, NULL);
delete local_mat;
assembleMatrix(*int_field_times_shapes, matrix, nb_degree_of_freedom, type, ghost_type);
delete int_field_times_shapes;
AKANTU_DEBUG_OUT();
}
+/* -------------------------------------------------------------------------- */
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+inline void FEMTemplate<I, S, kind>::inverseMap(const types::Vector<Real> & real_coords,
+ UInt element,
+ const ElementType & type,
+ types::Vector<Real> & natural_coords,
+ const GhostType & ghost_type) const{
+
+ AKANTU_DEBUG_IN();
+
+#define INVERSE_MAP(type) \
+ shape_functions.template inverseMap<type>(real_coords, element, natural_coords, ghost_type);
+
+ AKANTU_BOOST_ELEMENT_SWITCH(INVERSE_MAP, AKANTU_NOT_STRUCTURAL_ELEMENT_TYPE);
+#undef INVERSE_MAP
+
+ AKANTU_DEBUG_OUT();
+}
+
+/* -------------------------------------------------------------------------- */
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+inline bool FEMTemplate<I, S, kind>::contains(const types::RVector & real_coords,
+ UInt element,
+ const ElementType & type,
+ const GhostType & ghost_type) const{
+
+ AKANTU_DEBUG_IN();
+
+ bool contain = false;
+
+#define CONTAINS(type) \
+ contain = shape_functions.template contains<type>(real_coords, element, ghost_type);
+
+ AKANTU_BOOST_ELEMENT_SWITCH(CONTAINS, AKANTU_NOT_STRUCTURAL_ELEMENT_TYPE);
+
+#undef CONTAINS
+
+ AKANTU_DEBUG_OUT();
+ return contain;
+}
+
+/* -------------------------------------------------------------------------- */
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+inline void FEMTemplate<I, S, kind>::computeShapes(const types::RVector & real_coords,
+ UInt element,
+ const ElementType & type,
+ types::RVector & shapes,
+ const GhostType & ghost_type) const{
+
+ AKANTU_DEBUG_IN();
+#define COMPUTE_SHAPES(type) \
+ shape_functions.template computeShapes<type>(real_coords,element,shapes,ghost_type);
+
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(COMPUTE_SHAPES);
+
+#undef COMPUTE_SHAPES
+
+ AKANTU_DEBUG_OUT();
+}
+
+/* -------------------------------------------------------------------------- */
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+inline UInt FEMTemplate<I, S, kind>::getNbQuadraturePoints(const ElementType & type,
+ const GhostType & ghost_type) const {
+ AKANTU_DEBUG_IN();
+
+ UInt nb_quad_points = 0;
+
+#define GET_NB_QUAD(type) \
+ nb_quad_points = \
+ integrator. template getQuadraturePoints<type>(ghost_type).cols();
+
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_NB_QUAD);
+#undef GET_NB_QUAD
+
+ AKANTU_DEBUG_OUT();
+ return nb_quad_points;
+}
+
+
+/* -------------------------------------------------------------------------- */
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+inline const Vector<Real> & FEMTemplate<I, S, kind>::getShapes(const ElementType & type,
+ const GhostType & ghost_type) const {
+ AKANTU_DEBUG_IN();
+ const Vector<Real> * ret = NULL;
+
+#define GET_SHAPES(type) \
+ ret = &(shape_functions.getShapes(type, ghost_type));
+
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_SHAPES);
+#undef GET_SHAPES
+
+ AKANTU_DEBUG_OUT();
+ return *ret;
+}
+
+/* -------------------------------------------------------------------------- */
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+inline const Vector<Real> & FEMTemplate<I, S, kind>::getShapesDerivatives(const ElementType & type,
+ const GhostType & ghost_type,
+ __attribute__((unused)) UInt id) const {
+ AKANTU_DEBUG_IN();
+ const Vector<Real> * ret = NULL;
+
+#define GET_SHAPES(type) \
+ ret = &(shape_functions.getShapesDerivatives(type, ghost_type));
+
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_SHAPES);
+#undef GET_SHAPES
+
+ AKANTU_DEBUG_OUT();
+ return *ret;
+}
+
+/* -------------------------------------------------------------------------- */
+template<template <ElementKind> class I,
+ template <ElementKind> class S,
+ ElementKind kind>
+inline const types::Matrix<Real> &
+FEMTemplate<I, S, kind>::getQuadraturePoints(const ElementType & type,
+ const GhostType & ghost_type) const {
+ AKANTU_DEBUG_IN();
+ const types::Matrix<Real> * ret = NULL;
+
+#define GET_QUADS(type) \
+ ret = &(integrator. template getQuadraturePoints<type>(ghost_type));
+
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_QUADS);
+#undef GET_QUADS
+
+ AKANTU_DEBUG_OUT();
+ return *ret;
+}
+
+/* -------------------------------------------------------------------------- */
+__END_AKANTU__
+#include "shape_lagrange.hh"
+#include "integrator_gauss.hh"
+__BEGIN_AKANTU__
+
+/* -------------------------------------------------------------------------- */
+template <>
+template <>
+inline void FEMTemplate<IntegratorGauss, ShapeLagrange, _ek_regular>::
+assembleLumpedTemplate<_triangle_6>(const Vector<Real> & field_1,
+ UInt nb_degree_of_freedom,
+ Vector<Real> & lumped,
+ const Vector<Int> & equation_number,
+ const GhostType & ghost_type) const {
+ assembleLumpedDiagonalScaling<_triangle_6>(field_1, nb_degree_of_freedom,lumped, equation_number,ghost_type);
+}
+
+/* -------------------------------------------------------------------------- */
+template <>
+template <>
+inline void FEMTemplate<IntegratorGauss, ShapeLagrange, _ek_regular>::
+assembleLumpedTemplate<_tetrahedron_10>(const Vector<Real> & field_1,
+ UInt nb_degree_of_freedom,
+ Vector<Real> & lumped,
+ const Vector<Int> & equation_number,
+ const GhostType & ghost_type) const {
+ assembleLumpedDiagonalScaling<_tetrahedron_10>(field_1, nb_degree_of_freedom,lumped, equation_number,ghost_type);
+}
+
+/* -------------------------------------------------------------------------- */
+template <>
+template <>
+inline void
+FEMTemplate<IntegratorGauss, ShapeLagrange, _ek_regular>::
+assembleLumpedTemplate<_quadrangle_8>(const Vector<Real> & field_1,
+ UInt nb_degree_of_freedom,
+ Vector<Real> & lumped,
+ const Vector<Int> & equation_number,
+ const GhostType & ghost_type) const {
+ assembleLumpedDiagonalScaling<_quadrangle_8>(field_1, nb_degree_of_freedom,lumped, equation_number, ghost_type);
+}
+
+
+/* -------------------------------------------------------------------------- */
+/* Shape Linked specialization */
+/* -------------------------------------------------------------------------- */
+
+/* -------------------------------------------------------------------------- */
+__END_AKANTU__
+#include "shape_linked.hh"
+__BEGIN_AKANTU__
+
+/* -------------------------------------------------------------------------- */
+template <>
+inline const Vector<Real> &
+FEMTemplate<IntegratorGauss, ShapeLinked, _ek_structural>::getShapesDerivatives(const ElementType & type,
+ const GhostType & ghost_type,
+ UInt id) const {
+ AKANTU_DEBUG_IN();
+ const Vector<Real> * ret = NULL;
+
+#define GET_SHAPES(type) \
+ ret = &(shape_functions.getShapesDerivatives(type, ghost_type, id));
+
+ AKANTU_BOOST_STRUCTURAL_ELEMENT_SWITCH(GET_SHAPES);
+#undef GET_SHAPES
+
+ AKANTU_DEBUG_OUT();
+ return *ret;
+}
diff --git a/src/fem/geometrical_data_tmpl.hh b/src/fem/geometrical_data_tmpl.hh
new file mode 100644
index 000000000..43ee844f3
--- /dev/null
+++ b/src/fem/geometrical_data_tmpl.hh
@@ -0,0 +1,194 @@
+/**
+ * @file geometrical_data_tmpl.hh
+ *
+ * @author Nicolas Richart <nicolas.richart@epfl.ch>
+ *
+ * @date Wed Nov 14 14:57:27 2012
+ *
+ * @brief Specialization of the geometrical types
+ *
+ * @section LICENSE
+ *
+ * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
+ * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
+ *
+ * Akantu is free software: you can 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 3 of the License, or (at your option) any
+ * later version.
+ *
+ * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+/* -------------------------------------------------------------------------- */
+template<>
+struct GeometricalElementData<_gt_point> {
+ static const UInt spatial_dimension = 0;
+ static const UInt nb_nodes_per_element = 1;
+ static const GeometricalType p1_element_type = _gt_point;
+ static const GeometricalType facet_type = _gt_not_defined;
+ static const UInt nb_facets = 0;
+ static const UInt * facet_connectivity[] = {};
+};
+
+/* -------------------------------------------------------------------------- */
+template<>
+struct GeometricalElementData<_gt_segment_2> {
+ static const UInt spatial_dimension = 1;
+ static const UInt nb_nodes_per_element = 2;
+ static const GeometricalType p1_element_type = _gt_segment_2;
+ static const UInt nb_facets = 2;
+ static const GeometricalType facet_type = _gt_point;
+ static const UInt vec_facet_connectivity[] = {0,
+ 1};
+ static const UInt * facet_connectivity[] = {&vec_facet_connectivity[0],
+ &vec_facet_connectivity[1]};
+};
+
+/* -------------------------------------------------------------------------- */
+template<>
+struct GeometricalElementData<_gt_segment_3> {
+ static const UInt spatial_dimension = 1;
+ static const UInt nb_nodes_per_element = 3;
+ static const GeometricalType p1_element_type = _gt_segment_2;
+ static const UInt nb_facets = 2;
+ static const GeometricalType facet_type = _gt_point;
+ static const UInt vec_facet_connectivity[] = {0,
+ 1};
+ static const UInt * facet_connectivity[] = {&vec_facet_connectivity[0],
+ &vec_facet_connectivity[1]};
+};
+
+/* -------------------------------------------------------------------------- */
+template<>
+struct GeometricalElementData<_gt_triangle_3> {
+ static const UInt spatial_dimension = 2;
+ static const UInt nb_nodes_per_element = 3;
+ static const GeometricalType p1_element_type = _gt_triangle_3;
+ static const UInt nb_facets = 3;
+ static const GeometricalType facet_type = _gt_segment_2;
+ static const UInt vec_facet_connectivity[] = {0, 1,
+ 1, 2,
+ 2, 0};
+ static const UInt * facet_connectivity[] = {&vec_facet_connectivity[0],
+ &vec_facet_connectivity[2],
+ &vec_facet_connectivity[4]};
+};
+
+/* -------------------------------------------------------------------------- */
+template<>
+struct GeometricalElementData<_gt_triangle_6> {
+ static const UInt spatial_dimension = 2;
+ static const UInt nb_nodes_per_element = 6;
+ static const GeometricalType p1_element_type = _gt_triangle_3;
+ static const UInt nb_facets = 3;
+ static const GeometricalType facet_type = _gt_segment_3;
+ static const UInt vec_facet_connectivity[] = {0, 1, 3,
+ 1, 2, 4,
+ 2, 0, 5};
+ static const UInt * facet_connectivity[] = {&vec_facet_connectivity[0],
+ &vec_facet_connectivity[3],
+ &vec_facet_connectivity[6]};
+};
+
+/* -------------------------------------------------------------------------- */
+template<>
+struct GeometricalElementData<_gt_tetrahedron_4> {
+ static const UInt spatial_dimension = 3;
+ static const UInt nb_nodes_per_element = 4;
+ static const GeometricalType p1_element_type = _gt_tetrahedron_4;
+ static const UInt nb_facets = 4;
+ static const GeometricalType facet_type = _gt_triangle_3;
+ static const UInt vec_facet_connectivity[] = {0, 2, 1,
+ 1, 2, 3,
+ 2, 0, 3,
+ 0, 1, 3};
+ static const UInt * facet_connectivity[] = {&vec_facet_connectivity[0],
+ &vec_facet_connectivity[3],
+ &vec_facet_connectivity[6],
+ &vec_facet_connectivity[9]};
+};
+
+/* -------------------------------------------------------------------------- */
+template<>
+struct GeometricalElementData<_gt_tetrahedron_10> {
+ static const UInt spatial_dimension = 3;
+ static const UInt nb_nodes_per_element = 10;
+ static const GeometricalType p1_element_type = _gt_tetrahedron_4;
+ static const UInt nb_facets = 4;
+ static const GeometricalType facet_type = _gt_triangle_6;
+ static const UInt vec_facet_connectivity[] = {0, 2, 1, 6, 5, 4,
+ 1, 2, 3, 5, 9, 8,
+ 2, 0, 3, 6, 7, 9,
+ 0, 1, 3, 4, 8, 7};
+ static const UInt * facet_connectivity[] = {&vec_facet_connectivity[0],
+ &vec_facet_connectivity[6],
+ &vec_facet_connectivity[12],
+ &vec_facet_connectivity[18]};
+};
+
+/* -------------------------------------------------------------------------- */
+template<>
+struct GeometricalElementData<_gt_quadrangle_4> {
+ static const UInt spatial_dimension = 2;
+ static const UInt nb_nodes_per_element = 4;
+ static const GeometricalType p1_element_type = _gt_quadrangle_4;
+ static const UInt nb_facets = 4;
+ static const GeometricalType facet_type = _gt_segment_2;
+ static const UInt vec_facet_connectivity[] = {0, 1,
+ 1, 2,
+ 2, 3,
+ 3, 0};
+ static const UInt * facet_connectivity[] = {&vec_facet_connectivity[0],
+ &vec_facet_connectivity[2],
+ &vec_facet_connectivity[4],
+ &vec_facet_connectivity[6]};
+};
+
+/* -------------------------------------------------------------------------- */
+template<>
+struct GeometricalElementData<_gt_quadrangle_8> {
+ static const UInt spatial_dimension = 2;
+ static const UInt nb_nodes_per_element = 8;
+ static const GeometricalType p1_element_type = _gt_quadrangle_4;
+ static const UInt nb_facets = 4;
+ static const GeometricalType facet_type = _gt_segment_3;
+ static const UInt vec_facet_connectivity[] = {0, 1, 4,
+ 1, 2, 5,
+ 2, 3, 6,
+ 3, 0, 7};
+ static const UInt * facet_connectivity[] = {vec_facet_connectivity + 0,
+ vec_facet_connectivity + 3,
+ vec_facet_connectivity + 6,
+ vec_facet_connectivity + 9};
+};
+
+/* -------------------------------------------------------------------------- */
+template<>
+struct GeometricalElementData<_gt_hexahedron_8> {
+ static const UInt spatial_dimension = 3;
+ static const UInt nb_nodes_per_element = 8;
+ static const GeometricalType p1_element_type = _gt_hexahedron_8;
+ static const UInt nb_facets = 6;
+ static const GeometricalType facet_type = _gt_quadrangle_4;
+ static const UInt vec_facet_connectivity[] = {0, 1, 2, 3,
+ 0, 1, 5, 4,
+ 1, 2, 6, 5,
+ 2, 3, 7, 6,
+ 3, 0, 4, 7,
+ 4, 5, 6, 7};
+ static const UInt * facet_connectivity[] = {&vec_facet_connectivity[0],
+ &vec_facet_connectivity[4],
+ &vec_facet_connectivity[8],
+ &vec_facet_connectivity[12],
+ &vec_facet_connectivity[16],
+ &vec_facet_connectivity[20]};
+};
+
diff --git a/src/fem/geometrical_element.cc b/src/fem/geometrical_element.cc
new file mode 100644
index 000000000..71ba5045f
--- /dev/null
+++ b/src/fem/geometrical_element.cc
@@ -0,0 +1,127 @@
+/**
+ * @file geometrical_element.cc
+ *
+ * @author Nicolas Richart <nicolas.richart@epfl.ch>
+ *
+ * @date Wed Nov 14 14:57:27 2012
+ *
+ * @brief Specialization of the geometrical types
+ *
+ * @section LICENSE
+ *
+ * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
+ * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
+ *
+ * Akantu is free software: you can 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 3 of the License, or (at your option) any
+ * later version.
+ *
+ * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+#include "element_class.hh"
+
+__BEGIN_AKANTU__
+
+/* -------------------------------------------------------------------------- */
+template<> UInt GeometricalElement<_gt_not_defined>::spatial_dimension = 0;
+template<> UInt GeometricalElement<_gt_not_defined>::nb_nodes_per_element = 0;
+template<> UInt GeometricalElement<_gt_not_defined>::nb_facets = 0;
+/* -------------------------------------------------------------------------- */
+template<> UInt GeometricalElement<_gt_point>::spatial_dimension = 0;
+template<> UInt GeometricalElement<_gt_point>::nb_nodes_per_element = 1;
+template<> UInt GeometricalElement<_gt_point>::nb_facets = 1;
+/* -------------------------------------------------------------------------- */
+template<> UInt GeometricalElement<_gt_segment_2>::spatial_dimension = 1;
+template<> UInt GeometricalElement<_gt_segment_2>::nb_nodes_per_element = 2;
+template<> UInt GeometricalElement<_gt_segment_2>::nb_facets = 2;
+/* -------------------------------------------------------------------------- */
+template<> UInt GeometricalElement<_gt_segment_3>::spatial_dimension = 1;
+template<> UInt GeometricalElement<_gt_segment_3>::nb_nodes_per_element = 3;
+template<> UInt GeometricalElement<_gt_segment_3>::nb_facets = 2;
+/* -------------------------------------------------------------------------- */
+template<> UInt GeometricalElement<_gt_triangle_3>::spatial_dimension = 2;
+template<> UInt GeometricalElement<_gt_triangle_3>::nb_nodes_per_element = 3;
+template<> UInt GeometricalElement<_gt_triangle_3>::nb_facets = 3;
+/* -------------------------------------------------------------------------- */
+template<> UInt GeometricalElement<_gt_triangle_6>::spatial_dimension = 2;
+template<> UInt GeometricalElement<_gt_triangle_6>::nb_nodes_per_element = 6;
+template<> UInt GeometricalElement<_gt_triangle_6>::nb_facets = 3;
+/* -------------------------------------------------------------------------- */
+template<> UInt GeometricalElement<_gt_tetrahedron_4>::spatial_dimension = 3;
+template<> UInt GeometricalElement<_gt_tetrahedron_4>::nb_nodes_per_element = 4;
+template<> UInt GeometricalElement<_gt_tetrahedron_4>::nb_facets = 4;
+/* -------------------------------------------------------------------------- */
+template<> UInt GeometricalElement<_gt_tetrahedron_10>::spatial_dimension = 3;
+template<> UInt GeometricalElement<_gt_tetrahedron_10>::nb_nodes_per_element = 10;
+template<> UInt GeometricalElement<_gt_tetrahedron_10>::nb_facets = 4;
+/* -------------------------------------------------------------------------- */
+template<> UInt GeometricalElement<_gt_quadrangle_4>::spatial_dimension = 2;
+template<> UInt GeometricalElement<_gt_quadrangle_4>::nb_nodes_per_element = 4;
+template<> UInt GeometricalElement<_gt_quadrangle_4>::nb_facets = 4;
+/* -------------------------------------------------------------------------- */
+template<> UInt GeometricalElement<_gt_quadrangle_8>::spatial_dimension = 2;
+template<> UInt GeometricalElement<_gt_quadrangle_8>::nb_nodes_per_element = 8;
+template<> UInt GeometricalElement<_gt_quadrangle_8>::nb_facets = 4;
+/* -------------------------------------------------------------------------- */
+template<> UInt GeometricalElement<_gt_hexahedron_8>::spatial_dimension = 3;
+template<> UInt GeometricalElement<_gt_hexahedron_8>::nb_nodes_per_element = 8;
+template<> UInt GeometricalElement<_gt_hexahedron_8>::nb_facets = 6;
+
+/* -------------------------------------------------------------------------- */
+template<> UInt GeometricalElement<_gt_not_defined>::nb_nodes_per_facet = 0;
+template<> UInt GeometricalElement<_gt_point>::nb_nodes_per_facet = 1;
+template<> UInt GeometricalElement<_gt_segment_2>::nb_nodes_per_facet = 1;
+template<> UInt GeometricalElement<_gt_segment_3>::nb_nodes_per_facet = 1;
+template<> UInt GeometricalElement<_gt_triangle_3>::nb_nodes_per_facet = 2;
+template<> UInt GeometricalElement<_gt_triangle_6>::nb_nodes_per_facet = 3;
+template<> UInt GeometricalElement<_gt_tetrahedron_4>::nb_nodes_per_facet = 3;
+template<> UInt GeometricalElement<_gt_tetrahedron_10>::nb_nodes_per_facet = 6;
+template<> UInt GeometricalElement<_gt_quadrangle_4>::nb_nodes_per_facet = 2;
+template<> UInt GeometricalElement<_gt_quadrangle_8>::nb_nodes_per_facet = 3;
+template<> UInt GeometricalElement<_gt_hexahedron_8>::nb_nodes_per_facet = 4;
+/* -------------------------------------------------------------------------- */
+
+
+/* !!! stored as a matrix nb_facets X nb_nodes_per_facet in COL MAJOR */
+/* -------------------------------------------------------------------------- */
+ /* f1|f2|f3|f4|f5|f6 */
+template<> UInt GeometricalElement<_gt_not_defined>::facet_connectivity[] = {};
+template<> UInt GeometricalElement<_gt_point>::facet_connectivity[] = {0};
+template<> UInt GeometricalElement<_gt_segment_2>::facet_connectivity[] = {0, 1};
+template<> UInt GeometricalElement<_gt_segment_3>::facet_connectivity[] = {0, 1};
+template<> UInt GeometricalElement<_gt_triangle_3>::facet_connectivity[] = {0, 1, 2,
+ 1, 2, 0};
+template<> UInt GeometricalElement<_gt_triangle_6>::facet_connectivity[] = {0, 1, 2,
+ 1, 2, 0,
+ 3, 4, 5};
+template<> UInt GeometricalElement<_gt_tetrahedron_4>::facet_connectivity[] = {0, 1, 2, 0,
+ 2, 2, 0, 1,
+ 1, 3, 3, 3};
+template<> UInt GeometricalElement<_gt_tetrahedron_10>::facet_connectivity[] = {0, 1, 2, 0,
+ 2, 2, 0, 1,
+ 1, 3, 3, 3,
+ 6, 5, 6, 4,
+ 5, 9, 7, 8,
+ 4, 8, 9, 7};
+template<> UInt GeometricalElement<_gt_quadrangle_4>::facet_connectivity[] = {0, 1, 2, 3,
+ 1, 2, 3, 0};
+template<> UInt GeometricalElement<_gt_quadrangle_8>::facet_connectivity[] = {0, 1, 2, 3,
+ 1, 2, 3, 0,
+ 4, 5, 6, 7};
+template<> UInt GeometricalElement<_gt_hexahedron_8>::facet_connectivity[] = {0, 0, 1, 2, 3, 4,
+ 1, 1, 2, 3, 0, 5,
+ 2, 5, 6, 7, 4, 6,
+ 3, 4, 5, 6, 7, 7};
+/* -------------------------------------------------------------------------- */
+
+
+__END_AKANTU__
diff --git a/src/fem/integration_element.cc b/src/fem/integration_element.cc
new file mode 100644
index 000000000..90ab94860
--- /dev/null
+++ b/src/fem/integration_element.cc
@@ -0,0 +1,136 @@
+/**
+ * @file integration_element.cc
+ *
+ * @author Nicolas Richart <nicolas.richart@epfl.ch>
+ *
+ * @date Sun Nov 18 00:45:16 2012
+ *
+ * @brief Definition of the intagration constants
+ *
+ * @section LICENSE
+ *
+ * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
+ * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
+ *
+ * Akantu is free software: you can 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 3 of the License, or (at your option) any
+ * later version.
+ *
+ * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+/* -------------------------------------------------------------------------- */
+#include "aka_common.hh"
+#include "element_class.hh"
+
+using std::sqrt;
+
+__BEGIN_AKANTU__
+
+/* -------------------------------------------------------------------------- */
+
+/* -------------------------------------------------------------------------- */
+template<> UInt GaussIntegrationElement<_point_1>::nb_quadrature_points = 1;
+template<> Real GaussIntegrationElement<_point_1>::quad[] = {0};
+template<> Real GaussIntegrationElement<_point_1>::weights[] = {1.};
+/* -------------------------------------------------------------------------- */
+template<> UInt GaussIntegrationElement<_segment_2>::nb_quadrature_points = 1;
+template<> Real GaussIntegrationElement<_segment_2>::quad[] = {0};
+template<> Real GaussIntegrationElement<_segment_2>::weights[] = {2.};
+/* -------------------------------------------------------------------------- */
+template<> UInt GaussIntegrationElement<_segment_3>::nb_quadrature_points = 2;
+template<> Real GaussIntegrationElement<_segment_3>::quad[] = {-1./sqrt(3.), 1./sqrt(3.)};
+template<> Real GaussIntegrationElement<_segment_3>::weights[] = {1., 1.};
+/* -------------------------------------------------------------------------- */
+template<> UInt GaussIntegrationElement<_triangle_3>::nb_quadrature_points = 1;
+template<> Real GaussIntegrationElement<_triangle_3>::quad[] = {1./3., 1./3.};
+template<> Real GaussIntegrationElement<_triangle_3>::weights[] = {1./2.};
+/* -------------------------------------------------------------------------- */
+template<> UInt GaussIntegrationElement<_triangle_6>::nb_quadrature_points = 3;
+template<> Real GaussIntegrationElement<_triangle_6>::quad[] = {1./6., 1./6.,
+ 2./3., 1./6.,
+ 1./6., 2./3.};
+template<> Real GaussIntegrationElement<_triangle_6>::weights[] = {1./6., 1./6., 1./6.};
+/* -------------------------------------------------------------------------- */
+template<> UInt GaussIntegrationElement<_tetrahedron_4>::nb_quadrature_points = 1;
+template<> Real GaussIntegrationElement<_tetrahedron_4>::quad[] = {1./4., 1./4., 1./4.};
+template<> Real GaussIntegrationElement<_tetrahedron_4>::weights[] = {1./6.};
+/* -------------------------------------------------------------------------- */
+template<> UInt GaussIntegrationElement<_tetrahedron_10>::nb_quadrature_points = 4;
+template<> Real GaussIntegrationElement<_tetrahedron_10>::quad[] = {0.1381966011250, 0.1381966011250, 0.1381966011250, // a = (5-sqrt(5))/20
+ 0.5854101966250, 0.1381966011250, 0.1381966011250, // b = (5+3*sqrt(5))/20
+ 0.1381966011250, 0.5854101966250, 0.1381966011250,
+ 0.1381966011250, 0.1381966011250, 0.5854101966250};
+template<> Real GaussIntegrationElement<_tetrahedron_10>::weights[] = {1./24., 1./24., 1./24., 1./24.};
+/* -------------------------------------------------------------------------- */
+template<> UInt GaussIntegrationElement<_quadrangle_4>::nb_quadrature_points = 4;
+template<> Real GaussIntegrationElement<_quadrangle_4>::quad[] = {-1./sqrt(3.), -1./sqrt(3.),
+ 1./sqrt(3.), -1./sqrt(3.),
+ 1./sqrt(3.), 1./sqrt(3.),
+ -1./sqrt(3.), 1./sqrt(3.)};
+template<> Real GaussIntegrationElement<_quadrangle_4>::weights[] = {1., 1., 1., 1.};
+/* -------------------------------------------------------------------------- */
+template<> UInt GaussIntegrationElement<_quadrangle_8>::nb_quadrature_points = 9;
+template<> Real GaussIntegrationElement<_quadrangle_8>::quad[] = {0. , 0.,
+ sqrt(3./5.) , sqrt(3./5.),
+ -sqrt(3./5.), sqrt(3./5.),
+ -sqrt(3./5.), -sqrt(3./5.),
+ sqrt(3./5.) , -sqrt(3./5.),
+ 0. , sqrt(3./5.),
+ -sqrt(3./5.), 0.,
+ 0. , -sqrt(3./5.),
+ sqrt(3./5.) , 0.};
+template<> Real GaussIntegrationElement<_quadrangle_8 >::weights[] = {64./81.,
+ 25./81., 25./81., 25./81., 25./81.,
+ 40./81., 40./81., 40./81., 40./81.};
+/* -------------------------------------------------------------------------- */
+template<> UInt GaussIntegrationElement<_hexahedron_8>::nb_quadrature_points = 8;
+template<> Real GaussIntegrationElement<_hexahedron_8>::quad[] = {-1./sqrt(3.), -1./sqrt(3.), -1./sqrt(3.),
+ 1./sqrt(3.) , -1./sqrt(3.), -1./sqrt(3.),
+ 1./sqrt(3.) , 1./sqrt(3.), -1./sqrt(3.),
+ -1./sqrt(3.), 1./sqrt(3.), -1./sqrt(3.),
+ -1./sqrt(3.), -1./sqrt(3.), 1./sqrt(3.),
+ 1./sqrt(3.) , -1./sqrt(3.), 1./sqrt(3.),
+ 1./sqrt(3.) , 1./sqrt(3.), 1./sqrt(3.),
+ -1./sqrt(3.), 1./sqrt(3.), 1./sqrt(3.)};
+template<> Real GaussIntegrationElement<_hexahedron_8>::weights[] = {1., 1., 1., 1.,
+ 1., 1., 1., 1.};
+
+
+#if defined(AKANTU_STRUCTURAL_MECHANICS)
+/* -------------------------------------------------------------------------- */
+/* Structural elements */
+/* -------------------------------------------------------------------------- */
+template<> UInt GaussIntegrationElement<_bernoulli_beam_2>::nb_quadrature_points = 2;
+template<> Real GaussIntegrationElement<_bernoulli_beam_2>::quad[] = {-1./sqrt(3.), 0,
+ 1./sqrt(3.), 0.};
+template<> Real GaussIntegrationElement<_bernoulli_beam_2>::weights[] = {1., 1.};
+/* -------------------------------------------------------------------------- */
+template<> UInt GaussIntegrationElement<_bernoulli_beam_3>::nb_quadrature_points = 3;
+template<> Real GaussIntegrationElement<_bernoulli_beam_3>::quad[] = {-sqrt(3./5.), 0., 0.,
+ 0., 0., 0.,
+ sqrt(3./5.), 0., 0.};
+template<> Real GaussIntegrationElement<_bernoulli_beam_3>::weights[] = {5./9., 8./9., 5./9.};
+#endif
+
+#if defined(AKANTU_COHESIVE_ELEMENT)
+/* -------------------------------------------------------------------------- */
+template<> UInt GaussIntegrationElement<_cohesive_2d_4>::nb_quadrature_points = 1;
+template<> Real GaussIntegrationElement<_cohesive_2d_4>::quad[] = {0};
+template<> Real GaussIntegrationElement<_cohesive_2d_4>::weights[] = {2.};
+/* -------------------------------------------------------------------------- */
+template<> UInt GaussIntegrationElement<_cohesive_2d_6>::nb_quadrature_points = 2;
+template<> Real GaussIntegrationElement<_cohesive_2d_6>::quad[] = {-1./sqrt(3.), 1./sqrt(3.)};
+template<> Real GaussIntegrationElement<_cohesive_2d_6>::weights[] = {1., 1.};
+/* -------------------------------------------------------------------------- */
+#endif
+
+__END_AKANTU__
diff --git a/src/fem/integrator.hh b/src/fem/integrator.hh
index 79e94c0dc..709415c4f 100644
--- a/src/fem/integrator.hh
+++ b/src/fem/integrator.hh
@@ -1,123 +1,131 @@
/**
* @file integrator.hh
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
*
* @date Tue Feb 15 16:32:44 2011
*
* @brief interface for integrator classes
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
#ifndef __AKANTU_INTEGRATOR_HH__
#define __AKANTU_INTEGRATOR_HH__
/* -------------------------------------------------------------------------- */
#include "aka_memory.hh"
#include "mesh.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
class Integrator : protected Memory {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
Integrator(const Mesh & mesh,
const ID & id="integrator",
const MemoryID & memory_id = 0) :
Memory(memory_id),
mesh(&mesh),
id(id),
jacobians("jacobians", id) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_OUT();
};
virtual ~Integrator(){};
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
template <ElementType type>
inline void precomputeJacobiansOnQuadraturePoints(__attribute__ ((unused))
GhostType ghost_type){}
void integrateOnElement(__attribute__ ((unused)) const Vector<Real> & f,
__attribute__ ((unused)) Real * intf,
__attribute__ ((unused)) UInt nb_degree_of_freedom,
__attribute__ ((unused)) const Element & elem,
__attribute__ ((unused)) GhostType ghost_type) const {};
/// function to print the contain of the class
virtual void printself(std::ostream & stream, int indent = 0) const {
std::string space;
for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
stream << space << "Integrator [" << std::endl;
jacobians.printself(stream, indent + 1);
stream << space << "]" << std::endl;
};
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
/// access to the jacobians
- ByElementTypeReal & getJacobians() { return jacobians; };
- const ByElementTypeReal & getJacobians() const { return jacobians; };
+ Vector<Real> & getJacobians(const ElementType & type,
+ const GhostType & ghost_type = _not_ghost) {
+ return jacobians(type, ghost_type);
+ };
+
+ const Vector<Real> & getJacobians(const ElementType & type,
+ const GhostType & ghost_type = _not_ghost) const {
+ return jacobians(type, ghost_type);
+ };
+
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
protected:
const Mesh * mesh;
ID id;
/// jacobians for all elements
- ByElementTypeReal jacobians;
+ ByElementTypeVector<Real> jacobians;
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
//#include "integrator_inline_impl.cc"
/// standard output stream operator
inline std::ostream & operator <<(std::ostream & stream, const Integrator & _this)
{
_this.printself(stream);
return stream;
}
__END_AKANTU__
#endif /* __AKANTU_INTEGRATOR_HH__ */
diff --git a/src/fem/integrator_cohesive.hh b/src/fem/integrator_cohesive.hh
index 0e53cc938..0964aeee4 100644
--- a/src/fem/integrator_cohesive.hh
+++ b/src/fem/integrator_cohesive.hh
@@ -1,152 +1,161 @@
/**
* @file integrator_cohesive.hh
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Thu Feb 16 18:07:14 2012
*
* @brief integrator for cohesive elements header
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "integrator.hh"
#include "cohesive_element.hh"
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_INTEGRATOR_COHESIVE_HH__
#define __AKANTU_INTEGRATOR_COHESIVE_HH__
__BEGIN_AKANTU__
-template<class Inte>
-class IntegratorCohesive : public Inte {
- /* ------------------------------------------------------------------------ */
- /* Constructors/Destructors */
- /* ------------------------------------------------------------------------ */
-public:
-
- IntegratorCohesive(const Mesh & mesh,
- const ID & id = "integrator_gauss",
- const MemoryID & memory_id = 0);
- virtual ~IntegratorCohesive() { // if(sub_type_integrator) delete sub_type_integrator;
- };
-
- /* ------------------------------------------------------------------------ */
- /* Methods */
- /* ------------------------------------------------------------------------ */
-public:
- /// precompute jacobians on elements of type "type"
- template <ElementType type>
- void precomputeJacobiansOnQuadraturePoints(const GhostType & ghost_type);
-
-
- /// integrate f on the element "elem" of type "type"
- template <ElementType type>
- inline void integrateOnElement(const Vector<Real> & f,
- Real * intf,
- UInt nb_degree_of_freedom,
- const UInt elem,
- const GhostType & ghost_type) const;
-
- /// integrate f for all elements of type "type"
- template <ElementType type>
- void integrate(const Vector<Real> & in_f,
- Vector<Real> &intf,
- UInt nb_degree_of_freedom,
- const GhostType & ghost_type,
- const Vector<UInt> * filter_elements) const;
-
- /// integrate scalar field in_f
- template <ElementType type>
- Real integrate(const Vector<Real> & in_f,
- const GhostType & ghost_type,
- const Vector<UInt> * filter_elements) const;
-
- template <ElementType type>
- Real integrate(__attribute__((unused)) const types::RVector & in_f,
- __attribute__((unused)) UInt index,
- __attribute__((unused)) const GhostType & ghost_type) const {
- AKANTU_DEBUG_TO_IMPLEMENT();
- }
-
-
- /// integrate partially around a quadrature point (@f$ intf_q = f_q * J_q * w_q @f$)
- template <ElementType type>
- void integrateOnQuadraturePoints(const Vector<Real> & in_f,
- Vector<Real> &intf,
- UInt nb_degree_of_freedom,
- const GhostType & ghost_type,
- const Vector<UInt> * filter_elements) const;
-
- /// return a vector with quadrature points natural coordinates
- template <ElementType type>
- const Vector<Real> & getQuadraturePoints(const GhostType & ghost_type) const;
-
- /// compute the vector of quadrature points natural coordinates
- template <ElementType type> void computeQuadraturePoints(const GhostType & ghost_type);
-
- /// check that the jacobians are not negative
- template <ElementType type> void checkJacobians(const GhostType & ghost_type) const;
-
-protected:
-
- /// compute the jacobians on quad points for a given element
- template <ElementType type>
- void computeJacobianOnQuadPointsByElement(UInt spatial_dimension,
- Real * node_coords,
- UInt nb_nodes_per_element,
- Real * jacobians);
-
- /* ------------------------------------------------------------------------ */
- /* Accessors */
- /* ------------------------------------------------------------------------ */
-public:
-
- /* ------------------------------------------------------------------------ */
- /* Class Members */
- /* ------------------------------------------------------------------------ */
-private:
-
- // Inte * sub_type_integrator;
-};
-
-
-/* -------------------------------------------------------------------------- */
-/* inline functions */
-/* -------------------------------------------------------------------------- */
-
-#include "integrator_cohesive_inline_impl.cc"
-
-/// standard output stream operator
-template<class Integrator>
-inline std::ostream & operator <<(std::ostream & stream, const IntegratorCohesive<Integrator> & _this)
-{
- _this.printself(stream);
- return stream;
-}
+// template<class Inte>
+// class IntegratorCohesive : public Inte {
+// /* ------------------------------------------------------------------------ */
+// /* Constructors/Destructors */
+// /* ------------------------------------------------------------------------ */
+// public:
+
+// IntegratorCohesive(const Mesh & mesh,
+// const ID & id = "integrator_gauss",
+// const MemoryID & memory_id = 0);
+// virtual ~IntegratorCohesive() { // if(sub_type_integrator) delete sub_type_integrator;
+// };
+
+// // /* ------------------------------------------------------------------------ */
+// // /* Methods */
+// // /* ------------------------------------------------------------------------ */
+// // public:
+// // /// precompute jacobians on elements of type "type"
+// // template <ElementType type>
+// // void precomputeJacobiansOnQuadraturePoints(const GhostType & ghost_type);
+
+
+// // /// integrate f on the element "elem" of type "type"
+// // template <ElementType type>
+// // inline void integrateOnElement(const Vector<Real> & f,
+// // Real * intf,
+// // UInt nb_degree_of_freedom,
+// // const UInt elem,
+// // const GhostType & ghost_type) const;
+
+// // /// integrate f for all elements of type "type"
+// // template <ElementType type>
+// // void integrate(const Vector<Real> & in_f,
+// // Vector<Real> &intf,
+// // UInt nb_degree_of_freedom,
+// // const GhostType & ghost_type,
+// // const Vector<UInt> * filter_elements) const;
+
+// // /// integrate scalar field in_f
+// // template <ElementType type>
+// // Real integrate(const Vector<Real> & in_f,
+// // const GhostType & ghost_type,
+// // const Vector<UInt> * filter_elements) const;
+
+// // template <ElementType type>
+// // Real integrate(__attribute__((unused)) const types::RVector & in_f,
+// // __attribute__((unused)) UInt index,
+// // __attribute__((unused)) const GhostType & ghost_type) const {
+// // AKANTU_DEBUG_TO_IMPLEMENT();
+// // }
+
+
+// // /// integrate partially around a quadrature point (@f$ intf_q = f_q * J_q * w_q @f$)
+// // template <ElementType type>
+// // void integrateOnQuadraturePoints(const Vector<Real> & in_f,
+// // Vector<Real> &intf,
+// // UInt nb_degree_of_freedom,
+// // const GhostType & ghost_type,
+// // const Vector<UInt> * filter_elements) const;
+
+// // /// return a vector with quadrature points natural coordinates
+// // template <ElementType type>
+// // const types::Matrix<Real> & getQuadraturePoints(const GhostType & ghost_type) const;
+
+// // /// compute the vector of quadrature points natural coordinates
+// // template <ElementType type> void computeQuadraturePoints(const GhostType & ghost_type);
+
+// // /// check that the jacobians are not negative
+// // template <ElementType type> void checkJacobians(const GhostType & ghost_type) const;
+
+// // protected:
+
+// // /// compute the jacobians on quad points for a given element
+// // template <ElementType type>
+// // void computeJacobianOnQuadPointsByElement(const types::Matrix<Real> & node_coords,
+// // Real & jacobians);
+
+// // /* ------------------------------------------------------------------------ */
+// // /* Accessors */
+// // /* ------------------------------------------------------------------------ */
+// // public:
+
+// // /* ------------------------------------------------------------------------ */
+// // /* Class Members */
+// // /* ------------------------------------------------------------------------ */
+// // private:
+// };
+
+
+
+// template<>
+// class IntegratorGauss<_ek_cohesive> : public IntegratorCohesive< IntegratorGauss<_ek_regular> > {
+// public:
+// IntegratorGauss(const Mesh & mesh,
+// const ID & id = "integrator_gauss",
+// const MemoryID & memory_id = 0) :
+// IntegratorCohesive< IntegratorGauss<_ek_regular> >(mesh, id, memory_id) {}
+
+// virtual ~IntegratorGauss() {}
+// };
+
+
+// /* -------------------------------------------------------------------------- */
+// /* inline functions */
+// /* -------------------------------------------------------------------------- */
+
+// #include "integrator_cohesive_inline_impl.cc"
+
+// /// standard output stream operator
+// template<class Integrator>
+// inline std::ostream & operator <<(std::ostream & stream, const IntegratorCohesive<Integrator> & _this)
+// {
+// _this.printself(stream);
+// return stream;
+// }
__END_AKANTU__
#endif /* __AKANTU_INTEGRATOR_COHESIVE_HH__ */
diff --git a/src/fem/integrator_cohesive_inline_impl.cc b/src/fem/integrator_cohesive_inline_impl.cc
index 3412eca54..65d0cd75d 100644
--- a/src/fem/integrator_cohesive_inline_impl.cc
+++ b/src/fem/integrator_cohesive_inline_impl.cc
@@ -1,406 +1,395 @@
/**
* @file integrator_cohesive_inline_impl.cc
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Thu Feb 23 17:58:45 2012
*
* @brief IntegratorCohesive inline implementation
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
template <class Inte>
IntegratorCohesive<Inte>::IntegratorCohesive(const Mesh & mesh,
const ID & id,
const MemoryID & memory_id) :
Inte(mesh, id, memory_id) {
AKANTU_DEBUG_IN();
std::stringstream sstr;
sstr << id << "sub_integrator";
- //sub_type_integrator = new Inte(mesh, sstr.str(), memory_id);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-template<class Inte>
-template <ElementType type>
-void IntegratorCohesive<Inte>::precomputeJacobiansOnQuadraturePoints(const GhostType & ghost_type) {
- AKANTU_DEBUG_IN();
- const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
- // sub_type_integrator->precomputeJacobiansOnQuadraturePoints<sub_type>(ghost_type);
-
- /* ---------------------------------*/
+// template<class Inte>
+// template <ElementType type>
+// void IntegratorCohesive<Inte>::precomputeJacobiansOnQuadraturePoints(const GhostType & ghost_type) {
+// AKANTU_DEBUG_IN();
- UInt spatial_dimension = Inte::mesh->getSpatialDimension();
+// UInt spatial_dimension = Inte::mesh->getSpatialDimension();
- UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
- UInt nb_quadrature_points = CohesiveElement<type>::getNbQuadraturePoints();
- Real * weights = CohesiveElement<type>::getGaussIntegrationWeights();
+// UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
+// UInt nb_quadrature_points = CohesiveElement<type>::getNbQuadraturePoints();
+// Real * weights = CohesiveElement<type>::getGaussIntegrationWeights();
- UInt * elem_val = Inte::mesh->getConnectivity(type,ghost_type).storage();;
- UInt nb_element = Inte::mesh->getConnectivity(type,ghost_type).getSize();
+// UInt * elem_val = Inte::mesh->getConnectivity(type,ghost_type).storage();;
+// UInt nb_element = Inte::mesh->getConnectivity(type,ghost_type).getSize();
- Vector<Real> & jacobians_tmp = Inte::jacobians.alloc(nb_element*nb_quadrature_points,
- 1,
- type,
- ghost_type);
+// Vector<Real> & jacobians_tmp = jacobians.alloc(nb_element*nb_quadrature_points,
+// 1,
+// type,
+// ghost_type);
- Real * jacobians_val = jacobians_tmp.storage();
+// Real * jacobians_val = jacobians_tmp.storage();
- Real local_coord[spatial_dimension * nb_nodes_per_element/2];
- for (UInt elem = 0; elem < nb_element; ++elem) {
+// Real local_coord[spatial_dimension * nb_nodes_per_element/2];
+// for (UInt elem = 0; elem < nb_element; ++elem) {
- // extract the coordinates of the first line nodes first
- UInt * connectivity = elem_val+elem*nb_nodes_per_element;
- for (UInt n = 0; n < nb_nodes_per_element/2; ++n) {
- memcpy(local_coord + n * spatial_dimension,
- Inte::mesh->getNodes().storage() + connectivity[n] * spatial_dimension,
- spatial_dimension * sizeof(Real));
- }
+// // extract the coordinates of the first line nodes first
+// UInt * connectivity = elem_val+elem*nb_nodes_per_element;
+// for (UInt n = 0; n < nb_nodes_per_element/2; ++n) {
+// memcpy(local_coord + n * spatial_dimension,
+// Inte::mesh->getNodes().storage() + connectivity[n] * spatial_dimension,
+// spatial_dimension * sizeof(Real));
+// }
- static_cast<Inte*>(this)->computeJacobianOnQuadPointsByElement<sub_type>(spatial_dimension,
- local_coord,
- nb_nodes_per_element/2,
- jacobians_val);
+// static_cast<Inte*>(this)->computeJacobianOnQuadPointsByElement<sub_type>(spatial_dimension,
+// local_coord,
+// nb_nodes_per_element/2,
+// jacobians_val);
- for (UInt q = 0; q < nb_quadrature_points; ++q) {
- *jacobians_val++ *= weights[q];
- }
- // jacobians_val += nb_quadrature_points;
- }
+// for (UInt q = 0; q < nb_quadrature_points; ++q) {
+// *jacobians_val++ *= weights[q];
+// }
+// // jacobians_val += nb_quadrature_points;
+// }
- /* ---------------------------------*/
+// /* ---------------------------------*/
- AKANTU_DEBUG_OUT();
-}
+// AKANTU_DEBUG_OUT();
+// }
/* -------------------------------------------------------------------------- */
-template<class Inte>
-template <ElementType type>
-inline void IntegratorCohesive<Inte>::integrateOnElement(const Vector<Real> & f,
- Real * intf,
- UInt nb_degree_of_freedom,
- const UInt elem,
- const GhostType & ghost_type) const {
- AKANTU_DEBUG_IN();
- const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
- static_cast<Inte*>(this)->integrateOnElement<sub_type>(f, intf, nb_degree_of_freedom, elem, ghost_type);
- AKANTU_DEBUG_OUT();
-}
+// template<class Inte>
+// template <ElementType type>
+// inline void IntegratorCohesive<Inte>::integrateOnElement(const Vector<Real> & f,
+// Real * intf,
+// UInt nb_degree_of_freedom,
+// const UInt elem,
+// const GhostType & ghost_type) const {
+// AKANTU_DEBUG_IN();
+// const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
+// static_cast<Inte*>(this)->integrateOnElement<sub_type>(f, intf, nb_degree_of_freedom, elem, ghost_type);
+// AKANTU_DEBUG_OUT();
+// }
-/* -------------------------------------------------------------------------- */
-template<class Inte>
-template <ElementType type>
-const Vector<Real> &
-IntegratorCohesive<Inte>::getQuadraturePoints(const GhostType & ghost_type) const {
- AKANTU_DEBUG_IN();
- const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
- AKANTU_DEBUG_OUT();
- return Inte::template getQuadraturePoints<sub_type>(ghost_type);
-}
+// /* -------------------------------------------------------------------------- */
+// template<class Inte>
+// template <ElementType type>
+// const types::Matrix<Real> &
+// IntegratorCohesive<Inte>::getQuadraturePoints(const GhostType & ghost_type) const {
+// AKANTU_DEBUG_IN();
+// const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
+// AKANTU_DEBUG_OUT();
+// return Inte::template getQuadraturePoints<sub_type>(ghost_type);
+// }
-/* -------------------------------------------------------------------------- */
-template<class Inte>
-template <ElementType type>
-void IntegratorCohesive<Inte>::computeQuadraturePoints(const GhostType & ghost_type) {
- AKANTU_DEBUG_IN();
- const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
- static_cast<Inte*>(this)->template computeQuadraturePoints<sub_type>(ghost_type);
- AKANTU_DEBUG_OUT();
-}
+// /* -------------------------------------------------------------------------- */
+// template<class Inte>
+// template <ElementType type>
+// void IntegratorCohesive<Inte>::computeQuadraturePoints(const GhostType & ghost_type) {
+// AKANTU_DEBUG_IN();
+// const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
+// static_cast<Inte*>(this)->template computeQuadraturePoints<sub_type>(ghost_type);
+// AKANTU_DEBUG_OUT();
+// }
-/* -------------------------------------------------------------------------- */
-template<class Inte>
-template <ElementType type>
-inline void IntegratorCohesive<Inte>::
-computeJacobianOnQuadPointsByElement(UInt spatial_dimension,
- Real * node_coords,
- UInt nb_nodes_per_element,
- Real * jacobians) {
- AKANTU_DEBUG_IN();
- const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
- static_cast<Inte*>(this)->computeJacobianOnQuadPointsByElement<sub_type>(spatial_dimension,
- node_coords,
- nb_nodes_per_element,
- jacobians);
- AKANTU_DEBUG_OUT();
-}
+// /* -------------------------------------------------------------------------- */
+// template<class Inte>
+// template <ElementType type>
+// inline void IntegratorCohesive<Inte>::
+// computeJacobianOnQuadPointsByElement(const types::Matrix<Real> & node_coords,
+// Real & jacobians) {
+// AKANTU_DEBUG_IN();
+// const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
+// static_cast<Inte*>(this)->computeJacobianOnQuadPointsByElement<sub_type>(node_coords,
+// jacobians);
+// AKANTU_DEBUG_OUT();
+// }
-/* -------------------------------------------------------------------------- */
-template<class Inte>
-template <ElementType type>
-void IntegratorCohesive<Inte>::integrate(const Vector<Real> & in_f,
- Vector<Real> &intf,
- UInt nb_degree_of_freedom,
- const GhostType & ghost_type,
- const Vector<UInt> * filter_elements) const {
- AKANTU_DEBUG_IN();
- // const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
- // Inte::template integrate<sub_type>(in_f, intf, nb_degree_of_freedom, ghost_type, filter_elements);
+// /* -------------------------------------------------------------------------- */
+// template<class Inte>
+// template <ElementType type>
+// void IntegratorCohesive<Inte>::integrate(const Vector<Real> & in_f,
+// Vector<Real> &intf,
+// UInt nb_degree_of_freedom,
+// const GhostType & ghost_type,
+// const Vector<UInt> * filter_elements) const {
+// AKANTU_DEBUG_IN();
+// // const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
+// // Inte::template integrate<sub_type>(in_f, intf, nb_degree_of_freedom, ghost_type, filter_elements);
- /* ------------------------------------------------------------------------ */
+// /* ------------------------------------------------------------------------ */
- AKANTU_DEBUG_ASSERT(Inte::jacobians.exists(type, ghost_type),
- "No jacobians for the type "
- << Inte::jacobians.printType(type, ghost_type));
+// AKANTU_DEBUG_ASSERT(Inte::jacobians.exists(type, ghost_type),
+// "No jacobians for the type "
+// << Inte::jacobians.printType(type, ghost_type));
- UInt nb_element = Inte::mesh->getNbElement(type,ghost_type);
- const Vector<Real> & jac_loc = Inte::jacobians(type, ghost_type);
+// UInt nb_element = Inte::mesh->getNbElement(type,ghost_type);
+// const Vector<Real> & jac_loc = Inte::jacobians(type, ghost_type);
- UInt nb_quadrature_points = CohesiveElement<type>::getNbQuadraturePoints();
+// UInt nb_quadrature_points = CohesiveElement<type>::getNbQuadraturePoints();
- UInt * filter_elem_val = NULL;
- if(filter_elements != NULL) {
- nb_element = filter_elements->getSize();
- filter_elem_val = filter_elements->values;
- }
+// UInt * filter_elem_val = NULL;
+// if(filter_elements != NULL) {
+// nb_element = filter_elements->getSize();
+// filter_elem_val = filter_elements->values;
+// }
- Real * in_f_val = in_f.storage();
- Real * intf_val = intf.storage();
- Real * jac_val = jac_loc.storage();
+// Real * in_f_val = in_f.storage();
+// Real * intf_val = intf.storage();
+// Real * jac_val = jac_loc.storage();
- UInt offset_in_f = in_f.getNbComponent()*nb_quadrature_points;
- UInt offset_intf = intf.getNbComponent();
+// UInt offset_in_f = in_f.getNbComponent()*nb_quadrature_points;
+// UInt offset_intf = intf.getNbComponent();
- Real * jac = jac_val;
+// Real * jac = jac_val;
- for (UInt el = 0; el < nb_element; ++el) {
- if(filter_elements != NULL) {
- jac = jac_val + filter_elem_val[el] * nb_quadrature_points;
- }
+// for (UInt el = 0; el < nb_element; ++el) {
+// if(filter_elements != NULL) {
+// jac = jac_val + filter_elem_val[el] * nb_quadrature_points;
+// }
- Inte::integrate(in_f_val, jac, intf_val, nb_degree_of_freedom, nb_quadrature_points);
+// Inte::integrate(in_f_val, jac, intf_val, nb_degree_of_freedom, nb_quadrature_points);
- in_f_val += offset_in_f;
- intf_val += offset_intf;
- if(filter_elements == NULL) {
- jac += nb_quadrature_points;
- }
- }
+// in_f_val += offset_in_f;
+// intf_val += offset_intf;
+// if(filter_elements == NULL) {
+// jac += nb_quadrature_points;
+// }
+// }
- /* ------------------------------------------------------------------------ */
+// /* ------------------------------------------------------------------------ */
- AKANTU_DEBUG_OUT();
-}
-/* -------------------------------------------------------------------------- */
-template<class Inte>
-template <ElementType type>
-Real IntegratorCohesive<Inte>::integrate(const Vector<Real> & in_f,
- const GhostType & ghost_type,
- const Vector<UInt> * filter_elements) const {
- AKANTU_DEBUG_IN();
+// AKANTU_DEBUG_OUT();
+// }
+// /* -------------------------------------------------------------------------- */
+// template<class Inte>
+// template <ElementType type>
+// Real IntegratorCohesive<Inte>::integrate(const Vector<Real> & in_f,
+// const GhostType & ghost_type,
+// const Vector<UInt> * filter_elements) const {
+// AKANTU_DEBUG_IN();
- AKANTU_DEBUG_ASSERT(Inte::jacobians.exists(type, ghost_type),
- "No jacobians for the type "
- << Inte::jacobians.printType(type, ghost_type));
+// AKANTU_DEBUG_ASSERT(Inte::jacobians.exists(type, ghost_type),
+// "No jacobians for the type "
+// << Inte::jacobians.printType(type, ghost_type));
- UInt nb_element = Inte::mesh->getNbElement(type, ghost_type);
- const Vector<Real> & jac_loc = Inte::jacobians(type, ghost_type);
+// UInt nb_element = Inte::mesh->getNbElement(type, ghost_type);
+// const Vector<Real> & jac_loc = Inte::jacobians(type, ghost_type);
- UInt nb_quadrature_points = CohesiveElement<type>::getNbQuadraturePoints();
+// UInt nb_quadrature_points = CohesiveElement<type>::getNbQuadraturePoints();
- UInt * filter_elem_val = NULL;
- if(filter_elements != NULL) {
- nb_element = filter_elements->getSize();
- filter_elem_val = filter_elements->values;
- }
+// UInt * filter_elem_val = NULL;
+// if(filter_elements != NULL) {
+// nb_element = filter_elements->getSize();
+// filter_elem_val = filter_elements->values;
+// }
- Real intf = 0.;
- Real * in_f_val = in_f.storage();
- Real * jac_val = jac_loc.storage();
- UInt offset_in_f = in_f.getNbComponent() * nb_quadrature_points;
- Real * jac = jac_val;
+// Real intf = 0.;
+// Real * in_f_val = in_f.storage();
+// Real * jac_val = jac_loc.storage();
+// UInt offset_in_f = in_f.getNbComponent() * nb_quadrature_points;
+// Real * jac = jac_val;
- for (UInt el = 0; el < nb_element; ++el) {
- if(filter_elements != NULL) {
- jac = jac_val + filter_elem_val[el] * nb_quadrature_points;
- }
+// for (UInt el = 0; el < nb_element; ++el) {
+// if(filter_elements != NULL) {
+// jac = jac_val + filter_elem_val[el] * nb_quadrature_points;
+// }
- Real el_intf = 0;
- Inte::integrate(in_f_val, jac, &el_intf, 1, nb_quadrature_points);
- intf += el_intf;
+// Real el_intf = 0;
+// Inte::integrate(in_f_val, jac, &el_intf, 1, nb_quadrature_points);
+// intf += el_intf;
- in_f_val += offset_in_f;
- if(filter_elements == NULL) {
- jac += nb_quadrature_points;
- }
- }
+// in_f_val += offset_in_f;
+// if(filter_elements == NULL) {
+// jac += nb_quadrature_points;
+// }
+// }
- AKANTU_DEBUG_OUT();
- return intf;
-}
+// AKANTU_DEBUG_OUT();
+// return intf;
+// }
-/* -------------------------------------------------------------------------- */
+// /* -------------------------------------------------------------------------- */
+// // template<class Inte>
+// // template <ElementType type>
+// // Real IntegratorCohesive<Inte>::integrate(const Vector<Real> & in_f,
+// // const GhostType & ghost_type,
+// // const Vector<UInt> * filter_elements) const {
+// // AKANTU_DEBUG_IN();
+// // const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
+// // AKANTU_DEBUG_OUT();
+// // return Inte::template integrate<sub_type>(in_f, ghost_type, filter_elements);
+// // }
+
+
+// /* -------------------------------------------------------------------------- */
// template<class Inte>
// template <ElementType type>
-// Real IntegratorCohesive<Inte>::integrate(const Vector<Real> & in_f,
-// const GhostType & ghost_type,
-// const Vector<UInt> * filter_elements) const {
+// void IntegratorCohesive<Inte>::integrateOnQuadraturePoints(const Vector<Real> & in_f,
+// Vector<Real> &intf,
+// UInt nb_degree_of_freedom,
+// const GhostType & ghost_type,
+// const Vector<UInt> * filter_elements) const {
// AKANTU_DEBUG_IN();
// const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
+// Inte::template integrateOnQuadraturePoints<sub_type>(in_f,
+// intf,
+// nb_degree_of_freedom,
+// ghost_type,
+// filter_elements);
// AKANTU_DEBUG_OUT();
-// return Inte::template integrate<sub_type>(in_f, ghost_type, filter_elements);
// }
+// /* -------------------------------------------------------------------------- */
+// template<class Inte>
+// template<ElementType type>
+// void IntegratorCohesive<Inte>::checkJacobians(const GhostType & ghost_type) const {
+// AKANTU_DEBUG_IN();
+// // const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
+// // sub_type_integrator->checkJacobians<sub_type>(ghost_type);
-/* -------------------------------------------------------------------------- */
-template<class Inte>
-template <ElementType type>
-void IntegratorCohesive<Inte>::integrateOnQuadraturePoints(const Vector<Real> & in_f,
- Vector<Real> &intf,
- UInt nb_degree_of_freedom,
- const GhostType & ghost_type,
- const Vector<UInt> * filter_elements) const {
- AKANTU_DEBUG_IN();
- const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
- Inte::template integrateOnQuadraturePoints<sub_type>(in_f,
- intf,
- nb_degree_of_freedom,
- ghost_type,
- filter_elements);
- AKANTU_DEBUG_OUT();
-}
-
-/* -------------------------------------------------------------------------- */
-template<class Inte>
-template<ElementType type>
-void IntegratorCohesive<Inte>::checkJacobians(const GhostType & ghost_type) const {
- AKANTU_DEBUG_IN();
- // const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
- // sub_type_integrator->checkJacobians<sub_type>(ghost_type);
-
- UInt nb_quadrature_points = CohesiveElement<type>::getNbQuadraturePoints();
+// UInt nb_quadrature_points = CohesiveElement<type>::getNbQuadraturePoints();
- UInt nb_element;
+// UInt nb_element;
- nb_element = Inte::mesh->getConnectivity(type,ghost_type).getSize();
+// nb_element = Inte::mesh->getConnectivity(type,ghost_type).getSize();
- Real * jacobians_val = Inte::jacobians(type, ghost_type).storage();
+// Real * jacobians_val = Inte::jacobians(type, ghost_type).storage();
- for (UInt i = 0; i < nb_element*nb_quadrature_points; ++i,++jacobians_val){
- AKANTU_DEBUG_ASSERT(*jacobians_val >0,
- "Negative jacobian computed,"
- << " possible problem in the element node order");
- }
- AKANTU_DEBUG_OUT();
-}
+// for (UInt i = 0; i < nb_element*nb_quadrature_points; ++i,++jacobians_val){
+// AKANTU_DEBUG_ASSERT(*jacobians_val >0,
+// "Negative jacobian computed,"
+// << " possible problem in the element node order");
+// }
+// AKANTU_DEBUG_OUT();
+// }
/* -------------------------------------------------------------------------- */
/* specialization */
/* -------------------------------------------------------------------------- */
-template<>
-template<>
-inline void IntegratorCohesive<IntegratorGauss>
-::precomputeJacobiansOnQuadraturePoints<_not_defined>(__attribute__((unused)) const GhostType & ghost_type) {
- AKANTU_DEBUG_TO_IMPLEMENT();
-}
+// template<>
+// template<>
+// inline void IntegratorCohesive<IntegratorGauss>
+// ::precomputeJacobiansOnQuadraturePoints<_not_defined>(__attribute__((unused)) const GhostType & ghost_type) {
+// AKANTU_DEBUG_TO_IMPLEMENT();
+// }
-/* -------------------------------------------------------------------------- */
-template<>
-template<>
-inline void IntegratorCohesive<IntegratorGauss>
-::integrateOnElement<_not_defined>(__attribute__((unused)) const Vector<Real> & f,
- __attribute__((unused)) Real * intf,
- __attribute__((unused)) UInt nb_degree_of_freedom,
- __attribute__((unused)) const UInt elem,
- __attribute__((unused)) const GhostType & ghost_type) const {
- AKANTU_DEBUG_TO_IMPLEMENT();
-}
+// /* -------------------------------------------------------------------------- */
+// template<>
+// template<>
+// inline void IntegratorCohesive<IntegratorGauss>
+// ::integrateOnElement<_not_defined>(__attribute__((unused)) const Vector<Real> & f,
+// __attribute__((unused)) Real * intf,
+// __attribute__((unused)) UInt nb_degree_of_freedom,
+// __attribute__((unused)) const UInt elem,
+// __attribute__((unused)) const GhostType & ghost_type) const {
+// AKANTU_DEBUG_TO_IMPLEMENT();
+// }
-/* -------------------------------------------------------------------------- */
-template<>
-template<>
-inline const Vector<Real> &
-IntegratorCohesive<IntegratorGauss>
-::getQuadraturePoints<_not_defined>(__attribute__((unused)) const GhostType & ghost_type) const {
- AKANTU_DEBUG_TO_IMPLEMENT();
-}
+// /* -------------------------------------------------------------------------- */
+// template<>
+// template<>
+// inline const types::Matrix<Real> &
+// IntegratorCohesive<IntegratorGauss>
+// ::getQuadraturePoints<_not_defined>(__attribute__((unused)) const GhostType & ghost_type) const {
+// AKANTU_DEBUG_TO_IMPLEMENT();
+// }
-/* -------------------------------------------------------------------------- */
-template<>
-template<>
-inline void IntegratorCohesive<IntegratorGauss>
-::computeQuadraturePoints<_not_defined>(__attribute__((unused)) const GhostType & ghost_type) {
- AKANTU_DEBUG_TO_IMPLEMENT();
-}
+// /* -------------------------------------------------------------------------- */
+// template<>
+// template<>
+// inline void IntegratorCohesive<IntegratorGauss>
+// ::computeQuadraturePoints<_not_defined>(__attribute__((unused)) const GhostType & ghost_type) {
+// AKANTU_DEBUG_TO_IMPLEMENT();
+// }
-/* -------------------------------------------------------------------------- */
-template<>
-template<>
-inline void IntegratorCohesive<IntegratorGauss>::
-computeJacobianOnQuadPointsByElement<_not_defined>(__attribute__((unused)) UInt spatial_dimension,
- __attribute__((unused)) Real * node_coords,
- __attribute__((unused)) UInt nb_nodes_per_element,
- __attribute__((unused)) Real * jacobians) {
- AKANTU_DEBUG_TO_IMPLEMENT();
-}
+// /* -------------------------------------------------------------------------- */
+// template<>
+// template<>
+// inline void IntegratorCohesive<IntegratorGauss>::
+// computeJacobianOnQuadPointsByElement<_not_defined>(__attribute__((unused)) const types::Matrix<Real> & node_coords,
+// __attribute__((unused)) Real & jacobians) {
+// AKANTU_DEBUG_TO_IMPLEMENT();
+// }
-/* -------------------------------------------------------------------------- */
-template<>
-template<>
-inline void IntegratorCohesive<IntegratorGauss>
-::integrate<_not_defined>(__attribute__((unused)) const Vector<Real> & in_f,
- __attribute__((unused)) Vector<Real> &intf,
- __attribute__((unused)) UInt nb_degree_of_freedom,
- __attribute__((unused)) const GhostType & ghost_type,
- __attribute__((unused)) const Vector<UInt> * filter_elements) const {
- AKANTU_DEBUG_TO_IMPLEMENT();
-}
+// /* -------------------------------------------------------------------------- */
+// template<>
+// template<>
+// inline void IntegratorCohesive<IntegratorGauss>
+// ::integrate<_not_defined>(__attribute__((unused)) const Vector<Real> & in_f,
+// __attribute__((unused)) Vector<Real> &intf,
+// __attribute__((unused)) UInt nb_degree_of_freedom,
+// __attribute__((unused)) const GhostType & ghost_type,
+// __attribute__((unused)) const Vector<UInt> * filter_elements) const {
+// AKANTU_DEBUG_TO_IMPLEMENT();
+// }
-/* -------------------------------------------------------------------------- */
-template<>
-template<>
-inline Real IntegratorCohesive<IntegratorGauss>
-::integrate<_not_defined>(__attribute__((unused)) const Vector<Real> & in_f,
- __attribute__((unused)) const GhostType & ghost_type,
- __attribute__((unused)) const Vector<UInt> * filter_elements) const {
- AKANTU_DEBUG_TO_IMPLEMENT();
-}
+// /* -------------------------------------------------------------------------- */
+// template<>
+// template<>
+// inline Real IntegratorCohesive<IntegratorGauss>
+// ::integrate<_not_defined>(__attribute__((unused)) const Vector<Real> & in_f,
+// __attribute__((unused)) const GhostType & ghost_type,
+// __attribute__((unused)) const Vector<UInt> * filter_elements) const {
+// AKANTU_DEBUG_TO_IMPLEMENT();
+// }
-/* -------------------------------------------------------------------------- */
-template<>
-template<>
-inline void IntegratorCohesive<IntegratorGauss>
-::integrateOnQuadraturePoints<_not_defined>(__attribute__((unused)) const Vector<Real> & in_f,
- __attribute__((unused)) Vector<Real> &intf,
- __attribute__((unused)) UInt nb_degree_of_freedom,
- __attribute__((unused)) const GhostType & ghost_type,
- __attribute__((unused)) const Vector<UInt> * filter_elements) const {
- AKANTU_DEBUG_TO_IMPLEMENT();
-}
+// /* -------------------------------------------------------------------------- */
+// template<>
+// template<>
+// inline void IntegratorCohesive<IntegratorGauss>
+// ::integrateOnQuadraturePoints<_not_defined>(__attribute__((unused)) const Vector<Real> & in_f,
+// __attribute__((unused)) Vector<Real> &intf,
+// __attribute__((unused)) UInt nb_degree_of_freedom,
+// __attribute__((unused)) const GhostType & ghost_type,
+// __attribute__((unused)) const Vector<UInt> * filter_elements) const {
+// AKANTU_DEBUG_TO_IMPLEMENT();
+// }
-/* -------------------------------------------------------------------------- */
-template<>
-template<>
-inline void IntegratorCohesive<IntegratorGauss>
-::checkJacobians<_not_defined>(__attribute__((unused)) const GhostType & ghost_type) const {
- AKANTU_DEBUG_TO_IMPLEMENT();
-}
+// /* -------------------------------------------------------------------------- */
+// template<>
+// template<>
+// inline void IntegratorCohesive<IntegratorGauss>
+// ::checkJacobians<_not_defined>(__attribute__((unused)) const GhostType & ghost_type) const {
+// AKANTU_DEBUG_TO_IMPLEMENT();
+// }
diff --git a/src/fem/integrator_gauss.cc b/src/fem/integrator_gauss.cc
index 134b0a8ad..6d36e08f0 100644
--- a/src/fem/integrator_gauss.cc
+++ b/src/fem/integrator_gauss.cc
@@ -1,333 +1,326 @@
/**
* @file integrator_gauss.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Feb 15 16:32:44 2011
*
* @brief implementation of gauss integrator class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "mesh.hh"
#include "integrator_gauss.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
-
/* -------------------------------------------------------------------------- */
IntegratorGauss::IntegratorGauss(const Mesh & mesh,
const ID & id,
const MemoryID & memory_id) :
Integrator(mesh, id, memory_id),
quadrature_points("quadrature_points", id) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <ElementType type>
void IntegratorGauss::checkJacobians(const GhostType & ghost_type) const {
AKANTU_DEBUG_IN();
- UInt nb_quadrature_points = ElementClass<type>::getNbQuadraturePoints();
+ UInt nb_quadrature_points = GaussIntegrationElement<type>::getNbQuadraturePoints();
UInt nb_element;
nb_element = mesh->getConnectivity(type,ghost_type).getSize();
Real * jacobians_val = jacobians(type, ghost_type).storage();
for (UInt i = 0; i < nb_element*nb_quadrature_points; ++i,++jacobians_val){
if(*jacobians_val < 0)
AKANTU_DEBUG_ERROR("Negative jacobian computed,"
<< " possible problem in the element node ordering (Quadrature Point "
<< i % nb_quadrature_points << ":"
<< i / nb_quadrature_points << ":"
<< type << ":"
<< ghost_type << ")");
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <ElementType type>
void IntegratorGauss::precomputeJacobiansOnQuadraturePoints(const GhostType & ghost_type) {
AKANTU_DEBUG_IN();
UInt spatial_dimension = mesh->getSpatialDimension();
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
- UInt nb_quadrature_points = ElementClass<type>::getNbQuadraturePoints();
+ UInt nb_quadrature_points = GaussIntegrationElement<type>::getNbQuadraturePoints();
- Real * weights = ElementClass<type>::getGaussIntegrationWeights();
+ types::Vector<Real> weights(GaussIntegrationElement<type>::getWeights(), nb_quadrature_points);
UInt * elem_val = mesh->getConnectivity(type,ghost_type).storage();
UInt nb_element = mesh->getConnectivity(type,ghost_type).getSize();
Vector<Real> & jacobians_tmp = jacobians.alloc(nb_element*nb_quadrature_points,
1,
type,
ghost_type);
- Real * jacobians_val = jacobians_tmp.storage();
+ Vector<Real>::iterator< types::Vector<Real> > jacobians_it =
+ jacobians_tmp.begin_reinterpret(nb_quadrature_points, nb_element);
- Real local_coord[spatial_dimension * nb_nodes_per_element];
+ types::Matrix<Real> local_coord(nb_nodes_per_element, spatial_dimension);
for (UInt elem = 0; elem < nb_element; ++elem) {
mesh->extractNodalValuesFromElement(mesh->getNodes(),
- local_coord,
+ local_coord.storage(),
elem_val+elem*nb_nodes_per_element,
nb_nodes_per_element,
spatial_dimension);
- computeJacobianOnQuadPointsByElement<type>(spatial_dimension,
- local_coord,
- nb_nodes_per_element,
- jacobians_val);
+ computeJacobianOnQuadPointsByElement<type>(local_coord,
+ *jacobians_it);
- for (UInt q = 0; q < nb_quadrature_points; ++q) {
- *jacobians_val++ *= weights[q];
- }
- // jacobians_val += nb_quadrature_points;
+ *jacobians_it *= weights;
+ ++jacobians_it;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <ElementType type>
void IntegratorGauss::integrate(const Vector<Real> & in_f,
Vector<Real> &intf,
UInt nb_degree_of_freedom,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(jacobians.exists(type, ghost_type),
"No jacobians for the type "
<< jacobians.printType(type, ghost_type));
UInt nb_element = mesh->getNbElement(type,ghost_type);
const Vector<Real> & jac_loc = jacobians(type, ghost_type);
- UInt nb_quadrature_points = ElementClass<type>::getNbQuadraturePoints();
+ UInt nb_quadrature_points = GaussIntegrationElement<type>::getNbQuadraturePoints();
UInt * filter_elem_val = NULL;
if(filter_elements != NULL) {
nb_element = filter_elements->getSize();
filter_elem_val = filter_elements->values;
}
Real * in_f_val = in_f.storage();
Real * intf_val = intf.storage();
Real * jac_val = jac_loc.storage();
UInt offset_in_f = in_f.getNbComponent()*nb_quadrature_points;
UInt offset_intf = intf.getNbComponent();
Real * jac = jac_val;
for (UInt el = 0; el < nb_element; ++el) {
if(filter_elements != NULL) {
jac = jac_val + filter_elem_val[el] * nb_quadrature_points;
}
integrate(in_f_val, jac, intf_val, nb_degree_of_freedom, nb_quadrature_points);
in_f_val += offset_in_f;
intf_val += offset_intf;
if(filter_elements == NULL) {
jac += nb_quadrature_points;
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <ElementType type>
Real IntegratorGauss::integrate(const Vector<Real> & in_f,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(jacobians.exists(type, ghost_type),
"No jacobians for the type "
<< jacobians.printType(type, ghost_type));
UInt nb_element = mesh->getNbElement(type, ghost_type);
const Vector<Real> & jac_loc = jacobians(type, ghost_type);
- UInt nb_quadrature_points = ElementClass<type>::getNbQuadraturePoints();
+ UInt nb_quadrature_points = GaussIntegrationElement<type>::getNbQuadraturePoints();
UInt * filter_elem_val = NULL;
if(filter_elements != NULL) {
nb_element = filter_elements->getSize();
filter_elem_val = filter_elements->values;
}
Real intf = 0.;
Real * in_f_val = in_f.storage();
Real * jac_val = jac_loc.storage();
UInt offset_in_f = in_f.getNbComponent() * nb_quadrature_points;
Real * jac = jac_val;
for (UInt el = 0; el < nb_element; ++el) {
if(filter_elements != NULL) {
jac = jac_val + filter_elem_val[el] * nb_quadrature_points;
}
Real el_intf = 0;
integrate(in_f_val, jac, &el_intf, 1, nb_quadrature_points);
intf += el_intf;
in_f_val += offset_in_f;
if(filter_elements == NULL) {
jac += nb_quadrature_points;
}
}
AKANTU_DEBUG_OUT();
return intf;
}
/* -------------------------------------------------------------------------- */
template <ElementType type>
void IntegratorGauss::integrateOnQuadraturePoints(const Vector<Real> & in_f,
Vector<Real> &intf,
UInt nb_degree_of_freedom,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(jacobians.exists(type, ghost_type),
"No jacobians for the type "
<< jacobians.printType(type, ghost_type));
UInt nb_element = mesh->getNbElement(type,ghost_type);
const Vector<Real> & jac_loc = jacobians(type, ghost_type);
- UInt nb_quadrature_points = ElementClass<type>::getNbQuadraturePoints();
+ UInt nb_quadrature_points = GaussIntegrationElement<type>::getNbQuadraturePoints();
UInt * filter_elem_val = NULL;
if(filter_elements != NULL) {
nb_element = filter_elements->getSize();
filter_elem_val = filter_elements->values;
}
Real * in_f_val = in_f.storage();
Real * intf_val = intf.storage();
Real * jac_val = jac_loc.storage();
Real * jac = jac_val;
for (UInt el = 0; el < nb_element; ++el) {
if(filter_elements != NULL) {
jac = jac_val + filter_elem_val[el] * nb_quadrature_points;
}
for (UInt q = 0; q < nb_quadrature_points; ++q) {
for (UInt dof = 0; dof < nb_degree_of_freedom; ++dof) {
*intf_val = *in_f_val * *jac;
++in_f_val; ++intf_val;
}
++jac;
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-template <>
-void IntegratorGauss::precomputeJacobiansOnQuadraturePoints<_bernoulli_beam_2>(const GhostType & ghost_type) {
- AKANTU_DEBUG_IN();
+// template <>
+// void IntegratorGauss::precomputeJacobiansOnQuadraturePoints<_bernoulli_beam_2>(const GhostType & ghost_type) {
+// AKANTU_DEBUG_IN();
- UInt spatial_dimension = mesh->getSpatialDimension();
+// UInt spatial_dimension = mesh->getSpatialDimension();
- UInt nb_quadrature_points = ElementClass<_bernoulli_beam_2>::getNbQuadraturePoints();
- UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(_bernoulli_beam_2);
+// UInt nb_quadrature_points = GaussIntegrationElement<_bernoulli_beam_2>::getNbQuadraturePoints();
+// UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(_bernoulli_beam_2);
- UInt * elem_val;
- UInt nb_element;
+// UInt * elem_val;
+// UInt nb_element;
- elem_val = mesh->getConnectivity(_bernoulli_beam_2, ghost_type).storage();
- nb_element = mesh->getConnectivity(_bernoulli_beam_2, ghost_type).getSize();
+// elem_val = mesh->getConnectivity(_bernoulli_beam_2, ghost_type).storage();
+// nb_element = mesh->getConnectivity(_bernoulli_beam_2, ghost_type).getSize();
- Vector<Real> & jacobians_tmp = jacobians.alloc(nb_element*nb_quadrature_points,
- 1, _bernoulli_beam_2, ghost_type);
+// Vector<Real> & jacobians_tmp = jacobians.alloc(nb_element * nb_quadrature_points,
+// 1, _bernoulli_beam_2, ghost_type);
- Real local_coord[spatial_dimension * nb_nodes_per_element];
- Real * jacobians_val = jacobians_tmp.storage();
- for (UInt elem = 0; elem < nb_element; ++elem) {
- mesh->extractNodalValuesFromElement(mesh->getNodes(),
- local_coord,
- elem_val+elem*nb_nodes_per_element,
- nb_nodes_per_element,
- spatial_dimension);
+// types::Matrix<Real> local_coord(nb_nodes_per_element, spatial_dimension);
+// Real * jacobians_val = jacobians_tmp.storage();
+// for (UInt elem = 0; elem < nb_element; ++elem) {
+// mesh->extractNodalValuesFromElement(mesh->getNodes(),
+// local_coord.storage(),
+// elem_val+elem*nb_nodes_per_element,
+// nb_nodes_per_element,
+// spatial_dimension);
- ElementClass<_bernoulli_beam_2>::computeJacobian(local_coord,
- nb_quadrature_points,
- spatial_dimension,
- jacobians_val);
- jacobians_val += nb_quadrature_points;
- }
+// ElementClass<_bernoulli_beam_2>::computeJacobian(local_coord,
+// *jacobians_val);
+// jacobians_val += nb_quadrature_points;
+// }
- AKANTU_DEBUG_OUT();
-}
+// AKANTU_DEBUG_OUT();
+// }
/* -------------------------------------------------------------------------- */
/* template instanciation */
/* -------------------------------------------------------------------------- */
#define INSTANCIATE_TEMPLATE_CLASS(type) \
template void IntegratorGauss:: \
precomputeJacobiansOnQuadraturePoints<type>(const GhostType & ghost_type); \
template void IntegratorGauss:: \
checkJacobians<type>(const GhostType & ghost_type) const; \
template void IntegratorGauss:: \
integrate<type>(const Vector<Real> & in_f, \
Vector<Real> &intf, \
UInt nb_degree_of_freedom, \
const GhostType & ghost_type, \
const Vector<UInt> * filter_elements) const; \
template Real IntegratorGauss:: \
integrate<type>(const Vector<Real> & in_f, \
const GhostType & ghost_type, \
const Vector<UInt> * filter_elements) const; \
template void IntegratorGauss:: \
integrateOnQuadraturePoints<type>(const Vector<Real> & in_f, \
Vector<Real> &intf, \
UInt nb_degree_of_freedom, \
const GhostType & ghost_type, \
const Vector<UInt> * filter_elements) const;
AKANTU_BOOST_REGULAR_ELEMENT_LIST(INSTANCIATE_TEMPLATE_CLASS)
#undef INSTANCIATE_TEMPLATE_CLASS
-
__END_AKANTU__
diff --git a/src/fem/integrator_gauss.hh b/src/fem/integrator_gauss.hh
index 22aa83619..433d9be71 100644
--- a/src/fem/integrator_gauss.hh
+++ b/src/fem/integrator_gauss.hh
@@ -1,149 +1,152 @@
/**
* @file integrator_gauss.hh
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Feb 15 16:32:44 2011
*
* @brief Gauss integration facilities
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
#ifndef __AKANTU_INTEGRATOR_GAUSS_HH__
#define __AKANTU_INTEGRATOR_GAUSS_HH__
/* -------------------------------------------------------------------------- */
#include "integrator.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
+template<ElementKind kind>
class IntegratorGauss : public Integrator {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
IntegratorGauss(const Mesh & mesh,
const ID & id = "integrator_gauss",
const MemoryID & memory_id = 0);
virtual ~IntegratorGauss(){};
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
+ inline void initIntegrator(const Vector<Real> & nodes,
+ const ElementType & type,
+ const GhostType & ghost_type);
/// precompute jacobians on elements of type "type"
template <ElementType type>
- void precomputeJacobiansOnQuadraturePoints(const GhostType & ghost_type);
+ void precomputeJacobiansOnQuadraturePoints(const Vector<Real> & nodes,
+ const GhostType & ghost_type);
/// integrate f on the element "elem" of type "type"
template <ElementType type>
inline void integrateOnElement(const Vector<Real> & f,
Real * intf,
UInt nb_degree_of_freedom,
const UInt elem,
const GhostType & ghost_type) const;
/// integrate f for all elements of type "type"
template <ElementType type>
void integrate(const Vector<Real> & in_f,
Vector<Real> &intf,
UInt nb_degree_of_freedom,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const;
/// integrate one element scalar value on all elements of type "type"
template <ElementType type>
Real integrate(const types::RVector & in_f,
UInt index,
const GhostType & ghost_type) const;
/// integrate scalar field in_f
template <ElementType type>
Real integrate(const Vector<Real> & in_f,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const;
/// integrate partially around a quadrature point (@f$ intf_q = f_q * J_q * w_q @f$)
template <ElementType type>
void integrateOnQuadraturePoints(const Vector<Real> & in_f,
Vector<Real> &intf,
UInt nb_degree_of_freedom,
const GhostType & ghost_type,
const Vector<UInt> * filter_elements) const;
/// return a vector with quadrature points natural coordinates
template <ElementType type>
- const Vector<Real> & getQuadraturePoints(const GhostType & ghost_type) const;
+ const types::Matrix<Real> & getQuadraturePoints(const GhostType & ghost_type) const;
/// compute the vector of quadrature points natural coordinates
template <ElementType type> void computeQuadraturePoints(const GhostType & ghost_type);
/// check that the jacobians are not negative
template <ElementType type> void checkJacobians(const GhostType & ghost_type) const;
public:
/// compute the jacobians on quad points for a given element
template <ElementType type>
- void computeJacobianOnQuadPointsByElement(UInt spatial_dimension,
- Real * node_coords,
- UInt nb_nodes_per_element,
- Real * jacobians);
+ void computeJacobianOnQuadPointsByElement(const types::Matrix<Real> & node_coords,
+ types::Vector<Real> & jacobians);
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
private:
public:
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
protected:
inline void integrate(Real *f, Real *jac, Real * inte,
UInt nb_degree_of_freedom,
UInt nb_quadrature_points) const;
private:
- ByElementTypeReal quadrature_points;
+ ByElementType< types::Matrix<Real> > quadrature_points;
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
#if defined (AKANTU_INCLUDE_INLINE_IMPL)
# include "integrator_gauss_inline_impl.cc"
#endif
__END_AKANTU__
#endif /* __AKANTU_INTEGRATOR_GAUSS_HH__ */
diff --git a/src/fem/integrator_gauss_inline_impl.cc b/src/fem/integrator_gauss_inline_impl.cc
index 14b7706c7..3c1b56e2f 100644
--- a/src/fem/integrator_gauss_inline_impl.cc
+++ b/src/fem/integrator_gauss_inline_impl.cc
@@ -1,149 +1,398 @@
/**
* @file integrator_gauss_inline_impl.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Feb 15 16:32:44 2011
*
* @brief inline function of gauss integrator
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
+__END_AKANTU__
+
+#include "fem.hh"
+
+__BEGIN_AKANTU__
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+inline void IntegratorGauss<kind>::initIntegrator(const Vector<Real> & nodes,
+ const ElementType & type,
+ const GhostType & ghost_type) {
+#define INIT_INTEGRATOR(type) \
+ computeQuadraturePoints<type>(ghost_type); \
+ precomputeJacobiansOnQuadraturePoints<type>(nodes, ghost_type); \
+ checkJacobians<type>(ghost_type);
+
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(INIT_INTEGRATOR);
+#undef INIT_INTEGRATOR
+}
+
/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
template <ElementType type>
-inline void IntegratorGauss::integrateOnElement(const Vector<Real> & f,
+inline void IntegratorGauss<kind>::integrateOnElement(const Vector<Real> & f,
Real * intf,
UInt nb_degree_of_freedom,
const UInt elem,
const GhostType & ghost_type) const {
Vector<Real> * jac_loc = jacobians(type, ghost_type);
UInt nb_quadrature_points = ElementClass<type>::getNbQuadraturePoints();
AKANTU_DEBUG_ASSERT(f.getNbComponent() == nb_degree_of_freedom ,
"The vector f do not have the good number of component.");
Real * f_val = f.values + elem * f.getNbComponent();
Real * jac_val = jac_loc->values + elem * nb_quadrature_points;
integrate(f_val, jac_val, intf, nb_degree_of_freedom, nb_quadrature_points);
}
/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
template <ElementType type>
-inline Real IntegratorGauss::integrate(const types::RVector & in_f,
- UInt index,
- const GhostType & ghost_type) const{
+inline Real IntegratorGauss<kind>::integrate(const types::RVector & in_f,
+ UInt index,
+ const GhostType & ghost_type) const{
+
-
const Vector<Real> & jac_loc = jacobians(type, ghost_type);
- UInt nb_quadrature_points = ElementClass<type>::getNbQuadraturePoints();
+ UInt nb_quadrature_points = GaussIntegrationElement<type>::getNbQuadraturePoints();
AKANTU_DEBUG_ASSERT(in_f.size() == nb_quadrature_points ,
"The vector f do not have nb_quadrature_points entries.");
Real * jac_val = jac_loc.storage() + index * nb_quadrature_points;
Real intf;
integrate(in_f.storage(), jac_val, &intf, 1, nb_quadrature_points);
return intf;
}
/* -------------------------------------------------------------------------- */
-
-inline void IntegratorGauss::integrate(Real *f, Real *jac, Real * inte,
- UInt nb_degree_of_freedom,
- UInt nb_quadrature_points) const {
+template <ElementKind kind>
+inline void IntegratorGauss<kind>::integrate(Real *f, Real *jac, Real * inte,
+ UInt nb_degree_of_freedom,
+ UInt nb_quadrature_points) const {
memset(inte, 0, nb_degree_of_freedom * sizeof(Real));
Real *cjac = jac;
for (UInt q = 0; q < nb_quadrature_points; ++q) {
for (UInt dof = 0; dof < nb_degree_of_freedom; ++dof) {
inte[dof] += *f * *cjac;
++f;
}
++cjac;
}
}
/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
template <ElementType type>
-inline const Vector<Real> & IntegratorGauss::getQuadraturePoints(const GhostType & ghost_type) const {
+inline const types::Matrix<Real> & IntegratorGauss<kind>::getQuadraturePoints(const GhostType & ghost_type) const {
AKANTU_DEBUG_ASSERT(quadrature_points.exists(type, ghost_type),
"Quadrature points for type "
<< quadrature_points.printType(type, ghost_type)
<< " have not been initialized."
<< " Did you use 'computeQuadraturePoints' function ?");
return quadrature_points(type, ghost_type);
}
/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+template <ElementType type>
+inline void IntegratorGauss<kind>::computeQuadraturePoints(const GhostType & ghost_type) {
+ quadrature_points(type, ghost_type) = GaussIntegrationElement<type>::getQuadraturePoints();
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+template <ElementType type>
+inline void IntegratorGauss<kind>::
+computeJacobianOnQuadPointsByElement(const types::Matrix<Real> & node_coords,
+ types::Vector<Real> & jacobians) {
+
+ types::Matrix<Real> quad = GaussIntegrationElement<type>::getQuadraturePoints();
+ // jacobian
+ ElementClass<type>::computeJacobian(quad, node_coords, jacobians);
+}
+
+/* -------------------------------------------------------------------------- */
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+IntegratorGauss<kind>::IntegratorGauss(const Mesh & mesh,
+ const ID & id,
+ const MemoryID & memory_id) :
+ Integrator(mesh, id, memory_id),
+ quadrature_points("quadrature_points", id) {
+ AKANTU_DEBUG_IN();
+
+ AKANTU_DEBUG_OUT();
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
template <ElementType type>
-inline void IntegratorGauss::computeQuadraturePoints(const GhostType & ghost_type) {
- UInt n_coords = ElementClass<type>::getNbQuadraturePoints();
- UInt dim = ElementClass<type>::getSpatialDimension();
+void IntegratorGauss<kind>::checkJacobians(const GhostType & ghost_type) const {
+ AKANTU_DEBUG_IN();
- quadrature_points.alloc(0, dim, type, ghost_type);
- Vector<Real> & quad_points = quadrature_points(type, ghost_type);
+ UInt nb_quadrature_points = GaussIntegrationElement<type>::getNbQuadraturePoints();
- Real * coord_val = ElementClass<type>::getQuadraturePoints();
- for (UInt i = 0; i < n_coords; ++i) {
- quad_points.push_back(coord_val);
- coord_val += dim;
+ UInt nb_element;
+
+ nb_element = mesh->getConnectivity(type,ghost_type).getSize();
+
+ Real * jacobians_val = jacobians(type, ghost_type).storage();
+
+ for (UInt i = 0; i < nb_element*nb_quadrature_points; ++i,++jacobians_val){
+ if(*jacobians_val < 0)
+ AKANTU_DEBUG_ERROR("Negative jacobian computed,"
+ << " possible problem in the element node ordering (Quadrature Point "
+ << i % nb_quadrature_points << ":"
+ << i / nb_quadrature_points << ":"
+ << type << ":"
+ << ghost_type << ")");
}
+ AKANTU_DEBUG_OUT();
}
+
/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
template <ElementType type>
-inline void IntegratorGauss::
-computeJacobianOnQuadPointsByElement(UInt spatial_dimension,
- Real * node_coords,
- UInt nb_nodes_per_element,
- Real * jacobians) {
-
- Real * quad = ElementClass<type>::getQuadraturePoints();
- const UInt nb_quad_points = ElementClass<type>::getNbQuadraturePoints();
- // compute dnds
- Real * dnds = new Real[nb_nodes_per_element * spatial_dimension * nb_quad_points];
- ElementClass<type>::computeDNDS(quad,
- nb_quad_points,
- dnds);
- // compute dxds
- const UInt element_dimension = ElementClass<type>::getSpatialDimension();
- Real * dxds = new Real[element_dimension * spatial_dimension * nb_quad_points];
- ElementClass<type>::computeDXDS(dnds, nb_quad_points,
- node_coords, spatial_dimension, dxds);
-
- delete [] dnds;
+void IntegratorGauss<kind>::precomputeJacobiansOnQuadraturePoints(const Vector<Real> & nodes,
+ const GhostType & ghost_type) {
+ AKANTU_DEBUG_IN();
- // jacobian
- ElementClass<type>::computeJacobian(dxds, nb_quad_points,
- spatial_dimension, jacobians);
+ UInt spatial_dimension = mesh->getSpatialDimension();
+ UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
+ UInt nb_quadrature_points = GaussIntegrationElement<type>::getNbQuadraturePoints();
+
+ UInt nb_element = mesh->getNbElement(type,ghost_type);
+
+ Vector<Real> & jacobians_tmp = jacobians.alloc(nb_element*nb_quadrature_points,
+ 1,
+ type,
+ ghost_type);
+
+ Vector<Real>::iterator< types::Vector<Real> > jacobians_it =
+ jacobians_tmp.begin_reinterpret(nb_quadrature_points, nb_element);
+
+ types::Vector<Real> weights = GaussIntegrationElement<type>::getWeights();
+
+ Vector<Real> x_el(0, spatial_dimension * nb_nodes_per_element);
+ FEM::extractNodalToElementField(*mesh, nodes, x_el, type, ghost_type);
+
+ Vector<Real>::const_iterator< types::Matrix<Real> > x_it = x_el.begin(spatial_dimension,
+ nb_nodes_per_element);
+
+ // types::Matrix<Real> local_coord(spatial_dimension, nb_nodes_per_element);
+ for (UInt elem = 0; elem < nb_element; ++elem, ++jacobians_it, ++x_it) {
+ const types::Matrix<Real> & x = *x_it;
+ types::Vector<Real> & J = *jacobians_it;
+ computeJacobianOnQuadPointsByElement<type>(x, J);
+ J *= weights;
+ }
- delete [] dxds;
+ AKANTU_DEBUG_OUT();
}
+
/* -------------------------------------------------------------------------- */
+template <>
+template <ElementType type>
+void IntegratorGauss<_ek_cohesive>::precomputeJacobiansOnQuadraturePoints(const Vector<Real> & nodes,
+ const GhostType & ghost_type) {
+ AKANTU_DEBUG_IN();
+
+ UInt spatial_dimension = mesh->getSpatialDimension();
+ UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
+ UInt nb_quadrature_points = GaussIntegrationElement<type>::getNbQuadraturePoints();
+
+ UInt nb_element = mesh->getNbElement(type,ghost_type);
+
+ Vector<Real> & jacobians_tmp = jacobians.alloc(nb_element*nb_quadrature_points,
+ 1,
+ type,
+ ghost_type);
+
+ Vector<Real>::iterator< types::Vector<Real> > jacobians_it =
+ jacobians_tmp.begin_reinterpret(nb_quadrature_points, nb_element);
+
+ types::Vector<Real> weights = GaussIntegrationElement<type>::getWeights();
+
+ Vector<Real> x_el(0, spatial_dimension * nb_nodes_per_element);
+ FEM::extractNodalToElementField(*mesh, nodes, x_el, type, ghost_type);
+
+ Vector<Real>::const_iterator< types::Matrix<Real> > x_it = x_el.begin(spatial_dimension,
+ nb_nodes_per_element);
+
+ UInt nb_nodes_per_subelement = nb_nodes_per_element / 2;
+ types::Matrix<Real> x(spatial_dimension, nb_nodes_per_subelement);
+
+ // types::Matrix<Real> local_coord(spatial_dimension, nb_nodes_per_element);
+ for (UInt elem = 0; elem < nb_element; ++elem, ++jacobians_it, ++x_it) {
+
+ for (UInt s = 0; s < spatial_dimension; ++s)
+ for (UInt n = 0; n < nb_nodes_per_subelement; ++n)
+ x(s, n) = ((*x_it)(s, n) + (*x_it)(s, n + nb_nodes_per_subelement))*.5;
+
+ types::Vector<Real> & J = *jacobians_it;
+ computeJacobianOnQuadPointsByElement<type>(x, J);
+ J *= weights;
+ }
+
+ AKANTU_DEBUG_OUT();
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+template <ElementType type>
+void IntegratorGauss<kind>::integrate(const Vector<Real> & in_f,
+ Vector<Real> &intf,
+ UInt nb_degree_of_freedom,
+ const GhostType & ghost_type,
+ const Vector<UInt> * filter_elements) const {
+ AKANTU_DEBUG_IN();
+
+ AKANTU_DEBUG_ASSERT(jacobians.exists(type, ghost_type),
+ "No jacobians for the type "
+ << jacobians.printType(type, ghost_type));
+
+ UInt nb_points = GaussIntegrationElement<type>::getNbQuadraturePoints();
+
+ const Vector<Real> & jac_loc = jacobians(type, ghost_type);
+
+ Vector<Real>::const_iterator< types::Matrix<Real> > J_it;
+ Vector<Real>::iterator< types::Matrix<Real> > inte_it;
+ Vector<Real>::const_iterator< types::Matrix<Real> > f_it;
+
+ UInt nb_element;
+ Vector<Real> * filtered_J = NULL;
+ if(filter_elements) {
+ nb_element = filter_elements->getSize();
+ filtered_J = new Vector<Real>(0, jac_loc.getNbComponent());
+ FEM::filterQuadraturePointsData(*mesh, jac_loc, *filtered_J, type, ghost_type, filter_elements);
+ J_it = filtered_J->begin_reinterpret(nb_points, 1, nb_element);
+ } else {
+ nb_element = mesh->getNbElement(type,ghost_type);
+ J_it = jac_loc.begin_reinterpret(nb_points, 1, nb_element);
+ }
+
+ intf.resize(nb_element);
+
+ f_it = in_f.begin_reinterpret(nb_degree_of_freedom, nb_points, nb_element);
+ inte_it = intf.begin_reinterpret(nb_degree_of_freedom, 1, nb_element);
+
+ for (UInt el = 0; el < nb_element; ++el, ++J_it, ++f_it, ++inte_it) {
+ const types::Matrix<Real> & f = *f_it;
+ const types::Matrix<Real> & J = *J_it;
+ types::Matrix<Real> & inte_f = *inte_it;
+
+ inte_f.mul<false, false>(f, J);
+ }
+
+ AKANTU_DEBUG_OUT();
+}
+
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+template <ElementType type>
+Real IntegratorGauss<kind>::integrate(const Vector<Real> & in_f,
+ const GhostType & ghost_type,
+ const Vector<UInt> * filter_elements) const {
+ AKANTU_DEBUG_IN();
+
+ AKANTU_DEBUG_ASSERT(jacobians.exists(type, ghost_type),
+ "No jacobians for the type "
+ << jacobians.printType(type, ghost_type));
+
+ Vector<Real> intfv(0, 1);
+ integrate<type>(in_f, intfv, 1, ghost_type, filter_elements);
+
+ Vector<Real>::iterator<Real> it = intfv.begin();
+ Vector<Real>::iterator<Real> end = intfv.end();
+
+ Real intf = 0.;
+ for (; it != end; ++it) intf += *it;
+
+ AKANTU_DEBUG_OUT();
+ return intf;
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+template <ElementType type>
+void IntegratorGauss<kind>::integrateOnQuadraturePoints(const Vector<Real> & in_f,
+ Vector<Real> &intf,
+ UInt nb_degree_of_freedom,
+ const GhostType & ghost_type,
+ const Vector<UInt> * filter_elements) const {
+ AKANTU_DEBUG_IN();
+
+ AKANTU_DEBUG_ASSERT(jacobians.exists(type, ghost_type),
+ "No jacobians for the type "
+ << jacobians.printType(type, ghost_type));
+
+ UInt nb_element;
+ UInt nb_points = GaussIntegrationElement<type>::getNbQuadraturePoints();
+
+ const Vector<Real> & jac_loc = jacobians(type, ghost_type);
+
+ Vector<Real>::const_iterator< Real > J_it;
+ Vector<Real>::iterator< types::Vector<Real> > inte_it;
+ Vector<Real>::const_iterator< types::Vector<Real> > f_it;
+
+ Vector<Real> * filtered_J = NULL;
+ if(filter_elements) {
+ nb_element = filter_elements->getSize();
+ filtered_J = new Vector<Real>(0, jac_loc.getNbComponent());
+ FEM::filterQuadraturePointsData(*mesh, jac_loc, *filtered_J, type, ghost_type, filter_elements);
+ J_it = filtered_J->begin();
+ } else {
+ nb_element = mesh->getNbElement(type,ghost_type);
+ J_it = jac_loc.begin();
+ }
+
+ intf.resize(nb_element*nb_points);
+
+ f_it = in_f.begin(nb_degree_of_freedom);
+ inte_it = intf.begin(nb_degree_of_freedom);
+
+ for (UInt el = 0; el < nb_element; ++el, ++J_it, ++f_it, ++inte_it) {
+ const Real & J = *J_it;
+ const types::Vector<Real> & f = *f_it;
+ types::Vector<Real> & inte_f = *inte_it;
+
+ inte_f = f;
+ inte_f *= J;
+ }
+
+ AKANTU_DEBUG_OUT();
+}
diff --git a/src/fem/interpolation_element.cc b/src/fem/interpolation_element.cc
new file mode 100644
index 000000000..025f608e8
--- /dev/null
+++ b/src/fem/interpolation_element.cc
@@ -0,0 +1,86 @@
+/**
+ * @file interpolation_element.cc
+ *
+ * @author Nicolas Richart <nicolas.richart@epfl.ch>
+ *
+ * @date Tue Jul 20 23:40:43 2010
+ *
+ * @brief Common part of element_classes
+ *
+ * @section LICENSE
+ *
+ * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
+ * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
+ *
+ * Akantu is free software: you can 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 3 of the License, or (at your option) any
+ * later version.
+ *
+ * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+/* -------------------------------------------------------------------------- */
+#include "element_class.hh"
+/* -------------------------------------------------------------------------- */
+
+__BEGIN_AKANTU__
+
+/* -------------------------------------------------------------------------- */
+template<> UInt InterpolationElement<_itp_not_defined>::nb_nodes_per_element = 0;
+template<> UInt InterpolationElement<_itp_not_defined>::natural_space_dimension = 0;
+
+/* -------------------------------------------------------------------------- */
+/* Regular Elements */
+/* -------------------------------------------------------------------------- */
+
+/* -------------------------------------------------------------------------- */
+//template<> UInt InterpolationElement<_itp_lagrange_point>::nb_nodes_per_element = 1;
+//template<> UInt InterpolationElement<_itp_lagrange_point>::natural_space_dimension = 0;
+/* -------------------------------------------------------------------------- */
+template<> UInt InterpolationElement<_itp_lagrange_segment_2>::nb_nodes_per_element = 2;
+template<> UInt InterpolationElement<_itp_lagrange_segment_2>::natural_space_dimension = 1;
+/* -------------------------------------------------------------------------- */
+template<> UInt InterpolationElement<_itp_lagrange_segment_3>::nb_nodes_per_element = 3;
+template<> UInt InterpolationElement<_itp_lagrange_segment_3>::natural_space_dimension = 1;
+/* -------------------------------------------------------------------------- */
+template<> UInt InterpolationElement<_itp_lagrange_triangle_3>::nb_nodes_per_element = 3;
+template<> UInt InterpolationElement<_itp_lagrange_triangle_3>::natural_space_dimension = 2;
+/* -------------------------------------------------------------------------- */
+template<> UInt InterpolationElement<_itp_lagrange_triangle_6>::nb_nodes_per_element = 6;
+template<> UInt InterpolationElement<_itp_lagrange_triangle_6>::natural_space_dimension = 2;
+/* -------------------------------------------------------------------------- */
+template<> UInt InterpolationElement<_itp_lagrange_tetrahedron_4>::nb_nodes_per_element = 4;
+template<> UInt InterpolationElement<_itp_lagrange_tetrahedron_4>::natural_space_dimension = 3;
+/* -------------------------------------------------------------------------- */
+template<> UInt InterpolationElement<_itp_lagrange_tetrahedron_10>::nb_nodes_per_element = 10;
+template<> UInt InterpolationElement<_itp_lagrange_tetrahedron_10>::natural_space_dimension = 3;
+/* -------------------------------------------------------------------------- */
+template<> UInt InterpolationElement<_itp_lagrange_quadrangle_4>::nb_nodes_per_element = 4;
+template<> UInt InterpolationElement<_itp_lagrange_quadrangle_4>::natural_space_dimension = 2;
+/* -------------------------------------------------------------------------- */
+template<> UInt InterpolationElement<_itp_serendip_quadrangle_8>::nb_nodes_per_element = 8;
+template<> UInt InterpolationElement<_itp_serendip_quadrangle_8>::natural_space_dimension = 2;
+/* -------------------------------------------------------------------------- */
+template<> UInt InterpolationElement<_itp_lagrange_hexahedron_8>::nb_nodes_per_element = 8;
+template<> UInt InterpolationElement<_itp_lagrange_hexahedron_8>::natural_space_dimension = 3;
+/* -------------------------------------------------------------------------- */
+
+#if defined(AKANTU_STRUCTURAL_MECHANICS)
+/* -------------------------------------------------------------------------- */
+/* Structural elements */
+/* -------------------------------------------------------------------------- */
+template<> UInt InterpolationElement<_itp_bernoulli_beam>::nb_nodes_per_element = 2;
+template<> UInt InterpolationElement<_itp_bernoulli_beam>::natural_space_dimension = 1;
+template<> UInt InterpolationElement<_itp_bernoulli_beam>::nb_shape_functions = 5;
+/* -------------------------------------------------------------------------- */
+#endif
+
+__END_AKANTU__
diff --git a/src/fem/mesh.cc b/src/fem/mesh.cc
index 29e1db5f2..131b7bd6e 100644
--- a/src/fem/mesh.cc
+++ b/src/fem/mesh.cc
@@ -1,333 +1,338 @@
/**
* @file mesh.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Jun 18 11:47:19 2010
*
* @brief class handling meshes
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <sstream>
/* -------------------------------------------------------------------------- */
#include "mesh.hh"
#include "mesh_io.hh"
#include "element_class.hh"
#include "static_communicator.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
const Element ElementNull(_not_defined, 0);
/* -------------------------------------------------------------------------- */
void Element::printself(std::ostream & stream, int indent) const {
std::string space;
for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
stream << space << "Element [" << type << ", " << element << ", " << ghost_type << "]";
}
/* -------------------------------------------------------------------------- */
Mesh::Mesh(UInt spatial_dimension,
const ID & id,
const MemoryID & memory_id) :
Memory(memory_id), id(id), nodes_global_ids(NULL), nodes_type(NULL),
created_nodes(true),
connectivities("connectivities", id),
normals("normals", id),
spatial_dimension(spatial_dimension),
types_offsets(Vector<UInt>((UInt) _max_element_type + 1, 1)),
ghost_types_offsets(Vector<UInt>((UInt) _max_element_type + 1, 1)),
nb_surfaces(0),
surface_id("surface_id", id),
element_to_subelement("element_to_subelement", id),
subelement_to_element("subelement_to_element", id),
facets_to_cohesive_el(0, 2, "facets_to_cohesive_el"),
uint_data("by_element_uint_data", id) {
AKANTU_DEBUG_IN();
std::stringstream sstr;
sstr << id << ":coordinates";
this->nodes = &(alloc<Real>(sstr.str(), 0, this->spatial_dimension));
nb_global_nodes = 0;
init();
std::fill_n(lower_bounds, 3, 0.);
std::fill_n(upper_bounds, 3, 0.);
std::fill_n(size, 3, 0.);
std::fill_n(local_lower_bounds, 3, 0.);
std::fill_n(local_upper_bounds, 3, 0.);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
Mesh::Mesh(UInt spatial_dimension,
const ID & nodes_id,
const ID & id,
const MemoryID & memory_id) :
Memory(memory_id), id(id), nodes_global_ids(NULL), nodes_type(NULL),
created_nodes(false),
connectivities("connectivities", id),
normals("normals", id),
spatial_dimension(spatial_dimension),
types_offsets(Vector<UInt>((UInt) _max_element_type + 1, 1)),
ghost_types_offsets(Vector<UInt>((UInt) _max_element_type + 1, 1)),
nb_surfaces(0),
surface_id("surface_id", id),
element_to_subelement("element_to_subelement", id),
subelement_to_element("subelement_to_element", id),
uint_data("by_element_uint_data", id) {
AKANTU_DEBUG_IN();
this->nodes = &(getVector<Real>(nodes_id));
nb_global_nodes = nodes->getSize();
init();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
Mesh::Mesh(UInt spatial_dimension,
Vector<Real> & nodes,
const ID & id,
const MemoryID & memory_id) :
Memory(memory_id), id(id), nodes_global_ids(NULL), nodes_type(NULL),
created_nodes(false),
connectivities("connectivities", id),
normals("normals", id),
spatial_dimension(spatial_dimension),
types_offsets(Vector<UInt>(_max_element_type + 1, 1)),
ghost_types_offsets(Vector<UInt>(_max_element_type + 1, 1)),
nb_surfaces(0),
surface_id("surface_id", id),
element_to_subelement("element_to_subelement", id),
subelement_to_element("subelement_to_element", id),
uint_data("by_element_uint_data", id) {
AKANTU_DEBUG_IN();
this->nodes = &(nodes);
nb_global_nodes = nodes.getSize();
init();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Mesh::init() {
// this->types_offsets.resize(_max_element_type);
nodes_type = NULL;
computeBoundingBox();
}
/* -------------------------------------------------------------------------- */
Mesh::~Mesh() {
AKANTU_DEBUG_IN();
for(UInt g = _not_ghost; g <= _ghost; ++g) {
GhostType gt = (GhostType) g;
Mesh::type_iterator it = firstType(0, gt);
Mesh::type_iterator end = lastType(0, gt);
for(; it != end; ++it) {
UIntDataMap & map = uint_data(*it, gt);
UIntDataMap::iterator dit;
for (dit = map.begin(); dit != map.end(); ++dit) {
if(dit->second) delete dit->second;
}
map.clear();
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Mesh::read (const std::string & filename, const MeshIOType & mesh_io_type) {
MeshIO mesh_io;
mesh_io.read(filename, *this, mesh_io_type);
}
/* -------------------------------------------------------------------------- */
void Mesh::write(const std::string & filename, const MeshIOType & mesh_io_type) {
MeshIO mesh_io;
mesh_io.write(filename, *this, mesh_io_type);
}
/* -------------------------------------------------------------------------- */
void Mesh::printself(std::ostream & stream, int indent) const {
std::string space;
for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
stream << space << "Mesh [" << std::endl;
stream << space << " + id : " << this->id << std::endl;
stream << space << " + spatial dimension : " << this->spatial_dimension << std::endl;
stream << space << " + nodes [" << std::endl;
nodes->printself(stream, indent+2);
stream << space << " ]" << std::endl;
stream << space << " + connectivities [" << std::endl;
connectivities.printself(stream, indent+2);
stream << space << "]" << std::endl;
}
/* -------------------------------------------------------------------------- */
void Mesh::computeBoundingBox(){
AKANTU_DEBUG_IN();
for (UInt k = 0; k < spatial_dimension; ++k) {
local_lower_bounds[k] = std::numeric_limits<double>::max();
local_upper_bounds[k] = - std::numeric_limits<double>::max();
}
for (UInt i = 0; i < nodes->getSize(); ++i) {
if(!isPureGhostNode(i))
for (UInt k = 0; k < spatial_dimension; ++k) {
local_lower_bounds[k] = std::min(local_lower_bounds[k], (*nodes)(i, k));
local_upper_bounds[k] = std::max(local_upper_bounds[k], (*nodes)(i, k));
}
}
StaticCommunicator & comm = StaticCommunicator::getStaticCommunicator();
Real reduce_bounds[2 * spatial_dimension];
for (UInt k = 0; k < spatial_dimension; ++k) {
reduce_bounds[2*k ] = local_lower_bounds[k];
reduce_bounds[2*k + 1] = - local_upper_bounds[k];
}
comm.allReduce(reduce_bounds, 2 * spatial_dimension, _so_min);
for (UInt k = 0; k < spatial_dimension; ++k) {
lower_bounds[k] = reduce_bounds[2*k];
upper_bounds[k] = - reduce_bounds[2*k + 1];
}
for (UInt k = 0; k < spatial_dimension; ++k)
size[k] = upper_bounds[k] - lower_bounds[k];
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Mesh::setSurfaceIDsFromIntData(const std::string & data_name) {
std::set<Surface> surface_ids;
for(UInt g = _not_ghost; g <= _ghost; ++g) {
GhostType gt = (GhostType) g;
Mesh::type_iterator it = firstType(spatial_dimension - 1, gt);
Mesh::type_iterator end = lastType(spatial_dimension - 1, gt);
for(; it != end; ++it) {
UIntDataMap & map = uint_data(*it, gt);
UIntDataMap::iterator it_data = map.find(data_name);
AKANTU_DEBUG_ASSERT(it_data != map.end(),
"No data named " << data_name
<< " present in the mesh " << id
<< " for the element type " << *it);
AKANTU_DEBUG_ASSERT(!surface_id.exists(*it, gt),
"Surface id for type (" << gt << ":" << *it
<< ") already set to the vector " << surface_id(*it, gt).getID());
surface_id.setVector(*it, gt, *it_data->second);
for (UInt s = 0; s < it_data->second->getSize(); ++s) {
surface_ids.insert((*it_data->second)(s));
}
}
}
nb_surfaces = surface_ids.size();
}
/* -------------------------------------------------------------------------- */
template<typename T>
void Mesh::initByElementTypeVector(ByElementTypeVector<T> & vect,
UInt nb_component,
UInt dim,
const bool & flag_nb_node_per_elem_multiply,
ElementKind element_kind,
bool size_to_nb_element) const {
AKANTU_DEBUG_IN();
for(UInt g = _not_ghost; g <= _ghost; ++g) {
GhostType gt = (GhostType) g;
Mesh::type_iterator it = firstType(dim, gt, element_kind);
Mesh::type_iterator end = lastType(dim, gt, element_kind);
for(; it != end; ++it) {
ElementType type = *it;
if (flag_nb_node_per_elem_multiply) nb_component *= Mesh::getNbNodesPerElement(*it);
UInt size = 0;
if (size_to_nb_element) size = this->getNbElement(type, gt);
vect.alloc(size, nb_component, type);
}
}
AKANTU_DEBUG_OUT();
}
+/* -------------------------------------------------------------------------- */
+void Mesh::initNormals() {
+ initByElementTypeVector(normals, spatial_dimension, spatial_dimension, false, _ek_not_defined);
+}
+
/* -------------------------------------------------------------------------- */
template void Mesh::initByElementTypeVector<Real>(ByElementTypeVector<Real> & vect,
UInt nb_component,
UInt dim,
const bool & flag_nb_elem_multiply,
ElementKind element_kind,
bool size_to_nb_element) const;
template void Mesh::initByElementTypeVector<Int>(ByElementTypeVector<Int> & vect,
UInt nb_component,
UInt dim,
const bool & flag_nb_elem_multiply,
ElementKind element_kind,
bool size_to_nb_element) const;
template void Mesh::initByElementTypeVector<UInt>(ByElementTypeVector<UInt> & vect,
UInt nb_component,
UInt dim,
const bool & flag_nb_elem_multiply,
ElementKind element_kind,
bool size_to_nb_element) const;
template void Mesh::initByElementTypeVector<bool>(ByElementTypeVector<bool> & vect,
UInt nb_component,
UInt dim,
const bool & flag_nb_elem_multiply,
ElementKind element_kind,
bool size_to_nb_element) const;
__END_AKANTU__
diff --git a/src/fem/mesh.hh b/src/fem/mesh.hh
index 5fec7273a..85103c86a 100644
--- a/src/fem/mesh.hh
+++ b/src/fem/mesh.hh
@@ -1,614 +1,630 @@
/**
* @file mesh.hh
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Jun 18 11:47:19 2010
*
* @brief the class representing the meshes
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_MESH_HH__
#define __AKANTU_MESH_HH__
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "aka_memory.hh"
#include "aka_vector.hh"
#include "element_class.hh"
#include "by_element_type.hh"
#include "aka_event_handler.hh"
/* -------------------------------------------------------------------------- */
#include <set>
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
/* Element */
/* -------------------------------------------------------------------------- */
+class Element;
+extern const Element ElementNull;
+
class Element {
public:
Element(ElementType type = _not_defined, UInt element = 0,
GhostType ghost_type = _not_ghost, ElementKind kind = _ek_regular) :
type(type), element(element),
ghost_type(ghost_type), kind(kind) {};
Element(const Element & element) {
this->type = element.type;
this->element = element.element;
this->ghost_type = element.ghost_type;
this->kind = element.kind;
}
inline bool operator==(const Element & elem) const {
return ((element == elem.element)
&& (type == elem.type)
&& (ghost_type == elem.ghost_type)
&& (kind == elem.kind));
}
inline bool operator!=(const Element & elem) const {
return ((element != elem.element)
|| (type != elem.type)
|| (ghost_type != elem.ghost_type)
|| (kind != elem.kind));
}
bool operator<(const Element& rhs) const {
- bool res = ((this->kind < rhs.kind) ||
+ bool res = (rhs == ElementNull) || ((this->kind < rhs.kind) ||
((this->kind == rhs.kind) &&
((this->ghost_type < rhs.ghost_type) ||
((this->ghost_type == rhs.ghost_type) &&
((this->type < rhs.type) ||
((this->type == rhs.type) &&
(this->element < rhs.element)))))));
return res;
}
virtual ~Element() {};
/// function to print the containt of the class
virtual void printself(std::ostream & stream, int indent = 0) const;
public:
ElementType type;
UInt element;
GhostType ghost_type;
ElementKind kind;
};
struct CompElementLess {
bool operator() (const Element& lhs, const Element& rhs) const {
return lhs < rhs;
}
};
-extern const Element ElementNull;
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
/* Mesh modifications events */
/* -------------------------------------------------------------------------- */
template<class Entity>
class MeshEvent {
public:
virtual ~MeshEvent() {}
const Vector<Entity> & getList() const { return list; }
Vector<Entity> & getList() { return list; }
protected:
Vector<Entity> list;
};
-
-
class Mesh;
-class NewNodesEvent : public MeshEvent<UInt> { };
+class NewNodesEvent : public MeshEvent<UInt> {
+public:
+ virtual ~NewNodesEvent() {};
+};
class RemovedNodesEvent : public MeshEvent<UInt> {
public:
+ virtual ~RemovedNodesEvent() {};
inline RemovedNodesEvent(const Mesh & mesh);
AKANTU_GET_MACRO_NOT_CONST(NewNumbering, new_numbering, Vector<UInt> &);
AKANTU_GET_MACRO(NewNumbering, new_numbering, const Vector<UInt> &);
private:
Vector<UInt> new_numbering;
};
-class NewElementsEvent : public MeshEvent<Element> { };
+class NewElementsEvent : public MeshEvent<Element> {
+public:
+ virtual ~NewElementsEvent() {};
+};
class RemovedElementsEvent : public MeshEvent<Element> {
public:
+ virtual ~RemovedElementsEvent() {};
inline RemovedElementsEvent(const Mesh & mesh);
AKANTU_GET_MACRO(NewNumbering, new_numbering, const ByElementTypeUInt &);
AKANTU_GET_MACRO_NOT_CONST(NewNumbering, new_numbering, ByElementTypeUInt &);
AKANTU_GET_MACRO_BY_ELEMENT_TYPE(NewNumbering, new_numbering, UInt);
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(NewNumbering, new_numbering, UInt);
protected:
ByElementTypeUInt new_numbering;
};
/* -------------------------------------------------------------------------- */
class MeshEventHandler {
public:
virtual ~MeshEventHandler() {};
/* ------------------------------------------------------------------------ */
/* Internal code */
/* ------------------------------------------------------------------------ */
protected:
- inline void sendEvent(const NewNodesEvent & event) { onNodesAdded (event.getList()); }
+ inline void sendEvent(const NewNodesEvent & event) { onNodesAdded (event.getList(),
+ event); }
inline void sendEvent(const RemovedNodesEvent & event) { onNodesRemoved(event.getList(),
- event.getNewNumbering()); }
+ event.getNewNumbering(),
+ event); }
- inline void sendEvent(const NewElementsEvent & event) { onElementsAdded (event.getList()); }
+ inline void sendEvent(const NewElementsEvent & event) { onElementsAdded (event.getList(),
+ event); }
inline void sendEvent(const RemovedElementsEvent & event) { onElementsRemoved(event.getList(),
- event.getNewNumbering()); }
+ event.getNewNumbering(),
+ event); }
template<class EventHandler>
friend class EventHandlerManager;
/* ------------------------------------------------------------------------ */
/* Interface */
/* ------------------------------------------------------------------------ */
public:
- virtual void onNodesAdded (__attribute__((unused)) const Vector<UInt> & nodes_list) { }
+ virtual void onNodesAdded (__attribute__((unused)) const Vector<UInt> & nodes_list,
+ __attribute__((unused)) const NewNodesEvent & event) { }
virtual void onNodesRemoved(__attribute__((unused)) const Vector<UInt> & nodes_list,
- __attribute__((unused)) const Vector<UInt> & new_numbering) { }
+ __attribute__((unused)) const Vector<UInt> & new_numbering,
+ __attribute__((unused)) const RemovedNodesEvent & event) { }
-
- virtual void onElementsAdded (__attribute__((unused)) const Vector<Element> & elements_list) { }
+ virtual void onElementsAdded (__attribute__((unused)) const Vector<Element> & elements_list,
+ __attribute__((unused)) const NewElementsEvent & event) { }
virtual void onElementsRemoved(__attribute__((unused)) const Vector<Element> & elements_list,
- __attribute__((unused)) const ByElementTypeUInt & new_numbering) { }
+ __attribute__((unused)) const ByElementTypeUInt & new_numbering,
+ __attribute__((unused)) const RemovedElementsEvent & event) { }
};
/* -------------------------------------------------------------------------- */
/* Mesh */
/* -------------------------------------------------------------------------- */
/**
* @class Mesh this contain the coordinates of the nodes in the Mesh.nodes
* Vector, and the connectivity. The connectivity are stored in by element
* types.
*
* To know all the element types present in a mesh you can get the
* Mesh::ConnectivityTypeList
*
* In order to loop on all element you have to loop on all types like this :
* @code
Mesh::type_iterator it = mesh.firstType(dim, ghost_type);
Mesh::type_iterator end = mesh.lastType(dim, ghost_type);
for(; it != end; ++it) {
UInt nb_element = mesh.getNbElement(*it);
const Vector<UInt> & conn = mesh.getConnectivity(*it);
for(UInt e = 0; e < nb_element; ++e) {
...
}
}
@endcode
*/
class Mesh : protected Memory, public EventHandlerManager<MeshEventHandler> {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
/// constructor that create nodes coordinates array
Mesh(UInt spatial_dimension,
const ID & id = "mesh",
const MemoryID & memory_id = 0);
/// constructor that use an existing nodes coordinates array, by knowing its ID
Mesh(UInt spatial_dimension,
const ID & nodes_id,
const ID & id,
const MemoryID & memory_id);
/**
* constructor that use an existing nodes coordinates
* array, by getting the vector of coordinates
*/
Mesh(UInt spatial_dimension,
Vector<Real> & nodes,
const ID & id = "mesh",
const MemoryID & memory_id = 0);
virtual ~Mesh();
/// @typedef ConnectivityTypeList list of the types present in a Mesh
typedef std::set<ElementType> ConnectivityTypeList;
/// read the mesh from a file
void read (const std::string & filename, const MeshIOType & mesh_io_type = _miot_auto);
/// write the mesh to a file
void write(const std::string & filename, const MeshIOType & mesh_io_type = _miot_auto);
-
private:
/// initialize the connectivity to NULL and other stuff
void init();
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
/// function to print the containt of the class
virtual void printself(std::ostream & stream, int indent = 0) const;
/// function that computes the bounding box (fills xmin, xmax)
void computeBoundingBox();
/// init a by-element-type real vector with provided ids
template<typename T>
void initByElementTypeVector(ByElementTypeVector<T> & v,
UInt nb_component,
UInt spatial_dimension,
const bool & flag_nb_node_per_elem_multiply = false,
ElementKind element_kind = _ek_regular,
bool size_to_nb_element = false) const; /// @todo: think about nicer way to do it
/// extract coordinates of nodes from an element
template<typename T>
inline void extractNodalValuesFromElement(const Vector<T> & nodal_values,
T * elemental_values,
UInt * connectivity,
UInt n_nodes,
UInt nb_degree_of_freedom) const;
/// extract coordinates of nodes from a reversed element
inline void extractNodalCoordinatesFromPBCElement(Real * local_coords,
UInt * connectivity,
UInt n_nodes);
/// convert a element to a linearized element
inline UInt elementToLinearized(const Element & elem) const;
/// convert a linearized element to an element
inline Element linearizedToElement (UInt linearized_element) const;
/// update the types offsets array for the conversions
inline void updateTypesOffsets(const GhostType & ghost_type);
/// add a Vector of connectivity for the type <type>.
inline void addConnectivityType(const ElementType & type);
/* ------------------------------------------------------------------------ */
template <class Event>
inline void sendEvent(Event & event) {
if(event.getList().getSize() != 0)
EventHandlerManager<MeshEventHandler>::sendEvent<Event>(event);
}
/* ------------------------------------------------------------------------ */
template<typename T>
inline void removeNodesFromVector(Vector<T> & vect, const Vector<UInt> & new_numbering);
+ /// initialize normals
+ void initNormals();
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
AKANTU_GET_MACRO(ID, id, const ID &);
/// get the spatial dimension of the mesh = number of component of the coordinates
AKANTU_GET_MACRO(SpatialDimension, spatial_dimension, UInt);
/// get the nodes Vector aka coordinates
AKANTU_GET_MACRO(Nodes, *nodes, const Vector<Real> &);
AKANTU_GET_MACRO_NOT_CONST(Nodes, *nodes, Vector<Real> &);
+ /// get the normals for the elements
+ AKANTU_GET_MACRO_BY_ELEMENT_TYPE(Normals, normals, Real);
+
/// get the number of nodes
AKANTU_GET_MACRO(NbNodes, nodes->getSize(), UInt);
/// get the Vector of global ids of the nodes (only used in parallel)
AKANTU_GET_MACRO(GlobalNodesIds, *nodes_global_ids, const Vector<UInt> &);
/// get the global id of a node
inline UInt getNodeGlobalId(UInt local_id) const;
/// get the global number of nodes
inline UInt getNbGlobalNodes() const;
/// get the nodes type Vector
AKANTU_GET_MACRO(NodesType, *nodes_type, const Vector<Int> &);
inline Int getNodeType(UInt local_id) const;
/// say if a node is a pure ghost node
inline bool isPureGhostNode(UInt n) const;
/// say if a node is pur local or master node
inline bool isLocalOrMasterNode(UInt n) const;
inline bool isLocalNode(UInt n) const;
inline bool isMasterNode(UInt n) const;
inline bool isSlaveNode(UInt n) const;
AKANTU_GET_MACRO(XMin, lower_bounds[0], Real);
AKANTU_GET_MACRO(YMin, lower_bounds[1], Real);
AKANTU_GET_MACRO(ZMin, lower_bounds[2], Real);
AKANTU_GET_MACRO(XMax, upper_bounds[0], Real);
AKANTU_GET_MACRO(YMax, upper_bounds[1], Real);
AKANTU_GET_MACRO(ZMax, upper_bounds[2], Real);
inline void getLowerBounds(Real * lower) const;
inline void getUpperBounds(Real * upper) const;
inline void getLocalLowerBounds(Real * lower) const;
inline void getLocalUpperBounds(Real * upper) const;
/// get the number of surfaces
AKANTU_GET_MACRO(NbSurfaces, nb_surfaces, UInt);
/// get the connectivity Vector for a given type
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(Connectivity, connectivities, UInt);
AKANTU_GET_MACRO_BY_ELEMENT_TYPE(Connectivity, connectivities, UInt);
AKANTU_GET_MACRO(Connectivities, connectivities, const ByElementTypeVector<UInt> &);
/// @todo take out this set, if mesh can read surface id
/// set the number of surfaces
AKANTU_SET_MACRO(NbSurfaces, nb_surfaces, UInt);
/// get the number of element of a type in the mesh
inline UInt getNbElement(const ElementType & type, const GhostType & ghost_type = _not_ghost) const;
- // /// get the number of ghost element of a type in the mesh
- // inline UInt getNbGhostElement(const ElementType & type) const;
-
/// get the connectivity list either for the elements or the ghost elements
inline const ConnectivityTypeList & getConnectivityTypeList(const GhostType & ghost_type = _not_ghost) const;
/// compute the barycenter of a given element
inline void getBarycenter(UInt element, const ElementType & type, Real * barycenter,
GhostType ghost_type = _not_ghost) const;
/// get the element connected to a subelement
- AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(ElementToSubelement, element_to_subelement, Vector<Element>);
- AKANTU_GET_MACRO_BY_ELEMENT_TYPE(ElementToSubelement, element_to_subelement, Vector<Element>);
+ AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(ElementToSubelement, element_to_subelement, std::vector<Element>);
+ AKANTU_GET_MACRO_BY_ELEMENT_TYPE(ElementToSubelement, element_to_subelement, std::vector<Element>);
/// get the subelement connected to an element
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(SubelementToElement, subelement_to_element, Element);
AKANTU_GET_MACRO_BY_ELEMENT_TYPE(SubelementToElement, subelement_to_element, Element);
/// get the surface values of facets
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(SurfaceID, surface_id, UInt);
AKANTU_GET_MACRO_BY_ELEMENT_TYPE(SurfaceID, surface_id, UInt);
/// set the int data to the surface id vectors
void setSurfaceIDsFromIntData(const std::string & data_name);
inline const Vector<UInt> & getUIntData(const ElementType & el_type,
const std::string & data_name,
const GhostType & ghost_type = _not_ghost) const;
/// get the facet to cohesive element vector
AKANTU_GET_MACRO(FacetsToCohesiveEl, facets_to_cohesive_el, const Vector<UInt> &);
AKANTU_GET_MACRO_NOT_CONST(FacetsToCohesiveEl, facets_to_cohesive_el, Vector<UInt> &);
/* ------------------------------------------------------------------------ */
/* Wrappers on ElementClass functions */
/* ------------------------------------------------------------------------ */
public:
/// get the number of nodes per element for a given element type
static inline UInt getNbNodesPerElement(const ElementType & type);
/// get the number of nodes per element for a given element type considered as
/// a first order element
static inline ElementType getP1ElementType(const ElementType & type);
/// get the kind of the element type
static inline ElementKind getKind(const ElementType & type);
/// get spatial dimension of a type of element
static inline UInt getSpatialDimension(const ElementType & type);
/// get number of facets of a given element type
static inline UInt getNbFacetsPerElement(const ElementType & type);
/// get local connectivity of a facet for a given facet type
- static inline UInt ** getFacetLocalConnectivity(const ElementType & type);
+ static inline types::Matrix<UInt> getFacetLocalConnectivity(const ElementType & type);
- /// get the type of the surface element associated to a given element
- static inline ElementType getFacetElementType(const ElementType & type);
-
- /// get the pointer to the list of elements for a given type
- inline Vector<UInt> * getReversedElementsPBCPointer(const ElementType & type);
+ /// get connectivity of facets for a given element
+ inline types::Matrix<UInt> getFacetConnectivity(UInt element, const ElementType & type, const GhostType & ghost_type) const;
+ /// get the type of the surface element associated to a given element
+ static inline ElementType getFacetType(const ElementType & type);
/* ------------------------------------------------------------------------ */
/* Element type Iterator */
/* ------------------------------------------------------------------------ */
- typedef ByElementTypeUInt::type_iterator type_iterator;
+ typedef ByElementTypeVector<UInt, ElementType>::type_iterator type_iterator;
inline type_iterator firstType(UInt dim = 0,
GhostType ghost_type = _not_ghost,
ElementKind kind = _ek_regular) const {
return connectivities.firstType(dim, ghost_type, kind);
}
inline type_iterator lastType(UInt dim = 0,
GhostType ghost_type = _not_ghost,
ElementKind kind = _ek_regular) const {
return connectivities.lastType(dim, ghost_type, kind);
}
/* ------------------------------------------------------------------------ */
/* Private methods for friends */
/* ------------------------------------------------------------------------ */
private:
friend class MeshIOMSH;
friend class MeshIOMSHStruct;
friend class MeshIODiana;
friend class MeshUtils;
friend class DistributedSynchronizer;
AKANTU_GET_MACRO(NodesPointer, nodes, Vector<Real> *);
/// get a pointer to the nodes_global_ids Vector<UInt> and create it if necessary
inline Vector<UInt> * getNodesGlobalIdsPointer();
/// get a pointer to the nodes_type Vector<Int> and create it if necessary
inline Vector<Int> * getNodesTypePointer();
/// get a pointer to the connectivity Vector for the given type and create it if necessary
inline Vector<UInt> * getConnectivityPointer(const ElementType & type,
const GhostType & ghost_type = _not_ghost);
+ /// get the pointer to the list of elements for a given type
+ // inline Vector<UInt> * getReversedElementsPBCPointer(const ElementType & type);
+
// inline Vector<Real> * getNormalsPointer(ElementType type) const;
/// get a pointer to the surface_id Vector for the given type and create it if necessary
inline Vector<UInt> * getSurfaceIDPointer(const ElementType & type, const GhostType & ghost_type = _not_ghost);
/// get the UIntDataMap for a given ElementType
inline UIntDataMap & getUIntDataMap(const ElementType & el_type,
const GhostType & ghost_type = _not_ghost);
/// get the IntDataMap pointer (modifyable) for a given ElementType
inline Vector<UInt> * getUIntDataPointer(const ElementType & el_type,
const std::string & data_name,
const GhostType & ghost_type = _not_ghost);
/// get a pointer to the element_to_subelement Vector for the given type and create it if necessary
- inline Vector<Vector<Element> > * getElementToSubelementPointer(const ElementType & type,
- const GhostType & ghost_type = _not_ghost);
+ inline Vector< std::vector<Element> > * getElementToSubelementPointer(const ElementType & type,
+ const GhostType & ghost_type = _not_ghost);
/// get a pointer to the subelement_to_element Vector for the given type and create it if necessary
inline Vector<Element > * getSubelementToElementPointer(const ElementType & type,
const GhostType & ghost_type = _not_ghost);
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
private:
-
/// id of the mesh
ID id;
/// array of the nodes coordinates
Vector<Real> * nodes;
/// global node ids
Vector<UInt> * nodes_global_ids;
/// node type, -3 pure ghost, -2 master for the node, -1 normal node, i in
/// [0-N] slave node and master is proc i
Vector<Int> * nodes_type;
/// global number of nodes;
UInt nb_global_nodes;
/// boolean to know if the nodes have to be deleted with the mesh or not
bool created_nodes;
/// all class of elements present in this mesh (for heterogenous meshes)
ByElementTypeUInt connectivities;
/// map to normals for all class of elements present in this mesh
ByElementTypeReal normals;
/// list of all existing types in the mesh
ConnectivityTypeList type_set;
/// the spatial dimension of this mesh
UInt spatial_dimension;
/// types offsets
Vector<UInt> types_offsets;
/// list of all existing types in the mesh
ConnectivityTypeList ghost_type_set;
/// ghost types offsets
Vector<UInt> ghost_types_offsets;
/// number of surfaces present in this mesh
UInt nb_surfaces;
/// surface id of the surface elements in this mesh
ByElementTypeUInt surface_id;
/// min of coordinates
Real lower_bounds[3];
/// max of coordinates
Real upper_bounds[3];
/// size covered by the mesh on each direction
Real size[3];
/// local min of coordinates
Real local_lower_bounds[3];
/// local max of coordinates
Real local_upper_bounds[3];
/// List of elements connected to subelements
- ByElementTypeVector<Vector<Element> > element_to_subelement;
+ ByElementTypeVector< std::vector<Element> > element_to_subelement;
/// List of subelements connected to elements
ByElementTypeVector<Element > subelement_to_element;
/// list of facets connected to each cohesive element
Vector<UInt> facets_to_cohesive_el;
// /// list of elements that are reversed due to pbc
// ByElementTypeUInt reversed_elements_pbc;
// /// direction in which pbc are to be applied
// UInt pbc_directions[3];
/// list of the vectors corresponding to tags in the mesh
ByElementTypeUIntDataMap uint_data;
-
};
/* -------------------------------------------------------------------------- */
/* Inline functions */
/* -------------------------------------------------------------------------- */
/// standard output stream operator
inline std::ostream & operator <<(std::ostream & stream, const Element & _this)
{
_this.printself(stream);
return stream;
}
#if defined (AKANTU_INCLUDE_INLINE_IMPL)
# include "mesh_inline_impl.cc"
#endif
#include "by_element_type_tmpl.hh"
/// standard output stream operator
inline std::ostream & operator <<(std::ostream & stream, const Mesh & _this)
{
_this.printself(stream);
return stream;
}
__END_AKANTU__
#endif /* __AKANTU_MESH_HH__ */
diff --git a/src/fem/mesh_inline_impl.cc b/src/fem/mesh_inline_impl.cc
index c6c412f74..835f5e072 100644
--- a/src/fem/mesh_inline_impl.cc
+++ b/src/fem/mesh_inline_impl.cc
@@ -1,554 +1,513 @@
/**
* @file mesh_inline_impl.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Thu Jul 15 00:41:12 2010
*
* @brief Implementation of the inline functions of the mesh class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
__END_AKANTU__
#if defined(AKANTU_COHESIVE_ELEMENT)
# include "cohesive_element.hh"
#endif
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
inline RemovedNodesEvent::RemovedNodesEvent(const Mesh & mesh) :
new_numbering(mesh.getNbNodes(), 1, "new_numbering") {
}
/* -------------------------------------------------------------------------- */
inline RemovedElementsEvent::RemovedElementsEvent(const Mesh & mesh) :
new_numbering("new_numbering", mesh.getID()) {
}
/* -------------------------------------------------------------------------- */
template <>
inline void Mesh::sendEvent<RemovedElementsEvent>(RemovedElementsEvent & event) {
connectivities.onElementsRemoved(event.getNewNumbering());
EventHandlerManager<MeshEventHandler>::sendEvent(event);
}
/* -------------------------------------------------------------------------- */
template <>
inline void Mesh::sendEvent<RemovedNodesEvent>(RemovedNodesEvent & event) {
if(created_nodes) removeNodesFromVector(*nodes , event.getNewNumbering());
if(nodes_global_ids) removeNodesFromVector(*nodes_global_ids, event.getNewNumbering());
if(nodes_type) removeNodesFromVector(*nodes_type , event.getNewNumbering());
EventHandlerManager<MeshEventHandler>::sendEvent(event);
}
/* -------------------------------------------------------------------------- */
template<typename T>
inline void Mesh::removeNodesFromVector(Vector<T> & vect, const Vector<UInt> & new_numbering) {
Vector<T> tmp(vect.getSize(), vect.getNbComponent());
UInt nb_component = vect.getNbComponent();
UInt new_nb_nodes = 0;
for (UInt i = 0; i < new_numbering.getSize(); ++i) {
UInt new_i = new_numbering(i);
if(new_i != UInt(-1)) {
memcpy(tmp.storage() + new_i * nb_component,
vect.storage() + i * nb_component,
nb_component * sizeof(T));
++new_nb_nodes;
}
}
tmp.resize(new_nb_nodes);
vect.copy(tmp);
}
/* -------------------------------------------------------------------------- */
inline UInt Mesh::elementToLinearized(const Element & elem) const {
AKANTU_DEBUG_ASSERT(elem.type < _max_element_type &&
elem.element < types_offsets.values[elem.type+1],
"The element " << elem
<< "does not exists in the mesh " << id);
return types_offsets.values[elem.type] + elem.element;
}
/* -------------------------------------------------------------------------- */
inline Element Mesh::linearizedToElement (UInt linearized_element) const {
UInt t;
for (t = _not_defined;
t != _max_element_type && linearized_element >= types_offsets(t);
++t);
AKANTU_DEBUG_ASSERT(linearized_element < types_offsets(t),
"The linearized element " << linearized_element
<< "does not exists in the mesh " << id);
--t;
ElementType type = ElementType(t);
return Element(type,
linearized_element - types_offsets.values[t],
_not_ghost,
getKind(type));
}
/* -------------------------------------------------------------------------- */
inline void Mesh::updateTypesOffsets(const GhostType & ghost_type) {
types_offsets.clear();
type_iterator it = firstType(0, ghost_type, _ek_not_defined);
type_iterator last = lastType(0, ghost_type, _ek_not_defined);
for (; it != last; ++it)
types_offsets(*it) = connectivities(*it, ghost_type).getSize();
for (UInt t = _not_defined + 1; t < _max_element_type; ++t)
types_offsets(t) += types_offsets(t - 1);
for (UInt t = _max_element_type; t > _not_defined; --t)
types_offsets(t) = types_offsets(t - 1);
types_offsets(0) = 0;
}
/* -------------------------------------------------------------------------- */
inline const Mesh::ConnectivityTypeList & Mesh::getConnectivityTypeList(const GhostType & ghost_type) const {
if (ghost_type == _not_ghost)
return type_set;
else
return ghost_type_set;
}
/* -------------------------------------------------------------------------- */
inline Vector<UInt> * Mesh::getNodesGlobalIdsPointer() {
AKANTU_DEBUG_IN();
if(nodes_global_ids == NULL) {
std::stringstream sstr; sstr << id << ":nodes_global_ids";
nodes_global_ids = &(alloc<UInt>(sstr.str(), nodes->getSize(), 1));
}
AKANTU_DEBUG_OUT();
return nodes_global_ids;
}
/* -------------------------------------------------------------------------- */
inline Vector<Int> * Mesh::getNodesTypePointer() {
AKANTU_DEBUG_IN();
if(nodes_type == NULL) {
std::stringstream sstr; sstr << id << ":nodes_type";
nodes_type = &(alloc<Int>(sstr.str(), nodes->getSize(), 1, -1));
}
AKANTU_DEBUG_OUT();
return nodes_type;
}
/* -------------------------------------------------------------------------- */
inline Vector<UInt> * Mesh::getConnectivityPointer(const ElementType & type,
const GhostType & ghost_type) {
AKANTU_DEBUG_IN();
Vector<UInt> * tmp;
if(!connectivities.exists(type, ghost_type)) {
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
tmp = &(connectivities.alloc(0, nb_nodes_per_element,
type, ghost_type));
AKANTU_DEBUG_INFO("The connectivity vector for the type "
<< type << " created");
if (ghost_type == _not_ghost) type_set.insert(type);
else ghost_type_set.insert(type);
updateTypesOffsets(ghost_type);
} else {
tmp = &connectivities(type, ghost_type);
}
AKANTU_DEBUG_OUT();
return tmp;
}
/* -------------------------------------------------------------------------- */
-inline Vector<UInt> * Mesh::getSurfaceIDPointer(const ElementType & type, const GhostType & ghost_type) {
+inline Vector<UInt> * Mesh::getSurfaceIDPointer(const ElementType & type,
+ const GhostType & ghost_type) {
AKANTU_DEBUG_IN();
Vector<UInt> * tmp;
if(!surface_id.exists(type, ghost_type)) {
tmp = &(surface_id.alloc(0, 1, type, ghost_type));
AKANTU_DEBUG_INFO("The surface id vector for the type "
<< type << " created");
} else {
tmp = &(surface_id(type, ghost_type));
}
AKANTU_DEBUG_OUT();
return tmp;
}
/* -------------------------------------------------------------------------- */
-inline Vector<Vector<Element> > * Mesh::getElementToSubelementPointer(const ElementType & type, const GhostType & ghost_type) {
+inline Vector< std::vector<Element> > * Mesh::getElementToSubelementPointer(const ElementType & type,
+ const GhostType & ghost_type) {
AKANTU_DEBUG_IN();
- Vector<Vector<Element> > * tmp;
+ Vector< std::vector<Element> > * tmp;
if(!element_to_subelement.exists(type, ghost_type)) {
tmp = &(element_to_subelement.alloc(0, 1, type, ghost_type));
AKANTU_DEBUG_INFO("The element_to_subelement vector for the type "
<< type << " created");
} else {
tmp = &(element_to_subelement(type, ghost_type));
}
AKANTU_DEBUG_OUT();
return tmp;
}
/* -------------------------------------------------------------------------- */
-inline Vector<Element > * Mesh::getSubelementToElementPointer(const ElementType & type, const GhostType & ghost_type) {
+inline Vector<Element > * Mesh::getSubelementToElementPointer(const ElementType & type,
+ const GhostType & ghost_type) {
AKANTU_DEBUG_IN();
Vector<Element > * tmp;
if(!subelement_to_element.exists(type, ghost_type)) {
UInt nb_facets = getNbFacetsPerElement(type);
tmp = &(subelement_to_element.alloc(0, nb_facets, type, ghost_type));
AKANTU_DEBUG_INFO("The subelement_to_element vector for the type "
<< type << " created");
} else {
tmp = &(subelement_to_element(type, ghost_type));
}
AKANTU_DEBUG_OUT();
return tmp;
}
/* -------------------------------------------------------------------------- */
inline Vector<UInt> * Mesh::getUIntDataPointer(const ElementType & el_type,
const std::string & data_name,
const GhostType & ghost_type) {
// AKANTU_DEBUG_IN();
Vector<UInt> * data;
// if(!uint_data.exists(el_type, ghost_type)){
// uint_data(UIntDataMap(), el_type, ghost_type);
// }
UIntDataMap & map = uint_data(el_type, ghost_type);
UIntDataMap::iterator it = map.find(data_name);
if(it == map.end()) {
data = new Vector<UInt>(0, 1, data_name);
map[data_name] = data;
} else {
data = it->second;
}
// AKANTU_DEBUG_OUT();
return data;
}
/* -------------------------------------------------------------------------- */
inline const Vector<UInt> & Mesh::getUIntData(const ElementType & el_type,
const std::string & data_name,
const GhostType & ghost_type) const {
AKANTU_DEBUG_IN();
const UIntDataMap & map = uint_data(el_type, ghost_type);
UIntDataMap::const_iterator it = map.find(data_name);
AKANTU_DEBUG_ASSERT(it != map.end(),
"No data named " << data_name << " in the mesh " << id);
AKANTU_DEBUG_OUT();
return *(it->second);
}
/* -------------------------------------------------------------------------- */
inline UIntDataMap & Mesh::getUIntDataMap(const ElementType & el_type,
const GhostType & ghost_type) {
// AKANTU_DEBUG_ASSERT(uint_data.exists(el_type, ghost_type),
// "No UIntDataMap for the type (" << ghost_type << ":" << el_type << ")");
return uint_data(el_type, ghost_type);
}
/* -------------------------------------------------------------------------- */
inline UInt Mesh::getNbElement(const ElementType & type,
const GhostType & ghost_type) const {
AKANTU_DEBUG_IN();
try {
const Vector<UInt> & conn = connectivities(type, ghost_type);
AKANTU_DEBUG_OUT();
return conn.getSize();
} catch (...) {
AKANTU_DEBUG_OUT();
return 0;
}
}
/* -------------------------------------------------------------------------- */
inline void Mesh::getBarycenter(UInt element, const ElementType & type,
Real * barycenter,
GhostType ghost_type) const {
AKANTU_DEBUG_IN();
UInt * conn_val = getConnectivity(type, ghost_type).values;
UInt nb_nodes_per_element = getNbNodesPerElement(type);
Real local_coord[spatial_dimension * nb_nodes_per_element];
UInt offset = element * nb_nodes_per_element;
for (UInt n = 0; n < nb_nodes_per_element; ++n) {
memcpy(local_coord + n * spatial_dimension,
nodes->storage() + conn_val[offset + n] * spatial_dimension,
spatial_dimension*sizeof(Real));
}
Math::barycenter(local_coord, nb_nodes_per_element, spatial_dimension, barycenter);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
inline UInt Mesh::getNbNodesPerElement(const ElementType & type) {
- AKANTU_DEBUG_IN();
-
UInt nb_nodes_per_element = 0;
#define GET_NB_NODES_PER_ELEMENT(type) \
nb_nodes_per_element = ElementClass<type>::getNbNodesPerElement()
-
-#define GET_NB_NODES_PER_ELEMENT_COHESIVE(type) \
- nb_nodes_per_element = CohesiveElement<type>::getNbNodesPerElement()
-
- AKANTU_BOOST_ELEMENT_SWITCH(GET_NB_NODES_PER_ELEMENT,
- AKANTU_REGULAR_ELEMENT_TYPE,
- GET_NB_NODES_PER_ELEMENT_COHESIVE,
- AKANTU_COHESIVE_ELEMENT_TYPE);
-
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_NB_NODES_PER_ELEMENT);
#undef GET_NB_NODES_PER_ELEMENT
-#undef GET_NB_NODES_PER_ELEMENT_COHESIVE
-
- AKANTU_DEBUG_OUT();
return nb_nodes_per_element;
}
/* -------------------------------------------------------------------------- */
inline ElementType Mesh::getP1ElementType(const ElementType & type) {
- AKANTU_DEBUG_IN();
-
- ElementType element_p1 = _not_defined;
-#define GET_ELEMENT_P1(type) \
- element_p1 = ElementClass<type>::getP1ElementType()
+ ElementType p1_type = _not_defined;
+#define GET_P1_TYPE(type) \
+ p1_type = ElementClass<type>::getP1ElementType()
- AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_ELEMENT_P1);
-#undef GET_NB_NODES_PER_ELEMENT_P1
-
- AKANTU_DEBUG_OUT();
- return element_p1;
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_P1_TYPE);
+#undef GET_P1_TYPE
+ return p1_type;
}
/* -------------------------------------------------------------------------- */
inline ElementKind Mesh::getKind(const ElementType & type) {
- AKANTU_DEBUG_IN();
-
ElementKind kind = _ek_not_defined;
#define GET_KIND(type) \
kind = ElementClass<type>::getKind()
-
- AKANTU_BOOST_ELEMENT_SWITCH(GET_KIND,
- AKANTU_REGULAR_ELEMENT_TYPE,
- GET_KIND,
- AKANTU_COHESIVE_ELEMENT_TYPE);
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_KIND);
#undef GET_KIND
-
- AKANTU_DEBUG_OUT();
return kind;
}
/* -------------------------------------------------------------------------- */
inline UInt Mesh::getSpatialDimension(const ElementType & type) {
- AKANTU_DEBUG_IN();
-
UInt spatial_dimension = 0;
#define GET_SPATIAL_DIMENSION(type) \
spatial_dimension = ElementClass<type>::getSpatialDimension()
-
-#define GET_SPATIAL_DIMENSION_COHESIVE(type) \
- spatial_dimension = CohesiveElement<type>::getSpatialDimension()
-
-
- AKANTU_BOOST_ELEMENT_SWITCH(GET_SPATIAL_DIMENSION,
- AKANTU_REGULAR_ELEMENT_TYPE,
- GET_SPATIAL_DIMENSION_COHESIVE,
- AKANTU_COHESIVE_ELEMENT_TYPE);
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_SPATIAL_DIMENSION);
#undef GET_SPATIAL_DIMENSION
-#undef GET_SPATIAL_DIMENSION_COHESIVE
- AKANTU_DEBUG_OUT();
return spatial_dimension;
}
/* -------------------------------------------------------------------------- */
-inline ElementType Mesh::getFacetElementType(const ElementType & type) {
- AKANTU_DEBUG_IN();
-
+inline ElementType Mesh::getFacetType(const ElementType & type) {
ElementType surface_type = _not_defined;
#define GET_FACET_TYPE(type) \
- surface_type = ElementClass<type>::getFacetElementType()
-
-#define GET_FACET_TYPE_COHESIVE(type) \
- surface_type = CohesiveElement<type>::getFacetElementType()
-
-
- AKANTU_BOOST_ELEMENT_SWITCH(GET_FACET_TYPE,
- AKANTU_REGULAR_ELEMENT_TYPE,
- GET_FACET_TYPE_COHESIVE,
- AKANTU_COHESIVE_ELEMENT_TYPE);
+ surface_type = ElementClass<type>::getFacetType()
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_FACET_TYPE);
#undef GET_FACET_TYPE
-#undef GET_FACET_TYPE_COHESIVE
- AKANTU_DEBUG_OUT();
return surface_type;
}
/* -------------------------------------------------------------------------- */
inline UInt Mesh::getNbFacetsPerElement(const ElementType & type) {
AKANTU_DEBUG_IN();
UInt n_facet = 0;
#define GET_NB_FACET(type) \
n_facet = ElementClass<type>::getNbFacetsPerElement()
-#define GET_NB_FACET_COHESIVE(type) \
- n_facet = CohesiveElement<type>::getNbFacetsPerElement()
-
-
- AKANTU_BOOST_ELEMENT_SWITCH(GET_NB_FACET,
- AKANTU_REGULAR_ELEMENT_TYPE,
- GET_NB_FACET_COHESIVE,
- AKANTU_COHESIVE_ELEMENT_TYPE);
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_NB_FACET);
#undef GET_NB_FACET
-#undef GET_NB_FACET_COHESIVE
AKANTU_DEBUG_OUT();
return n_facet;
}
-
/* -------------------------------------------------------------------------- */
-inline UInt ** Mesh::getFacetLocalConnectivity(const ElementType & type) {
+inline types::Matrix<UInt> Mesh::getFacetLocalConnectivity(const ElementType & type) {
AKANTU_DEBUG_IN();
- UInt ** facet_conn = NULL;
+
#define GET_FACET_CON(type) \
- facet_conn = ElementClass<type>::getFacetLocalConnectivityPerElement()
+ return ElementClass<type>::getFacetLocalConnectivityPerElement()
+
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_FACET_CON);
+#undef GET_FACET_CON
-#define GET_FACET_CON_COHESIVE(type) \
- facet_conn = CohesiveElement<type>::getFacetLocalConnectivityPerElement()
+ AKANTU_DEBUG_OUT();
+ return types::Matrix<UInt>();
+}
- AKANTU_BOOST_ELEMENT_SWITCH(GET_FACET_CON,
- AKANTU_REGULAR_ELEMENT_TYPE,
- GET_FACET_CON_COHESIVE,
- AKANTU_COHESIVE_ELEMENT_TYPE);
+/* -------------------------------------------------------------------------- */
+inline types::Matrix<UInt> Mesh::getFacetConnectivity(UInt element,
+ const ElementType & type,
+ const GhostType & ghost_type) const {
+ AKANTU_DEBUG_IN();
-#undef GET_FACET_CON
-#undef GET_FACET_CON_COHESIVE
+ types::Matrix<UInt> local_facets = getFacetLocalConnectivity(type);
+ types::Matrix<UInt> facets(local_facets.rows(), local_facets.cols());
+
+ const Vector<UInt> & conn = connectivities(type, ghost_type);
+
+ for (UInt f = 0; f < facets.rows(); ++f) {
+ for (UInt n = 0; n < facets.cols(); ++n) {
+ facets(f, n) = conn(element, local_facets(f, n));
+ }
+ }
AKANTU_DEBUG_OUT();
- return facet_conn;
+ return facets;
}
+
/* -------------------------------------------------------------------------- */
template<typename T>
inline void Mesh::extractNodalValuesFromElement(const Vector<T> & nodal_values,
T * local_coord,
UInt * connectivity,
UInt n_nodes,
UInt nb_degree_of_freedom) const {
for (UInt n = 0; n < n_nodes; ++n) {
memcpy(local_coord + n * nb_degree_of_freedom,
nodal_values.storage() + connectivity[n] * nb_degree_of_freedom,
nb_degree_of_freedom * sizeof(T));
}
}
/* -------------------------------------------------------------------------- */
#define DECLARE_GET_BOUND(Var, var) \
inline void Mesh::get##Var##Bounds(Real * var) const { \
for (UInt i = 0; i < spatial_dimension; ++i) { \
var[i] = var##_bounds[i]; \
} \
} \
DECLARE_GET_BOUND(Lower, lower)
DECLARE_GET_BOUND(Upper, upper)
DECLARE_GET_BOUND(LocalLower, local_lower)
DECLARE_GET_BOUND(LocalUpper, local_upper)
#undef DECLARE_GET_BOUND
/* -------------------------------------------------------------------------- */
inline void Mesh::addConnectivityType(const ElementType & type){
getConnectivityPointer(type);
}
/* -------------------------------------------------------------------------- */
inline bool Mesh::isPureGhostNode(UInt n) const {
return nodes_type ? (*nodes_type)(n) == -3 : false;
}
/* -------------------------------------------------------------------------- */
inline bool Mesh::isLocalOrMasterNode(UInt n) const {
return nodes_type ? (*nodes_type)(n) == -2 || (*nodes_type)(n) == -1 : true;
}
/* -------------------------------------------------------------------------- */
inline bool Mesh::isLocalNode(UInt n) const {
return nodes_type ? (*nodes_type)(n) == -1 : true;
}
/* -------------------------------------------------------------------------- */
inline bool Mesh::isMasterNode(UInt n) const {
return nodes_type ? (*nodes_type)(n) == -2 : false;
}
/* -------------------------------------------------------------------------- */
inline bool Mesh::isSlaveNode(UInt n) const {
return nodes_type ? (*nodes_type)(n) >= 0 : false;
}
/* -------------------------------------------------------------------------- */
inline UInt Mesh::getNodeGlobalId(UInt local_id) const {
return nodes_global_ids ? (*nodes_global_ids)(local_id) : local_id;
}
/* -------------------------------------------------------------------------- */
inline UInt Mesh::getNbGlobalNodes() const {
return nodes_global_ids ? nb_global_nodes : nodes->getSize();
}
/* -------------------------------------------------------------------------- */
inline Int Mesh::getNodeType(UInt local_id) const {
return nodes_type ? (*nodes_type)(local_id) : -1;
}
diff --git a/src/fem/shape_cohesive.hh b/src/fem/shape_cohesive.hh
index 39a0e5a62..01dd7032a 100644
--- a/src/fem/shape_cohesive.hh
+++ b/src/fem/shape_cohesive.hh
@@ -1,168 +1,199 @@
/**
* @file shape_cohesive.hh
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Feb 03 16:28:03 2012
*
* @brief shape functions for cohesive elements description
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "aka_vector.hh"
#include "shape_functions.hh"
-#include "shape_lagrange.hh"
-
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_SHAPE_COHESIVE_HH__
#define __AKANTU_SHAPE_COHESIVE_HH__
__BEGIN_AKANTU__
struct CohesiveReduceFunctionMean {
inline Real operator()(Real u_plus, Real u_minus) {
return .5*(u_plus + u_minus);
}
};
struct CohesiveReduceFunctionOpening {
inline Real operator()(Real u_plus, Real u_minus) {
return (u_plus - u_minus);
}
};
-
-
-template <class ShapeFunction>
-class ShapeCohesive : public ShapeFunctions {
+template<>
+class ShapeLagrange<_ek_cohesive> : public ShapeFunctions {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
-
- ShapeCohesive(const Mesh & mesh,
+ ShapeLagrange(const Mesh & mesh,
const ID & id = "shape_cohesive",
const MemoryID & memory_id = 0);
- virtual ~ShapeCohesive() { if(sub_type_shape_function) delete sub_type_shape_function; };
+ virtual ~ShapeLagrange() { }
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
+ inline void initShapeFunctions(const Vector<Real> & nodes,
+ const types::Matrix<Real> & control_points,
+ const ElementType & type,
+ const GhostType & ghost_type);
+
+ /// extract the nodal values and store them per element
+ template <ElementType type, class ReduceFunction>
+ void extractNodalToElementField(const Vector<Real> & nodal_f,
+ Vector<Real> & elemental_f,
+ const GhostType & ghost_type = _not_ghost,
+ const Vector<UInt> * filter_elements = NULL) const;
/// pre compute all shapes on the element control points from natural coordinates
template <ElementType type>
- void precomputeShapesOnControlPoints(GhostType ghost_type);
+ void precomputeShapesOnControlPoints(const Vector<Real> & nodes,
+ GhostType ghost_type);
/// pre compute all shapes on the element control points from natural coordinates
template <ElementType type>
- void precomputeShapeDerivativesOnControlPoints(GhostType ghost_type);
+ void precomputeShapeDerivativesOnControlPoints(const Vector<Real> & nodes,
+ GhostType ghost_type);
/// interpolate nodal values on the control points
template <ElementType type, class ReduceFunction>
void interpolateOnControlPoints(const Vector<Real> &u,
Vector<Real> &uq,
UInt nb_degree_of_freedom,
const GhostType ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const;
template <ElementType type>
void interpolateOnControlPoints(const Vector<Real> &u,
Vector<Real> &uq,
UInt nb_degree_of_freedom,
const GhostType ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const {
interpolateOnControlPoints<type, CohesiveReduceFunctionMean>(u, uq, nb_degree_of_freedom, ghost_type, filter_elements);
}
+ /// compute the gradient of u on the control points in the natural coordinates
+ template <ElementType type>
+ void gradientOnControlPoints(const Vector<Real> &u,
+ Vector<Real> &nablauq,
+ UInt nb_degree_of_freedom,
+ GhostType ghost_type = _not_ghost,
+ const Vector<UInt> * filter_elements = NULL) const {
+ variationOnControlPoints<type, CohesiveReduceFunctionMean>(u, nablauq, nb_degree_of_freedom, ghost_type, filter_elements);
+ }
/// compute the gradient of u on the control points
template <ElementType type, class ReduceFunction>
void variationOnControlPoints(const Vector<Real> &u,
Vector<Real> &nablauq,
UInt nb_degree_of_freedom,
GhostType ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const;
template <ElementType type, class ReduceFunction>
void computeNormalsOnControlPoints(const Vector<Real> &u,
Vector<Real> &normals_u,
GhostType ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const;
/// multiply a field by shape functions
template <ElementType type>
- void fieldTimesShapes(__attribute__((unused)) const Vector<Real> & field,
- __attribute__((unused)) Vector<Real> & fiedl_times_shapes,
- __attribute__((unused)) GhostType ghost_type) const {
+ void fieldTimesShapes(const Vector<Real> & field,
+ Vector<Real> & fiedl_times_shapes,
+ GhostType ghost_type) const {
AKANTU_DEBUG_TO_IMPLEMENT();
}
- /// function to print the contain of the class
- // virtual void printself(std::ostream & stream, int indent = 0) const {};
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
+ /// get a the shapes vector
+ inline const Vector<Real> & getShapes(const ElementType & el_type,
+ const GhostType & ghost_type = _not_ghost) const;
- const Vector<Real> & getShapes(const ElementType & type,
- GhostType ghost_type = _not_ghost) const;
-
- const Vector<Real> & getShapesDerivatives(const ElementType & type,
- GhostType ghost_type = _not_ghost) const;
+ /// get a the shapes derivatives vector
+ inline const Vector<Real> & getShapesDerivatives(const ElementType & el_type,
+ const GhostType & ghost_type = _not_ghost) const;
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
-private:
+protected:
+ /// shape functions for all elements
+ ByElementTypeVector<Real, InterpolationType> shapes;
+
+ /// shape functions derivatives for all elements
+ ByElementTypeVector<Real, InterpolationType> shapes_derivatives;
- /// real shape function implementation
- //\todo QUESTION!!!!!!! why having a member of the class you derive ? what do you gain ? containing the storage of the shapes
- ShapeFunction * sub_type_shape_function;
};
+// __END_AKANTU__
+// #include "shape_lagrange.hh"
+// __BEGIN_AKANTU__
+
+// template<>
+// class ShapeLagrange<_ek_cohesive> : public ShapeCohesive< ShapeLagrange<_ek_regular> > {
+// public:
+// ShapeLagrange(const Mesh & mesh,
+// const ID & id = "shape_cohesive",
+// const MemoryID & memory_id = 0) :
+// ShapeCohesive< ShapeLagrange<_ek_regular> >(mesh, id, memory_id) { }
+
+// virtual ~ShapeLagrange() { };
+// };
-typedef ShapeCohesive<ShapeLagrange> ShapeCohesiveLagrange;
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
#include "shape_cohesive_inline_impl.cc"
/// standard output stream operator
template <class ShapeFunction>
inline std::ostream & operator <<(std::ostream & stream, const ShapeCohesive<ShapeFunction> & _this)
{
_this.printself(stream);
return stream;
}
__END_AKANTU__
#endif /* __AKANTU_SHAPE_COHESIVE_HH__ */
diff --git a/src/fem/shape_cohesive_inline_impl.cc b/src/fem/shape_cohesive_inline_impl.cc
index 28af21020..011d9c7fb 100644
--- a/src/fem/shape_cohesive_inline_impl.cc
+++ b/src/fem/shape_cohesive_inline_impl.cc
@@ -1,336 +1,294 @@
/**
* @file shape_cohesive_inline_impl.cc
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Thu Feb 23 17:58:45 2012
*
* @brief ShapeCohesive inline implementation
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
-template <class ShapeFunction>
-ShapeCohesive<ShapeFunction>::ShapeCohesive(const Mesh & mesh,
- const ID & id,
- const MemoryID & memory_id) :
- ShapeFunctions(mesh, id, memory_id) {
+inline ShapeLagrange<_ek_cohesive>::ShapeLagrange(const Mesh & mesh,
+ const ID & id,
+ const MemoryID & memory_id) :
+ ShapeFunctions(mesh, id, memory_id),
+ shapes("shapes_cohesive", id),
+ shapes_derivatives("shapes_derivatives_cohesive", id) {
AKANTU_DEBUG_IN();
- std::stringstream sstr;
- sstr << id << "sub_shapes_functions";
- sub_type_shape_function = new ShapeFunction(mesh, sstr.str(), memory_id);
-
AKANTU_DEBUG_OUT();
}
+#define INIT_SHAPE_FUNCTIONS(type) \
+ setControlPointsByType<type>(control_points, ghost_type); \
+ precomputeShapesOnControlPoints<type>(nodes, ghost_type); \
+ precomputeShapeDerivativesOnControlPoints<type>(nodes, ghost_type);
+
/* -------------------------------------------------------------------------- */
-template <class ShapeFunction>
-const Vector<Real> & ShapeCohesive<ShapeFunction>::getShapes(const ElementType & type,
- GhostType ghost_type) const {
- return sub_type_shape_function->getShapes(type, ghost_type);
+inline void ShapeLagrange<_ek_cohesive>::initShapeFunctions(const Vector<Real> & nodes,
+ const types::Matrix<Real> & control_points,
+ const ElementType & type,
+ const GhostType & ghost_type) {
+ AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(INIT_SHAPE_FUNCTIONS);
}
/* -------------------------------------------------------------------------- */
-template <class ShapeFunction>
-const Vector<Real> & ShapeCohesive<ShapeFunction>::getShapesDerivatives(const ElementType & type,
- GhostType ghost_type) const {
- return sub_type_shape_function->getShapesDerivatives(type, ghost_type);
+inline const Vector<Real> & ShapeLagrange<_ek_cohesive>::getShapes(const ElementType & el_type,
+ const GhostType & ghost_type) const {
+ return shapes(FEM::getInterpolationType(el_type), ghost_type);
+}
+
+/* -------------------------------------------------------------------------- */
+inline const Vector<Real> & ShapeLagrange<_ek_cohesive>::getShapesDerivatives(const ElementType & el_type,
+ const GhostType & ghost_type) const {
+ return shapes_derivatives(FEM::getInterpolationType(el_type), ghost_type);
}
/* -------------------------------------------------------------------------- */
-template <class ShapeFunction>
template <ElementType type>
-void ShapeCohesive<ShapeFunction>::precomputeShapesOnControlPoints(GhostType ghost_type) {
+void ShapeLagrange<_ek_cohesive>::precomputeShapesOnControlPoints(__attribute__((unused)) const Vector<Real> & nodes,
+ GhostType ghost_type) {
AKANTU_DEBUG_IN();
- const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
-
- Real * natural_coords = this->control_points(type, ghost_type).storage();
- UInt nb_points = this->control_points(type, ghost_type).getSize();
+ InterpolationType itp_type = ElementClassProperty<type>::interpolation_type;
- UInt size_of_shapes = CohesiveElement<type>::getShapeSize();
+ types::Matrix<Real> & natural_coords = control_points(type, ghost_type);
+ UInt nb_points = natural_coords.cols();
- UInt nb_element = this->mesh->getConnectivity(type, ghost_type).getSize();
+ UInt size_of_shapes = ElementClass<type>::getShapeSize();
- Vector<Real> & shapes_tmp = sub_type_shape_function->shapes.alloc(nb_element*nb_points,
- size_of_shapes,
- type,
- ghost_type);
+ UInt nb_element = mesh->getConnectivity(type, ghost_type).getSize();;
- Real * shapes_val = shapes_tmp.storage();
+ Vector<Real> & shapes_tmp = shapes.alloc(nb_element*nb_points,
+ size_of_shapes,
+ itp_type,
+ ghost_type);
- for (UInt elem = 0; elem < nb_element; ++elem) {
- ElementClass<sub_type>::computeShapes(natural_coords,
- nb_points,shapes_val);
+ Vector<Real>::iterator< types::Matrix<Real> > shapes_it =
+ shapes_tmp.begin_reinterpret(ElementClass<type>::getNbNodesPerInterpolationElement(), nb_points,
+ nb_element);
- shapes_val += size_of_shapes*nb_points;
+ for (UInt elem = 0; elem < nb_element; ++elem, ++shapes_it) {
+ types::Matrix<Real> & N = *shapes_it;
+ ElementClass<type>::computeShapes(natural_coords,
+ N);
}
AKANTU_DEBUG_OUT();
}
+
/* -------------------------------------------------------------------------- */
-template <class ShapeFunction>
template <ElementType type>
-void ShapeCohesive<ShapeFunction>::precomputeShapeDerivativesOnControlPoints(GhostType ghost_type) {
+void ShapeLagrange<_ek_cohesive>::precomputeShapeDerivativesOnControlPoints(__attribute__((unused)) const Vector<Real> & nodes,
+ GhostType ghost_type) {
AKANTU_DEBUG_IN();
- // const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
+ UInt size_of_shapesd = ElementClass<type>::getShapeDerivativesSize();
+ UInt spatial_dimension = ElementClass<type>::getNaturalSpaceDimension();
+ UInt nb_nodes_per_element = ElementClass<type>::getNbNodesPerInterpolationElement();
- // Real * coord = this->mesh->getNodes().storage();
- // UInt spatial_dimension = CohesiveElement<type>::getSpatialDimension();
-
- // UInt nb_nodes_per_element = CohesiveElement<type>::getNbNodesPerElement();
- // UInt nb_nodes_per_sub_element = ElementClass<sub_type>::getNbNodesPerElement();
- UInt size_of_shapesd = CohesiveElement<type>::getShapeDerivativesSize();
- UInt nb_points = this->control_points(type, ghost_type).getSize();
- Real * natural_coords = this->control_points(type, ghost_type).storage();
+ types::Matrix<Real> natural_coords = this->control_points(type, ghost_type);
+ UInt nb_points = natural_coords.cols();
// UInt * elem_val = this->mesh->getConnectivity(type, ghost_type).storage();;
UInt nb_element = this->mesh->getConnectivity(type, ghost_type).getSize();
+ InterpolationType itp_type = ElementClassProperty<type>::interpolation_type;
+
Vector<Real> & shapes_derivatives_tmp =
- sub_type_shape_function->shapes_derivatives.alloc(nb_element*nb_points,
- size_of_shapesd,
- type,
- ghost_type);
+ this->shapes_derivatives.alloc(nb_element*nb_points,
+ size_of_shapesd,
+ itp_type,
+ ghost_type);
Real * shapesd_val = shapes_derivatives_tmp.storage();
-
for (UInt elem = 0; elem < nb_element; ++elem) {
- CohesiveElement<type>::computeDNDS(natural_coords, nb_points, shapesd_val);
- // natural_coords += nb_points * spatial_dimension;
- shapesd_val += size_of_shapesd * nb_points;
+ types::Tensor3<Real> B(shapesd_val,
+ spatial_dimension, nb_nodes_per_element, nb_points);
+ ElementClass<type>::computeDNDS(natural_coords, B);
+
+ shapesd_val += size_of_shapesd*nb_points;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-template <class ShapeFunction>
template <ElementType type, class ReduceFunction>
-void ShapeCohesive<ShapeFunction>::interpolateOnControlPoints(const Vector<Real> &in_u,
- Vector<Real> &out_uq,
- UInt nb_degree_of_freedom,
- GhostType ghost_type,
- const Vector<UInt> * filter_elements) const {
+void ShapeLagrange<_ek_cohesive>::extractNodalToElementField(const Vector<Real> & nodal_f,
+ Vector<Real> & elemental_f,
+ const GhostType & ghost_type,
+ const Vector<UInt> * filter_elements) const {
AKANTU_DEBUG_IN();
- const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
-
- AKANTU_DEBUG_ASSERT(sub_type_shape_function->shapes.exists(type, ghost_type),
- "No shapes for the type "
- << sub_type_shape_function->shapes.printType(type, ghost_type));
-
+ UInt nb_nodes_per_itp_element = ElementClass<type>::getNbNodesPerInterpolationElement();
+ UInt nb_nodes_per_element = ElementClass<type>::getNbNodesPerElement();
+ UInt nb_degree_of_freedom = nodal_f.getNbComponent();
UInt nb_element = this->mesh->getNbElement(type, ghost_type);
UInt * conn_val = this->mesh->getConnectivity(type, ghost_type).storage();
- const Vector<Real> & shapes = sub_type_shape_function->shapes(type, ghost_type);
-
- UInt nb_nodes_per_element = CohesiveElement<type>::getNbNodesPerElement();
- UInt nb_nodes_per_sub_element = ElementClass<sub_type>::getNbNodesPerElement();
-
- UInt nb_points = this->control_points(type, ghost_type).getSize();
- // UInt size_of_shapes = CohesiveElement<type>::getShapeSize();
-
UInt * filter_elem_val = NULL;
if(filter_elements != NULL) {
- nb_element = filter_elements->getSize();
+ nb_element = filter_elements->getSize();
filter_elem_val = filter_elements->storage();
}
- // Real * shape_val = shapes.storage();
- Real * u_val = in_u.storage();
- Vector<Real>::iterator<types::RMatrix> uq_it =
- out_uq.begin_reinterpret(nb_points, nb_degree_of_freedom,
- nb_element);
-
- Vector<Real>::const_iterator<types::RMatrix> shape_beginning =
- shapes.begin_reinterpret(nb_points, nb_nodes_per_sub_element,
- nb_element);
+ elemental_f.resize(nb_element);
- types::RMatrix u(nb_nodes_per_sub_element, nb_degree_of_freedom);
+ Vector<Real>::iterator<types::RMatrix> u_it = elemental_f.begin(nb_degree_of_freedom,
+ nb_nodes_per_itp_element);
+ UInt * el_conn;
ReduceFunction reduce_function;
- Vector<Real>::const_iterator<types::RMatrix> shape = shape_beginning;
-
- for (UInt el = 0; el < nb_element; ++el) {
- UInt el_offset = el * nb_nodes_per_sub_element;
- if(filter_elements != NULL) {
- shape = shape_beginning;
- shape += filter_elem_val[el];
- el_offset = filter_elem_val[el] * nb_nodes_per_element;
- }
- for (UInt n = 0; n < nb_nodes_per_sub_element; ++n) {
+ for (UInt el = 0; el < nb_element; ++el, ++u_it) {
+ types::Matrix<Real> & u = *u_it;
+ if(filter_elements != NULL) el_conn = conn_val + filter_elem_val[el] * nb_nodes_per_element;
+ else el_conn = conn_val + el * nb_nodes_per_element;
+
+ // compute the average/difference of the nodal field loaded from cohesive element
+ for (UInt n = 0; n < nb_nodes_per_itp_element; ++n) {
+ UInt node_plus = *(el_conn + n);
+ UInt node_minus = *(el_conn + n + nb_nodes_per_itp_element);
for (UInt d = 0; d < nb_degree_of_freedom; ++d) {
- Real u_plus = u_val[conn_val[el_offset + n] * nb_degree_of_freedom + d];
- Real u_minus = u_val[conn_val[el_offset + n + nb_nodes_per_sub_element] * nb_degree_of_freedom + d];
- u(n, d) = reduce_function(u_plus, u_minus);
+ Real u_plus = nodal_f(node_plus, d);
+ Real u_minus = nodal_f(node_minus, d);
+ u(d, n) = reduce_function(u_plus, u_minus);
}
}
-
- /// @f$ u_q = \textbf{N} * u @f$
- uq_it->mul<false, false>(*shape, u);
- // Math::matrix_matrix(nb_points, nb_degree_of_freedom, nb_nodes_per_element,
- // shape, u, uq_val);
-
- ++uq_it;
- if(filter_elements == NULL) {
- ++shape;
- }
}
AKANTU_DEBUG_OUT();
}
+
/* -------------------------------------------------------------------------- */
-template <class ShapeFunction>
template <ElementType type, class ReduceFunction>
-void ShapeCohesive<ShapeFunction>::variationOnControlPoints(const Vector<Real> &in_u,
- Vector<Real> &nablauq,
- UInt nb_degree_of_freedom,
- GhostType ghost_type,
- const Vector<UInt> * filter_elements) const {
- const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
-
- AKANTU_DEBUG_ASSERT(sub_type_shape_function->shapes_derivatives.exists(type, ghost_type),
- "No shapes for the type "
- << sub_type_shape_function->shapes.printType(type, ghost_type));
-
- UInt nb_element = this->mesh->getNbElement(type, ghost_type);
- // UInt spatial_dimension = this->mesh->getSpatialDimension();
-
- const Vector<UInt> & connectivity = this->mesh->getConnectivity(type, ghost_type);
+void ShapeLagrange<_ek_cohesive>::interpolateOnControlPoints(const Vector<Real> &in_u,
+ Vector<Real> &out_uq,
+ UInt nb_degree_of_freedom,
+ GhostType ghost_type,
+ const Vector<UInt> * filter_elements) const {
+ AKANTU_DEBUG_IN();
- const Vector<Real> & shapes_derivatives =
- sub_type_shape_function->shapes_derivatives(type, ghost_type);
+ InterpolationType itp_type = ElementClassProperty<type>::interpolation_type;
- UInt element_dimension = ElementClass<sub_type>::getSpatialDimension();
- // UInt nb_nodes_per_element = CohesiveElement<type>::getNbNodesPerElement();
- UInt nb_nodes_per_sub_element = ElementClass<sub_type>::getNbNodesPerElement();
+ AKANTU_DEBUG_ASSERT(this->shapes.exists(itp_type, ghost_type),
+ "No shapes for the type "
+ << this->shapes.printType(itp_type, ghost_type));
- UInt nb_points = this->control_points(type, ghost_type).getSize();
+ UInt nb_nodes_per_element = ElementClass<type>::getNbNodesPerInterpolationElement();
+ Vector<Real> u_el(0, nb_degree_of_freedom * nb_nodes_per_element);
+ this->extractNodalToElementField<type, ReduceFunction>(in_u, u_el, ghost_type, filter_elements);
- Vector<UInt>::iterator<UInt> filter_elem;
- if(filter_elements != NULL) {
- nb_element = filter_elements->getSize();
- filter_elem = const_cast<Vector<UInt> *>(filter_elements)->begin();
- }
+ this->template interpolateElementalFieldOnControlPoints<type>(u_el, out_uq, ghost_type,
+ shapes(itp_type, ghost_type),
+ filter_elements);
- Vector<Real>::iterator<types::RMatrix> nablauq_it =
- nablauq.begin(element_dimension, nb_degree_of_freedom);
+ AKANTU_DEBUG_OUT();
+}
- Vector<Real>::const_iterator<types::RMatrix> shape_derivative_beginning =
- shapes_derivatives.begin(element_dimension, nb_nodes_per_sub_element);
+/* -------------------------------------------------------------------------- */
+template <ElementType type, class ReduceFunction>
+void ShapeLagrange<_ek_cohesive>::variationOnControlPoints(const Vector<Real> &in_u,
+ Vector<Real> &nablauq,
+ UInt nb_degree_of_freedom,
+ GhostType ghost_type,
+ const Vector<UInt> * filter_elements) const {
+ AKANTU_DEBUG_IN();
- types::RMatrix u(nb_nodes_per_sub_element, nb_degree_of_freedom);
+ InterpolationType itp_type = ElementClassProperty<type>::interpolation_type;
- ReduceFunction reduce_function;
+ AKANTU_DEBUG_ASSERT(this->shapes_derivatives.exists(itp_type, ghost_type),
+ "No shapes for the type "
+ << this->shapes_derivatives.printType(itp_type, ghost_type));
- Vector<Real>::const_iterator<types::RMatrix> shape_derivative = shape_derivative_beginning;
- for (UInt el = 0; el < nb_element; ++el) {
- // UInt el_offset = el * nb_nodes_per_element;
- UInt element = el;
- if(filter_elements != NULL) {
- element = *filter_elem;
- shape_derivative = shape_derivative_beginning;
- shape_derivative += *filter_elem;
- ++filter_elem;
- }
+ UInt nb_nodes_per_element = ElementClass<type>::getNbNodesPerInterpolationElement();
+ Vector<Real> u_el(0, nb_degree_of_freedom * nb_nodes_per_element);
+ this->extractNodalToElementField<type, ReduceFunction>(in_u, u_el, ghost_type, filter_elements);
- // compute the average/difference of the nodal field loaded from cohesive element
- for (UInt n = 0; n < nb_nodes_per_sub_element; ++n) {
- for (UInt d = 0; d < nb_degree_of_freedom; ++d) {
- Real u_plus = in_u(connectivity(element, n), d);
- Real u_minus = in_u(connectivity(element, n + nb_nodes_per_sub_element), d);
- u(n, d) = reduce_function(u_plus, u_minus);
- }
- }
+ this->template gradientElementalFieldOnControlPoints<type>(u_el, nablauq, ghost_type,
+ shapes_derivatives(itp_type, ghost_type),
+ filter_elements);
- for (UInt q = 0; q < nb_points; ++q) {
- nablauq_it->mul<false, false>(*shape_derivative, u);
- ++shape_derivative;
- ++nablauq_it;
- }
- }
+ AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-template <class ShapeFunction>
+
template <ElementType type, class ReduceFunction>
-void ShapeCohesive<ShapeFunction>::computeNormalsOnControlPoints(const Vector<Real> &u,
- Vector<Real> &normals_u,
- GhostType ghost_type,
- const Vector<UInt> * filter_elements) const {
+void ShapeLagrange<_ek_cohesive>::computeNormalsOnControlPoints(const Vector<Real> &u,
+ Vector<Real> &normals_u,
+ GhostType ghost_type,
+ const Vector<UInt> * filter_elements) const {
AKANTU_DEBUG_IN();
- // const ElementType sub_type = ElementType(CohesiveElementSubElementType<type>::value);
-
UInt nb_element = this->mesh->getNbElement(type, ghost_type);
- UInt nb_points = this->control_points(type, ghost_type).getSize();
+ UInt nb_points = this->control_points(type, ghost_type).cols();
UInt spatial_dimension = this->mesh->getSpatialDimension();
if(filter_elements != NULL) {
nb_element = filter_elements->getSize();
}
Vector<Real> tangents_u(nb_element * nb_points, (spatial_dimension * (spatial_dimension -1)));
this->template variationOnControlPoints<type, ReduceFunction>(u,
tangents_u,
spatial_dimension,
ghost_type,
filter_elements);
normals_u.resize(nb_points * nb_element);
Vector<Real>::iterator<types::RVector> normal = normals_u.begin(spatial_dimension);
Vector<Real>::iterator<types::RVector> normal_end = normals_u.end(spatial_dimension);
Real * tangent = tangents_u.storage();
if(spatial_dimension == 3)
for (; normal != normal_end; ++normal) {
Math::vectorProduct3(tangent, tangent+spatial_dimension, normal->storage());
(*normal) /= normal->norm();
tangent += spatial_dimension * 2;
}
else if(spatial_dimension == 2)
for (; normal != normal_end; ++normal) {
types::RVector a1(tangent, spatial_dimension);
(*normal)(0) = -a1(1);
(*normal)(1) = a1(0);
(*normal) /= normal->norm();
tangent += spatial_dimension;
}
AKANTU_DEBUG_OUT();
}
diff --git a/src/fem/shape_functions.hh b/src/fem/shape_functions.hh
index d9da6628a..c971cf8ae 100644
--- a/src/fem/shape_functions.hh
+++ b/src/fem/shape_functions.hh
@@ -1,127 +1,140 @@
/**
* @file shape_functions.hh
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
*
* @date Tue Feb 15 16:32:44 2011
*
* @brief shape function class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "aka_memory.hh"
#include "mesh.hh"
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_SHAPE_FUNCTIONS_HH__
#define __AKANTU_SHAPE_FUNCTIONS_HH__
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
class ShapeFunctions : protected Memory {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
ShapeFunctions(const Mesh & mesh,
const ID & id = "shape",
const MemoryID & memory_id = 0) :
Memory(memory_id), mesh(&mesh),
- control_points("control_points", id, memory_id) {
+ control_points("control_points", id) {
};
virtual ~ShapeFunctions(){};
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
- /// multiply a field by shape functions
- template <ElementType type>
- void fieldTimesShapes(const Vector<Real> & field,
- Vector<Real> & fieal_times_shapes) const;
-
/// function to print the contain of the class
virtual void printself(std::ostream & stream, int indent = 0) const {
std::string space;
for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
stream << space << "Shapes [" << std::endl;
control_points.printself(stream, indent + 1);
stream << space << "]" << std::endl;
};
/// set the control points for a given element
template <ElementType type>
- void setControlPointsByType(const Vector<Real> & control_points,
+ void setControlPointsByType(const types::Matrix<Real> & control_points,
const GhostType & ghost_type);
+protected:
+ /// interpolate nodal values stored by element on the control points
+ template <ElementType type>
+ void interpolateElementalFieldOnControlPoints(const Vector<Real> &u_el,
+ Vector<Real> &uq,
+ GhostType ghost_type,
+ const Vector<Real> & shapes,
+ const Vector<UInt> * filter_elements) const;
+
+ /// gradient of nodal values stored by element on the control points
+ template <ElementType type>
+ void gradientElementalFieldOnControlPoints(const Vector<Real> &u_el,
+ Vector<Real> &out_nablauq,
+ GhostType ghost_type,
+ const Vector<Real> & shapes_derivatives,
+ const Vector<UInt> * filter_elements) const;
+
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
/// get the size of the shapes returned by the element class
static inline UInt getShapeSize(const ElementType & type);
/// get the size of the shapes derivatives returned by the element class
static inline UInt getShapeDerivativesSize(const ElementType & type);
- AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(ControlPoints, control_points, Real)
+ inline const types::Matrix<Real> & getControlPoints(const ElementType & type,
+ const GhostType & ghost_type) const {
+ return control_points(type, ghost_type);
+ }
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
-private:
-
protected:
const Mesh * mesh;
ID id;
/// shape functions for all elements
- ByElementTypeReal control_points;
+ ByElementType< types::Matrix<Real> > control_points;
};
#if defined (AKANTU_INCLUDE_INLINE_IMPL)
# include "shape_functions_inline_impl.cc"
#endif
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
/// standard output stream operator
inline std::ostream & operator <<(std::ostream & stream, const ShapeFunctions & _this)
{
_this.printself(stream);
return stream;
}
__END_AKANTU__
#endif /* __AKANTU_SHAPE_FUNCTIONS_HH__ */
diff --git a/src/fem/shape_functions_inline_impl.cc b/src/fem/shape_functions_inline_impl.cc
index 22c97de1d..ffc161058 100644
--- a/src/fem/shape_functions_inline_impl.cc
+++ b/src/fem/shape_functions_inline_impl.cc
@@ -1,86 +1,172 @@
/**
* @file shape_functions_inline_impl.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
* @author Fabian Barras <fabian.barras@epfl.ch>
*
* @date Fri Jul 15 19:41:58 2011
*
* @brief ShapeFunctions inline implementation
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
+/* -------------------------------------------------------------------------- */
+
+__END_AKANTU__
+#include "fem.hh"
+__BEGIN_AKANTU__
+
/* -------------------------------------------------------------------------- */
inline UInt ShapeFunctions::getShapeSize(const ElementType & type) {
AKANTU_DEBUG_IN();
UInt shape_size = 0;
#define GET_SHAPE_SIZE(type) \
shape_size = ElementClass<type>::getShapeSize()
-#define GET_SHAPE_SIZE_COHESIVE(type) \
- shape_size = CohesiveElement<type>::getShapeSize()
-
- AKANTU_BOOST_ELEMENT_SWITCH(GET_SHAPE_SIZE,
- AKANTU_REGULAR_ELEMENT_TYPE,
- GET_SHAPE_SIZE_COHESIVE,
- AKANTU_COHESIVE_ELEMENT_TYPE);
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_SHAPE_SIZE);// ,
#undef GET_SHAPE_SIZE
-#undef GET_SHAPE_SIZE_COHESIVE
AKANTU_DEBUG_OUT();
return shape_size;
}
/* -------------------------------------------------------------------------- */
inline UInt ShapeFunctions::getShapeDerivativesSize(const ElementType & type) {
AKANTU_DEBUG_IN();
UInt shape_derivatives_size = 0;
#define GET_SHAPE_DERIVATIVES_SIZE(type) \
shape_derivatives_size = ElementClass<type>::getShapeDerivativesSize()
-#define GET_SHAPE_DERIVATIVES_SIZE_COHESIVE(type) \
- shape_derivatives_size = CohesiveElement<type>::getShapeDerivativesSize()
-
- AKANTU_BOOST_ELEMENT_SWITCH(GET_SHAPE_DERIVATIVES_SIZE,
- AKANTU_REGULAR_ELEMENT_TYPE,
- GET_SHAPE_DERIVATIVES_SIZE_COHESIVE,
- AKANTU_COHESIVE_ELEMENT_TYPE);
+ AKANTU_BOOST_ALL_ELEMENT_SWITCH(GET_SHAPE_DERIVATIVES_SIZE);// ,
#undef GET_SHAPE_DERIVATIVES_SIZE
-#undef GET_SHAPE_DERIVATIVES_SIZE_COHESIVE
AKANTU_DEBUG_OUT();
return shape_derivatives_size;
}
/* -------------------------------------------------------------------------- */
template <ElementType type>
-void ShapeFunctions::setControlPointsByType(const Vector<Real> & points,
+void ShapeFunctions::setControlPointsByType(const types::Matrix<Real> & points,
const GhostType & ghost_type) {
- control_points.setVector(type, ghost_type, points);
+ control_points(type, ghost_type).shallowCopy(points);
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementType type>
+void ShapeFunctions::interpolateElementalFieldOnControlPoints(const Vector<Real> &u_el,
+ Vector<Real> &uq,
+ GhostType ghost_type,
+ const Vector<Real> & shapes,
+ const Vector<UInt> * filter_elements) const {
+ UInt nb_element;
+ UInt nb_points = control_points(type, ghost_type).cols();
+ UInt nb_nodes_per_element = ElementClass<type>::getShapeSize();
+ UInt nb_degree_of_freedom = u_el.getNbComponent() / nb_nodes_per_element;
+
+ Vector<Real>::const_iterator< types::Matrix<Real> > N_it;
+ Vector<Real>::const_iterator< types::Matrix<Real> > u_it;
+ Vector<Real>::iterator< types::Matrix<Real> > inter_u_it;
+
+ Vector<Real> * filtered_N = NULL;
+ if(filter_elements) {
+ nb_element = filter_elements->getSize();
+ filtered_N = new Vector<Real>(0, shapes.getNbComponent());
+ FEM::filterQuadraturePointsData(*mesh, shapes, *filtered_N, type, ghost_type, filter_elements);
+ N_it = filtered_N->begin_reinterpret(nb_nodes_per_element, nb_points, nb_element);
+ } else {
+ nb_element = mesh->getNbElement(type,ghost_type);
+ N_it = shapes.begin_reinterpret(nb_nodes_per_element, nb_points, nb_element);
+ }
+
+ uq.resize(nb_element*nb_points);
+
+ u_it = u_el.begin(nb_degree_of_freedom, nb_nodes_per_element);
+ inter_u_it = uq.begin_reinterpret(nb_degree_of_freedom, nb_points, nb_element);
+
+ for (UInt el = 0; el < nb_element; ++el, ++N_it, ++u_it, ++inter_u_it) {
+ const types::Matrix<Real> & u = *u_it;
+ const types::Matrix<Real> & N = *N_it;
+ types::Matrix<Real> & inter_u = *inter_u_it;
+
+ inter_u.mul<false, false>(u, N);
+ }
+
+ if(filtered_N) delete filtered_N;
}
/* -------------------------------------------------------------------------- */
+template <ElementType type>
+void ShapeFunctions::gradientElementalFieldOnControlPoints(const Vector<Real> &u_el,
+ Vector<Real> &out_nablauq,
+ GhostType ghost_type,
+ const Vector<Real> & shapes_derivatives,
+ const Vector<UInt> * filter_elements) const {
+ AKANTU_DEBUG_IN();
+
+ UInt nb_nodes_per_element = ElementClass<type>::getNbNodesPerInterpolationElement();
+ UInt nb_points = control_points(type, ghost_type).cols();
+ UInt element_dimension = ElementClass<type>::getNaturalSpaceDimension();
+ UInt nb_degree_of_freedom = u_el.getNbComponent() / nb_nodes_per_element;
+
+ Vector<Real>::const_iterator< types::Matrix<Real> > B_it;
+ Vector<Real>::const_iterator< types::Matrix<Real> > u_it;
+ Vector<Real>::iterator< types::Matrix<Real> > nabla_u_it;
+
+ UInt nb_element;
+ Vector<Real> * filtered_B = NULL;
+ if(filter_elements) {
+ nb_element = filter_elements->getSize();
+ filtered_B = new Vector<Real>(0, shapes_derivatives.getNbComponent());
+ FEM::filterQuadraturePointsData(*mesh, shapes_derivatives, *filtered_B, type, ghost_type, filter_elements);
+ B_it = filtered_B->begin(element_dimension, nb_nodes_per_element);
+ } else {
+ B_it = shapes_derivatives.begin(element_dimension, nb_nodes_per_element);
+ nb_element = mesh->getNbElement(type, ghost_type);
+ }
+
+ out_nablauq.resize(nb_element*nb_points);
+
+ u_it = u_el.begin(nb_degree_of_freedom, nb_nodes_per_element);
+ nabla_u_it = out_nablauq.begin(nb_degree_of_freedom, element_dimension);
+
+ for (UInt el = 0; el < nb_element; ++el, ++u_it) {
+ const types::Matrix<Real> & u = *u_it;
+ for (UInt q = 0; q < nb_points; ++q, ++B_it, ++nabla_u_it) {
+ const types::Matrix<Real> & B = *B_it;
+ types::Matrix<Real> & nabla_u = *nabla_u_it;
+
+ nabla_u.mul<false, true>(u, B);
+ }
+ }
+
+ if(filtered_B) delete filtered_B;
+
+ AKANTU_DEBUG_OUT();
+}
+
+/* -------------------------------------------------------------------------- */
+
diff --git a/src/fem/shape_lagrange.cc b/src/fem/shape_lagrange.cc
index b7e5eb02c..14c0b32f9 100644
--- a/src/fem/shape_lagrange.cc
+++ b/src/fem/shape_lagrange.cc
@@ -1,340 +1,30 @@
/**
* @file shape_lagrange.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Feb 15 16:32:44 2011
*
* @brief lagrangian shape functions class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
-/* -------------------------------------------------------------------------- */
-#include "aka_memory.hh"
-#include "mesh.hh"
-#include "shape_lagrange.hh"
-#include "element_class.hh"
-
-/* -------------------------------------------------------------------------- */
-__BEGIN_AKANTU__
-
-/* -------------------------------------------------------------------------- */
-ShapeLagrange::ShapeLagrange(const Mesh & mesh,
- const ID & id,
- const MemoryID & memory_id) :
- ShapeFunctions(mesh, id, memory_id),
- shapes("shapes", id),
- shapes_derivatives("shapes_derivatives", id) {
- AKANTU_DEBUG_IN();
-
- AKANTU_DEBUG_OUT();
-}
-
-/* -------------------------------------------------------------------------- */
-template <ElementType type>
-void ShapeLagrange::precomputeShapesOnControlPoints(GhostType ghost_type) {
- AKANTU_DEBUG_IN();
-
- Real * natural_coords = control_points(type, ghost_type).values;
- UInt nb_points = control_points(type, ghost_type).getSize();
-
- UInt size_of_shapes = ElementClass<type>::getShapeSize();
-
- UInt nb_element = mesh->getConnectivity(type, ghost_type).getSize();;
-
- Vector<Real> & shapes_tmp = shapes.alloc(nb_element*nb_points,
- size_of_shapes,
- type,
- ghost_type);
-
- Real * shapes_val = shapes_tmp.values;
- for (UInt elem = 0; elem < nb_element; ++elem) {
- ElementClass<type>::computeShapes(natural_coords,
- nb_points,shapes_val);
-
- shapes_val += size_of_shapes*nb_points;
- }
-
- AKANTU_DEBUG_OUT();
-}
-
-/* -------------------------------------------------------------------------- */
-template <ElementType type>
-void ShapeLagrange::precomputeShapeDerivativesOnControlPoints(GhostType ghost_type) {
- AKANTU_DEBUG_IN();
-
- // Real * coord = mesh->getNodes().values;
- UInt spatial_dimension = mesh->getSpatialDimension();
-
- UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
- UInt size_of_shapesd = ElementClass<type>::getShapeDerivativesSize();
- UInt nb_points = control_points(type, ghost_type).getSize();
- Real * natural_coords = control_points(type, ghost_type).values;
-
-
- UInt * elem_val = mesh->getConnectivity(type, ghost_type).values;;
- UInt nb_element = mesh->getConnectivity(type, ghost_type).getSize();
-
- Vector<Real> & shapes_derivatives_tmp = shapes_derivatives.alloc(nb_element*nb_points,
- size_of_shapesd,
- type,
- ghost_type);
-
- Real * shapesd_val = shapes_derivatives_tmp.values;
- Real local_coord[spatial_dimension * nb_nodes_per_element];
-
- for (UInt elem = 0; elem < nb_element; ++elem) {
- mesh->extractNodalValuesFromElement(mesh->getNodes(),
- local_coord,
- elem_val+elem*nb_nodes_per_element,
- nb_nodes_per_element,
- spatial_dimension);
-
- computeShapeDerivativesOnCPointsByElement<type>(spatial_dimension,
- local_coord,
- nb_nodes_per_element,
- natural_coords,
- nb_points,
- shapesd_val);
-
- shapesd_val += size_of_shapesd*nb_points;
- }
-
- AKANTU_DEBUG_OUT();
-}
-
-
-
-/* -------------------------------------------------------------------------- */
-template <ElementType type>
-void ShapeLagrange::interpolateOnControlPoints(const Vector<Real> &in_u,
- Vector<Real> &out_uq,
- UInt nb_degree_of_freedom,
- GhostType ghost_type,
- const Vector<UInt> * filter_elements) const {
- AKANTU_DEBUG_IN();
-
- AKANTU_DEBUG_ASSERT(shapes.exists(type, ghost_type),
- "No shapes for the type "
- << shapes.printType(type, ghost_type));
-
- UInt nb_element = mesh->getNbElement(type, ghost_type);
- UInt * conn_val = mesh->getConnectivity(type, ghost_type).values;
-
- const Vector<Real> & shapes_loc = shapes(type, ghost_type);
-
- UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
- UInt nb_points = control_points(type, ghost_type).getSize();
- UInt size_of_shapes = ElementClass<type>::getShapeSize();
-
- UInt * filter_elem_val = NULL;
- if(filter_elements != NULL) {
- nb_element = filter_elements->getSize();
- filter_elem_val = filter_elements->values;
- }
-
- Real * shape_val = shapes_loc.storage();
- Real * u_val = in_u.values;
- Real * uq_val = out_uq.values;
-
- UInt offset_uq = out_uq.getNbComponent() * nb_points;
-
- Real * shape = shape_val;
- Real * u = new Real[nb_nodes_per_element * nb_degree_of_freedom];
-
- for (UInt el = 0; el < nb_element; ++el) {
- UInt el_offset = el * nb_nodes_per_element;
- if(filter_elements != NULL) {
- shape = shape_val + filter_elem_val[el] * size_of_shapes * nb_points;
- el_offset = filter_elem_val[el] * nb_nodes_per_element;
- }
-
- for (UInt n = 0; n < nb_nodes_per_element; ++n) {
- memcpy(u + n * nb_degree_of_freedom,
- u_val + conn_val[el_offset + n] * nb_degree_of_freedom,
- nb_degree_of_freedom * sizeof(Real));
- }
-
- /// @f$ u_q = \textbf{N} * u @f$
- Math::matrix_matrix(nb_points, nb_degree_of_freedom, nb_nodes_per_element,
- shape, u, uq_val);
-
- uq_val += offset_uq;
- if(filter_elements == NULL) {
- shape += size_of_shapes*nb_points;
- }
- }
-
- delete [] u;
-
-#undef INIT_VARIABLES
- AKANTU_DEBUG_OUT();
-}
-
-/* -------------------------------------------------------------------------- */
-template <ElementType type>
-void ShapeLagrange::gradientOnControlPoints(const Vector<Real> &in_u,
- Vector<Real> &out_nablauq,
- UInt nb_degree_of_freedom,
- GhostType ghost_type,
- const Vector<UInt> * filter_elements) const {
- AKANTU_DEBUG_IN();
-
- AKANTU_DEBUG_ASSERT(shapes_derivatives.exists(type, ghost_type),
- "No shapes derivatives for the type "
- << shapes_derivatives.printType(type, ghost_type));
-
- UInt nb_element = mesh->getNbElement(type, ghost_type);
- UInt * conn_val = mesh->getConnectivity(type, ghost_type).storage();
-
- const Vector<Real> & shapesd_loc = shapes_derivatives(type, ghost_type);
-
- UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
- UInt size_of_shapes_derivatives = ElementClass<type>::getShapeDerivativesSize();
- UInt nb_points = control_points(type, ghost_type).getSize();
- UInt element_dimension = ElementClass<type>::getSpatialDimension();
-
- UInt * filter_elem_val = NULL;
- if(filter_elements != NULL) {
- nb_element = filter_elements->getSize();
- filter_elem_val = filter_elements->values;
- }
-
- Real * shaped_val = shapesd_loc.storage();
- Real * u_val = in_u.values;
- Real * nablauq_val = out_nablauq.storage();
-
- UInt offset_nablauq = nb_degree_of_freedom * element_dimension;
- UInt offset_shaped = nb_nodes_per_element * element_dimension;
-
- Real * shaped = shaped_val;
- Real * u = new Real[nb_nodes_per_element * nb_degree_of_freedom];
-
- for (UInt el = 0; el < nb_element; ++el) {
- UInt el_offset = el * nb_nodes_per_element;
- if(filter_elements != NULL) {
- shaped = shaped_val + filter_elem_val[el] * size_of_shapes_derivatives * nb_points;
- el_offset = filter_elem_val[el] * nb_nodes_per_element;
- }
-
- for (UInt n = 0; n < nb_nodes_per_element; ++n) {
- memcpy(u + n * nb_degree_of_freedom,
- u_val + conn_val[el_offset + n] * nb_degree_of_freedom,
- nb_degree_of_freedom * sizeof(Real));
- }
-
- for (UInt q = 0; q < nb_points; ++q) {
- /// @f$\nabla u^t = u^t * B^t@f$
- Math::matrixt_matrix(nb_degree_of_freedom, element_dimension, nb_nodes_per_element,
- u,
- shaped,
- nablauq_val);
-
- nablauq_val += offset_nablauq;
- shaped += offset_shaped;
- }
- }
-
- delete [] u;
-
-#undef INIT_VARIABLES
- AKANTU_DEBUG_OUT();
-}
-
-// /* -------------------------------------------------------------------------- */
-// template <ElementType type>
-// void ShapeLagrange::setControlPointsByType(Vector<Real> & points, GhostType ghost_type){
-// control_points(type, ghost_type) = &points;
-// }
-
-/* -------------------------------------------------------------------------- */
-template <ElementType type>
-void ShapeLagrange::fieldTimesShapes(const Vector<Real> & field,
- Vector<Real> & field_times_shapes,
- GhostType ghost_type) const {
- field_times_shapes.copy(field);
- field_times_shapes.extendComponentsInterlaced(ElementClass<type>::getShapeSize(), 1);
-
- UInt nb_element = field_times_shapes.getSize() * ElementClass<type>::getShapeSize();
-
- Real * field_times_shapes_val = field_times_shapes.values;
- Real * shapes_val = shapes(type, ghost_type).values;
-
- /// compute @f$ rho * \varphi_i @f$ for each nodes of each element
- for (UInt el = 0; el < nb_element; ++el) {
- *field_times_shapes_val++ *= *shapes_val++;
- }
-}
-
-
-/* -------------------------------------------------------------------------- */
-void ShapeLagrange::printself(std::ostream & stream, int indent) const {
- std::string space;
- for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
-
- stream << space << "Shapes Lagrange [" << std::endl;
- ShapeFunctions::printself(stream, indent + 1);
- shapes.printself(stream, indent + 1);
- shapes_derivatives.printself(stream, indent + 1);
- stream << space << "]" << std::endl;
-}
-
-
-/* -------------------------------------------------------------------------- */
-/* template instantiation */
-/* -------------------------------------------------------------------------- */
-
-#define INSTANCIATE_TEMPLATE_CLASS(type) \
- template \
- void ShapeLagrange::precomputeShapesOnControlPoints<type> \
- (GhostType ghost_type); \
- \
- template \
- void ShapeLagrange::precomputeShapeDerivativesOnControlPoints<type> \
- (GhostType ghost_type); \
- \
- template \
- void ShapeLagrange::gradientOnControlPoints<type> \
- (const Vector<Real> &in_u, \
- Vector<Real> &out_nablauq, \
- UInt nb_degree_of_freedom, \
- GhostType ghost_type, \
- const Vector<UInt> * filter_elements) const; \
- \
- template \
- void ShapeLagrange::interpolateOnControlPoints<type> \
- (const Vector<Real> &in_u, \
- Vector<Real> &out_uq, \
- UInt nb_degree_of_freedom, \
- GhostType ghost_type, \
- const Vector<UInt> * filter_elements) const; \
- \
- template \
- void ShapeLagrange::fieldTimesShapes<type> \
- (const Vector<Real> & field, \
- Vector<Real> & field_times_shapes, \
- GhostType ghost_type) const;
-
-AKANTU_BOOST_REGULAR_ELEMENT_LIST(INSTANCIATE_TEMPLATE_CLASS)
-#undef INSTANCIATE_TEMPLATE_CLASS
-
-__END_AKANTU__
diff --git a/src/fem/shape_lagrange.hh b/src/fem/shape_lagrange.hh
index d8270d1e6..1756bb020 100644
--- a/src/fem/shape_lagrange.hh
+++ b/src/fem/shape_lagrange.hh
@@ -1,165 +1,156 @@
/**
* @file shape_lagrange.hh
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
*
* @date Tue Feb 15 16:32:44 2011
*
* @brief lagrangian shape functions class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
#ifndef __AKANTU_SHAPE_LAGRANGE_HH__
#define __AKANTU_SHAPE_LAGRANGE_HH__
#include "shape_functions.hh"
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
template<class Shape>
class ShapeCohesive;
+template <ElementKind kind>
class ShapeLagrange : public ShapeFunctions{
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
ShapeLagrange(const Mesh & mesh,
const ID & id = "shape_lagrange",
const MemoryID & memory_id = 0);
virtual ~ShapeLagrange(){};
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
+ inline void initShapeFunctions(const Vector<Real> & nodes,
+ const types::Matrix<Real> & control_points,
+ const ElementType & type,
+ const GhostType & ghost_type);
/// pre compute all shapes on the element control points from natural coordinates
- template <ElementType type>
- void precomputeShapesOnControlPoints(GhostType ghost_type);
+ template<ElementType type>
+ void precomputeShapesOnControlPoints(const Vector<Real> & nodes,
+ GhostType ghost_type);
/// pre compute all shapes on the element control points from natural coordinates
template <ElementType type>
- void precomputeShapeDerivativesOnControlPoints(GhostType ghost_type);
+ void precomputeShapeDerivativesOnControlPoints(const Vector<Real> & nodes,
+ GhostType ghost_type);
/// interpolate nodal values on the control points
template <ElementType type>
void interpolateOnControlPoints(const Vector<Real> &u,
Vector<Real> &uq,
UInt nb_degree_of_freedom,
GhostType ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const;
/// compute the gradient of u on the control points
template <ElementType type>
void gradientOnControlPoints(const Vector<Real> &u,
Vector<Real> &nablauq,
UInt nb_degree_of_freedom,
GhostType ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL) const;
/// multiply a field by shape functions
template <ElementType type>
void fieldTimesShapes(const Vector<Real> & field,
Vector<Real> & fiedl_times_shapes,
GhostType ghost_type) const;
-
/// find natural coords from real coords provided an element
template <ElementType type>
void inverseMap(const types::RVector & real_coords,
UInt element,
types::RVector & natural_coords,
const GhostType & ghost_type = _not_ghost) const;
/// return true if the coordinates provided are inside the element, false otherwise
template <ElementType type>
bool contains(const types::RVector & real_coords,
UInt elem,
const GhostType & ghost_type) const;
/// compute the shape on a provided point
template <ElementType type>
void computeShapes(const types::RVector & real_coords,
UInt elem,
types::RVector & shapes,
const GhostType & ghost_type) const;
/// function to print the containt of the class
virtual void printself(std::ostream & stream, int indent = 0) const;
protected:
/// compute the shape derivatives on control points for a given element
template <ElementType type>
- inline void computeShapeDerivativesOnCPointsByElement(UInt spatial_dimension,
- Real * node_coords,
- UInt nb_nodes_per_element,
- Real * natural_coords,
- UInt nb_points,
- Real * shapesd);
+ inline void computeShapeDerivativesOnCPointsByElement(const types::Matrix<Real> & node_coords,
+ const types::Matrix<Real> & natural_coords,
+ types::Tensor3<Real> & shapesd);
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
-
/// get a the shapes vector
- AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(Shapes, shapes, Real);
+ inline const Vector<Real> & getShapes(const ElementType & el_type,
+ const GhostType & ghost_type = _not_ghost) const;
/// get a the shapes derivatives vector
- AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(ShapesDerivatives, shapes_derivatives, Real);
+ inline const Vector<Real> & getShapesDerivatives(const ElementType & el_type,
+ const GhostType & ghost_type = _not_ghost) const;
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
protected:
- friend class ShapeCohesive<ShapeLagrange>;
/// shape functions for all elements
- ByElementTypeReal shapes;
+ ByElementTypeVector<Real, InterpolationType> shapes;
/// shape functions derivatives for all elements
- ByElementTypeReal shapes_derivatives;
-
+ ByElementTypeVector<Real, InterpolationType> shapes_derivatives;
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
-
-#if defined (AKANTU_INCLUDE_INLINE_IMPL)
-# include "shape_lagrange_inline_impl.cc"
-#endif
-
-/// standard output stream operator
-inline std::ostream & operator <<(std::ostream & stream, const ShapeLagrange & _this)
-{
- _this.printself(stream);
- return stream;
-}
-
+#include "shape_lagrange_inline_impl.cc"
__END_AKANTU__
#endif /* __AKANTU_SHAPE_LAGRANGE_HH__ */
diff --git a/src/fem/shape_lagrange_inline_impl.cc b/src/fem/shape_lagrange_inline_impl.cc
index 93aae26f5..dd0151007 100644
--- a/src/fem/shape_lagrange_inline_impl.cc
+++ b/src/fem/shape_lagrange_inline_impl.cc
@@ -1,104 +1,329 @@
/**
* @file shape_lagrange_inline_impl.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Feb 15 16:32:44 2011
*
* @brief ShapeLagrange inline implementation
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
+__END_AKANTU__
+
+#include "fem.hh"
+
+__BEGIN_AKANTU__
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+inline const Vector<Real> & ShapeLagrange<kind>::getShapes(const ElementType & el_type,
+ const GhostType & ghost_type) const {
+ return shapes(FEM::getInterpolationType(el_type), ghost_type);
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+inline const Vector<Real> & ShapeLagrange<kind>::getShapesDerivatives(const ElementType & el_type,
+ const GhostType & ghost_type) const {
+ return shapes_derivatives(FEM::getInterpolationType(el_type), ghost_type);
+}
+
+/* -------------------------------------------------------------------------- */
+#define INIT_SHAPE_FUNCTIONS(type) \
+ setControlPointsByType<type>(control_points, ghost_type); \
+ precomputeShapesOnControlPoints<type>(nodes, ghost_type); \
+ if (ElementClass<type>::getNaturalSpaceDimension() == \
+ mesh->getSpatialDimension() || kind != _ek_regular) \
+ precomputeShapeDerivativesOnControlPoints<type>(nodes, ghost_type);
+
+template <ElementKind kind>
+inline void
+ShapeLagrange<kind>::initShapeFunctions(const Vector<Real> & nodes,
+ const types::Matrix<Real> & control_points,
+ const ElementType & type,
+ const GhostType & ghost_type) {
+ AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(INIT_SHAPE_FUNCTIONS);
+}
+
+/* -------------------------------------------------------------------------- */
+template <>
+inline void
+ShapeLagrange<_ek_structural>::initShapeFunctions(const Vector<Real> & nodes,
+ const types::Matrix<Real> & control_points,
+ const ElementType & type,
+ const GhostType & ghost_type) {
+ AKANTU_DEBUG_TO_IMPLEMENT();
+}
+
+#undef INIT_SHAPE_FUNCTIONS
/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
template <ElementType type>
-inline void ShapeLagrange::
-computeShapeDerivativesOnCPointsByElement(UInt spatial_dimension,
- Real * node_coords,
- UInt nb_nodes_per_element,
- Real * natural_coords,
- UInt nb_points,
- Real * shapesd) {
+inline void ShapeLagrange<kind>::
+computeShapeDerivativesOnCPointsByElement(const types::Matrix<Real> & node_coords,
+ const types::Matrix<Real> & natural_coords,
+ types::Tensor3<Real> & shapesd) {
// compute dnds
- Real dnds[nb_nodes_per_element * spatial_dimension * nb_points];
- ElementClass<type>::computeDNDS(natural_coords, nb_points, dnds);
+ types::Tensor3<Real> dnds(node_coords.rows(), node_coords.cols(), natural_coords.cols());
+ ElementClass<type>::computeDNDS(natural_coords, dnds);
// compute dxds
- Real dxds[spatial_dimension * spatial_dimension * nb_points];
- ElementClass<type>::computeDXDS(dnds, nb_points, node_coords,
- spatial_dimension, dxds);
+ types::Tensor3<Real> J(node_coords.rows(), natural_coords.rows(), natural_coords.cols());
+ ElementClass<type>::computeJMat(dnds, node_coords, J);
+
// compute shape derivatives
- ElementClass<type>::computeShapeDerivatives(dxds, dnds, nb_points,
- spatial_dimension, shapesd);
+ ElementClass<type>::computeShapeDerivatives(J, dnds, shapesd);
}
/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
template <ElementType type>
-void ShapeLagrange::inverseMap(const types::RVector & real_coords,
- UInt elem,
- types::RVector & natural_coords,
- const GhostType & ghost_type) const{
+void ShapeLagrange<kind>::inverseMap(const types::RVector & real_coords,
+ UInt elem,
+ types::RVector & natural_coords,
+ const GhostType & ghost_type) const{
UInt spatial_dimension = mesh->getSpatialDimension();
- UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
+ UInt nb_nodes_per_element = ElementClass<type>::getNbNodesPerInterpolationElement();
UInt * elem_val = mesh->getConnectivity(type, ghost_type).values;
- types::RMatrix local_coord(nb_nodes_per_element,spatial_dimension);
+ types::RMatrix nodes_coord(spatial_dimension, nb_nodes_per_element);
mesh->extractNodalValuesFromElement(mesh->getNodes(),
- local_coord.storage(),
- elem_val+elem*nb_nodes_per_element,
- nb_nodes_per_element,
- spatial_dimension);
-
+ nodes_coord.storage(),
+ elem_val + elem*nb_nodes_per_element,
+ nb_nodes_per_element,
+ spatial_dimension);
- ElementClass<type>::inverseMap(real_coords,local_coord,spatial_dimension,natural_coords);
+ ElementClass<type>::inverseMap(real_coords,
+ nodes_coord,
+ natural_coords);
}
/* -------------------------------------------------------------------------- */
-
+template <ElementKind kind>
template <ElementType type>
-bool ShapeLagrange::contains(const types::RVector & real_coords,
- UInt elem,
- const GhostType & ghost_type) const{
+bool ShapeLagrange<kind>::contains(const types::RVector & real_coords,
+ UInt elem,
+ const GhostType & ghost_type) const{
UInt spatial_dimension = mesh->getSpatialDimension();
types::RVector natural_coords(spatial_dimension);
- inverseMap<type>(real_coords,elem,natural_coords,ghost_type);
+ inverseMap<type>(real_coords, elem, natural_coords, ghost_type);
return ElementClass<type>::contains(natural_coords);
}
/* -------------------------------------------------------------------------- */
-
+template <ElementKind kind>
template <ElementType type>
-void ShapeLagrange::computeShapes(const types::RVector & real_coords,
- UInt elem,
- types::RVector & shapes,
- const GhostType & ghost_type) const{
+void ShapeLagrange<kind>::computeShapes(const types::RVector & real_coords,
+ UInt elem,
+ types::RVector & shapes,
+ const GhostType & ghost_type) const{
UInt spatial_dimension = mesh->getSpatialDimension();
types::RVector natural_coords(spatial_dimension);
- inverseMap<type>(real_coords,elem,natural_coords,ghost_type);
- ElementClass<type>::computeShapes(natural_coords.storage(),shapes.storage());
+ inverseMap<type>(real_coords, elem, natural_coords, ghost_type);
+ ElementClass<type>::computeShapes(natural_coords, shapes);
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+ShapeLagrange<kind>::ShapeLagrange(const Mesh & mesh,
+ const ID & id,
+ const MemoryID & memory_id) :
+ ShapeFunctions(mesh, id, memory_id),
+ shapes("shapes_generic", id),
+ shapes_derivatives("shapes_derivatives_generic", id) {
+ AKANTU_DEBUG_IN();
+
+ AKANTU_DEBUG_OUT();
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+template <ElementType type>
+void ShapeLagrange<kind>::precomputeShapesOnControlPoints(__attribute__((unused)) const Vector<Real> & nodes,
+ GhostType ghost_type) {
+ AKANTU_DEBUG_IN();
+
+ InterpolationType itp_type = ElementClassProperty<type>::interpolation_type;
+
+ types::Matrix<Real> & natural_coords = control_points(type, ghost_type);
+ UInt nb_points = natural_coords.cols();
+
+ UInt size_of_shapes = ElementClass<type>::getShapeSize();
+
+ UInt nb_element = mesh->getConnectivity(type, ghost_type).getSize();;
+
+ Vector<Real> & shapes_tmp = shapes.alloc(nb_element*nb_points,
+ size_of_shapes,
+ itp_type,
+ ghost_type);
+
+ Vector<Real>::iterator< types::Matrix<Real> > shapes_it =
+ shapes_tmp.begin_reinterpret(ElementClass<type>::getNbNodesPerInterpolationElement(), nb_points,
+ nb_element);
+
+ for (UInt elem = 0; elem < nb_element; ++elem, ++shapes_it) {
+ types::Matrix<Real> & N = *shapes_it;
+ ElementClass<type>::computeShapes(natural_coords,
+ N);
+ }
+
+ AKANTU_DEBUG_OUT();
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+template <ElementType type>
+void ShapeLagrange<kind>::precomputeShapeDerivativesOnControlPoints(const Vector<Real> & nodes, GhostType ghost_type) {
+ AKANTU_DEBUG_IN();
+
+ InterpolationType itp_type = ElementClassProperty<type>::interpolation_type;
+
+ // Real * coord = mesh->getNodes().values;
+ UInt spatial_dimension = mesh->getSpatialDimension();
+
+ UInt nb_nodes_per_element = ElementClass<type>::getNbNodesPerInterpolationElement();
+ UInt size_of_shapesd = ElementClass<type>::getShapeDerivativesSize();
+ types::Matrix<Real> & natural_coords = control_points(type, ghost_type);
+ UInt nb_points = natural_coords.cols();
+
+ UInt nb_element = mesh->getConnectivity(type, ghost_type).getSize();
+ Vector<Real> & shapes_derivatives_tmp = shapes_derivatives.alloc(nb_element*nb_points,
+ size_of_shapesd,
+ itp_type,
+ ghost_type);
+
+ Vector<Real> x_el(0, spatial_dimension * nb_nodes_per_element);
+ FEM::extractNodalToElementField(*mesh, nodes, x_el,
+ type, ghost_type);
+
+ Real * shapesd_val = shapes_derivatives_tmp.storage();
+ Vector<Real>::iterator< types::Matrix<Real> > x_it = x_el.begin(spatial_dimension,
+ nb_nodes_per_element);
+
+ for (UInt elem = 0; elem < nb_element; ++elem, ++x_it) {
+ types::Matrix<Real> & X = *x_it;
+ types::Tensor3<Real> B(shapesd_val,
+ spatial_dimension, nb_nodes_per_element, nb_points);
+ computeShapeDerivativesOnCPointsByElement<type>(X,
+ natural_coords,
+ B);
+
+ shapesd_val += size_of_shapesd*nb_points;
+ }
+
+ AKANTU_DEBUG_OUT();
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+template <ElementType type>
+void ShapeLagrange<kind>::interpolateOnControlPoints(const Vector<Real> &in_u,
+ Vector<Real> &out_uq,
+ UInt nb_degree_of_freedom,
+ GhostType ghost_type,
+ const Vector<UInt> * filter_elements) const {
+ AKANTU_DEBUG_IN();
+
+ InterpolationType itp_type = ElementClassProperty<type>::interpolation_type;
+ AKANTU_DEBUG_ASSERT(shapes.exists(itp_type, ghost_type),
+ "No shapes for the type "
+ << shapes.printType(itp_type, ghost_type));
+
+ UInt nb_nodes_per_element = ElementClass<type>::getNbNodesPerInterpolationElement();
+
+ Vector<Real> u_el(0, nb_degree_of_freedom * nb_nodes_per_element);
+ FEM::extractNodalToElementField(*mesh, in_u, u_el, type, ghost_type, filter_elements);
+
+ this->interpolateElementalFieldOnControlPoints<type>(u_el, out_uq, ghost_type,
+ shapes(itp_type, ghost_type),
+ filter_elements);
+
+ AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+template <ElementType type>
+void ShapeLagrange<kind>::gradientOnControlPoints(const Vector<Real> &in_u,
+ Vector<Real> &out_nablauq,
+ UInt nb_degree_of_freedom,
+ GhostType ghost_type,
+ const Vector<UInt> * filter_elements) const {
+ AKANTU_DEBUG_IN();
+
+ InterpolationType itp_type = ElementClassProperty<type>::interpolation_type;
+ AKANTU_DEBUG_ASSERT(shapes_derivatives.exists(itp_type, ghost_type),
+ "No shapes derivatives for the type "
+ << shapes_derivatives.printType(itp_type, ghost_type));
+
+ UInt nb_nodes_per_element = ElementClass<type>::getNbNodesPerInterpolationElement();
+
+ Vector<Real> u_el(0, nb_degree_of_freedom * nb_nodes_per_element);
+ FEM::extractNodalToElementField(*mesh, in_u, u_el, type, ghost_type, filter_elements);
+
+ this->gradientElementalFieldOnControlPoints<type>(u_el, out_nablauq, ghost_type,
+ shapes_derivatives(itp_type, ghost_type),
+ filter_elements);
+
+ AKANTU_DEBUG_OUT();
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+template <ElementType type>
+void ShapeLagrange<kind>::fieldTimesShapes(const Vector<Real> & field,
+ Vector<Real> & field_times_shapes,
+ GhostType ghost_type) const {
+ field_times_shapes.copy(field);
+ field_times_shapes.extendComponentsInterlaced(ElementClass<type>::getShapeSize(), 1);
+
+ UInt nb_element = field_times_shapes.getSize() * ElementClass<type>::getShapeSize();
+
+ InterpolationType itp_type = ElementClassProperty<type>::interpolation_type;
+ Real * field_times_shapes_val = field_times_shapes.storage();
+ Real * shapes_val = shapes(itp_type, ghost_type).storage();
+
+ /// compute @f$ rho * \varphi_i @f$ for each nodes of each element
+ for (UInt el = 0; el < nb_element; ++el) {
+ *field_times_shapes_val++ *= *shapes_val++;
+ }
+}
+
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+void ShapeLagrange<kind>::printself(std::ostream & stream, int indent) const {
+ std::string space;
+ for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
+
+ stream << space << "Shapes Lagrange [" << std::endl;
+ ShapeFunctions::printself(stream, indent + 1);
+ shapes.printself(stream, indent + 1);
+ shapes_derivatives.printself(stream, indent + 1);
+ stream << space << "]" << std::endl;
+}
diff --git a/src/fem/shape_linked.cc b/src/fem/shape_linked.cc
index cf98c1a38..68f221492 100644
--- a/src/fem/shape_linked.cc
+++ b/src/fem/shape_linked.cc
@@ -1,368 +1,47 @@
/**
* @file shape_linked.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
* @author Fabian Barras <fabian.barras@epfl.ch>
*
* @date Fri Jul 15 19:41:58 2011
*
* @brief ShapeLinked implementation
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "aka_memory.hh"
#include "mesh.hh"
#include "shape_linked.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
-ShapeLinked::ShapeLinked(Mesh & mesh, const ID & id, const MemoryID & memory_id) :
+template <>
+ShapeLinked<_ek_structural>::ShapeLinked(Mesh & mesh, const ID & id, const MemoryID & memory_id) :
ShapeFunctions(mesh, id, memory_id)
{
}
-/* -------------------------------------------------------------------------- */
-template <ElementType type>
-void ShapeLinked::precomputeShapesOnControlPoints(const GhostType & ghost_type) {
- AKANTU_DEBUG_IN();
-
- // Real * coord = mesh->getNodes().values;
- UInt spatial_dimension = mesh->getSpatialDimension();
- UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
-
- Real * natural_coords = control_points(type, ghost_type).storage();
- UInt nb_points = control_points(type, ghost_type).getSize();
-
- UInt size_of_shapes = ElementClass<type>::getShapeSize();
-
- UInt * elem_val;
- UInt nb_element;
-
- std::string ghost = "";
- if(ghost_type == _ghost) {
- ghost = "ghost_";
- }
-
- elem_val = mesh->getConnectivity(type, ghost_type).storage();
- nb_element = mesh->getConnectivity(type, ghost_type).getSize();
-
- UInt nb_shape_functions = ElementClass<type>::getNbShapeFunctions();
-
- Vector<Real> ** shapes_tmp = new Vector<Real> *[nb_shape_functions];
- for (UInt s = 0; s < nb_shape_functions; ++s) {
- std::stringstream sstr_shapes;
- sstr_shapes << id << ":" << ghost << "shapes:" << type << ":" << s;
- shapes_tmp[s] = &(alloc<Real>(sstr_shapes.str(),
- nb_element*nb_points,
- size_of_shapes));
-
- Real * shapes_val = shapes_tmp[s]->values;
-
- Real local_coord[spatial_dimension * nb_nodes_per_element];
- for (UInt elem = 0; elem < nb_element; ++elem) {
- mesh->extractNodalValuesFromElement(mesh->getNodes(),
- local_coord,
- elem_val+elem*nb_nodes_per_element,
- nb_nodes_per_element,
- spatial_dimension);
-
- ElementClass<type>::computeShapes(natural_coords,
- nb_points,
- shapes_val, local_coord, s);
-
- shapes_val += size_of_shapes*nb_points;
- }
- }
-
- shapes(type, ghost_type) = shapes_tmp;
-
- AKANTU_DEBUG_OUT();
-}
-
-/* -------------------------------------------------------------------------- */
-template <ElementType type>
-void ShapeLinked::precomputeShapeDerivativesOnControlPoints(const GhostType & ghost_type) {
- AKANTU_DEBUG_IN();
-
- // Real * coord = mesh->getNodes().values;
- UInt spatial_dimension = mesh->getSpatialDimension();
-
- UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
- UInt size_of_shapesd = ElementClass<type>::getShapeDerivativesSize();
- UInt nb_quadrature_points = ElementClass<type>::getNbQuadraturePoints();
- Real * natural_coords = control_points(type, ghost_type).storage();
- // UInt nb_points = control_points(type, ghost_type)->getSize();
-
- UInt * elem_val;
- UInt nb_element;
- std::string ghost = "";
-
- if(ghost_type == _ghost) {
- ghost = "ghost_";
- }
-
- elem_val = mesh->getConnectivity(type, ghost_type).values;
- nb_element = mesh->getConnectivity(type, ghost_type).getSize();
-
- UInt nb_shape_functions = ElementClass<type>::getNbShapeFunctions();
-
- Vector<Real> ** shapes_derivatives_tmp = new Vector<Real> *[nb_shape_functions];
- for (UInt s = 0; s < nb_shape_functions; ++s) {
- std::stringstream sstr_shapesd;
- sstr_shapesd << id << ":" << ghost << "shapes_derivatives:" << type << ":" << s;
- shapes_derivatives_tmp[s] = &(alloc<Real>(sstr_shapesd.str(),
- nb_element*nb_quadrature_points,
- size_of_shapesd));
- Real * shapesd_val = shapes_derivatives_tmp[s]->values;
- Real local_coord[spatial_dimension * nb_nodes_per_element];
- for (UInt elem = 0; elem < nb_element; ++elem) {
- mesh->extractNodalValuesFromElement(mesh->getNodes(),
- local_coord,
- elem_val+elem*nb_nodes_per_element,
- nb_nodes_per_element,
- spatial_dimension);
-
- // compute shape derivatives
- ElementClass<type>::computeShapeDerivatives(natural_coords,
- nb_quadrature_points,
- spatial_dimension,
- shapesd_val, local_coord, s);
-
- shapesd_val += size_of_shapesd*nb_quadrature_points;
- }
- }
-
- shapes_derivatives(type, ghost_type) = shapes_derivatives_tmp;
-
- AKANTU_DEBUG_OUT();
-}
-
-/* -------------------------------------------------------------------------- */
-template <ElementType type>
-void ShapeLinked::interpolateOnControlPoints(const Vector<Real> &in_u,
- Vector<Real> &out_uq,
- UInt nb_degree_of_freedom,
- const GhostType & ghost_type,
- const Vector<UInt> * filter_elements,
- bool accumulate,
- UInt id_shape,
- UInt num_degre_of_freedom_to_interpolate,
- UInt num_degre_of_freedom_interpolated) const {
- AKANTU_DEBUG_IN();
-
- Vector<Real> * shapes_loc;
- UInt nb_element;
- UInt * conn_val;
-
- shapes_loc = shapes(type, ghost_type)[id_shape];
- nb_element = mesh->getNbElement(type, ghost_type);
- conn_val = mesh->getConnectivity(type, ghost_type).values;
-
- AKANTU_DEBUG_ASSERT(shapes_loc != NULL,
- "No shapes for the type " << type);
-
- UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
- UInt nb_points = control_points(type, ghost_type).getSize();
- UInt size_of_shapes = ElementClass<type>::getShapeSize();
-
- UInt * filter_elem_val = NULL;
- if(filter_elements != NULL) {
- nb_element = filter_elements->getSize();
- filter_elem_val = filter_elements->values;
- }
-
- if(!accumulate)
- out_uq.clear();
-
- Real * shape_val = shapes_loc->values;
- Real * u_val = in_u.values;
- Real * uq_val = out_uq.values;
-
- UInt offset_uq = out_uq.getNbComponent()*nb_points;
-
- Real * shape = shape_val;
- Real * u = static_cast<Real *>(calloc(nb_nodes_per_element,
- sizeof(Real)));
-
- Real * uq = static_cast<Real *>(calloc(nb_points,
- sizeof(Real)));
-
- for (UInt el = 0; el < nb_element; ++el) {
- UInt el_offset = el * nb_nodes_per_element;
- if(filter_elements != NULL) {
- shape = shape_val + filter_elem_val[el] * size_of_shapes*nb_points;
- el_offset = filter_elem_val[el] * nb_nodes_per_element;
- }
-
- for (UInt n = 0; n < nb_nodes_per_element; ++n) {
- u[n] = u_val[conn_val[el_offset + n] * nb_degree_of_freedom + num_degre_of_freedom_to_interpolate];
- }
-
- /// Uq = Shape * U : matrix product
- Math::matrix_matrix(nb_points, 1, nb_nodes_per_element,
- shape, u, uq);
-
- for (UInt p = 0; p < nb_points; ++p) {
- uq_val[p*nb_degree_of_freedom + num_degre_of_freedom_interpolated] += uq[p];
- }
-
- uq_val += offset_uq;
- if(filter_elements == NULL) {
- shape += size_of_shapes*nb_points;
- }
- }
-
- free(u);
- free(uq);
-
-#undef INIT_VARIABLES
- AKANTU_DEBUG_OUT();
-}
-
-/* -------------------------------------------------------------------------- */
-template <ElementType type>
-void ShapeLinked::gradientOnControlPoints(const Vector<Real> &in_u,
- Vector<Real> &out_nablauq,
- UInt nb_degree_of_freedom,
- const GhostType & ghost_type,
- const Vector<UInt> * filter_elements,
- bool accumulate,
- UInt id_shape,
- UInt num_degre_of_freedom_to_interpolate,
- UInt num_degre_of_freedom_interpolated) const {
- AKANTU_DEBUG_IN();
-
- Vector<Real> * shapesd_loc;
- UInt nb_element;
- UInt * conn_val;
-
- shapesd_loc = shapes_derivatives(type, ghost_type)[id_shape];
- nb_element = mesh->getNbElement(type, ghost_type);
- conn_val = mesh->getConnectivity(type, ghost_type).values;
-
-
- AKANTU_DEBUG_ASSERT(shapesd_loc != NULL,
- "No shapes for the type " << type);
-
- UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
- UInt size_of_shapes_derivatives = ElementClass<type>::getShapeDerivativesSize();
- UInt nb_points = control_points(type, ghost_type).getSize();
- UInt element_dimension = ElementClass<type>::getSpatialDimension();
-
- UInt * filter_elem_val = NULL;
- if(filter_elements != NULL) {
- nb_element = filter_elements->getSize();
- filter_elem_val = filter_elements->values;
- }
-
- if(!accumulate)
- out_nablauq.clear();
-
- Real * shaped_val = shapesd_loc->values;
- Real * u_val = in_u.values;
- Real * nablauq_val = out_nablauq.values;
-
- UInt offset_nablauq = nb_degree_of_freedom * element_dimension;
- UInt offset_shaped = nb_nodes_per_element * element_dimension;
-
- Real * shaped = shaped_val;
- Real * u = static_cast<Real *>(calloc(nb_nodes_per_element,
- sizeof(Real)));
-
- Real * nabla_uq = static_cast<Real *>(calloc(element_dimension,
- sizeof(Real)));
-
-
- for (UInt el = 0; el < nb_element; ++el) {
- UInt el_offset = el * nb_nodes_per_element;
- if(filter_elements != NULL) {
- shaped = shaped_val + filter_elem_val[el] * size_of_shapes_derivatives*nb_points;
- el_offset = filter_elem_val[el] * nb_nodes_per_element;
- }
-
- for (UInt n = 0; n < nb_nodes_per_element; ++n) {
- u[n] = u_val[conn_val[el_offset + n] * nb_degree_of_freedom + num_degre_of_freedom_to_interpolate];
- }
-
- for (UInt q = 0; q < nb_points; ++q) {
- /// \nabla(U) = U^t * dphi/dx
- Math::matrixt_matrix(1, element_dimension, nb_nodes_per_element,
- u,
- shaped,
- nabla_uq);
-
- for (UInt s = 0; s < element_dimension; ++s) {
- nablauq_val[num_degre_of_freedom_interpolated * element_dimension + s] += nabla_uq[s];
- }
-
- nablauq_val += offset_nablauq;
- shaped += offset_shaped;
- }
- }
-
- free(u);
- free(nabla_uq);
-
-#undef INIT_VARIABLES
- AKANTU_DEBUG_OUT();
-}
-
-// /* -------------------------------------------------------------------------- */
-// template <ElementType type>
-// void ShapeLinked::setControlPointsByType(Vector<Real> & points){
-// control_points[type] = &points;
-// }
-
-
-/* -------------------------------------------------------------------------- */
-/* template instanciation */
-/* -------------------------------------------------------------------------- */
-
-#define INSTANCIATE_TEMPLATE_CLASS(type) \
- template void ShapeLinked::precomputeShapesOnControlPoints<type>(const GhostType & ghost_type); \
- template void ShapeLinked::precomputeShapeDerivativesOnControlPoints<type>(const GhostType & ghost_type); \
- template void ShapeLinked::gradientOnControlPoints<type>(const Vector<Real> &in_u, \
- Vector<Real> &out_nablauq, \
- UInt num_degre_of_freedom, \
- const GhostType & ghost_type, \
- const Vector<UInt> * filter_elements, \
- bool accumulate, \
- UInt id_shape, \
- UInt num_degre_of_freedom_to_interpolate, \
- UInt num_degre_of_freedom_interpolated) const; \
- template void ShapeLinked::interpolateOnControlPoints<type>(const Vector<Real> &in_u, \
- Vector<Real> &out_uq, \
- UInt num_degre_of_freedom, \
- const GhostType & ghost_type, \
- const Vector<UInt> * filter_elements, \
- bool accumulate, \
- UInt id_shape, \
- UInt num_degre_of_freedom_to_interpolate, \
- UInt num_degre_of_freedom_interpolated) const;
-
-AKANTU_BOOST_REGULAR_ELEMENT_LIST(INSTANCIATE_TEMPLATE_CLASS)
-#undef INSTANCIATE_TEMPLATE_CLASS
-
__END_AKANTU__
diff --git a/src/fem/shape_linked.hh b/src/fem/shape_linked.hh
index b3a96d149..0c78a04e3 100644
--- a/src/fem/shape_linked.hh
+++ b/src/fem/shape_linked.hh
@@ -1,141 +1,157 @@
/**
* @file shape_linked.hh
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
* @author Fabian Barras <fabian.barras@epfl.ch>
*
* @date Fri Jul 15 19:41:58 2011
*
* @brief shape class for element with different set of shapes functions
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "shape_functions.hh"
#ifndef __AKANTU_SHAPE_LINKED_HH__
#define __AKANTU_SHAPE_LINKED_HH__
__BEGIN_AKANTU__
+template <ElementKind kind>
class ShapeLinked : public ShapeFunctions {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
typedef ByElementType<Vector<Real> **> ByElementTypeMultiReal;
ShapeLinked(Mesh & mesh, const ID & id = "shape_linked", const MemoryID & memory_id = 0);
virtual ~ShapeLinked(){};
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
+ inline void initShapeFunctions(const Vector<Real> & nodes,
+ const types::Matrix<Real> & control_points,
+ const ElementType & type,
+ const GhostType & ghost_type);
/// pre compute all shapes on the element control points from natural coordinates
template <ElementType type>
- void precomputeShapesOnControlPoints(const GhostType & ghost_type);
+ void precomputeShapesOnControlPoints(const Vector<Real> & nodes,
+ const GhostType & ghost_type);
/// pre compute all shapes on the element control points from natural coordinates
template <ElementType type>
- void precomputeShapeDerivativesOnControlPoints(const GhostType & ghost_type);
+ void precomputeShapeDerivativesOnControlPoints(const Vector<Real> & nodes,
+ const GhostType & ghost_type);
/// interpolate nodal values on the control points
template <ElementType type>
void interpolateOnControlPoints(const Vector<Real> &u,
Vector<Real> &uq,
UInt nb_degree_of_freedom,
const GhostType & ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL,
bool accumulate = false,
UInt id_shape = 0,
UInt num_degre_of_freedom_to_interpolate = 0,
UInt num_degre_of_freedom_interpolated = 0) const;
/// compute the gradient of u on the control points
template <ElementType type>
void gradientOnControlPoints(const Vector<Real> &u,
Vector<Real> &nablauq,
UInt nb_degree_of_freedom,
const GhostType & ghost_type = _not_ghost,
const Vector<UInt> * filter_elements = NULL,
bool accumulate = false,
UInt id_shape = 0,
UInt num_degre_of_freedom_to_interpolate = 0,
UInt num_degre_of_freedom_interpolated = 0) const;
/// multiply a field by shape functions
template <ElementType type>
void fieldTimesShapes(__attribute__((unused)) const Vector<Real> & field,
__attribute__((unused)) Vector<Real> & fiedl_times_shapes,
__attribute__((unused)) const GhostType & ghost_type) const {
AKANTU_DEBUG_TO_IMPLEMENT();
}
+
+private:
+ template <ElementType type>
+ void extractNodalToElementField(const Vector<Real> & nodal_f,
+ Vector<Real> & elemental_f,
+ UInt num_degre_of_freedom_to_extract,
+ const GhostType & ghost_type,
+ const Vector<UInt> * filter_elements) const;
+
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
/// get a the shapes vector
inline const Vector<Real> & getShapes(const ElementType & type,
const GhostType & ghost_type,
UInt id = 0) const;
/// get a the shapes derivatives vector
inline const Vector<Real> & getShapesDerivatives(const ElementType & type,
const GhostType & ghost_type,
UInt id = 0) const;
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
private:
/// shape functions for all elements
ByElementTypeMultiReal shapes;
/// shape derivatives for all elements
ByElementTypeMultiReal shapes_derivatives;
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
#if defined (AKANTU_INCLUDE_INLINE_IMPL)
# include "shape_linked_inline_impl.cc"
#endif
/// standard output stream operator
// inline std::ostream & operator <<(std::ostream & stream, const ShapeLinked & _this)
// {
// _this.printself(stream);
// return stream;
// }
__END_AKANTU__
#endif /* __AKANTU_SHAPE_LINKED_HH__ */
diff --git a/src/fem/shape_linked_inline_impl.cc b/src/fem/shape_linked_inline_impl.cc
index 8e8e58037..855c92966 100644
--- a/src/fem/shape_linked_inline_impl.cc
+++ b/src/fem/shape_linked_inline_impl.cc
@@ -1,52 +1,327 @@
/**
* @file shape_linked_inline_impl.cc
*
* @author Fabian Barras <fabian.barras@epfl.ch>
*
* @date Fri Jul 15 19:41:58 2011
*
* @brief ShapeLinked inline implementation
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
+template <ElementKind kind>
+inline void
+ShapeLinked<kind>::initShapeFunctions(const Vector<Real> & nodes,
+ const types::Matrix<Real> & control_points,
+ const ElementType & type,
+ const GhostType & ghost_type) {
+ AKANTU_DEBUG_TO_IMPLEMENT();
+}
+
+#undef INIT_SHAPE_FUNCTIONS
+
/* -------------------------------------------------------------------------- */
-inline const Vector<Real> & ShapeLinked::getShapes(const ElementType & type,
- const GhostType & ghost_type,
- UInt id) const {
+#define INIT_SHAPE_FUNCTIONS(type) \
+ setControlPointsByType<type>(control_points, ghost_type); \
+ precomputeShapesOnControlPoints<type>(nodes, ghost_type); \
+ precomputeShapeDerivativesOnControlPoints<type>(nodes, ghost_type);
+
+template <>
+inline void
+ShapeLinked<_ek_structural>::initShapeFunctions(const Vector<Real> & nodes,
+ const types::Matrix<Real> & control_points,
+ const ElementType & type,
+ const GhostType & ghost_type) {
+ AKANTU_BOOST_STRUCTURAL_ELEMENT_SWITCH(INIT_SHAPE_FUNCTIONS);
+}
+
+#undef INIT_SHAPE_FUNCTIONS
+
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+inline const Vector<Real> & ShapeLinked<kind>::getShapes(const ElementType & type,
+ const GhostType & ghost_type,
+ UInt id) const {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(shapes.exists(type, ghost_type),
"No shapes of type "
<< type << " in " << this->id);
AKANTU_DEBUG_OUT();
return *(shapes(type, ghost_type)[id]);
}
/* -------------------------------------------------------------------------- */
-inline const Vector<Real> & ShapeLinked::getShapesDerivatives(const ElementType & type,
- const GhostType & ghost_type,
- UInt id) const {
+template <ElementKind kind>
+inline const Vector<Real> & ShapeLinked<kind>::getShapesDerivatives(const ElementType & type,
+ const GhostType & ghost_type,
+ UInt id) const {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(shapes_derivatives.exists(type, ghost_type),
"No shapes_derivatives of type "
<< type << " in " << this->id);
AKANTU_DEBUG_OUT();
return *(shapes_derivatives(type, ghost_type)[id]);
}
+
+/* -------------------------------------------------------------------------- */
+template <>
+template <ElementType type>
+void ShapeLinked<_ek_structural>::precomputeShapesOnControlPoints(const Vector<Real> & nodes,
+ const GhostType & ghost_type) {
+ AKANTU_DEBUG_IN();
+
+ // Real * coord = mesh->getNodes().values;
+ UInt spatial_dimension = mesh->getSpatialDimension();
+ UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
+
+ types::Matrix<Real> & natural_coords = control_points(type, ghost_type);
+ UInt nb_points = control_points(type, ghost_type).cols();
+
+ UInt size_of_shapes = ElementClass<type>::getShapeSize();
+
+ std::string ghost = "";
+ if(ghost_type == _ghost) {
+ ghost = "ghost_";
+ }
+
+ UInt nb_element = mesh->getNbElement(type, ghost_type);
+ UInt nb_shape_functions = ElementClass<type, _ek_structural>::getNbShapeFunctions();
+
+ Vector<Real> ** shapes_tmp = new Vector<Real> *[nb_shape_functions];
+
+ Vector<Real> x_el(0, spatial_dimension * nb_nodes_per_element);
+ FEM::extractNodalToElementField(*mesh, nodes, x_el,
+ type, ghost_type);
+
+ for (UInt s = 0; s < nb_shape_functions; ++s) {
+ std::stringstream sstr_shapes;
+ sstr_shapes << id << ":" << ghost << "shapes:" << type << ":" << s;
+ shapes_tmp[s] = &(alloc<Real>(sstr_shapes.str(),
+ nb_element*nb_points,
+ size_of_shapes));
+ Vector<Real>::iterator< types::Matrix<Real> > x_it = x_el.begin(spatial_dimension,
+ nb_nodes_per_element);
+ Vector<Real>::iterator< types::Matrix<Real> > shapes_it =
+ shapes_tmp[s]->begin_reinterpret(size_of_shapes, nb_points, nb_element);
+
+ for (UInt elem = 0; elem < nb_element; ++elem, ++shapes_it, ++x_it) {
+ types::Matrix<Real> & X = *x_it;
+ types::Matrix<Real> & N = *shapes_it;
+ ElementClass<type>::computeShapes(natural_coords,
+ N, X,
+ s);
+ }
+ }
+
+ shapes(type, ghost_type) = shapes_tmp;
+
+ AKANTU_DEBUG_OUT();
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+template <ElementType type>
+void ShapeLinked<kind>::precomputeShapeDerivativesOnControlPoints(const Vector<Real> & nodes,
+ const GhostType & ghost_type) {
+ AKANTU_DEBUG_IN();
+
+ // Real * coord = mesh->getNodes().values;
+ UInt spatial_dimension = mesh->getSpatialDimension();
+ UInt natural_spatial_dimension = ElementClass<type>::getNaturalSpaceDimension();
+
+ UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
+ UInt size_of_shapesd = ElementClass<type>::getShapeDerivativesSize();
+ types::Matrix<Real> & natural_coords = control_points(type, ghost_type);
+ UInt nb_points = natural_coords.cols();
+
+ UInt nb_element = mesh->getNbElement(type, ghost_type);
+ std::string ghost = "";
+
+ if(ghost_type == _ghost) {
+ ghost = "ghost_";
+ }
+
+ Vector<Real> x_el(0, spatial_dimension * nb_nodes_per_element);
+ FEM::extractNodalToElementField(*mesh, nodes, x_el,
+ type, ghost_type);
+
+ UInt nb_shape_functions = ElementClass<type>::getNbShapeFunctions();
+
+ Vector<Real> ** shapes_derivatives_tmp = new Vector<Real> *[nb_shape_functions];
+ for (UInt s = 0; s < nb_shape_functions; ++s) {
+ std::stringstream sstr_shapesd;
+ sstr_shapesd << id << ":" << ghost << "shapes_derivatives:" << type << ":" << s;
+ shapes_derivatives_tmp[s] = &(alloc<Real>(sstr_shapesd.str(),
+ nb_element*nb_points,
+ size_of_shapesd));
+ Real * shapesd_val = shapes_derivatives_tmp[s]->values;
+
+ Vector<Real>::iterator< types::Matrix<Real> > x_it = x_el.begin(spatial_dimension,
+ nb_nodes_per_element);
+
+ for (UInt elem = 0; elem < nb_element; ++elem, ++x_it) {
+ // compute shape derivatives
+ types::Matrix<Real> & X = *x_it;
+ types::Tensor3<Real> B(shapesd_val,
+ natural_spatial_dimension, nb_nodes_per_element, nb_points);
+ ElementClass<type>::computeShapeDerivatives(natural_coords,
+ B, X, s);
+
+ shapesd_val += size_of_shapesd*nb_points;
+ }
+ }
+
+ shapes_derivatives(type, ghost_type) = shapes_derivatives_tmp;
+
+ AKANTU_DEBUG_OUT();
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+template <ElementType type>
+void ShapeLinked<kind>::extractNodalToElementField(const Vector<Real> & nodal_f,
+ Vector<Real> & elemental_f,
+ UInt num_degre_of_freedom_to_extract,
+ const GhostType & ghost_type,
+ const Vector<UInt> * filter_elements) const{
+ AKANTU_DEBUG_IN();
+
+ UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
+ UInt nb_degree_of_freedom = nodal_f.getNbComponent();
+ UInt nb_element = mesh->getNbElement(type, ghost_type);
+ UInt * conn_val = mesh->getConnectivity(type, ghost_type).storage();
+
+ UInt * filter_elem_val = NULL;
+ if(filter_elements != NULL) {
+ nb_element = filter_elements->getSize();
+ filter_elem_val = filter_elements->storage();
+ }
+
+ elemental_f.resize(nb_element);
+
+ Real * nodal_f_val = nodal_f.storage();
+ Real * f_val = elemental_f.storage();
+
+ UInt * el_conn;
+ for (UInt el = 0; el < nb_element; ++el) {
+ if(filter_elements != NULL) el_conn = conn_val + filter_elem_val[el] * nb_nodes_per_element;
+ else el_conn = conn_val + el * nb_nodes_per_element;
+
+ for (UInt n = 0; n < nb_nodes_per_element; ++n) {
+ UInt node = *(el_conn + n);
+ *f_val = nodal_f_val[node * nb_degree_of_freedom + num_degre_of_freedom_to_extract];
+ f_val += 1;
+ }
+ }
+
+ AKANTU_DEBUG_OUT();
+}
+
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+template <ElementType type>
+void ShapeLinked<kind>::interpolateOnControlPoints(const Vector<Real> &in_u,
+ Vector<Real> &out_uq,
+ UInt nb_degree_of_freedom,
+ const GhostType & ghost_type,
+ const Vector<UInt> * filter_elements,
+ bool accumulate,
+ UInt id_shape,
+ UInt num_degre_of_freedom_to_interpolate,
+ UInt num_degre_of_freedom_interpolated) const {
+ AKANTU_DEBUG_IN();
+
+ Vector<Real> * shapes_loc = shapes(type, ghost_type)[id_shape];
+
+ AKANTU_DEBUG_ASSERT(shapes_loc != NULL,
+ "No shapes for the type " << type);
+
+ UInt nb_nodes_per_element = ElementClass<type>::getNbNodesPerElement();
+ Vector<Real> u_el(0, nb_nodes_per_element);
+ extractNodalToElementField<type>(in_u, u_el, num_degre_of_freedom_to_interpolate,
+ ghost_type, filter_elements);
+
+ if(!accumulate) out_uq.clear();
+
+ UInt nb_points = control_points(type, ghost_type).cols() * u_el.getSize();
+ Vector<Real> uq(nb_points, 1, 0.);
+
+ this->template interpolateElementalFieldOnControlPoints<type>(u_el,
+ uq,
+ ghost_type,
+ *shapes_loc,
+ filter_elements);
+
+ for (UInt q = 0; q < nb_points; ++q) {
+ out_uq(q, num_degre_of_freedom_to_interpolate) += uq(q);
+ }
+
+
+ AKANTU_DEBUG_OUT();
+}
+
+/* -------------------------------------------------------------------------- */
+template <ElementKind kind>
+template <ElementType type>
+void ShapeLinked<kind>::gradientOnControlPoints(const Vector<Real> &in_u,
+ Vector<Real> &out_nablauq,
+ UInt nb_degree_of_freedom,
+ const GhostType & ghost_type,
+ const Vector<UInt> * filter_elements,
+ bool accumulate,
+ UInt id_shape,
+ UInt num_degre_of_freedom_to_interpolate,
+ UInt num_degre_of_freedom_interpolated) const {
+ AKANTU_DEBUG_IN();
+
+ Vector<Real> * shapesd_loc = shapes_derivatives(type, ghost_type)[id_shape];
+
+ AKANTU_DEBUG_ASSERT(shapesd_loc != NULL,
+ "No shapes for the type " << type);
+
+ UInt nb_nodes_per_element = ElementClass<type>::getNbNodesPerElement();
+ Vector<Real> u_el(0, nb_nodes_per_element);
+ extractNodalToElementField<type>(in_u, u_el, num_degre_of_freedom_to_interpolate, ghost_type, filter_elements);
+
+ UInt nb_points = control_points(type, ghost_type).cols() * u_el.getSize();
+ UInt element_dimension = ElementClass<type>::getSpatialDimension();
+
+ Vector<Real> nablauq(nb_points, element_dimension, 0.);
+
+ if(!accumulate) out_nablauq.clear();
+ this->template gradientElementalFieldOnControlPoints<type>(u_el,
+ nablauq,
+ ghost_type,
+ *shapesd_loc,
+ filter_elements);
+
+ Vector<Real>::iterator<types::RMatrix> nabla_u_it = nablauq.begin(1, element_dimension);
+ Vector<Real>::iterator<types::RMatrix> out_nabla_u_it = out_nablauq.begin(nb_degree_of_freedom, element_dimension);
+ for (UInt q = 0; q < nb_points; ++q, ++nabla_u_it, ++out_nabla_u_it) {
+ for (UInt s = 0; s < element_dimension; ++s) {
+ (*out_nabla_u_it)(num_degre_of_freedom_to_interpolate, s) += (*nabla_u_it)(0, s);
+ }
+ }
+
+ AKANTU_DEBUG_OUT();
+}
diff --git a/src/mesh_utils/mesh_io.cc b/src/io/mesh_io.cc
similarity index 100%
rename from src/mesh_utils/mesh_io.cc
rename to src/io/mesh_io.cc
diff --git a/src/mesh_utils/mesh_io.hh b/src/io/mesh_io.hh
similarity index 94%
rename from src/mesh_utils/mesh_io.hh
rename to src/io/mesh_io.hh
index c96a315e8..13f51ae2a 100644
--- a/src/mesh_utils/mesh_io.hh
+++ b/src/io/mesh_io.hh
@@ -1,98 +1,95 @@
/**
* @file mesh_io.hh
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Jun 18 11:47:19 2010
*
* @brief interface of a mesh io class, reader and writer
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_MESH_IO_HH__
#define __AKANTU_MESH_IO_HH__
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
class MeshIO {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
MeshIO();
virtual ~MeshIO();
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
void read(const std::string & filename, Mesh & mesh, const MeshIOType & type);
void write(const std::string & filename, Mesh & mesh, const MeshIOType & type);
/// read a mesh from the file
virtual void read(__attribute__((unused)) const std::string & filename,
- __attribute__((unused)) Mesh & mesh) {
- AKANTU_DEBUG_TO_IMPLEMENT();
- };
+ __attribute__((unused)) Mesh & mesh) {
+ }
/// write a mesh to a file
virtual void write(__attribute__((unused)) const std::string & filename,
- __attribute__((unused)) const Mesh & mesh) {
- AKANTU_DEBUG_TO_IMPLEMENT();
- };
+ __attribute__((unused)) const Mesh & mesh) {}
private:
MeshIO * getMeshIO(const std::string & filename, const MeshIOType & type);
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
protected:
bool canReadSurface;
bool canReadExtendedData;
// std::string filename;
// Mesh & mesh;
};
__END_AKANTU__
#endif /* __AKANTU_MESH_IO_HH__ */
#include "mesh_io_msh.hh"
#include "mesh_io_diana.hh"
diff --git a/src/mesh_utils/mesh_io/mesh_io_abaqus.cc b/src/io/mesh_io/mesh_io_abaqus.cc
similarity index 100%
rename from src/mesh_utils/mesh_io/mesh_io_abaqus.cc
rename to src/io/mesh_io/mesh_io_abaqus.cc
diff --git a/src/mesh_utils/mesh_io/mesh_io_abaqus.hh b/src/io/mesh_io/mesh_io_abaqus.hh
similarity index 100%
copy from src/mesh_utils/mesh_io/mesh_io_abaqus.hh
copy to src/io/mesh_io/mesh_io_abaqus.hh
diff --git a/src/mesh_utils/mesh_io/mesh_io_diana.cc b/src/io/mesh_io/mesh_io_diana.cc
similarity index 100%
rename from src/mesh_utils/mesh_io/mesh_io_diana.cc
rename to src/io/mesh_io/mesh_io_diana.cc
diff --git a/src/mesh_utils/mesh_io/mesh_io_diana.hh b/src/io/mesh_io/mesh_io_diana.hh
similarity index 100%
rename from src/mesh_utils/mesh_io/mesh_io_diana.hh
rename to src/io/mesh_io/mesh_io_diana.hh
diff --git a/src/mesh_utils/mesh_io/mesh_io_msh.cc b/src/io/mesh_io/mesh_io_msh.cc
similarity index 96%
rename from src/mesh_utils/mesh_io/mesh_io_msh.cc
rename to src/io/mesh_io/mesh_io_msh.cc
index 143dbb0c3..fb7487371 100644
--- a/src/mesh_utils/mesh_io/mesh_io_msh.cc
+++ b/src/io/mesh_io/mesh_io_msh.cc
@@ -1,477 +1,489 @@
/**
* @file mesh_io_msh.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Jun 18 11:47:19 2010
*
* @brief Read/Write for MSH files generated by gmsh
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -----------------------------------------------------------------------------
Version (Legacy) 1.0
$NOD
number-of-nodes
node-number x-coord y-coord z-coord
...
$ENDNOD
$ELM
number-of-elements
elm-number elm-type reg-phys reg-elem number-of-nodes node-number-list
...
$ENDELM
-----------------------------------------------------------------------------
Version 2.1
$MeshFormat
version-number file-type data-size
$EndMeshFormat
$Nodes
number-of-nodes
node-number x-coord y-coord z-coord
...
$EndNodes
$Elements
number-of-elements
elm-number elm-type number-of-tags < tag > ... node-number-list
...
$EndElements
$PhysicalNames
number-of-names
physical-dimension physical-number "physical-name"
...
$EndPhysicalNames
$NodeData
number-of-string-tags
< "string-tag" >
...
number-of-real-tags
< real-tag >
...
number-of-integer-tags
< integer-tag >
...
node-number value ...
...
$EndNodeData
$ElementData
number-of-string-tags
< "string-tag" >
...
number-of-real-tags
< real-tag >
...
number-of-integer-tags
< integer-tag >
...
elm-number value ...
...
$EndElementData
$ElementNodeData
number-of-string-tags
< "string-tag" >
...
number-of-real-tags
< real-tag >
...
number-of-integer-tags
< integer-tag >
...
elm-number number-of-nodes-per-element value ...
...
$ElementEndNodeData
-----------------------------------------------------------------------------
elem-type
1: 2-node line.
2: 3-node triangle.
3: 4-node quadrangle.
4: 4-node tetrahedron.
5: 8-node hexahedron.
6: 6-node prism.
7: 5-node pyramid.
8: 3-node second order line
9: 6-node second order triangle
10: 9-node second order quadrangle
11: 10-node second order tetrahedron
12: 27-node second order hexahedron
13: 18-node second order prism
14: 14-node second order pyramid
15: 1-node point.
16: 8-node second order quadrangle
17: 20-node second order hexahedron
18: 15-node second order prism
19: 13-node second order pyramid
20: 9-node third order incomplete triangle
21: 10-node third order triangle
22: 12-node fourth order incomplete triangle
23: 15-node fourth order triangle
24: 15-node fifth order incomplete triangle
25: 21-node fifth order complete triangle
26: 4-node third order edge
27: 5-node fourth order edge
28: 6-node fifth order edge
29: 20-node third order tetrahedron
30: 35-node fourth order tetrahedron
31: 56-node fifth order tetrahedron
-------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
#include <fstream>
/* -------------------------------------------------------------------------- */
#include "mesh_io_msh.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
/* Methods Implentations */
/* -------------------------------------------------------------------------- */
MeshIOMSH::MeshIOMSH() {
canReadSurface = true;
canReadExtendedData = true;
_msh_nodes_per_elem[_msh_not_defined ] = 0;
_msh_nodes_per_elem[_msh_segment_2 ] = 2;
_msh_nodes_per_elem[_msh_triangle_3 ] = 3;
_msh_nodes_per_elem[_msh_quadrangle_4 ] = 4;
_msh_nodes_per_elem[_msh_tetrahedron_4 ] = 4;
_msh_nodes_per_elem[_msh_hexahedron_8 ] = 8;
_msh_nodes_per_elem[_msh_prism_1 ] = 1;
_msh_nodes_per_elem[_msh_pyramid_1 ] = 1;
_msh_nodes_per_elem[_msh_segment_3 ] = 3;
_msh_nodes_per_elem[_msh_triangle_6 ] = 6;
_msh_nodes_per_elem[_msh_quadrangle_9 ] = 9;
_msh_nodes_per_elem[_msh_tetrahedron_10] = 10;
_msh_nodes_per_elem[_msh_hexahedron_27 ] = 27;
_msh_nodes_per_elem[_msh_prism_18 ] = 18;
_msh_nodes_per_elem[_msh_pyramid_14 ] = 14;
_msh_nodes_per_elem[_msh_point ] = 1;
_msh_nodes_per_elem[_msh_quadrangle_8 ] = 8;
_msh_to_akantu_element_types[_msh_not_defined ] = _not_defined;
_msh_to_akantu_element_types[_msh_segment_2 ] = _segment_2;
_msh_to_akantu_element_types[_msh_triangle_3 ] = _triangle_3;
_msh_to_akantu_element_types[_msh_quadrangle_4 ] = _quadrangle_4;
_msh_to_akantu_element_types[_msh_tetrahedron_4 ] = _tetrahedron_4;
_msh_to_akantu_element_types[_msh_hexahedron_8 ] = _hexahedron_8;
_msh_to_akantu_element_types[_msh_prism_1 ] = _not_defined;
_msh_to_akantu_element_types[_msh_pyramid_1 ] = _not_defined;
_msh_to_akantu_element_types[_msh_segment_3 ] = _segment_3;
_msh_to_akantu_element_types[_msh_triangle_6 ] = _triangle_6;
_msh_to_akantu_element_types[_msh_quadrangle_9 ] = _not_defined;
_msh_to_akantu_element_types[_msh_tetrahedron_10] = _tetrahedron_10;
_msh_to_akantu_element_types[_msh_hexahedron_27 ] = _not_defined;
_msh_to_akantu_element_types[_msh_prism_18 ] = _not_defined;
_msh_to_akantu_element_types[_msh_pyramid_14 ] = _not_defined;
_msh_to_akantu_element_types[_msh_point ] = _not_defined;
_msh_to_akantu_element_types[_msh_quadrangle_8 ] = _quadrangle_8;
_akantu_to_msh_element_types[_not_defined ] = _msh_not_defined;
_akantu_to_msh_element_types[_segment_2 ] = _msh_segment_2;
_akantu_to_msh_element_types[_segment_3 ] = _msh_segment_3;
_akantu_to_msh_element_types[_triangle_3 ] = _msh_triangle_3;
_akantu_to_msh_element_types[_triangle_6 ] = _msh_triangle_6;
_akantu_to_msh_element_types[_tetrahedron_4 ] = _msh_tetrahedron_4;
_akantu_to_msh_element_types[_tetrahedron_10 ] = _msh_tetrahedron_10;
_akantu_to_msh_element_types[_quadrangle_4 ] = _msh_quadrangle_4;
_akantu_to_msh_element_types[_quadrangle_8 ] = _msh_quadrangle_8;
_akantu_to_msh_element_types[_hexahedron_8 ] = _msh_hexahedron_8;
- _akantu_to_msh_element_types[_point ] = _msh_point;
+ _akantu_to_msh_element_types[_point_1 ] = _msh_point;
_akantu_to_msh_element_types[_bernoulli_beam_2] = _msh_segment_2;
std::map<ElementType, MSHElementType>::iterator it;
for(it = _akantu_to_msh_element_types.begin();
it != _akantu_to_msh_element_types.end(); ++it) {
UInt nb_nodes = _msh_nodes_per_elem[it->second];
UInt * tmp = new UInt[nb_nodes];
for (UInt i = 0; i < nb_nodes; ++i) {
tmp[i] = i;
}
switch(it->first) {
case _tetrahedron_10:
tmp[8] = 9;
tmp[9] = 8;
break;
default:
//nothing to change
break;
}
_read_order[it->first] = tmp;
}
}
/* -------------------------------------------------------------------------- */
MeshIOMSH::~MeshIOMSH() {
std::map<ElementType, MSHElementType>::iterator it;
for(it = _akantu_to_msh_element_types.begin();
it != _akantu_to_msh_element_types.end(); ++it) {
delete [] _read_order[it->first];
}
}
/* -------------------------------------------------------------------------- */
void MeshIOMSH::read(const std::string & filename, Mesh & mesh) {
std::ifstream infile;
infile.open(filename.c_str());
std::string line;
UInt first_node_number = std::numeric_limits<UInt>::max(), last_node_number = 0,
file_format = 1, current_line = 0;
if(!infile.good()) {
AKANTU_DEBUG_ERROR("Cannot open file " << filename);
}
while(infile.good()) {
std::getline(infile, line);
current_line++;
/// read the header
if(line == "$MeshFormat") {
std::getline(infile, line); /// the format line
std::stringstream sstr(line);
std::string version; sstr >> version;
Int format; sstr >> format;
if(format != 0) AKANTU_DEBUG_ERROR("This reader can only read ASCII files.");
std::getline(infile, line); /// the end of block line
current_line += 2;
file_format = 2;
}
/// read all nodes
if(line == "$Nodes" || line == "$NOD") {
UInt nb_nodes;
std::getline(infile, line);
std::stringstream sstr(line);
sstr >> nb_nodes;
current_line++;
Vector<Real> & nodes = const_cast<Vector<Real> &>(mesh.getNodes());
nodes.resize(nb_nodes);
mesh.nb_global_nodes = nb_nodes;
UInt index;
Real coord[3];
UInt spatial_dimension = nodes.getNbComponent();
/// for each node, read the coordinates
for(UInt i = 0; i < nb_nodes; ++i) {
UInt offset = i * spatial_dimension;
std::getline(infile, line);
std::stringstream sstr_node(line);
sstr_node >> index >> coord[0] >> coord[1] >> coord[2];
current_line++;
first_node_number = std::min(first_node_number,index);
last_node_number = std::max(last_node_number, index);
/// read the coordinates
for(UInt j = 0; j < spatial_dimension; ++j)
nodes.values[offset + j] = coord[j];
}
std::getline(infile, line); /// the end of block line
}
/// read all elements
if(line == "$Elements" || line == "$ELM") {
UInt nb_elements;
UInt * read_order = NULL;
std::getline(infile, line);
std::stringstream sstr(line);
sstr >> nb_elements;
current_line++;
Int index;
UInt msh_type;
ElementType akantu_type, akantu_type_old = _not_defined;
Vector<UInt> *connectivity = NULL;
UInt node_per_element = 0;
for(UInt i = 0; i < nb_elements; ++i) {
std::getline(infile, line);
std::stringstream sstr_elem(line);
current_line++;
sstr_elem >> index;
sstr_elem >> msh_type;
/// get the connectivity vector depending on the element type
akantu_type = _msh_to_akantu_element_types[(MSHElementType) msh_type];
if(akantu_type == _not_defined) {
AKANTU_DEBUG_WARNING("Unsuported element kind " << msh_type
<< " at line " << current_line);
continue;
}
if(akantu_type != akantu_type_old) {
connectivity = mesh.getConnectivityPointer(akantu_type);
connectivity->resize(0);
node_per_element = connectivity->getNbComponent();
akantu_type_old = akantu_type;
read_order = _read_order[akantu_type];
}
/// read tags informations
if(file_format == 2) {
UInt nb_tags;
sstr_elem >> nb_tags;
for(UInt j = 0; j < nb_tags; ++j) {
Int tag;
sstr_elem >> tag;
std::stringstream sstr_tag_name; sstr_tag_name << "tag_" << j;
Vector<UInt> * data = mesh.getUIntDataPointer(akantu_type, sstr_tag_name.str(), _not_ghost);
data->push_back(tag);
}
} else if (file_format == 1) {
Int tag;
sstr_elem >> tag; //reg-phys
std::string tag_name = "tag_0";
Vector<UInt> * data = mesh.getUIntDataPointer(akantu_type, tag_name, _not_ghost);
data->push_back(tag);
sstr_elem >> tag; //reg-elem
tag_name = "tag_1";
data = mesh.getUIntDataPointer(akantu_type, tag_name, _not_ghost);
data->push_back(tag);
sstr_elem >> tag; //number-of-nodes
}
UInt local_connect[node_per_element];
for(UInt j = 0; j < node_per_element; ++j) {
UInt node_index;
sstr_elem >> node_index;
AKANTU_DEBUG_ASSERT(node_index <= last_node_number,
"Node number not in range : line " << current_line);
node_index -= first_node_number;
local_connect[read_order[j]] = node_index;
}
connectivity->push_back(local_connect);
}
std::getline(infile, line); /// the end of block line
}
if((line[0] == '$') && (line.find("End") == std::string::npos)) {
AKANTU_DEBUG_WARNING("Unsuported block_kind " << line
<< " at line " << current_line);
}
}
mesh.updateTypesOffsets(_not_ghost);
infile.close();
}
/* -------------------------------------------------------------------------- */
void MeshIOMSH::write(const std::string & filename, const Mesh & mesh) {
std::ofstream outfile;
const Vector<Real> & nodes = mesh.getNodes();
outfile.open(filename.c_str());
outfile << "$MeshFormat" << std::endl;
outfile << "2.1 0 8" << std::endl;;
outfile << "$EndMeshFormat" << std::endl;;
outfile << std::setprecision(std::numeric_limits<Real>::digits10);
outfile << "$Nodes" << std::endl;;
outfile << nodes.getSize() << std::endl;;
outfile << std::uppercase;
for(UInt i = 0; i < nodes.getSize(); ++i) {
Int offset = i * nodes.getNbComponent();
outfile << i+1;
for(UInt j = 0; j < nodes.getNbComponent(); ++j) {
outfile << " " << nodes.values[offset + j];
}
if(nodes.getNbComponent() == 2)
outfile << " " << 0.;
outfile << std::endl;;
}
outfile << std::nouppercase;
outfile << "$EndNodes" << std::endl;;
outfile << "$Elements" << std::endl;;
Mesh::type_iterator it = mesh.firstType();
Mesh::type_iterator end = mesh.lastType();
Int nb_elements = 0;
for(; it != end; ++it) {
const Vector<UInt> & connectivity = mesh.getConnectivity(*it, _not_ghost);
nb_elements += connectivity.getSize();
}
outfile << nb_elements << std::endl;
UInt element_idx = 1;
for(it = mesh.firstType(); it != end; ++it) {
ElementType type = *it;
const Vector<UInt> & connectivity = mesh.getConnectivity(type, _not_ghost);
- const Vector<UInt> & data_tag_0 = mesh.getUIntData(type, "tag_0", _not_ghost);
- const Vector<UInt> & data_tag_1 = mesh.getUIntData(type, "tag_1", _not_ghost);
+ UInt * tag[2] = {NULL, NULL};
+ try {
+ const Vector<UInt> & data_tag_0 = mesh.getUIntData(type, "tag_0", _not_ghost);
+ tag[0] = data_tag_0.storage();
+ } catch(...) {}
+
+ try {
+ const Vector<UInt> & data_tag_1 = mesh.getUIntData(type, "tag_1", _not_ghost);
+ tag[1] = data_tag_1.storage();
+ } catch(...) {}
for(UInt i = 0; i < connectivity.getSize(); ++i) {
UInt offset = i * connectivity.getNbComponent();
- outfile << element_idx << " " << _akantu_to_msh_element_types[type]
- << " 3 " << data_tag_0(i) << " " << data_tag_1(i)
- << " 0"; /// \todo write the real data in the file
+ outfile << element_idx << " " << _akantu_to_msh_element_types[type] << " 3";
+
+ /// \todo write the real data in the file
+ for (UInt t = 0; t < 2; ++t)
+ if(tag[t]) outfile << " " << tag[t][i];
+ else outfile << " 0";
+ outfile << " 0";
for(UInt j = 0; j < connectivity.getNbComponent(); ++j) {
outfile << " " << connectivity.values[offset + j] + 1;
}
outfile << std::endl;
element_idx++;
}
}
outfile << "$EndElements" << std::endl;;
outfile.close();
}
/* -------------------------------------------------------------------------- */
__END_AKANTU__
diff --git a/src/mesh_utils/mesh_io/mesh_io_msh.hh b/src/io/mesh_io/mesh_io_msh.hh
similarity index 100%
rename from src/mesh_utils/mesh_io/mesh_io_msh.hh
rename to src/io/mesh_io/mesh_io_msh.hh
diff --git a/src/mesh_utils/mesh_io/mesh_io_msh_struct.cc b/src/io/mesh_io/mesh_io_msh_struct.cc
similarity index 100%
rename from src/mesh_utils/mesh_io/mesh_io_msh_struct.cc
rename to src/io/mesh_io/mesh_io_msh_struct.cc
diff --git a/src/mesh_utils/mesh_io/mesh_io_msh_struct.hh b/src/io/mesh_io/mesh_io_msh_struct.hh
similarity index 100%
copy from src/mesh_utils/mesh_io/mesh_io_msh_struct.hh
copy to src/io/mesh_io/mesh_io_msh_struct.hh
diff --git a/src/io/model_io.cc b/src/io/model_io.cc
new file mode 100644
index 000000000..bc299dc12
--- /dev/null
+++ b/src/io/model_io.cc
@@ -0,0 +1,20 @@
+/* -------------------------------------------------------------------------- */
+#include "aka_common.hh"
+#include "model_io.hh"
+
+/* -------------------------------------------------------------------------- */
+
+
+__BEGIN_AKANTU__
+
+/* -------------------------------------------------------------------------- */
+ModelIO::ModelIO() {
+}
+
+/* -------------------------------------------------------------------------- */
+ModelIO::~ModelIO() {
+
+}
+/* -------------------------------------------------------------------------- */
+
+__END_AKANTU__
diff --git a/src/io/model_io.hh b/src/io/model_io.hh
new file mode 100644
index 000000000..fa779b138
--- /dev/null
+++ b/src/io/model_io.hh
@@ -0,0 +1,51 @@
+#ifndef __AKANTU_MODEL_IO_HH__
+#define __AKANTU_MODEL_IO_HH__
+
+/* -------------------------------------------------------------------------- */
+#include "aka_common.hh"
+#include "mesh.hh"
+#include "model.hh"
+/* -------------------------------------------------------------------------- */
+
+__BEGIN_AKANTU__
+
+
+
+
+
+class ModelIO {
+ /* ------------------------------------------------------------------------ */
+ /* Constructors/Destructors */
+ /* ------------------------------------------------------------------------ */
+public:
+
+ ModelIO();
+ virtual ~ModelIO();
+
+ /* ------------------------------------------------------------------------ */
+ /* Methods */
+ /* ------------------------------------------------------------------------ */
+public:
+
+ /// read a model from file
+ virtual void read(const std::string & filename, Model & model) = 0;
+
+ /// write a mesh to a file
+ virtual void write(const std::string & filename, const Model & model) = 0;
+
+
+ /* ------------------------------------------------------------------------ */
+ /* Accessors */
+ /* ------------------------------------------------------------------------ */
+public:
+
+ /* ------------------------------------------------------------------------ */
+ /* Class Members */
+ /* ------------------------------------------------------------------------ */
+private:
+
+};
+
+__END_AKANTU__
+
+#endif /* __AKANTU_MODEL_IO_HH__ */
diff --git a/src/io/model_io/model_io_ibarras.cc b/src/io/model_io/model_io_ibarras.cc
new file mode 100644
index 000000000..8b8290d02
--- /dev/null
+++ b/src/io/model_io/model_io_ibarras.cc
@@ -0,0 +1,310 @@
+/**
+ * @file mesh_io_ibarras.cc
+ * @author Fabian Barras <fabian.barras@epfl.ch>
+ * @date Mon Dec 5 17:32:08 2011
+ *
+ * @brief Mesh Reader specially created for Wood's Tower analysis performed by the Institute I-Barras
+ *
+ * @section LICENSE
+ *
+ * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
+ * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
+ *
+ * Akantu is free software: you can 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 3 of the License, or (at your option) any
+ * later version.
+ *
+ * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+/* -------------------------------------------------------------------------- */
+
+
+/* -------------------------------------------------------------------------- */
+
+
+/* -------------------------------------------------------------------------- */
+#include <fstream>
+#include <iostream>
+
+/* -------------------------------------------------------------------------- */
+#include "model_io_ibarras.hh"
+#include "static_communicator.hh"
+#include "aka_math.hh"
+#include "static_communicator.hh"
+#include "sparse_matrix.hh"
+#include "solver.hh"
+#include "integration_scheme_2nd_order.hh"
+/* -------------------------------------------------------------------------- */
+#include <string.h>
+/* -------------------------------------------------------------------------- */
+#include <stdio.h>
+
+__BEGIN_AKANTU__
+
+/* -------------------------------------------------------------------------- */
+/* Methods Implentations */
+/* -------------------------------------------------------------------------- */
+
+void ModelIOIBarras::read(const std::string & filename, Model & mod) {
+
+ if (! dynamic_cast<StructuralMechanicsModel*>(&mod)){
+ AKANTU_DEBUG_ERROR("");
+ }
+
+ StructuralMechanicsModel & model = static_cast<StructuralMechanicsModel&>(mod);
+ Mesh * mesh = new Mesh(3);
+
+ std::ifstream infile;
+ infile.open(filename.c_str());
+
+ std::string line;
+ UInt current_line = 0;
+
+
+ if(!infile.good()) {
+ AKANTU_DEBUG_ERROR("Cannot open file " << filename);
+ }
+
+ // Get Nodes Position
+ std::getline(infile, line);
+ current_line++;
+ std::stringstream sstr(line);
+ UInt nb_nodes;
+ sstr >> nb_nodes;
+
+ UInt spatial_dimension = 3;
+ Real coord[spatial_dimension];
+ Real * temp_nodes = new Real[nb_nodes*spatial_dimension];
+ UInt * connect_to_akantu = new UInt[nb_nodes];
+ std::fill_n(connect_to_akantu ,0, nb_nodes);
+ std::fill_n(temp_nodes ,0., nb_nodes * spatial_dimension);
+ for (UInt i = 0; i < nb_nodes; ++i) {
+ UInt offset = i * spatial_dimension;
+
+ std::getline(infile, line);
+ std::stringstream sstr_node(line);
+ sstr_node >> coord[0] >> coord[1] >> coord[2];
+ current_line++;
+
+ /// read the coordinates of structural nodes and help nodes
+ for(UInt j = 0; j < spatial_dimension; ++j)
+ temp_nodes[offset + j] = coord[j];
+ }
+
+ // Get Connectivities
+ std::getline(infile, line);
+ current_line++;
+ std::stringstream sstr_elem(line);
+ UInt nb_elements;
+ sstr_elem >> nb_elements;
+
+ mesh->addConnectivityType(_bernoulli_beam_3);
+ Vector<UInt> & connectivity = const_cast<Vector<UInt> &>(mesh->getConnectivity(_bernoulli_beam_3));
+
+ connectivity.resize(nb_elements);
+
+ UInt nonodes[2];
+ UInt nb_struct_nodes=1;
+ for (UInt i = 0; i < nb_elements; ++i){
+
+ std::getline(infile, line);
+ std::stringstream sstr_element(line);
+ sstr_element >> nonodes[0] >> nonodes[1];
+ current_line++;
+
+
+ /// read the connectivities
+ for(UInt j = 0; j < 2; ++j){
+
+ if (connect_to_akantu[nonodes[j]-1]==0){
+ connect_to_akantu[nonodes[j]-1]=nb_struct_nodes;
+ ++nb_struct_nodes;
+ }
+ connectivity(i,j)=connect_to_akantu[nonodes[j]-1]-1;
+ }
+ }
+ nb_struct_nodes-=1;
+
+ /// read the coordinates of structural nodes
+ Vector<Real> & nodes = const_cast<Vector<Real> &>(mesh->getNodes());
+ nodes.resize(nb_struct_nodes);
+
+ for(UInt k = 0; k < nb_nodes; ++k){
+ if (connect_to_akantu[k]!=0){
+ for(UInt j = 0; j < spatial_dimension; ++j)
+ nodes(connect_to_akantu[k]-1,j) = temp_nodes[k*spatial_dimension+j];
+ }
+ }
+
+ //MeshPartitionScotch partition(*mesh, spatial_dimension);
+ //partition.reorder();
+
+
+ ///Apply Boundaries
+ model.registerFEMObject<StructuralMechanicsModel::MyFEMType>("StructuralMechanicsModel", *mesh, spatial_dimension);
+
+ model.initModel();
+
+ model.initVectors();
+
+ Vector<bool> & boundary = model.getBoundary();
+
+ std::getline(infile, line);
+ std::stringstream sstr_nb_boundaries(line);
+ UInt nb_boundaries;
+ sstr_nb_boundaries >> nb_boundaries;
+ current_line++;
+
+ for (UInt i = 0; i < nb_boundaries; ++i){
+ std::getline(infile, line);
+ std::stringstream sstr_boundary(line);
+ UInt boundnary_node;
+ sstr_boundary >> boundnary_node;
+ current_line++;
+
+ for (UInt j = 0; j < spatial_dimension; ++j)
+ boundary(connect_to_akantu[boundnary_node-1]-1 ,j)=true;
+ }
+
+ ///Define Materials
+
+ std::getline(infile, line);
+ std::stringstream sstr_nb_materials(line);
+ UInt nb_materials;
+ sstr_nb_materials >> nb_materials;
+ current_line++;
+
+ for (UInt i = 0; i < nb_materials; ++i){
+
+ std::getline(infile, line);
+ std::stringstream sstr_material(line);
+ Real material[6];
+ sstr_material >> material[0] >> material[1] >> material[2] >> material[3] >> material[4] >> material[5];
+ current_line++;
+
+ StructuralMaterial mat;
+ mat.E = material[0];
+ mat.GJ = material[1] * material[2];
+ mat.Iy = material[3];
+ mat.Iz = material[4];
+ mat.A = material[5];
+
+ model.addMaterial(mat);
+ }
+
+ /// Apply normals and Material TO IMPLEMENT
+
+ UInt property[2];
+
+ Vector<UInt> & element_material = model.getElementMaterial(_bernoulli_beam_3);
+
+ mesh->initNormals();
+ Vector<Real> & normals = const_cast<Vector<Real> &>(mesh->getNormals(_bernoulli_beam_3));
+ normals.resize(nb_elements);
+
+ for (UInt i = 0; i < nb_elements; ++i){
+
+ std::getline(infile, line);
+ std::stringstream sstr_properties(line);
+ sstr_properties >> property[0] >> property[1];
+ current_line++;
+
+
+ /// Assign material
+ element_material(i)=property[0]-1;
+
+ /// Compute normals
+
+ Real x[3];
+ Real v[3];
+ Real w[3];
+ Real n[3];
+
+ if (property[1]==0){
+ for (UInt j = 0; j < spatial_dimension; ++j){
+ x[j] = nodes(connectivity(i,1),j) - nodes(connectivity(i,0),j);
+ }
+ n[0] = x[1];
+ n[1] = -x[0];
+ n[2] = 0.;
+
+ }
+
+ else{
+ for (UInt j = 0; j < spatial_dimension; ++j){
+ x[j] = nodes(connectivity(i,1),j) - nodes(connectivity(i,0),j);
+ v[j] = nodes(connectivity(i,1),j) - temp_nodes[(property[1]-1) * spatial_dimension + j];
+ Math::vectorProduct3(x, v, w);
+ Math::vectorProduct3(x, w, n);
+
+ }
+ }
+
+ Math::normalize3(n);
+ for (UInt j = 0; j < spatial_dimension; ++j){
+ normals(i,j) = n[j];
+ }
+ }
+
+ model.computeRotationMatrix(_bernoulli_beam_3);
+ infile.close();
+
+}
+/* -------------------------------------------------------------------------- */
+void ModelIOIBarras::assign_sets(const std::string & filename, StructuralMechanicsModel & model){
+
+ std::ifstream infile;
+ infile.open(filename.c_str());
+
+ std::string line;
+ UInt current_line = 0;
+
+
+ if(!infile.good()) {
+ AKANTU_DEBUG_ERROR("Cannot open file " << filename);
+ }
+
+ // Define Sets of Beams
+
+ Vector<UInt> & set_ID = model.getSet_ID(_bernoulli_beam_3);
+ set_ID.clear();
+
+ std::getline(infile, line);
+ std::stringstream sstr_nb_sets(line);
+ UInt nb_sets;
+ sstr_nb_sets >> nb_sets;
+ current_line++;
+
+ UInt no_element[2];
+
+ for (UInt i = 0; i < nb_sets; ++i){
+ std::getline(infile, line);
+ std::stringstream sstr_set(line);
+ sstr_set >> no_element[0];
+ no_element[1]=no_element[0];
+ sstr_set >> no_element[1];
+
+ while (no_element[0]!=0) {
+
+ for (UInt j = no_element[0]-1 ; j < no_element[1] ; ++j){
+ set_ID(j) = i+1;
+ }
+ std::getline(infile, line);
+ std::stringstream sstr_sets(line);
+ sstr_sets >> no_element[0];
+ no_element[1]=no_element[0];
+ sstr_sets >> no_element[1];
+ }
+ }
+}
+
+__END_AKANTU__
diff --git a/src/mesh_utils/mesh_io/mesh_io_msh_struct.hh b/src/io/model_io/model_io_ibarras.hh
similarity index 58%
rename from src/mesh_utils/mesh_io/mesh_io_msh_struct.hh
rename to src/io/model_io/model_io_ibarras.hh
index 9a25a475f..4f589bd03 100644
--- a/src/mesh_utils/mesh_io/mesh_io_msh_struct.hh
+++ b/src/io/model_io/model_io_ibarras.hh
@@ -1,56 +1,66 @@
/**
- * @file mesh_io_msh_struct.hh
+ * @file model_io_ibarras.hh
+ * @author Fabian Barras <fabian.barras@epfl.ch>
+ * @date Mon Dec 5 17:20:12 2011
*
- * @author Nicolas Richart <nicolas.richart@epfl.ch>
- *
- * @date Fri Jul 15 19:41:58 2011
- *
- * @brief Read/Write for MSH files
+ * @brief
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
-
-#ifndef __AKANTU_MESH_IO_MSH_STRUCT_HH__
-#define __AKANTU_MESH_IO_MSH_STRUCT_HH__
+#ifndef __AKANTU_MODEL_IO_IBARRAS_HH__
+#define __AKANTU_MODEL_IO_IBARRAS_HH__
/* -------------------------------------------------------------------------- */
-#include "mesh_io_msh.hh"
-
+#include "model_io.hh"
+#include "structural_mechanics_model.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
-
-class MeshIOMSHStruct : public MeshIOMSH {
+class ModelIOIBarras : public ModelIO {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
- MeshIOMSHStruct();
+ ModelIOIBarras(){};
+ virtual ~ModelIOIBarras(){};
-};
+ /* ------------------------------------------------------------------------ */
+ /* Methods */
+ /* ------------------------------------------------------------------------ */
+public:
+
+ /// read a model from the file
+ virtual void read(const std::string & filename, Model & model);
+ /// write a model to a file
+ virtual void write(const std::string & filename, const Model & model){};
+
+ /// assign sets of member to an already constructed model
+ virtual void assign_sets(const std::string & filename, StructuralMechanicsModel & model);
+
+};
__END_AKANTU__
-#endif /* __AKANTU_MESH_IO_MSH_STRUCT_HH__ */
+#endif /* __AKANTU_MODEL_IO_IBARRAS_HH__ */
diff --git a/src/mesh_utils/mesh_partition.cc b/src/mesh_utils/mesh_partition.cc
index fd7c168f2..67e389251 100644
--- a/src/mesh_utils/mesh_partition.cc
+++ b/src/mesh_utils/mesh_partition.cc
@@ -1,309 +1,309 @@
/**
* @file mesh_partition.cc
*
* @author David Simon Kammer <david.kammer@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Aug 17 16:19:43 2010
*
* @brief implementation of common part of all partitioner
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "mesh_partition.hh"
#include "mesh_utils.hh"
#include "aka_types.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
MeshPartition::MeshPartition(const Mesh & mesh, UInt spatial_dimension,
const MemoryID & memory_id) :
Memory(memory_id), id("MeshPartitioner"),
mesh(mesh), spatial_dimension(spatial_dimension),
partitions ("partition" , id, memory_id),
ghost_partitions ("ghost_partition" , id, memory_id),
ghost_partitions_offset("ghost_partition_offset", id, memory_id) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
MeshPartition::~MeshPartition() {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/**
* conversion in c++ of the GENDUALMETIS (mesh.c) function wrote by George in
* Metis (University of Minnesota)
*/
void MeshPartition::buildDualGraph(Vector<Int> & dxadj, Vector<Int> & dadjncy,
Vector<Int> & edge_loads,
const EdgeLoadFunctor & edge_load_func,
const Vector<UInt> & pairs) {
AKANTU_DEBUG_IN();
// tweak mesh;
const Mesh::ConnectivityTypeList & type_list = mesh.getConnectivityTypeList();
UInt nb_types = type_list.size();
UInt nb_good_types = 0;
UInt nb_nodes_per_element[nb_types];
UInt nb_nodes_per_element_p1[nb_types];
UInt magic_number[nb_types];
// UInt * conn_val[nb_types];
UInt nb_element[nb_types];
Vector<UInt> * conn[nb_types];
Vector<UInt> * conn_tmp[nb_types];
Vector<Element> lin_to_element;
Element elem;
elem.ghost_type = _not_ghost;
Mesh::ConnectivityTypeList::const_iterator it;
for(it = type_list.begin(); it != type_list.end(); ++it) {
ElementType type = *it;
if(Mesh::getSpatialDimension(type) != mesh.getSpatialDimension()) continue;
elem.type = type;
ElementType type_p1 = Mesh::getP1ElementType(type);
nb_nodes_per_element[nb_good_types] = Mesh::getNbNodesPerElement(type);
nb_nodes_per_element_p1[nb_good_types] = Mesh::getNbNodesPerElement(type_p1);
nb_element[nb_good_types] = mesh.getConnectivity(type, _not_ghost).getSize();
magic_number[nb_good_types] =
- Mesh::getNbNodesPerElement(Mesh::getFacetElementType(type_p1));
+ Mesh::getNbNodesPerElement(Mesh::getFacetType(type_p1));
conn[nb_good_types] = &const_cast<Vector<UInt> &>(mesh.getConnectivity(type, _not_ghost));
for (UInt i = 0; i < nb_element[nb_good_types]; ++i) {
elem.element = i;
lin_to_element.push_back(elem);
}
if(pairs.getSize() != 0) {
conn_tmp[nb_good_types] = new Vector<UInt>(mesh.getConnectivity(type, _not_ghost));
for (UInt i = 0; i < pairs.getSize(); ++i) {
for (UInt el = 0; el < nb_element[nb_good_types]; ++el) {
for (UInt n = 0; n < nb_nodes_per_element[nb_good_types]; ++n) {
if(pairs(i, 1) == (*conn[nb_good_types])(el, n))
(*conn[nb_good_types])(el, n) = pairs(i, 0);
}
}
}
}
nb_good_types++;
}
CSR<UInt> node_to_elem;
MeshUtils::buildNode2Elements(mesh, node_to_elem);
UInt nb_total_element = 0;
UInt nb_total_node_element = 0;
for (UInt t = 0; t < nb_good_types; ++t) {
nb_total_element += nb_element[t];
nb_total_node_element += nb_element[t]*nb_nodes_per_element_p1[t];
}
dxadj.resize(nb_total_element + 1);
/// initialize the dxadj array
for (UInt t = 0, linerized_el = 0; t < nb_good_types; ++t)
for (UInt el = 0; el < nb_element[t]; ++el, ++linerized_el)
dxadj(linerized_el) = nb_nodes_per_element_p1[t];
/// convert the dxadj_val array in a csr one
for (UInt i = 1; i < nb_total_element; ++i) dxadj(i) += dxadj(i-1);
for (UInt i = nb_total_element; i > 0; --i) dxadj(i) = dxadj(i-1);
dxadj(0) = 0;
dadjncy.resize(2*dxadj(nb_total_element));
edge_loads.resize(2*dxadj(nb_total_element));
/// weight map to determine adjacency
unordered_map<UInt, UInt>::type weight_map;
for (UInt t = 0, linerized_el = 0; t < nb_good_types; ++t) {
for (UInt el = 0; el < nb_element[t]; ++el, ++linerized_el) {
/// fill the weight map
for (UInt n = 0; n < nb_nodes_per_element_p1[t]; ++n) {
UInt node = (*conn[t])(el, n);
CSR<UInt>::iterator k;
for (k = node_to_elem.rbegin(node); k != node_to_elem.rend(node); --k) {
UInt current_el = *k;
if(current_el <= linerized_el) break;
unordered_map<UInt, UInt>::type::iterator it_w;
it_w = weight_map.find(current_el);
if(it_w == weight_map.end()) {
weight_map[current_el] = 1;
} else {
it_w->second++;
}
}
}
/// each element with a weight of the size of a facet are adjacent
unordered_map<UInt, UInt>::type::iterator it_w;
for(it_w = weight_map.begin(); it_w != weight_map.end(); ++it_w) {
if(it_w->second == magic_number[t]) {
UInt adjacent_el = it_w->first;
#if defined(AKANTU_COHESIVE_ELEMENT)
/// Patch in order to prevent neighboring cohesive elements
/// from detecting each other
ElementKind linearized_el_kind = mesh.linearizedToElement(linerized_el).kind;
ElementKind adjacent_el_kind = mesh.linearizedToElement(adjacent_el).kind;
if (linearized_el_kind == adjacent_el_kind &&
linearized_el_kind == _ek_cohesive) continue;
#endif
UInt index_adj = dxadj(adjacent_el )++;
UInt index_lin = dxadj(linerized_el)++;
dadjncy(index_lin) = adjacent_el;
dadjncy(index_adj) = linerized_el;
}
}
weight_map.clear();
}
}
if(pairs.getSize() != 0) {
for (UInt i = 0; i < nb_good_types; ++i) {
conn[i]->copy(*conn_tmp[i]);
delete conn_tmp[i];
}
}
Int k_start = 0;
for (UInt t = 0, linerized_el = 0, j = 0; t < nb_good_types; ++t)
for (UInt el = 0; el < nb_element[t]; ++el, ++linerized_el) {
for (Int k = k_start; k < dxadj(linerized_el); ++k, ++j)
dadjncy(j) = dadjncy(k);
dxadj(linerized_el) = j;
k_start += nb_nodes_per_element_p1[t];
}
for (UInt i = nb_total_element; i > 0; --i) dxadj(i) = dxadj(i - 1);
dxadj(0) = 0;
UInt adj = 0;
for (UInt i = 0; i < nb_total_element; ++i) {
UInt nb_adj = dxadj(i + 1) - dxadj(i);
for (UInt j = 0; j < nb_adj; ++j, ++adj) {
Int el_adj_id = dadjncy(dxadj(i) + j);
Element el = lin_to_element(i);
Element el_adj = lin_to_element(el_adj_id);
Int load = edge_load_func(el, el_adj);
edge_loads(adj) = load;
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MeshPartition::fillPartitionInformation(const Mesh & mesh,
const Int * linearized_partitions) {
AKANTU_DEBUG_IN();
CSR<UInt> node_to_elem;
MeshUtils::buildNode2Elements(mesh, node_to_elem);
Mesh::type_iterator it = mesh.firstType(spatial_dimension,
_not_ghost,
_ek_not_defined);
Mesh::type_iterator end = mesh.lastType(spatial_dimension,
_not_ghost,
_ek_not_defined);
UInt linearized_el = 0;
for(; it != end; ++it) {
ElementType type = *it;
UInt nb_element = mesh.getNbElement(*it);
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
partitions .alloc(nb_element, 1, type, _not_ghost);
ghost_partitions_offset.alloc(nb_element + 1, 1, type, _ghost);
ghost_partitions .alloc(0, 1, type, _ghost);
const Vector<UInt> & connectivity = mesh.getConnectivity(type, _not_ghost);
for (UInt el = 0; el < nb_element; ++el, ++linearized_el) {
UInt part = linearized_partitions[linearized_el];
partitions(type, _not_ghost)(el) = part;
std::list<UInt> list_adj_part;
for (UInt n = 0; n < nb_nodes_per_element; ++n) {
UInt node = connectivity.values[el * nb_nodes_per_element + n];
CSR<UInt>::iterator ne;
for (ne = node_to_elem.begin(node); ne != node_to_elem.end(node); ++ne) {
UInt adj_el = *ne;
UInt adj_part = linearized_partitions[adj_el];
if(part != adj_part) {
list_adj_part.push_back(adj_part);
}
}
}
list_adj_part.sort();
list_adj_part.unique();
for(std::list<UInt>::iterator adj_it = list_adj_part.begin();
adj_it != list_adj_part.end();
++adj_it) {
ghost_partitions(type, _ghost).push_back(*adj_it);
ghost_partitions_offset(type, _ghost)(el)++;
}
}
/// convert the ghost_partitions_offset array in an offset array
Vector<UInt> & ghost_partitions_offset_ptr = ghost_partitions_offset(type, _ghost);
for (UInt i = 1; i < nb_element; ++i)
ghost_partitions_offset_ptr(i) += ghost_partitions_offset_ptr(i-1);
for (UInt i = nb_element; i > 0; --i)
ghost_partitions_offset_ptr(i) = ghost_partitions_offset_ptr(i-1);
ghost_partitions_offset_ptr(0) = 0;
}
AKANTU_DEBUG_OUT();
}
__END_AKANTU__
diff --git a/src/mesh_utils/mesh_utils.cc b/src/mesh_utils/mesh_utils.cc
index 5c2ba6a52..7e9fdb998 100644
--- a/src/mesh_utils/mesh_utils.cc
+++ b/src/mesh_utils/mesh_utils.cc
@@ -1,1377 +1,1302 @@
/**
* @file mesh_utils.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author David Simon Kammer <david.kammer@epfl.ch>
* @author Leonardo Snozzi <leonardo.snozzi@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Fri Aug 20 12:19:44 2010
*
* @brief All mesh utils necessary for various tasks
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "mesh_utils.hh"
+#include "aka_safe_enum.hh"
#include "fem.hh"
__BEGIN_AKANTU__
+
/* -------------------------------------------------------------------------- */
+void MeshUtils::buildNode2Elements(const Mesh & mesh,
+ CSR<Element> & node_to_elem,
+ UInt spatial_dimension) {
+ AKANTU_DEBUG_IN();
+ if (spatial_dimension == 0) spatial_dimension = mesh.getSpatialDimension();
+
+
+ /// count number of occurrence of each node
+ Mesh::type_iterator first = mesh.firstType(spatial_dimension);
+ Mesh::type_iterator last = mesh.lastType(spatial_dimension);
+ AKANTU_DEBUG_ASSERT(first != last,
+ "Some elements must be found in right dimension to compute facets!");
+
+ UInt nb_nodes = mesh.getNbNodes();
+
+ /// array for the node-element list
+ node_to_elem.resizeRows(nb_nodes);
+ node_to_elem.clearRows();
+
+ for (ghost_type_t::iterator gt = ghost_type_t::begin(); gt != ghost_type_t::end(); ++gt) {
+ for (; first != last; ++first) {
+ ElementType type = *first;
+ UInt nb_element = mesh.getNbElement(type, *gt);
+ Vector<UInt>::const_iterator< types::Vector<UInt> > conn_it =
+ mesh.getConnectivity(type, *gt).begin(Mesh::getNbNodesPerElement(type));
+
+ for (UInt el = 0; el < nb_element; ++el, ++conn_it)
+ for (UInt n = 0; n < conn_it->size(); ++n)
+ ++node_to_elem.rowOffset((*conn_it)(n));
+ }
+ }
+
+ node_to_elem.countToCSR();
+ node_to_elem.resizeCols();
+
+
+ /// rearrange element to get the node-element list
+ first = mesh.firstType(spatial_dimension);
+ Element e;
+ node_to_elem.beginInsertions();
+
+ for (ghost_type_t::iterator gt = ghost_type_t::begin(); gt != ghost_type_t::end(); ++gt) {
+ e.ghost_type = *gt;
+ for (; first != last; ++first) {
+ ElementType type = *first;
+ e.type = type;
+ UInt nb_element = mesh.getNbElement(type, *gt);
+ Vector<UInt>::const_iterator< types::Vector<UInt> > conn_it =
+ mesh.getConnectivity(type, *gt).begin(Mesh::getNbNodesPerElement(type));
+
+ for (UInt el = 0; el < nb_element; ++el, ++conn_it) {
+ e.element = el;
+ for (UInt n = 0; n < conn_it->size(); ++n)
+ node_to_elem.insertInRow((*conn_it)(n), e);
+ }
+ }
+ }
+
+ node_to_elem.endInsertions();
+
+ AKANTU_DEBUG_OUT();
+}
+
+/* -------------------------------------------------------------------------- */
+/**
+ * This function should disappear in the future
+ */
void MeshUtils::buildNode2Elements(const Mesh & mesh,
CSR<UInt> & node_to_elem,
UInt spatial_dimension) {
AKANTU_DEBUG_IN();
if (spatial_dimension == 0) spatial_dimension = mesh.getSpatialDimension();
UInt nb_nodes = mesh.getNbNodes();
const Mesh::ConnectivityTypeList & type_list = mesh.getConnectivityTypeList();
Mesh::ConnectivityTypeList::const_iterator it;
UInt nb_types = type_list.size();
UInt nb_good_types = 0;
UInt nb_nodes_per_element[nb_types];
- // UInt nb_nodes_per_element_p1[nb_types];
UInt * conn_val[nb_types];
UInt nb_element[nb_types];
- // ElementType type_p1;
for(it = type_list.begin(); it != type_list.end(); ++it) {
ElementType type = *it;
if(Mesh::getSpatialDimension(type) != spatial_dimension) continue;
nb_nodes_per_element[nb_good_types] = Mesh::getNbNodesPerElement(type);
- // type_p1 = Mesh::getP1ElementType(type);
- // nb_nodes_per_element_p1[nb_good_types] = Mesh::getNbNodesPerElement(type_p1);
-
conn_val[nb_good_types] = mesh.getConnectivity(type, _not_ghost).values;
nb_element[nb_good_types] = mesh.getConnectivity(type, _not_ghost).getSize();
nb_good_types++;
}
AKANTU_DEBUG_ASSERT(nb_good_types != 0,
"Some elements must be found in right dimension to compute facets!");
/// array for the node-element list
node_to_elem.resizeRows(nb_nodes);
node_to_elem.clearRows();
- // node_offset.resize(nb_nodes + 1);
- // UInt * node_offset_val = node_offset.values;
-
/// count number of occurrence of each node
- // memset(node_offset_val, 0, (nb_nodes + 1)*sizeof(UInt));
for (UInt t = 0; t < nb_good_types; ++t) {
for (UInt el = 0; el < nb_element[t]; ++el) {
UInt el_offset = el*nb_nodes_per_element[t];
for (UInt n = 0; n < nb_nodes_per_element[t]; ++n) {
++node_to_elem.rowOffset(conn_val[t][el_offset + n]);
- // node_offset_val[conn_val[t][el_offset + n]]++;
}
}
}
- // /// convert the occurrence array in a csr one
- // for (UInt i = 1; i < nb_nodes; ++i) node_offset_val[i] += node_offset_val[i-1];
- // for (UInt i = nb_nodes; i > 0; --i) node_offset_val[i] = node_offset_val[i-1];
- // node_offset_val[0] = 0;
-
node_to_elem.countToCSR();
node_to_elem.resizeCols();
node_to_elem.beginInsertions();
- /// rearrange element to get the node-element list
- // node_to_elem.resize(node_offset_val[nb_nodes]);
- // UInt * node_to_elem_val = node_to_elem.values;
+ /// rearrange element to get the node-element list
for (UInt t = 0, linearized_el = 0; t < nb_good_types; ++t)
for (UInt el = 0; el < nb_element[t]; ++el, ++linearized_el) {
UInt el_offset = el*nb_nodes_per_element[t];
for (UInt n = 0; n < nb_nodes_per_element[t]; ++n)
node_to_elem.insertInRow(conn_val[t][el_offset + n], linearized_el);
- // node_to_elem_val[node_offset_val[conn_val[t][el_offset + n]]++] = linearized_el;
}
node_to_elem.endInsertions();
- // for (UInt i = nb_nodes; i > 0; --i) node_offset_val[i] = node_offset_val[i-1];
- // node_offset_val[0] = 0;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MeshUtils::buildNode2ElementsByElementType(const Mesh & mesh,
ElementType type,
CSR<UInt> & node_to_elem) {
- // Vector<UInt> & node_offset,
- // Vector<UInt> & node_to_elem) {
-
AKANTU_DEBUG_IN();
UInt nb_nodes = mesh.getNbNodes();
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
UInt nb_elements = mesh.getConnectivity(type, _not_ghost).getSize();
UInt * conn_val = mesh.getConnectivity(type, _not_ghost).values;
/// array for the node-element list
node_to_elem.resizeRows(nb_nodes);
node_to_elem.clearRows();
- // node_offset.resize(nb_nodes + 1);
- // UInt * node_offset_val = node_offset.values;
- // memset(node_offset_val, 0, (nb_nodes + 1)*sizeof(UInt));
-
/// count number of occurrence of each node
for (UInt el = 0; el < nb_elements; ++el) {
UInt el_offset = el*nb_nodes_per_element;
for (UInt n = 0; n < nb_nodes_per_element; ++n)
++node_to_elem.rowOffset(conn_val[el_offset + n]);
- // node_offset_val[conn_val[nb_nodes_per_element*el + n]]++;
}
/// convert the occurrence array in a csr one
- // for (UInt i = 1; i < nb_nodes; ++i) node_offset_val[i] += node_offset_val[i-1];
- // for (UInt i = nb_nodes; i > 0; --i) node_offset_val[i] = node_offset_val[i-1];
- // node_offset_val[0] = 0;
node_to_elem.countToCSR();
node_to_elem.resizeCols();
node_to_elem.beginInsertions();
/// save the element index in the node-element list
- // node_to_elem.resize(node_offset_val[nb_nodes]);
- // UInt * node_to_elem_val = node_to_elem.values;
-
for (UInt el = 0; el < nb_elements; ++el) {
UInt el_offset = el*nb_nodes_per_element;
for (UInt n = 0; n < nb_nodes_per_element; ++n) {
node_to_elem.insertInRow(conn_val[el_offset + n], el);
}
- // node_to_elem_val[node_offset_val[conn_val[nb_nodes_per_element*el + n]]] = el;
- // node_offset_val[conn_val[nb_nodes_per_element*el + n]]++;
}
- // /// rearrange node_offset to start with 0
- // for (UInt i = nb_nodes; i > 0; --i) node_offset_val[i] = node_offset_val[i-1];
- // node_offset_val[0] = 0;
node_to_elem.endInsertions();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MeshUtils::buildFacets(Mesh & mesh){
AKANTU_DEBUG_IN();
UInt spatial_dimension = mesh.getSpatialDimension();
ByElementTypeReal barycenter;
buildFacetsDimension(mesh, mesh, true, spatial_dimension, barycenter);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MeshUtils::buildAllFacets(Mesh & mesh, Mesh & mesh_facets) {
AKANTU_DEBUG_IN();
UInt spatial_dimension = mesh.getSpatialDimension();
ByElementTypeReal barycenter;
/// generate facets
buildFacetsDimension(mesh, mesh_facets, false, spatial_dimension, barycenter);
/// compute their barycenters
mesh_facets.initByElementTypeVector(barycenter, spatial_dimension, spatial_dimension - 1);
Mesh::type_iterator it = mesh_facets.firstType(spatial_dimension - 1);
Mesh::type_iterator end = mesh_facets.lastType(spatial_dimension - 1);
- for(; it != end; ++it) {
- UInt nb_element = mesh_facets.getNbElement(*it);
- barycenter(*it).resize(nb_element);
+ for (ghost_type_t::iterator gt = ghost_type_t::begin(); gt != ghost_type_t::end(); ++gt) {
+ for(; it != end; ++it) {
+ UInt nb_element = mesh_facets.getNbElement(*it, *gt);
+ barycenter(*it).resize(nb_element);
- Vector<Real>::iterator<types::RVector> bary = barycenter(*it).begin(spatial_dimension);
- Vector<Real>::iterator<types::RVector> bary_end
- = barycenter(*it).end(spatial_dimension);
+ Vector<Real>::iterator<types::RVector> bary = barycenter(*it, *gt).begin(spatial_dimension);
+ Vector<Real>::iterator<types::RVector> bary_end
+ = barycenter(*it, *gt).end(spatial_dimension);
- for (UInt el = 0; bary != bary_end; ++bary, ++el) {
- mesh_facets.getBarycenter(el, *it, bary->storage());
+ for (UInt el = 0; bary != bary_end; ++bary, ++el) {
+ mesh_facets.getBarycenter(el, *it, bary->storage());
+ }
}
}
/// sort facets and generate subfacets
for (UInt i = spatial_dimension - 1; i > 0; --i) {
buildFacetsDimension(mesh_facets, mesh_facets, false, i, barycenter);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MeshUtils::buildFacetsDimension(Mesh & mesh,
Mesh & mesh_facets,
bool boundary_only,
UInt dimension,
ByElementTypeReal & barycenter){
AKANTU_DEBUG_IN();
- const Mesh::ConnectivityTypeList & type_list = mesh.getConnectivityTypeList();
- Mesh::ConnectivityTypeList::const_iterator it;
-
- UInt nb_types = type_list.size();
- UInt nb_good_types = 0;
UInt spatial_dimension = mesh.getSpatialDimension();
- UInt nb_nodes_per_element[nb_types];
- UInt nb_nodes_per_facet[nb_types];
-
- UInt nb_facets[nb_types];
- UInt ** node_in_facet[nb_types];
- Vector<UInt> * connectivity_facets[nb_types];
- Vector<Vector<Element> > * element_to_subelement[nb_types];
- Vector<Element> * subelement_to_element[nb_types];
-
- UInt * conn_val[nb_types];
- UInt nb_element[nb_types];
-
- ElementType facet_type;
-
- Real epsilon = std::numeric_limits<Real>::epsilon();
-
- for(it = type_list.begin(); it != type_list.end(); ++it) {
- ElementType type = *it;
-
- if(mesh.getSpatialDimension(type) != dimension) continue;
-
- nb_nodes_per_element[nb_good_types] = mesh.getNbNodesPerElement(type);
-
- facet_type = mesh.getFacetElementType(type);
- nb_facets[nb_good_types] = mesh.getNbFacetsPerElement(type);
- node_in_facet[nb_good_types] = mesh.getFacetLocalConnectivity(type);
-
- nb_nodes_per_facet[nb_good_types] = mesh.getNbNodesPerElement(facet_type);
-
- // getting connectivity of boundary facets
- connectivity_facets[nb_good_types] = mesh_facets.getConnectivityPointer(facet_type);
- connectivity_facets[nb_good_types]->resize(0);
-
- element_to_subelement[nb_good_types] = mesh_facets.getElementToSubelementPointer(facet_type);
- element_to_subelement[nb_good_types]->resize(0);
-
- conn_val[nb_good_types] = mesh.getConnectivity(type, _not_ghost).values;
- nb_element[nb_good_types] = mesh.getConnectivity(type, _not_ghost).getSize();
-
- subelement_to_element[nb_good_types] = mesh_facets.getSubelementToElementPointer(type);
- subelement_to_element[nb_good_types]->resize(nb_element[nb_good_types]);
-
- nb_good_types++;
+ const Vector<Real> & mesh_facets_nodes = mesh_facets.getNodes();
+ const Vector<Real>::const_iterator< types::Vector<Real> > mesh_facets_nodes_it =
+ mesh_facets_nodes.begin(spatial_dimension);
+
+ Mesh::type_iterator first = mesh.firstType(dimension);
+ Mesh::type_iterator last = mesh.lastType(dimension);
+
+ for (ghost_type_t::iterator gt = ghost_type_t::begin(); gt != ghost_type_t::end(); ++gt) {
+ GhostType ghost_type = *gt;
+ for(; first != last; ++first) {
+ ElementType type = *first;
+ if(mesh.getSpatialDimension(type) != dimension) continue;
+
+ ElementType facet_type = mesh.getFacetType(type);
+ UInt nb_element = mesh.getNbElement(type, ghost_type);
+
+ // getting connectivity of boundary facets
+ Vector<UInt> * connectivity_facets = mesh_facets.getConnectivityPointer(facet_type, ghost_type);
+ connectivity_facets->resize(0);
+ Vector< std::vector<Element> > * element_to_subelement =
+ mesh_facets.getElementToSubelementPointer(facet_type, ghost_type);
+ element_to_subelement->resize(0);
+ Vector<Element> * subelement_to_element = mesh_facets.getSubelementToElementPointer(type, ghost_type);
+ subelement_to_element->resize(nb_element);
+ }
}
-
- CSR<UInt> node_to_elem;
- // Vector<UInt> node_offset;
- // Vector<UInt> node_to_elem;
-
- // buildNode2Elements(mesh,node_offset,node_to_elem);
+ CSR<Element> node_to_elem;
buildNode2Elements(mesh, node_to_elem, dimension);
- // std::cout << "node offset " << std::endl << node_offset << std::endl;
- // std::cout << "node to elem " << std::endl << node_to_elem << std::endl;
-
Vector<UInt> counter;
- /// count number of occurrence of each node
- for (UInt t = 0,linearized_el = 0; t < nb_good_types; ++t) {
- for (UInt el = 0; el < nb_element[t]; ++el, ++linearized_el) {
- UInt el_offset = el*nb_nodes_per_element[t];
- for (UInt f = 0; f < nb_facets[t]; ++f) {
- //build the nodes involved in facet 'f'
- UInt facet_nodes[nb_nodes_per_facet[t]];
- for (UInt n = 0; n < nb_nodes_per_facet[t]; ++n) {
- UInt node_facet = node_in_facet[t][f][n];
- facet_nodes[n] = conn_val[t][el_offset + node_facet];
- }
- //our reference is the first node
- CSR<UInt>::iterator first_node_elements;
- //UInt * first_node_elements = node_to_elem.values+node_offset.values[facet_nodes[0]];
- UInt first_node_nelements = node_to_elem.getNbCols(facet_nodes[0]);
- // node_offset.values[facet_nodes[0]+1]-
- // node_offset.values[facet_nodes[0]];
- counter.resize(first_node_nelements);
- counter.clear();
- //loop over the other nodes to search intersecting elements,
- //which are the elements that share another node with the
- //starting element after first_node
- CSR<UInt>::iterator first_node_elements_end;
- first_node_elements_end = node_to_elem.end(facet_nodes[0]);
- for (UInt n = 1; n < nb_nodes_per_facet[t]; ++n) {
- CSR<UInt>::iterator node_elements, node_elements_begin, node_elements_end;
- node_elements_begin = node_to_elem.begin(facet_nodes[n]);
- node_elements_end = node_to_elem.end(facet_nodes[n]);
- // UInt * node_elements = node_to_elem.values+node_offset.values[facet_nodes[n]];
- // node_offset.values[facet_nodes[n]+1]-
- // node_offset.values[facet_nodes[n]];
+ first = mesh.firstType(dimension);
+ Element current_element;
+ for (ghost_type_t::iterator gt = ghost_type_t::begin(); gt != ghost_type_t::end(); ++gt) {
+ GhostType ghost_type = *gt;
+ current_element.ghost_type = ghost_type;
+ for(; first != last; ++first) {
+ ElementType type = *first;
+ ElementType facet_type = mesh.getFacetType(type);
+
+ current_element.type = type;
+
+ UInt nb_element = mesh.getNbElement(type, ghost_type);
+ Vector< std::vector<Element> > & element_to_subelement = mesh_facets.getElementToSubelement(facet_type, ghost_type);
+ Vector<UInt> & connectivity_facets = mesh_facets.getConnectivity(facet_type, ghost_type);
+ Vector<Element> & subelement_to_element = mesh_facets.getSubelementToElement(type, ghost_type);
+
+ for (UInt el = 0; el < nb_element; ++el) {
+ current_element.element = el;
+ types::Matrix<UInt> facets = mesh.getFacetConnectivity(el, type, ghost_type);
+ UInt nb_nodes_per_facet = facets.cols();
+
+ for (UInt f = 0; f < facets.rows(); ++f) {
+ types::Vector<UInt> facet(nb_nodes_per_facet);
+ for (UInt n = 0; n < nb_nodes_per_facet; ++n) facet(n) = facets(f, n);
+
+ UInt first_node_nb_elements = node_to_elem.getNbCols(facets(f, 0));
+ counter.resize(first_node_nb_elements);
+ counter.clear();
+
+ //loop over the other nodes to search intersecting elements,
+ //which are the elements that share another node with the
+ //starting element after first_node
+ CSR<Element>::iterator first_node_elements = node_to_elem.begin(facet(0));
+ CSR<Element>::iterator first_node_elements_end = node_to_elem.end(facet(0));
UInt local_el = 0;
- for (first_node_elements = node_to_elem.begin(facet_nodes[0]);
- first_node_elements != first_node_elements_end;
- ++first_node_elements, ++local_el) {
- for (node_elements = node_elements_begin;
- node_elements != node_elements_end;
- ++node_elements) {
- if (*first_node_elements == *node_elements) {
- ++counter.values[local_el];
- // it may cause trouble:
- break;
- }
+ for (; first_node_elements != first_node_elements_end; ++first_node_elements, ++local_el) {
+ for (UInt n = 1; n < nb_nodes_per_facet; ++n) {
+ CSR<Element>::iterator node_elements_begin = node_to_elem.begin(facet(n));
+ CSR<Element>::iterator node_elements_end = node_to_elem.end (facet(n));
+ counter(local_el) += std::count(node_elements_begin, node_elements_end, *first_node_elements);
}
- // if (counter.values[local_el] == nb_nodes_per_facet[t]) break;
}
- }
- // bool connected_facet = false;
-
- //the connected elements are those for which counter is n_facet
- // UInt connected_element = -1;
-
- // counting the number of elements connected to the facets and
- // taking the minimum element number, because the facet should
- // be inserted just once
- UInt nb_element_connected_to_facet = 0;
- UInt minimum_el_index = std::numeric_limits<UInt>::max();
- Vector<UInt> connected_elements;
- for (UInt el1 = 0; el1 < counter.getSize(); el1++) {
- UInt el_index = node_to_elem(facet_nodes[0], el1);
-
- if (counter.values[el1] == nb_nodes_per_facet[t]-1) {
- ++nb_element_connected_to_facet;
- minimum_el_index = std::min(minimum_el_index, el_index);
- connected_elements.push_back(el_index);
+ // }
+
+ // counting the number of elements connected to the facets and
+ // taking the minimum element number, because the facet should
+ // be inserted just once
+ UInt nb_element_connected_to_facet = 0;
+ Element minimum_el = ElementNull;
+ Vector<Element> connected_elements;
+ for (UInt el_f = 0; el_f < first_node_nb_elements; el_f++) {
+ Element real_el = node_to_elem(facet(0), el_f);
+ if (counter(el_f) == nb_nodes_per_facet - 1) {
+ ++nb_element_connected_to_facet;
+ minimum_el = std::min(minimum_el, real_el);
+ connected_elements.push_back(real_el);
+ }
}
- }
- if (minimum_el_index == linearized_el) {
- if (!boundary_only || (boundary_only && nb_element_connected_to_facet == 1)) {
- connectivity_facets[t]->push_back(facet_nodes);
-
- UInt current_nb_facets = element_to_subelement[t]->getSize();
- element_to_subelement[t]->resize(current_nb_facets + 1);
- Vector<Element> & elements = (*element_to_subelement[t])(current_nb_facets);
-
- // build elements_on_facets: linearized_el must come first
- // in order to store the facet in the correct direction
- // and avoid to invert the sign in the normal computation
- elements.push_back(mesh.linearizedToElement(linearized_el));
-
- /// boundary facet
- if (nb_element_connected_to_facet == 1)
- elements.push_back(ElementNull);
- /// internal facet
- else if (nb_element_connected_to_facet == 2)
- elements.push_back(mesh.linearizedToElement(connected_elements.values[1]));
- /// facet of facet
- else {
- UInt nb_connected = connected_elements.getSize();
- for (UInt i = 1; i < nb_connected; ++i) {
- elements.push_back(mesh.linearizedToElement(connected_elements.values[i]));
- }
-
- /// check if sorting is needed:
- /// - in 3D to sort triangles around segments
- /// - in 2D to sort segments around points
- if (dimension == spatial_dimension - 1) {
-
- /// barycentrical coordinates for each connected
- /// element with respect to start_node
- Vector<Real> connected_nodes(nb_connected, 2);
-
- const Vector<Real> & coord = mesh_facets.getNodes();
- const Vector<UInt> & facet_conn = mesh_facets.getConnectivity(facet_type);
-
- /// node around which the sorting is carried out is
- /// the first node of the current facet
- UInt start_node = facet_conn(facet_conn.getSize()-1, 0);
- Real start_coord[spatial_dimension];
- for (UInt dim = 0; dim < spatial_dimension; ++dim) {
- start_coord[dim] = coord(start_node, dim);
+ if (minimum_el == current_element) {
+ if (!boundary_only || (boundary_only && nb_element_connected_to_facet == 1)) {
+ connectivity_facets.push_back(facet);
+
+ UInt current_nb_facets = element_to_subelement.getSize();
+ element_to_subelement.resize(current_nb_facets + 1);
+ std::vector<Element> & elements = element_to_subelement(current_nb_facets);
+
+ // build elements_on_facets: linearized_el must come first
+ // in order to store the facet in the correct direction
+ // and avoid to invert the sign in the normal computation
+ elements.push_back(current_element);
+
+ /// boundary facet
+ if (nb_element_connected_to_facet == 1)
+ elements.push_back(ElementNull);
+ /// internal facet
+ else if (nb_element_connected_to_facet == 2)
+ elements.push_back(connected_elements(1));
+ /// facet of facet
+ else {
+ for (UInt i = 1; i < nb_element_connected_to_facet; ++i) {
+ elements.push_back(connected_elements(i));
}
- if (spatial_dimension == 3) {
- /// vector connecting facet first node to second
- Real tangent[spatial_dimension];
- /// vector connecting facet first node and
- /// barycenter of elements(0)
- Real temp[spatial_dimension];
- /// two normals to the segment facet to define the
- /// reference system
- Real normal1[spatial_dimension];
- Real normal2[spatial_dimension];
-
- Vector<Real> & bar = barycenter(elements(0).type);
-
- /// facet second node
- UInt second_node = facet_conn(facet_conn.getSize()-1, 1);
-
- /// construction of tangent and temp arrays
- for (UInt dim = 0; dim < spatial_dimension; ++dim) {
- Real x1, x2;
- x1 = coord(second_node, dim);
- x2 = bar(elements(0).element, dim);
- tangent[dim] = x1 - start_coord[dim];
- temp[dim] = x2 - start_coord[dim];
- }
+ /// check if sorting is needed:
+ /// - in 3D to sort triangles around segments
+ /// - in 2D to sort segments around points
+ if (dimension == spatial_dimension - 1) {
+ /// node around which the sorting is carried out is
+ /// the first node of the current facet
+ const types::Vector<Real> & first_node_coord = mesh_facets_nodes_it[facet(0)];
+
+ /// associate to each element a real value based on
+ /// atan2 function (check wikipedia)
+ std::map<Element, Real, CompElementLess> atan2;
+
+ if (spatial_dimension == 3) {
+ const types::Vector<Real> & second_node_coord = mesh_facets_nodes_it[facet(1)];
+
+ /// vector connecting facet first node to second
+ types::Vector<Real> tangent(spatial_dimension);
+ tangent = second_node_coord;
+ tangent -= first_node_coord;
+ tangent.normalize();
+
+ const Vector<Real>::const_iterator< types::Vector<Real> > bar =
+ barycenter(elements[0].type, elements[0].ghost_type).begin(spatial_dimension);
+
+ /// vector connecting facet first node and
+ /// barycenter of elements(0)
+ types::Vector<Real> bary_coord(spatial_dimension);
+ bary_coord.copy(bar[elements[0].element]);
+ bary_coord -= first_node_coord;
+
+ /// two normals to the segment facet to define the
+ /// reference system
+ types::Vector<Real> normal1(spatial_dimension);
+ types::Vector<Real> normal2(spatial_dimension);
+
+ /// get normal1 and normal2
+ normal1.crossProduct(tangent, bary_coord);
+ normal1.normalize();
+ normal2.crossProduct(tangent, normal1);
- /// get normal1 and normal2
- Math::normalize3(tangent);
- Math::vectorProduct3(tangent, temp, normal1);
- Math::normalize3(normal1);
- Math::vectorProduct3(tangent, normal1, normal2);
+ /// project the barycenter coordinates on the two
+ /// normals to have them on the same plane
+ atan2[elements[0]] = std::atan2(bary_coord.dot(normal2), bary_coord.dot(normal1));
- for (UInt n = 0; n < nb_connected; ++n) {
- Real bary_coord[spatial_dimension];
- Vector<Real> & bary = barycenter(elements(n).type);
+ for (UInt n = 1; n < nb_element_connected_to_facet; ++n) {
+ const Vector<Real>::const_iterator< types::Vector<Real> > bar_it =
+ barycenter(elements[n].type, elements[n].ghost_type).begin(spatial_dimension);
+ bary_coord.copy(bar_it[elements[n].element]);
+ bary_coord -= first_node_coord;
- /// get the barycenter local coordinates
- for (UInt dim = 0; dim < spatial_dimension; ++dim) {
- bary_coord[dim] = bary(elements(n).element, dim)
- - start_coord[dim];
+ /// project the barycenter coordinates on the two
+ /// normals to have them on the same plane
+ atan2[elements[n]] = std::atan2(bary_coord.dot(normal2), bary_coord.dot(normal1));
}
- /// project the barycenter coordinates on the two
- /// normals to have them on the same plane
- connected_nodes(n, 0) = Math::vectorDot(bary_coord, normal1, spatial_dimension);
- connected_nodes(n, 1) = Math::vectorDot(bary_coord, normal2, spatial_dimension);
}
- }
- else if (spatial_dimension == 2) {
- for (UInt n = 0; n < nb_connected; ++n) {
- Vector<Real> & bary = barycenter(elements(n).type);
- /// get the barycenter local coordinates
- for (UInt dim = 0; dim < spatial_dimension; ++dim) {
- connected_nodes(n, dim) = bary(elements(n).element, dim)
- - start_coord[dim];
+ else if (spatial_dimension == 2) {
+ for (UInt n = 0; n < nb_element_connected_to_facet; ++n) {
+ const Vector<Real>::const_iterator< types::Vector<Real> > bar_it =
+ barycenter(elements[n].type, elements[n].ghost_type).begin(spatial_dimension);
+ types::Vector<Real> bary_coord(spatial_dimension);
+ bary_coord.copy(bar_it[elements[n].element]);
+ bary_coord -= first_node_coord;
+ atan2[elements[n]] = std::atan2(bary_coord(1), bary_coord(0));
}
}
- }
- /// associate to each element a real value based on
- /// atan2 function (check wikipedia)
- std::map<Element, Real, CompElementLess> atan2;
-
- for (UInt n = 0; n < nb_connected; ++n) {
- Real x = connected_nodes(n, 0);
- Real y = connected_nodes(n, 1);
- /// in order to avoid division by zero:
- if (std::abs(y) <= std::abs(y) * epsilon && x < 0)
- y = Math::getTolerance();
- atan2[elements(n)] = y / (sqrt(x * x + y * y) + x);
+ /// sort elements according to their atan2 values
+ ElementSorter sorter(atan2);
+ std::sort(elements.begin(), elements.end(), sorter);
}
-
- /// sort elements according to their atan2 values
- ElementSorter sorter(atan2);
- std::sort(elements.storage(), elements.storage() + elements.getSize(), sorter);
-
}
- }
- /// current facet index
- UInt current_facet = connectivity_facets[t]->getSize() - 1;
-
- /// loop on every element connected to current facet and
- /// insert current facet in the first free spot of the
- /// subelement_to_element vector
- for (UInt elem = 0; elem < elements.getSize(); ++elem) {
- if (elements(elem).type != _not_defined) {
- for (UInt f_in = 0; f_in < nb_facets[t]; ++f_in) {
- if ((*subelement_to_element[t])(elements(elem).element, f_in).type == _not_defined) {
- (*subelement_to_element[t])(elements(elem).element, f_in).type = facet_type;
- (*subelement_to_element[t])(elements(elem).element, f_in).element = current_facet;
- break;
+ /// current facet index
+ UInt current_facet = connectivity_facets.getSize() - 1;
+
+ /// loop on every element connected to current facet and
+ /// insert current facet in the first free spot of the
+ /// subelement_to_element vector
+ for (UInt elem = 0; elem < elements.size(); ++elem) {
+ Element loc_el = elements[elem];
+ if (loc_el.type != _not_defined) {
+ for (UInt f_in = 0; f_in < facets.rows(); ++f_in) {
+ if (subelement_to_element(loc_el.element, f_in).type == _not_defined) {
+ subelement_to_element(loc_el.element, f_in).type = facet_type;
+ subelement_to_element(loc_el.element, f_in).element = current_facet;
+ break;
+ }
}
}
}
- }
+ }
}
}
-
}
}
}
AKANTU_DEBUG_OUT();
}
-/* -------------------------------------------------------------------------- */
-// void MeshUtils::buildNormals(Mesh & mesh,UInt spatial_dimension){
-// AKANTU_DEBUG_IN();
-// const Mesh::ConnectivityTypeList & type_list = mesh.getConnectivityTypeList();
-// Mesh::ConnectivityTypeList::const_iterator it;
-
-// UInt nb_types = type_list.size();
-// UInt nb_nodes_per_element[nb_types];
-// UInt nb_nodes_per_element_p1[nb_types];
-
-// UInt nb_good_types = 0;
-
-// Vector<UInt> * connectivity[nb_types];
-// Vector<Real> * normals[nb_types];
-
-// if (spatial_dimension == 0) spatial_dimension = mesh.getSpatialDimension();
-
-// for(it = type_list.begin(); it != type_list.end(); ++it) {
-// ElementType type = *it;
-// ElementType type_p1 = mesh.getP1ElementType(type);
-// if(mesh.getSpatialDimension(type) != spatial_dimension) continue;
-
-// nb_nodes_per_element[nb_good_types] = mesh.getNbNodesPerElement(type);
-// nb_nodes_per_element_p1[nb_good_types] = mesh.getNbNodesPerElement(type_p1);
-
-// // getting connectivity
-// connectivity[nb_good_types] = mesh.getConnectivityPointer(type);
-// if (!connectivity[nb_good_types])
-// AKANTU_DEBUG_ERROR("connectivity is not allocatted : this should probably not have happened");
-
-// //getting array of normals
-// normals[nb_good_types] = mesh.getNormalsPointer(type);
-// if(normals[nb_good_types])
-// normals[nb_good_types]->resize(0);
-// else
-// normals[nb_good_types] = &mesh.createNormals(type);
-
-// nb_good_types++;
-// }
-// AKANTU_DEBUG_OUT();
-// }
-
/* -------------------------------------------------------------------------- */
void MeshUtils::renumberMeshNodes(Mesh & mesh,
UInt * local_connectivities,
UInt nb_local_element,
UInt nb_ghost_element,
ElementType type,
Vector<UInt> & old_nodes_numbers) {
AKANTU_DEBUG_IN();
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
std::map<UInt, UInt> renumbering_map;
for (UInt i = 0; i < old_nodes_numbers.getSize(); ++i) {
renumbering_map[old_nodes_numbers(i)] = i;
}
/// renumber the nodes
renumberNodesInConnectivity(local_connectivities,
(nb_local_element + nb_ghost_element)*nb_nodes_per_element,
renumbering_map);
std::map<UInt, UInt>::iterator it = renumbering_map.begin();
std::map<UInt, UInt>::iterator end = renumbering_map.end();
old_nodes_numbers.resize(renumbering_map.size());
for (;it != end; ++it) {
old_nodes_numbers(it->second) = it->first;
}
renumbering_map.clear();
/// copy the renumbered connectivity to the right place
Vector<UInt> * local_conn = mesh.getConnectivityPointer(type);
local_conn->resize(nb_local_element);
memcpy(local_conn->values,
local_connectivities,
nb_local_element * nb_nodes_per_element * sizeof(UInt));
Vector<UInt> * ghost_conn = mesh.getConnectivityPointer(type,_ghost);
ghost_conn->resize(nb_ghost_element);
memcpy(ghost_conn->values,
local_connectivities + nb_local_element * nb_nodes_per_element,
nb_ghost_element * nb_nodes_per_element * sizeof(UInt));
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MeshUtils::renumberNodesInConnectivity(UInt * list_nodes,
UInt nb_nodes,
std::map<UInt, UInt> & renumbering_map) {
AKANTU_DEBUG_IN();
UInt * connectivity = list_nodes;
UInt new_node_num = renumbering_map.size();
for (UInt n = 0; n < nb_nodes; ++n, ++connectivity) {
UInt & node = *connectivity;
std::map<UInt, UInt>::iterator it = renumbering_map.find(node);
if(it == renumbering_map.end()) {
UInt old_node = node;
renumbering_map[old_node] = new_node_num;
node = new_node_num;
++new_node_num;
} else {
node = it->second;
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MeshUtils::purifyMesh(Mesh & mesh) {
AKANTU_DEBUG_IN();
std::map<UInt, UInt> renumbering_map;
RemovedNodesEvent remove_nodes(mesh);
Vector<UInt> & nodes_removed = remove_nodes.getList();
for (UInt gt = _not_ghost; gt <= _ghost; ++gt) {
GhostType ghost_type = (GhostType) gt;
Mesh::type_iterator it = mesh.firstType(0, ghost_type, _ek_not_defined);
Mesh::type_iterator end = mesh.lastType(0, ghost_type, _ek_not_defined);
for(; it != end; ++it) {
ElementType type(*it);
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
const Vector<UInt> & connectivity_vect = mesh.getConnectivity(type, ghost_type);
UInt nb_element(connectivity_vect.getSize());
UInt * connectivity = connectivity_vect.storage();
renumberNodesInConnectivity (connectivity, nb_element*nb_nodes_per_element, renumbering_map);
}
}
Vector<UInt> & new_numbering = remove_nodes.getNewNumbering();
std::fill(new_numbering.begin(), new_numbering.end(), UInt(-1));
std::map<UInt, UInt>::iterator it = renumbering_map.begin();
std::map<UInt, UInt>::iterator end = renumbering_map.end();
for (; it != end; ++it) {
new_numbering(it->first) = it->second;
}
for (UInt i = 0; i < new_numbering.getSize(); ++i) {
if(new_numbering(i) == UInt(-1))
nodes_removed.push_back(i);
}
mesh.sendEvent(remove_nodes);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MeshUtils::setUIntData(Mesh & mesh, UInt * data, UInt nb_tags, const ElementType & type) {
AKANTU_DEBUG_IN();
UInt nb_element = mesh.getNbElement(type, _not_ghost);
UInt nb_ghost_element = mesh.getNbElement(type, _ghost);
char * names = reinterpret_cast<char *>(data + (nb_element + nb_ghost_element) * nb_tags);
UIntDataMap & uint_data_map = mesh.getUIntDataMap(type, _not_ghost);
UIntDataMap & ghost_uint_data_map = mesh.getUIntDataMap(type, _ghost);
for (UInt t = 0; t < nb_tags; ++t) {
std::string name(names);
// std::cout << name << std::endl;
names += name.size() + 1;
UIntDataMap::iterator it = uint_data_map.find(name);
if(it == uint_data_map.end()) {
uint_data_map[name] = new Vector<UInt>(0, 1, name);
it = uint_data_map.find(name);
}
it->second->resize(nb_element);
memcpy(it->second->values, data, nb_element * sizeof(UInt));
data += nb_element;
it = ghost_uint_data_map.find(name);
if(it == ghost_uint_data_map.end()) {
ghost_uint_data_map[name] = new Vector<UInt>(0, 1, name);
it = ghost_uint_data_map.find(name);
}
it->second->resize(nb_ghost_element);
memcpy(it->second->values, data, nb_ghost_element * sizeof(UInt));
data += nb_ghost_element;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MeshUtils::buildSurfaceID(Mesh & mesh) {
AKANTU_DEBUG_IN();
// Vector<UInt> node_offset;
// Vector<UInt> node_to_elem;
CSR<UInt> node_to_elem;
/// Get list of surface elements
UInt spatial_dimension = mesh.getSpatialDimension();
// buildNode2Elements(mesh, node_offset, node_to_elem, spatial_dimension-1);
buildNode2Elements(mesh, node_to_elem, spatial_dimension-1);
/// Find which types of elements have been linearized
const Mesh::ConnectivityTypeList & type_list = mesh.getConnectivityTypeList();
Mesh::ConnectivityTypeList::const_iterator it;
UInt nb_types = type_list.size();
ElementType lin_element_type[nb_types];
UInt nb_lin_types = 0;
UInt nb_nodes_per_element[nb_types];
UInt nb_nodes_per_element_p1[nb_types];
UInt * conn_val[nb_types];
UInt nb_element[nb_types+1];
ElementType type_p1;
for(it = type_list.begin(); it != type_list.end(); ++it) {
ElementType type = *it;
if(Mesh::getSpatialDimension(type) != spatial_dimension) continue;
- ElementType facet_type = mesh.getFacetElementType(type);
+ ElementType facet_type = mesh.getFacetType(type);
lin_element_type[nb_lin_types] = facet_type;
nb_nodes_per_element[nb_lin_types] = Mesh::getNbNodesPerElement(facet_type);
type_p1 = Mesh::getP1ElementType(facet_type);
nb_nodes_per_element_p1[nb_lin_types] = Mesh::getNbNodesPerElement(type_p1);
conn_val[nb_lin_types] = mesh.getConnectivity(facet_type, _not_ghost).values;
nb_element[nb_lin_types] = mesh.getNbElement(facet_type, _not_ghost);
nb_lin_types++;
}
for (UInt i = 1; i < nb_lin_types; ++i) nb_element[i] += nb_element[i+1];
for (UInt i = nb_lin_types; i > 0; --i) nb_element[i] = nb_element[i-1];
nb_element[0] = 0;
/// Find close surfaces
Vector<Int> surface_value_id(1, nb_element[nb_lin_types], -1);
Int * surf_val = surface_value_id.values;
UInt nb_surfaces = 0;
UInt nb_cecked_elements;
UInt nb_elements_to_ceck;
UInt * elements_to_ceck = new UInt [nb_element[nb_lin_types]];
memset(elements_to_ceck, 0, nb_element[nb_lin_types]*sizeof(UInt));
for (UInt lin_el = 0; lin_el < nb_element[nb_lin_types]; ++lin_el) {
if(surf_val[lin_el] != -1) continue; /* Surface id already assigned */
/* First element of new surface */
surf_val[lin_el] = nb_surfaces;
nb_cecked_elements = 0;
nb_elements_to_ceck = 1;
memset(elements_to_ceck, 0, nb_element[nb_lin_types]*sizeof(UInt));
elements_to_ceck[0] = lin_el;
// Find others elements belonging to this surface
while(nb_cecked_elements < nb_elements_to_ceck) {
UInt ceck_lin_el = elements_to_ceck[nb_cecked_elements];
// Transform linearized index of element into ElementType one
UInt lin_type_nb = 0;
while (ceck_lin_el >= nb_element[lin_type_nb+1])
lin_type_nb++;
UInt ceck_el = ceck_lin_el - nb_element[lin_type_nb];
// Get connected elements
UInt el_offset = ceck_el*nb_nodes_per_element[lin_type_nb];
for (UInt n = 0; n < nb_nodes_per_element_p1[lin_type_nb]; ++n) {
UInt node_id = conn_val[lin_type_nb][el_offset + n];
CSR<UInt>::iterator it_n;
for (it_n = node_to_elem.begin(node_id); it_n != node_to_elem.end(node_id); ++it_n) {
// for (UInt i = node_offset.values[node_id]; i < node_offset.values[node_id+1]; ++i) {
if(surf_val[*it_n] == -1) { /* Found new surface element */
surf_val[*it_n] = nb_surfaces;
elements_to_ceck[nb_elements_to_ceck] = *it_n;
nb_elements_to_ceck++;
}
// if(surf_val[node_to_elem.values[i]] == -1) { /* Found new surface element */
// surf_val[node_to_elem.values[i]] = nb_surfaces;
// elements_to_ceck[nb_elements_to_ceck] = node_to_elem.values[i];
// nb_elements_to_ceck++;
// }
}
}
nb_cecked_elements++;
}
nb_surfaces++;
}
delete [] elements_to_ceck;
/// Transform local linearized element index in the global one
for (UInt i = 0; i < nb_lin_types; ++i) nb_element[i] = nb_element[i+1] - nb_element[i];
UInt el_offset = 0;
for (UInt type_it = 0; type_it < nb_lin_types; ++type_it) {
ElementType type = lin_element_type[type_it];
Vector<UInt> * surf_id_type = mesh.getSurfaceIDPointer(type, _not_ghost);
surf_id_type->resize(nb_element[type_it]);
surf_id_type->clear();
for (UInt el = 0; el < nb_element[type_it]; ++el)
surf_id_type->values[el] = surf_val[el+el_offset];
el_offset += nb_element[type_it];
}
/// Set nb_surfaces in mesh
mesh.nb_surfaces = nb_surfaces;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MeshUtils::buildNodesPerSurface(const Mesh & mesh, CSR<UInt> & nodes_per_surface) {
AKANTU_DEBUG_IN();
UInt nb_surfaces = mesh.getNbSurfaces();
UInt nb_nodes = mesh.getNbNodes();
UInt spatial_dimension = mesh.getSpatialDimension(); //surface elements
UInt nb_facet_types = 0;
ElementType facet_type[_max_element_type];
Mesh::type_iterator it = mesh.firstType(spatial_dimension);
Mesh::type_iterator end = mesh.lastType(spatial_dimension);
for(; it != end; ++it) {
- facet_type[nb_facet_types++] = mesh.getFacetElementType(*it);
+ facet_type[nb_facet_types++] = mesh.getFacetType(*it);
}
UInt * surface_nodes_id = new UInt[nb_nodes*nb_surfaces];
std::fill_n(surface_nodes_id, nb_surfaces*nb_nodes, 0);
for(UInt t = 0; t < nb_facet_types; ++t) {
ElementType type = facet_type[t];
UInt nb_element = mesh.getNbElement(type);
UInt nb_nodes_per_element = mesh.getNbNodesPerElement(type);
UInt * connecticity = mesh.getConnectivity(type, _not_ghost).values;
UInt * surface_id = mesh.getSurfaceID(type, _not_ghost).values;;
for (UInt el = 0; el < nb_element; ++el) {
UInt offset = *surface_id * nb_nodes;
for (UInt n = 0; n < nb_nodes_per_element; ++n) {
surface_nodes_id[offset + *connecticity] = 1;
++connecticity;
}
++surface_id;
}
}
nodes_per_surface.resizeRows(nb_surfaces);
nodes_per_surface.clearRows();
UInt * surface_nodes_id_tmp = surface_nodes_id;
for (UInt s = 0; s < nb_surfaces; ++s)
for (UInt n = 0; n < nb_nodes; ++n)
nodes_per_surface.rowOffset(s) += *surface_nodes_id_tmp++;
nodes_per_surface.countToCSR();
nodes_per_surface.resizeCols();
nodes_per_surface.beginInsertions();
surface_nodes_id_tmp = surface_nodes_id;
for (UInt s = 0; s < nb_surfaces; ++s)
for (UInt n = 0; n < nb_nodes; ++n) {
if (*surface_nodes_id_tmp == 1) nodes_per_surface.insertInRow(s, n);
surface_nodes_id_tmp++;
}
nodes_per_surface.endInsertions();
delete [] surface_nodes_id;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MeshUtils::insertIntrinsicCohesiveElements(Mesh & mesh,
Mesh & mesh_facets,
ElementType type_facet,
const Vector<UInt> & facet_insertion) {
AKANTU_DEBUG_IN();
Vector<UInt> doubled_nodes(0, 2);
Vector<UInt> doubled_facets(0, 2);
ElementType type_cohesive = FEM::getCohesiveElementType(type_facet);
mesh.addConnectivityType(type_cohesive);
insertCohesiveElements(mesh,
mesh_facets,
type_facet,
facet_insertion,
doubled_nodes,
doubled_facets);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MeshUtils::insertCohesiveElements(Mesh & mesh,
Mesh & mesh_facets,
ElementType type_facet,
const Vector<UInt> & facet_insertion,
Vector<UInt> & doubled_nodes,
Vector<UInt> & doubled_facets) {
AKANTU_DEBUG_IN();
if(facet_insertion.getSize() == 0) return;
ElementType type_cohesive = FEM::getCohesiveElementType(type_facet);
/// update mesh
for (UInt f = 0; f < facet_insertion.getSize(); ++f) {
Element facet(type_facet, facet_insertion(f));
doubleFacet(mesh, mesh_facets, facet, doubled_nodes, doubled_facets);
}
/// double middle nodes if it's the case
if (type_facet == _segment_3)
doubleMiddleNode(mesh, mesh_facets, type_facet, doubled_nodes, doubled_facets);
/// loop over doubled facets to insert cohesive elements
Vector<UInt> & conn_cohesive = mesh.getConnectivity(type_cohesive);
const Vector<UInt> & conn_facet = mesh_facets.getConnectivity(type_facet);
Vector<UInt> & facets_to_cohesive_el = mesh.getFacetsToCohesiveEl();
UInt nb_nodes_per_facet = conn_facet.getNbComponent();
const Vector<Real> & position = mesh.getNodes();
- Vector<Vector<Element> > & element_to_facet
+ Vector< std::vector<Element> > & element_to_facet
= mesh_facets.getElementToSubelement(type_facet);
const Real epsilon = std::numeric_limits<Real>::epsilon();
UInt old_nb_cohesive_elements = conn_cohesive.getSize();
conn_cohesive.resize(old_nb_cohesive_elements + doubled_facets.getSize());
for (UInt f = 0; f < doubled_facets.getSize(); ++f) {
UInt nb_cohesive_elements = old_nb_cohesive_elements + f;
UInt first_facet = doubled_facets(f, 0);
UInt second_facet = doubled_facets(f, 1);
/// copy first facet's connectivity
for (UInt n = 0; n < nb_nodes_per_facet; ++n)
conn_cohesive(nb_cohesive_elements, n) = conn_facet(first_facet, n);
/// check if first nodes of the two facets are coincident or not
UInt first_facet_node = conn_facet(first_facet, 0);
UInt second_facet_node = conn_facet(second_facet, 0);
bool second_facet_inversion = false;
for (UInt dim = 0; dim < mesh.getSpatialDimension(); ++dim) {
if (std::abs( (position(first_facet_node, dim) - position(second_facet_node, dim))
/ position(second_facet_node, dim)) >= epsilon) {
second_facet_inversion = true;
break;
}
}
/// if the two nodes are coincident second facet connectivity is
/// normally copied, otherwise the copy is reverted
if (!second_facet_inversion) {
for (UInt n = 0; n < nb_nodes_per_facet; ++n)
conn_cohesive(nb_cohesive_elements, n + nb_nodes_per_facet)
= conn_facet(second_facet, n);
}
else {
for (UInt n = 0; n < nb_nodes_per_facet; ++n)
conn_cohesive(nb_cohesive_elements, n + nb_nodes_per_facet)
= conn_facet(second_facet, nb_nodes_per_facet - n - 1);
}
/// update element_to_facet vectors
Element cohesive_element(type_cohesive, nb_cohesive_elements,
_not_ghost, _ek_cohesive);
- element_to_facet(first_facet)(1) = cohesive_element;
- element_to_facet(second_facet)(1) = cohesive_element;
+ element_to_facet(first_facet)[1] = cohesive_element;
+ element_to_facet(second_facet)[1] = cohesive_element;
/// update facets_to_cohesive_el vector
facets_to_cohesive_el.resize(nb_cohesive_elements + 1);
facets_to_cohesive_el(nb_cohesive_elements, 0) = first_facet;
facets_to_cohesive_el(nb_cohesive_elements, 1) = second_facet;
}
mesh.updateTypesOffsets(_not_ghost);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MeshUtils::doubleMiddleNode(Mesh & mesh,
Mesh & mesh_facets,
ElementType type_facet,
Vector<UInt> & doubled_nodes,
const Vector<UInt> & doubled_facets) {
AKANTU_DEBUG_IN();
Vector<UInt> & conn_facet = mesh_facets.getConnectivity(type_facet);
Vector<Real> & position = mesh.getNodes();
UInt spatial_dimension = mesh.getSpatialDimension();
- Vector<Vector<Element> > & elem_to_facet
+ Vector< std::vector<Element> > & elem_to_facet
= mesh_facets.getElementToSubelement(type_facet);
UInt nb_new_facets = doubled_facets.getSize();
UInt old_nb_doubled_nodes = doubled_nodes.getSize();
doubled_nodes.resize(old_nb_doubled_nodes + nb_new_facets);
UInt old_nb_nodes = position.getSize();
position.resize(old_nb_nodes + nb_new_facets);
for (UInt f = 0; f < nb_new_facets; ++f) {
UInt facet_first = doubled_facets(f, 0);
UInt facet_second = doubled_facets(f, 1);
UInt new_node = old_nb_nodes + f;
/// store doubled nodes
UInt nb_doubled_nodes = old_nb_doubled_nodes + f;
UInt old_node = conn_facet(facet_first, 2);
doubled_nodes(nb_doubled_nodes, 0) = old_node;
doubled_nodes(nb_doubled_nodes, 1) = new_node;
/// update position
for (UInt dim = 0; dim < spatial_dimension; ++dim)
position(new_node, dim) = position(old_node, dim);
/// update facet connectivity
conn_facet(facet_second, 2) = new_node;
/// update element connectivity
- for (UInt el = 0; el < elem_to_facet(facet_second).getSize(); ++el) {
- const ElementType type_elem = elem_to_facet(facet_second)(el).type;
+ for (UInt el = 0; el < elem_to_facet(facet_second).size(); ++el) {
+ const ElementType type_elem = elem_to_facet(facet_second)[el].type;
if (type_elem != _not_defined) {
- UInt elem_global = elem_to_facet(facet_second)(el).element;
+ UInt elem_global = elem_to_facet(facet_second)[el].element;
Vector<UInt> & conn_elem = mesh.getConnectivity(type_elem);
for (UInt n = 0; n < conn_elem.getNbComponent(); ++n) {
if (conn_elem(elem_global, n) == old_node)
conn_elem(elem_global, n) = new_node;
}
}
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MeshUtils::doubleFacet(Mesh & mesh,
Mesh & mesh_facets,
Element & facet,
Vector<UInt> & doubled_nodes,
Vector<UInt> & doubled_facets) {
AKANTU_DEBUG_IN();
const UInt f_index = facet.element;
const ElementType type_facet = facet.type;
- const ElementType type_subfacet = mesh.getFacetElementType(type_facet);
+ const ElementType type_subfacet = mesh.getFacetType(type_facet);
const UInt nb_subfacet = mesh.getNbFacetsPerElement(type_facet);
- Vector<Vector<Element> > & facet_to_subfacet
+ Vector< std::vector<Element> > & facet_to_subfacet
= mesh_facets.getElementToSubelement(type_subfacet);
- Vector<Vector<Element> > & element_to_facet
+ Vector< std::vector<Element> > & element_to_facet
= mesh_facets.getElementToSubelement(type_facet);
Vector<Element> & subfacet_to_facet
= mesh_facets.getSubelementToElement(type_facet);
/// adding a new facet by copying original one
/// create new connectivity
Vector<UInt> & conn_facet = mesh_facets.getConnectivity(type_facet);
UInt nb_facet = conn_facet.getSize();
conn_facet.resize(nb_facet + 1);
for (UInt n = 0; n < conn_facet.getNbComponent(); ++n)
conn_facet(nb_facet, n) = conn_facet(f_index, n);
/// store doubled facets
UInt nb_doubled_facets = doubled_facets.getSize();
doubled_facets.resize(nb_doubled_facets + 1);
doubled_facets(nb_doubled_facets, 0) = f_index;
doubled_facets(nb_doubled_facets, 1) = nb_facet;
/// update elements connected to facet
- Vector<Element> first_facet_list = element_to_facet(f_index);
+ std::vector<Element> first_facet_list = element_to_facet(f_index);
element_to_facet.push_back(first_facet_list);
/// set new and original facets as boundary facets
- AKANTU_DEBUG_ASSERT(element_to_facet(f_index)(1) != ElementNull,
+ AKANTU_DEBUG_ASSERT(element_to_facet(f_index)[1] != ElementNull,
"can't double a facet on the boundary!");
- element_to_facet(f_index)(1) = ElementNull;
+ element_to_facet(f_index)[1] = ElementNull;
- element_to_facet(nb_facet)(0) = element_to_facet(nb_facet)(1);
- element_to_facet(nb_facet)(1) = ElementNull;
+ element_to_facet(nb_facet)[0] = element_to_facet(nb_facet)[1];
+ element_to_facet(nb_facet)[1] = ElementNull;
/// update facet_to_element vector
- ElementType type = element_to_facet(nb_facet)(0).type;
- UInt el = element_to_facet(nb_facet)(0).element;
+ ElementType type = element_to_facet(nb_facet)[0].type;
+ UInt el = element_to_facet(nb_facet)[0].element;
Vector<Element> & facet_to_element = mesh_facets.getSubelementToElement(type);
UInt i;
for (i = 0; facet_to_element(el, i).element != f_index
&& i <= facet_to_element.getNbComponent(); ++i);
facet_to_element(el, i).element = nb_facet;
/// create new links to subfacets and update list of facets
/// connected to subfacets
subfacet_to_facet.resize(nb_facet + 1);
for (UInt sf = 0; sf < nb_subfacet; ++sf) {
subfacet_to_facet(nb_facet, sf) = subfacet_to_facet(f_index, sf);
UInt sf_index = subfacet_to_facet(f_index, sf).element;
/// find index to start looping around facets connected to current
/// subfacet
UInt start = 0;
- UInt nb_connected_facets = facet_to_subfacet(sf_index).getSize();
+ UInt nb_connected_facets = facet_to_subfacet(sf_index).size();
- while (facet_to_subfacet(sf_index)(start).element != f_index
- && start <= facet_to_subfacet(sf_index).getSize()) ++start;
+ while (facet_to_subfacet(sf_index)[start].element != f_index
+ && start <= facet_to_subfacet(sf_index).size()) ++start;
/// add the new facet to the list next to the original one
++nb_connected_facets;
facet_to_subfacet(sf_index).resize(nb_connected_facets);
for (UInt f = nb_connected_facets - 1; f > start; --f) {
- facet_to_subfacet(sf_index)(f) = facet_to_subfacet(sf_index)(f - 1);
+ facet_to_subfacet(sf_index)[f] = facet_to_subfacet(sf_index)[f - 1];
}
/// check if the new facet should be inserted before or after the
/// original one: the second element connected to both original
/// and new facet will be _not_defined, so I check if the first
/// one is equal to one of the elements connected to the following
/// facet in the facet_to_subfacet vector
- UInt f_start = facet_to_subfacet(sf_index)(start).element;
+ UInt f_start = facet_to_subfacet(sf_index)[start].element;
UInt f_next;
if (start + 2 == nb_connected_facets)
- f_next = facet_to_subfacet(sf_index)(0).element;
+ f_next = facet_to_subfacet(sf_index)[0].element;
else
- f_next = facet_to_subfacet(sf_index)(start + 2).element;
+ f_next = facet_to_subfacet(sf_index)[start + 2].element;
- if ((element_to_facet(f_start)(0) == element_to_facet(f_next)(0))
- || ( element_to_facet(f_start)(0) == element_to_facet(f_next)(1)))
- facet_to_subfacet(sf_index)(start).element = nb_facet;
+ if ((element_to_facet(f_start)[0] == element_to_facet(f_next)[0])
+ || ( element_to_facet(f_start)[0] == element_to_facet(f_next)[1]))
+ facet_to_subfacet(sf_index)[start].element = nb_facet;
else
- facet_to_subfacet(sf_index)(start + 1).element = nb_facet;
+ facet_to_subfacet(sf_index)[start + 1].element = nb_facet;
/// loop on every facet connected to the current subfacet
for (UInt f = start + 2; ; ++f) {
/// reset f in order to continue looping from the beginning
if (f == nb_connected_facets) f = 0;
/// exit loop if it reaches the end
if (f == start) break;
/// if current loop facet is on the boundary, double subfacet
- UInt f_global = facet_to_subfacet(sf_index)(f).element;
- if (element_to_facet(f_global)(1).type == _not_defined ||
- element_to_facet(f_global)(1).kind == _ek_cohesive) {
+ UInt f_global = facet_to_subfacet(sf_index)[f].element;
+ if (element_to_facet(f_global)[1].type == _not_defined ||
+ element_to_facet(f_global)[1].kind == _ek_cohesive) {
doubleSubfacet(mesh,
mesh_facets,
subfacet_to_facet(f_index, sf),
start,
f,
doubled_nodes);
break;
}
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MeshUtils::doubleSubfacet(Mesh & mesh,
Mesh & mesh_facets,
const Element & subfacet,
UInt start,
UInt end,
Vector<UInt> & doubled_nodes) {
AKANTU_DEBUG_IN();
const UInt sf_index = subfacet.element;
const ElementType type_subfacet = subfacet.type;
- Vector<Vector<Element> > & facet_to_subfacet
+ Vector< std::vector<Element> > & facet_to_subfacet
= mesh_facets.getElementToSubelement(type_subfacet);
UInt nb_subfacet = facet_to_subfacet.getSize();
- Vector<UInt> & conn_point = mesh_facets.getConnectivity(_point);
+ Vector<UInt> & conn_point = mesh_facets.getConnectivity(_point_1);
Vector<Real> & position = mesh.getNodes();
UInt spatial_dimension = mesh.getSpatialDimension();
/// add the new subfacet
if (spatial_dimension == 2) {
UInt new_node = position.getSize();
/// add new node in connectivity
UInt new_subfacet = conn_point.getSize();
conn_point.resize(new_subfacet + 1);
conn_point(new_subfacet) = new_node;
/// store doubled nodes
UInt nb_doubled_nodes = doubled_nodes.getSize();
doubled_nodes.resize(nb_doubled_nodes + 1);
UInt old_node = doubled_nodes(nb_doubled_nodes, 0)
= conn_point(sf_index);
doubled_nodes(nb_doubled_nodes, 1) = new_node;
/// update position
position.resize(new_node + 1);
for (UInt dim = 0; dim < spatial_dimension; ++dim)
position(new_node, dim) = position(old_node, dim);
}
/// create a vector for the new subfacet in facet_to_subfacet
facet_to_subfacet.resize(nb_subfacet + 1);
- UInt nb_connected_facets = facet_to_subfacet(sf_index).getSize();
+ UInt nb_connected_facets = facet_to_subfacet(sf_index).size();
+ UInt new_node = conn_point(conn_point.getSize() - 1);
/// loop over facets from start to end
for (UInt f = start + 1; ; ++f) {
/// reset f in order to continue looping from the beginning
if (f == nb_connected_facets) f = 0;
- UInt f_global = facet_to_subfacet(sf_index)(f).element;
- ElementType type_facet = facet_to_subfacet(sf_index)(f).type;
+ UInt f_global = facet_to_subfacet(sf_index)[f].element;
+ ElementType type_facet = facet_to_subfacet(sf_index)[f].type;
Vector<UInt> & conn_facet = mesh_facets.getConnectivity(type_facet);
UInt nb_nodes_per_facet = conn_facet.getNbComponent();
UInt old_node = conn_point(sf_index);
- UInt new_node = conn_point(conn_point.getSize() - 1);
/// update facet connectivity
UInt i;
for (i = 0; conn_facet(f_global, i) != old_node
&& i <= nb_nodes_per_facet; ++i);
conn_facet(f_global, i) = new_node;
UInt facet_conn_node = i;
/// update element connectivity
- Vector<Vector<Element> > & elem_to_facet
+ Vector< std::vector<Element> > & elem_to_facet
= mesh_facets.getElementToSubelement(type_facet);
- for (UInt el = 0; el < elem_to_facet(f_global).getSize(); ++el) {
- const ElementType type_elem = elem_to_facet(f_global)(el).type;
+ for (UInt el = 0; el < elem_to_facet(f_global).size(); ++el) {
+ const ElementType type_elem = elem_to_facet(f_global)[el].type;
if (type_elem != _not_defined) {
- UInt elem_global = elem_to_facet(f_global)(el).element;
+ UInt elem_global = elem_to_facet(f_global)[el].element;
Vector<UInt> & conn_elem = mesh.getConnectivity(type_elem);
UInt nb_nodes_per_element = conn_elem.getNbComponent();
/// integer to do the final for loop
UInt n = 0;
/// cohesive elements: it's neccesary to identify the correct
/// facet to be updated by looking for another node
- if (elem_to_facet(f_global)(el).kind == _ek_cohesive) {
+ if (elem_to_facet(f_global)[el].kind == _ek_cohesive) {
UInt second_node = 0;
if (facet_conn_node == 0) second_node = 1;
UInt conn_second_node = conn_facet(f_global, second_node);
for (i = 0; i < nb_nodes_per_element &&
conn_elem(elem_global, i) != conn_second_node; ++i);
if (i >= nb_nodes_per_facet) n = nb_nodes_per_facet;
}
/// update connectivity
for (; n < nb_nodes_per_element; ++n) {
if (conn_elem(elem_global, n) == old_node) {
conn_elem(elem_global, n) = new_node;
break;
}
}
}
}
/// update subfacet_to_facet vector
Vector<Element> & subfacet_to_facet
= mesh_facets.getSubelementToElement(type_facet);
for (i = 0; subfacet_to_facet(f_global, i).element != sf_index
&& i <= subfacet_to_facet.getNbComponent(); ++i);
subfacet_to_facet(f_global, i).element = nb_subfacet;
/// add current facet to facet_to_subfacet last position
Element current_facet(type_facet, f_global);
facet_to_subfacet(nb_subfacet).push_back(current_facet);
/// exit loop if it reaches the end
if (f == end) break;
}
/// rearrange the facets connected to the original subfacet and
/// compute the new number of facets connected to it
if (end < start) {
for (UInt f = 0; f < start - end; ++f)
- facet_to_subfacet(sf_index)(f) = facet_to_subfacet(sf_index)(f + end + 1);
+ facet_to_subfacet(sf_index)[f] = facet_to_subfacet(sf_index)[f + end + 1];
nb_connected_facets = start - end;
}
else {
for (UInt f = 1; f < nb_connected_facets - end; ++f)
- facet_to_subfacet(sf_index)(start + f) = facet_to_subfacet(sf_index)(end + f);
+ facet_to_subfacet(sf_index)[start + f] = facet_to_subfacet(sf_index)[end + f];
nb_connected_facets -= end - start;
}
/// resize list of facets of the original subfacet
facet_to_subfacet(sf_index).resize(nb_connected_facets);
AKANTU_DEBUG_OUT();
}
__END_AKANTU__
// LocalWords: ElementType
diff --git a/src/mesh_utils/mesh_utils.hh b/src/mesh_utils/mesh_utils.hh
index 3b74d03b8..62cfb2092 100644
--- a/src/mesh_utils/mesh_utils.hh
+++ b/src/mesh_utils/mesh_utils.hh
@@ -1,227 +1,228 @@
/**
* @file mesh_utils.hh
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author David Simon Kammer <david.kammer@epfl.ch>
* @author Leonardo Snozzi <leonardo.snozzi@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Fri Aug 20 12:19:44 2010
*
* @brief All mesh utils necessary for various tasks
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "aka_csr.hh"
/* -------------------------------------------------------------------------- */
#include <vector>
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_MESH_UTILS_HH__
#define __AKANTU_MESH_UTILS_HH__
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
class MeshUtils {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
MeshUtils();
virtual ~MeshUtils();
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
/// build map from nodes to elements
static void buildNode2Elements(const Mesh & mesh, CSR<UInt> & node_to_elem, UInt spatial_dimension = 0);
+ static void buildNode2Elements(const Mesh & mesh, CSR<Element> & node_to_elem, UInt spatial_dimension = 0);
// static void buildNode2Elements(const Mesh & mesh, Vector<UInt> & node_offset, Vector<UInt> & node_to_elem, UInt spatial_dimension = 0);
/// build map from nodes to elements for a specific element type
static void buildNode2ElementsByElementType(const Mesh & mesh, ElementType type, CSR<UInt> & node_to_elem);
// static void buildNode2ElementsByElementType(const Mesh & mesh, ElementType type, Vector<UInt> & node_offset, Vector<UInt> & node_to_elem);
/// build facets elements on boundary
static void buildFacets(Mesh & mesh);
/// build facets elements : boundary and internals
static void buildAllFacets(Mesh & mesh, Mesh & mesh_facets);
/// build facets for a given spatial dimension
static void buildFacetsDimension(Mesh & mesh,
Mesh & mesh_facets,
bool boundary_only,
UInt dimension,
ByElementTypeReal & barycenter);
/// build normal to some elements
// static void buildNormals(Mesh & mesh, UInt spatial_dimension=0);
/// take the local_connectivity array as the array of local and ghost
/// connectivity, renumber the nodes and set the connectivity of the mesh
static void renumberMeshNodes(Mesh & mesh,
UInt * local_connectivities,
UInt nb_local_element,
UInt nb_ghost_element,
ElementType type,
Vector<UInt> & old_nodes);
static void setUIntData(Mesh & mesh, UInt * data, UInt nb_tags, const ElementType & type);
/// Detect closed surfaces of the mesh and save the surface id
/// of the surface elements in the array surface_id
static void buildSurfaceID(Mesh & mesh);
/// compute pbc pair for on given direction
static void computePBCMap(const Mesh & mymesh,const UInt dir,
std::map<UInt,UInt> & pbc_pair);
/// compute pbc pair for a surface pair
static void computePBCMap(const Mesh & mymesh,
const std::pair<Surface, Surface> & surface_pair,
const ElementType type,
std::map<UInt,UInt> & pbc_pair);
// /// tweak mesh connectivity to activate pbc
// static void tweakConnectivityForPBC(Mesh & mesh,
// bool flag_x,
// bool flag_y = false,
// bool flag_z = false);
/// create a multimap of nodes per surfaces
static void buildNodesPerSurface(const Mesh & mesh, CSR<UInt> & nodes_per_surface);
/// function to print the contain of the class
// virtual void printself(std::ostream & stream, int indent = 0) const;
/// remove not connected nodes /!\ this functions renumbers the nodes.
static void purifyMesh(Mesh & mesh);
/// function to insert intrinsic cohesive elements on the selected
/// facets
static void insertIntrinsicCohesiveElements(Mesh & mesh,
Mesh & mesh_facets,
ElementType type_facet,
const Vector<UInt> & facet_insertion);
/// function to insert cohesive elements on the selected facets
static void insertCohesiveElements(Mesh & mesh,
Mesh & mesh_facets,
ElementType type_facet,
const Vector<UInt> & facet_insertion,
Vector<UInt> & doubled_nodes,
Vector<UInt> & doubled_facets);
private:
/// match pairs that are on the associated pbc's
static void matchPBCPairs(const Mesh & mymesh,
const UInt dir,
std::vector<UInt> & selected_left,
std::vector<UInt> & selected_right,
std::map<UInt,UInt> & pbc_pair);
/// function used by all the renumbering functions
static void renumberNodesInConnectivity(UInt * list_nodes,
UInt nb_nodes,
std::map<UInt, UInt> & renumbering_map);
/// function to double a given facet and update the list of doubled
/// nodes
static void doubleFacet(Mesh & mesh,
Mesh & mesh_facets,
Element & facet,
Vector<UInt> & doubled_nodes,
Vector<UInt> & doubled_facets);
/// function to double a subfacet given start and end index for
/// local facet_to_subfacet vector, and update the list of doubled
/// nodes
static void doubleSubfacet(Mesh & mesh,
Mesh & mesh_facets,
const Element & subfacet,
UInt start,
UInt end,
Vector<UInt> & doubled_nodes);
/// double middle nodes if facets are _segment_3
static void doubleMiddleNode(Mesh & mesh,
Mesh & mesh_facets,
ElementType type_facet,
Vector<UInt> & doubled_nodes,
const Vector<UInt> & doubled_facets);
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
private:
};
class ElementSorter {
public:
ElementSorter(const ElementSorter & e) : atan2(e.atan2) {}
ElementSorter(std::map<Element, Real, CompElementLess> & atan2) : atan2(atan2) {}
inline bool operator()(const Element & first, const Element & second);
private:
std::map<Element, Real, CompElementLess> & atan2;
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
#if defined (AKANTU_INCLUDE_INLINE_IMPL)
# include "mesh_utils_inline_impl.cc"
#endif
/// standard output stream operator
// inline std::ostream & operator <<(std::ostream & stream, const MeshUtils & _this)
// {
// _this.printself(stream);
// return stream;
// }
__END_AKANTU__
#endif /* __AKANTU_MESH_UTILS_HH__ */
diff --git a/src/model/heat_transfer/heat_transfer_model.cc b/src/model/heat_transfer/heat_transfer_model.cc
index cbd9840e9..ef3878500 100644
--- a/src/model/heat_transfer/heat_transfer_model.cc
+++ b/src/model/heat_transfer/heat_transfer_model.cc
@@ -1,789 +1,782 @@
/**
* @file heat_transfer_model.cc
*
* @author Rui Wang <rui.wang@epfl.ch>
* @author Srinivasa Babu Ramisetti <srinivasa.ramisetti@epfl.ch>
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
* @author David Simon Kammer <david.kammer@epfl.ch>
*
* @date Sun May 01 19:14:43 2011
*
* @brief Implementation of HeatTransferModel class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "heat_transfer_model.hh"
#include "aka_math.hh"
#include "aka_common.hh"
#include "fem_template.hh"
#include "mesh.hh"
#include "static_communicator.hh"
#include "parser.hh"
#include "generalized_trapezoidal.hh"
// #include "sparse_matrix.hh"
// #include "solver.hh"
// #ifdef AKANTU_USE_MUMPS
// #include "solver_mumps.hh"
// #endif
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
HeatTransferModel::HeatTransferModel(Mesh & mesh,
UInt dim,
const ID & id,
const MemoryID & memory_id) :
Model(mesh, id, memory_id),
integrator(new ForwardEuler()),
spatial_dimension(dim),
temperature_gradient ("temperature_gradient", id),
temperature_on_qpoints ("temperature_on_qpoints", id),
conductivity_on_qpoints ("conductivity_on_qpoints", id),
k_gradt_on_qpoints ("k_gradt_on_qpoints", id),
int_bt_k_gT ("int_bt_k_gT", id),
bt_k_gT ("bt_k_gT", id),
thermal_energy ("thermal_energy", id)
{
AKANTU_DEBUG_IN();
createSynchronizerRegistry(this);
if (spatial_dimension == 0) spatial_dimension = mesh.getSpatialDimension();
std::stringstream sstr; sstr << id << ":fem";
registerFEMObject<MyFEMType>(sstr.str(), mesh,spatial_dimension);
this->temperature= NULL;
this->residual = NULL;
this->boundary = NULL;
this->conductivity_variation = 0.0;
this->t_ref = 0;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::initModel() {
getFEM().initShapeFunctions(_not_ghost);
getFEM().initShapeFunctions(_ghost);
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::initParallel(MeshPartition * partition,
DataAccessor * data_accessor) {
AKANTU_DEBUG_IN();
if (data_accessor == NULL) data_accessor = this;
Synchronizer & synch_parallel = createParallelSynch(partition,data_accessor);
synch_registry->registerSynchronizer(synch_parallel, _gst_htm_capacity);
synch_registry->registerSynchronizer(synch_parallel, _gst_htm_temperature);
synch_registry->registerSynchronizer(synch_parallel, _gst_htm_gradient_temperature);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::initPBC() {
AKANTU_DEBUG_IN();
Model::initPBC();
PBCSynchronizer * synch = new PBCSynchronizer(pbc_pair);
synch_registry->registerSynchronizer(*synch, _gst_htm_capacity);
synch_registry->registerSynchronizer(*synch, _gst_htm_temperature);
changeLocalEquationNumberforPBC(pbc_pair,1);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::initVectors() {
AKANTU_DEBUG_IN();
UInt nb_nodes = getFEM().getMesh().getNbNodes();
std::stringstream sstr_temp; sstr_temp << id << ":temperature";
std::stringstream sstr_temp_rate; sstr_temp_rate << id << ":temperature_rate";
std::stringstream sstr_inc; sstr_inc << id << ":increment";
std::stringstream sstr_ext_flx; sstr_ext_flx << id << ":external_flux";
std::stringstream sstr_residual; sstr_residual << id << ":residual";
std::stringstream sstr_lump; sstr_lump << id << ":lumped";
std::stringstream sstr_boun; sstr_boun << id << ":boundary";
temperature = &(alloc<Real>(sstr_temp.str(), nb_nodes, 1, REAL_INIT_VALUE));
temperature_rate = &(alloc<Real>(sstr_temp_rate.str(), nb_nodes, 1, REAL_INIT_VALUE));
increment = &(alloc<Real>(sstr_inc.str(), nb_nodes, 1, REAL_INIT_VALUE));
external_heat_rate = &(alloc<Real>(sstr_ext_flx.str(), nb_nodes, 1, REAL_INIT_VALUE));
residual = &(alloc<Real>(sstr_residual.str(), nb_nodes, 1, REAL_INIT_VALUE));
capacity_lumped = &(alloc<Real>(sstr_lump.str(), nb_nodes, 1, REAL_INIT_VALUE));
boundary = &(alloc<bool>(sstr_boun.str(), nb_nodes, 1, false));
Mesh::ConnectivityTypeList::const_iterator it;
/* -------------------------------------------------------------------------- */
// byelementtype vectors
getFEM().getMesh().initByElementTypeVector(temperature_on_qpoints,
1,
spatial_dimension);
getFEM().getMesh().initByElementTypeVector(temperature_gradient,
spatial_dimension,
spatial_dimension);
getFEM().getMesh().initByElementTypeVector(conductivity_on_qpoints,
spatial_dimension*spatial_dimension,
spatial_dimension);
getFEM().getMesh().initByElementTypeVector(k_gradt_on_qpoints,
spatial_dimension,
spatial_dimension);
getFEM().getMesh().initByElementTypeVector(bt_k_gT,
1,
spatial_dimension,true);
getFEM().getMesh().initByElementTypeVector(int_bt_k_gT,
1,
spatial_dimension,true);
getFEM().getMesh().initByElementTypeVector(thermal_energy,
1,
spatial_dimension);
for(UInt g = _not_ghost; g <= _ghost; ++g) {
GhostType gt = (GhostType) g;
const Mesh::ConnectivityTypeList & type_list =
getFEM().getMesh().getConnectivityTypeList(gt);
for(it = type_list.begin(); it != type_list.end(); ++it) {
if(Mesh::getSpatialDimension(*it) != spatial_dimension) continue;
UInt nb_element = getFEM().getMesh().getNbElement(*it, gt);
UInt nb_quad_points = this->getFEM().getNbQuadraturePoints(*it, gt) * nb_element;
temperature_on_qpoints(*it, gt).resize(nb_quad_points);
temperature_on_qpoints(*it, gt).clear();
temperature_gradient(*it, gt).resize(nb_quad_points);
temperature_gradient(*it, gt).clear();
conductivity_on_qpoints(*it, gt).resize(nb_quad_points);
conductivity_on_qpoints(*it, gt).clear();
k_gradt_on_qpoints(*it, gt).resize(nb_quad_points);
k_gradt_on_qpoints(*it, gt).clear();
bt_k_gT(*it, gt).resize(nb_quad_points);
bt_k_gT(*it, gt).clear();
int_bt_k_gT(*it, gt).resize(nb_element);
int_bt_k_gT(*it, gt).clear();
thermal_energy(*it, gt).resize(nb_element);
thermal_energy(*it, gt).clear();
}
}
/* -------------------------------------------------------------------------- */
dof_synchronizer = new DOFSynchronizer(getFEM().getMesh(),1);
dof_synchronizer->initLocalDOFEquationNumbers();
dof_synchronizer->initGlobalDOFEquationNumbers();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
HeatTransferModel::~HeatTransferModel()
{
AKANTU_DEBUG_IN();
delete [] conductivity;
if(dof_synchronizer) delete dof_synchronizer;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::assembleCapacityLumped(const GhostType & ghost_type) {
AKANTU_DEBUG_IN();
FEM & fem = getFEM();
const Mesh::ConnectivityTypeList & type_list
= fem.getMesh().getConnectivityTypeList(ghost_type);
Mesh::ConnectivityTypeList::const_iterator it;
for(it = type_list.begin(); it != type_list.end(); ++it)
{
if(Mesh::getSpatialDimension(*it) != spatial_dimension) continue;
UInt nb_element = getFEM().getMesh().getNbElement(*it,ghost_type);
UInt nb_quadrature_points = getFEM().getNbQuadraturePoints(*it, ghost_type);
Vector<Real> rho_1 (nb_element * nb_quadrature_points,1, capacity * density);
fem.assembleFieldLumped(rho_1,1,*capacity_lumped,
dof_synchronizer->getLocalDOFEquationNumbers(),
*it, ghost_type);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::assembleCapacityLumped() {
AKANTU_DEBUG_IN();
capacity_lumped->clear();
assembleCapacityLumped(_not_ghost);
assembleCapacityLumped(_ghost);
getSynchronizerRegistry().synchronize(akantu::_gst_htm_capacity);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::updateResidual() {
AKANTU_DEBUG_IN();
/// @f$ r = q_{ext} - q_{int} - C \dot T @f$
// start synchronization
synch_registry->asynchronousSynchronize(_gst_htm_temperature);
// finalize communications
synch_registry->waitEndSynchronize(_gst_htm_temperature);
//clear the array
/// first @f$ r = q_{ext} @f$
// residual->clear();
residual->copy(*external_heat_rate);
/// then @f$ r -= q_{int} @f$
// update the not ghost ones
updateResidual(_not_ghost);
// update for the received ghosts
updateResidual(_ghost);
/// finally @f$ r -= C \dot T @f$
// lumped C
UInt nb_nodes = temperature_rate->getSize();
UInt nb_degree_of_freedom = temperature_rate->getNbComponent();
Real * capacity_val = capacity_lumped->values;
Real * temp_rate_val = temperature_rate->values;
Real * res_val = residual->values;
bool * boundary_val = boundary->values;
for (UInt n = 0; n < nb_nodes * nb_degree_of_freedom; ++n) {
if(!(*boundary_val)) {
*res_val -= *capacity_val * *temp_rate_val;
}
boundary_val++;
res_val++;
capacity_val++;
temp_rate_val++;
}
#ifndef AKANTU_NDEBUG
getSynchronizerRegistry().synchronize(akantu::_gst_htm_gradient_temperature);
#endif
solveExplicitLumped();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::computeConductivityOnQuadPoints(const GhostType & ghost_type) {
const Mesh::ConnectivityTypeList & type_list =
this->getFEM().getMesh().getConnectivityTypeList(ghost_type);
Mesh::ConnectivityTypeList::const_iterator it;
for(it = type_list.begin(); it != type_list.end(); ++it) {
if(Mesh::getSpatialDimension(*it) != spatial_dimension) continue;
//compute the temperature on quadrature points
this->getFEM().interpolateOnQuadraturePoints(*temperature,
temperature_on_qpoints(*it, ghost_type),
1 ,*it,ghost_type);
Vector<Real>::iterator<types::RMatrix> c_iterator =
conductivity_on_qpoints(*it,ghost_type).begin(spatial_dimension,spatial_dimension);
Real * T_val = temperature_on_qpoints(*it, ghost_type).values;
UInt nb_quadrature_points = getFEM().getNbQuadraturePoints(*it, ghost_type);
UInt nb_element = getFEM().getMesh().getNbElement(*it,ghost_type);
for (UInt el = 0; el < nb_element; ++el) {
for (UInt q = 0; q < nb_quadrature_points; ++q) {
Real * c_onquad_val = c_iterator->storage();
for (UInt i = 0; i < spatial_dimension*spatial_dimension; ++i) {
// if (i == 0 && *T_val - t_ref > 0)
// AKANTU_DEBUG_INFO("conductivity is " << conductivity[i]
// << " variation is " << conductivity_variation
// << " temp increase is " << *T_val - t_ref
// << " new conductivity is " << conductivity[i] + conductivity_variation* (*T_val - t_ref));
c_onquad_val[i] = conductivity[i] + conductivity_variation* (*T_val - t_ref);
}
++T_val;
++c_iterator;
}
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::computeKgradT(const GhostType & ghost_type) {
computeConductivityOnQuadPoints(ghost_type);
const Mesh::ConnectivityTypeList & type_list =
this->getFEM().getMesh().getConnectivityTypeList(ghost_type);
Mesh::ConnectivityTypeList::const_iterator it;
for(it = type_list.begin(); it != type_list.end(); ++it) {
if(Mesh::getSpatialDimension(*it) != spatial_dimension) continue;
UInt nb_element = getFEM().getMesh().getNbElement(*it,ghost_type);
UInt nb_quadrature_points = getFEM().getNbQuadraturePoints(*it, ghost_type);
Vector<Real> & gradient = temperature_gradient(*it, ghost_type);
gradient.resize(nb_element * nb_quadrature_points);
this->getFEM().gradientOnQuadraturePoints(*temperature,
gradient,
1 ,*it,ghost_type);
Vector<Real>::iterator<types::RMatrix> c_iterator =
conductivity_on_qpoints(*it,ghost_type).begin(spatial_dimension,spatial_dimension);
Vector<Real>::iterator<types::RVector> gT_iterator =
temperature_gradient(*it,ghost_type).begin(spatial_dimension);
Vector<Real>::iterator<types::RVector> k_gT_iterator =
k_gradt_on_qpoints(*it,ghost_type).begin(spatial_dimension);
for (UInt el = 0; el < nb_element; ++el) {
for (UInt i = 0; i < nb_quadrature_points; ++i){
Math::matrixt_vector(spatial_dimension, spatial_dimension,
c_iterator->storage(),
gT_iterator->storage(),
k_gT_iterator->storage());
++c_iterator;
++gT_iterator;
++k_gT_iterator;
}
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::updateResidual(const GhostType & ghost_type) {
AKANTU_DEBUG_IN();
const Mesh::ConnectivityTypeList & type_list =
this->getFEM().getMesh().getConnectivityTypeList(ghost_type);
Mesh::ConnectivityTypeList::const_iterator it;
for(it = type_list.begin(); it != type_list.end(); ++it) {
if(Mesh::getSpatialDimension(*it) != spatial_dimension) continue;
Vector<Real> & shapes_derivatives =
const_cast<Vector<Real> &>(getFEM().getShapesDerivatives(*it,ghost_type));
UInt nb_quadrature_points = getFEM().getNbQuadraturePoints(*it, ghost_type);
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(*it);
UInt nb_element = getFEM().getMesh().getNbElement(*it,ghost_type);
// compute k \grad T
computeKgradT(ghost_type);
Vector<Real>::iterator<types::RVector> k_gT_iterator =
k_gradt_on_qpoints(*it,ghost_type).begin(spatial_dimension);
Vector<Real>::iterator<types::RMatrix> shapesd_iterator =
shapes_derivatives.begin(nb_nodes_per_element,spatial_dimension);
Vector<Real>::iterator<types::RVector> bt_k_gT_iterator =
bt_k_gT(*it,ghost_type).begin(nb_nodes_per_element);
// UInt bt_k_gT_size = nb_nodes_per_element;
// Vector<Real> * bt_k_gT =
// new Vector <Real> (nb_quadrature_points*nb_element, bt_k_gT_size);
// Real * bt_k_gT_val = bt_k_gT->values;
for (UInt el = 0; el < nb_element; ++el) {
for (UInt i = 0; i < nb_quadrature_points; ++i) {
Math::matrix_vector(nb_nodes_per_element, spatial_dimension,
shapesd_iterator->storage(),
k_gT_iterator->storage(),
bt_k_gT_iterator->storage());
++shapesd_iterator;
++k_gT_iterator;
++bt_k_gT_iterator;
}
}
this->getFEM().integrate(bt_k_gT(*it,ghost_type),
int_bt_k_gT(*it,ghost_type),
nb_nodes_per_element, *it,ghost_type);
this->getFEM().assembleVector(int_bt_k_gT(*it,ghost_type), *residual,
dof_synchronizer->getLocalDOFEquationNumbers(),
1, *it,ghost_type,NULL,-1);
//delete q_e;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::solveExplicitLumped() {
AKANTU_DEBUG_IN();
UInt nb_nodes = increment->getSize();
UInt nb_degree_of_freedom = increment->getNbComponent();
Real * capa_val = capacity_lumped->values;
Real * res_val = residual->values;
bool * boundary_val = boundary->values;
Real * inc = increment->values;
for (UInt n = 0; n < nb_nodes * nb_degree_of_freedom; ++n) {
if(!(*boundary_val)) {
*inc = (*res_val / *capa_val);
}
res_val++;
boundary_val++;
inc++;
capa_val++;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::explicitPred() {
AKANTU_DEBUG_IN();
integrator->integrationSchemePred(time_step,
*temperature,
*temperature_rate,
*boundary);
UInt nb_nodes = temperature->getSize();
UInt nb_degree_of_freedom = temperature->getNbComponent();
Real * temp = temperature->values;
for (UInt n = 0; n < nb_nodes * nb_degree_of_freedom; ++n, ++temp)
if(*temp < 0.) *temp = 0.;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::explicitCorr() {
AKANTU_DEBUG_IN();
integrator->integrationSchemeCorrTempRate(time_step,
*temperature,
*temperature_rate,
*boundary,
*increment);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
Real HeatTransferModel::getStableTimeStep()
{
AKANTU_DEBUG_IN();
Real conductivitymax = -std::numeric_limits<Real>::max();
Real el_size;
Real min_el_size = std::numeric_limits<Real>::max();
- Real * coord = getFEM().getMesh().getNodes().values;
const Mesh::ConnectivityTypeList & type_list =
getFEM().getMesh().getConnectivityTypeList();
Mesh::ConnectivityTypeList::const_iterator it;
for(it = type_list.begin(); it != type_list.end(); ++it) {
if(getFEM().getMesh().getSpatialDimension(*it) != spatial_dimension)
continue;
UInt nb_nodes_per_element = getFEM().getMesh().getNbNodesPerElement(*it);
- UInt nb_element = getFEM().getMesh().getNbElement(*it);
- UInt * conn = getFEM().getMesh().getConnectivity(*it, _not_ghost).values;
- Real * u = new Real[nb_nodes_per_element*spatial_dimension];
+ Vector<Real> coord(0, nb_nodes_per_element*spatial_dimension);
+ FEM::extractNodalToElementField(getFEM().getMesh(), getFEM().getMesh().getNodes(),
+ coord, *it, _not_ghost);
- for (UInt el = 0; el < nb_element; ++el) {
- UInt el_offset = el * nb_nodes_per_element;
- for (UInt n = 0; n < nb_nodes_per_element; ++n) {
- UInt offset_conn = conn[el_offset + n] * spatial_dimension;
- memcpy(u + n * spatial_dimension,
- coord + offset_conn,
- spatial_dimension * sizeof(Real));
- }
+ Vector<Real>::iterator< types::Matrix<Real> > el_coord = coord.begin(spatial_dimension, nb_nodes_per_element);
+ UInt nb_element = getFEM().getMesh().getNbElement(*it);
- el_size = getFEM().getElementInradius(u, *it);
+ for (UInt el = 0; el < nb_element; ++el, ++el_coord) {
+ el_size = getFEM().getElementInradius(*el_coord, *it);
min_el_size = std::min(min_el_size, el_size);
}
AKANTU_DEBUG_INFO("The minimum element size : " << min_el_size
<< " and the max conductivity is : "
<< conductivitymax);
- delete [] u;
}
//get the biggest parameter from k11 until k33//
for(UInt i = 0; i < spatial_dimension * spatial_dimension; i++) {
if(conductivity[i] > conductivitymax)
conductivitymax=conductivity[i];
}
Real min_dt = 2 * min_el_size * min_el_size * density
* capacity/conductivitymax;
StaticCommunicator::getStaticCommunicator().allReduce(&min_dt, 1, _so_min);
AKANTU_DEBUG_OUT();
return min_dt;
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::readMaterials(const std::string & filename) {
Parser parser;
parser.open(filename);
std::string opt_param;
std::string mat_type = parser.getNextSection("heat", opt_param);
if (mat_type != ""){
parser.readSection<HeatTransferModel>(*this);
}
else
AKANTU_DEBUG_ERROR("did not find any section with material info "
<<"for heat conduction");
}
/* -------------------------------------------------------------------------- */
bool HeatTransferModel::setParam(const std::string & key,
const std::string & value) {
std::stringstream str(value);
if (key == "conductivity") {
conductivity = new Real[spatial_dimension * spatial_dimension];
for(UInt i = 0; i < 3; i++)
for(UInt j = 0; j < 3; j++) {
if (i< spatial_dimension && j < spatial_dimension){
str >> conductivity[i*spatial_dimension+j];
AKANTU_DEBUG_INFO("Conductivity(" << i << "," << j << ") = "
<< conductivity[i*spatial_dimension+j]);
} else {
Real tmp;
str >> tmp;
}
}
}
else if (key == "conductivity_variation") {
str >> conductivity_variation;
}
else if (key == "temperature_reference") {
str >> t_ref;
}
else if (key == "capacity"){
str >> capacity;
AKANTU_DEBUG_INFO("The capacity of the material is:" << capacity);
}
else if (key == "density"){
str >> density;
AKANTU_DEBUG_INFO("The density of the material is:" << density);
} else {
return false;
}
return true;
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::initFull(const std::string & material_file){
readMaterials(material_file);
//model initialization
initModel();
//initialize the vectors
initVectors();
temperature->clear();
temperature_rate->clear();
external_heat_rate->clear();
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::initFEMBoundary(bool create_surface) {
if(create_surface)
MeshUtils::buildFacets(getFEM().getMesh());
FEM & fem_boundary = getFEMBoundary();
fem_boundary.initShapeFunctions();
fem_boundary.computeNormalsOnControlPoints();
}
/* -------------------------------------------------------------------------- */
Real HeatTransferModel::computeThermalEnergyByNode() {
AKANTU_DEBUG_IN();
Real ethermal = 0.;
Vector<Real>::iterator<types::RVector> heat_rate_it =
residual->begin(residual->getNbComponent());
Vector<Real>::iterator<types::RVector> heat_rate_end =
residual->end(residual->getNbComponent());
UInt n = 0;
for(;heat_rate_it != heat_rate_end; ++heat_rate_it, ++n) {
Real heat = 0;
bool is_local_node = mesh.isLocalOrMasterNode(n);
bool is_not_pbc_slave_node = !getIsPBCSlaveNode(n);
bool count_node = is_local_node && is_not_pbc_slave_node;
types::RVector & heat_rate = *heat_rate_it;
for (UInt i = 0; i < heat_rate.size(); ++i) {
if (count_node)
heat += heat_rate[i] * time_step;
}
ethermal += heat;
}
StaticCommunicator::getStaticCommunicator().allReduce(&ethermal, 1, _so_sum);
AKANTU_DEBUG_OUT();
return ethermal;
}
/* -------------------------------------------------------------------------- */
void HeatTransferModel::computeThermalEnergyByElement() {
AKANTU_DEBUG_IN();
Mesh & mesh = getFEM().getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension);
for(; it != last_type; ++it) {
if(!thermal_energy.exists(*it, _not_ghost)) {
UInt nb_element = getFEM().getMesh().getNbElement(*it, _not_ghost);
UInt nb_quadrature_points = getFEM().getNbQuadraturePoints(*it, _not_ghost);
thermal_energy.alloc(nb_element * nb_quadrature_points, 1,
*it, _not_ghost);
}
Real * ethermal = thermal_energy(*it, _not_ghost).storage();
Vector<Real>::iterator<Real> temperature_it =
this->temperature_on_qpoints(*it).begin();
Vector<Real>::iterator<Real> temperature_end =
this->temperature_on_qpoints(*it).end();
for(;temperature_it != temperature_end; ++temperature_it, ++ ethermal) {
*ethermal = capacity * density * *temperature_it;
}
}
AKANTU_DEBUG_OUT();
}
Real HeatTransferModel::getEnergy(const std::string & id) {
AKANTU_DEBUG_IN();
//return computeThermalEnergyByNode();
Real energy = 0.;
computeThermalEnergyByElement();
/// integrate the thermal energy for each type of element
Mesh & mesh = getFEM().getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension);
for(; it != last_type; ++it) {
energy += getFEM().integrate(thermal_energy(*it, _not_ghost), *it,
_not_ghost);
}
/// reduction sum over all processors
StaticCommunicator::getStaticCommunicator().allReduce(&energy, 1, _so_sum);
AKANTU_DEBUG_OUT();
return energy;
}
/* -------------------------------------------------------------------------- */
Real HeatTransferModel::getEnergy(const std::string & energy_id, const ElementType & type, UInt index) {
AKANTU_DEBUG_IN();
Real ethermal = 0.;
types::RVector ethermal_on_quad_points(getFEM().getNbQuadraturePoints(type));
Vector<Real>::iterator<Real> temperature_it =
this->temperature_on_qpoints(type).begin();
Vector<Real>::iterator<Real> temperature_end =
this->temperature_on_qpoints(type).begin();
UInt nb_quadrature_points = getFEM().getNbQuadraturePoints(type);
temperature_it += index*nb_quadrature_points;
temperature_end += (index+1)*nb_quadrature_points;
Real * ethermal_quad = ethermal_on_quad_points.storage();
for(;temperature_it != temperature_end; ++temperature_it, ++ ethermal_quad) {
*ethermal_quad = capacity * density * *temperature_it;
}
ethermal = getFEM().integrate(ethermal_on_quad_points, type, index);
AKANTU_DEBUG_OUT();
return ethermal;
}
/* -------------------------------------------------------------------------- */
__END_AKANTU__
diff --git a/src/model/heat_transfer/heat_transfer_model.hh b/src/model/heat_transfer/heat_transfer_model.hh
index af569a39c..478cc8ac4 100644
--- a/src/model/heat_transfer/heat_transfer_model.hh
+++ b/src/model/heat_transfer/heat_transfer_model.hh
@@ -1,318 +1,318 @@
/**
* @file heat_transfer_model.hh
*
* @author Rui Wang <rui.wang@epfl.ch>
* @author Srinivasa Babu Ramisetti <srinivasa.ramisetti@epfl.ch>
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
*
* @date Sun May 01 19:14:43 2011
*
* @brief Model of Heat Transfer
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_HEAT_TRANSFER_MODEL_HH__
#define __AKANTU_HEAT_TRANSFER_MODEL_HH__
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "aka_memory.hh"
#include "model.hh"
#include "integrator_gauss.hh"
#include "shape_lagrange.hh"
namespace akantu {
class IntegrationScheme1stOrder;
// class Solver;
// class SparseMatrix;
}
__BEGIN_AKANTU__
class HeatTransferModel : public Model, public DataAccessor {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
typedef FEMTemplate<IntegratorGauss,ShapeLagrange> MyFEMType;
HeatTransferModel(UInt spatial_dimension,
const ID & id = "heat_transfer_model",
const MemoryID & memory_id = 0) ;
HeatTransferModel(Mesh & mesh,
UInt spatial_dimension = 0,
const ID & id = "heat_transfer_model",
const MemoryID & memory_id = 0);
virtual ~HeatTransferModel() ;
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
/// generic function to initialize everything ready for explicit dynamics
void initFull(const std::string & material_file);
/// initialize the fem object of the boundary
void initFEMBoundary(bool create_surface = true);
/// set the parameters
bool setParam(const std::string & key, const std::string & value);
/// read one material file to instantiate all the materials
void readMaterials(const std::string & filename);
/// allocate all vectors
void initVectors();
/// register the tags associated with the parallel synchronizer
void initParallel(MeshPartition * partition, DataAccessor * data_accessor=NULL);
/// initialize the model
void initModel();
/// init PBC synchronizer
void initPBC();
/// function to print the contain of the class
virtual void printself(__attribute__ ((unused)) std::ostream & stream,
__attribute__ ((unused)) int indent = 0) const {};
/* ------------------------------------------------------------------------ */
/* Methods for explicit */
/* ------------------------------------------------------------------------ */
public:
/// compute and get the stable time step
Real getStableTimeStep();
/// compute the heat flux
void updateResidual();
/// calculate the lumped capacity vector for heat transfer problem
void assembleCapacityLumped();
/// update the temperature from the temperature rate
void explicitPred();
/// update the temperature rate from the increment
void explicitCorr();
// /// initialize the heat flux
// void initializeResidual(Vector<Real> &temp);
// /// initialize temperature
// void initializeTemperature(Vector<Real> &temp);
private:
/// solve the system in temperature rate @f$C\delta \dot T = q_{n+1} - C \dot T_{n}@f$
void solveExplicitLumped();
/// compute the heat flux on ghost types
void updateResidual(const GhostType & ghost_type);
/// calculate the lumped capacity vector for heat transfer problem (w ghosttype)
void assembleCapacityLumped(const GhostType & ghost_type);
-
+
/// compute the conductivity tensor for each quadrature point in an array
void computeConductivityOnQuadPoints(const GhostType & ghost_type);
- /// compute vector k \grad T for each quadrature point
+ /// compute vector k \grad T for each quadrature point
void computeKgradT(const GhostType & ghost_type);
/* ------------------------------------------------------------------------ */
/* Data Accessor inherited members */
/* ------------------------------------------------------------------------ */
public:
inline UInt getNbDataForElements(const Vector<Element> & elements,
SynchronizationTag tag) const;
inline void packElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag) const;
inline void unpackElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag);
inline UInt getNbDataToPack(SynchronizationTag tag) const;
inline UInt getNbDataToUnpack(SynchronizationTag tag) const;
inline void packData(CommunicationBuffer & buffer,
const UInt index,
SynchronizationTag tag) const;
inline void unpackData(CommunicationBuffer & buffer,
const UInt index,
SynchronizationTag tag);
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
inline FEM & getFEMBoundary(std::string name = "");
/// get the dimension of the system space
AKANTU_GET_MACRO(SpatialDimension, spatial_dimension, UInt);
/// get the current value of the time step
AKANTU_GET_MACRO(TimeStep, time_step, Real);
/// set the value of the time step
AKANTU_SET_MACRO(TimeStep, time_step, Real);
/// get the assembled heat flux
AKANTU_GET_MACRO(Residual, *residual, Vector<Real>&);
/// get the lumped capacity
AKANTU_GET_MACRO(CapacityLumped, * capacity_lumped, Vector<Real>&);
/// get the boundary vector
AKANTU_GET_MACRO(Boundary, * boundary, Vector<bool>&);
/// get the external heat rate vector
AKANTU_GET_MACRO(ExternalHeatRate, * external_heat_rate, Vector<Real>&);
/// get the temperature gradient
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(TemperatureGradient, temperature_gradient, Real);
/// get the conductivity on q points
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(ConductivityOnQpoints, conductivity_on_qpoints, Real);
/// get the conductivity on q points
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(TemperatureOnQpoints, temperature_on_qpoints, Real);
/// internal variables
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(KGradtOnQpoints, k_gradt_on_qpoints, Real);
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(IntBtKgT, int_bt_k_gT, Real);
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(BtKgT, bt_k_gT, Real);
/// get the temperature
AKANTU_GET_MACRO(Temperature, *temperature, Vector<Real> &);
/// get the temperature derivative
AKANTU_GET_MACRO(TemperatureRate, *temperature_rate, Vector<Real> &);
/// get the equation number Vector<Int>
AKANTU_GET_MACRO(EquationNumber, *equation_number, const Vector<Int> &);
/// compute the thermal energy
Real computeThermalEnergyByNode();
/// get thermal energy by element
Real getEnergy(const std::string & energy_id, const ElementType & type, UInt index);
/// get thermal energy
Real getEnergy(const std::string & energy_id);
/// compute thermal energy by element
void computeThermalEnergyByElement();
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
private:
IntegrationScheme1stOrder * integrator;
/// time step
Real time_step;
/// temperatures array
Vector<Real> * temperature;
/// temperatures derivatives array
Vector<Real> * temperature_rate;
/// increment array (@f$\delta \dot T@f$ or @f$\delta T@f$)
Vector<Real> * increment;
/// the spatial dimension
UInt spatial_dimension;
/// the density
Real density;
/// the speed of the changing temperature
ByElementTypeReal temperature_gradient;
/// temperature field on quadrature points
ByElementTypeReal temperature_on_qpoints;
/// conductivity tensor on quadrature points
ByElementTypeReal conductivity_on_qpoints;
/// vector k \grad T on quad points
ByElementTypeReal k_gradt_on_qpoints;
/// vector \int \grad N k \grad T
ByElementTypeReal int_bt_k_gT;
/// vector \grad N k \grad T
ByElementTypeReal bt_k_gT;
- //external flux vector
+ /// external flux vector
Vector<Real> * external_heat_rate;
/// residuals array
Vector<Real> * residual;
/// position of a dof in the K matrix
Vector<Int> * equation_number;
//lumped vector
Vector<Real> * capacity_lumped;
/// boundary vector
Vector<bool> * boundary;
//realtime
Real time;
///capacity
Real capacity;
//conductivity matrix
Real* conductivity;
//linear variation of the conductivity (for temperature dependent conductivity)
Real conductivity_variation;
// reference temperature for the interpretation of temperature variation
Real t_ref;
//the biggest parameter of conductivity matrix
Real conductivitymax;
/// thermal energy by element
ByElementTypeReal thermal_energy;
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
#if defined (AKANTU_INCLUDE_INLINE_IMPL)
# include "heat_transfer_model_inline_impl.cc"
#endif
/// standard output stream operator
inline std::ostream & operator <<(std::ostream & stream, const HeatTransferModel & _this)
{
_this.printself(stream);
return stream;
}
__END_AKANTU__
#endif /* __AKANTU_HEAT_TRANSFER_MODEL_HH__ */
diff --git a/src/model/solid_mechanics/contact.cc b/src/model/solid_mechanics/contact.cc
index 3cd9c5b04..ff8ce6b9e 100644
--- a/src/model/solid_mechanics/contact.cc
+++ b/src/model/solid_mechanics/contact.cc
@@ -1,264 +1,264 @@
/**
* @file contact.cc
*
* @author David Simon Kammer <david.kammer@epfl.ch>
* @author Leonardo Snozzi <leonardo.snozzi@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Oct 08 15:20:20 2010
*
* @brief Common part of contact classes
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "contact.hh"
#include "contact_search.hh"
#include "aka_common.hh"
#include "contact_3d_explicit.hh"
#include "contact_search_explicit.hh"
#include "contact_2d_explicit.hh"
#include "contact_search_2d_explicit.hh"
#include "contact_rigid.hh"
/* -------------------------------------------------------------------------- */
#include <iostream>
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
Contact::Contact(const SolidMechanicsModel & model,
const ContactType & type,
const ContactID & id,
const MemoryID & memory_id) :
Memory(memory_id), id(id), model(model),
type(type),
node_to_elements_offset("node_to_elements_offset", id, memory_id),
node_to_elements("node_to_elements", id, memory_id) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
Contact::~Contact() {
AKANTU_DEBUG_IN();
delete contact_search;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Contact::initContact(bool add_surfaces_flag) {
AKANTU_DEBUG_IN();
Mesh & mesh = model.getFEM().getMesh();
/// Build surfaces if not done yet
if(mesh.getNbSurfaces() == 0) { /* initialise nb_surfaces to zero in mesh_io */
MeshUtils::buildFacets(mesh);
MeshUtils::buildSurfaceID(mesh);
}
/// Detect facet types
const Mesh::ConnectivityTypeList & type_list = mesh.getConnectivityTypeList();
Mesh::ConnectivityTypeList::const_iterator it;
UInt nb_facet_types = 0;
ElementType facet_type[_max_element_type];
UInt spatial_dimension = mesh.getSpatialDimension();
for(it = type_list.begin(); it != type_list.end(); ++it) {
ElementType type = *it;
if(mesh.getSpatialDimension(type) != spatial_dimension) continue;
- facet_type[nb_facet_types] = mesh.getFacetElementType(type);
+ facet_type[nb_facet_types] = mesh.getFacetType(type);
nb_facet_types++;
}
CSR<UInt> suface_nodes;
MeshUtils::buildNodesPerSurface(mesh, suface_nodes);
suface_nodes.copy(surface_to_nodes_offset, surface_to_nodes);
for (UInt el_type = 0; el_type < nb_facet_types; ++el_type) {
ElementType type = facet_type[el_type];
this->node_to_elements_offset.alloc(0, 1, type, _not_ghost);
this->node_to_elements.alloc(0, 1, type, _not_ghost);
CSR<UInt> node_to_elem;
MeshUtils::buildNode2ElementsByElementType(mesh, type, node_to_elem);
node_to_elem.copy(node_to_elements_offset(type, _not_ghost), node_to_elements(type, _not_ghost));
}
if(add_surfaces_flag) {
for (UInt i = 0; i < mesh.getNbSurfaces(); ++i) {
addMasterSurface(i);
std::cout << "Master surface " << i << " has been added automatically" << std::endl;
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Contact::initSearch() {
AKANTU_DEBUG_IN();
contact_search->initSearch();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Contact::initNeighborStructure() {
AKANTU_DEBUG_IN();
contact_search->initNeighborStructure();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Contact::initNeighborStructure(__attribute__ ((unused)) const Surface & master_surface) {
AKANTU_DEBUG_IN();
contact_search->initNeighborStructure();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Contact::checkAndUpdate() {
AKANTU_DEBUG_IN();
std::vector<Surface>::iterator it;
for (it = master_surfaces.begin(); it != master_surfaces.end(); ++it) {
if(contact_search->checkIfUpdateStructureNeeded(*it)) {
contact_search->updateStructure(*it);
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Contact::updateContact() {
AKANTU_DEBUG_IN();
std::vector<Surface>::iterator it;
for (it = master_surfaces.begin(); it != master_surfaces.end(); ++it) {
contact_search->updateStructure(*it);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Contact::addMasterSurface(const Surface & master_surface) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(std::find(master_surfaces.begin(),
master_surfaces.end(),
master_surface) == master_surfaces.end(),
"Master surface already registered in the master surface list");
master_surfaces.push_back(master_surface);
contact_search->addMasterSurface(master_surface);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Contact::removeMasterSurface(const Surface & master_surface) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(std::find(master_surfaces.begin(),
master_surfaces.end(),
master_surface) != master_surfaces.end(),
"Master surface not registered in the master surface list");
std::remove(master_surfaces.begin(),
master_surfaces.end(),
master_surface);
contact_search->removeMasterSurface(master_surface);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
Contact * Contact::newContact(const SolidMechanicsModel & model,
const ContactType & contact_type,
const ContactSearchType & contact_search_type,
const ContactNeighborStructureType & contact_neighbor_structure_type,
const ContactID & id,
const MemoryID & memory_id) {
AKANTU_DEBUG_IN();
Contact * tmp_contact = NULL;
ContactSearch * tmp_search __attribute__ ((unused)) = NULL;
switch(contact_type) {
case _ct_2d_expli: {
tmp_contact = new Contact2dExplicit(model, contact_type, id, memory_id);
break;
}
case _ct_3d_expli: {
tmp_contact = new Contact3dExplicit(model, contact_type, id, memory_id);
break;
}
case _ct_rigid: {
tmp_contact = new ContactRigid(model, contact_type, id, memory_id);
break;
}
case _ct_not_defined: {
AKANTU_DEBUG_ERROR("Not a valid contact type : " << contact_type);
break;
}
}
std::stringstream sstr;
sstr << id << ":contact_search";
switch(contact_search_type) {
case _cst_2d_expli: {
tmp_search = new ContactSearch2dExplicit(*tmp_contact, contact_neighbor_structure_type, contact_search_type, sstr.str());
break;
}
case _cst_expli: {
tmp_search = new ContactSearchExplicit(*tmp_contact, contact_neighbor_structure_type, contact_search_type, sstr.str());
break;
}
case _cst_not_defined: {
AKANTU_DEBUG_ERROR("Not a valid contact search type : " << contact_search_type);
break;
}
}
AKANTU_DEBUG_OUT();
return tmp_contact;
}
__END_AKANTU__
diff --git a/src/model/solid_mechanics/contact/contact_rigid.cc b/src/model/solid_mechanics/contact/contact_rigid.cc
index f2d2db933..a0c3da5bd 100644
--- a/src/model/solid_mechanics/contact/contact_rigid.cc
+++ b/src/model/solid_mechanics/contact/contact_rigid.cc
@@ -1,1241 +1,1241 @@
/**
* @file contact_rigid.cc
*
* @author David Simon Kammer <david.kammer@epfl.ch>
*
* @date Wed Jan 19 14:45:41 2011
*
* @brief Specialization of the contact structure for 3d contact in explicit
* time scheme
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "contact_rigid.hh"
#include "contact_search.hh"
/* -------------------------------------------------------------------------- */
#include <iostream>
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
ContactRigid::ImpactorInformationPerMaster::ImpactorInformationPerMaster(const Surface master_id, const UInt spatial_dimension) : master_id(master_id) {
AKANTU_DEBUG_IN();
this->impactor_surfaces = new std::vector<Surface>(0);
this->active_impactor_nodes = new Vector<UInt>(0,1);
//this->master_element_offset = new Vector<UInt>(0,1);
this->master_element_type = new std::vector<ElementType>(0);
this->master_normals = new Vector<Real>(0, spatial_dimension);
this->node_is_sticking = new Vector<bool>(0,2);
this->friction_forces = new Vector<Real>(0,spatial_dimension);
this->stick_positions = new Vector<Real>(0,spatial_dimension);
this->residual_forces = new Vector<Real>(0,spatial_dimension);
this->previous_velocities = new Vector<Real>(0,spatial_dimension);
this->friction_resistances = new Vector<Real>(0);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
ContactRigid::ImpactorInformationPerMaster::~ImpactorInformationPerMaster() {
AKANTU_DEBUG_IN();
delete this->impactor_surfaces;
delete this->active_impactor_nodes;
// delete this->master_element_offset;
delete this->master_element_type;
delete this->master_normals;
delete this->node_is_sticking;
delete this->friction_forces;
delete this->stick_positions;
delete this->residual_forces;
delete this->previous_velocities;
delete this->friction_resistances;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
ContactRigid::ContactRigid(const SolidMechanicsModel & model,
const ContactType & type,
const ContactID & id,
const MemoryID & memory_id) :
- Contact(model, type, id, memory_id), spatial_dimension(model.getSpatialDimension()), mesh(model.getFEM().getMesh()), prakash(false), ref_velocity(0.), characterstic_length(0.), dedontney(false), t_star(0.) {
+ Contact(model, type, id, memory_id), spatial_dimension(model.getSpatialDimension()), mesh(model.getFEM().getMesh()), prakash(false), dedontney(false), ref_velocity(0.), characterstic_length(0.), t_star(0.) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
ContactRigid::~ContactRigid() {
AKANTU_DEBUG_IN();
ContactRigid::SurfaceToImpactInfoMap::iterator it_imp;
for (it_imp = this->impactors_information.begin();
it_imp != this->impactors_information.end();
++it_imp) {
delete it_imp->second;
}
this->impactors_information.clear();
this->friction_coefficient.clear();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::addMasterSurface(const Surface & master_surface) {
AKANTU_DEBUG_IN();
Contact::addMasterSurface(master_surface);
ImpactorInformationPerMaster * impactor_info = new ImpactorInformationPerMaster(master_surface, this->spatial_dimension);
this->impactors_information[master_surface] = impactor_info;
//this->friction_coefficient[master_surface] = NULL;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::addImpactorSurfaceToMasterSurface(const Surface & impactor_surface, const Surface & master_surface) {
AKANTU_DEBUG_IN();
ContactRigid::SurfaceToImpactInfoMap::iterator it_imp;
it_imp = this->impactors_information.find(master_surface);
AKANTU_DEBUG_ASSERT(it_imp != this->impactors_information.end(),
"The master surface: " << master_surface << "couldn't be found and erased in impactors_information map");
it_imp->second->impactor_surfaces->push_back(impactor_surface);
/*
for (UInt m=0; m < this->impactors_information.size(); ++m) {
if (this->impactors_information.at(m)->master_id == master_surface) {
this->impactors_information.at(m)->impactor_surfaces->push_back(impactor_surface);
break;
}
}
*/
ContactRigid::SurfaceToFricCoefMap::iterator it_fc;
it_fc = this->friction_coefficient.find(master_surface);
if (it_fc != this->friction_coefficient.end())
it_fc->second->addImpactorSurface(impactor_surface);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::removeMasterSurface(const Surface & master_surface) {
AKANTU_DEBUG_IN();
Contact::removeMasterSurface(master_surface);
ContactRigid::SurfaceToImpactInfoMap::iterator it_imp;
it_imp = this->impactors_information.find(master_surface);
AKANTU_DEBUG_ASSERT(it_imp != this->impactors_information.end(),
"The master surface: " << master_surface << "couldn't be found and erased in impactors_information map");
delete it_imp->second;
this->impactors_information.erase(it_imp);
ContactRigid::SurfaceToFricCoefMap::iterator it_fc;
it_fc = this->friction_coefficient.find(master_surface);
AKANTU_DEBUG_ASSERT(it_fc != this->friction_coefficient.end(),
"The master surface: " << master_surface << "couldn't be found and erased in friction_coefficient map");
this->friction_coefficient.erase(it_fc);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::removeImpactorSurfaceFromMasterSurface(const Surface & impactor_surface, const Surface & master_surface) {
AKANTU_DEBUG_IN();
// find in map the impactor information for the given master surface
ContactRigid::SurfaceToImpactInfoMap::iterator it_imp;
it_imp = this->impactors_information.find(master_surface);
AKANTU_DEBUG_ASSERT(it_imp != this->impactors_information.end(),
"The master surface: " << master_surface << "couldn't be found and erased in impactors_information map");
std::vector<Surface> * imp_surfaces = it_imp->second->impactor_surfaces;
// find and delete the impactor surface
std::vector<Surface>::iterator it_surf;
it_surf = find(imp_surfaces->begin(), imp_surfaces->end(), impactor_surface);
AKANTU_DEBUG_ASSERT(it_surf != imp_surfaces->end(), "Couldn't find impactor surface " << impactor_surface << " for the master surface " << master_surface << " and couldn't erase it");
imp_surfaces->erase(it_surf);
/*
for (UInt m=0; m < this->impactors_information.size(); ++m) {
ImpactorInformationPerMaster * impactor_info = this->impactors_information.at(m);
if (impactor_info->master_id == master_surface) {
for (UInt i=0; i < impactor_info->impactor_surfaces->size(); ++i) {
Surface imp_surface = impactor_info->impactor_surfaces->at(i);
if (imp_surface == impactor_surface) {
impactor_info->impactor_surfaces->erase(impactor_info->impactor_surfaces->begin()+i);
break;
}
}
}
}
*/
ContactRigid::SurfaceToFricCoefMap::iterator it_fc;
it_fc = this->friction_coefficient.find(master_surface);
if (it_fc != this->friction_coefficient.end())
it_fc->second->removeImpactorSurface(impactor_surface);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::solveContact() {
AKANTU_DEBUG_IN();
for(UInt m=0; m < master_surfaces.size(); ++m) {
Surface master = this->master_surfaces.at(m);
std::stringstream sstr; sstr << id << ":penetration_list";
PenetrationList * penet_list = new PenetrationList(sstr.str());
contact_search->findPenetration(master, *penet_list);
solvePenetrationClosestProjection(master, *penet_list);
delete penet_list;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/*void ContactRigid::solvePenetration(const PenetrationList & penet_list) {
AKANTU_DEBUG_IN();
const UInt dim = ;
const Mesh::ConnectivityTypeList & type_list = mesh.getConnectivityTypeList();
Mesh::ConnectivityTypeList::const_iterator it;
/// find existing surface element types
UInt nb_types = type_list.size();
UInt nb_facet_types = 0;
ElementType facet_type[_max_element_type];
for(it = type_list.begin(); it != type_list.end(); ++it) {
ElementType type = *it;
if(mesh.getSpatialDimension(type) == spatial_dimension) {
ElementType current_facet_type = mesh.getFacetElementType(type);
facet_type[nb_facet_types++] = current_facet_type;
}
}
Real * current_position = model.getCurrentPosition().values;
Real * displacement = model.getDisplacement().values;
Real * increment = model.getIncrement().values;
UInt * penetrating_nodes = penet_list.penetrating_nodes.values;
for (UInt n=0; n < penet_list.penetrating_nodes.getSize(); ++n) {
UInt current_node = penetrating_nodes[n];
// count number of elements penetrated by this node
UInt nb_penetrated_facets = 0;
ElementType penetrated_type;
for (UInt el_type = 0; el_type < nb_facet_types; ++el_type) {
ElementType type = facet_type[el_type];
UInt offset_min = penet_list.penetrated_facets_offset[type].get(n);
UInt offset_max = penet_list.penetrated_facets_offset[type].get(n+1);
nb_penetrated_facets += offset_max - offset_min;
penetrated_type = type;
}
// easy case: node penetrated only one facet
if(nb_penetrated_facets == 1) {
Real * facets_normals = penet_list.facets_normals[penetrated_type].values;
Real * gaps = penet_list.gaps[penetrated_type].values;
Real * projected_positions = penet_list.projected_positions[penetrated_type].values;
UInt offset_min = penet_list.penetrated_facets_offset[penetrated_type].get(n);
for(UInt i=0; i < dim; ++i) {
current_position[current_node*dim + i] = projected_positions[offset_min*dim + i];
Real displacement_correction = gaps[offset_min*dim + i] * normals[offset_min*dim + i];
displacement[current_node*dim + i] = displacement[current_node*dim + i] - displacement_correction;
increment [current_node*dim + i] = increment [current_node*dim + i] - displacement_correction;
}
}
// if more penetrated facets, find the one from which the impactor node is coming
else {
}
}
}*/
/* -------------------------------------------------------------------------- */
void ContactRigid::solvePenetrationClosestProjection(const Surface master,
const PenetrationList & penet_list) {
AKANTU_DEBUG_IN();
const Mesh::ConnectivityTypeList & type_list = mesh.getConnectivityTypeList();
Mesh::ConnectivityTypeList::const_iterator it;
/// find existing surface element types
UInt nb_facet_types = 0;
ElementType facet_type[_max_element_type];
for(it = type_list.begin(); it != type_list.end(); ++it) {
ElementType type = *it;
if(mesh.getSpatialDimension(type) == spatial_dimension) {
- ElementType current_facet_type = mesh.getFacetElementType(type);
+ ElementType current_facet_type = mesh.getFacetType(type);
facet_type[nb_facet_types++] = current_facet_type;
}
}
for (UInt n=0; n < penet_list.penetrating_nodes.getSize(); ++n) {
// find facet for which the gap is the smallest
Real min_gap = std::numeric_limits<Real>::max();
ElementType penetrated_type;
UInt penetrated_facet_offset;
for (UInt el_type = 0; el_type < nb_facet_types; ++el_type) {
ElementType type = facet_type[el_type];
Real * gaps = penet_list.gaps(type, _not_ghost).storage();
UInt offset_min = penet_list.penetrated_facets_offset(type, _not_ghost)(n);
UInt offset_max = penet_list.penetrated_facets_offset(type, _not_ghost)(n+1);
for (UInt f = offset_min; f < offset_max; ++f) {
if(gaps[f] < min_gap) {
min_gap = gaps[f];
penetrated_type = type;
penetrated_facet_offset = f;
}
}
}
bool is_active = isAlreadyActiveImpactor(master, penet_list, n, penetrated_type, penetrated_facet_offset);
if (!is_active) {
// correct the position of the impactor
projectImpactor(penet_list, n, penetrated_type, penetrated_facet_offset);
lockImpactorNode(master, penet_list, n, penetrated_type, penetrated_facet_offset);
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
bool ContactRigid::isAlreadyActiveImpactor(const Surface master,
const PenetrationList & penet_list,
const UInt impactor_index,
const ElementType facet_type,
const UInt facet_offset) {
AKANTU_DEBUG_IN();
bool is_active = false;
UInt * penetrating_nodes = penet_list.penetrating_nodes.values;
UInt impactor_node = penetrating_nodes[impactor_index];
// find facet normal
Real * facets_normals = penet_list.facets_normals(facet_type, _not_ghost).storage();
Real * facet_normal = &facets_normals[facet_offset*spatial_dimension];
Int normal[this->spatial_dimension];
for(UInt i = 0; i < this->spatial_dimension; ++i)
normal[i] = Int(floor(facet_normal[i] + 0.5));
// check if this is already in the active impactor node list
ContactRigid::SurfaceToImpactInfoMap::iterator it_imp;
it_imp = this->impactors_information.find(master);
AKANTU_DEBUG_ASSERT(it_imp != this->impactors_information.end(),
"The master surface: " << master << "couldn't be found in impactors_information map");
ImpactorInformationPerMaster * impactor_info = it_imp->second;
Vector<UInt> * active_nodes = impactor_info->active_impactor_nodes;
Vector<Real> * master_normals = impactor_info->master_normals;
for (UInt i=0; i<active_nodes->getSize(); ++i) {
if((*active_nodes)(i) == impactor_node) {
UInt count = 0;
for (UInt d=0; d<this->spatial_dimension; ++d) {
if(Math::are_float_equal((*master_normals)(i,d),normal[d]))
count++;
}
if(count == this->spatial_dimension)
is_active = true;
}
}
AKANTU_DEBUG_OUT();
return is_active;
}
/* -------------------------------------------------------------------------- */
void ContactRigid::projectImpactor(const PenetrationList & penet_list, const UInt impactor_index, const ElementType facet_type, const UInt facet_offset) {
AKANTU_DEBUG_IN();
const bool increment_flag = model.getIncrementFlag();
UInt * penetrating_nodes = penet_list.penetrating_nodes.values;
Real * facets_normals = penet_list.facets_normals(facet_type, _not_ghost).storage();
Real * gaps = penet_list.gaps(facet_type, _not_ghost).storage();
Real * projected_positions = penet_list.projected_positions(facet_type, _not_ghost).storage();
Real * current_position = model.getCurrentPosition().values;
Real * displacement = model.getDisplacement().values;
Real * increment = NULL;
if(increment_flag)
increment = model.getIncrement().values;
UInt impactor_node = penetrating_nodes[impactor_index];
for(UInt i=0; i < this->spatial_dimension; ++i) {
current_position[impactor_node*spatial_dimension + i] = projected_positions[facet_offset*spatial_dimension + i];
Real displacement_correction = gaps[facet_offset] * facets_normals[facet_offset*spatial_dimension + i];
displacement[impactor_node*spatial_dimension + i] = displacement[impactor_node*spatial_dimension + i] - displacement_correction;
if(increment_flag)
increment [impactor_node*spatial_dimension + i] = increment [impactor_node*spatial_dimension + i] - displacement_correction;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::lockImpactorNode(const Surface master, const PenetrationList & penet_list, const UInt impactor_index, const ElementType facet_type, const UInt facet_offset) {
AKANTU_DEBUG_IN();
bool init_state_stick = true; // node is in sticking when it gets in contact
UInt * penetrating_nodes = penet_list.penetrating_nodes.values;
UInt impactor_node = penetrating_nodes[impactor_index];
Real * facets_normals = penet_list.facets_normals(facet_type, _not_ghost).storage();
Real * facet_normal = &facets_normals[facet_offset*spatial_dimension];
Real normal[this->spatial_dimension];
//Int * normal_val = &normal[0];
bool * bound_val = this->model.getBoundary().values;
Real * position_val = this->model.getCurrentPosition().values;
Real * veloc_val = this->model.getVelocity().values;
Real * accel_val = this->model.getAcceleration().values;
Real * residual_val = this->model.getResidual().values;
for(UInt i = 0; i < this->spatial_dimension; ++i)
normal[i] = floor(facet_normal[i] + 0.5);
for(UInt i = 0; i < this->spatial_dimension; ++i) {
UInt index = impactor_node * spatial_dimension + i;
if(!Math::are_float_equal(normal[i],0)) {
bound_val[index] = true;
veloc_val[index] = 0.;
accel_val[index] = 0.;
}
// if node is in initial stick its tangential velocity has to be zero
if(init_state_stick) {
veloc_val[index] = 0.;
accel_val[index] = 0.;
}
}
ContactRigid::SurfaceToImpactInfoMap::iterator it_imp;
it_imp = this->impactors_information.find(master);
AKANTU_DEBUG_ASSERT(it_imp != this->impactors_information.end(),
"The master surface: " << master << "couldn't be found in impactors_information map");
ImpactorInformationPerMaster * impactor_info = it_imp->second;
impactor_info->active_impactor_nodes->push_back(impactor_node);
// impactor_info->master_element_offset->push_back(facet_offset);
impactor_info->master_element_type->push_back(facet_type);
impactor_info->master_normals->push_back(normal);
// initial value for stick state when getting in contact
bool init_sticking[2];
if (init_state_stick) {
init_sticking[0] = true;
init_sticking[1] = true;
}
else {
init_sticking[0] = false;
init_sticking[1] = false;
}
impactor_info->node_is_sticking->push_back(init_sticking);
Real init_friction_force[this->spatial_dimension];
for(UInt i=0; i<this->spatial_dimension; ++i) {
init_friction_force[i] = 0.;
}
impactor_info->friction_forces->push_back(init_friction_force);
impactor_info->stick_positions->push_back(&(position_val[impactor_node*this->spatial_dimension]));
impactor_info->residual_forces->push_back(&(residual_val[impactor_node*this->spatial_dimension]));
impactor_info->previous_velocities->push_back(&(veloc_val[impactor_node*this->spatial_dimension]));
impactor_info->friction_resistances->push_back(0.);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::avoidAdhesion() {
AKANTU_DEBUG_IN();
Real * residual_val = this->model.getResidual().values;
bool * bound_val = this->model.getBoundary().values;
for(UInt m=0; m < this->master_surfaces.size(); ++m) {
Surface master = this->master_surfaces.at(m);
ContactRigid::SurfaceToImpactInfoMap::iterator it_imp;
it_imp = this->impactors_information.find(master);
AKANTU_DEBUG_ASSERT(it_imp != this->impactors_information.end(),
"The master surface: " << master << "couldn't be found in impactors_information map");
ImpactorInformationPerMaster * impactor_info = it_imp->second;
for (UInt n=0; n < impactor_info->active_impactor_nodes->getSize(); ++n) {
UInt current_node = (*impactor_info->active_impactor_nodes)(n);
for (UInt i=0; i < spatial_dimension; ++i) {
Int direction = Int((*impactor_info->master_normals)(n,i));
Real force = residual_val[current_node * spatial_dimension + i];
if(force * direction > 0.) {
bound_val[current_node * spatial_dimension + i] = false;
impactor_info->active_impactor_nodes->erase(n);
// impactor_info->master_element_offset->erase(n);
impactor_info->master_element_type->erase(impactor_info->master_element_type->begin()+n);
impactor_info->master_normals->erase(n);
impactor_info->node_is_sticking->erase(n);
impactor_info->friction_forces->erase(n);
impactor_info->stick_positions->erase(n);
impactor_info->residual_forces->erase(n);
impactor_info->previous_velocities->erase(n);
impactor_info->friction_resistances->erase(n);
n--;
break;
}
}
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::frictionPredictor() {
AKANTU_DEBUG_IN();
const Real null_tolerance = std::numeric_limits<Real>::epsilon() * 2.;
Real * residual_val = this->model.getResidual().values;
Real * acceleration_val = this->model.getAcceleration().values;
Real * velocity_val = this->model.getVelocity().values;
for(UInt m=0; m < this->master_surfaces.size(); ++m) {
Surface master = this->master_surfaces.at(m);
ContactRigid::SurfaceToImpactInfoMap::iterator it_imp;
it_imp = this->impactors_information.find(master);
AKANTU_DEBUG_ASSERT(it_imp != this->impactors_information.end(),
"The master surface: " << master << "couldn't be found in impactors_information map");
ImpactorInformationPerMaster * impactor_info = it_imp->second;
ContactRigid::SurfaceToFricCoefMap::iterator it_fc;
it_fc = this->friction_coefficient.find(master);
AKANTU_DEBUG_ASSERT(it_fc != this->friction_coefficient.end(),
"The master surface: " << master << "couldn't be found in friction_coefficient map");
FrictionCoefficient * fric_coef = it_fc->second;
AKANTU_DEBUG_ASSERT(fric_coef != NULL, "There is no friction coefficient defined for master surface " << master);
UInt nb_active_impactor_nodes = impactor_info->active_impactor_nodes->getSize();
// compute the friction coefficient for each active impactor node
Vector<Real> friction_coefficient_values(nb_active_impactor_nodes, 1);
Real * friction_coefficient_values_p = friction_coefficient_values.values;
fric_coef->computeFrictionCoefficient(friction_coefficient_values);
UInt * active_impactor_nodes_val = impactor_info->active_impactor_nodes->storage();
Real * direction_val = impactor_info->master_normals->storage();
bool * node_is_sticking_val = impactor_info->node_is_sticking->storage();
Real * friction_forces_val = impactor_info->friction_forces->storage();
Real * residual_forces_val = impactor_info->residual_forces->storage();
Real * previous_velocities_val = impactor_info->previous_velocities->storage();
Real * friction_resistances_val = impactor_info->friction_resistances->storage();
Vector<Real> & nodal_velocity = model.getVelocity();
for (UInt n=0; n < nb_active_impactor_nodes; ++n) {
UInt current_node = active_impactor_nodes_val[n];
// save original residual
for(UInt i=0; i < spatial_dimension; ++i) {
residual_forces_val[n*spatial_dimension+i] = residual_val[current_node*spatial_dimension+i];
}
// find friction force mu * normal force
Real normal_contact_force = 0.;
Real friction_force = 0.;
for (UInt i=0; i < spatial_dimension; ++i) {
if(!Math::are_float_equal(direction_val[n * this->spatial_dimension + i],0.)) {
normal_contact_force = std::abs(residual_val[current_node * this->spatial_dimension + i]);
friction_force = friction_coefficient_values_p[n] * normal_contact_force;
}
}
// prakash clifton regularization
if (this->prakash) {
// compute (|v| + v*)/L
Real v_L_term = 0.;
for (UInt i=0; i < spatial_dimension; ++i) {
if(Math::are_float_equal(direction_val[n * this->spatial_dimension + i],0.))
v_L_term += nodal_velocity(current_node,i) * nodal_velocity(current_node,i);
}
v_L_term = sqrt(v_L_term);
v_L_term += this->ref_velocity;
v_L_term /= this->characterstic_length;
Real delta_t = this->model.getTimeStep();
// compute friction resistance
friction_force *= v_L_term;
friction_force += friction_resistances_val[n]/delta_t;
friction_force /= (1/delta_t + v_L_term);
}
else if (this->dedontney) {
// compute 1/t*
Real v_L_term = 1/ this->t_star;
Real delta_t = this->model.getTimeStep();
// compute friction resistance
friction_force *= v_L_term;
friction_force += friction_resistances_val[n]/delta_t;
friction_force /= (1/delta_t + v_L_term);
}
friction_resistances_val[n] = friction_force;
// if node is sticking, friction force acts against the residual
if (node_is_sticking_val[n*2]) {
// compute length of projected residual
Real projected_residual = 0.;
for (UInt i=0; i < this->spatial_dimension; ++i) {
if(Math::are_float_equal(direction_val[n * this->spatial_dimension + i],0.)) {
projected_residual += residual_val[current_node * this->spatial_dimension + i] *
residual_val[current_node * this->spatial_dimension + i];
}
}
projected_residual = sqrt(projected_residual);
// friction is weaker than residual -> start sliding
if (friction_force < projected_residual) {
node_is_sticking_val[n*2] = false;
node_is_sticking_val[n*2+1] = false;
// compute friction vector
Real friction_direction[3];
for (UInt i=0; i < this->spatial_dimension; ++i) {
if(Math::are_float_equal(direction_val[n * this->spatial_dimension + i],0.)) {
friction_direction[i] = residual_val[current_node * this->spatial_dimension + i];
friction_direction[i] /= projected_residual;
}
else
friction_direction[i] = 0.;
friction_direction[i] *= -1.;
}
// add friction force to residual
for (UInt i=0; i < this->spatial_dimension; ++i) {
Real directional_fric_force = friction_force * friction_direction[i];
friction_forces_val[n*this->spatial_dimension + i] = directional_fric_force;
residual_val[current_node * this->spatial_dimension + i] += directional_fric_force;
}
}
// friction is stronger than residual -> stay sticking
else {
// put residual in friction force and set residual to zero
for (UInt i=0; i < this->spatial_dimension; ++i) {
if(Math::are_float_equal(direction_val[n * this->spatial_dimension + i],0.)) {
friction_forces_val[n*spatial_dimension + i] = residual_val[current_node * this->spatial_dimension + i];
residual_val[current_node * this->spatial_dimension + i] = 0.;
}
else
friction_forces_val[n*spatial_dimension + i] = 0.;
friction_forces_val[n*spatial_dimension + i] *= -1.;
}
}
} // end if stick
// if node is sliding friction force acts against velocity and
// in case there is no velocity it acts against the residual
else {
Real projected_residual = 0.;
Real projected_velocity_magnitude = 0.;
for (UInt i=0; i < this->spatial_dimension; ++i) {
if(Math::are_float_equal(direction_val[n * this->spatial_dimension + i],0.)) {
projected_residual += residual_val[current_node * this->spatial_dimension + i] *
residual_val[current_node * this->spatial_dimension + i];
projected_velocity_magnitude += previous_velocities_val[n * this->spatial_dimension + i] *
previous_velocities_val[n * this->spatial_dimension + i];
}
}
projected_residual = sqrt(projected_residual);
projected_velocity_magnitude = sqrt(projected_velocity_magnitude);
// if no projected velocity nor friction force stronger than projected residual, this is stick
if ((projected_velocity_magnitude < null_tolerance) && !(projected_residual > friction_force)) {
// put residual in friction force and set residual to zero
// set projected velocity and acceleration to zero
for (UInt i=0; i < this->spatial_dimension; ++i) {
if(Math::are_float_equal(direction_val[n * this->spatial_dimension + i],0.)) {
friction_forces_val[n*spatial_dimension + i] = residual_val[current_node * this->spatial_dimension + i];
residual_val [current_node * this->spatial_dimension + i] = 0.;
velocity_val [current_node * this->spatial_dimension + i] = 0.;
acceleration_val[current_node * this->spatial_dimension + i] = 0.;
}
else
friction_forces_val[n*spatial_dimension + i] = 0.;
friction_forces_val[n*spatial_dimension + i] *= -1.;
}
node_is_sticking_val[n*2] = true;
node_is_sticking_val[n*2+1] = true;
}
// node is really sliding
else {
UInt index = 0;
Real * direction_vector;
Real direction_length;
// if only velocity is zero (because slider just turned direction)
if (projected_velocity_magnitude < null_tolerance) {
index = current_node;
direction_vector = residual_val;
direction_length = projected_residual;
}
// there is velocity
else {
index = n;
direction_vector = previous_velocities_val;
direction_length = projected_velocity_magnitude;
}
// compute the friction direction
Real friction_direction[3];
for (UInt i=0; i < this->spatial_dimension; ++i) {
if(Math::are_float_equal(direction_val[n * this->spatial_dimension + i],0.)) {
friction_direction[i] = direction_vector[index * this->spatial_dimension + i];
friction_direction[i] /= direction_length;
}
else
friction_direction[i] = 0.;
friction_direction[i] *= -1.;
}
// add friction force to residual
for (UInt i=0; i < this->spatial_dimension; ++i) {
Real directional_fric_force = friction_force * friction_direction[i];
friction_forces_val[n*this->spatial_dimension + i] = directional_fric_force;
residual_val[current_node * this->spatial_dimension + i] += directional_fric_force;
}
}
} // end sliding
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::frictionCorrector() {
AKANTU_DEBUG_IN();
const Real tolerance = std::numeric_limits<Real>::epsilon() * 100.;
Real * residual_val = this->model.getResidual().values;
Real * acceleration_val = this->model.getAcceleration().values;
Real * velocity_val = this->model.getVelocity().values;
Real time_step = this->model.getTimeStep();
for(UInt m=0; m < this->master_surfaces.size(); ++m) {
Surface master = this->master_surfaces.at(m);
ContactRigid::SurfaceToImpactInfoMap::iterator it_imp;
it_imp = this->impactors_information.find(master);
AKANTU_DEBUG_ASSERT(it_imp != this->impactors_information.end(),
"The master surface: " << master << "couldn't be found in impactors_information map");
ImpactorInformationPerMaster * impactor_info = it_imp->second;
UInt nb_active_impactor_nodes = impactor_info->active_impactor_nodes->getSize();
UInt * active_impactor_nodes_val = impactor_info->active_impactor_nodes->storage();
Real * direction_val = impactor_info->master_normals->storage();
bool * node_is_sticking_val = impactor_info->node_is_sticking->storage();
//Real * friction_forces_val = impactor_info->friction_forces->storage();
//Real * residual_forces_val = impactor_info->residual_forces->storage();
Real * previous_velocities_val = impactor_info->previous_velocities->storage();
for (UInt n=0; n < nb_active_impactor_nodes; ++n) {
UInt current_node = active_impactor_nodes_val[n];
// check only sliding impactor nodes
if (node_is_sticking_val[n*2])
continue;
// compute scalar product of previous velocity with current velocity
Real dot_prod_velocities = 0.;
Real dot_prod_pred_velocities = 0.;
Real current_proj_vel_mag = 0.;
for (UInt i=0; i < this->spatial_dimension; ++i) {
if(Math::are_float_equal(direction_val[n * this->spatial_dimension + i],0.)) {
dot_prod_velocities += velocity_val[current_node * this->spatial_dimension + i] *
previous_velocities_val[n * this->spatial_dimension + i];
Real pred_vel = velocity_val[current_node * this->spatial_dimension + i] +
0.5 * time_step *
acceleration_val[current_node * this->spatial_dimension + i];
dot_prod_pred_velocities += pred_vel *
previous_velocities_val[n * this->spatial_dimension + i];
current_proj_vel_mag += velocity_val[current_node * this->spatial_dimension + i] *
velocity_val[current_node * this->spatial_dimension + i];
}
}
current_proj_vel_mag = sqrt(current_proj_vel_mag);
// if velocity has changed sign or has become very small we get into stick
if ((dot_prod_velocities < 0.) ||
(dot_prod_pred_velocities < 0.) ||
(current_proj_vel_mag < tolerance)) {
for (UInt i=0; i < this->spatial_dimension; ++i) {
if(Math::are_float_equal(direction_val[n * this->spatial_dimension + i],0.)) {
//friction_forces_val[n*spatial_dimension + i] = residual_forces_val[n*spatial_dimension + i];
//residual_forces_val[n * this->spatial_dimension + i] =0.;
residual_val [current_node * this->spatial_dimension + i] = 0.;
velocity_val [current_node * this->spatial_dimension + i] = 0.;
acceleration_val[current_node * this->spatial_dimension + i] = 0.;
}
//else
//friction_forces_val[n*spatial_dimension + i] = 0.;
//friction_forces_val[n*spatial_dimension + i] *= -1.;
}
node_is_sticking_val[n*2] = true;
node_is_sticking_val[n*2+1] = true;
}
}
// save current velocities
for (UInt n=0; n < nb_active_impactor_nodes; ++n) {
UInt current_node = active_impactor_nodes_val[n];
for(UInt i=0; i < spatial_dimension; ++i) {
previous_velocities_val[n*spatial_dimension+i] = velocity_val[current_node*spatial_dimension+i];
}
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::addRegularizedFriction(const Real & regularizer) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(this->spatial_dimension == 2,
"addRegularizedFriction is implemented only for 2D");
Real * residual_val = this->model.getResidual().values;
Real * position_val = this->model.getCurrentPosition().values;
for(UInt m=0; m < this->master_surfaces.size(); ++m) {
Surface master = this->master_surfaces.at(m);
// find the impactors information for this master surface
ContactRigid::SurfaceToImpactInfoMap::iterator it_imp;
it_imp = this->impactors_information.find(master);
AKANTU_DEBUG_ASSERT(it_imp != this->impactors_information.end(),
"The master surface: " << master << "couldn't be found in impactors_information map");
ImpactorInformationPerMaster * impactor_info = it_imp->second;
// find the friction coefficient object for this master
ContactRigid::SurfaceToFricCoefMap::iterator it_fc;
it_fc = this->friction_coefficient.find(master);
AKANTU_DEBUG_ASSERT(it_fc != this->friction_coefficient.end(),
"The master surface: " << master << "couldn't be found in friction_coefficient map");
FrictionCoefficient * fric_coef = it_fc->second;
AKANTU_DEBUG_ASSERT(fric_coef != NULL, "There is no friction coefficient defined for master surface " << master);
UInt nb_active_impactor_nodes = impactor_info->active_impactor_nodes->getSize();
// compute the friction coefficient for each active impactor node
Vector<Real> friction_coefficient_values(nb_active_impactor_nodes, 1);
Real * friction_coefficient_values_p = friction_coefficient_values.values;
fric_coef->computeFrictionCoefficient(friction_coefficient_values);
UInt * active_impactor_nodes_val = impactor_info->active_impactor_nodes->storage();
Real * direction_val = impactor_info->master_normals->storage();
bool * node_is_sticking_val = impactor_info->node_is_sticking->storage();
Real * friction_forces_val = impactor_info->friction_forces->storage();
Real * stick_positions_val = impactor_info->stick_positions->storage();
for (UInt n=0; n < nb_active_impactor_nodes; ++n) {
UInt current_node = active_impactor_nodes_val[n];
Real normal_contact_force = 0.;
Real friction_force = 0.;
// find friction force mu * normal force
for (UInt i=0; i<spatial_dimension; ++i) {
if(!Math::are_float_equal(direction_val[n * this->spatial_dimension + i],0.)) {
normal_contact_force = std::abs(residual_val[current_node * this->spatial_dimension + i]);
friction_force = friction_coefficient_values_p[n] * normal_contact_force;
}
}
// compute F_(i+1)trial
Real f_trial = Math::distance_2d(&(position_val[current_node * this->spatial_dimension]),
&(stick_positions_val[n * this->spatial_dimension]));
f_trial *= regularizer;
Real delta_s_vector[this->spatial_dimension];
for (UInt i=0; i<spatial_dimension; ++i) {
delta_s_vector[i] = position_val[current_node * this->spatial_dimension + i]
- stick_positions_val[n * this->spatial_dimension + i];
delta_s_vector[i] *= -1.;
}
// if node is on its own stick position no need to compute friction force
// this avoids nan on normalize2
if(Math::norm2(delta_s_vector) < Math::getTolerance()) {
node_is_sticking_val[n*2] = true; node_is_sticking_val[n*2+1] = true;
continue;
}
Math::normalize2(delta_s_vector);
// check if node is still sticking
if (f_trial <= friction_force) {
friction_force = f_trial;
// sticking position stays unchanged
node_is_sticking_val[n*2] = true; node_is_sticking_val[n*2+1] = true;
}
else {
node_is_sticking_val[n*2] = false; node_is_sticking_val[n*2+1] = false;
Real delta_s = std::abs(f_trial - friction_force) / regularizer;
// friction force stays unchanged
for (UInt i=0; i<spatial_dimension; ++i) {
stick_positions_val[n * this->spatial_dimension + i] -= delta_s * delta_s_vector[i];
}
}
// add friction force to residual
for (UInt i=0; i < this->spatial_dimension; ++i) {
Real directional_fric_force = friction_force * delta_s_vector[i];
friction_forces_val[n*this->spatial_dimension + i] = directional_fric_force;
residual_val[current_node * this->spatial_dimension + i] += directional_fric_force;
}
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::setStickPositionsToCurrentPositions(const Surface master) {
AKANTU_DEBUG_IN();
Real * position_val = this->model.getCurrentPosition().values;
// find the impactors information for this master surface
ContactRigid::SurfaceToImpactInfoMap::iterator it_imp;
it_imp = this->impactors_information.find(master);
AKANTU_DEBUG_ASSERT(it_imp != this->impactors_information.end(),
"The master surface: " << master << "couldn't be found in impactors_information map");
ImpactorInformationPerMaster * impactor_info = it_imp->second;
UInt nb_active_impactor_nodes = impactor_info->active_impactor_nodes->getSize();
UInt * active_impactor_nodes_val = impactor_info->active_impactor_nodes->storage();
Real * stick_positions_val = impactor_info->stick_positions->storage();
for (UInt n=0; n < nb_active_impactor_nodes; ++n) {
UInt current_node = active_impactor_nodes_val[n];
// find friction force mu * normal force
for (UInt i=0; i<spatial_dimension; ++i) {
stick_positions_val[n*this->spatial_dimension + i] = position_val[current_node*this->spatial_dimension + i];
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::setFrictionCoefficient(FrictionCoefficient * fric_coefficient) {
AKANTU_DEBUG_IN();
Surface master = fric_coefficient->getMasterSurface();
ContactRigid::SurfaceToFricCoefMap::iterator it_fc;
it_fc = this->friction_coefficient.find(master);
AKANTU_DEBUG_ASSERT(it_fc == this->friction_coefficient.end(),
"There is already a friction coefficient for master surface: " << master);
this->friction_coefficient[master] = fric_coefficient;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::removeFrictionCoefficient(const Surface master) {
AKANTU_DEBUG_IN();
ContactRigid::SurfaceToFricCoefMap::iterator it_fc;
it_fc = this->friction_coefficient.find(master);
AKANTU_DEBUG_ASSERT(it_fc != this->friction_coefficient.end(),
"There is no friction coefficient for master surface: " << master);
this->friction_coefficient.erase(it_fc);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::getRestartInformation(std::map<std::string, VectorBase* > & map_to_fill,
Surface master) {
AKANTU_DEBUG_IN();
ContactRigid::SurfaceToImpactInfoMap::iterator it_imp;
it_imp = this->impactors_information.find(master);
AKANTU_DEBUG_ASSERT(it_imp != this->impactors_information.end(),
"The master surface: " << master << "couldn't be found in impactors_information map");
ImpactorInformationPerMaster * impactor_info = it_imp->second;
UInt nb_active_nodes = impactor_info->active_impactor_nodes->getSize();
// create vectors
Vector<bool> * activity_of_nodes = new Vector<bool>(this->mesh.getNbNodes(), 1, false);
Vector<ElementType> * element_type_of_nodes = new Vector<ElementType>(this->mesh.getNbNodes(), 1, _not_defined);
Vector<Real> * normals_of_nodes = new Vector<Real>(this->mesh.getNbNodes(), this->spatial_dimension, 0.);
Vector<bool> * sticking_of_nodes = new Vector<bool>(this->mesh.getNbNodes(), 2, false);
Vector<Real> * friction_force_of_nodes = new Vector<Real>(this->mesh.getNbNodes(), this->spatial_dimension, 0.);
Vector<Real> * stick_position_of_nodes = new Vector<Real>(this->mesh.getNbNodes(), this->spatial_dimension, 0.);
Vector<Real> * residual_force_of_nodes = new Vector<Real>(this->mesh.getNbNodes(), this->spatial_dimension, 0.);
Vector<Real> * previous_velocity_of_nodes = new Vector<Real>(this->mesh.getNbNodes(), this->spatial_dimension, 0.);
Vector<Real> * friction_resistances_of_nodes = new Vector<Real>(this->mesh.getNbNodes(), 1, 0.);
UInt * active_nodes = impactor_info->active_impactor_nodes->storage();
ElementType * element_type = &(*impactor_info->master_element_type)[0];
Real * master_normal = impactor_info->master_normals->storage();
bool * node_stick = impactor_info->node_is_sticking->storage();
Real * friction_force = impactor_info->friction_forces->storage();
Real * stick_position = impactor_info->stick_positions->storage();
Real * residual_force = impactor_info->residual_forces->storage();
Real * previous_velocity = impactor_info->previous_velocities->storage();
Real * friction_resistance = impactor_info->friction_resistances->storage();
for (UInt i=0; i<nb_active_nodes; ++i, ++active_nodes, ++element_type, ++friction_resistance) {
(*activity_of_nodes)(*active_nodes) = true;
(*element_type_of_nodes)(*active_nodes) = *element_type;
(*friction_resistances_of_nodes)(*active_nodes) = *friction_resistance;
for (UInt d=0; d<this->spatial_dimension; ++d, ++master_normal, ++friction_force, ++stick_position, ++residual_force, ++previous_velocity) {
(*normals_of_nodes)(*active_nodes,d) = *master_normal;
(*friction_force_of_nodes)(*active_nodes,d) = *friction_force;
(*stick_position_of_nodes)(*active_nodes,d) = *stick_position;
(*residual_force_of_nodes)(*active_nodes,d) = *residual_force;
(*previous_velocity_of_nodes)(*active_nodes,d) = *previous_velocity;
}
for (UInt j=0; j<2; ++j, ++node_stick) {
(*sticking_of_nodes)(*active_nodes,j) = *node_stick;
}
}
map_to_fill["active_impactor_nodes"] = activity_of_nodes;
map_to_fill["master_element_type"] = element_type_of_nodes;
map_to_fill["master_normals"] = normals_of_nodes;
map_to_fill["node_is_sticking"] = sticking_of_nodes;
map_to_fill["friction_forces"] = friction_force_of_nodes;
map_to_fill["stick_positions"] = stick_position_of_nodes;
map_to_fill["residual_forces"] = residual_force_of_nodes;
map_to_fill["previous_velocities"] = previous_velocity_of_nodes;
map_to_fill["friction_resistances"] = friction_resistances_of_nodes;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::setRestartInformation(std::map<std::string, VectorBase* > & restart_map,
Surface master) {
AKANTU_DEBUG_IN();
ContactRigid::SurfaceToImpactInfoMap::iterator it_imp;
it_imp = this->impactors_information.find(master);
AKANTU_DEBUG_ASSERT(it_imp != this->impactors_information.end(),
"The master surface: " << master << "couldn't be found in impactors_information map");
ImpactorInformationPerMaster * impactor_info = it_imp->second;
std::map < std::string, VectorBase* >::iterator it;
it = restart_map.find("active_impactor_nodes");
Vector<bool> * ai_nodes = (Vector<bool> *)(it->second);
if(it == restart_map.end()) {
std::cout << "could not find map entry for active impactor nodes" << std::endl;
}
it = restart_map.find("master_element_type");
Vector<ElementType> * et_nodes = (Vector<ElementType> *)(it->second);
if(it == restart_map.end()) {
std::cout << "could not find map entry master element type" << std::endl;
}
it = restart_map.find("master_normals");
Vector<Real> * mn_nodes = (Vector<Real> *)(it->second);
if(it == restart_map.end()) {
std::cout << "could not find map entry for master normals" << std::endl;
}
it = restart_map.find("node_is_sticking");
Vector<bool> * is_nodes = (Vector<bool> *)(it->second);
if(it == restart_map.end()) {
std::cout << "could not find map entry node is sticking" << std::endl;
}
it = restart_map.find("friction_forces");
Vector<Real> * ff_nodes = (Vector<Real> *)(it->second);
if(it == restart_map.end()) {
std::cout << "could not find map entry friction forces" << std::endl;
}
it = restart_map.find("stick_positions");
Vector<Real> * sp_nodes = (Vector<Real> *)(it->second);
if(it == restart_map.end()) {
std::cout << "could not find map entry stick positions" << std::endl;
}
it = restart_map.find("residual_forces");
Vector<Real> * rf_nodes = (Vector<Real> *)(it->second);
if(it == restart_map.end()) {
std::cout << "could not find map entry residual forces" << std::endl;
}
it = restart_map.find("previous_velocities");
Vector<Real> * pv_nodes = (Vector<Real> *)(it->second);
if(it == restart_map.end()) {
std::cout << "could not find map entry previous velocities" << std::endl;
}
it = restart_map.find("friction_resistances");
Vector<Real> * fr_nodes = (Vector<Real> *)(it->second);
if(it == restart_map.end()) {
std::cout << "could not find map entry friction resistances" << std::endl;
}
UInt nb_nodes = this->mesh.getNbNodes();
for (UInt i=0; i<nb_nodes; ++i) {
if ((*ai_nodes)(i)) {
// get active_impactor_nodes and master_element_type information
impactor_info->active_impactor_nodes->push_back(i);
impactor_info->master_element_type->push_back((*et_nodes)(i));
// get master_normals and friction_forces information
Real normal[this->spatial_dimension];
Real friction[this->spatial_dimension];
Real position[this->spatial_dimension];
Real residual[this->spatial_dimension];
Real velocity[this->spatial_dimension];
for (UInt d=0; d<this->spatial_dimension; ++d) {
normal[d] = (*mn_nodes)(i,d);
friction[d] = (*ff_nodes)(i,d);
position[d] = (*sp_nodes)(i,d);
residual[d] = (*rf_nodes)(i,d);
velocity[d] = (*pv_nodes)(i,d);
}
impactor_info->master_normals->push_back(normal);
impactor_info->friction_forces->push_back(friction);
impactor_info->stick_positions->push_back(position);
impactor_info->residual_forces->push_back(residual);
impactor_info->previous_velocities->push_back(velocity);
impactor_info->friction_resistances->push_back((*fr_nodes)(i));
// get node_is_sticking information
bool stick[2];
for (UInt j=0; j<2; ++j) {
stick[j] = (*is_nodes)(i,j);
}
impactor_info->node_is_sticking->push_back(stick);
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactRigid::setSimplifiedPrakashCliftonFriction(Real v_star, Real length) {
this->prakash = true;
this->ref_velocity = v_star;
this->characterstic_length = length;
}
/* -------------------------------------------------------------------------- */
void ContactRigid::unsetSimplifiedPrakashCliftonFriction() {
this->prakash = false;
this->dedontney = false;
}
/* -------------------------------------------------------------------------- */
void ContactRigid::setSimplifiedPrakashCliftonFriction(Real t_star) {
this->dedontney = true;
this->t_star = t_star;
}
/* -------------------------------------------------------------------------- */
void ContactRigid::setPrakashCliftonToSteadyState(const Surface master) {
AKANTU_DEBUG_IN();
Real * residual_val = this->model.getResidual().values;
// find the impactors information for this master surface
ContactRigid::SurfaceToImpactInfoMap::iterator it_imp;
it_imp = this->impactors_information.find(master);
AKANTU_DEBUG_ASSERT(it_imp != this->impactors_information.end(),
"The master surface: " << master << "couldn't be found in impactors_information map");
ImpactorInformationPerMaster * impactor_info = it_imp->second;
ContactRigid::SurfaceToFricCoefMap::iterator it_fc;
it_fc = this->friction_coefficient.find(master);
AKANTU_DEBUG_ASSERT(it_fc != this->friction_coefficient.end(),
"The master surface: " << master << "couldn't be found in friction_coefficient map");
FrictionCoefficient * fric_coef = it_fc->second;
AKANTU_DEBUG_ASSERT(fric_coef != NULL, "There is no friction coefficient defined for master surface " << master);
UInt nb_active_impactor_nodes = impactor_info->active_impactor_nodes->getSize();
UInt * active_impactor_nodes_val = impactor_info->active_impactor_nodes->storage();
Real * direction_val = impactor_info->master_normals->storage();
Real * friction_resistances_val = impactor_info->friction_resistances->storage();
// compute the friction coefficient for each active impactor node
Vector<Real> friction_coefficient_values(nb_active_impactor_nodes, 1);
Real * friction_coefficient_values_p = friction_coefficient_values.values;
fric_coef->computeFrictionCoefficient(friction_coefficient_values);
for (UInt n=0; n < nb_active_impactor_nodes; ++n) {
UInt current_node = active_impactor_nodes_val[n];
Real normal_contact_force = 0.;
Real friction_force = 0.;
for (UInt i=0; i < spatial_dimension; ++i) {
if(!Math::are_float_equal(direction_val[n * this->spatial_dimension + i],0.)) {
normal_contact_force = std::abs(residual_val[current_node * this->spatial_dimension + i]);
friction_force = friction_coefficient_values_p[n] * normal_contact_force;
}
}
friction_resistances_val[n] = friction_force;
}
AKANTU_DEBUG_OUT();
}
__END_AKANTU__
diff --git a/src/model/solid_mechanics/contact/contact_search_explicit.cc b/src/model/solid_mechanics/contact/contact_search_explicit.cc
index 16b0be423..5229cb670 100644
--- a/src/model/solid_mechanics/contact/contact_search_explicit.cc
+++ b/src/model/solid_mechanics/contact/contact_search_explicit.cc
@@ -1,641 +1,619 @@
/**
* @file contact_search_explicit.cc
*
* @author David Simon Kammer <david.kammer@epfl.ch>
*
* @date Wed Oct 27 13:54:26 2010
*
* @brief Specialization of the contact search structure for 3D within an
* explicit time scheme
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "regular_grid_neighbor_structure.hh"
#include "contact_search_explicit.hh"
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
ContactSearchExplicit::ContactSearchExplicit(Contact & contact,
const ContactNeighborStructureType & neighbors_structure_type,
const ContactSearchType & type,
const ContactSearchID & id) :
ContactSearch(contact, neighbors_structure_type, type, id), spatial_dimension(contact.getModel().getSpatialDimension()), mesh(contact.getModel().getFEM().getMesh()) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactSearchExplicit::findPenetration(const Surface & master_surface, PenetrationList & penetration_list) {
AKANTU_DEBUG_IN();
/// get the NodesNeighborList for the given master surface
std::map<Surface, ContactNeighborStructure *>::iterator it_surface;
for (it_surface = neighbors_structure.begin(); it_surface != neighbors_structure.end(); ++it_surface) {
if(it_surface->first == master_surface) {
break;
}
}
AKANTU_DEBUG_ASSERT(it_surface != neighbors_structure.end(),
"Master surface not found in this search object " << id);
const NodesNeighborList & neighbor_list = dynamic_cast<const NodesNeighborList&>(it_surface->second->getNeighborList());
UInt nb_impactor_nodes = neighbor_list.impactor_nodes.getSize();
Vector<UInt> * closest_master_nodes = new Vector<UInt>(nb_impactor_nodes, 1);
Vector<bool> * has_closest_master_node = new Vector<bool>(nb_impactor_nodes, 1, false);
findClosestMasterNodes(master_surface, closest_master_nodes, has_closest_master_node);
UInt * closest_master_nodes_val = closest_master_nodes->values;
bool * has_closest_master_node_val = has_closest_master_node->values;
/// get list of impactor and master nodes from neighbor list
UInt * impactor_nodes_val = neighbor_list.impactor_nodes.values;
//const Mesh & mesh = contact.getModel().getFEM().getMesh();
const Mesh::ConnectivityTypeList & type_list = mesh.getConnectivityTypeList();
Mesh::ConnectivityTypeList::const_iterator it;
/// find existing surface element types
UInt nb_facet_types = 0;
ElementType facet_type[_max_element_type];
for(it = type_list.begin(); it != type_list.end(); ++it) {
ElementType type = *it;
if(mesh.getSpatialDimension(type) == spatial_dimension) {
- ElementType current_facet_type = mesh.getFacetElementType(type);
+ ElementType current_facet_type = mesh.getFacetType(type);
facet_type[nb_facet_types++] = current_facet_type;
/// initialization of penetration list
// std::stringstream sstr_facets_offset;
// sstr_facets_offset << id << ":penetrated_facets_offset:" << current_facet_type;
penetration_list.penetrated_facets_offset.alloc(0, 1, current_facet_type, _not_ghost);
// std::stringstream sstr_facets;
// sstr_facets << id << ":penetrated_facets:" << current_facet_type;
penetration_list.penetrated_facets.alloc(0, 1, current_facet_type, _not_ghost);
// std::stringstream sstr_normals;
// sstr_normals << id << ":facets_normals:" << current_facet_type;
penetration_list.facets_normals.alloc(0, spatial_dimension, current_facet_type, _not_ghost);
// std::stringstream sstr_gaps;
// sstr_gaps << id << ":gaps:" << current_facet_type;
penetration_list.gaps.alloc(0, 1, current_facet_type, _not_ghost);
// std::stringstream sstr_projected_positions;
// sstr_projected_positions << id << ":projected_positions:" << current_facet_type;
penetration_list.projected_positions.alloc(0, spatial_dimension, current_facet_type, _not_ghost);
}
}
for(UInt in = 0; in < nb_impactor_nodes; ++in) {
if (!has_closest_master_node_val[in])
continue;
UInt current_impactor_node = impactor_nodes_val[in];
UInt closest_master_node = closest_master_nodes_val[in];
std::vector<Element> surface_elements;
Vector<bool> * are_inside = new Vector<bool>(0, 1);
Vector<bool> * are_in_projection_area = new Vector<bool>(0, 1);
Element considered_element;
for (UInt el_type = 0; el_type < nb_facet_types; ++el_type) {
ElementType type = facet_type[el_type];
UInt * surface_id_val = mesh.getSurfaceID(type, _not_ghost).values;
const Vector<UInt> & node_to_elements_offset = contact.getNodeToElementsOffset(type, _not_ghost);
const Vector<UInt> & node_to_elements = contact.getNodeToElements(type, _not_ghost);
UInt * node_to_elements_offset_val = node_to_elements_offset.values;
UInt * node_to_elements_val = node_to_elements.values;
UInt min_element_offset = node_to_elements_offset_val[closest_master_node];
UInt max_element_offset = node_to_elements_offset_val[closest_master_node + 1];
considered_element.type = type;
for(UInt el = min_element_offset; el < max_element_offset; ++el) {
UInt surface_element = node_to_elements_val[el];
if(surface_id_val[surface_element] == master_surface) {
bool is_inside;
bool is_in_projection_area;
checkPenetrationSituation(current_impactor_node,
surface_element,
type,
is_inside,
is_in_projection_area);
considered_element.element = surface_element;
surface_elements.push_back(considered_element);
are_inside->push_back(is_inside);
are_in_projection_area->push_back(is_in_projection_area);
}
}
}
UInt nb_penetrated_elements = 0;
UInt nb_elements_type[_max_element_type]; memset(nb_elements_type, 0, sizeof(UInt) * _max_element_type);
bool * are_inside_val = are_inside->values;
bool * are_in_projection_area_val = are_in_projection_area->values;
bool is_outside = false;
UInt nb_surface_elements = static_cast<UInt>(surface_elements.size());
// add all elements for which impactor is inside and in projection area
for(UInt el = 0; el < nb_surface_elements; ++el) {
if(are_inside_val[el] && are_in_projection_area_val[el]) {
ElementType current_type = surface_elements.at(el).type;
UInt current_element = surface_elements.at(el).element;
penetration_list.penetrated_facets(current_type, _not_ghost).push_back(current_element);
Real normal[3];
Real projected_position[3];
Real gap;
computeComponentsOfProjection(current_impactor_node,
current_element,
current_type,
normal,
gap,
projected_position);
penetration_list.facets_normals(current_type, _not_ghost).push_back(normal);
penetration_list.projected_positions(current_type, _not_ghost).push_back(projected_position);
penetration_list.gaps(current_type, _not_ghost).push_back(gap);
nb_penetrated_elements++;
nb_elements_type[current_type]++;
}
}
if(nb_penetrated_elements > 0) {
for(it = type_list.begin(); it != type_list.end(); ++it) {
ElementType type = *it;
if(mesh.getSpatialDimension(type) == spatial_dimension) {
penetration_list.penetrating_nodes.push_back(current_impactor_node);
- ElementType current_facet_type = mesh.getFacetElementType(type);
+ ElementType current_facet_type = mesh.getFacetType(type);
penetration_list.penetrated_facets_offset(current_facet_type, _not_ghost).push_back(nb_elements_type[current_facet_type]);
}
}
}
// if there was no element which is inside and in projection area
// check if node is not definitly outside
else {
for(UInt el = 0; el < nb_surface_elements && !is_outside; ++el) {
if(!are_inside_val[el] && are_in_projection_area_val[el]) {
is_outside = true;
}
}
// it is not definitly outside take all elements to which it is at least inside
if(!is_outside) {
bool found_inside_node = false;
for(UInt el = 0; el < nb_surface_elements; ++el) {
if(are_inside_val[el] && !are_in_projection_area_val[el]) {
ElementType current_type = surface_elements.at(el).type;
UInt current_element = surface_elements.at(el).element;
penetration_list.penetrated_facets(current_type, _not_ghost).push_back(current_element);
Real normal[3];
Real projected_position[3];
Real gap;
computeComponentsOfProjection(current_impactor_node,
current_element,
current_type,
normal,
gap,
projected_position);
penetration_list.facets_normals(current_type, _not_ghost).push_back(normal);
penetration_list.projected_positions(current_type, _not_ghost).push_back(projected_position);
penetration_list.gaps(current_type, _not_ghost).push_back(gap);
nb_penetrated_elements++;
nb_elements_type[current_type]++;
found_inside_node = true;
}
}
if(found_inside_node) {
for(it = type_list.begin(); it != type_list.end(); ++it) {
ElementType type = *it;
if(mesh.getSpatialDimension(type) == spatial_dimension) {
penetration_list.penetrating_nodes.push_back(current_impactor_node);
- ElementType current_facet_type = mesh.getFacetElementType(type);
+ ElementType current_facet_type = mesh.getFacetType(type);
penetration_list.penetrated_facets_offset(current_facet_type, _not_ghost).push_back(nb_elements_type[current_facet_type]);
}
}
}
}
}
delete are_in_projection_area;
delete are_inside;
}
// make the offset table a real offset table
for(it = type_list.begin(); it != type_list.end(); ++it) {
ElementType type = *it;
if(mesh.getSpatialDimension(type) == spatial_dimension) {
- ElementType current_facet_type = mesh.getFacetElementType(type);
+ ElementType current_facet_type = mesh.getFacetType(type);
UInt tmp_nb_facets = penetration_list.penetrated_facets_offset(current_facet_type, _not_ghost).getSize();
penetration_list.penetrated_facets_offset(current_facet_type, _not_ghost).resize(tmp_nb_facets+1);
Vector<UInt> & tmp_penetrated_facets_offset = (penetration_list.penetrated_facets_offset(current_facet_type, _not_ghost));
UInt * tmp_penetrated_facets_offset_val = tmp_penetrated_facets_offset.values;
for (UInt i = 1; i < tmp_nb_facets; ++i)
tmp_penetrated_facets_offset_val[i] += tmp_penetrated_facets_offset_val[i - 1];
for (UInt i = tmp_nb_facets; i > 0; --i)
tmp_penetrated_facets_offset_val[i] = tmp_penetrated_facets_offset_val[i - 1];
tmp_penetrated_facets_offset_val[0] = 0;
}
}
delete closest_master_nodes;
delete has_closest_master_node;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactSearchExplicit::findClosestMasterNodes(const Surface & master_surface,
Vector<UInt> * closest_master_nodes,
Vector<bool> * has_closest_master_node) {
AKANTU_DEBUG_IN();
bool * has_closest_master_node_val = has_closest_master_node->values;
UInt * closest_master_nodes_val = closest_master_nodes->values;
/// get the NodesNeighborList for the given master surface
std::map<Surface, ContactNeighborStructure *>::iterator it;
for (it = neighbors_structure.begin(); it != neighbors_structure.end(); ++it) {
if(it->first == master_surface) {
break;
}
}
AKANTU_DEBUG_ASSERT(it != neighbors_structure.end(), "Master surface not found in this search object " << id);
const NodesNeighborList & neighbor_list = dynamic_cast<const NodesNeighborList&>(it->second->getNeighborList());
/// get list of impactor and master nodes from neighbor list
UInt * impactor_nodes_val = neighbor_list.impactor_nodes.values;
UInt * master_nodes_offset_val = neighbor_list.master_nodes_offset.values;
UInt * master_nodes_val = neighbor_list.master_nodes.values;
/// loop over all impactor nodes and find for each the closest master node
UInt nb_impactor_nodes = neighbor_list.impactor_nodes.getSize();
for(UInt imp = 0; imp < nb_impactor_nodes; ++imp) {
UInt current_impactor_node = impactor_nodes_val[imp];
UInt min_offset = master_nodes_offset_val[imp];
UInt max_offset = master_nodes_offset_val[imp + 1];
// if there is no master node go to next impactor node
if (min_offset == max_offset)
continue;
Real min_square_distance = std::numeric_limits<Real>::max();
UInt closest_master_node = (UInt)-1; // for finding error
for(UInt mn = min_offset; mn < max_offset; ++mn) {
UInt current_master_node = master_nodes_val[mn];
Real square_distance = computeSquareDistanceBetweenNodes(current_impactor_node, current_master_node);
if(min_square_distance > square_distance) {
min_square_distance = square_distance;
closest_master_node = current_master_node;
}
}
AKANTU_DEBUG_ASSERT(closest_master_node != ((UInt)-1), "could not find a closest master node for impactor node: " << current_impactor_node);
has_closest_master_node_val[imp] = true;
closest_master_nodes_val[imp] = closest_master_node;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactSearchExplicit::computeComponentsOfProjection(const UInt impactor_node,
const UInt surface_element,
const ElementType type,
Real * normal,
Real & gap,
Real * projected_position) {
AKANTU_DEBUG_IN();
switch(type) {
case _segment_2: {
computeComponentsOfProjectionSegment2(impactor_node, surface_element, normal, gap, projected_position);
break;
}
case _triangle_3: {
computeComponentsOfProjectionTriangle3(impactor_node, surface_element, normal, gap, projected_position);
break;
}
case _not_defined: {
AKANTU_DEBUG_ERROR("Not a valid surface element type : " << type);
break;
}
- case _segment_3:
- case _triangle_6:
- case _tetrahedron_4:
- case _tetrahedron_10:
- case _quadrangle_4:
- case _quadrangle_8:
- case _hexahedron_8:
- case _point:
- case _bernoulli_beam_2:
- case _cohesive_2d_4:
- case _cohesive_2d_6:
- case _max_element_type: {
+ default: {
AKANTU_DEBUG_ERROR("Contact search is not implemented for this surface element type : " << type);
break;
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactSearchExplicit::checkPenetrationSituation(const UInt impactor_node,
const UInt surface_element,
const ElementType type,
bool & is_inside,
bool & is_in_projection_area) {
AKANTU_DEBUG_IN();
switch(type) {
case _segment_2: {
checkPenetrationSituationSegment2(impactor_node, surface_element, is_inside, is_in_projection_area);
break;
}
case _triangle_3: {
checkPenetrationSituationTriangle3(impactor_node, surface_element, is_inside, is_in_projection_area);
break;
}
case _not_defined: {
AKANTU_DEBUG_ERROR("Not a valid surface element type : " << type);
break;
}
- case _segment_3:
- case _triangle_6:
- case _tetrahedron_4:
- case _tetrahedron_10:
- case _quadrangle_4:
- case _quadrangle_8:
- case _hexahedron_8:
- case _point:
- case _bernoulli_beam_2:
- case _cohesive_2d_4:
- case _cohesive_2d_6:
- case _max_element_type: {
+ default: {
AKANTU_DEBUG_ERROR("Contact search is not implemented for this surface element type : " << type);
break;
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactSearchExplicit::computeComponentsOfProjectionSegment2(const UInt impactor_node,
const UInt surface_element,
Real * normal,
Real & gap,
Real * projected_position) {
AKANTU_DEBUG_IN();
const UInt dim = spatial_dimension;
const ElementType type = _segment_2;
const UInt nb_nodes_element = Mesh::getNbNodesPerElement(type);
Real * current_position = contact.getModel().getCurrentPosition().values;
UInt * connectivity = mesh.getConnectivity(type, _not_ghost).values;
UInt node_1 = surface_element * nb_nodes_element;
Real * position_node_1 = &(current_position[connectivity[node_1 + 0] * spatial_dimension]);
Real * position_node_2 = &(current_position[connectivity[node_1 + 1] * spatial_dimension]);
Real * position_impactor_node = &(current_position[impactor_node * spatial_dimension]);
/// compute the normal of the face
Real vector_1[2];
Math::vector_2d(position_node_1, position_node_2, vector_1); /// @todo: check if correct order of nodes !!
Math::normal2(vector_1, normal);
/// compute the gap between impactor and face
/// gap positive if impactor outside of surface
Real vector_node_1_impactor[2];
Math::vector_2d(position_node_1, position_impactor_node, vector_node_1_impactor);
gap = Math::vectorDot2(vector_node_1_impactor, normal);
/// compute the projected position of the impactor node onto the face
for(UInt i=0; i < dim; ++i) {
projected_position[i] = position_impactor_node[i] - gap * normal[i];
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactSearchExplicit::computeComponentsOfProjectionTriangle3(const UInt impactor_node,
const UInt surface_element,
Real * normal,
Real & gap,
Real * projected_position) {
AKANTU_DEBUG_IN();
const UInt dim = spatial_dimension;
const ElementType type = _triangle_3;
const UInt nb_nodes_element = Mesh::getNbNodesPerElement(type);
Real * current_position = contact.getModel().getCurrentPosition().values;
UInt * connectivity = mesh.getConnectivity(type, _not_ghost).values;
UInt node_1 = surface_element * nb_nodes_element;
Real * position_node_1 = &(current_position[connectivity[node_1 + 0] * spatial_dimension]);
Real * position_node_2 = &(current_position[connectivity[node_1 + 1] * spatial_dimension]);
Real * position_node_3 = &(current_position[connectivity[node_1 + 2] * spatial_dimension]);
Real * position_impactor_node = &(current_position[impactor_node * spatial_dimension]);
/// compute the normal of the face
Real vector_1[3];
Real vector_2[3];
Math::vector_3d(position_node_1, position_node_2, vector_1); /// @todo: check if correct order of nodes !!
Math::vector_3d(position_node_1, position_node_3, vector_2);
Math::normal3(vector_1, vector_2, normal);
/// compute the gap between impactor and face
/// gap positive if impactor outside of surface
Real vector_node_1_impactor[3];
Math::vector_3d(position_node_1, position_impactor_node, vector_node_1_impactor);
gap = Math::vectorDot3(vector_node_1_impactor, normal);
/// compute the projected position of the impactor node onto the face
for(UInt i=0; i < dim; ++i) {
projected_position[i] = position_impactor_node[i] - gap * normal[i];
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactSearchExplicit::checkPenetrationSituationSegment2(const UInt impactor_node,
const UInt surface_element,
bool & is_inside,
bool & is_in_projection_area) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(spatial_dimension == 2, "wrong spatial dimension (=" << spatial_dimension << ") for checkPenetrationSituationSegment2");
const ElementType type = _segment_2;
const UInt nb_nodes_element = Mesh::getNbNodesPerElement(type);
const Real tolerance = std::numeric_limits<Real>::epsilon();
Real * current_position = contact.getModel().getCurrentPosition().values;
UInt * connectivity = mesh.getConnectivity(type, _not_ghost).values;
Real gap;
Real normal[2];
Real projected_position[2];
computeComponentsOfProjectionSegment2(impactor_node, surface_element, normal, gap, projected_position);
// -------------------------------------------------------
/// Find if impactor node is inside or outside of the face
// -------------------------------------------------------
if(gap < -tolerance)
is_inside = true;
else
is_inside = false;
// ----------------------------------------------------
/// Find if impactor node is in projection area of face
// ----------------------------------------------------
UInt node_1 = surface_element * nb_nodes_element;
Real * position_node_1 = &(current_position[connectivity[node_1 + 0] * spatial_dimension]);
Real * position_node_2 = &(current_position[connectivity[node_1 + 1] * spatial_dimension]);
Real tmp_vector_1_imp[2];
Real tmp_vector_1_2[2];
// find vectors from master node 1 to impactor and master node 2
Math::vector_2d(position_node_1, position_node_2, tmp_vector_1_2);
Math::vector_2d(position_node_1, projected_position, tmp_vector_1_imp);
Real length_difference = Math::norm2(tmp_vector_1_imp) - Math::norm2(tmp_vector_1_2);
// the projection is outside if the test area is larger than the area of the triangle
if(length_difference > tolerance)
is_in_projection_area = false;
else
is_in_projection_area = true;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void ContactSearchExplicit::checkPenetrationSituationTriangle3(const UInt impactor_node,
const UInt surface_element,
bool & is_inside,
bool & is_in_projection_area) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(spatial_dimension == 3, "wrong spatial dimension (=" << spatial_dimension << ") for checkPenetrationSituationTriangle3");
const ElementType type = _triangle_3;
const UInt nb_nodes_element = Mesh::getNbNodesPerElement(type);
const Real tolerance = std::numeric_limits<Real>::epsilon();
Real * current_position = contact.getModel().getCurrentPosition().values;
UInt * connectivity = mesh.getConnectivity(type, _not_ghost).values;
Real gap;
Real normal[3];
Real projected_position[3];
computeComponentsOfProjectionTriangle3(impactor_node, surface_element, normal, gap, projected_position);
// -------------------------------------------------------
/// Find if impactor node is inside or outside of the face
// -------------------------------------------------------
if(gap < -tolerance)
is_inside = true;
else
is_inside = false;
// ----------------------------------------------------
/// Find if impactor node is in projection area of face
// ----------------------------------------------------
UInt node_1 = surface_element * nb_nodes_element;
Real * position_node_1 = &(current_position[connectivity[node_1 + 0] * spatial_dimension]);
Real * position_node_2 = &(current_position[connectivity[node_1 + 1] * spatial_dimension]);
Real * position_node_3 = &(current_position[connectivity[node_1 + 2] * spatial_dimension]);
Real triangle_area;
Real test_area = 0.0;
Real tmp_vector_1[3];
Real tmp_vector_2[3];
Real tmp_vector_3[3];
// find area of triangle
Math::vector_3d(position_node_1, position_node_2, tmp_vector_1);
Math::vector_3d(position_node_1, position_node_3, tmp_vector_2);
Math::vectorProduct3(tmp_vector_1, tmp_vector_2, tmp_vector_3);
triangle_area = 0.5 * Math::norm3(tmp_vector_3);
// compute areas of projected position and two nodes of master triangle
UInt nb_sub_areas = nb_nodes_element;
UInt node_order[4];
node_order[0] = 0; node_order[1] = 1; node_order[2] = 2; node_order[3] = 0;
for(UInt i=0; i < nb_sub_areas; ++i) {
position_node_1 = &(current_position[connectivity[node_1 + node_order[i ]] * spatial_dimension]);
position_node_2 = &(current_position[connectivity[node_1 + node_order[i+1]] * spatial_dimension]);
Math::vector_3d(projected_position, position_node_1, tmp_vector_1);
Math::vector_3d(projected_position, position_node_2, tmp_vector_2);
Math::vectorProduct3(tmp_vector_1, tmp_vector_2, tmp_vector_3);
test_area += 0.5 * Math::norm3(tmp_vector_3);
}
// the projection is outside if the test area is larger than the area of the triangle
if((test_area - triangle_area) > tolerance)
is_in_projection_area = false;
else
is_in_projection_area = true;
AKANTU_DEBUG_OUT();
}
__END_AKANTU__
diff --git a/src/model/solid_mechanics/contact/friction_coefficient/historic_velocity_fric_coef.cc b/src/model/solid_mechanics/contact/friction_coefficient/historic_velocity_fric_coef.cc
index 19a9f362b..48367184e 100644
--- a/src/model/solid_mechanics/contact/friction_coefficient/historic_velocity_fric_coef.cc
+++ b/src/model/solid_mechanics/contact/friction_coefficient/historic_velocity_fric_coef.cc
@@ -1,332 +1,319 @@
/**
* @file historic_velocity_fric_coef.cc
*
* @author David Simon Kammer <david.kammer@epfl.ch>
*
* @date Fri Nov 11 16:56:08 2011
*
* @brief implementation of historic velocity dependent friction coefficient
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "historic_velocity_fric_coef.hh"
#include <iostream>
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
HistoricVelocityFricCoef::HistoricVelocityFricCoef(ContactRigid & contact,
const Surface & master_surface,
const Real beta) :
FrictionCoefficient(contact, master_surface),
spatial_dimension(contact.getSpatialDimension()),
beta(beta),
nodes(0,1),
active(0,1),
contact_time(0,1) {
AKANTU_DEBUG_IN();
// compute time range of history
Real tolerance_epsilon = 1e-5;
Real total_time = log(1/tolerance_epsilon) / beta;
Real time_step = this->contact.getModel().getTimeStep();
UInt nb_time_steps = (UInt)ceil(total_time / time_step) + 1;
std::cout << " * Historic Velocity Friction Coefficient: total history time = " << total_time << " with numbers of time steps = " << nb_time_steps << std::endl;
// declare vector
this->weights = new Vector<Real>(nb_time_steps,1);
this->historic_velocities = new CircularVector< Vector<Real> * >(nb_time_steps, 1);
// fill the weights vector
Real time = 0.;
for (Int i=nb_time_steps-1; i>=0; --i) {
(*weights)(i) = exp(-beta*time);
time += time_step;
}
this->generalized_sliding_velocities = new Vector<Real>(0,1);
this->node_stick_status = new Vector<bool>(0,1);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
HistoricVelocityFricCoef::HistoricVelocityFricCoef(ContactRigid & contact,
const Surface & master_surface) :
FrictionCoefficient(contact, master_surface),
spatial_dimension(contact.getSpatialDimension()),
beta(1.),
nodes(0,1),
active(0,1),
contact_time(0,1) {
AKANTU_DEBUG_IN();
std::cout << " * Historic Velocity Friction Coefficient: not used, only inherited from." << std::endl;
// declare vector
this->weights = new Vector<Real>(0,1);
this->historic_velocities = new CircularVector< Vector<Real> * >(0, 1);
this->generalized_sliding_velocities = new Vector<Real>(0,1);
this->node_stick_status = new Vector<bool>(0,1);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
HistoricVelocityFricCoef::~HistoricVelocityFricCoef() {
AKANTU_DEBUG_IN();
delete this->weights;
for (UInt i=0; i<historic_velocities->getSize(); ++i)
delete ((*historic_velocities)(i));
delete this->historic_velocities;
delete this->generalized_sliding_velocities;
delete this->node_stick_status;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void HistoricVelocityFricCoef::initializeComputeFricCoef() {
AKANTU_DEBUG_IN();
/*
Find if more nodes have to be considered
*/
// get access to impactors information
const ContactRigid::SurfaceToImpactInfoMap & imp_info = this->contact.getImpactorsInformation();
ContactRigid::SurfaceToImpactInfoMap::const_iterator it;
it = imp_info.find(this->master_surface);
AKANTU_DEBUG_ASSERT(it != imp_info.end(),
"Couldn't find impactor information object for master surface " << master_surface);
ContactRigid::ImpactorInformationPerMaster * impactor_info = it->second;
Vector<UInt> * active_nodes = impactor_info->active_impactor_nodes;
UInt nb_active_nodes = active_nodes->getSize();
Real time_step = this->contact.getModel().getTimeStep();
// check if in nodes vector. if no, put it.
this->active.clear();
for (UInt i=0; i<nb_active_nodes; ++i) {
UInt node = (*active_nodes)(i);
Int pos = this->nodes.find(node);
if (pos == -1) {
nodes.push_back(node);
active.push_back(true);
contact_time.push_back(0.);
}
else {
active(pos) = true;
contact_time(pos) += time_step;
}
}
UInt nb_nodes = this->nodes.getSize();
// resize the vectors in the historic velocities
UInt nb_historic_velocities = this->historic_velocities->getSize();
for (UInt i=0; i<nb_historic_velocities; ++i) {
Vector<Real> * historic_velocity = (*historic_velocities)(i);
if (historic_velocity != NULL) {
historic_velocity->resize(nb_nodes); // the new values are initialized to zero
}
}
/*
find the velocities of this time step and put in vector
*/
// advance circular vector and access the velocities
historic_velocities->makeStep();
if ((*historic_velocities)(nb_historic_velocities-1) == NULL)
(*historic_velocities)(nb_historic_velocities-1) = new Vector<Real>(nb_nodes,1);
else {
(*historic_velocities)(nb_historic_velocities-1)->clear();
}
Vector<Real> * current_velocities = (*historic_velocities)(nb_historic_velocities-1);
Real * velocity_val = this->contact.getModel().getVelocity().values;
// access the master normals
Vector<Real> * master_normals = impactor_info->master_normals;
Real * master_normals_val = master_normals->values;
// norms for each point
Vector<Real> norms(nb_nodes,1);
// loop over all nodes in here
for(UInt n = 0; n < nb_nodes; ++n) {
// if node is not active set velocity to zero
if (!active(n)) {
(*current_velocities)(n) = 0.;
contact_time(n) = 0.; // put contact_time to zero for non active nodes
}
// OTHERWISE ...
else {
// ... COMPUTE TANGENTIAL
UInt impactor = nodes(n);
// get indexes in the vectors
UInt master_normal_index = active_nodes->find(impactor) * this->spatial_dimension;
UInt velocity_index = impactor * this->spatial_dimension;
// project slave velocity
Real projected_length;
if(this->spatial_dimension == 2)
projected_length = Math::vectorDot2(&master_normals_val[master_normal_index], &velocity_val[velocity_index]);
else if(this->spatial_dimension == 3)
projected_length = Math::vectorDot3(&master_normals_val[master_normal_index], &velocity_val[velocity_index]);
Real tangential_impactor_velocity[3];
for(UInt i=0; i<this->spatial_dimension; ++i) {
tangential_impactor_velocity[i] = velocity_val[velocity_index + i] - projected_length * master_normals_val[master_normal_index + i];
}
// get master velocity
Real tangential_master_velocity[3];
computeTangentialMasterVelocity(n, impactor_info, tangential_master_velocity);
// compute relative sliding speed
Real relative_sliding_speed;
Real relative_sliding_velocity[3];
for(UInt i =0; i<this->spatial_dimension; ++i)
relative_sliding_velocity[i] = tangential_impactor_velocity[i] - tangential_master_velocity[i];
if(this->spatial_dimension == 2)
relative_sliding_speed = Math::norm2(relative_sliding_velocity);
else if(this->spatial_dimension == 3)
relative_sliding_speed = Math::norm3(relative_sliding_velocity);
(*current_velocities)(n) = relative_sliding_speed;
// ... COMPUTE NORM
if (contact_time(n)/time_step < 1e-14)
norms(n) = 1.; // there should be only the instant velocity
else {
norms(n) = beta / (1 - exp(-beta*contact_time(n)));
}
}
}
/*
Compute the weighted average of sliding velocity
*/
Vector<Real> results(nb_nodes, 1);
for (UInt i=0; i<nb_historic_velocities; ++i) {
Vector<Real> * velocities = (*historic_velocities)(i);
if (velocities == NULL) continue;
// set inactive nodes to zero
for (UInt j=0; j<nb_nodes; ++j) {
if (!active(j))
(*velocities)(j) = 0.;
}
// multiply with weight
Real weight = (*weights)(i);
Vector<Real> weighted_velocities(0,1);
weighted_velocities.copy(*velocities);
weighted_velocities *= weight * time_step;
// add up
results += weighted_velocities;
}
// divide by normalized velocity
for (UInt j=0; j<nb_nodes; ++j) {
results(j) *= norms(j);
}
/*
fill the final vector
*/
// resize the relative sliding velocity vector to the nb of active impactor nodes
this->generalized_sliding_velocities->resize(nb_active_nodes);
this->node_stick_status->resize(nb_active_nodes);
Vector<bool> * stick_info = impactor_info->node_is_sticking;
for (UInt i=0; i<nb_active_nodes; ++i) {
UInt node = (*active_nodes)(i);
UInt pos = nodes.find(node);
(*generalized_sliding_velocities)(i) = results(pos);
(*node_stick_status)(i) = (*stick_info)(i,0);
// std::cout << (*generalized_sliding_velocities)(i) << " ";
}
//std::cout << std::endl;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void HistoricVelocityFricCoef::computeTangentialMasterVelocity(UInt impactor_index,
ContactRigid::ImpactorInformationPerMaster * impactor_info,
Real * tangential_master_velocity) {
AKANTU_DEBUG_IN();
// for ContactRigid, the master velocity is by definition zero
const ContactType contact_type = this->contact.getType();
if(contact_type == _ct_rigid /* do not change for general contact */) {
for (UInt i=0; i<this->spatial_dimension; ++i)
tangential_master_velocity[i] = 0.;
}
else {
// compute the tangential master velocity
ElementType type = impactor_info->master_element_type->at(impactor_index);
switch(type) {
case _not_defined: {
AKANTU_DEBUG_ERROR("Not a valid surface element type : " << type << " for computation of tangential velocity of master element");
break;
}
- case _segment_2:
- case _segment_3:
- case _triangle_3:
- case _triangle_6:
- case _tetrahedron_4:
- case _tetrahedron_10:
- case _quadrangle_4:
- case _quadrangle_8:
- case _hexahedron_8:
- case _point:
- case _bernoulli_beam_2:
- case _cohesive_2d_4:
- case _cohesive_2d_6:
- case _max_element_type: {
+ default: {
AKANTU_DEBUG_ERROR("Not a valid surface element type : " << type << " for computation of tangential velocity of master element");
break;
}
}
}
AKANTU_DEBUG_OUT();
}
__END_AKANTU__
diff --git a/src/model/solid_mechanics/contact/friction_coefficient/simplified_dieterich_fric_coef.cc b/src/model/solid_mechanics/contact/friction_coefficient/simplified_dieterich_fric_coef.cc
index 39b51ebc2..f191aa576 100644
--- a/src/model/solid_mechanics/contact/friction_coefficient/simplified_dieterich_fric_coef.cc
+++ b/src/model/solid_mechanics/contact/friction_coefficient/simplified_dieterich_fric_coef.cc
@@ -1,204 +1,191 @@
/**
* @file simplified_dieterich_fric_coef.cc
*
* @author David Simon Kammer <david.kammer@epfl.ch>
*
* @date Tue Mar 22 13:18:24 2011
*
* @brief implementation of the simpliefied dieterich friction law
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "simplified_dieterich_fric_coef.hh"
#include "contact_rigid.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
SimplifiedDieterichFricCoef::SimplifiedDieterichFricCoef(ContactRigid & contact,
const Surface & master_surface) : FrictionCoefficient(contact, master_surface), spatial_dimension(this->contact.getSpatialDimension()), mu_zero(0.), a_factor(0.), b_factor(0.), v_normalizer(1.), theta_normalizer(1.) {
AKANTU_DEBUG_IN();
this->relative_sliding_velocities = new Vector<Real>(0,1);
this->theta_state_variables = new Vector<Real>(0,1);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
SimplifiedDieterichFricCoef::~SimplifiedDieterichFricCoef() {
AKANTU_DEBUG_IN();
delete this->relative_sliding_velocities;
delete this->theta_state_variables;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SimplifiedDieterichFricCoef::initializeComputeFricCoef() {
AKANTU_DEBUG_IN();
// find impactor_information for given master
const ContactRigid::SurfaceToImpactInfoMap & imp_info = this->contact.getImpactorsInformation();
ContactRigid::SurfaceToImpactInfoMap::const_iterator it;
it = imp_info.find(this->master_surface);
AKANTU_DEBUG_ASSERT(it != imp_info.end(),
"Couldn't find impactor information object for master surface " << master_surface);
ContactRigid::ImpactorInformationPerMaster * impactor_info = it->second;
/*
const std::vector<ContactRigid::ImpactorInformationPerMaster * > impactor_information_vector = this->contact.getImpactorsInformation();
// find index of master surface in impactors_information
Int master_index = -1;
for (UInt i=0; i < impactor_information_vector.size(); ++i) {
if (impactor_information_vector.at(i)->master_id == this->master_surface) {
master_index = i;
break;
}
}
AKANTU_DEBUG_ASSERT(master_index != -1, "No impactor information object for master" << this->master_surface << "in impactors_information vector that is ");
ContactRigid::ImpactorInformationPerMaster * impactor_info = impactor_information_vector.at(master_index);
*/
Vector<UInt> * active_nodes = impactor_info->active_impactor_nodes;
UInt * active_nodes_val = active_nodes->values;
Vector<Real> * master_normals = impactor_info->master_normals;
Real * master_normals_val = master_normals->values;
Real * velocity_val = this->contact.getModel().getVelocity().values;
// resize the relative sliding velocity vector to the nb of active impactor nodes
this->relative_sliding_velocities->resize(active_nodes->getSize());
Real * relative_sliding_velocities_val = this->relative_sliding_velocities->values;
for(UInt n = 0; n < active_nodes->getSize(); ++n) {
UInt impactor = active_nodes_val[n];
UInt master_normal_index = n * this->spatial_dimension;
UInt velocity_index = impactor * this->spatial_dimension;
Real projected_length;
if(this->spatial_dimension == 2)
projected_length = Math::vectorDot2(&master_normals_val[master_normal_index], &velocity_val[velocity_index]);
else if(this->spatial_dimension == 3)
projected_length = Math::vectorDot3(&master_normals_val[master_normal_index], &velocity_val[velocity_index]);
Real tangential_impactor_velocity[3];
for(UInt i=0; i<this->spatial_dimension; ++i) {
tangential_impactor_velocity[i] = velocity_val[velocity_index + i] - projected_length * master_normals_val[master_normal_index + i];
}
Real tangential_master_velocity[3];
//Real * tangential_master_velocity_p = &(tangential_master_velocity[0]);
computeTangentialMasterVelocity(n, impactor_info, tangential_master_velocity);
Real relative_sliding_speed;
Real relative_sliding_velocity[3];
//Real * relative_sliding_velocity_p = &(relative_sliding_velocity_p[0]);
for(UInt i =0; i<this->spatial_dimension; ++i)
relative_sliding_velocity[i] = tangential_impactor_velocity[i] - tangential_master_velocity[i];
if(this->spatial_dimension == 2)
relative_sliding_speed = Math::norm2(relative_sliding_velocity);
else if(this->spatial_dimension == 3)
relative_sliding_speed = Math::norm3(relative_sliding_velocity);
relative_sliding_velocities_val[n] = relative_sliding_speed;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SimplifiedDieterichFricCoef::computeTangentialMasterVelocity(UInt impactor_index, ContactRigid::ImpactorInformationPerMaster * impactor_info, Real * tangential_master_velocity) {
AKANTU_DEBUG_IN();
// for ContactRigid, the master velocity is by definition zero
const ContactType contact_type = this->contact.getType();
if(contact_type == _ct_rigid /* do not change for general contact */) {
for (UInt i=0; i<this->spatial_dimension; ++i)
tangential_master_velocity[i] = 0.;
}
else {
// compute the tangential master velocity
ElementType type = impactor_info->master_element_type->at(impactor_index);
switch(type) {
/*
case _segment_2: {
//computeComponentsOfProjectionSegment2(impactor_node, surface_element, normal, gap, projected_position);
break;
}
*/
/*
case _triangle_3: {
//computeComponentsOfProjectionTriangle3(impactor_node, surface_element, normal, gap, projected_position);
break;
}
*/
case _not_defined: {
AKANTU_DEBUG_ERROR("Not a valid surface element type : " << type << " for computation of tangential velocity of master element");
break;
}
- case _segment_2:
- case _segment_3:
- case _triangle_3:
- case _triangle_6:
- case _tetrahedron_4:
- case _tetrahedron_10:
- case _quadrangle_4:
- case _quadrangle_8:
- case _hexahedron_8:
- case _point:
- case _bernoulli_beam_2:
- case _cohesive_2d_4:
- case _cohesive_2d_6:
- case _max_element_type: {
+ default: {
AKANTU_DEBUG_ERROR("Not a valid surface element type : " << type << " for computation of tangential velocity of master element");
break;
}
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SimplifiedDieterichFricCoef::setParam(const std::string & key, const std::string & value) {
AKANTU_DEBUG_IN();
std::stringstream sstr(value);
if(key == "mu_zero") { sstr >> this->mu_zero; }
else if(key == "a_factor") { sstr >> this->a_factor; }
else if(key == "b_factor") { sstr >> this->b_factor; }
else if(key == "v_normalizer") { sstr >> this->v_normalizer; }
else if(key == "theta_normalizer") { sstr >> this->theta_normalizer; }
else { FrictionCoefficient::setParam(key, value); }
AKANTU_DEBUG_OUT();
}
__END_AKANTU__
diff --git a/src/model/solid_mechanics/contact/friction_coefficient/velocity_dependent_fric_coef.cc b/src/model/solid_mechanics/contact/friction_coefficient/velocity_dependent_fric_coef.cc
index 9df17352e..2b012aee9 100644
--- a/src/model/solid_mechanics/contact/friction_coefficient/velocity_dependent_fric_coef.cc
+++ b/src/model/solid_mechanics/contact/friction_coefficient/velocity_dependent_fric_coef.cc
@@ -1,173 +1,160 @@
/**
* @file velocity_dependent_fric_coef.cc
*
* @author David Simon Kammer <david.kammer@epfl.ch>
*
* @date Tue Jun 21 15:14:39 2011
*
* @brief implementation for velocity dependence of friction coefficient
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "velocity_dependent_fric_coef.hh"
#include "contact_rigid.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
VelocityDependentFricCoef::VelocityDependentFricCoef(ContactRigid & contact,
const Surface & master_surface) :
FrictionCoefficient(contact, master_surface),
spatial_dimension(this->contact.getSpatialDimension()) {
AKANTU_DEBUG_IN();
this->relative_sliding_velocities = new Vector<Real>(0,1);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
VelocityDependentFricCoef::~VelocityDependentFricCoef() {
AKANTU_DEBUG_IN();
delete this->relative_sliding_velocities;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void VelocityDependentFricCoef::initializeComputeFricCoef() {
AKANTU_DEBUG_IN();
// find impactor_information for given master
const ContactRigid::SurfaceToImpactInfoMap & imp_info = this->contact.getImpactorsInformation();
ContactRigid::SurfaceToImpactInfoMap::const_iterator it;
it = imp_info.find(this->master_surface);
AKANTU_DEBUG_ASSERT(it != imp_info.end(),
"Couldn't find impactor information object for master surface " << master_surface);
ContactRigid::ImpactorInformationPerMaster * impactor_info = it->second;
Vector<UInt> * active_nodes = impactor_info->active_impactor_nodes;
UInt * active_nodes_val = active_nodes->values;
Vector<Real> * master_normals = impactor_info->master_normals;
Real * master_normals_val = master_normals->values;
Real * velocity_val = this->contact.getModel().getVelocity().values;
// resize the relative sliding velocity vector to the nb of active impactor nodes
this->relative_sliding_velocities->resize(active_nodes->getSize());
Real * relative_sliding_velocities_val = this->relative_sliding_velocities->values;
for(UInt n = 0; n < active_nodes->getSize(); ++n) {
UInt impactor = active_nodes_val[n];
UInt master_normal_index = n * this->spatial_dimension;
UInt velocity_index = impactor * this->spatial_dimension;
Real projected_length;
if(this->spatial_dimension == 2)
projected_length = Math::vectorDot2(&master_normals_val[master_normal_index], &velocity_val[velocity_index]);
else if(this->spatial_dimension == 3)
projected_length = Math::vectorDot3(&master_normals_val[master_normal_index], &velocity_val[velocity_index]);
Real tangential_impactor_velocity[3];
for(UInt i=0; i<this->spatial_dimension; ++i) {
tangential_impactor_velocity[i] = velocity_val[velocity_index + i] - projected_length * master_normals_val[master_normal_index + i];
}
Real tangential_master_velocity[3];
//Real * tangential_master_velocity_p = &(tangential_master_velocity[0]);
computeTangentialMasterVelocity(n, impactor_info, tangential_master_velocity);
Real relative_sliding_speed;
Real relative_sliding_velocity[3];
//Real * relative_sliding_velocity_p = &(relative_sliding_velocity_p[0]);
for(UInt i =0; i<this->spatial_dimension; ++i)
relative_sliding_velocity[i] = tangential_impactor_velocity[i] - tangential_master_velocity[i];
if(this->spatial_dimension == 2)
relative_sliding_speed = Math::norm2(relative_sliding_velocity);
else if(this->spatial_dimension == 3)
relative_sliding_speed = Math::norm3(relative_sliding_velocity);
relative_sliding_velocities_val[n] = relative_sliding_speed;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void VelocityDependentFricCoef::computeTangentialMasterVelocity(UInt impactor_index, ContactRigid::ImpactorInformationPerMaster * impactor_info, Real * tangential_master_velocity) {
AKANTU_DEBUG_IN();
// for ContactRigid, the master velocity is by definition zero
const ContactType contact_type = this->contact.getType();
if(contact_type == _ct_rigid /* do not change for general contact */) {
for (UInt i=0; i<this->spatial_dimension; ++i)
tangential_master_velocity[i] = 0.;
}
else {
// compute the tangential master velocity
ElementType type = impactor_info->master_element_type->at(impactor_index);
switch(type) {
/*
case _segment_2: {
//computeComponentsOfProjectionSegment2(impactor_node, surface_element, normal, gap, projected_position);
break;
}
*/
/*
case _triangle_3: {
//computeComponentsOfProjectionTriangle3(impactor_node, surface_element, normal, gap, projected_position);
break;
}
*/
case _not_defined: {
AKANTU_DEBUG_ERROR("Not a valid surface element type : " << type << " for computation of tangential velocity of master element");
break;
}
- case _segment_2:
- case _segment_3:
- case _triangle_3:
- case _triangle_6:
- case _tetrahedron_4:
- case _tetrahedron_10:
- case _quadrangle_4:
- case _quadrangle_8:
- case _hexahedron_8:
- case _point:
- case _bernoulli_beam_2:
- case _cohesive_2d_4:
- case _cohesive_2d_6:
- case _max_element_type: {
+ default: {
AKANTU_DEBUG_ERROR("Not a valid surface element type : " << type << " for computation of tangential velocity of master element");
break;
}
}
}
AKANTU_DEBUG_OUT();
}
__END_AKANTU__
diff --git a/src/model/solid_mechanics/contact/regular_grid_neighbor_structure.cc b/src/model/solid_mechanics/contact/regular_grid_neighbor_structure.cc
index eb28d2a9d..8ce253767 100644
--- a/src/model/solid_mechanics/contact/regular_grid_neighbor_structure.cc
+++ b/src/model/solid_mechanics/contact/regular_grid_neighbor_structure.cc
@@ -1,763 +1,763 @@
/**
* @file regular_grid_neighbor_structure.cc
*
* @author David Simon Kammer <david.kammer@epfl.ch>
*
* @date Mon Oct 11 18:09:29 2010
*
* @brief Specialization of the contact neighbor structure for regular grid
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "regular_grid_neighbor_structure.hh"
#include "contact_search.hh"
#include "contact_rigid.hh"
#include "solid_mechanics_model.hh"
/* -------------------------------------------------------------------------- */
#include <iostream>
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
NodesNeighborList::NodesNeighborList(const ID & id) :
NeighborList(id),
master_nodes_offset(Vector<UInt>(0, 1, "master_nodes_offset")),
master_nodes (Vector<UInt>(0, 1, "master_nodes")) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
RegularGridNeighborStructure<spatial_dimension>::RegularGridNeighborStructure(const ContactSearch & contact_search,
const Surface & master_surface,
const ContactNeighborStructureType & type,
const ContactNeighborStructureID & id) :
ContactNeighborStructure(contact_search, master_surface, type, id), mesh(contact_search.getContact().getModel().getFEM().getMesh()) {
AKANTU_DEBUG_IN();
/// chose the neighbor list and initialize it
/*if (contact_search.getType() == _cst_3d_expli) {
neighbor_list = new NodesNeighborList();
nodes_neighbor_list = true;
}
else {
neighbor_list = new NeighborList();
nodes_neighbor_list = false;
} */
this->constructNeighborList();
/// make sure that the increments are computed
const_cast<SolidMechanicsModel &>(contact_search.getContact().getModel()).setIncrementFlagOn();
/// arbitrary initial value
grid_spacing[0] = 0.05;
grid_spacing[1] = 0.05;
grid_spacing[2] = 0.05;
/// securty factor of max 0.5 is needed for a neighborlist that is always complete
security_factor[0] = 0.5;
security_factor[1] = 0.5;
security_factor[2] = 0.5;
/// maximal increment since last update of neighborlist
max_increment[0] = 0.0;
max_increment[1] = 0.0;
max_increment[2] = 0.0;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
RegularGridNeighborStructure<spatial_dimension>::~RegularGridNeighborStructure() {
AKANTU_DEBUG_IN();
delete neighbor_list;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
void RegularGridNeighborStructure<spatial_dimension>::initNeighborStructure() {
AKANTU_DEBUG_IN();
this->setMinimalGridSpacing();
//Real * node_coordinates = mesh.getNodes().values;
Real * node_coordinates = contact_search.getContact().getModel().getCurrentPosition().values;
this->update(node_coordinates);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
void RegularGridNeighborStructure<spatial_dimension>::update() {
AKANTU_DEBUG_IN();
this->setMinimalGridSpacing();
// delete neighbor list and reconstruct it
delete this->neighbor_list;
this->constructNeighborList();
Real * node_current_position = contact_search.getContact().getModel().getCurrentPosition().values;
this->update(node_current_position);
/// reset max_increment to zero
for(UInt i = 0; i < spatial_dimension; ++i)
max_increment[i] = 0.0;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
void RegularGridNeighborStructure<spatial_dimension>::update(Real * node_position) {
AKANTU_DEBUG_IN();
UInt nb_surfaces = mesh.getNbSurfaces();
AKANTU_DEBUG_ASSERT(master_surface < nb_surfaces, "Master surface (" <<
master_surface << ") out of surface range (number of surfaces: " <<
nb_surfaces << ") !!");
// ----------------------------
/// find max and min values for each surface
// ----------------------------
Real bound_max[nb_surfaces][spatial_dimension];
Real bound_min[nb_surfaces][spatial_dimension];
/// initialize max and min table with extrem values
for(UInt surf = 0; surf < nb_surfaces; ++surf) {
for(UInt dim = 0; dim < spatial_dimension; ++dim) {
bound_max[surf][dim] = - std::numeric_limits<Real>::max();
bound_min[surf][dim] = std::numeric_limits<Real>::max();
}
}
// get nodes that are on a given surface
UInt * surface_to_nodes_offset = contact_search.getContact().getSurfaceToNodesOffset().values;
UInt * surface_to_nodes = contact_search.getContact().getSurfaceToNodes().values;
/// find max and min values of current position for each surface
for(UInt surf = 0; surf < nb_surfaces; ++surf) {
UInt min_surf_offset = surface_to_nodes_offset[surf];
UInt max_surf_offset = surface_to_nodes_offset[surf + 1];
for(UInt n = min_surf_offset; n < max_surf_offset; ++n) {
UInt cur_node = surface_to_nodes[n];
for(UInt dim = 0; dim < spatial_dimension; ++dim) {
Real cur_position = node_position[cur_node * spatial_dimension + dim];
bound_max[surf][dim] = std::max(bound_max[surf][dim], cur_position);
bound_min[surf][dim] = std::min(bound_min[surf][dim], cur_position);
}
}
}
// ----------------------------
/// define grid geometry
// ----------------------------
/// define grid geometry around the master surface
Real grid_min[spatial_dimension];
Real grid_max[spatial_dimension];
Int directional_nb_cells[spatial_dimension];
UInt nb_cells = 1;
for(UInt dim = 0; dim < spatial_dimension; ++dim) {
Real grid_length = bound_max[master_surface][dim] - bound_min[master_surface][dim];
/// get nb of cells needed to cover total length and add a cell to each side (start, end)
directional_nb_cells[dim] = UInt(ceil(grid_length / grid_spacing[dim])) + 2;
nb_cells *= directional_nb_cells[dim];
Real additional_grid_length = (directional_nb_cells[dim]*grid_spacing[dim] - grid_length) / 2.;
/// get minimal and maximal coordinates of the grid
grid_min[dim] = bound_min[master_surface][dim] - additional_grid_length;
grid_max[dim] = bound_max[master_surface][dim] + additional_grid_length;
}
// ----------------------------
/// find surfaces being in the grid space
// ----------------------------
AKANTU_DEBUG_ASSERT(contact_search.getContact().getType() == _ct_rigid,
"This contact type (" << contact_search.getContact().getType() <<
") does not work with this neighbor structure");
// find impactor_surfaces for given master
const ContactRigid & its_contact = dynamic_cast<const ContactRigid &>(contact_search.getContact());
const ContactRigid::SurfaceToImpactInfoMap & imp_info = its_contact.getImpactorsInformation();
ContactRigid::SurfaceToImpactInfoMap::const_iterator it;
it = imp_info.find(this->master_surface);
AKANTU_DEBUG_ASSERT(it != imp_info.end(),
"Could not find impactor surfaces for master surface " << master_surface);
std::vector<Surface> * impactor_surfaces = it->second->impactor_surfaces;
/*
const std::vector<ContactRigid::ImpactorInformationPerMaster *> imp_info = its_contact.getImpactorsInformation();
std::vector<Surface> * impactor_surfaces = NULL;
for (UInt m=0; m < imp_info.size(); ++m) {
ContactRigid::ImpactorInformationPerMaster * impactor_info = imp_info.at(m);
if (impactor_info->master_id == this->master_surface) {
impactor_surfaces = impactor_info->impactor_surfaces;
break;
}
}
AKANTU_DEBUG_ASSERT(impactor_surfaces != NULL,
"Could not find impactor surfaces for master surface " << master_surface);
*/
/// find surfaces being in the grid space
UInt nb_grid_surfaces = 0;
UInt grid_surfaces[nb_surfaces];
bool not_grid_space = false;
for(UInt s = 0; s < impactor_surfaces->size(); ++s) {
UInt surf = impactor_surfaces->at(s);
for(UInt dim = 0; dim < spatial_dimension; ++dim) {
if(bound_max[surf][dim] < grid_min[dim] || bound_min[surf][dim] > grid_max[dim])
not_grid_space = true;
}
if(!not_grid_space) {
grid_surfaces[nb_grid_surfaces++] = surf;
}
not_grid_space = false;
}
grid_surfaces[nb_grid_surfaces++] = this->master_surface;
/// if number of grid surfaces is equal to 1 we do not need to consider any slave surface
/// @todo exit with empty neighbor list
// ----------------------------
/// define cell number for all surface nodes
// ----------------------------
/// assign cell number to all surface nodes (put -1 if out of grid space) (cell numbers start with zero)
Int not_grid_space_node = -1; // should not be same as not_grid_space_surface and be < 0
Int not_grid_space_surface = -2; // should not be same as not_grid_space_node and be < 0
Int directional_cell[spatial_dimension];
UInt nb_surface_nodes = surface_to_nodes_offset[nb_surfaces];
Vector<Int> * cell = new Vector<Int>(nb_surface_nodes, 1, not_grid_space_surface);
Int * cell_val = cell->values;
/// define the cell number for all surface nodes
for(UInt surf = 0; surf < nb_grid_surfaces; ++surf) {
UInt current_surface = grid_surfaces[surf];
UInt min_surf_offset = surface_to_nodes_offset[current_surface];
UInt max_surf_offset = surface_to_nodes_offset[current_surface + 1];
for(UInt n = min_surf_offset; n < max_surf_offset; ++n) {
UInt cur_node = surface_to_nodes[n];
/// compute cell index for all directions
for(UInt dim = 0; dim < spatial_dimension; ++dim) {
Real cur_position = node_position[cur_node * spatial_dimension + dim];
directional_cell[dim] = UInt(floor((cur_position - grid_min[dim])/grid_spacing[dim]));
}
/// test if out of grid space
for(UInt dim = 0; dim < spatial_dimension; ++dim) {
if(directional_cell[dim] < 0 || directional_cell[dim] >= directional_nb_cells[dim]) {
cell_val[n] = not_grid_space_node;
}
}
/// compute global cell index
if(cell_val[n] != not_grid_space_node)
cell_val[n] = computeCellNb(directional_nb_cells, directional_cell);
}
}
// ----------------------------
/// find all impactor and master nodes for given cell
// ----------------------------
/// define offset arrays for nodes per cell which will be computed below
UInt * impactor_nodes_cell_offset = new UInt[nb_cells + 1];
memset(impactor_nodes_cell_offset, 0, nb_cells * sizeof(UInt));
UInt * master_nodes_cell_offset = new UInt[nb_cells + 1];
memset(master_nodes_cell_offset, 0, nb_cells * sizeof(UInt));
/// count number of nodes per cell for impactors and master
for(UInt surf = 0; surf < nb_grid_surfaces; ++surf) {
UInt current_surface = grid_surfaces[surf];
UInt min_surf_offset = surface_to_nodes_offset[current_surface];
UInt max_surf_offset = surface_to_nodes_offset[current_surface + 1];
/// define temporary pointers
UInt * nodes_cell_offset;
if(current_surface == master_surface) {
nodes_cell_offset = master_nodes_cell_offset;
} else {
nodes_cell_offset = impactor_nodes_cell_offset;
}
for(UInt n = min_surf_offset; n < max_surf_offset; ++n) {
Int cur_cell = cell_val[n];
if(cur_cell != not_grid_space_node)
nodes_cell_offset[cur_cell]++;
}
}
/// create two separate offset arrays for impactor nodes and master nodes
for (UInt i = 1; i < nb_cells; ++i) {
impactor_nodes_cell_offset[i] += impactor_nodes_cell_offset[i - 1];
master_nodes_cell_offset [i] += master_nodes_cell_offset [i - 1];
}
for (UInt i = nb_cells; i > 0; --i) {
impactor_nodes_cell_offset[i] = impactor_nodes_cell_offset[i - 1];
master_nodes_cell_offset [i] = master_nodes_cell_offset [i - 1];
}
impactor_nodes_cell_offset[0] = 0;
master_nodes_cell_offset [0] = 0;
/// find all impactor and master nodes in a cell
UInt * impactor_nodes_cell = new UInt[impactor_nodes_cell_offset[nb_cells]];
UInt * master_nodes_cell = new UInt[master_nodes_cell_offset [nb_cells]];
cell_val = cell->values;
for(UInt surf = 0; surf < nb_grid_surfaces; ++surf) {
UInt current_surface = grid_surfaces[surf];
UInt min_surf_offset = surface_to_nodes_offset[current_surface];
UInt max_surf_offset = surface_to_nodes_offset[current_surface + 1];
/// define temporary variables
UInt * nodes_cell;
UInt * nodes_cell_offset;
if(current_surface == master_surface) {
nodes_cell = master_nodes_cell;
nodes_cell_offset = master_nodes_cell_offset;
} else {
nodes_cell = impactor_nodes_cell;
nodes_cell_offset = impactor_nodes_cell_offset;
}
/// loop over the nodes of surf and create nodes_cell
for(UInt n = min_surf_offset; n < max_surf_offset; ++n) {
UInt node = surface_to_nodes[n];
Int cur_cell = cell_val[n];
if(cur_cell != not_grid_space_node)
nodes_cell[nodes_cell_offset[cur_cell]++] = node;
}
}
for (UInt i = nb_cells; i > 0; --i) {
impactor_nodes_cell_offset[i] = impactor_nodes_cell_offset[i - 1];
master_nodes_cell_offset [i] = master_nodes_cell_offset[i - 1];
}
impactor_nodes_cell_offset[0] = 0;
master_nodes_cell_offset [0] = 0;
if(nodes_neighbor_list == true)
constructNodesNeighborList(directional_nb_cells,
nb_cells,
cell,
impactor_nodes_cell_offset,
impactor_nodes_cell,
master_nodes_cell_offset,
master_nodes_cell);
else
constructNeighborList(directional_nb_cells,
nb_cells,
cell,
impactor_nodes_cell_offset,
impactor_nodes_cell,
master_nodes_cell_offset,
master_nodes_cell);
delete [] impactor_nodes_cell;
delete [] impactor_nodes_cell_offset;
delete [] master_nodes_cell;
delete [] master_nodes_cell_offset;
delete cell;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
void RegularGridNeighborStructure<spatial_dimension>::constructNeighborList(Int directional_nb_cells[spatial_dimension],
UInt nb_cells,
Vector<Int> * cell,
UInt * impactor_nodes_cell_offset,
UInt * impactor_nodes_cell,
UInt * master_nodes_cell_offset,
UInt * master_nodes_cell) {
AKANTU_DEBUG_IN();
UInt * surface_to_nodes_offset = contact_search.getContact().getSurfaceToNodesOffset().values;
UInt * surface_to_nodes = contact_search.getContact().getSurfaceToNodes().values;
UInt nb_surfaces = mesh.getNbSurfaces();
UInt nb_surface_nodes = surface_to_nodes_offset[nb_surfaces];
Int * cell_val = cell->values;
UInt nb_impactor_nodes = impactor_nodes_cell_offset[nb_cells];
//neighbor_list->impactor_nodes.resize(nb_impactor_nodes);
//UInt * impactor_nodes_val = neighbor_list->impactor_nodes.values;
/// define maximal number of neighbor cells and include it-self
UInt max_nb_neighbor_cells;
if(spatial_dimension == 2) {
max_nb_neighbor_cells = 9;
}
else if(spatial_dimension == 3) {
max_nb_neighbor_cells = 27;
}
const Mesh::ConnectivityTypeList & type_list = mesh.getConnectivityTypeList();
Mesh::ConnectivityTypeList::const_iterator it;
/// find existing surface element types
UInt nb_facet_types = 0;
ElementType facet_type[_max_element_type];
for(it = type_list.begin(); it != type_list.end(); ++it) {
ElementType type = *it;
if(mesh.getSpatialDimension(type) == spatial_dimension) {
- facet_type[nb_facet_types++] = mesh.getFacetElementType(type);
+ facet_type[nb_facet_types++] = mesh.getFacetType(type);
}
}
/// loop over all existing surface element types
for (UInt el_type = 0; el_type < nb_facet_types; ++el_type) {
ElementType type = facet_type[el_type];
const Vector<UInt> & node_to_elements_offset = contact_search.getContact().getNodeToElementsOffset(type, _not_ghost);
const Vector<UInt> & node_to_elements = contact_search.getContact().getNodeToElements(type, _not_ghost);
UInt * node_to_elements_offset_val = node_to_elements_offset.values;
UInt * node_to_elements_val = node_to_elements.values;
UInt * surface_id_val = mesh.getSurfaceID(type, _not_ghost).values;
Vector<bool> * visited_node = new Vector<bool>(nb_impactor_nodes, 1, false); // does it need a delete at the end ?
bool * visited_node_val = visited_node->values;
UInt neighbor_cells[max_nb_neighbor_cells];
// std::stringstream sstr_name_offset;
// sstr_name_offset << id << ":facets_offset:" << type;
neighbor_list->facets_offset.alloc(0, 1, type, _not_ghost);
Vector<UInt> & tmp_facets_offset = (neighbor_list->facets_offset(type, _not_ghost));
// std::stringstream sstr_name;
// sstr_name << id << ":facets:" << type;
neighbor_list->facets.alloc(0, 1, type, _not_ghost);// declare vector that is ??
Vector<UInt> & tmp_facets = (neighbor_list->facets(type, _not_ghost));
for(UInt in = 0; in < nb_impactor_nodes; ++in) {
UInt current_impactor_node = impactor_nodes_cell[in];
/// test if nodes has not already been visited
if(!visited_node_val[in]) {
/// find and store cell numbers of neighbor cells and it-self
Int tmp_cell = - std::numeric_limits<Int>::max();;
bool init = false;
for(UInt i = 0; i < nb_surface_nodes; ++i) {
if(surface_to_nodes[i] == current_impactor_node) {
tmp_cell = std::max(tmp_cell, cell_val[i]);
init = true;
}
}
AKANTU_DEBUG_ASSERT(init, "Cell number of node is not initialized");
AKANTU_DEBUG_ASSERT(tmp_cell >= 0, "Bad cell index. Found cell nb of impactor = " << tmp_cell << " This case normally should not happen!");
UInt current_cell = tmp_cell;
//UInt current_cell = cell_val[current_impactor_node];
UInt nb_neighbor_cells = computeNeighborCells(current_cell, neighbor_cells, directional_nb_cells);
neighbor_cells[nb_neighbor_cells++] = current_cell;
/// define a set in which the found master surface elements are stored
std::set<UInt> master_surface_elements;
std::set<UInt>::iterator it_set;
/// find all master elements that are in the considered region
for(UInt cl = 0; cl < nb_neighbor_cells; ++cl) {
/// get cell number and offset range
UInt considered_cell = neighbor_cells[cl];
UInt min_master_offset = master_nodes_cell_offset[considered_cell];
UInt max_master_offset = master_nodes_cell_offset[considered_cell + 1];
for(UInt mn = min_master_offset; mn < max_master_offset; ++mn) {
UInt master_node = master_nodes_cell[mn];
UInt min_element_offset = node_to_elements_offset_val[master_node];
UInt max_element_offset = node_to_elements_offset_val[master_node + 1];
for(UInt el = min_element_offset; el < max_element_offset; ++el) {
if(surface_id_val[node_to_elements_val[el]] == master_surface)
master_surface_elements.insert(node_to_elements_val[el]);
}
}
}
UInt min_impactor_offset = impactor_nodes_cell_offset[current_cell];
UInt max_impactor_offset = impactor_nodes_cell_offset[current_cell + 1];
for(UInt imp = min_impactor_offset; imp < max_impactor_offset; ++imp) {
UInt impactor_node = impactor_nodes_cell[imp];
neighbor_list->impactor_nodes.push_back(impactor_node);
//impactor_nodes_val[neighbor_list->nb_nodes++] = impactor_node;
for(it_set = master_surface_elements.begin(); it_set != master_surface_elements.end(); it_set++) {
tmp_facets.push_back(*it_set);
}
tmp_facets_offset.push_back(master_surface_elements.size());
for(UInt inn = 0; inn < nb_impactor_nodes; ++inn) {
if(impactor_nodes_cell[inn] == impactor_node) {
visited_node_val[inn] = true;
break;
}
}
}
}
}
tmp_facets_offset.resize(tmp_facets_offset.getSize()+1); // increase size off offset table by one
UInt * tmp_facets_offset_val = tmp_facets_offset.values;
for (UInt i = 1; i < neighbor_list->impactor_nodes.getSize(); ++i) tmp_facets_offset_val[i] += tmp_facets_offset_val[i - 1];
for (UInt i = neighbor_list->impactor_nodes.getSize(); i > 0; --i) tmp_facets_offset_val[i] = tmp_facets_offset_val[i - 1];
tmp_facets_offset_val[0] = 0;
delete visited_node;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
void RegularGridNeighborStructure<spatial_dimension>::constructNodesNeighborList(Int directional_nb_cells[spatial_dimension],
UInt nb_cells,
Vector<Int> * cell,
UInt * impactor_nodes_cell_offset,
UInt * impactor_nodes_cell,
UInt * master_nodes_cell_offset,
UInt * master_nodes_cell) {
AKANTU_DEBUG_IN();
NodesNeighborList * nodes_neighbor_list = dynamic_cast<NodesNeighborList *>(neighbor_list);
UInt * surface_to_nodes_offset = contact_search.getContact().getSurfaceToNodesOffset().values;
UInt * surface_to_nodes = contact_search.getContact().getSurfaceToNodes().values;
UInt nb_surfaces = mesh.getNbSurfaces();
UInt nb_surface_nodes = surface_to_nodes_offset[nb_surfaces];
Int * cell_val = cell->values;
UInt nb_impactor_nodes = impactor_nodes_cell_offset[nb_cells];
/// define maximal number of neighbor cells and include it-self
UInt max_nb_neighbor_cells;
if(spatial_dimension == 2) {
max_nb_neighbor_cells = 9;
}
else if(spatial_dimension == 3) {
max_nb_neighbor_cells = 27;
}
UInt neighbor_cells[max_nb_neighbor_cells];
for(UInt in = 0; in < nb_impactor_nodes; ++in) {
UInt current_impactor_node = impactor_nodes_cell[in];
nodes_neighbor_list->impactor_nodes.push_back(current_impactor_node);
//nodes_neighbor_list->nb_nodes += 1;
/// find and store cell numbers of neighbor cells and it-self
Int tmp_cell = - std::numeric_limits<Int>::max();;
bool init = false;
for(UInt i = 0; i < nb_surface_nodes; ++i) {
if(surface_to_nodes[i] == current_impactor_node) {
tmp_cell = std::max(tmp_cell, cell_val[i]);
init = true;
}
}
AKANTU_DEBUG_ASSERT(init, "Cell number of node is not initialized");
AKANTU_DEBUG_ASSERT(tmp_cell >= 0, "Bad cell index. Found cell nb of impactor = " << tmp_cell << " This case normally should not happen!");
UInt current_cell = tmp_cell;
UInt nb_neighbor_cells = computeNeighborCells(current_cell, neighbor_cells, directional_nb_cells);
neighbor_cells[nb_neighbor_cells++] = current_cell;
UInt tmp_nb_master_nodes = 0;
/// find all master elements that are in the considered region
for(UInt cl = 0; cl < nb_neighbor_cells; ++cl) {
/// get cell number and offset range
UInt considered_cell = neighbor_cells[cl];
UInt min_master_offset = master_nodes_cell_offset[considered_cell];
UInt max_master_offset = master_nodes_cell_offset[considered_cell + 1];
for(UInt mn = min_master_offset; mn < max_master_offset; ++mn) {
UInt master_node = master_nodes_cell[mn];
nodes_neighbor_list->master_nodes.push_back(master_node);
}
tmp_nb_master_nodes += max_master_offset - min_master_offset;
}
nodes_neighbor_list->master_nodes_offset.push_back(tmp_nb_master_nodes);
}
nodes_neighbor_list->master_nodes_offset.resize(nodes_neighbor_list->master_nodes_offset.getSize()+1); // increase size off offset table by one
UInt * master_nodes_offset_val = nodes_neighbor_list->master_nodes_offset.values;
for (UInt i = 1; i < nodes_neighbor_list->impactor_nodes.getSize(); ++i) master_nodes_offset_val[i] += master_nodes_offset_val[i - 1];
for (UInt i = nodes_neighbor_list->impactor_nodes.getSize(); i > 0; --i) master_nodes_offset_val[i] = master_nodes_offset_val[i - 1];
master_nodes_offset_val[0] = 0;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
bool RegularGridNeighborStructure<spatial_dimension>::check() {
AKANTU_DEBUG_IN();
bool need_update = false;
UInt nb_surfaces = mesh.getNbSurfaces();
Real * current_increment = contact_search.getContact().getModel().getIncrement().values;
Real max[spatial_dimension];
/// initialize max table with extrem values
for(UInt dim = 0; dim < spatial_dimension; ++dim)
max[dim] = 0.0;
// get the nodes that are on the surfaces
UInt * surface_to_nodes_offset = contact_search.getContact().getSurfaceToNodesOffset().values;
UInt * surface_to_nodes = contact_search.getContact().getSurfaceToNodes().values;
/// find maximal increment of surface nodes in all directions
for(UInt surf = 0; surf < nb_surfaces; ++surf) {
UInt min_surf_offset = surface_to_nodes_offset[surf];
UInt max_surf_offset = surface_to_nodes_offset[surf + 1];
for(UInt n = min_surf_offset; n < max_surf_offset; ++n) {
UInt cur_node = surface_to_nodes[n];
for(UInt dim = 0; dim < spatial_dimension; ++dim) {
Real cur_increment = current_increment[cur_node * spatial_dimension + dim];
max[dim] = std::max(max[dim], fabs(cur_increment));
}
}
}
/// test if the total increment is larger than a critical distance
for(UInt dim = 0; dim < spatial_dimension; ++dim) {
max_increment[dim] += max[dim];
if(max_increment[dim] > security_factor[dim] * grid_spacing[dim]) {
need_update = true;
break;
}
}
AKANTU_DEBUG_OUT();
return need_update;
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
void RegularGridNeighborStructure<spatial_dimension>::setMinimalGridSpacing() {
AKANTU_DEBUG_IN();
Real min_cell_size[3] = {0.,0.,0.};
Real margin = 1.2;
Real * node_current_position = contact_search.getContact().getModel().getCurrentPosition().values;
const Mesh::ConnectivityTypeList & type_list = this->mesh.getConnectivityTypeList();
Mesh::ConnectivityTypeList::const_iterator it;
/// find existing surface element types
UInt nb_facet_types = 0;
ElementType facet_type[_max_element_type];
for(it = type_list.begin(); it != type_list.end(); ++it) {
ElementType type = *it;
if(mesh.getSpatialDimension(type) == spatial_dimension) {
- facet_type[nb_facet_types++] = mesh.getFacetElementType(type);
+ facet_type[nb_facet_types++] = mesh.getFacetType(type);
}
}
/// loop over all existing surface element types
for (UInt el_type = 0; el_type < nb_facet_types; ++el_type) {
ElementType type = facet_type[el_type];
UInt nb_element = mesh.getNbElement(type);
UInt nb_nodes_element = mesh.getNbNodesPerElement(type);
UInt * conn = mesh.getConnectivity(type, _not_ghost).values;
const UInt *surf_id_val = mesh.getSurfaceID(type, _not_ghost).values;
for(UInt e = 0; e < nb_element; ++e) {
if(surf_id_val[e] == master_surface) {
Real min_coord[3];
Real max_coord[3];
for(UInt dim = 0; dim < spatial_dimension; ++dim) {
min_coord[dim] = std::numeric_limits<Real>::max();
max_coord[dim] = - std::numeric_limits<Real>::max();
}
for(UInt n = 0; n < nb_nodes_element; ++n) {
UInt node = conn[e*nb_nodes_element + n];
for(UInt dim = 0; dim < spatial_dimension; ++dim) {
Real cur_position = node_current_position[node*spatial_dimension + dim];
min_coord[dim] = std::min(min_coord[dim], cur_position);
max_coord[dim] = std::max(max_coord[dim], cur_position);
}
}
for(UInt dim = 0; dim < spatial_dimension; ++dim) {
min_cell_size[dim] = std::max(min_cell_size[dim], max_coord[dim] - min_coord[dim]);
}
}
}
}
// find largest grid_spacing in all direction
Real max_grid_spacing = 0.;
for(UInt dim = 0; dim < spatial_dimension; ++dim)
max_grid_spacing = std::max(max_grid_spacing, min_cell_size[dim]);
// use the max grid spacing for all direction (multiplied by a margin)
for(UInt dim = 0; dim < spatial_dimension; ++dim)
this->grid_spacing[dim] = margin * max_grid_spacing;
std::cout << "The grid spacing used for the regular grid is of size: " << this->grid_spacing[0] << std::endl;
AKANTU_DEBUG_OUT();
}
template class RegularGridNeighborStructure<2>;
template class RegularGridNeighborStructure<3>;
__END_AKANTU__
diff --git a/src/model/solid_mechanics/material.cc b/src/model/solid_mechanics/material.cc
index b3fdb2205..3a52c1867 100644
--- a/src/model/solid_mechanics/material.cc
+++ b/src/model/solid_mechanics/material.cc
@@ -1,987 +1,951 @@
/**
* @file material.cc
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Jul 27 18:15:37 2010
*
* @brief Implementation of the common part of the material class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "material.hh"
#include "solid_mechanics_model.hh"
#include "sparse_matrix.hh"
#include "dof_synchronizer.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
Material::Material(SolidMechanicsModel & model, const ID & id) :
Memory(model.getMemoryID()),
id(id),
name(""),
model(&model),
stress("stress", id),
strain("strain", id),
element_filter("element_filter", id),
// potential_energy_vector(false),
potential_energy("potential_energy", id),
is_non_local(false),
interpolation_inverse_coordinates("interpolation inverse coordinates", id),
interpolation_points_matrices("interpolation points matrices", id),
is_init(false) {
AKANTU_DEBUG_IN();
registerParam("rho", rho, 0., ParamAccessType(_pat_parsable | _pat_modifiable), "Density");
registerParam("id", this->id, _pat_readable);
registerParam("name", name, std::string(), ParamAccessType(_pat_parsable | _pat_readable));
spatial_dimension = this->model->getSpatialDimension();
/// allocate strain stress for local elements
initInternalVector(strain, spatial_dimension * spatial_dimension);
initInternalVector(stress, spatial_dimension * spatial_dimension);
/// for each connectivity types allocate the element filer array of the material
initInternalVector(element_filter, 1, true);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
Material::~Material() {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
bool Material::parseParam(const std::string & key, const std::string & value,
__attribute__ ((unused)) const ID & id) {
try {
params.parseParam(key, value);
} catch(...) { return false; }
return true;
}
/* -------------------------------------------------------------------------- */
void Material::initMaterial() {
AKANTU_DEBUG_IN();
resizeInternalVector(stress);
resizeInternalVector(strain);
is_init = true;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<typename T>
void Material::initInternalVector(ByElementTypeVector<T> & vect,
UInt nb_component,
bool temporary,
ElementKind element_kind) {
AKANTU_DEBUG_IN();
model->getFEM().getMesh().initByElementTypeVector(vect,
nb_component,
spatial_dimension,
false,
element_kind);
if(!temporary)
registerInternal(vect);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<> void Material::registerInternal<Real>(ByElementTypeVector<Real> & vect) {
internal_vectors_real[vect.getID()] = &vect;
}
template<> void Material::registerInternal<UInt>(ByElementTypeVector<UInt> & vect) {
internal_vectors_uint[vect.getID()] = &vect;
}
/* -------------------------------------------------------------------------- */
template<typename T>
void Material::resizeInternalVector(ByElementTypeVector<T> & by_el_type_vect,
ElementKind element_kind) const {
AKANTU_DEBUG_IN();
FEM * fem = & model->getFEM();
if (element_kind == _ek_cohesive)
fem = & model->getFEM("CohesiveFEM");
const Mesh & mesh = fem->getMesh();
for(UInt g = _not_ghost; g <= _ghost; ++g) {
GhostType gt = (GhostType) g;
Mesh::type_iterator it = mesh.firstType(spatial_dimension, gt, element_kind);
Mesh::type_iterator end = mesh.lastType(spatial_dimension, gt, element_kind);
for(; it != end; ++it) {
const Vector<UInt> & elem_filter = element_filter(*it, gt);
UInt nb_element = elem_filter.getSize();
UInt nb_quadrature_points = fem->getNbQuadraturePoints(*it, gt);
UInt new_size = nb_element * nb_quadrature_points;
Vector<T> & vect = by_el_type_vect(*it, gt);
vect.resize(new_size);
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/**
* Compute the residual by assembling @f$\int_{e} \sigma_e \frac{\partial
* \varphi}{\partial X} dX @f$
*
* @param[in] displacements nodes displacements
* @param[in] ghost_type compute the residual for _ghost or _not_ghost element
*/
void Material::updateResidual(GhostType ghost_type) {
AKANTU_DEBUG_IN();
computeAllStresses(ghost_type);
assembleResidual(ghost_type);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Material::assembleResidual(GhostType ghost_type) {
AKANTU_DEBUG_IN();
UInt spatial_dimension = model->getSpatialDimension();
Vector<Real> & residual = const_cast<Vector<Real> &>(model->getResidual());
Mesh & mesh = model->getFEM().getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension, ghost_type);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension, ghost_type);
for(; it != last_type; ++it) {
const Vector<Real> & shapes_derivatives = model->getFEM().getShapesDerivatives(*it, ghost_type);
-
Vector<UInt> & elem_filter = element_filter(*it, ghost_type);
UInt size_of_shapes_derivatives = shapes_derivatives.getNbComponent();
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(*it);
UInt nb_quadrature_points = model->getFEM().getNbQuadraturePoints(*it, ghost_type);
UInt nb_element = elem_filter.getSize();
/// compute @f$\sigma \frac{\partial \varphi}{\partial X}@f$ by @f$\mathbf{B}^t \mathbf{\sigma}_q@f$
Vector<Real> * sigma_dphi_dx =
- new Vector<Real>(nb_element*nb_quadrature_points, size_of_shapes_derivatives, "sigma_x_dphi_/_dX");
-
- Real * shapesd = shapes_derivatives.storage();
- Real * shapesd_val;
- UInt * elem_filter_val = elem_filter.storage();
+ new Vector<Real>(nb_element*nb_quadrature_points,
+ size_of_shapes_derivatives, "sigma_x_dphi_/_dX");
Vector<Real> * shapesd_filtered =
- new Vector<Real>(nb_element*nb_quadrature_points, size_of_shapes_derivatives, "filtered shapesd");
- Real * shapesd_filtered_val = shapesd_filtered->values;
-
- for (UInt el = 0; el < nb_element; ++el) {
- shapesd_val = shapesd + elem_filter_val[el] * size_of_shapes_derivatives * nb_quadrature_points;
- memcpy(shapesd_filtered_val, shapesd_val,
- size_of_shapes_derivatives * nb_quadrature_points * sizeof(Real));
- shapesd_filtered_val += size_of_shapes_derivatives * nb_quadrature_points;
- }
+ new Vector<Real>(0, size_of_shapes_derivatives, "filtered shapesd");
+
+ FEM::filterQuadraturePointsData(mesh, shapes_derivatives, *shapesd_filtered,
+ *it, ghost_type, &elem_filter);
Vector<Real> & stress_vect = stress(*it, ghost_type);
- // Vector<Real>::iterator<types::Matrix> sigma = stress_vect.begin(spatial_dimension, spatial_dimension);
- // Vector<Real>::iterator<types::Matrix> sigma_end = stress_vect.end(spatial_dimension, spatial_dimension);
- // Vector<Real>::iterator<types::Matrix> nabla_B = shapesd_filtered->begin(nb_nodes_per_element, spatial_dimension);
- // Vector<Real>::iterator<types::Matrix> sigma_dphi_dx_it = sigma_dphi_dx->begin(nb_nodes_per_element, spatial_dimension);
- // for (; sigma != sigma_end; ++sigma, ++nabla_B, ++sigma_dphi_dx_it) {
- // sigma_dphi_dx_it->mul<true,false>(*nabla_B, *sigma);
- // }
+ Vector<Real>::iterator< types::Matrix<Real> > sigma =
+ stress_vect.begin(spatial_dimension, spatial_dimension);
+ Vector<Real>::iterator< types::Matrix<Real> > B =
+ shapesd_filtered->begin(spatial_dimension, nb_nodes_per_element);
+ Vector<Real>::iterator< types::Matrix<Real> > Bt_sigma_it =
+ sigma_dphi_dx->begin(spatial_dimension, nb_nodes_per_element);
- Math::matrix_matrixt(nb_nodes_per_element, spatial_dimension, spatial_dimension,
- *shapesd_filtered,
- stress_vect,
- *sigma_dphi_dx);
+ for (UInt q = 0; q < nb_element*nb_quadrature_points; ++q, ++sigma, ++B, ++Bt_sigma_it)
+ Bt_sigma_it->mul<false,false>(*sigma, *B);
delete shapesd_filtered;
/**
* compute @f$\int \sigma * \frac{\partial \varphi}{\partial X}dX@f$ by @f$ \sum_q \mathbf{B}^t
* \mathbf{\sigma}_q \overline w_q J_q@f$
*/
- Vector<Real> * int_sigma_dphi_dx = new Vector<Real>(nb_element, nb_nodes_per_element * spatial_dimension,
+ Vector<Real> * int_sigma_dphi_dx = new Vector<Real>(nb_element,
+ nb_nodes_per_element * spatial_dimension,
"int_sigma_x_dphi_/_dX");
model->getFEM().integrate(*sigma_dphi_dx, *int_sigma_dphi_dx,
size_of_shapes_derivatives,
*it, ghost_type,
&elem_filter);
delete sigma_dphi_dx;
/// assemble
model->getFEM().assembleVector(*int_sigma_dphi_dx, residual,
model->getDOFSynchronizer().getLocalDOFEquationNumbers(),
residual.getNbComponent(),
*it, ghost_type, &elem_filter, -1);
delete int_sigma_dphi_dx;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/**
* Compute the stress from the strain
*
* @param[in] current_position nodes postition + displacements
* @param[in] ghost_type compute the residual for _ghost or _not_ghost element
*/
void Material::computeAllStresses(GhostType ghost_type) {
AKANTU_DEBUG_IN();
resizeInternalVector(stress);
resizeInternalVector(strain);
UInt spatial_dimension = model->getSpatialDimension();
Mesh::type_iterator it = model->getFEM().getMesh().firstType(spatial_dimension, ghost_type);
Mesh::type_iterator last_type = model->getFEM().getMesh().lastType(spatial_dimension, ghost_type);
for(; it != last_type; ++it) {
Vector<UInt> & elem_filter = element_filter(*it, ghost_type);
Vector<Real> & strain_vect = strain(*it, ghost_type);
/// compute @f$\nabla u@f$
model->getFEM().gradientOnQuadraturePoints(model->getDisplacement(), strain_vect,
spatial_dimension,
*it, ghost_type, &elem_filter);
/// compute @f$\mathbf{\sigma}_q@f$ from @f$\nabla u@f$
computeStress(*it, ghost_type);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Material::setToSteadyState(GhostType ghost_type) {
AKANTU_DEBUG_IN();
const Vector<Real> & displacement = model->getDisplacement();
resizeInternalVector(strain);
UInt spatial_dimension = model->getSpatialDimension();
Mesh::type_iterator it = model->getFEM().getMesh().firstType(spatial_dimension, ghost_type);
Mesh::type_iterator last_type = model->getFEM().getMesh().lastType(spatial_dimension, ghost_type);
for(; it != last_type; ++it) {
Vector<UInt> & elem_filter = element_filter(*it, ghost_type);
Vector<Real> & strain_vect = strain(*it, ghost_type);
/// compute @f$\nabla u@f$
model->getFEM().gradientOnQuadraturePoints(displacement, strain_vect,
spatial_dimension,
*it, ghost_type, &elem_filter);
setToSteadyState(*it, ghost_type);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/**
* Compute the stiffness matrix by assembling @f$\int_{\omega} B^t \times D
* \times B d\omega @f$
*
* @param[in] current_position nodes postition + displacements
* @param[in] ghost_type compute the residual for _ghost or _not_ghost element
*/
void Material::assembleStiffnessMatrix(GhostType ghost_type) {
AKANTU_DEBUG_IN();
UInt spatial_dimension = model->getSpatialDimension();
Mesh & mesh = model->getFEM().getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension, ghost_type);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension, ghost_type);
for(; it != last_type; ++it) {
switch(spatial_dimension) {
case 1: { assembleStiffnessMatrix<1>(*it, ghost_type); break; }
case 2: { assembleStiffnessMatrix<2>(*it, ghost_type); break; }
case 3: { assembleStiffnessMatrix<3>(*it, ghost_type); break; }
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt dim>
void Material::assembleStiffnessMatrix(const ElementType & type,
GhostType ghost_type) {
AKANTU_DEBUG_IN();
SparseMatrix & K = const_cast<SparseMatrix &>(model->getStiffnessMatrix());
const Vector<Real> & shapes_derivatives = model->getFEM().getShapesDerivatives(type,ghost_type);
Vector<UInt> & elem_filter = element_filter(type, ghost_type);
Vector<Real> & strain_vect = strain(type, ghost_type);
UInt nb_element = elem_filter.getSize();
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
UInt nb_quadrature_points = model->getFEM().getNbQuadraturePoints(type, ghost_type);
strain_vect.resize(nb_quadrature_points * nb_element);
model->getFEM().gradientOnQuadraturePoints(model->getDisplacement(), strain_vect,
dim, type, ghost_type, &elem_filter);
UInt tangent_size = getTangentStiffnessVoigtSize(dim);
Vector<Real> * tangent_stiffness_matrix =
new Vector<Real>(nb_element*nb_quadrature_points, tangent_size * tangent_size,
"tangent_stiffness_matrix");
tangent_stiffness_matrix->clear();
computeTangentModuli(type, *tangent_stiffness_matrix, ghost_type);
+ Vector<Real> * shapesd_filtered =
+ new Vector<Real>(0, dim * nb_nodes_per_element, "filtered shapesd");
- Vector<Real> * shapes_derivatives_filtered = new Vector<Real>(nb_element * nb_quadrature_points,
- dim * nb_nodes_per_element,
- "shapes derivatives filtered");
-
-
- Vector<Real>::const_iterator<types::RMatrix> shapes_derivatives_it = shapes_derivatives.begin(spatial_dimension,
- nb_nodes_per_element);
-
- Vector<Real>::iterator<types::RMatrix> shapes_derivatives_filtered_it = shapes_derivatives_filtered->begin(spatial_dimension,
- nb_nodes_per_element);
- UInt * elem_filter_val = elem_filter.storage();
- for (UInt e = 0; e < nb_element; ++e, ++elem_filter_val)
- for (UInt q = 0; q < nb_quadrature_points; ++q, ++shapes_derivatives_filtered_it)
- *shapes_derivatives_filtered_it = shapes_derivatives_it[*elem_filter_val * nb_quadrature_points + q];
+ FEM::filterQuadraturePointsData(model->getFEM().getMesh(), shapes_derivatives, *shapesd_filtered,
+ type, ghost_type, &elem_filter);
/// compute @f$\mathbf{B}^t * \mathbf{D} * \mathbf{B}@f$
UInt bt_d_b_size = dim * nb_nodes_per_element;
Vector<Real> * bt_d_b = new Vector<Real>(nb_element * nb_quadrature_points,
bt_d_b_size * bt_d_b_size,
"B^t*D*B");
types::RMatrix B(tangent_size, dim * nb_nodes_per_element);
types::RMatrix Bt_D(dim * nb_nodes_per_element, tangent_size);
- shapes_derivatives_filtered_it = shapes_derivatives_filtered->begin(nb_nodes_per_element, spatial_dimension);
+ Vector<Real>::iterator<types::RMatrix> shapes_derivatives_filtered_it =
+ shapesd_filtered->begin(dim, nb_nodes_per_element);
Vector<Real>::iterator<types::RMatrix> Bt_D_B_it = bt_d_b->begin(dim*nb_nodes_per_element,
dim*nb_nodes_per_element);
Vector<Real>::iterator<types::RMatrix> D_it = tangent_stiffness_matrix->begin(tangent_size,
tangent_size);
Vector<Real>::iterator<types::RMatrix> D_end = tangent_stiffness_matrix->end (tangent_size,
tangent_size);
for(; D_it != D_end; ++D_it, ++Bt_D_B_it, ++shapes_derivatives_filtered_it) {
types::RMatrix & D = *D_it;
types::RMatrix & Bt_D_B = *Bt_D_B_it;
transferBMatrixToSymVoigtBMatrix<dim>(*shapes_derivatives_filtered_it, B, nb_nodes_per_element);
Bt_D.mul<true, false>(B, D);
Bt_D_B.mul<false, false>(Bt_D, B);
}
delete tangent_stiffness_matrix;
- delete shapes_derivatives_filtered;
+ delete shapesd_filtered;
/// compute @f$ k_e = \int_e \mathbf{B}^t * \mathbf{D} * \mathbf{B}@f$
Vector<Real> * K_e = new Vector<Real>(nb_element,
bt_d_b_size * bt_d_b_size,
"K_e");
model->getFEM().integrate(*bt_d_b, *K_e,
bt_d_b_size * bt_d_b_size,
type, ghost_type,
&elem_filter);
delete bt_d_b;
model->getFEM().assembleMatrix(*K_e, K, spatial_dimension, type, ghost_type, &elem_filter);
delete K_e;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Material::computeAllStressesFromTangentModuli(GhostType ghost_type) {
AKANTU_DEBUG_IN();
UInt spatial_dimension = model->getSpatialDimension();
Mesh & mesh = model->getFEM().getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension, ghost_type);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension, ghost_type);
for(; it != last_type; ++it) {
switch(spatial_dimension) {
case 1: { computeAllStressesFromTangentModuli<1>(*it, ghost_type); break; }
case 2: { computeAllStressesFromTangentModuli<2>(*it, ghost_type); break; }
case 3: { computeAllStressesFromTangentModuli<3>(*it, ghost_type); break; }
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt dim>
void Material::computeAllStressesFromTangentModuli(const ElementType & type,
GhostType ghost_type) {
AKANTU_DEBUG_IN();
const Vector<Real> & shapes_derivatives = model->getFEM().getShapesDerivatives(type, ghost_type);
Vector<UInt> & elem_filter = element_filter(type, ghost_type);
Vector<Real> & strain_vect = strain(type, ghost_type);
UInt nb_element = elem_filter.getSize();
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
UInt nb_quadrature_points = model->getFEM().getNbQuadraturePoints(type, ghost_type);
- const Vector<UInt> & connectivity = model->getFEM().getMesh().getConnectivity(type, ghost_type);
strain_vect.resize(nb_quadrature_points * nb_element);
Vector<Real> & disp = model->getDisplacement();
model->getFEM().gradientOnQuadraturePoints(disp, strain_vect,
dim, type, ghost_type, &elem_filter);
UInt tangent_moduli_size = getTangentStiffnessVoigtSize(dim);
Vector<Real> * tangent_moduli_tensors =
new Vector<Real>(nb_element*nb_quadrature_points, tangent_moduli_size * tangent_moduli_size,
"tangent_moduli_tensors");
tangent_moduli_tensors->clear();
computeTangentModuli(type, *tangent_moduli_tensors, ghost_type);
- Vector<Real> * shapes_derivatives_filtered = new Vector<Real>(nb_element * nb_quadrature_points,
- dim * nb_nodes_per_element,
- "shapes derivatives filtered");
+ Vector<Real> * shapesd_filtered =
+ new Vector<Real>(0, dim* nb_nodes_per_element, "filtered shapesd");
- Vector<Real>::const_iterator<types::RMatrix> shapes_derivatives_it = shapes_derivatives.begin(spatial_dimension,
- nb_nodes_per_element);
-
- Vector<Real>::iterator<types::RMatrix> shapes_derivatives_filtered_it = shapes_derivatives_filtered->begin(spatial_dimension,
- nb_nodes_per_element);
+ FEM::filterQuadraturePointsData(model->getFEM().getMesh(), shapes_derivatives, *shapesd_filtered,
+ type, ghost_type, &elem_filter);
Vector<Real> filtered_u(nb_element, nb_nodes_per_element * spatial_dimension);
- UInt * elem_filter_val = elem_filter.storage();
- Real * filtered_u_it = filtered_u.storage();
-
- for (UInt e = 0; e < nb_element; ++e, ++elem_filter_val) {
- UInt el = *elem_filter_val;
- for (UInt n = 0; n < nb_nodes_per_element; ++n) {
- for (UInt s = 0; s < spatial_dimension; ++s, ++filtered_u_it) {
- *filtered_u_it = disp(connectivity(el,n), s);
- }
- }
-
- for (UInt q = 0; q < nb_quadrature_points; ++q, ++shapes_derivatives_filtered_it)
- *shapes_derivatives_filtered_it = shapes_derivatives_it[el * nb_quadrature_points + q];
- }
+ FEM::extractNodalToElementField(model->getFEM().getMesh(), disp, filtered_u,
+ type, ghost_type, &elem_filter);
/// compute @f$\mathbf{D} \mathbf{B} \mathbf{u}@f$
- shapes_derivatives_filtered_it = shapes_derivatives_filtered->begin(nb_nodes_per_element, spatial_dimension);
+ Vector<Real>::iterator<types::RMatrix> shapes_derivatives_filtered_it =
+ shapesd_filtered->begin(dim, nb_nodes_per_element);
Vector<Real>::iterator<types::RMatrix> D_it = tangent_moduli_tensors->begin(tangent_moduli_size,
tangent_moduli_size);
Vector<Real>::iterator<types::RMatrix> sigma_it = stress(type, ghost_type).begin(spatial_dimension,
spatial_dimension);
Vector<Real>::iterator<types::RVector> u_it = filtered_u.begin(spatial_dimension * nb_nodes_per_element);
types::RMatrix B(tangent_moduli_size, spatial_dimension * nb_nodes_per_element);
types::RVector Bu(tangent_moduli_size);
types::RVector DBu(tangent_moduli_size);
for (UInt e = 0; e < nb_element; ++e, ++u_it) {
for (UInt q = 0; q < nb_quadrature_points; ++q, ++D_it, ++shapes_derivatives_filtered_it, ++sigma_it) {
types::RVector & u = *u_it;
types::RMatrix & sigma = *sigma_it;
types::RMatrix & D = *D_it;
transferBMatrixToSymVoigtBMatrix<dim>(*shapes_derivatives_filtered_it, B, nb_nodes_per_element);
Bu.mul<false>(B, u);
DBu.mul<false>(D, Bu);
// Voigt notation to full symmetric tensor
for (UInt i = 0; i < dim; ++i) sigma(i, i) = DBu(i);
if(dim == 2) {
sigma(0,1) = sigma(1,0) = DBu(2);
} else if(dim == 3) {
sigma(1,2) = sigma(2,1) = DBu(3);
sigma(0,2) = sigma(2,0) = DBu(4);
sigma(0,1) = sigma(1,0) = DBu(5);
}
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Material::computePotentialEnergy(ElementType el_type, GhostType ghost_type) {
AKANTU_DEBUG_IN();
if(ghost_type != _not_ghost) return;
Real * epot = potential_energy(el_type, ghost_type).storage();
MATERIAL_STRESS_QUADRATURE_POINT_LOOP_BEGIN(el_type, ghost_type);
computePotentialEnergyOnQuad(grad_u, sigma, *epot);
epot++;
MATERIAL_STRESS_QUADRATURE_POINT_LOOP_END;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Material::computePotentialEnergyByElement() {
AKANTU_DEBUG_IN();
Mesh & mesh = model->getFEM().getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension);
for(; it != last_type; ++it) {
if(!potential_energy.exists(*it, _not_ghost)) {
UInt nb_element = element_filter(*it, _not_ghost).getSize();
UInt nb_quadrature_points = model->getFEM().getNbQuadraturePoints(*it, _not_ghost);
potential_energy.alloc(nb_element * nb_quadrature_points, 1,
*it, _not_ghost);
}
computePotentialEnergy(*it);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Material::computePotentialEnergyByElement(ElementType type, UInt index,
types::RVector & epot_on_quad_points){
Vector<Real>::iterator<types::RMatrix> strain_it =
this->strain(type).begin(spatial_dimension,
spatial_dimension);
Vector<Real>::iterator<types::RMatrix> strain_end =
this->strain(type).begin(spatial_dimension,
spatial_dimension);
Vector<Real>::iterator<types::RMatrix> stress_it =
this->stress(type).begin(spatial_dimension,
spatial_dimension);
UInt nb_quadrature_points = model->getFEM().getNbQuadraturePoints(type);
strain_it += index*nb_quadrature_points;
strain_end += (index+1)*nb_quadrature_points;
stress_it += index*nb_quadrature_points;
Real * epot_quad = epot_on_quad_points.storage();
- for(;strain_it != strain_end; ++strain_it, ++stress_it, ++ epot_quad) {
- types::RMatrix & __attribute__((unused)) grad_u = *strain_it;
- types::RMatrix & __attribute__((unused)) sigma = *stress_it;
- computePotentialEnergyOnQuad(grad_u,sigma,*epot_quad);
+ for(;strain_it != strain_end; ++strain_it, ++stress_it, ++epot_quad) {
+ types::RMatrix & grad_u = *strain_it;
+ types::RMatrix & sigma = *stress_it;
+ computePotentialEnergyOnQuad(grad_u, sigma, *epot_quad);
}
}
/* -------------------------------------------------------------------------- */
Real Material::getPotentialEnergy() {
AKANTU_DEBUG_IN();
Real epot = 0.;
computePotentialEnergyByElement();
/// integrate the potential energy for each type of elements
Mesh & mesh = model->getFEM().getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension);
for(; it != last_type; ++it) {
epot += model->getFEM().integrate(potential_energy(*it, _not_ghost), *it,
_not_ghost, &element_filter(*it, _not_ghost));
}
AKANTU_DEBUG_OUT();
return epot;
}
/* -------------------------------------------------------------------------- */
Real Material::getPotentialEnergy(ElementType & type, UInt index) {
AKANTU_DEBUG_IN();
Real epot = 0.;
types::RVector epot_on_quad_points(model->getFEM().getNbQuadraturePoints(type));
computePotentialEnergyByElement(type,index,epot_on_quad_points);
epot = model->getFEM().integrate(epot_on_quad_points, type, element_filter(type)(index));
AKANTU_DEBUG_OUT();
return epot;
}
/* -------------------------------------------------------------------------- */
Real Material::getEnergy(std::string type) {
AKANTU_DEBUG_IN();
if(type == "potential") return getPotentialEnergy();
AKANTU_DEBUG_OUT();
return 0.;
}
/* -------------------------------------------------------------------------- */
Real Material::getEnergy(std::string energy_id, ElementType type, UInt index) {
AKANTU_DEBUG_IN();
- if(energy_id == "potential") return getPotentialEnergy(type,index);
+ if(energy_id == "potential") return getPotentialEnergy(type, index);
AKANTU_DEBUG_OUT();
return 0.;
}
/* -------------------------------------------------------------------------- */
void Material::computeQuadraturePointsCoordinates(ByElementTypeReal & quadrature_points_coordinates, const GhostType & ghost_type) const {
AKANTU_DEBUG_IN();
const Mesh & mesh = model->getFEM().getMesh();
Vector<Real> nodes_coordinates(mesh.getNodes(), true);
nodes_coordinates += model->getDisplacement();
Mesh::type_iterator it = mesh.firstType(spatial_dimension, ghost_type);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension, ghost_type);
for(; it != last_type; ++it) {
const Vector<UInt> & elem_filter = element_filter(*it, ghost_type);
UInt nb_element = elem_filter.getSize();
UInt nb_tot_quad = model->getFEM().getNbQuadraturePoints(*it, ghost_type) * nb_element;
Vector<Real> & quads = quadrature_points_coordinates(*it, ghost_type);
quads.resize(nb_tot_quad);
model->getFEM().interpolateOnQuadraturePoints(nodes_coordinates,
quads, spatial_dimension,
*it, ghost_type, &elem_filter);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Material::initElementalFieldInterpolation(ByElementTypeReal & interpolation_points_coordinates) {
AKANTU_DEBUG_IN();
const Mesh & mesh = model->getFEM().getMesh();
ByElementTypeReal quadrature_points_coordinates("quadrature_points_coordinates_tmp_nl", id);
mesh.initByElementTypeVector(quadrature_points_coordinates, spatial_dimension, 0);
computeQuadraturePointsCoordinates(quadrature_points_coordinates, _not_ghost);
computeQuadraturePointsCoordinates(quadrature_points_coordinates, _ghost);
Mesh::type_iterator it = mesh.firstType(spatial_dimension);
Mesh::type_iterator last = mesh.lastType(spatial_dimension);
for (; it != last; ++it) {
UInt nb_element = mesh.getNbElement(*it);
if (nb_element == 0) continue;
ElementType type = *it;
#define AKANTU_INIT_INTERPOLATE_ELEMENTAL_FIELD(type) \
initElementalFieldInterpolation<type>(quadrature_points_coordinates(type), \
interpolation_points_coordinates(type))
AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(AKANTU_INIT_INTERPOLATE_ELEMENTAL_FIELD);
#undef AKANTU_INIT_INTERPOLATE_ELEMENTAL_FIELD
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <ElementType type>
void Material::initElementalFieldInterpolation(const Vector<Real> & quad_coordinates,
const Vector<Real> & interpolation_points_coordinates) {
AKANTU_DEBUG_IN();
UInt size_inverse_coords = getSizeElementalFieldInterpolationCoodinates<type>();
Vector<UInt> & elem_fil = element_filter(type);
UInt nb_element = elem_fil.getSize();
UInt nb_quad_per_element = model->getFEM().getNbQuadraturePoints(type);
UInt nb_interpolation_points = interpolation_points_coordinates.getSize();
AKANTU_DEBUG_ASSERT(nb_interpolation_points % nb_element == 0,
"Can't interpolate elemental field on elements, the coordinates vector has a wrong size");
UInt nb_interpolation_points_per_elem = nb_interpolation_points / nb_element;
if(!interpolation_inverse_coordinates.exists(type))
interpolation_inverse_coordinates.alloc(nb_element,
size_inverse_coords*size_inverse_coords,
type);
if(!interpolation_points_matrices.exists(type))
interpolation_points_matrices.alloc(nb_element,
nb_interpolation_points_per_elem * size_inverse_coords,
type);
Vector<Real> & interp_inv_coord = interpolation_inverse_coordinates(type);
Vector<Real> & interp_points_mat = interpolation_points_matrices(type);
types::RMatrix quad_coord_matrix(size_inverse_coords, size_inverse_coords);
Vector<Real>::const_iterator<types::RMatrix> quad_coords_it =
- quad_coordinates.begin_reinterpret(nb_quad_per_element,
- spatial_dimension,
+ quad_coordinates.begin_reinterpret(spatial_dimension,
+ nb_quad_per_element,
nb_element);
Vector<Real>::const_iterator<types::RMatrix> points_coords_it =
- interpolation_points_coordinates.begin_reinterpret(nb_interpolation_points_per_elem,
- spatial_dimension,
+ interpolation_points_coordinates.begin_reinterpret(spatial_dimension,
+ nb_interpolation_points_per_elem,
nb_element);
Vector<Real>::iterator<types::RMatrix> inv_quad_coord_it =
interp_inv_coord.begin(size_inverse_coords, size_inverse_coords);
Vector<Real>::iterator<types::RMatrix> inv_points_mat_it =
interp_points_mat.begin(nb_interpolation_points_per_elem, size_inverse_coords);
/// loop over the elements of the current material and element type
for (UInt el = 0; el < nb_element; ++el) {
/// matrix containing the quadrature points coordinates
const types::RMatrix & quad_coords = *quad_coords_it;
/// matrix to store the matrix inversion result
types::RMatrix & inv_quad_coord_matrix = *inv_quad_coord_it;
/// insert the quad coordinates in a matrix compatible with the interpolation
buildElementalFieldInterpolationCoodinates<type>(quad_coords,
quad_coord_matrix);
/// invert the interpolation matrix
inv_quad_coord_matrix.inverse(quad_coord_matrix);
/// matrix containing the interpolation points coordinates
const types::RMatrix & points_coords = *points_coords_it;
/// matrix to store the interpolation points coordinates
/// compatible with these functions
types::RMatrix & inv_points_coord_matrix = *inv_points_mat_it;
/// insert the quad coordinates in a matrix compatible with the interpolation
buildElementalFieldInterpolationCoodinates<type>(points_coords,
inv_points_coord_matrix);
++inv_quad_coord_it;
++inv_points_mat_it;
++quad_coords_it;
++points_coords_it;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void Material::interpolateStress(const ElementType type,
Vector<Real> & result) {
AKANTU_DEBUG_IN();
#define INTERPOLATE_ELEMENTAL_FIELD(type) \
interpolateElementalField<type>(stress(type), \
result) \
AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(INTERPOLATE_ELEMENTAL_FIELD);
#undef INTERPOLATE_ELEMENTAL_FIELD
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <ElementType type>
void Material::interpolateElementalField(const Vector<Real> & field,
Vector<Real> & result) {
AKANTU_DEBUG_IN();
Vector<UInt> & elem_fil = element_filter(type);
UInt nb_element = elem_fil.getSize();
UInt nb_quad_per_element = model->getFEM().getNbQuadraturePoints(type);
UInt size_inverse_coords = getSizeElementalFieldInterpolationCoodinates<type>();
types::RMatrix coefficients(nb_quad_per_element, field.getNbComponent());
const Vector<Real> & interp_inv_coord = interpolation_inverse_coordinates(type);
const Vector<Real> & interp_points_coord = interpolation_points_matrices(type);
UInt nb_interpolation_points_per_elem = interp_points_coord.getNbComponent() / size_inverse_coords;
Vector<Real>::const_iterator<types::RMatrix> field_it
- = field.begin_reinterpret(nb_quad_per_element,
- field.getNbComponent(),
+ = field.begin_reinterpret(field.getNbComponent(),
+ nb_quad_per_element,
nb_element);
Vector<Real>::const_iterator<types::RMatrix> interpolation_points_coordinates_it =
interp_points_coord.begin(nb_interpolation_points_per_elem, size_inverse_coords);
Vector<Real>::iterator<types::RMatrix> result_it
- = result.begin_reinterpret(nb_interpolation_points_per_elem,
- field.getNbComponent(),
+ = result.begin_reinterpret(field.getNbComponent(),
+ nb_interpolation_points_per_elem,
nb_element);
Vector<Real>::const_iterator<types::RMatrix> inv_quad_coord_it =
interp_inv_coord.begin(size_inverse_coords, size_inverse_coords);
/// loop over the elements of the current material and element type
for (UInt el = 0; el < nb_element;
++el, ++field_it, ++result_it,
++inv_quad_coord_it, ++interpolation_points_coordinates_it) {
/**
* matrix containing the inversion of the quadrature points'
* coordinates
*/
const types::RMatrix & inv_quad_coord_matrix = *inv_quad_coord_it;
/**
* multiply it by the field values over quadrature points to get
* the interpolation coefficients
*/
- coefficients.mul<false, false>(inv_quad_coord_matrix, *field_it);
+ coefficients.mul<false, true>(inv_quad_coord_matrix, *field_it);
/// matrix containing the points' coordinates
const types::RMatrix & coord = *interpolation_points_coordinates_it;
/// multiply the coordinates matrix by the coefficients matrix and store the result
- (*result_it).mul<false, false>(coord, coefficients);
+ (*result_it).mul<true, true>(coefficients, coord);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
const Vector<Real> & Material::getVector(const ID & vect_id, const ElementType & type, const GhostType & ghost_type) const {
std::stringstream sstr;
std::string ghost_id = "";
if (ghost_type == _ghost) ghost_id = ":ghost";
sstr << id << ":" << vect_id << ":" << type << ghost_id;
ID fvect_id = sstr.str();
try {
return Memory::getVector<Real>(fvect_id);
} catch(debug::Exception & e) {
AKANTU_EXCEPTION("The material " << name << "(" <<id << ") does not contain a vector " << vect_id << "(" << fvect_id << ") [" << e << "]");
}
}
/* -------------------------------------------------------------------------- */
Vector<Real> & Material::getVector(const ID & vect_id, const ElementType & type, const GhostType & ghost_type) {
std::stringstream sstr;
std::string ghost_id = "";
if (ghost_type == _ghost) ghost_id = ":ghost";
sstr << id << ":" << vect_id << ":" << type << ghost_id;
ID fvect_id = sstr.str();
try {
return Memory::getVector<Real>(fvect_id);
} catch(debug::Exception & e) {
AKANTU_EXCEPTION("The material " << name << "(" <<id << ") does not contain a vector " << vect_id << "(" << fvect_id << ") [" << e << "]");
}
}
/* -------------------------------------------------------------------------- */
void Material::printself(std::ostream & stream, int indent) const {
std::string space;
for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
std::string type = id.substr(id.find_last_of(":") + 1);
stream << space << "Material " << type << " [" << std::endl;
params.printself(stream, indent);
stream << space << "]" << std::endl;
}
/* -------------------------------------------------------------------------- */
template void Material::initInternalVector<Real>(ByElementTypeVector<Real> & vect,
UInt nb_component,
bool temporary,
ElementKind element_kind);
template void Material::initInternalVector<UInt>(ByElementTypeVector<UInt> & vect,
UInt nb_component,
bool temporary,
ElementKind element_kind);
template void Material::initInternalVector<Int>(ByElementTypeVector<Int> & vect,
UInt nb_component,
bool temporary,
ElementKind element_kind);
template void Material::initInternalVector<bool>(ByElementTypeVector<bool> & vect,
UInt nb_component,
bool temporary,
ElementKind element_kind);
template void Material::resizeInternalVector<Real>(ByElementTypeVector<Real> & vect,
ElementKind element_kind) const;
template void Material::resizeInternalVector<UInt>(ByElementTypeVector<UInt> & vect,
ElementKind element_kind) const;
template void Material::resizeInternalVector<Int>(ByElementTypeVector<Int> & vect,
ElementKind element_kind) const;
template void Material::resizeInternalVector<bool>(ByElementTypeVector<bool> & vect,
ElementKind element_kind) const;
__END_AKANTU__
diff --git a/src/model/solid_mechanics/material.hh b/src/model/solid_mechanics/material.hh
index 3a5d9b049..3968ba8a2 100644
--- a/src/model/solid_mechanics/material.hh
+++ b/src/model/solid_mechanics/material.hh
@@ -1,498 +1,500 @@
/**
* @file material.hh
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Jul 27 18:15:37 2010
*
* @brief Mother class for all materials
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "aka_memory.hh"
#include "parser.hh"
#include "data_accessor.hh"
#include "material_parameters.hh"
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_MATERIAL_HH__
#define __AKANTU_MATERIAL_HH__
/* -------------------------------------------------------------------------- */
namespace akantu {
class Model;
class SolidMechanicsModel;
class CommunicationBuffer;
}
__BEGIN_AKANTU__
/**
* Interface of all materials
* Prerequisites for a new material
* - inherit from this class
* - implement the following methods:
* \code
* virtual Real getStableTimeStep(Real h, const Element & element = ElementNull);
*
* virtual void computeStress(ElementType el_type,
* GhostType ghost_type = _not_ghost);
*
* virtual void computeTangentStiffness(const ElementType & el_type,
* Vector<Real> & tangent_matrix,
* GhostType ghost_type = _not_ghost);
* \endcode
*
*/
class Material : protected Memory, public DataAccessor, public Parsable, public MeshEventHandler {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
Material(SolidMechanicsModel & model, const ID & id = "");
virtual ~Material();
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
/// register a material parameter
template<class T>
void registerParam(std::string name, T & variable, T default_value,
ParamAccessType type,
std::string description = "");
template<class T>
void registerParam(std::string name, T & variable, ParamAccessType type,
std::string description = "");
template<typename T>
void registerInternal(__attribute__((unused)) ByElementTypeVector<T> & vect) { AKANTU_DEBUG_TO_IMPLEMENT(); }
/// read parameter from file
virtual bool parseParam(const std::string & key, const std::string & value,
const ID & id);
/// function called to update the internal parameters when the modifiable
/// parameters are modified
virtual void updateInternalParameters() {}
/// initialize the material computed parameter
virtual void initMaterial();
/// compute the residual for this material
virtual void updateResidual(GhostType ghost_type = _not_ghost);
/// assemble the residual for this material
- void assembleResidual(GhostType ghost_type);
+ virtual void assembleResidual(GhostType ghost_type);
/// compute the stresses for this material
virtual void computeAllStresses(GhostType ghost_type = _not_ghost);
virtual void computeAllNonLocalStresses(__attribute__((unused)) GhostType ghost_type = _not_ghost) {};
virtual void computeAllStressesFromTangentModuli(GhostType ghost_type = _not_ghost);
/// set material to steady state
void setToSteadyState(GhostType ghost_type = _not_ghost);
/// compute the stiffness matrix
virtual void assembleStiffnessMatrix(GhostType ghost_type);
/// compute the stable time step for an element of size h
virtual Real getStableTimeStep(__attribute__((unused)) Real h,
__attribute__((unused)) const Element & element = ElementNull) {
AKANTU_DEBUG_TO_IMPLEMENT();
}
/// compute the p-wave speed in the material
virtual Real getPushWaveSpeed() const { AKANTU_DEBUG_TO_IMPLEMENT(); };
/// compute the s-wave speed in the material
virtual Real getShearWaveSpeed() const { AKANTU_DEBUG_TO_IMPLEMENT(); };
/// add an element to the local mesh filter
inline UInt addElement(const ElementType & type,
UInt element,
const GhostType & ghost_type);
/// function to print the contain of the class
virtual void printself(std::ostream & stream, int indent = 0) const;
/**
* interpolate stress on given positions for each element by means
* of a geometrical interpolation on quadrature points
*/
virtual void interpolateStress(const ElementType type,
Vector<Real> & result);
/**
* function to initialize the elemental field interpolation
* function by inverting the quadrature points' coordinates
*/
virtual void initElementalFieldInterpolation(ByElementTypeReal & interpolation_points_coordinates);
protected:
/// constitutive law
virtual void computeStress(__attribute__((unused)) ElementType el_type,
__attribute__((unused)) GhostType ghost_type = _not_ghost) {
AKANTU_DEBUG_TO_IMPLEMENT();
}
template<UInt dim>
void computeAllStressesFromTangentModuli(const ElementType & type, GhostType ghost_type);
/// set the material to steady state (to be implemented for materials that need it)
virtual void setToSteadyState(__attribute__((unused)) ElementType el_type,
__attribute__((unused)) GhostType ghost_type = _not_ghost) {}
/// compute the tangent stiffness matrix
virtual void computeTangentModuli(__attribute__((unused)) const ElementType & el_type,
__attribute__((unused)) Vector<Real> & tangent_matrix,
__attribute__((unused)) GhostType ghost_type = _not_ghost) {
AKANTU_DEBUG_TO_IMPLEMENT();
}
/// compute the potential energy
virtual void computePotentialEnergy(ElementType el_type,
GhostType ghost_type = _not_ghost);
template<UInt dim>
void assembleStiffnessMatrix(const ElementType & type,
GhostType ghost_type);
/// transfer the B matrix to a Voigt notation B matrix
template<UInt dim>
inline void transferBMatrixToSymVoigtBMatrix(const types::RMatrix & B,
types::RMatrix & Bvoigt,
UInt nb_nodes_per_element) const;
inline UInt getTangentStiffnessVoigtSize(UInt spatial_dimension) const;
/// compute the potential energy by element
void computePotentialEnergyByElement();
/// compute the coordinates of the quadrature points
void computeQuadraturePointsCoordinates(ByElementTypeReal & quadrature_points_coordinates,
const GhostType & ghost_type) const;
/// interpolate an elemental field on given points for each element
template <ElementType type>
void interpolateElementalField(const Vector<Real> & field,
Vector<Real> & result);
/// template function to initialize the elemental field interpolation
template <ElementType type>
void initElementalFieldInterpolation(const Vector<Real> & quad_coordinates,
const Vector<Real> & interpolation_points_coordinates);
/// build the coordinate matrix for the interpolation on elemental field
template <ElementType type>
inline void buildElementalFieldInterpolationCoodinates(const types::RMatrix & coordinates,
types::RMatrix & coordMatrix);
/// get the size of the coordiante matrix used in the interpolation
template <ElementType type>
inline UInt getSizeElementalFieldInterpolationCoodinates();
/* ------------------------------------------------------------------------ */
/* Function for all materials */
/* ------------------------------------------------------------------------ */
protected:
/// compute the potential energy for a quadrature point
inline void computePotentialEnergyOnQuad(types::RMatrix & grad_u,
types::RMatrix & sigma,
Real & epot);
/// compute the potential energy for an element
virtual void computePotentialEnergyByElement(ElementType type, UInt index,
types::RVector & epot_on_quad_points);
protected:
/// allocate an internal vector
template<typename T>
void initInternalVector(ByElementTypeVector<T> & vect,
UInt nb_component,
bool temporary = false,
ElementKind element_kind = _ek_regular);
public:
/// resize an internal vector
template<typename T>
void resizeInternalVector(ByElementTypeVector<T> & vect,
ElementKind element_kind = _ek_regular) const;
/* ------------------------------------------------------------------------ */
template<UInt dim>
inline void gradUToF(const types::RMatrix & grad_u, types::RMatrix & F);
inline void rightCauchy(const types::RMatrix & F, types::RMatrix & C);
inline void leftCauchy (const types::RMatrix & F, types::RMatrix & B);
/* ------------------------------------------------------------------------ */
/* DataAccessor inherited members */
/* ------------------------------------------------------------------------ */
public:
virtual inline UInt getNbDataForElements(const Vector<Element> & elements,
SynchronizationTag tag) const;
virtual inline void packElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag) const;
virtual inline void unpackElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag);
template<typename T>
inline void packElementDataHelper(const ByElementTypeVector<T> & data_to_pack,
CommunicationBuffer & buffer,
const Vector<Element> & elements,
const ID & fem_id = ID()) const;
template<typename T>
inline void unpackElementDataHelper(ByElementTypeVector<T> & data_to_unpack,
CommunicationBuffer & buffer,
const Vector<Element> & elements,
const ID & fem_id = ID()) const;
public:
/* ------------------------------------------------------------------------ */
- virtual inline void onElementsAdded(const Vector<Element> & element_list);
+ virtual inline void onElementsAdded(const Vector<Element> & element_list,
+ const NewElementsEvent & event);
virtual inline void onElementsRemoved(const Vector<Element> & element_list,
- const ByElementTypeUInt & new_numbering);
+ const ByElementTypeUInt & new_numbering,
+ const RemovedElementsEvent & event);
protected:
template<typename T>
void removeQuadraturePointsFromVectors(ByElementTypeVector<T> & data,
const ByElementTypeUInt & new_numbering);
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
AKANTU_GET_MACRO(Model, *model, const SolidMechanicsModel &)
AKANTU_GET_MACRO(ID, id, const ID &);
AKANTU_GET_MACRO(Rho, rho, Real);
AKANTU_SET_MACRO(Rho, rho, Real);
/// return the potential energy for the subset of elements contained by the material
Real getPotentialEnergy();
/// return the potential energy for the provided element
Real getPotentialEnergy(ElementType & type, UInt index);
/// return the energy (identified by id) for the subset of elements contained by the material
virtual Real getEnergy(std::string energy_id);
/// return the energy (identified by id) for the provided element
virtual Real getEnergy(std::string energy_id, ElementType type, UInt index);
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(ElementFilter, element_filter, UInt);
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(Strain, strain, Real);
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(Stress, stress, Real);
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(PotentialEnergy, potential_energy, Real);
bool isNonLocal() const { return is_non_local; }
const Vector<Real> & getVector(const ID & id, const ElementType & type, const GhostType & ghost_type = _not_ghost) const;
Vector<Real> & getVector(const ID & id, const ElementType & type, const GhostType & ghost_type = _not_ghost);
template<typename T>
inline T getParam(const ID & param) const;
template<typename T>
inline void setParam(const ID & param, T value);
protected:
bool isInit() const { return is_init; }
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
protected:
/// id of the material
ID id;
/// material name
std::string name;
/// The model to witch the material belong
SolidMechanicsModel * model;
/// density : rho
Real rho;
/// stresses arrays ordered by element types
ByElementTypeReal stress;
/// strains arrays ordered by element types
ByElementTypeReal strain;
/// list of element handled by the material
ByElementTypeUInt element_filter;
/// is the vector for potential energy initialized
// bool potential_energy_vector;
/// potential energy by element
ByElementTypeReal potential_energy;
/// tell if using in non local mode or not
bool is_non_local;
/// spatial dimension
UInt spatial_dimension;
/// elemental field interpolation coordinates
ByElementTypeReal interpolation_inverse_coordinates;
/// elemental field interpolation points
ByElementTypeReal interpolation_points_matrices;
/// list of the paramters
MaterialParameters params;
private:
/// boolean to know if the material has been initialized
bool is_init;
std::map<ID, ByElementTypeReal *> internal_vectors_real;
std::map<ID, ByElementTypeUInt *> internal_vectors_uint;
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
#if defined (AKANTU_INCLUDE_INLINE_IMPL)
# include "material_inline_impl.cc"
#endif
/// standard output stream operator
inline std::ostream & operator <<(std::ostream & stream, const Material & _this)
{
_this.printself(stream);
return stream;
}
__END_AKANTU__
/* -------------------------------------------------------------------------- */
/* Auto loop */
/* -------------------------------------------------------------------------- */
#define MATERIAL_STRESS_QUADRATURE_POINT_LOOP_BEGIN(el_type, ghost_type) \
Vector<Real>::iterator<types::RMatrix> strain_it = \
this->strain(el_type, ghost_type).begin(spatial_dimension, \
spatial_dimension); \
Vector<Real>::iterator<types::RMatrix> strain_end = \
this->strain(el_type, ghost_type).end(spatial_dimension, \
spatial_dimension); \
Vector<Real>::iterator<types::RMatrix> stress_it = \
this->stress(el_type, ghost_type).begin(spatial_dimension, \
spatial_dimension); \
\
for(;strain_it != strain_end; ++strain_it, ++stress_it) { \
types::RMatrix & __attribute__((unused)) grad_u = *strain_it; \
types::RMatrix & __attribute__((unused)) sigma = *stress_it
#define MATERIAL_STRESS_QUADRATURE_POINT_LOOP_END \
} \
#define MATERIAL_TANGENT_QUADRATURE_POINT_LOOP_BEGIN(tangent_mat) \
Vector<Real>::iterator<types::RMatrix> strain_it = \
this->strain(el_type, ghost_type).begin(spatial_dimension, \
spatial_dimension); \
Vector<Real>::iterator<types::RMatrix> strain_end = \
this->strain(el_type, ghost_type).end(spatial_dimension, \
spatial_dimension); \
\
UInt tangent_size = \
this->getTangentStiffnessVoigtSize(spatial_dimension); \
Vector<Real>::iterator<types::RMatrix> tangent_it = \
tangent_mat.begin(tangent_size, \
tangent_size); \
\
for(;strain_it != strain_end; ++strain_it, ++tangent_it) { \
types::RMatrix & __attribute__((unused)) grad_u = *strain_it; \
types::RMatrix & tangent = *tangent_it
#define MATERIAL_TANGENT_QUADRATURE_POINT_LOOP_END \
}
/* -------------------------------------------------------------------------- */
#define INSTANSIATE_MATERIAL(mat_name) \
template class mat_name<1>; \
template class mat_name<2>; \
template class mat_name<3>
/* -------------------------------------------------------------------------- */
/* Material list */
/* -------------------------------------------------------------------------- */
// elastic materials
#include "material_elastic.hh"
#include "material_elastic_orthotropic.hh"
#define AKANTU_CORE_MATERIAL_LIST \
((2, (elastic , MaterialElastic ))) \
((2, (elastic_orthotropic, MaterialElasticOrthotropic)))
#if defined(AKANTU_EXTRA_MATERIALS)
# include "material_extra_includes.hh"
#else
# define AKANTU_EXTRA_MATERIAL_LIST
#endif
#if defined(AKANTU_COHESIVE_ELEMENT)
# include "material_cohesive_includes.hh"
#else
# define AKANTU_COHESIVE_MATERIAL_LIST
#endif
#if defined(AKANTU_DAMAGE_NON_LOCAL)
# include "material_non_local_includes.hh"
#else
# define AKANTU_DAMAGE_NON_LOCAL_MATERIAL_LIST
#endif
#define AKANTU_MATERIAL_LIST \
AKANTU_CORE_MATERIAL_LIST \
AKANTU_EXTRA_MATERIAL_LIST \
AKANTU_COHESIVE_MATERIAL_LIST \
AKANTU_DAMAGE_NON_LOCAL_MATERIAL_LIST
#endif /* __AKANTU_MATERIAL_HH__ */
diff --git a/src/model/solid_mechanics/material_inline_impl.cc b/src/model/solid_mechanics/material_inline_impl.cc
index 30a6c05ac..ba81c2f1d 100644
--- a/src/model/solid_mechanics/material_inline_impl.cc
+++ b/src/model/solid_mechanics/material_inline_impl.cc
@@ -1,413 +1,416 @@
/**
* @file material_inline_impl.cc
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Jul 27 18:15:37 2010
*
* @brief Implementation of the inline functions of the class material
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
__END_AKANTU__
#include "solid_mechanics_model.hh"
#include <iostream>
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
inline UInt Material::addElement(const ElementType & type,
UInt element,
const GhostType & ghost_type) {
Vector<UInt> & el_filter = element_filter(type, ghost_type);
el_filter.push_back(element);
return el_filter.getSize()-1;
}
/* -------------------------------------------------------------------------- */
inline UInt Material::getTangentStiffnessVoigtSize(UInt dim) const {
return (dim * (dim - 1) / 2 + dim);
}
/* -------------------------------------------------------------------------- */
template<UInt dim>
inline void Material::gradUToF(const types::RMatrix & grad_u,
types::RMatrix & F) {
UInt size_F = F.size();
AKANTU_DEBUG_ASSERT(F.size() >= grad_u.size() && grad_u.size() == dim,
"The dimension of the tensor F should be greater or equal to the dimension of the tensor grad_u.");
for (UInt i = 0; i < dim; ++i)
for (UInt j = 0; j < dim; ++j)
F(i, j) = grad_u(i, j);
for (UInt i = 0; i < size_F; ++i) F(i, i) += 1;
}
/* -------------------------------------------------------------------------- */
inline void Material::rightCauchy(const types::RMatrix & F,
types::RMatrix & C) {
C.mul<true, false>(F, F);
}
/* -------------------------------------------------------------------------- */
inline void Material::leftCauchy(const types::RMatrix & F,
types::RMatrix & B) {
B.mul<false, true>(F, F);
}
/* -------------------------------------------------------------------------- */
inline void Material::computePotentialEnergyOnQuad(types::RMatrix & grad_u,
types::RMatrix & sigma,
Real & epot) {
epot = 0.;
for (UInt i = 0; i < spatial_dimension; ++i)
for (UInt j = 0; j < spatial_dimension; ++j)
epot += sigma(i, j) * grad_u(i, j);
epot *= .5;
}
/* -------------------------------------------------------------------------- */
template<UInt dim>
inline void Material::transferBMatrixToSymVoigtBMatrix(const types::RMatrix & B,
types::RMatrix & Bvoigt,
UInt nb_nodes_per_element) const {
Bvoigt.clear();
for (UInt i = 0; i < dim; ++i)
for (UInt n = 0; n < nb_nodes_per_element; ++n)
- Bvoigt(i, i + n*dim) = B(n, i);
+ Bvoigt(i, i + n*dim) = B(i, n);
if(dim == 2) {
///in 2D, fill the @f$ [\frac{\partial N_i}{\partial x}, \frac{\partial N_i}{\partial y}]@f$ row
for (UInt n = 0; n < nb_nodes_per_element; ++n) {
- Bvoigt(2, 1 + n*2) = B(n, 0);
- Bvoigt(2, 0 + n*2) = B(n, 1);
+ Bvoigt(2, 1 + n*2) = B(0, n);
+ Bvoigt(2, 0 + n*2) = B(1, n);
}
}
if(dim == 3) {
for (UInt n = 0; n < nb_nodes_per_element; ++n) {
- Real dndx = B(n, 0);
- Real dndy = B(n, 1);
- Real dndz = B(n, 2);
+ Real dndx = B(0, n);
+ Real dndy = B(1, n);
+ Real dndz = B(2, n);
///in 3D, fill the @f$ [0, \frac{\partial N_i}{\partial y}, \frac{N_i}{\partial z}]@f$ row
Bvoigt(3, 1 + n*3) = dndz;
Bvoigt(3, 2 + n*3) = dndy;
///in 3D, fill the @f$ [\frac{\partial N_i}{\partial x}, 0, \frac{N_i}{\partial z}]@f$ row
Bvoigt(4, 0 + n*3) = dndz;
Bvoigt(4, 2 + n*3) = dndx;
///in 3D, fill the @f$ [\frac{\partial N_i}{\partial x}, \frac{N_i}{\partial y}, 0]@f$ row
Bvoigt(5, 0 + n*3) = dndy;
Bvoigt(5, 1 + n*3) = dndx;
}
}
}
/* -------------------------------------------------------------------------- */
template<ElementType type>
inline void Material::buildElementalFieldInterpolationCoodinates(__attribute__((unused)) const types::RMatrix & coordinates,
__attribute__((unused)) types::RMatrix & coordMatrix) {
AKANTU_DEBUG_TO_IMPLEMENT();
}
/* -------------------------------------------------------------------------- */
template<>
inline void Material::buildElementalFieldInterpolationCoodinates<_triangle_3>(const types::RMatrix & coordinates,
types::RMatrix & coordMatrix) {
- for (UInt i = 0; i < coordinates.rows(); ++i)
+ for (UInt i = 0; i < coordinates.cols(); ++i)
coordMatrix(i, 0) = 1;
}
/* -------------------------------------------------------------------------- */
template<>
inline void Material::buildElementalFieldInterpolationCoodinates<_triangle_6>(const types::RMatrix & coordinates,
types::RMatrix & coordMatrix) {
UInt nb_quadrature_points = model->getFEM().getNbQuadraturePoints(_triangle_6);
- for (UInt i = 0; i < coordinates.rows(); ++i) {
+ for (UInt i = 0; i < coordinates.cols(); ++i) {
coordMatrix(i, 0) = 1;
for (UInt j = 1; j < nb_quadrature_points; ++j)
- coordMatrix(i, j) = coordinates(i, j-1);
+ coordMatrix(i, j) = coordinates(j-1, i);
}
}
/**
* @todo Write a more efficient interpolation for quadrangles by
* dropping unnecessary quadrature points
*
*/
/* -------------------------------------------------------------------------- */
template<>
inline void Material::buildElementalFieldInterpolationCoodinates<_quadrangle_4>(const types::RMatrix & coordinates,
types::RMatrix & coordMatrix) {
- for (UInt i = 0; i < coordinates.rows(); ++i) {
- Real x = coordinates(i, 0);
- Real y = coordinates(i, 1);
+ for (UInt i = 0; i < coordinates.cols(); ++i) {
+ Real x = coordinates(0, i);
+ Real y = coordinates(1, i);
coordMatrix(i, 0) = 1;
coordMatrix(i, 1) = x;
coordMatrix(i, 2) = y;
coordMatrix(i, 3) = x * y;
}
}
/* -------------------------------------------------------------------------- */
template<>
inline void Material::buildElementalFieldInterpolationCoodinates<_quadrangle_8>(const types::RMatrix & coordinates,
types::RMatrix & coordMatrix) {
- for (UInt i = 0; i < coordinates.rows(); ++i) {
+ for (UInt i = 0; i < coordinates.cols(); ++i) {
UInt j = 0;
- Real x = coordinates(i, 0);
- Real y = coordinates(i, 1);
+ Real x = coordinates(0, i);
+ Real y = coordinates(1, i);
for (UInt e = 0; e <= 2; ++e) {
for (UInt n = 0; n <= 2; ++n) {
coordMatrix(i, j) = std::pow(x, e) * std::pow(y, n);
++j;
}
}
}
}
/* -------------------------------------------------------------------------- */
template<ElementType type>
inline UInt Material::getSizeElementalFieldInterpolationCoodinates() {
return model->getFEM().getNbQuadraturePoints(type);
}
/* -------------------------------------------------------------------------- */
template<typename T>
void Material::registerParam(std::string name, T & variable, T default_value,
ParamAccessType type,
std::string description) {
AKANTU_DEBUG_IN();
params.registerParam<T>(name, variable, default_value, type, description);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<typename T>
void Material::registerParam(std::string name, T & variable, ParamAccessType type,
std::string description) {
AKANTU_DEBUG_IN();
params.registerParam<T>(name, variable, type, description);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
inline UInt Material::getNbDataForElements(const Vector<Element> & elements,
SynchronizationTag tag) const {
if(tag == _gst_smm_stress) {
return spatial_dimension * spatial_dimension * sizeof(Real) * this->getModel().getNbQuadraturePoints(elements);
}
return 0;
}
/* -------------------------------------------------------------------------- */
inline void Material::packElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag) const {
if(tag == _gst_smm_stress) {
packElementDataHelper(stress, buffer, elements);
}
}
/* -------------------------------------------------------------------------- */
inline void Material::unpackElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag) {
if(tag == _gst_smm_stress) {
unpackElementDataHelper(stress, buffer, elements);
}
}
/* -------------------------------------------------------------------------- */
template<typename T>
inline void Material::packElementDataHelper(const ByElementTypeVector<T> & data_to_pack,
CommunicationBuffer & buffer,
const Vector<Element> & elements,
const ID & fem_id) const {
model->packElementalDataHelper<T>(data_to_pack, buffer, elements, true, fem_id);
}
/* -------------------------------------------------------------------------- */
template<typename T>
inline void Material::unpackElementDataHelper(ByElementTypeVector<T> & data_to_unpack,
CommunicationBuffer & buffer,
const Vector<Element> & elements,
const ID & fem_id) const {
model->unpackElementalDataHelper<T>(data_to_unpack, buffer, elements, true, fem_id);
}
/* -------------------------------------------------------------------------- */
template <typename T>
inline T Material::getParam(const ID & param) const {
try {
return params.get<T>(param);
} catch (...) {
AKANTU_EXCEPTION("No parameter " << param << " in the material " << id);
}
}
/* -------------------------------------------------------------------------- */
template <typename T>
inline void Material::setParam(const ID & param, T value) {
try {
params.set<T>(param, value);
} catch(...) {
AKANTU_EXCEPTION("No parameter " << param << " in the material " << id);
}
updateInternalParameters();
}
/* -------------------------------------------------------------------------- */
template<typename T>
void Material::removeQuadraturePointsFromVectors(ByElementTypeVector<T> & data,
const ByElementTypeUInt & new_numbering) {
for(UInt g = _not_ghost; g <= _ghost; ++g) {
GhostType gt = (GhostType) g;
ByElementTypeVector<UInt>::type_iterator it = new_numbering.firstType(0, gt, _ek_not_defined);
ByElementTypeVector<UInt>::type_iterator end = new_numbering.lastType(0, gt, _ek_not_defined);
for (; it != end; ++it) {
ElementType type = *it;
if(data.exists(type, gt)){
const Vector<UInt> & renumbering = new_numbering(type, gt);
Vector<T> & vect = data(type, gt);
UInt nb_quad_per_elem = this->model->getFEM().getNbQuadraturePoints(type, gt);
UInt nb_component = vect.getNbComponent();
Vector<T> tmp(renumbering.getSize()*nb_quad_per_elem, nb_component);
UInt new_size = 0;
for (UInt i = 0; i < vect.getSize(); ++i) {
UInt new_i = renumbering(i);
if(new_i != UInt(-1)) {
memcpy(tmp.storage() + new_i * nb_component * nb_quad_per_elem,
vect.storage() + i * nb_component * nb_quad_per_elem,
nb_component * nb_quad_per_elem * sizeof(T));
++new_size;
}
}
tmp.resize(new_size * nb_quad_per_elem);
vect.copy(tmp);
}
}
}
}
/* -------------------------------------------------------------------------- */
-inline void Material::onElementsAdded(__attribute__((unused)) const Vector<Element> & element_list) {
+inline void Material::onElementsAdded(__attribute__((unused)) const Vector<Element> & element_list,
+ __attribute__((unused)) const NewElementsEvent & event) {
for (std::map<ID, ByElementTypeReal *>::iterator it = internal_vectors_real.begin();
it != internal_vectors_real.end();
++it) {
resizeInternalVector(*(it->second));
}
for (std::map<ID, ByElementTypeUInt *>::iterator it = internal_vectors_uint.begin();
it != internal_vectors_uint.end();
++it) {
resizeInternalVector(*(it->second));
}
}
/* -------------------------------------------------------------------------- */
-inline void Material::onElementsRemoved(const Vector<Element> & element_list, const ByElementTypeUInt & new_numbering) {
+inline void Material::onElementsRemoved(const Vector<Element> & element_list,
+ const ByElementTypeUInt & new_numbering,
+ __attribute__((unused)) const RemovedElementsEvent & event) {
UInt my_num = model->getInternalIndexFromID(id);
ByElementTypeUInt material_local_new_numbering("remove mat filter elem", id);
Vector<Element>::const_iterator<Element> el_begin = element_list.begin();
Vector<Element>::const_iterator<Element> el_end = element_list.end();
for(UInt g = _not_ghost; g <= _ghost; ++g) {
GhostType gt = (GhostType) g;
ByElementTypeVector<UInt>::type_iterator it = new_numbering.firstType(0, gt, _ek_not_defined);
ByElementTypeVector<UInt>::type_iterator end = new_numbering.lastType(0, gt, _ek_not_defined);
for (; it != end; ++it) {
ElementType type = *it;
if(element_filter.exists(type, gt)){
Vector<UInt> & elem_filter = element_filter(type, gt);
Vector<UInt> & element_index_material = model->getElementIndexByMaterial(type, gt);
element_index_material.resize(model->getFEM().getMesh().getNbElement(type, gt)); // all materials will resize of the same size...
if(!material_local_new_numbering.exists(type, gt))
material_local_new_numbering.alloc(elem_filter.getSize(), 1, type, gt);
Vector<UInt> & mat_renumbering = material_local_new_numbering(type, gt);
const Vector<UInt> & renumbering = new_numbering(type, gt);
Vector<UInt> elem_filter_tmp;
UInt ni = 0;
Element el;
el.type = type;
el.ghost_type = gt;
for (UInt i = 0; i < elem_filter.getSize(); ++i) {
el.element = elem_filter(i);
if(std::find(el_begin, el_end, el) == el_end) {
UInt new_el = renumbering(el.element);
AKANTU_DEBUG_ASSERT(new_el != UInt(-1), "A not removed element as been badly renumbered");
elem_filter_tmp.push_back(new_el);
mat_renumbering(i) = ni;
element_index_material(new_el, 0) = ni;
element_index_material(new_el, 1) = my_num;
++ni;
} else {
mat_renumbering(i) = UInt(-1);
}
}
elem_filter.resize(elem_filter_tmp.getSize());
elem_filter.copy(elem_filter);
}
}
}
for (std::map<ID, ByElementTypeReal *>::iterator it = internal_vectors_real.begin();
it != internal_vectors_real.end();
++it) {
this->removeQuadraturePointsFromVectors(*(it->second), material_local_new_numbering);
}
for (std::map<ID, ByElementTypeUInt *>::iterator it = internal_vectors_uint.begin();
it != internal_vectors_uint.end();
++it) {
this->removeQuadraturePointsFromVectors(*(it->second), material_local_new_numbering);
}
}
diff --git a/src/model/solid_mechanics/material_parameters_tmpl.hh b/src/model/solid_mechanics/material_parameters_tmpl.hh
index a0444f817..c054160b7 100644
--- a/src/model/solid_mechanics/material_parameters_tmpl.hh
+++ b/src/model/solid_mechanics/material_parameters_tmpl.hh
@@ -1,161 +1,203 @@
/**
* @file material_parameters_tmpl.hh
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Thu Aug 09 21:06:34 2012
*
* @brief handles material parameters
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
__END_AKANTU__
#include <typeinfo>
+#include "aka_random_generator.hh"
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
template<typename T>
const MaterialParamTyped<T> & MaterialParam::getMaterialParamTyped() const {
try {
const MaterialParamTyped<T> & tmp = dynamic_cast<const MaterialParamTyped<T> &>(*this);
return tmp;
} catch (...) {
AKANTU_EXCEPTION("The parameter named " << name << " is of type "
<< debug::demangle(typeid(T).name()) <<".");
}
}
/* -------------------------------------------------------------------------- */
template<typename T>
MaterialParamTyped<T> & MaterialParam::getMaterialParamTyped() {
try {
MaterialParamTyped<T> & tmp = dynamic_cast<MaterialParamTyped<T> &>(*this);
return tmp;
} catch (...) {
AKANTU_EXCEPTION("The parameter named " << name << " is of type "
<< debug::demangle(typeid(T).name()) <<".");
}
}
/* ------------------------------------------------------------------------ */
template<typename T>
void MaterialParam::set(T & value) {
MaterialParamTyped<T> & typed_param = getMaterialParamTyped<T>();
if(!(isWritable())) AKANTU_EXCEPTION("The parameter named " << name << " is not writable.");
typed_param.setTyped(value);
}
/* -------------------------------------------------------------------------- */
template<typename T>
const T & MaterialParam::get() const {
const MaterialParamTyped<T> & typed_param = getMaterialParamTyped<T>();
if(!(isReadable())) AKANTU_EXCEPTION("The parameter named " << name << " is not readable.");
return typed_param.getTyped();
}
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
template<typename T>
MaterialParamTyped<T>::MaterialParamTyped(std::string name, std::string description,
ParamAccessType param_type, T & param) :
MaterialParam(name, description, param_type), param(param) {}
/* -------------------------------------------------------------------------- */
template<typename T>
void MaterialParamTyped<T>::setTyped(T & value) { param = value; }
/* -------------------------------------------------------------------------- */
template<typename T>
const T & MaterialParamTyped<T>::getTyped() const { return param;}
/* -------------------------------------------------------------------------- */
template<typename T>
inline void MaterialParamTyped<T>::parseParam(std::string value) {
MaterialParam::parseParam(value);
std::stringstream sstr(value);
sstr >> param;
}
/* -------------------------------------------------------------------------- */
template<>
inline void MaterialParamTyped<std::string>::parseParam(std::string value) {
MaterialParam::parseParam(value);
param = value;
}
+/* -------------------------------------------------------------------------- */
+template<>
+inline void MaterialParamTyped<RandomGenerator<Real> *>::parseParam(std::string value) {
+ MaterialParam::parseParam(value);
+ std::stringstream sstr(value);
+ std::string generator; sstr >> generator;
+ UInt generator_size = generator.size();
+
+ long int seed = 0;
+ UInt pos = generator.find("(");
+ if(pos != std::string::npos){
+ std::string sseed = generator.substr(pos+1, generator.size() - 1);
+ std::stringstream sstrseed(sseed);
+ sstrseed >> seed;
+ generator = generator.substr(0, pos);
+ }
+
+ if(generator == "uniform")
+ param = new UniformRandomGenerator<Real>(seed);
+ else if(generator == "weibull")
+ param = new WeibullRandomGenerator<Real>(seed);
+ else {
+ AKANTU_EXCEPTION("The distribution given (" << generator << ") in \'" << value << "\'is unkown");
+ }
+
+ std::string rg_param = value.substr(generator_size + 1);
+
+ param->setParams(rg_param);
+}
+
+
/* -------------------------------------------------------------------------- */
template<typename T>
inline void MaterialParamTyped<T>::printself(std::ostream & stream) const {
MaterialParam::printself(stream);
stream << param << std::endl;
}
template<>
inline void MaterialParamTyped<bool>::printself(std::ostream & stream) const {
MaterialParam::printself(stream);
stream << (param ? "true" : "false") << std::endl;
}
+template<>
+inline void MaterialParamTyped<RandomGenerator<Real> *>::printself(std::ostream & stream) const {
+ MaterialParam::printself(stream);
+ if(param)
+ stream << *param << std::endl;
+ else {
+ stream << "NULL" << std::endl;
+ }
+}
+
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
template<typename T>
void MaterialParameters::registerParam(std::string name, T & variable,
ParamAccessType type,
const std::string description) {
std::map<std::string, MaterialParam *>::iterator it = params.find(name);
if(it != params.end()) AKANTU_EXCEPTION("Parameter named " << name << " already registered.");
MaterialParamTyped<T> * param = new MaterialParamTyped<T>(name, description, type,
variable);
params[name] = param;
}
/* -------------------------------------------------------------------------- */
template<typename T>
void MaterialParameters::registerParam(std::string name, T & variable,
T default_value,
ParamAccessType type,
const std::string description) {
variable = default_value;
registerParam(name, variable, type, description);
}
/* -------------------------------------------------------------------------- */
template<typename T>
void MaterialParameters::set(std::string name, T value) {
std::map<std::string, MaterialParam *>::iterator it = params.find(name);
if(it == params.end()) AKANTU_EXCEPTION("No parameter named " << name << " in the material.");
MaterialParam & param = *(it->second);
param.set(value);
}
/* -------------------------------------------------------------------------- */
template<typename T>
const T & MaterialParameters::get(std::string name) const {
std::map<std::string, MaterialParam *>::const_iterator it = params.find(name);
if(it == params.end()) AKANTU_EXCEPTION("No parameter named " << name << " in the material.");
const MaterialParam & param = *(it->second);
return param.get<T>();
}
diff --git a/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_exponential.cc b/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_exponential.cc
index 5f8b3f57a..5b6a3ef1a 100644
--- a/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_exponential.cc
+++ b/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_exponential.cc
@@ -1,266 +1,261 @@
/**
* @file material_cohesive_exponential.cc
*
* @author Seyedeh Mohadeseh Taheri Mousavi <mohadeseh.taherimousavi@epfl.ch>
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Mon Jul 09 14:13:56 2012
*
* @brief Exponential irreversible cohesive law of mixed mode loading
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "material_cohesive_exponential.hh"
#include "solid_mechanics_model.hh"
#include "sparse_matrix.hh"
#include "dof_synchronizer.hh"
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
MaterialCohesiveExponential<spatial_dimension>::MaterialCohesiveExponential(SolidMechanicsModel & model, const ID & id) :
MaterialCohesive(model,id) {
AKANTU_DEBUG_IN();
this->registerParam("beta" , beta , 0. , _pat_parsable, "Beta parameter" );
- this->registerParam("G_cI" , G_cI , 0. , _pat_parsable, "Mode I fracture energy" );
- this->registerParam("G_cII" , G_cII , 0. , _pat_parsable, "Mode II fracture energy");
- this->registerParam("kappa" , kappa , 0. , _pat_readable, "Kappa parameter" );
- this->registerParam("delta_c", delta_c, 0. , _pat_readable, "Critical displacement" );
+ this->registerParam("delta_c", delta_c, 0. , _pat_parsable, "Critical displacement" );
// this->initInternalVector(delta_max, 1, _ek_cohesive);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
MaterialCohesiveExponential<spatial_dimension>::~MaterialCohesiveExponential() {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
void MaterialCohesiveExponential<spatial_dimension>::initMaterial() {
AKANTU_DEBUG_IN();
MaterialCohesive::initMaterial();
- kappa = G_cII / G_cI;
- delta_c = 2 * G_cI / sigma_c;
-
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
void MaterialCohesiveExponential<spatial_dimension>::resizeCohesiveVectors() {
MaterialCohesive::resizeCohesiveVectors();
//this->resizeInternalVector(delta_max, _ek_cohesive);
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
void MaterialCohesiveExponential<spatial_dimension>::computeTraction(const Vector<Real> & normal,
ElementType el_type,
GhostType ghost_type) {
AKANTU_DEBUG_IN();
/// define iterators
Vector<Real>::iterator<types::RVector> traction_it =
tractions(el_type, ghost_type).begin(spatial_dimension);
Vector<Real>::iterator<types::RVector> opening_it =
opening(el_type, ghost_type).begin(spatial_dimension);
Vector<Real>::const_iterator<types::RVector> normal_it =
normal.begin(spatial_dimension);
Vector<Real>::iterator<types::RVector>traction_end =
tractions(el_type, ghost_type).end(spatial_dimension);
Vector<Real>::iterator<Real>delta_max_it =
delta_max(el_type, ghost_type).begin();
/// compute scalars
Real beta2 = beta*beta;
/// loop on each quadrature point
for (; traction_it != traction_end;
++traction_it, ++opening_it, ++normal_it, ++delta_max_it) {
/// compute normal and tangential opening vectors
Real normal_opening_norm = opening_it->dot(*normal_it);
types::Vector<Real> normal_opening(spatial_dimension);
normal_opening = (*normal_it);
normal_opening *= normal_opening_norm;
types::Vector<Real> tangential_opening(spatial_dimension);
tangential_opening = *opening_it;
tangential_opening -= normal_opening;
Real tangential_opening_norm = tangential_opening.norm();
/**
* compute effective opening displacement
* @f$ \delta = \sqrt{
- * \frac{\beta^2}{\kappa^2} \Delta_t^2 + \Delta_n^2 } @f$
+ * \beta^2 \Delta_t^2 + \Delta_n^2 } @f$
*/
Real delta = tangential_opening_norm;
delta *= delta * beta2;
delta += normal_opening_norm * normal_opening_norm;
+
delta = sqrt(delta);
/// full damage case
if (std::abs(delta) < Math::getTolerance()) {
/// set traction to zero
traction_it->clear();
} else { /// element not fully damaged
/**
* Compute traction loading @f$ \mathbf{T} =
* e \sigma_c \frac{\delta}{\delta_c} e^{-\delta/ \delta_c}@f$
*/
/**
* Compute traction unloading @f$ \mathbf{T} =
* \frac{t_{max}}{\delta_{max}} \delta @f$
*/
*traction_it = tangential_opening;
*traction_it *= beta2;
*traction_it += normal_opening;
/// crack opening case
if (delta > *delta_max_it) {
Real k = exp(1)*sigma_c*exp(- delta / delta_c)/delta_c;
*traction_it *= k;
/// update maximum displacement
*delta_max_it = delta;
} else { /// unloading-reloading case
Real k = exp(1)*sigma_c*exp(- *delta_max_it / delta_c)/delta_c;
*traction_it *= k;
}
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
void MaterialCohesiveExponential<spatial_dimension>::computeTangentTraction(const ElementType & el_type,
Vector<Real> & tangent_matrix,
const Vector<Real> & normal,
GhostType ghost_type) {
AKANTU_DEBUG_IN();
Vector<Real>::iterator<types::RMatrix> tangent_it = tangent_matrix.begin(spatial_dimension, spatial_dimension);
Vector<Real>::iterator<types::RMatrix> tangent_end = tangent_matrix.end(spatial_dimension, spatial_dimension);
Vector<Real>::const_iterator<types::RVector> normal_it = normal.begin(spatial_dimension);
Vector<Real>::iterator<types::RVector> opening_it = opening(el_type, ghost_type).begin(spatial_dimension);
Vector<Real>::iterator<types::RVector> traction_it = tractions(el_type, ghost_type).begin(spatial_dimension);
Vector<Real>::iterator<Real>delta_max_it = delta_max(el_type, ghost_type).begin();
Real beta2 = beta*beta;
/**
* compute tangent matrix @f$ \frac{\partial \mathbf{t}}
* {\partial \delta} = \hat{\mathbf{t}} \otimes
* \frac{\partial (t/\delta)}{\partial \delta}
* \frac{\hat{\mathbf{t}}}{\delta}+ \frac{t}{\delta} [ \beta^2 \mathbf{I} +
* (1-\beta^2) (\mathbf{n} \otimes \mathbf{n})] @f$
**/
/**
* In which @f$
* \frac{\partial(t/ \delta)}{\partial \delta} =
* \left\{\begin{array} {l l}
* -e \frac{\sigma_c}{\delta_c^2 }e^{-\delta / \delta_c} & \quad if
* \delta \geq \delta_{max} \\
* 0 & \quad if \delta < \delta_{max}, \delta_n > 0
* \end{array}\right. @f$
**/
for (; tangent_it != tangent_end; ++tangent_it, ++normal_it, ++opening_it, ++traction_it) {
Real normal_opening_norm = opening_it->dot(*normal_it);
types::Vector<Real> normal_opening(spatial_dimension);
normal_opening = (*normal_it);
normal_opening *= normal_opening_norm;
types::Vector<Real> tangential_opening(spatial_dimension);
tangential_opening = *opening_it;
tangential_opening -= normal_opening;
Real tangential_opening_norm = tangential_opening.norm();
Real delta = tangential_opening_norm;
delta *= delta * beta2;
delta += normal_opening_norm * normal_opening_norm;
delta = sqrt(delta);
types::RVector t_hat(tangential_opening);
t_hat *= beta2;
t_hat += normal_opening;
types::RMatrix nn(spatial_dimension, spatial_dimension);
nn.outerProduct(*normal_it, *normal_it);
types::RMatrix I(spatial_dimension, spatial_dimension);
I.eye(beta2);
nn *= (1-beta2);
I += nn;
if(std::abs(delta) < Math::getTolerance()){
*tangent_it += I;
*tangent_it *= exp(1)* sigma_c/delta_c;
} else {
Real traction_norm = traction_it->norm();
I *= traction_norm / delta;
types::RVector t_hat_tmp (t_hat);
Real temp_var = 0;
if ((delta > *delta_max_it) || (std::abs(delta - *delta_max_it) < 1e-12)) {
temp_var = -exp(1- delta/delta_c) * sigma_c/(delta_c * delta_c);
}
temp_var /= delta;
t_hat_tmp *= temp_var;
types::RMatrix t_var_t(spatial_dimension, spatial_dimension);
t_var_t.outerProduct(t_hat, t_hat_tmp);
*tangent_it += I;
*tangent_it += t_var_t;
}
}
AKANTU_DEBUG_OUT();
}
INSTANSIATE_MATERIAL(MaterialCohesiveExponential);
__END_AKANTU__
diff --git a/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_exponential.hh b/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_exponential.hh
index 45269917a..45db67110 100644
--- a/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_exponential.hh
+++ b/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_exponential.hh
@@ -1,131 +1,121 @@
/**
* @file material_cohesive_exponential.hh
*
* @author Seyedeh Mohadeseh Taheri Mousavi <mohadeseh.taherimousavi@epfl.ch>
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Mon Jul 09 14:13:56 2012
*
* @brief Exponential irreversible cohesive law of mixed mode loading
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "material_cohesive.hh"
#include "aka_common.hh"
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_MATERIAL_COHESIVE_EXPONENTIAL_HH__
#define __AKANTU_MATERIAL_COHESIVE_EXPONENTIAL_HH__
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/**
* Cohesive material Exponential damage
*
* parameters in the material files :
* - sigma_c : critical stress sigma_c (default: 0)
* - beta : weighting parameter for sliding and normal opening (default: 0)
- * - G_cI : fracture energy for mode I (default: 0)
- * - G_cII : fracture energy for mode II (default: 0)
+ * - delta_c : critical opening (default: 0)
*/
template<UInt spatial_dimension>
class MaterialCohesiveExponential : public MaterialCohesive {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
MaterialCohesiveExponential(SolidMechanicsModel & model, const ID & id = "");
virtual ~MaterialCohesiveExponential();
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
/// initialize the material computed parameter
virtual void initMaterial();
/// resize vectors for new cohesive elements
virtual void resizeCohesiveVectors();
protected:
/// constitutive law
void computeTraction(const Vector<Real> & normal,
ElementType el_type,
GhostType ghost_type = _not_ghost);
/// compute the tangent stiffness matrix for an element type
void computeTangentTraction(const ElementType & el_type,
Vector<Real> & tangent_matrix,
const Vector<Real> & normal,
GhostType ghost_type = _not_ghost);
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
protected:
/// beta parameter
Real beta;
- /// mode I fracture energy
- Real G_cI;
-
- /// mode II fracture energy
- Real G_cII;
-
- /// kappa parameter
- Real kappa;
-
// /// maximum displacement
// ByElementTypeReal delta_max;
/// critical displacement
Real delta_c;
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
#include "material_cohesive_exponential_inline_impl.cc"
__END_AKANTU__
#endif /* __AKANTU_MATERIAL_COHESIVE_EXPONENTIAL_HH__ */
diff --git a/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_linear_exponential_extrinsic.cc b/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_linear_exponential_extrinsic.cc
index 77b162b27..40ef4e1c3 100644
--- a/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_linear_exponential_extrinsic.cc
+++ b/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_linear_exponential_extrinsic.cc
@@ -1,289 +1,248 @@
/**
* @file material_cohesive_linear_exponential_extrinsic.cc
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Thu May 24 10:46:59 2012
*
* @brief Linear irreversible cohesive law of mixed mode loading with
* random stress definition for extrinsic type
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "material_cohesive_linear_exponential_extrinsic.hh"
#include "solid_mechanics_model_cohesive.hh"
#include "sparse_matrix.hh"
#include "dof_synchronizer.hh"
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
MaterialCohesiveLinearExponentialExtrinsic<spatial_dimension>::MaterialCohesiveLinearExponentialExtrinsic(SolidMechanicsModel & model, const ID & id) :
MaterialCohesive(model,id),
sigma_c_eff("sigma_c_eff",id),
sigma_actual("sigma actual",id) {
AKANTU_DEBUG_IN();
sigma_max = 0;
delta_0 = 0;
beta = 0;
G_cI = 0;
G_cII = 0;
initInternalVector(sigma_c_eff, 1, _ek_cohesive);
initInternalVector(sigma_actual, 1, _ek_cohesive);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
MaterialCohesiveLinearExponentialExtrinsic<spatial_dimension>::~MaterialCohesiveLinearExponentialExtrinsic() {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
void MaterialCohesiveLinearExponentialExtrinsic<spatial_dimension>::initMaterial() {
AKANTU_DEBUG_IN();
MaterialCohesive::initMaterial();
kappa = G_cII / G_cI;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
void MaterialCohesiveLinearExponentialExtrinsic<spatial_dimension>::resizeCohesiveVectors() {
MaterialCohesive::resizeCohesiveVectors();
resizeInternalVector(sigma_c_eff, _ek_cohesive);
resizeInternalVector(sigma_actual, _ek_cohesive);
FEM & fem_cohesive = model->getFEM("CohesiveFEM");
const Mesh & mesh = fem_cohesive.getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension, _not_ghost, _ek_cohesive);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension, _not_ghost, _ek_cohesive);
for(; it != last_type; ++it) {
const Vector<UInt> & elem_filter = element_filter(*it, _not_ghost);
UInt nb_element = elem_filter.getSize();
if (nb_element == 0) continue;
UInt nb_quadrature_points = fem_cohesive.getNbQuadraturePoints(*it, _not_ghost);
UInt nb_element_old = nb_element - sigma_insertion.getSize() / nb_quadrature_points;
Vector<Real> & sigma_c_eff_vec = sigma_c_eff(*it, _not_ghost);
Vector<Real> & sigma_actual_vec = sigma_actual(*it, _not_ghost);
for (UInt el = nb_element_old; el < nb_element; ++el) {
for (UInt q = 0; q < nb_quadrature_points; ++q) {
Real new_sigma = sigma_insertion((el - nb_element_old)*nb_quadrature_points + q);
sigma_c_eff_vec(el * nb_quadrature_points + q) = new_sigma;
sigma_actual_vec(el * nb_quadrature_points + q) = new_sigma;
}
}
}
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
Real MaterialCohesiveLinearExponentialExtrinsic<spatial_dimension>::computeEffectiveNorm(const types::RMatrix & stress, const types::RVector & normal, const types::RVector & tangent) {
AKANTU_DEBUG_IN();
Real normal_contrib, tangent_contrib;
types::RVector normal_stress(spatial_dimension);
types::RVector tangential_stress(spatial_dimension);
normal_stress.mul<false>(stress, normal);
tangential_stress.mul<false>(stress, tangent);
normal_contrib = normal_stress.dot(normal);
tangent_contrib = tangential_stress.dot(tangent);
if (normal_contrib < 0) normal_contrib = 0;
AKANTU_DEBUG_OUT();
Real epsilon = std::numeric_limits<Real>::epsilon();
if (std::abs(beta) < epsilon)
return normal_contrib;
else
return std::sqrt(normal_contrib*normal_contrib
+ tangent_contrib*tangent_contrib/beta/beta);
}
-/* -------------------------------------------------------------------------- */
-template<UInt spatial_dimension>
-bool MaterialCohesiveLinearExponentialExtrinsic<spatial_dimension>::parseParam(const std::string & key,
- const std::string & value,
- const ID & id) {
- std::stringstream sstr(value);
- if(key == "sigma_c") { sstr >> sigma_c; }
- else if(key == "beta") { sstr >> beta; }
- else if(key == "sigma_max") { sstr >> sigma_max; }
- else if(key == "delta_0") { sstr >> delta_0; }
- else if(key == "G_cI") { sstr >> G_cI; }
- else if(key == "G_cII") { sstr >> G_cII; }
- else if(key == "rand") { sstr >> rand; }
- else if(key == "gamma") { sstr >> gamma; }
- else if(key == "z_max") { sstr >> z_max; }
- else { return Material::parseParam(key, value, id); }
- return true;
-}
-
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
void MaterialCohesiveLinearExponentialExtrinsic<spatial_dimension>::computeTraction(const Vector<Real> & normal,
ElementType el_type,
GhostType ghost_type) {
AKANTU_DEBUG_IN();
/// define iterators
Vector<Real>::iterator<types::RVector> traction_it =
tractions(el_type, ghost_type).begin(spatial_dimension);
Vector<Real>::iterator<types::RVector> opening_it =
opening(el_type, ghost_type).begin(spatial_dimension);
Vector<Real>::const_iterator<types::RVector> normal_it =
normal.begin(spatial_dimension);
Vector<Real>::iterator<types::RVector>traction_end =
tractions(el_type, ghost_type).end(spatial_dimension);
Vector<Real>::iterator<Real>sigma_c_it =
sigma_c_eff(el_type, ghost_type).begin();
Vector<Real>::iterator<Real>delta_max_it =
delta_max(el_type, ghost_type).begin();
Vector<Real>::iterator<Real>sigma_actual_it =
sigma_actual(el_type, ghost_type).begin();
/// compute scalars
Real beta2_kappa2 = beta*beta/kappa/kappa;
Real beta2_kappa = beta*beta/kappa;
Real epsilon = std::numeric_limits<Real>::epsilon();
/// loop on each quadrature point
for (; traction_it != traction_end;
++traction_it, ++opening_it, ++normal_it, ++sigma_c_it,
++delta_max_it, ++sigma_actual_it) {
/// compute normal and tangential opening vectors
Real normal_opening_norm = opening_it->dot(*normal_it);
types::Vector<Real> normal_opening(spatial_dimension);
normal_opening = (*normal_it);
normal_opening *= normal_opening_norm;
types::Vector<Real> tangential_opening(spatial_dimension);
tangential_opening = *opening_it;
tangential_opening -= normal_opening;
Real tangential_opening_norm = tangential_opening.norm();
/**
* compute effective opening displacement
* @f$ \delta = \sqrt{
* \frac{\beta^2}{\kappa^2} \Delta_t^2 + \Delta_n^2 } @f$
*/
Real delta = tangential_opening_norm;
delta *= delta * beta2_kappa2;
delta += normal_opening_norm * normal_opening_norm;
delta = sqrt(delta);
*traction_it = tangential_opening;
*traction_it *= beta2_kappa;
*traction_it += normal_opening;
*traction_it /= delta;
/// crack opening case
if (std::abs(delta) <= std::abs(delta) * epsilon || normal_opening_norm < 0) {
(*traction_it).clear();
}
else if (delta > *delta_max_it) {
Real sigma;
if (delta < delta_0) {
sigma = *sigma_c_it + (sigma_max - *sigma_c_it) / delta_0 * delta;
}
else {
Real z = -21.61440010 + 0.04166666667 * sqrt(2.69097e5 + 4.8e5 * delta);
z = std::min(z, z_max);
sigma = exp(-1*gamma*z) * (sigma_max - sigma_max / z_max * z);
}
*traction_it *= sigma;
/// update maximum displacement and stress
*delta_max_it = delta;
*sigma_actual_it = sigma;
}
/// unloading-reloading case
else {
*traction_it *= *sigma_actual_it / *delta_max_it * delta;
}
}
AKANTU_DEBUG_OUT();
}
-/* -------------------------------------------------------------------------- */
-template<UInt spatial_dimension>
-void MaterialCohesiveLinearExponentialExtrinsic<spatial_dimension>::printself(std::ostream & stream, int indent) const {
- std::string space;
- for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
-
- stream << space << "Material<_cohesive_linear> [" << std::endl;
- stream << space << " + sigma_c : " << sigma_c << std::endl;
- stream << space << " + beta : " << beta << std::endl;
- stream << space << " + G_cI : " << G_cI << std::endl;
- stream << space << " + G_cII : " << G_cII << std::endl;
- stream << space << " + rand : " << rand << std::endl;
- stream << space << " + gamma : " << gamma << std::endl;
- stream << space << " + delta_0 : " << delta_0 << std::endl;
- stream << space << " + z_max : " << z_max << std::endl;
- stream << space << " + sigma_max : " << sigma_max << std::endl;
- if(this->isInit()) {
- stream << space << " + kappa : " << kappa << std::endl;
- }
- MaterialCohesive::printself(stream, indent + 1);
- stream << space << "]" << std::endl;
-}
/* -------------------------------------------------------------------------- */
INSTANSIATE_MATERIAL(MaterialCohesiveLinearExponentialExtrinsic);
__END_AKANTU__
diff --git a/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_linear_exponential_extrinsic.hh b/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_linear_exponential_extrinsic.hh
index 17ec15bdc..fbe0cc84f 100644
--- a/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_linear_exponential_extrinsic.hh
+++ b/src/model/solid_mechanics/materials/material_cohesive/constitutive_laws/material_cohesive_linear_exponential_extrinsic.hh
@@ -1,149 +1,142 @@
/**
* @file material_cohesive_linear_exponential_extrinsic.hh
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Thu May 24 10:46:59 2012
*
* @brief Linear irreversible cohesive law of mixed mode loading with
* random stress definition for extrinsic type
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "material_cohesive.hh"
#include "aka_common.hh"
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_MATERIAL_COHESIVE_LINEAR_EXPONENTIAL_EXTRINSIC_HH__
#define __AKANTU_MATERIAL_COHESIVE_LINEAR_EXPONENTIAL_EXTRINSIC_HH__
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/**
* Cohesive material linear damage for extrinsic case
*
* parameters in the material files :
* - sigma_c : critical stress (default: 0)
* - sigma_max : maximum stress (default: 0)
* - delta_0 : delta 0 (default: 0)
* - beta : weighting parameter for sliding and normal opening (default: 0)
* - G_cI : fracture energy for mode I (default: 0)
* - G_cII : fracture energy for mode II (default: 0)
* - rand : randomness factor (default: 0)
* - gamma : gamma factor (default: 0)
* - z_max : z max (default: 0)
*/
template<UInt spatial_dimension>
class MaterialCohesiveLinearExponentialExtrinsic : public MaterialCohesive {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
MaterialCohesiveLinearExponentialExtrinsic(SolidMechanicsModel & model, const ID & id = "");
virtual ~MaterialCohesiveLinearExponentialExtrinsic();
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
- /// set patameters
- virtual bool parseParam(const std::string & key, const std::string & value,
- const ID & id);
-
- /// function to print the contain of the class
- virtual void printself(std::ostream & stream, int indent = 0) const;
-
/// initialize the material computed parameter
virtual void initMaterial();
/// resize vectors for new cohesive elements
virtual void resizeCohesiveVectors();
/// compute effective stress norm for insertion check
virtual Real computeEffectiveNorm(const types::RMatrix & stress,
const types::RVector & normal,
const types::RVector & tangent);
protected:
/// constitutive law
void computeTraction(const Vector<Real> & normal,
ElementType el_type,
GhostType ghost_type = _not_ghost);
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
protected:
/// maximum stress
Real sigma_max;
/// delta 0
Real delta_0;
/// critical effective stress
ByElementTypeReal sigma_c_eff;
/// beta parameter
Real beta;
/// mode I fracture energy
Real G_cI;
/// mode II fracture energy
Real G_cII;
/// kappa parameter
Real kappa;
/// actual maximum sigma
ByElementTypeReal sigma_actual;
/// gamma factor
Real gamma;
/// z max
Real z_max;
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
//#include "material_cohesive_linear_inline_impl.cc"
__END_AKANTU__
#endif /* __AKANTU_MATERIAL_COHESIVE_LINEAR_EXPONENTIAL_EXTRINSIC_HH__ */
diff --git a/src/model/solid_mechanics/materials/material_cohesive/material_cohesive.cc b/src/model/solid_mechanics/materials/material_cohesive/material_cohesive.cc
index f0ba10cf1..bb01604d1 100644
--- a/src/model/solid_mechanics/materials/material_cohesive/material_cohesive.cc
+++ b/src/model/solid_mechanics/materials/material_cohesive/material_cohesive.cc
@@ -1,602 +1,583 @@
/**
* @file material_cohesive.cc
*
* @author Seyedeh Mohadeseh Taheri Mousavi <mohadeseh.taherimousavi@epfl.ch>
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Wed Feb 22 16:31:20 2012
*
* @brief Specialization of the material class for cohesive elements
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "material_cohesive.hh"
#include "solid_mechanics_model_cohesive.hh"
#include "sparse_matrix.hh"
#include "dof_synchronizer.hh"
+#include "aka_random_generator.hh"
+
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
MaterialCohesive::MaterialCohesive(SolidMechanicsModel & model, const ID & id) :
Material(model,id),
reversible_energy("reversible_energy", id),
total_energy("total_energy", id),
tractions_old("tractions (old)",id),
opening_old("opening (old)",id),
tractions("tractions",id),
opening("opening",id),
delta_max("delta max",id),
damage("damage", id) {
AKANTU_DEBUG_IN();
this->model = dynamic_cast<SolidMechanicsModelCohesive*>(&model);
fem_cohesive = &(model.getFEMClass<MyFEMCohesiveType>("CohesiveFEM"));
this->registerParam("sigma_c", sigma_c, 0. , ParamAccessType(_pat_parsable | _pat_readable), "Critical stress");
- this->registerParam("rand_factor", rand, 0. , ParamAccessType(_pat_parsable | _pat_readable), "Randomness factor");
- this->registerParam("distribution", distribution, std::string("uniform"), _pat_parsable, "Distribution type");
- this->registerParam("lambda", lambda, 0. , _pat_parsable, "Weibull modulus");
- this->registerParam("m", m_scale, 1. , _pat_parsable, "Scale parameter");
-
+ this->registerParam("random_generator", random_generator, _pat_parsable, "Random generator for facet parameters");
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
MaterialCohesive::~MaterialCohesive() {
AKANTU_DEBUG_IN();
+ delete random_generator;
+
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MaterialCohesive::initMaterial() {
AKANTU_DEBUG_IN();
Material::initMaterial();
initInternalVector(reversible_energy, 1, false, _ek_cohesive);
initInternalVector( total_energy, 1, false, _ek_cohesive);
initInternalVector( tractions_old, spatial_dimension, false, _ek_cohesive);
initInternalVector( tractions, spatial_dimension, false, _ek_cohesive);
initInternalVector( opening_old, spatial_dimension, false, _ek_cohesive);
initInternalVector( opening, spatial_dimension, false, _ek_cohesive);
initInternalVector( delta_max, 1, false, _ek_cohesive);
initInternalVector( damage, 1, false, _ek_cohesive);
initInternalVector( element_filter, 1, false, _ek_cohesive);
-
+
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MaterialCohesive::resizeCohesiveVectors() {
resizeInternalVector(reversible_energy, _ek_cohesive);
resizeInternalVector(total_energy , _ek_cohesive);
resizeInternalVector(tractions_old , _ek_cohesive);
resizeInternalVector(tractions , _ek_cohesive);
resizeInternalVector(opening_old , _ek_cohesive);
resizeInternalVector(opening , _ek_cohesive);
resizeInternalVector(delta_max , _ek_cohesive);
resizeInternalVector(damage , _ek_cohesive);
}
/* -------------------------------------------------------------------------- */
void MaterialCohesive::generateRandomDistribution(Vector<Real> & sigma_lim) {
AKANTU_DEBUG_IN();
- std::srand(time(NULL));
- UInt nb_facet = sigma_lim.getSize();
-
- if (distribution == "uniform") {
- for (UInt i = 0; i < nb_facet; ++i)
- sigma_lim(i) = sigma_c * (1 + std::rand()/(Real)RAND_MAX * rand);
- }
- else if (distribution == "weibull") {
- Real exponent = 1./m_scale;
- for (UInt i = 0; i < nb_facet; ++i)
- sigma_lim(i) = sigma_c + lambda * std::pow(-1.* std::log(std::rand()/(Real)RAND_MAX), exponent);
- }
- else {
- AKANTU_DEBUG_ERROR("Unknown random distribution type for sigma_c");
- }
+ if (random_generator)
+ random_generator->generate(sigma_c, sigma_lim);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MaterialCohesive::checkInsertion(const Vector<Real> & facet_stress,
Vector<UInt> & facet_insertion) {
AKANTU_DEBUG_IN();
Vector<bool> & facets_check = model->getFacetsCheck();
ElementType type_facet = model->getFacetType();
UInt nb_quad_facet = model->getFEM("FacetsFEM").getNbQuadraturePoints(type_facet);
UInt nb_facet = facets_check.getSize();
Vector<Real> stress_check(nb_facet, nb_quad_facet);
stress_check.clear();
computeStressNorms(facet_stress, stress_check);
bool * facet_check_it = facets_check.storage();
Vector<Real>::iterator<types::RVector> stress_check_it =
stress_check.begin(nb_quad_facet);
Real * sigma_limit_it = model->getSigmaLimit().storage();
for (UInt f = 0; f < nb_facet;
++f, ++facet_check_it, ++stress_check_it, ++sigma_limit_it) {
if (*facet_check_it == true) {
for (UInt q = 0; q < nb_quad_facet; ++q) {
if ((*stress_check_it)(q) > *sigma_limit_it) {
facet_insertion.push_back(f);
for (UInt qs = 0; qs < nb_quad_facet; ++qs)
sigma_insertion.push_back((*stress_check_it)(qs));
*facet_check_it = false;
break;
}
}
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MaterialCohesive::assembleResidual(GhostType ghost_type) {
AKANTU_DEBUG_IN();
UInt spatial_dimension = model->getSpatialDimension();
Vector<Real> & residual = const_cast<Vector<Real> &>(model->getResidual());
Mesh & mesh = fem_cohesive->getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension, ghost_type, _ek_cohesive);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension, ghost_type, _ek_cohesive);
for(; it != last_type; ++it) {
const Vector<Real> & shapes = fem_cohesive->getShapes(*it, ghost_type);
Vector<UInt> & elem_filter = element_filter(*it, ghost_type);
Vector<Real> & traction = tractions(*it, ghost_type);
UInt size_of_shapes = shapes.getNbComponent();
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(*it);
UInt nb_quadrature_points = fem_cohesive->getNbQuadraturePoints(*it, ghost_type);
UInt nb_element = elem_filter.getSize();
/// compute @f$t_i N_a@f$
Real * shapes_val = shapes.storage();
UInt * elem_filter_val = elem_filter.storage();
Vector<Real> * shapes_filtered =
new Vector<Real>(nb_element*nb_quadrature_points, size_of_shapes, "filtered shapes");
Real * shapes_filtered_val = shapes_filtered->values;
for (UInt el = 0; el < nb_element; ++el) {
shapes_val = shapes.storage() + elem_filter_val[el] *
size_of_shapes * nb_quadrature_points;
memcpy(shapes_filtered_val, shapes_val,
size_of_shapes * nb_quadrature_points * sizeof(Real));
shapes_filtered_val += size_of_shapes * nb_quadrature_points;
}
shapes_filtered_val = shapes_filtered->values;
// multiply traction by shapes
Vector<Real> * traction_cpy = new Vector<Real>(traction);
traction_cpy->extendComponentsInterlaced(size_of_shapes, spatial_dimension);
Real * traction_cpy_val = traction_cpy->storage();
for (UInt el = 0; el < nb_element; ++el) {
for (UInt q = 0; q < nb_quadrature_points; ++q) {
for (UInt n = 0; n < size_of_shapes; ++n,++shapes_filtered_val) {
for (UInt i = 0; i < spatial_dimension; ++i) {
*traction_cpy_val++ *= *shapes_filtered_val;
}
}
}
}
delete shapes_filtered;
/**
* compute @f$\int t \cdot N\, dS@f$ by @f$ \sum_q \mathbf{N}^t
* \mathbf{t}_q \overline w_q J_q@f$
*/
Vector<Real> * int_t_N = new Vector<Real>(nb_element, spatial_dimension*size_of_shapes,
"int_t_N");
fem_cohesive->integrate(*traction_cpy, *int_t_N,
spatial_dimension*size_of_shapes,
*it, ghost_type,
&elem_filter);
delete traction_cpy;
int_t_N->extendComponentsInterlaced(2, int_t_N->getNbComponent() );
Real * int_t_N_val = int_t_N->storage();
for (UInt el = 0; el < nb_element; ++el) {
for (UInt n = 0; n < size_of_shapes*spatial_dimension; ++n)
int_t_N_val[n] *= -1.;
int_t_N_val += nb_nodes_per_element*spatial_dimension;
}
/// assemble
model->getFEMBoundary().assembleVector(*int_t_N, residual,
model->getDOFSynchronizer().getLocalDOFEquationNumbers(),
residual.getNbComponent(),
*it, ghost_type, &elem_filter, 1);
delete int_t_N;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MaterialCohesive::assembleStiffnessMatrix(GhostType ghost_type) {
AKANTU_DEBUG_IN();
UInt spatial_dimension = model->getSpatialDimension();
SparseMatrix & K = const_cast<SparseMatrix &>(model->getStiffnessMatrix());
Mesh & mesh = fem_cohesive->getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension, ghost_type, _ek_cohesive);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension, ghost_type, _ek_cohesive);
for(; it != last_type; ++it) {
UInt nb_quadrature_points = fem_cohesive->getNbQuadraturePoints(*it, ghost_type);
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(*it);
const Vector<Real> & shapes = fem_cohesive->getShapes(*it, ghost_type);
Vector<UInt> & elem_filter = element_filter(*it, ghost_type);
UInt nb_element = elem_filter.getSize();
UInt size_of_shapes = shapes.getNbComponent();
- UInt * elem_filter_it = elem_filter.storage();
-
Vector<Real> * shapes_filtered =
new Vector<Real>(nb_element*nb_quadrature_points, size_of_shapes, "filtered shapes");
- Vector<Real>::iterator<types::RMatrix> shapes_filtered_it =
- shapes_filtered->begin_reinterpret(size_of_shapes, nb_quadrature_points,
- nb_element);
-
- Vector<Real>::const_iterator<types::RMatrix> shapes_it =
- shapes.begin_reinterpret(size_of_shapes, nb_quadrature_points,
- mesh.getNbElement(*it, ghost_type));
+ Real * shapes_val = shapes.storage();
+ Real * shapes_filtered_val = shapes_filtered->values;
+ UInt * elem_filter_val = elem_filter.storage();
- for (UInt el = 0; el < nb_element; ++el, ++shapes_filtered_it) {
- *shapes_filtered_it = shapes_it[elem_filter_it[el]];
+ for (UInt el = 0; el < nb_element; ++el) {
+ shapes_val = shapes.storage() + elem_filter_val[el] *
+ size_of_shapes * nb_quadrature_points;
+ memcpy(shapes_filtered_val, shapes_val,
+ size_of_shapes * nb_quadrature_points * sizeof(Real));
+ shapes_filtered_val += size_of_shapes * nb_quadrature_points;
}
/**
* compute A matrix @f$ \mathbf{A} = \left[\begin{array}{c c c c c c c c c c c c}
* 1 & 0 & 0 & 0 & 0 & 0 & -1 & 0 & 0 & 0 & 0 & 0 \\
* 0 & 1 & 0 & 0 & 0 & 0 & 0 & -1 & 0 & 0 & 0 & 0 \\
* 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & -1 & 0 & 0 & 0 \\
* 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & -1 & 0 & 0 \\
* 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & -1 & 0 \\
* 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & -1
* \end{array} \right]@f$
**/
// UInt size_of_A = spatial_dimension*size_of_shapes*spatial_dimension*nb_nodes_per_element;
// Real * A = new Real[size_of_A];
// memset(A, 0, size_of_A*sizeof(Real));
types::RMatrix A(spatial_dimension*size_of_shapes, spatial_dimension*nb_nodes_per_element);
for ( UInt i = 0; i < spatial_dimension*size_of_shapes; ++i) {
A(i, i) = 1;
A(i, i + spatial_dimension*size_of_shapes) = -1;
}
/// compute traction
computeTraction(ghost_type);
/// get the tangent matrix @f$\frac{\partial{(t/\delta)}}{\partial{\delta}} @f$
Vector<Real> * tangent_stiffness_matrix =
new Vector<Real>(nb_element*nb_quadrature_points, spatial_dimension*
spatial_dimension, "tangent_stiffness_matrix");
// Vector<Real> * normal = new Vector<Real>(nb_element * nb_quadrature_points, spatial_dimension, "normal");
Vector<Real> normal( nb_quadrature_points, spatial_dimension, "normal");
computeNormal(model->getCurrentPosition(), normal, *it, ghost_type);
tangent_stiffness_matrix->clear();
computeTangentTraction(*it, *tangent_stiffness_matrix, normal, ghost_type);
// delete normal;
UInt size_at_nt_d_n_a = spatial_dimension*nb_nodes_per_element*spatial_dimension*nb_nodes_per_element;
Vector<Real> * at_nt_d_n_a = new Vector<Real> (nb_element*nb_quadrature_points,
size_at_nt_d_n_a,
"A^t*N^t*D*N*A");
Vector<Real>::iterator<types::Vector<Real> > shapes_filt_it = shapes_filtered->begin(size_of_shapes);
Vector<Real>::iterator<types::RMatrix> D_it = tangent_stiffness_matrix->begin(spatial_dimension, spatial_dimension);
Vector<Real>::iterator<types::RMatrix> At_Nt_D_N_A_it = at_nt_d_n_a->begin(spatial_dimension * nb_nodes_per_element,
- spatial_dimension * nb_nodes_per_element);
+ spatial_dimension * nb_nodes_per_element);
Vector<Real>::iterator<types::RMatrix> At_Nt_D_N_A_end = at_nt_d_n_a->end (spatial_dimension * nb_nodes_per_element,
- spatial_dimension * nb_nodes_per_element);
+ spatial_dimension * nb_nodes_per_element);
types::RMatrix N (spatial_dimension, spatial_dimension * size_of_shapes);
types::RMatrix N_A (spatial_dimension, spatial_dimension * nb_nodes_per_element);
types::RMatrix D_N_A(spatial_dimension, spatial_dimension * nb_nodes_per_element);
for(; At_Nt_D_N_A_it != At_Nt_D_N_A_end; ++At_Nt_D_N_A_it, ++D_it, ++shapes_filt_it) {
- types::RMatrix & D = *D_it;
- types::RMatrix & At_Nt_D_N_A = *At_Nt_D_N_A_it;
- types::Vector<Real> & shapes_fil = *shapes_filt_it;
-
N.clear();
/**
* store the shapes in voigt notations matrix @f$\mathbf{N} =
* \begin{array}{cccccc} N_0(\xi) & 0 & N_1(\xi) &0 & N_2(\xi) & 0 \\
* 0 & * N_0(\xi)& 0 &N_1(\xi)& 0 & N_2(\xi) \end{array} @f$
**/
for (UInt i = 0; i < spatial_dimension ; ++i)
for (UInt n = 0; n < size_of_shapes; ++n)
- N(i, i + spatial_dimension * n) = shapes_fil(n);
+ N(i, i + spatial_dimension * n) = (*shapes_filt_it)(n);
/**
* compute stiffness matrix @f$ \mathbf{K} = \delta \mathbf{U}^T
* \int_{\Gamma_c} {\mathbf{P}^t \frac{\partial{\mathbf{t}}} {\partial{\delta}}
* \mathbf{P} d\Gamma \Delta \mathbf{U}} @f$
**/
N_A.mul<false, false>(N, A);
- D_N_A.mul<false, false>(D, N_A);
- At_Nt_D_N_A.mul<true, false>(N_A, D_N_A);
- }
+ D_N_A.mul<false, false>(*D_it, N_A);
+ (*At_Nt_D_N_A_it).mul<true, false>(D_N_A, N_A);
+ }
delete tangent_stiffness_matrix;
delete shapes_filtered;
Vector<Real> * K_e = new Vector<Real>(nb_element, size_at_nt_d_n_a,
"K_e");
fem_cohesive->integrate(*at_nt_d_n_a, *K_e,
size_at_nt_d_n_a,
*it, ghost_type,
&elem_filter);
delete at_nt_d_n_a;
model->getFEM().assembleMatrix(*K_e, K, spatial_dimension, *it, ghost_type, &elem_filter);
delete K_e;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- *
* Compute traction from displacements
*
* @param[in] ghost_type compute the residual for _ghost or _not_ghost element
*/
void MaterialCohesive::computeTraction(GhostType ghost_type) {
AKANTU_DEBUG_IN();
UInt spatial_dimension = model->getSpatialDimension();
Mesh & mesh = fem_cohesive->getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension, ghost_type, _ek_cohesive);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension, ghost_type, _ek_cohesive);
for(; it != last_type; ++it) {
Vector<UInt> & elem_filter = element_filter(*it, ghost_type);
UInt nb_element = elem_filter.getSize();
UInt nb_quadrature_points = nb_element*fem_cohesive->getNbQuadraturePoints(*it, ghost_type);
Vector<Real> normal(nb_quadrature_points, spatial_dimension,
"normal");
/// compute normals @f$\mathbf{n}@f$
computeNormal(model->getCurrentPosition(), normal, *it, ghost_type);
/// compute openings @f$\mathbf{\delta}@f$
computeOpening(model->getDisplacement(), opening(*it, ghost_type), *it, ghost_type);
/// compute traction @f$\mathbf{t}@f$
computeTraction(normal, *it, ghost_type);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MaterialCohesive::computeNormal(const Vector<Real> & position,
Vector<Real> & normal,
ElementType type,
GhostType ghost_type) {
AKANTU_DEBUG_IN();
#define COMPUTE_NORMAL(type) \
fem_cohesive->getShapeFunctions(). \
computeNormalsOnControlPoints<type, CohesiveReduceFunctionMean>(position, \
normal, \
ghost_type, \
&(element_filter(type, ghost_type)))
AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(COMPUTE_NORMAL);
#undef COMPUTE_NORMAL
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MaterialCohesive::computeOpening(const Vector<Real> & displacement,
Vector<Real> & opening,
ElementType type,
GhostType ghost_type) {
AKANTU_DEBUG_IN();
#define COMPUTE_OPENING(type) \
fem_cohesive->getShapeFunctions(). \
interpolateOnControlPoints<type, CohesiveReduceFunctionOpening>(displacement, \
opening, \
spatial_dimension, \
ghost_type, \
&(element_filter(type, ghost_type)))
AKANTU_BOOST_COHESIVE_ELEMENT_SWITCH(COMPUTE_OPENING);
#undef COMPUTE_OPENING
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void MaterialCohesive::computeEnergies() {
AKANTU_DEBUG_IN();
Mesh & mesh = fem_cohesive->getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension, _not_ghost, _ek_cohesive);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension, _not_ghost, _ek_cohesive);
Real * memory_space = new Real[2*spatial_dimension];
types::RVector b(memory_space, spatial_dimension);
types::RVector h(memory_space + spatial_dimension, spatial_dimension);
for(; it != last_type; ++it) {
Vector<Real>::iterator<Real> erev =
reversible_energy(*it, _not_ghost).begin();
Vector<Real>::iterator<Real> etot =
total_energy(*it, _not_ghost).begin();
Vector<Real>::iterator<types::RVector> traction_it =
tractions(*it, _not_ghost).begin(spatial_dimension);
Vector<Real>::iterator<types::RVector> traction_old_it =
tractions_old(*it, _not_ghost).begin(spatial_dimension);
Vector<Real>::iterator<types::RVector> opening_it =
opening(*it, _not_ghost).begin(spatial_dimension);
Vector<Real>::iterator<types::RVector> opening_old_it =
opening_old(*it, _not_ghost).begin(spatial_dimension);
Vector<Real>::iterator<types::RVector>traction_end =
tractions(*it, _not_ghost).end(spatial_dimension);
/// loop on each quadrature point
for (; traction_it != traction_end;
++traction_it, ++traction_old_it,
++opening_it, ++opening_old_it,
++erev, ++etot) {
/// trapezoidal integration
b = *opening_it;
b -= *opening_old_it;
h = *traction_old_it;
h += *traction_it;
*etot += .5 * b.dot(h);
*erev = .5 * traction_it->dot(*opening_it);
}
}
delete [] memory_space;
/// update old values
it = mesh.firstType(spatial_dimension, _not_ghost, _ek_cohesive);
GhostType ghost_type = _not_ghost;
for(; it != last_type; ++it) {
tractions_old(*it, ghost_type).copy(tractions(*it, ghost_type));
opening_old(*it, ghost_type).copy(opening(*it, ghost_type));
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
Real MaterialCohesive::getReversibleEnergy() {
AKANTU_DEBUG_IN();
Real erev = 0.;
/// integrate the dissipated energy for each type of elements
Mesh & mesh = fem_cohesive->getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension, _not_ghost, _ek_cohesive);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension, _not_ghost, _ek_cohesive);
for(; it != last_type; ++it) {
erev += fem_cohesive->integrate(reversible_energy(*it, _not_ghost), *it,
_not_ghost, &element_filter(*it, _not_ghost));
}
AKANTU_DEBUG_OUT();
return erev;
}
/* -------------------------------------------------------------------------- */
Real MaterialCohesive::getDissipatedEnergy() {
AKANTU_DEBUG_IN();
Real edis = 0.;
/// integrate the dissipated energy for each type of elements
Mesh & mesh = fem_cohesive->getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension, _not_ghost, _ek_cohesive);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension, _not_ghost, _ek_cohesive);
for(; it != last_type; ++it) {
Vector<Real> dissipated_energy(total_energy(*it, _not_ghost));
dissipated_energy -= reversible_energy(*it, _not_ghost);
edis += fem_cohesive->integrate(dissipated_energy, *it,
_not_ghost, &element_filter(*it, _not_ghost));
}
AKANTU_DEBUG_OUT();
return edis;
}
/* -------------------------------------------------------------------------- */
Real MaterialCohesive::getEnergy(std::string type) {
AKANTU_DEBUG_IN();
if (type == "reversible") return getReversibleEnergy();
else if (type == "dissipated") return getDissipatedEnergy();
AKANTU_DEBUG_OUT();
return 0.;
}
__END_AKANTU__
diff --git a/src/model/solid_mechanics/materials/material_cohesive/material_cohesive.hh b/src/model/solid_mechanics/materials/material_cohesive/material_cohesive.hh
index 42258085e..b14144046 100644
--- a/src/model/solid_mechanics/materials/material_cohesive/material_cohesive.hh
+++ b/src/model/solid_mechanics/materials/material_cohesive/material_cohesive.hh
@@ -1,242 +1,232 @@
/**
* @file material_cohesive.hh
*
* @author Seyedeh Mohadeseh Taheri Mousavi <mohadeseh.taherimousavi@epfl.ch>
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Wed Feb 22 16:31:20 2012
*
* @brief Specialization of the material class for cohesive elements
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "material.hh"
#include "fem_template.hh"
#include "aka_common.hh"
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_MATERIAL_COHESIVE_HH__
#define __AKANTU_MATERIAL_COHESIVE_HH__
/* -------------------------------------------------------------------------- */
namespace akantu {
class SolidMechanicsModelCohesive;
}
__BEGIN_AKANTU__
class MaterialCohesive : public Material {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
- typedef FEMTemplate< IntegratorCohesive<IntegratorGauss>,
- ShapeCohesive<ShapeLagrange> > MyFEMCohesiveType;
+ typedef FEMTemplate<IntegratorGauss,
+ ShapeLagrange, _ek_cohesive> MyFEMCohesiveType;
public:
MaterialCohesive(SolidMechanicsModel& model, const ID & id = "");
virtual ~MaterialCohesive();
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
/// initialize the material computed parameter
virtual void initMaterial();
/// resize vectors for new cohesive elements
virtual void resizeCohesiveVectors();
/// compute tractions (including normals and openings)
void computeTraction(GhostType ghost_type = _not_ghost);
/// assemble residual
void assembleResidual(GhostType ghost_type = _not_ghost);
/// compute reversible and total energies by element
void computeEnergies();
/// check stress for cohesive elements' insertion
virtual void checkInsertion(const Vector<Real> & facet_stress,
Vector<UInt> & facet_insertion);
/// interpolate stress on given positions for each element (empty
/// implemantation to avoid the generic call to be done on cohesive elements)
virtual void interpolateStress(__attribute__((unused)) const ElementType type,
__attribute__((unused)) Vector<Real> & result) { };
virtual void computeAllStresses(__attribute__((unused)) GhostType ghost_type = _not_ghost) { };
/// generate random sigma_c distributions
void generateRandomDistribution(Vector<Real> & sigma_lim);
protected:
virtual void computeTangentTraction(__attribute__((unused)) const ElementType & el_type,
__attribute__((unused)) Vector<Real> & tangent_matrix,
__attribute__((unused)) const Vector<Real> & normal,
__attribute__((unused)) GhostType ghost_type = _not_ghost) {
AKANTU_DEBUG_TO_IMPLEMENT();
}
void computeNormal(const Vector<Real> & position,
Vector<Real> & normal,
ElementType type,
GhostType ghost_type);
void computeOpening(const Vector<Real> & displacement,
Vector<Real> & normal,
ElementType type,
GhostType ghost_type);
template<ElementType type>
void computeNormal(const Vector<Real> & position,
Vector<Real> & normal,
GhostType ghost_type);
/// assemble stiffness
void assembleStiffnessMatrix(GhostType ghost_type);
/// constitutive law
virtual void computeTraction(const Vector<Real> & normal,
ElementType el_type,
GhostType ghost_type = _not_ghost) = 0;
/// compute stress norms on quadrature points for each facet for stress check
virtual void computeStressNorms(__attribute__((unused)) const Vector<Real> & facet_stress,
__attribute__((unused)) Vector<Real> & stress_check) {
AKANTU_DEBUG_TO_IMPLEMENT();
};
/// parallelism functions
inline UInt getNbDataForElements(const Vector<Element> & elements,
SynchronizationTag tag) const;
inline void packElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag) const;
inline void unpackElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag);
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
/// get the opening
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(Opening, opening, Real);
/// get the traction
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(Traction, tractions, Real);
/// compute reversible energy
Real getReversibleEnergy();
/// compute dissipated energy
Real getDissipatedEnergy();
/// get energy
virtual Real getEnergy(std::string type);
/// return the energy (identified by id) for the provided element
virtual Real getEnergy(std::string energy_id, ElementType type, UInt index) {
return Material::getEnergy(energy_id, type, index);
}
/// get damage
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(Damage, damage, Real);
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
private:
/// reversible energy by quadrature point
ByElementTypeReal reversible_energy;
/// total energy by quadrature point
ByElementTypeReal total_energy;
/// traction in all elements and quadrature points (previous time step)
ByElementTypeReal tractions_old;
/// opening in all elements and quadrature points (previous time step)
ByElementTypeReal opening_old;
protected:
/// traction in all elements and quadrature points
ByElementTypeReal tractions;
/// opening in all elements and quadrature points
ByElementTypeReal opening;
/// Link to the cohesive fem object in the model
MyFEMCohesiveType * fem_cohesive;
/// critical stress
Real sigma_c;
- /// distribution type
- std::string distribution;
-
- /// randomness factor for uniform distribution
- Real rand;
-
- /// Weibull modulus
- Real lambda;
-
- /// scale parameter for Weibull distribution
- Real m_scale;
+ /// random generator
+ RandomGenerator<Real> * random_generator;
/// vector to store stresses on facets for element insertions
Vector<Real> sigma_insertion;
/// maximum displacement
ByElementTypeReal delta_max;
/// damage
ByElementTypeReal damage;
/// pointer to the solid mechanics model for cohesive elements
SolidMechanicsModelCohesive * model;
-
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
#include "material_cohesive_inline_impl.cc"
__END_AKANTU__
#endif /* __AKANTU_MATERIAL_COHESIVE_HH__ */
diff --git a/src/model/solid_mechanics/materials/material_cohesive/material_cohesive_inline_impl.cc b/src/model/solid_mechanics/materials/material_cohesive/material_cohesive_inline_impl.cc
index eac2c6d01..4a8c999e6 100644
--- a/src/model/solid_mechanics/materials/material_cohesive/material_cohesive_inline_impl.cc
+++ b/src/model/solid_mechanics/materials/material_cohesive/material_cohesive_inline_impl.cc
@@ -1,68 +1,66 @@
/**
* @file material_cohesive_inline_impl.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Thu Feb 23 17:58:45 2012
*
* @brief MaterialCohesive inline implementation
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
template<ElementType type>
void MaterialCohesive::computeNormal(const Vector<Real> & position,
Vector<Real> & normal,
GhostType ghost_type) {
}
/* -------------------------------------------------------------------------- */
inline UInt MaterialCohesive::getNbDataForElements(const Vector<Element> & elements,
SynchronizationTag tag) const {
- if(tag == _gst_smmc_tractions) {
+ if(tag == _gst_smm_stress) {
return spatial_dimension * sizeof(Real) * this->getModel().getNbQuadraturePoints(elements, "CohesiveFEM");
}
return 0;
}
/* -------------------------------------------------------------------------- */
inline void MaterialCohesive::packElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag) const {
- if(tag == _gst_smm_stress) return;
- else if(tag == _gst_smmc_tractions) {
+ if(tag == _gst_smm_stress) {
packElementDataHelper(tractions, buffer, elements, "CohesiveFEM");
}
}
/* -------------------------------------------------------------------------- */
inline void MaterialCohesive::unpackElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag) {
- if(tag == _gst_smm_stress) return;
- else if(tag == _gst_smmc_tractions) {
+ if(tag == _gst_smm_stress) {
unpackElementDataHelper(tractions, buffer, elements, "CohesiveFEM");
}
}
diff --git a/src/model/solid_mechanics/materials/material_damage/material_damage.cc b/src/model/solid_mechanics/materials/material_damage/material_damage.cc
index 49e7a724a..970fde189 100644
--- a/src/model/solid_mechanics/materials/material_damage/material_damage.cc
+++ b/src/model/solid_mechanics/materials/material_damage/material_damage.cc
@@ -1,165 +1,167 @@
/**
* @file material_damage.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Marion Estelle Chambart <marion.chambart@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Mar 15 16:06:20 2011
*
* @brief Specialization of the material class for the damage material
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "material_damage.hh"
#include "solid_mechanics_model.hh"
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template<UInt> class Parent>
MaterialDamage<spatial_dimension, Parent>::MaterialDamage(SolidMechanicsModel & model,
const ID & id) :
Material(model, id), Parent<spatial_dimension>(model, id),
damage("damage", id),
dissipated_energy("dissipated energy", id),
strain_prev("previous strain", id),
stress_prev("previous stress", id),
int_sigma("integral of sigma", id) {
AKANTU_DEBUG_IN();
this->is_non_local = false;
this->initInternalVector(this->damage, 1);
this->initInternalVector(this->dissipated_energy, 1);
this->initInternalVector(this->strain_prev, spatial_dimension * spatial_dimension);
this->initInternalVector(this->stress_prev, spatial_dimension * spatial_dimension);
this->initInternalVector(this->int_sigma, 1);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template<UInt> class Parent>
void MaterialDamage<spatial_dimension, Parent>::initMaterial() {
AKANTU_DEBUG_IN();
Parent<spatial_dimension>::initMaterial();
this->resizeInternalVector(this->damage);
this->resizeInternalVector(this->dissipated_energy);
this->resizeInternalVector(this->strain_prev);
this->resizeInternalVector(this->stress_prev);
this->resizeInternalVector(this->int_sigma);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/**
* Compute the dissipated energy in each element by a trapezoidal approximation
* of
* @f$ Ed = \int_0^{\epsilon}\sigma(\omega)d\omega - \frac{1}{2}\sigma:\epsilon@f$
*/
template<UInt spatial_dimension, template<UInt> class Parent>
void MaterialDamage<spatial_dimension, Parent>::updateDissipatedEnergy(GhostType ghost_type) {
// compute the dissipated energy per element
const Mesh & mesh = this->model->getFEM().getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension, ghost_type);
Mesh::type_iterator end = mesh.lastType(spatial_dimension, ghost_type);
for(; it != end; ++it) {
ElementType el_type = *it;
Vector<Real>::iterator<types::RMatrix> sigma =
this->stress(el_type, ghost_type).begin(spatial_dimension, spatial_dimension);
Vector<Real>::iterator<types::RMatrix> sigma_p =
stress_prev(el_type, ghost_type).begin(spatial_dimension, spatial_dimension);
Vector<Real>::iterator<types::RMatrix> epsilon =
this->strain(el_type, ghost_type).begin(spatial_dimension, spatial_dimension);
Vector<Real>::iterator<types::RMatrix> epsilon_p =
strain_prev(el_type, ghost_type).begin(spatial_dimension, spatial_dimension);
Vector<Real>::iterator<Real> ints = int_sigma(el_type, ghost_type).begin();
Vector<Real>::iterator<Real> ed = dissipated_energy(el_type, ghost_type).begin();
Vector<Real>::iterator<Real> ed_end = dissipated_energy(el_type, ghost_type).end();
for (; ed != ed_end; ++ed, ++ints, ++epsilon, ++sigma, ++epsilon_p, ++sigma_p) {
Real epot = 0.;
Real dint = 0.;
for (UInt i = 0; i < spatial_dimension; ++i) {
for (UInt j = 0; j < spatial_dimension; ++j) {
epot += (*sigma)(i,j) * (*epsilon)(i,j); /// \f$ epot = .5 \sigma : \epsilon \f$
dint += .5 * ((*sigma_p)(i,j) + (*sigma)(i,j)) * ((*epsilon)(i,j) - (*epsilon_p)(i,j)); /// \f$ \frac{.5 \sigma(\epsilon(t-h)) + \sigma(\epsilon(t))}{\epsilon(t) - \epsilon(t-h)} \f$
(*epsilon_p)(i,j) = (*epsilon)(i,j);
(*sigma_p)(i,j) = (*sigma)(i,j);
}
- }
+ }
epot *= .5;
*ints += dint;
*ed = *ints - epot;
}
}
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template<UInt> class Parent>
void MaterialDamage<spatial_dimension, Parent>::computeAllStresses(GhostType ghost_type) {
Material::computeAllStresses(ghost_type);
if(!this->is_non_local) this->updateDissipatedEnergy(ghost_type);
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template<UInt> class Parent>
Real MaterialDamage<spatial_dimension, Parent>::getDissipatedEnergy() const {
AKANTU_DEBUG_IN();
Real de = 0.;
const Mesh & mesh = this->model->getFEM().getMesh();
/// integrate the dissipated energy for each type of elements
Mesh::type_iterator it = mesh.firstType(spatial_dimension, _not_ghost);
Mesh::type_iterator end = mesh.lastType(spatial_dimension, _not_ghost);
for(; it != end; ++it) {
de += this->model->getFEM().integrate(dissipated_energy(*it, _not_ghost), *it,
_not_ghost, &this->element_filter(*it, _not_ghost));
}
AKANTU_DEBUG_OUT();
return de;
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template<UInt> class Parent>
Real MaterialDamage<spatial_dimension, Parent>::getEnergy(std::string type) {
- if(type == "dissipated") return getDissipatedEnergy();
- else return Parent<spatial_dimension>::getEnergy(type);
+ Real energy = Parent<spatial_dimension>::getEnergy(type);
+ if(type == "dissipated") return (energy + getDissipatedEnergy());
+ if(type == "dissipated_damage") return getDissipatedEnergy();
+ else return energy;
}
/* -------------------------------------------------------------------------- */
INSTANSIATE_MATERIAL(MaterialDamage);
__END_AKANTU__
diff --git a/src/model/solid_mechanics/materials/material_damage/material_vreepeerlings.cc b/src/model/solid_mechanics/materials/material_damage/material_vreepeerlings.cc
index 2ab4fd73c..a67994fa2 100644
--- a/src/model/solid_mechanics/materials/material_damage/material_vreepeerlings.cc
+++ b/src/model/solid_mechanics/materials/material_damage/material_vreepeerlings.cc
@@ -1,207 +1,205 @@
/**
* @file material_vreepeerlings.cc
*
* @author Cyprien Wolff <cyprien.wolff@epfl.ch>
*
* @date Fri Feb 24 14:27:15 2012
*
* @brief Specialization of the material class for the VreePeerlings material
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "material_vreepeerlings.hh"
#include "solid_mechanics_model.hh"
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
MaterialVreePeerlings<spatial_dimension>::MaterialVreePeerlings(SolidMechanicsModel & model,
const ID & id) :
Material(model, id),
MaterialDamage<spatial_dimension>(model, id),
Kapa("Kapa",id),
strain_rate_vreepeerlings("strain-rate-vreepeerlings", id),
critical_strain("critical-strain", id)
{
AKANTU_DEBUG_IN();
this->registerParam("Kapa0i" , Kapa0i , 0.0001, _pat_parsable);
this->registerParam("Kapa0" , Kapa0 , 0.0001, _pat_parsable);
this->registerParam("Alpha" , Alpha , 0.99 , _pat_parsable);
this->registerParam("Beta" , Beta , 300. , _pat_parsable);
this->registerParam("Kct" , Kct , 1. , _pat_parsable);
this->registerParam("Kapa0_randomness", Kapa0_randomness, 0. , _pat_parsable);
firststep = true;
countforinitialstep= 0;
this->initInternalVector(this->Kapa, 1);
this->initInternalVector(this->critical_strain, 1);
this->initInternalVector(this->strain_rate_vreepeerlings, spatial_dimension * spatial_dimension);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
void MaterialVreePeerlings<spatial_dimension>::initMaterial() {
AKANTU_DEBUG_IN();
MaterialDamage<spatial_dimension>::initMaterial();
this->resizeInternalVector(this->Kapa);
this->resizeInternalVector(this->critical_strain);
this->resizeInternalVector(this->strain_rate_vreepeerlings);
const Mesh & mesh = this->model->getFEM().getMesh();
Mesh::type_iterator it = mesh.firstType(spatial_dimension);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension);
for(; it != last_type; ++it) {
Vector <Real>::iterator<Real> kapa_it = Kapa(*it).begin();
Vector <Real>::iterator<Real> kapa_end = Kapa(*it).end();
for(; kapa_it != kapa_end; ++kapa_it) {
Real rand_part = (2 * drand48()-1) * Kapa0_randomness * Kapa0i;
*kapa_it = Kapa0i + rand_part;
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension>
void MaterialVreePeerlings<spatial_dimension>::computeStress(ElementType el_type, GhostType ghost_type) {
AKANTU_DEBUG_IN();
Real * dam = this->damage(el_type, ghost_type).storage();
Real * Kapaq = Kapa(el_type, ghost_type).storage();
Real * crit_strain = critical_strain(el_type, ghost_type).storage();
Real dt = this->model->getTimeStep();
Vector<UInt> & elem_filter = this->element_filter(el_type, ghost_type);
Vector<Real> & velocity = this->model->getVelocity();
Vector<Real> & strain_rate_vrplgs = this->strain_rate_vreepeerlings(el_type, ghost_type);
this->model->getFEM().gradientOnQuadraturePoints(velocity, strain_rate_vrplgs,
spatial_dimension,
el_type, ghost_type, &elem_filter);
Vector<Real>::iterator<types::RMatrix> strain_rate_vrplgs_it =
strain_rate_vrplgs.begin(spatial_dimension, spatial_dimension);
MATERIAL_STRESS_QUADRATURE_POINT_LOOP_BEGIN(el_type, ghost_type);
Real Equistrain;
Real Equistrain_rate;
types::RMatrix & strain_rate = *strain_rate_vrplgs_it;
computeStressOnQuad(grad_u, sigma, *dam, Equistrain, Equistrain_rate, *Kapaq, dt, strain_rate, *crit_strain);
++dam;
++Kapaq;
++strain_rate_vrplgs_it;
++crit_strain;
MATERIAL_STRESS_QUADRATURE_POINT_LOOP_END;
- if(!this->is_non_local) this->updateDissipatedEnergy(ghost_type);
-
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
//UInt MaterialVreePeerlings<spatial_dimension>::getNbDataToPack(const Element & element,
// SynchronizationTag tag) const {
// AKANTU_DEBUG_IN();
// UInt size = 0;
// if(tag == _gst_smm_init_mat) {
// UInt nb_quad = this->model->getFEM().getNbQuadraturePoints(element.type);
// size += sizeof(Real) + nb_quad;
// }
// size += MaterialDamage<spatial_dimension>::getNbDataToPack(element, tag);
// AKANTU_DEBUG_OUT();
// return size;
// }
// /* -------------------------------------------------------------------------- */
// template<UInt spatial_dimension>
// UInt MaterialVreePeerlings<spatial_dimension>::getNbDataToUnpack(const Element & element,
// SynchronizationTag tag) const {
// AKANTU_DEBUG_IN();
// UInt size = 0;
// if(tag == _gst_smm_init_mat) {
// UInt nb_quad = this->model->getFEM().getNbQuadraturePoints(element.type);
// size += sizeof(Real) + nb_quad;
// }
// size += MaterialDamage<spatial_dimension>::getNbDataToPack(element, tag);
// AKANTU_DEBUG_OUT();
// return size;
// }
// /* -------------------------------------------------------------------------- */
// template<UInt spatial_dimension>
// void MaterialVreePeerlings<spatial_dimension>::packData(CommunicationBuffer & buffer,
// const Element & element,
// SynchronizationTag tag) const {
// AKANTU_DEBUG_IN();
// if(tag == _gst_smm_init_mat){
// UInt nb_quad = this->model->getFEM().getNbQuadraturePoints(element.type);
// const Vector<Real> & kapa = Kapa(element.type, _not_ghost);
// for(UInt q = 0; q < nb_quad; ++q)
// buffer << kapa(element.element * nb_quad + q);
// }
// MaterialDamage<spatial_dimension>::packData(buffer, element, tag);
// AKANTU_DEBUG_OUT();
// }
// /* -------------------------------------------------------------------------- */
// template<UInt spatial_dimension>
// void MaterialVreePeerlings<spatial_dimension>::unpackData(CommunicationBuffer & buffer,
// const Element & element,
// SynchronizationTag tag) {
// AKANTU_DEBUG_IN();
// if(tag == _gst_smm_init_mat) {
// UInt nb_quad = this->model->getFEM().getNbQuadraturePoints(element.type);
// Vector<Real> & kapa = Kapa(element.type, _not_ghost);
// for(UInt q = 0; q < nb_quad; ++q)
// buffer >> kapa(element.element * nb_quad + q);
// }
// MaterialDamage<spatial_dimension>::packData(buffer, element, tag);
// AKANTU_DEBUG_OUT();
// }
/* -------------------------------------------------------------------------- */
INSTANSIATE_MATERIAL(MaterialVreePeerlings);
__END_AKANTU__
diff --git a/src/model/solid_mechanics/materials/material_non_local.hh b/src/model/solid_mechanics/materials/material_non_local.hh
index 36f11da24..e1a4126eb 100644
--- a/src/model/solid_mechanics/materials/material_non_local.hh
+++ b/src/model/solid_mechanics/materials/material_non_local.hh
@@ -1,187 +1,188 @@
/**
* @file material_non_local.hh
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Wed Aug 31 11:09:48 2011
*
* @brief Material class that handle the non locality of a law for example damage.
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "material.hh"
#include "aka_grid.hh"
#include "fem.hh"
#include "weight_function.hh"
namespace akantu {
class GridSynchronizer;
}
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_MATERIAL_NON_LOCAL_HH__
#define __AKANTU_MATERIAL_NON_LOCAL_HH__
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
template<UInt dim, template <UInt> class WeightFunction = BaseWeightFunction>
class MaterialNonLocal : public virtual Material {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
MaterialNonLocal(SolidMechanicsModel & model, const ID & id = "");
virtual ~MaterialNonLocal();
template<typename T>
class PairList : public ByElementType<ByElementTypeVector<T> > {};
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
/// read properties
virtual bool parseParam(const std::string & key, const std::string & value,
const ID & id);
/// initialize the material computed parameter
virtual void initMaterial();
virtual void updateResidual(GhostType ghost_type);
virtual void computeAllNonLocalStresses(GhostType ghost_type = _not_ghost);
void savePairs(const std::string & filename) const;
void neighbourhoodStatistics(const std::string & filename) const;
protected:
void updatePairList(const ByElementTypeReal & quadrature_points_coordinates);
void computeWeights(const ByElementTypeReal & quadrature_points_coordinates);
void createCellList(ByElementTypeReal & quadrature_points_coordinates);
void cleanupExtraGhostElement(const ByElementType<UInt> & nb_ghost_protected);
void fillCellList(const ByElementTypeReal & quadrature_points_coordinates,
const GhostType & ghost_type);
/// constitutive law
virtual void computeNonLocalStresses(GhostType ghost_type = _not_ghost) = 0;
template<typename T>
void weightedAvergageOnNeighbours(const ByElementTypeVector<T> & to_accumulate,
ByElementTypeVector<T> & accumulated,
UInt nb_degree_of_freedom,
GhostType ghost_type2 = _not_ghost) const;
virtual inline UInt getNbDataForElements(const Vector<Element> & elements,
SynchronizationTag tag) const;
virtual inline void packElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag) const;
virtual inline void unpackElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag);
- virtual inline void onElementsAdded(const Vector<Element> & element_list);
+ // virtual inline void onElementsAdded(const Vector<Element> & element_list);
virtual inline void onElementsRemoved(const Vector<Element> & element_list,
- const ByElementTypeUInt & new_numbering);
+ const ByElementTypeUInt & new_numbering,
+ const RemovedElementsEvent & event);
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
void registerNonLocalVariable(ByElementTypeReal & local,
ByElementTypeReal & non_local,
UInt nb_degree_of_freedom) {
ID id = local.getID();
NonLocalVariable & non_local_variable = non_local_variables[id];
non_local_variable.local_variable = &local;
non_local_variable.non_local_variable = &non_local;
non_local_variable.non_local_variable_nb_component = nb_degree_of_freedom;
}
AKANTU_GET_MACRO(PairList, pair_list, const PairList<UInt> &)
AKANTU_GET_MACRO(Radius, radius, Real);
AKANTU_GET_MACRO(CellList, *cell_list, const RegularGrid<QuadraturePoint> &)
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
protected:
/// the non local radius
Real radius;
/// the weight function used
WeightFunction<dim> * weight_func;
private:
/// the pairs of quadrature points
PairList<UInt> pair_list;
/// the weights associated to the pairs
PairList<Real> pair_weight;
/// the regular grid to construct/update the pair lists
RegularGrid<QuadraturePoint> * cell_list;
/// the types of the existing pairs
typedef std::set< std::pair<ElementType, ElementType> > pair_type;
pair_type existing_pairs[2];
/// specify if the weights should be updated and at which rate
UInt update_weights;
/// count the number of calls of computeStress
UInt compute_stress_calls;
struct NonLocalVariable {
ByElementTypeVector<Real> * local_variable;
ByElementTypeVector<Real> * non_local_variable;
UInt non_local_variable_nb_component;
};
std::map<ID, NonLocalVariable> non_local_variables;
bool is_creating_grid;
GridSynchronizer * grid_synchronizer;
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
#include "material_non_local_inline_impl.cc"
__END_AKANTU__
#endif /* __AKANTU_MATERIAL_NON_LOCAL_HH__ */
diff --git a/src/model/solid_mechanics/materials/material_non_local_inline_impl.cc b/src/model/solid_mechanics/materials/material_non_local_inline_impl.cc
index 380bd45ec..ae8e25699 100644
--- a/src/model/solid_mechanics/materials/material_non_local_inline_impl.cc
+++ b/src/model/solid_mechanics/materials/material_non_local_inline_impl.cc
@@ -1,851 +1,853 @@
/**
* @file material_non_local_inline_impl.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Wed Aug 31 11:09:48 2011
*
* @brief Non-local inline implementation
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
__END_AKANTU__
/* -------------------------------------------------------------------------- */
#include "aka_types.hh"
#include "grid_synchronizer.hh"
#include "synchronizer_registry.hh"
#include "integrator.hh"
/* -------------------------------------------------------------------------- */
#include <fstream>
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
template<UInt DIM, template <UInt> class WeightFunction>
MaterialNonLocal<DIM, WeightFunction>::MaterialNonLocal(SolidMechanicsModel & model,
const ID & id) :
Material(model, id), radius(100.), weight_func(NULL), cell_list(NULL),
update_weights(0), compute_stress_calls(0), is_creating_grid(false), grid_synchronizer(NULL) {
AKANTU_DEBUG_IN();
this->registerParam("radius" , radius , 100., _pat_readable , "Non local radius");
this->registerParam("UpdateWeights" , update_weights, 0U , _pat_modifiable, "Update weights frequency");
this->registerParam("Weight function", weight_func , _pat_internal);
this->is_non_local = true;
this->weight_func = new WeightFunction<DIM>(*this);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
MaterialNonLocal<spatial_dimension, WeightFunction>::~MaterialNonLocal() {
AKANTU_DEBUG_IN();
delete cell_list;
delete weight_func;
delete grid_synchronizer;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
void MaterialNonLocal<spatial_dimension, WeightFunction>::initMaterial() {
AKANTU_DEBUG_IN();
// Material::initMaterial();
Mesh & mesh = this->model->getFEM().getMesh();
ByElementTypeReal quadrature_points_coordinates("quadrature_points_coordinates_tmp_nl", id);
this->initInternalVector(quadrature_points_coordinates, spatial_dimension, true);
computeQuadraturePointsCoordinates(quadrature_points_coordinates, _not_ghost);
ByElementType<UInt> nb_ghost_protected;
Mesh::type_iterator it = mesh.firstType(spatial_dimension, _ghost);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension, _ghost);
for(; it != last_type; ++it)
nb_ghost_protected(mesh.getNbElement(*it, _ghost), *it, _ghost);
createCellList(quadrature_points_coordinates);
updatePairList(quadrature_points_coordinates);
cleanupExtraGhostElement(nb_ghost_protected);
weight_func->setRadius(radius);
weight_func->init();
computeWeights(quadrature_points_coordinates);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
void MaterialNonLocal<spatial_dimension, WeightFunction>::cleanupExtraGhostElement(const ByElementType<UInt> & nb_ghost_protected) {
AKANTU_DEBUG_IN();
// Create list of element to keep
std::set<Element> relevant_ghost_element;
pair_type::const_iterator first_pair_types = existing_pairs[1].begin();
pair_type::const_iterator last_pair_types = existing_pairs[1].end();
for (; first_pair_types != last_pair_types; ++first_pair_types) {
ElementType type2 = first_pair_types->second;
GhostType ghost_type2 = _ghost;
UInt nb_quad2 = this->model->getFEM().getNbQuadraturePoints(type2);
Vector<UInt> & elem_filter = element_filter(type2, ghost_type2);
const Vector<UInt> & pairs =
pair_list(first_pair_types->first, _not_ghost)(first_pair_types->second, ghost_type2);
Vector<UInt>::const_iterator< types::Vector<UInt> > first_pair = pairs.begin(2);
Vector<UInt>::const_iterator< types::Vector<UInt> > last_pair = pairs.end(2);
for(;first_pair != last_pair; ++first_pair) {
UInt _q2 = (*first_pair)(1);
QuadraturePoint q2(type2, elem_filter(_q2 / nb_quad2), _q2 % nb_quad2, ghost_type2);
relevant_ghost_element.insert(q2);
}
}
// Create list of element to remove and new numbering for element to keep
Mesh & mesh = this->model->getFEM().getMesh();
std::set<Element> ghost_to_erase;
Mesh::type_iterator it = mesh.firstType(spatial_dimension, _ghost);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension, _ghost);
RemovedElementsEvent remove_elem(mesh);
Element element;
element.ghost_type = _ghost;
for(; it != last_type; ++it) {
element.type = *it;
UInt nb_ghost_elem = mesh.getNbElement(*it, _ghost);
UInt nb_ghost_elem_protected = 0;
try {
nb_ghost_elem_protected = nb_ghost_protected(*it, _ghost);
} catch (...) {}
if(!remove_elem.getNewNumbering().exists(*it, _ghost))
remove_elem.getNewNumbering().alloc(nb_ghost_elem, 1, *it, _ghost);
+ else remove_elem.getNewNumbering(*it, _ghost).resize(nb_ghost_elem);
Vector<UInt> & elem_filter = element_filter(*it, _ghost);
Vector<UInt> & new_numbering = remove_elem.getNewNumbering(*it, _ghost);
UInt ng = 0;
for (UInt g = 0; g < nb_ghost_elem; ++g) {
element.element = elem_filter(g);
if(element.element >= nb_ghost_elem_protected &&
(std::find(relevant_ghost_element.begin(),
relevant_ghost_element.end(),
element) == relevant_ghost_element.end())) {
ghost_to_erase.insert(element);
remove_elem.getList().push_back(element);
new_numbering(g) = UInt(-1);
} else {
new_numbering(g) = ng;
++ng;
}
}
}
mesh.sendEvent(remove_elem);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
void MaterialNonLocal<spatial_dimension, WeightFunction>::createCellList(ByElementTypeReal & quadrature_points_coordinates) {
AKANTU_DEBUG_IN();
const Real safety_factor = 1.2; // for the cell grid spacing
Mesh & mesh = this->model->getFEM().getMesh();
mesh.computeBoundingBox();
Real lower_bounds[spatial_dimension];
Real upper_bounds[spatial_dimension];
mesh.getLocalLowerBounds(lower_bounds);
mesh.getLocalUpperBounds(upper_bounds);
Real spacing[spatial_dimension];
for (UInt i = 0; i < spatial_dimension; ++i) {
spacing[i] = radius * safety_factor;
}
cell_list = new RegularGrid<QuadraturePoint>(spatial_dimension,
lower_bounds,
upper_bounds,
spacing);
fillCellList(quadrature_points_coordinates, _not_ghost);
is_creating_grid = true;
SynchronizerRegistry & synch_registry = this->model->getSynchronizerRegistry();
std::stringstream sstr; sstr << id << ":grid_synchronizer";
grid_synchronizer = GridSynchronizer::createGridSynchronizer(mesh,
*cell_list,
sstr.str());
synch_registry.registerSynchronizer(*grid_synchronizer, _gst_mnl_for_average);
synch_registry.registerSynchronizer(*grid_synchronizer, _gst_mnl_weight);
is_creating_grid = false;
this->computeQuadraturePointsCoordinates(quadrature_points_coordinates, _ghost);
fillCellList(quadrature_points_coordinates, _ghost);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
void MaterialNonLocal<spatial_dimension, WeightFunction>::fillCellList(const ByElementTypeReal & quadrature_points_coordinates,
const GhostType & ghost_type) {
Mesh & mesh = this->model->getFEM().getMesh();
QuadraturePoint q;
q.ghost_type = ghost_type;
Mesh::type_iterator it = mesh.firstType(spatial_dimension, ghost_type);
Mesh::type_iterator last_type = mesh.lastType (spatial_dimension, ghost_type);
for(; it != last_type; ++it) {
Vector<UInt> & elem_filter = element_filter(*it, ghost_type);
UInt nb_element = elem_filter.getSize();
UInt nb_quad = this->model->getFEM().getNbQuadraturePoints(*it, ghost_type);
const Vector<Real> & quads = quadrature_points_coordinates(*it, ghost_type);
q.type = *it;
Vector<Real>::const_iterator<types::RVector> quad = quads.begin(spatial_dimension);
UInt * elem = elem_filter.storage();
for (UInt e = 0; e < nb_element; ++e) {
q.element = *elem;
for (UInt nq = 0; nq < nb_quad; ++nq) {
q.num_point = nq;
q.setPosition(*quad);
cell_list->insert(q, *quad);
++quad;
}
++elem;
}
}
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
void MaterialNonLocal<spatial_dimension, WeightFunction>::updatePairList(const ByElementTypeReal & quadrature_points_coordinates) {
AKANTU_DEBUG_IN();
Mesh & mesh = this->model->getFEM().getMesh();
GhostType ghost_type = _not_ghost;
// generate the pair of neighbor depending of the cell_list
Mesh::type_iterator it = mesh.firstType(spatial_dimension, ghost_type);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension, ghost_type);
for(; it != last_type; ++it) {
// Preparing datas
const Vector<Real> & quads = quadrature_points_coordinates(*it, ghost_type);
Vector<Real>::const_iterator<types::RVector> first_quad = quads.begin(spatial_dimension);
Vector<Real>::const_iterator<types::RVector> last_quad = quads.end(spatial_dimension);
ByElementTypeUInt & pairs = pair_list(ByElementTypeUInt("pairs", id, memory_id),
*it,
ghost_type);
ElementType current_element_type = _not_defined;
GhostType current_ghost_type = _casper;
UInt existing_pairs_num = 0;
Vector<UInt> * neighbors = NULL;
Vector<UInt> * element_index_material2 = NULL;
UInt my_num_quad = 0;
// loop over quad points
for(;first_quad != last_quad; ++first_quad, ++my_num_quad) {
RegularGrid<QuadraturePoint>::Cell cell = cell_list->getCell(*first_quad);
RegularGrid<QuadraturePoint>::neighbor_cells_iterator first_neigh_cell =
cell_list->beginNeighborCells(cell);
RegularGrid<QuadraturePoint>::neighbor_cells_iterator last_neigh_cell =
cell_list->endNeighborCells(cell);
// loop over neighbors cells of the one containing the current quadrature
// point
for (; first_neigh_cell != last_neigh_cell; ++first_neigh_cell) {
RegularGrid<QuadraturePoint>::iterator first_neigh_quad =
cell_list->beginCell(*first_neigh_cell);
RegularGrid<QuadraturePoint>::iterator last_neigh_quad =
cell_list->endCell(*first_neigh_cell);
// loop over the quadrature point in the current cell of the cell list
for (;first_neigh_quad != last_neigh_quad; ++first_neigh_quad){
QuadraturePoint & quad = *first_neigh_quad;
UInt nb_quad_per_elem =
this->model->getFEM().getNbQuadraturePoints(quad.type,
quad.ghost_type);
// little optimization to not search in the map at each quad points
if(quad.type != current_element_type ||
quad.ghost_type != current_ghost_type) {
current_element_type = quad.type;
current_ghost_type = quad.ghost_type;
existing_pairs_num = quad.ghost_type == _not_ghost ? 0 : 1;
if(!pairs.exists(current_element_type, current_ghost_type)) {
neighbors = &(pairs.alloc(0, 2,
current_element_type,
current_ghost_type));
} else {
neighbors = &(pairs(current_element_type,
current_ghost_type));
}
existing_pairs[existing_pairs_num].insert(std::pair<ElementType,
ElementType>(*it,
current_element_type));
element_index_material2 =
&(this->model->getElementIndexByMaterial(current_element_type,
current_ghost_type));
}
UInt neigh_num_quad =
(*element_index_material2)(quad.element) * nb_quad_per_elem +
quad.num_point;
const types::RVector & neigh_quad = quad.getPosition();
Real distance = first_quad->distance(neigh_quad);
if(distance <= radius &&
(current_ghost_type == _ghost ||
(current_ghost_type == _not_ghost && my_num_quad <= neigh_num_quad))) { // sotring only half lists
UInt pair[2];
pair[0] = my_num_quad;
pair[1] = neigh_num_quad;
neighbors->push_back(pair);
}
}
}
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
void MaterialNonLocal<spatial_dimension, WeightFunction>::computeWeights(const ByElementTypeReal & quadrature_points_coordinates) {
AKANTU_DEBUG_IN();
GhostType ghost_type1;
ghost_type1 = _not_ghost;
ByElementTypeReal quadrature_points_volumes("quadrature_points_volumes", id, memory_id);
this->initInternalVector(quadrature_points_volumes, 1, true);
resizeInternalVector(quadrature_points_volumes);
- const ByElementTypeReal & jacobians_by_type = this->model->getFEM().getIntegratorInterface().getJacobians();
+ const FEM & fem = this->model->getFEM();
weight_func->updateInternals(quadrature_points_volumes);
for(UInt gt = _not_ghost; gt <= _ghost; ++gt) {
GhostType ghost_type2 = (GhostType) gt;
UInt existing_pairs_num = gt - _not_ghost;
pair_type::iterator first_pair_types = existing_pairs[existing_pairs_num].begin();
pair_type::iterator last_pair_types = existing_pairs[existing_pairs_num].end();
// Compute the weights
for (; first_pair_types != last_pair_types; ++first_pair_types) {
ElementType type1 = first_pair_types->first;
ElementType type2 = first_pair_types->second;
const Vector<UInt> & pairs = pair_list(type1, ghost_type1)(type2, ghost_type2);
std::string ghost_id = "";
if (ghost_type1 == _ghost) ghost_id = ":ghost";
ByElementTypeReal & weights_type_1 = pair_weight(type1, ghost_type1);
std::stringstream sstr; sstr << id << ":pair_weight:" << type1 << ghost_id;
weights_type_1.setID(sstr.str());
Vector<Real> * tmp_weight = NULL;
if(!weights_type_1.exists(type2, ghost_type2)) {
tmp_weight = &(weights_type_1.alloc(0, 2, type2, ghost_type2));
} else {
tmp_weight = &(weights_type_1(type2, ghost_type2));
}
Vector<Real> & weights = *tmp_weight;
weights.resize(pairs.getSize());
weights.clear();
- const Vector<Real> & jacobians_1 = jacobians_by_type(type1, ghost_type1);
- const Vector<Real> & jacobians_2 = jacobians_by_type(type2, ghost_type2);
+ const Vector<Real> & jacobians_1 = fem.getIntegratorInterface().getJacobians(type1, ghost_type1);
+ const Vector<Real> & jacobians_2 = fem.getIntegratorInterface().getJacobians(type2, ghost_type2);
- UInt nb_quad1 = this->model->getFEM().getNbQuadraturePoints(type1);
- UInt nb_quad2 = this->model->getFEM().getNbQuadraturePoints(type2);
+ UInt nb_quad1 = fem.getNbQuadraturePoints(type1);
+ UInt nb_quad2 = fem.getNbQuadraturePoints(type2);
Vector<Real> & quads_volumes1 = quadrature_points_volumes(type1, ghost_type1);
Vector<Real> & quads_volumes2 = quadrature_points_volumes(type2, ghost_type2);
Vector<Real>::const_iterator<types::RVector> iquads1;
Vector<Real>::const_iterator<types::RVector> iquads2;
iquads1 = quadrature_points_coordinates(type1, ghost_type1).begin(spatial_dimension);
iquads2 = quadrature_points_coordinates(type2, ghost_type2).begin(spatial_dimension);
Vector<UInt>::const_iterator< types::Vector<UInt> > first_pair = pairs.begin(2);
Vector<UInt>::const_iterator< types::Vector<UInt> > last_pair = pairs.end(2);
Vector<Real>::iterator<types::RVector> weight = weights.begin(2);
this->weight_func->selectType(type1, ghost_type1, type2, ghost_type2);
// Weight function
for(;first_pair != last_pair; ++first_pair, ++weight) {
UInt _q1 = (*first_pair)(0);
UInt _q2 = (*first_pair)(1);
const types::RVector & pos1 = iquads1[_q1];
const types::RVector & pos2 = iquads2[_q2];
QuadraturePoint q1(_q1 / nb_quad1, _q1 % nb_quad1, _q1, pos1, type1, ghost_type1);
QuadraturePoint q2(_q2 / nb_quad2, _q2 % nb_quad2, _q2, pos2, type2, ghost_type2);
Real r = pos1.distance(pos2);
Real w2J2 = jacobians_2(_q2);
(*weight)(0) = w2J2 * this->weight_func->operator()(r, q1, q2);
if(ghost_type2 != _ghost && _q1 != _q2) {
Real w1J1 = jacobians_1(_q1);
(*weight)(1) = w1J1 * this->weight_func->operator()(r, q2, q1);
} else
(*weight)(1) = 0;
quads_volumes1(_q1) += (*weight)(0);
if(ghost_type2 != _ghost) quads_volumes2(_q2) += (*weight)(1);
}
}
}
//normalize the weights
for(UInt gt = _not_ghost; gt <= _ghost; ++gt) {
GhostType ghost_type2 = (GhostType) gt;
UInt existing_pairs_num = gt - _not_ghost;
pair_type::iterator first_pair_types = existing_pairs[existing_pairs_num].begin();
pair_type::iterator last_pair_types = existing_pairs[existing_pairs_num].end();
first_pair_types = existing_pairs[existing_pairs_num].begin();
for (; first_pair_types != last_pair_types; ++first_pair_types) {
ElementType type1 = first_pair_types->first;
ElementType type2 = first_pair_types->second;
const Vector<UInt> & pairs = pair_list(type1, ghost_type1)(type2, ghost_type2);
Vector<Real> & weights = pair_weight(type1, ghost_type1)(type2, ghost_type2);
Vector<Real> & quads_volumes1 = quadrature_points_volumes(type1, ghost_type1);
Vector<Real> & quads_volumes2 = quadrature_points_volumes(type2, ghost_type2);
Vector<UInt>::const_iterator< types::Vector<UInt> > first_pair = pairs.begin(2);
Vector<UInt>::const_iterator< types::Vector<UInt> > last_pair = pairs.end(2);
Vector<Real>::iterator<types::RVector> weight = weights.begin(2);
for(;first_pair != last_pair; ++first_pair, ++weight) {
UInt q1 = (*first_pair)(0);
UInt q2 = (*first_pair)(1);
(*weight)(0) *= 1. / quads_volumes1(q1);
if(ghost_type2 != _ghost) (*weight)(1) *= 1. / quads_volumes2(q2);
}
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
template<typename T>
void MaterialNonLocal<spatial_dimension, WeightFunction>::weightedAvergageOnNeighbours(const ByElementTypeVector<T> & to_accumulate,
ByElementTypeVector<T> & accumulated,
UInt nb_degree_of_freedom,
GhostType ghost_type2) const {
AKANTU_DEBUG_IN();
UInt existing_pairs_num = 0;
if (ghost_type2 == _ghost) existing_pairs_num = 1;
pair_type::const_iterator first_pair_types = existing_pairs[existing_pairs_num].begin();
pair_type::const_iterator last_pair_types = existing_pairs[existing_pairs_num].end();
GhostType ghost_type1 = _not_ghost; // does not make sens the ghost vs ghost so this should always by _not_ghost
for (; first_pair_types != last_pair_types; ++first_pair_types) {
const Vector<UInt> & pairs =
pair_list(first_pair_types->first, ghost_type1)(first_pair_types->second, ghost_type2);
const Vector<Real> & weights =
pair_weight(first_pair_types->first, ghost_type1)(first_pair_types->second, ghost_type2);
const Vector<T> & to_acc = to_accumulate(first_pair_types->second, ghost_type2);
Vector<T> & acc = accumulated(first_pair_types->first, ghost_type1);
if(ghost_type2 == _not_ghost) acc.clear();
Vector<UInt>::const_iterator< types::Vector<UInt> > first_pair = pairs.begin(2);
Vector<UInt>::const_iterator< types::Vector<UInt> > last_pair = pairs.end(2);
Vector<Real>::const_iterator< types::Vector<Real> > pair_w = weights.begin(2);
for(;first_pair != last_pair; ++first_pair, ++pair_w) {
UInt q1 = (*first_pair)(0);
UInt q2 = (*first_pair)(1);
for(UInt d = 0; d < nb_degree_of_freedom; ++d){
acc(q1, d) += (*pair_w)(0) * to_acc(q2, d);
if(ghost_type2 != _ghost) acc(q2, d) += (*pair_w)(1) * to_acc(q1, d);
}
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
void MaterialNonLocal<spatial_dimension, WeightFunction>::updateResidual(GhostType ghost_type) {
AKANTU_DEBUG_IN();
// Update the weights for the non local variable averaging
if(ghost_type == _not_ghost &&
this->update_weights &&
(this->compute_stress_calls % this->update_weights == 0)) {
ByElementTypeReal quadrature_points_coordinates("quadrature_points_coordinates", id);
Mesh & mesh = this->model->getFEM().getMesh();
mesh.initByElementTypeVector(quadrature_points_coordinates, spatial_dimension, 0);
computeQuadraturePointsCoordinates(quadrature_points_coordinates, _not_ghost);
computeQuadraturePointsCoordinates(quadrature_points_coordinates, _ghost);
computeWeights(quadrature_points_coordinates);
}
if(ghost_type == _not_ghost) ++this->compute_stress_calls;
computeAllStresses(ghost_type);
computeNonLocalStresses(ghost_type);
assembleResidual(ghost_type);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
void MaterialNonLocal<spatial_dimension, WeightFunction>::computeAllNonLocalStresses(GhostType ghost_type) {
// Update the weights for the non local variable averaging
if(ghost_type == _not_ghost) {
if(this->update_weights && (this->compute_stress_calls % this->update_weights == 0)) {
this->model->getSynchronizerRegistry().asynchronousSynchronize(_gst_mnl_weight);
ByElementTypeReal quadrature_points_coordinates("quadrature_points_coordinates", id);
Mesh & mesh = this->model->getFEM().getMesh();
mesh.initByElementTypeVector(quadrature_points_coordinates, spatial_dimension, 0);
computeQuadraturePointsCoordinates(quadrature_points_coordinates, _not_ghost);
computeQuadraturePointsCoordinates(quadrature_points_coordinates, _ghost);
this->model->getSynchronizerRegistry().waitEndSynchronize(_gst_mnl_weight);
computeWeights(quadrature_points_coordinates);
}
typename std::map<ID, NonLocalVariable>::iterator it = non_local_variables.begin();
typename std::map<ID, NonLocalVariable>::iterator end = non_local_variables.end();
for(;it != end; ++it) {
NonLocalVariable & non_local_variable = it->second;
resizeInternalVector(*non_local_variable.non_local_variable);
this->weightedAvergageOnNeighbours(*non_local_variable.local_variable, *non_local_variable.non_local_variable,
non_local_variable.non_local_variable_nb_component, _not_ghost);
}
++this->compute_stress_calls;
} else {
typename std::map<ID, NonLocalVariable>::iterator it = non_local_variables.begin();
typename std::map<ID, NonLocalVariable>::iterator end = non_local_variables.end();
for(;it != end; ++it) {
NonLocalVariable & non_local_variable = it->second;
this->weightedAvergageOnNeighbours(*non_local_variable.local_variable, *non_local_variable.non_local_variable,
non_local_variable.non_local_variable_nb_component, _ghost);
}
computeNonLocalStresses(_not_ghost);
}
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
bool MaterialNonLocal<spatial_dimension, WeightFunction>::parseParam(const std::string & key,
const std::string & value,
__attribute__((unused)) const ID & id) {
std::stringstream sstr(value);
if(key == "radius") { sstr >> radius; }
else if(key == "UpdateWeights") { sstr >> update_weights; }
else if(!weight_func->parseParam(key, value)) return Material::parseParam(key, value, id);
return true;
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
void MaterialNonLocal<spatial_dimension, WeightFunction>::savePairs(const std::string & filename) const {
std::ofstream pout;
std::stringstream sstr;
StaticCommunicator & comm = StaticCommunicator::getStaticCommunicator();
Int prank = comm.whoAmI();
sstr << filename << "." << prank;
pout.open(sstr.str().c_str());
GhostType ghost_type1;
ghost_type1 = _not_ghost;
for(UInt gt = _not_ghost; gt <= _ghost; ++gt) {
GhostType ghost_type2 = (GhostType) gt;
UInt existing_pairs_num = gt - _not_ghost;
pair_type::const_iterator first_pair_types = existing_pairs[existing_pairs_num].begin();
pair_type::const_iterator last_pair_types = existing_pairs[existing_pairs_num].end();
for (; first_pair_types != last_pair_types; ++first_pair_types) {
const Vector<UInt> & pairs =
pair_list(first_pair_types->first, ghost_type1)(first_pair_types->second, ghost_type2);
const Vector<Real> & weights =
pair_weight(first_pair_types->first, ghost_type1)(first_pair_types->second, ghost_type2);
pout << "Types : " << first_pair_types->first << " (" << ghost_type1 << ") - " << first_pair_types->second << " (" << ghost_type2 << ")" << std::endl;
Vector<UInt>::const_iterator< types::Vector<UInt> > first_pair = pairs.begin(2);
Vector<UInt>::const_iterator< types::Vector<UInt> > last_pair = pairs.end(2);
Vector<Real>::const_iterator<types::RVector> pair_w = weights.begin(2);
for(;first_pair != last_pair; ++first_pair, ++pair_w) {
UInt q1 = (*first_pair)(0);
UInt q2 = (*first_pair)(1);
pout << q1 << " " << q2 << " "<< (*pair_w)(0) << " " << (*pair_w)(1) << std::endl;
}
}
}
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
void MaterialNonLocal<spatial_dimension, WeightFunction>::neighbourhoodStatistics(const std::string & filename) const {
std::ofstream pout;
pout.open(filename.c_str());
const Mesh & mesh = this->model->getFEM().getMesh();
GhostType ghost_type1;
ghost_type1 = _not_ghost;
StaticCommunicator & comm = StaticCommunicator::getStaticCommunicator();
Int prank = comm.whoAmI();
for(UInt gt = _not_ghost; gt <= _ghost; ++gt) {
GhostType ghost_type2 = (GhostType) gt;
UInt existing_pairs_num = gt - _not_ghost;
ByElementTypeUInt nb_neighbors("nb_neighbours", id, memory_id);
mesh.initByElementTypeVector(nb_neighbors, 1, spatial_dimension);
resizeInternalVector(nb_neighbors);
pair_type::const_iterator first_pair_types = existing_pairs[existing_pairs_num].begin();
pair_type::const_iterator last_pair_types = existing_pairs[existing_pairs_num].end();
for (; first_pair_types != last_pair_types; ++first_pair_types) {
const Vector<UInt> & pairs =
pair_list(first_pair_types->first, ghost_type1)(first_pair_types->second, ghost_type2);
if(prank == 0) {
pout << ghost_type2 << " ";
pout << "Types : " << first_pair_types->first << " " << first_pair_types->second << std::endl;
}
Vector<UInt>::const_iterator< types::Vector<UInt> > first_pair = pairs.begin(2);
Vector<UInt>::const_iterator< types::Vector<UInt> > last_pair = pairs.end(2);
Vector<UInt> & nb_neigh_1 = nb_neighbors(first_pair_types->first, ghost_type1);
Vector<UInt> & nb_neigh_2 = nb_neighbors(first_pair_types->second, ghost_type2);
for(;first_pair != last_pair; ++first_pair) {
UInt q1 = (*first_pair)(0);
UInt q2 = (*first_pair)(1);
++(nb_neigh_1(q1));
if(q1 != q2) ++(nb_neigh_2(q2));
}
}
Mesh::type_iterator it = mesh.firstType(spatial_dimension, ghost_type1);
Mesh::type_iterator last_type = mesh.lastType(spatial_dimension, ghost_type1);
UInt nb_quads = 0;
Real sum_nb_neig = 0;
UInt max_nb_neig = 0;
UInt min_nb_neig = std::numeric_limits<UInt>::max();
for(; it != last_type; ++it) {
Vector<UInt> & nb_neighor = nb_neighbors(*it, ghost_type1);
Vector<UInt>::iterator<UInt> nb_neigh = nb_neighor.begin();
Vector<UInt>::iterator<UInt> end_neigh = nb_neighor.end();
for (; nb_neigh != end_neigh; ++nb_neigh, ++nb_quads) {
UInt nb = *nb_neigh;
sum_nb_neig += nb;
max_nb_neig = std::max(max_nb_neig, nb);
min_nb_neig = std::min(min_nb_neig, nb);
}
}
comm.allReduce(&nb_quads, 1, _so_sum);
comm.allReduce(&sum_nb_neig, 1, _so_sum);
comm.allReduce(&max_nb_neig, 1, _so_max);
comm.allReduce(&min_nb_neig, 1, _so_min);
if(prank == 0) {
pout << ghost_type2 << " ";
pout << "Nb quadrature points: " << nb_quads << std::endl;
Real mean_nb_neig = sum_nb_neig / Real(nb_quads);
pout << ghost_type2 << " ";
pout << "Average nb neighbors: " << mean_nb_neig << "(" << sum_nb_neig << ")" << std::endl;
pout << ghost_type2 << " ";
pout << "Max nb neighbors: " << max_nb_neig << std::endl;
pout << ghost_type2 << " ";
pout << "Min nb neighbors: " << min_nb_neig << std::endl;
}
}
pout.close();
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
inline UInt MaterialNonLocal<spatial_dimension, WeightFunction>::getNbDataForElements(const Vector<Element> & elements,
SynchronizationTag tag) const {
UInt nb_quadrature_points = this->getModel().getNbQuadraturePoints(elements);
UInt size = 0;
if(tag == _gst_mnl_for_average) {
typename std::map<ID, NonLocalVariable>::const_iterator it = non_local_variables.begin();
typename std::map<ID, NonLocalVariable>::const_iterator end = non_local_variables.end();
for(;it != end; ++it) {
const NonLocalVariable & non_local_variable = it->second;
size += non_local_variable.non_local_variable_nb_component * sizeof(Real) * nb_quadrature_points;
}
}
size += weight_func->getNbDataForElements(elements, tag);
return size;
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
inline void MaterialNonLocal<spatial_dimension, WeightFunction>::packElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag) const {
if(tag == _gst_mnl_for_average) {
typename std::map<ID, NonLocalVariable>::const_iterator it = non_local_variables.begin();
typename std::map<ID, NonLocalVariable>::const_iterator end = non_local_variables.end();
for(;it != end; ++it) {
const NonLocalVariable & non_local_variable = it->second;
this->packElementDataHelper(*non_local_variable.local_variable,
buffer, elements);
}
}
weight_func->packElementData(buffer, elements, tag);
}
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
inline void MaterialNonLocal<spatial_dimension, WeightFunction>::unpackElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag) {
if(tag == _gst_mnl_for_average) {
typename std::map<ID, NonLocalVariable>::iterator it = non_local_variables.begin();
typename std::map<ID, NonLocalVariable>::iterator end = non_local_variables.end();
for(;it != end; ++it) {
NonLocalVariable & non_local_variable = it->second;
this->unpackElementDataHelper(*non_local_variable.local_variable,
buffer, elements);
}
}
weight_func->unpackElementData(buffer, elements, tag);
}
/* -------------------------------------------------------------------------- */
-template<UInt spatial_dimension, template <UInt> class WeightFunction>
-inline void MaterialNonLocal<spatial_dimension, WeightFunction>::onElementsAdded(const Vector<Element> & element_list) {
- AKANTU_DEBUG_IN();
+// template<UInt spatial_dimension, template <UInt> class WeightFunction>
+// inline void MaterialNonLocal<spatial_dimension, WeightFunction>::onElementsAdded(const Vector<Element> & element_list) {
+// AKANTU_DEBUG_IN();
- Material::onElementsAdded(element_list);
+// Material::onElementsAdded(element_list, event);
- AKANTU_DEBUG_OUT();
-}
+// AKANTU_DEBUG_OUT();
+// }
/* -------------------------------------------------------------------------- */
template<UInt spatial_dimension, template <UInt> class WeightFunction>
inline void MaterialNonLocal<spatial_dimension, WeightFunction>::onElementsRemoved(const Vector<Element> & element_list,
- const ByElementTypeUInt & new_numbering) {
+ const ByElementTypeUInt & new_numbering,
+ __attribute__((unused)) const RemovedElementsEvent & event) {
AKANTU_DEBUG_IN();
- Material::onElementsRemoved(element_list, new_numbering);
+ Material::onElementsRemoved(element_list, new_numbering, event);
pair_type::const_iterator first_pair_types = existing_pairs[1].begin();
pair_type::const_iterator last_pair_types = existing_pairs[1].end();
// Renumber element to keep
for (; first_pair_types != last_pair_types; ++first_pair_types) {
ElementType type2 = first_pair_types->second;
GhostType ghost_type2 = _ghost;
UInt nb_quad2 = this->model->getFEM().getNbQuadraturePoints(type2);
Vector<UInt> & pairs =
pair_list(first_pair_types->first, _not_ghost)(first_pair_types->second, ghost_type2);
Vector<UInt>::iterator< types::Vector<UInt> > first_pair = pairs.begin(2);
Vector<UInt>::iterator< types::Vector<UInt> > last_pair = pairs.end(2);
for(;first_pair != last_pair; ++first_pair) {
UInt _q2 = (*first_pair)(1);
const Vector<UInt> & renumbering = new_numbering(type2, ghost_type2);
UInt el = _q2 / nb_quad2;
UInt new_el = renumbering(el);
AKANTU_DEBUG_ASSERT(new_el != UInt(-1), "A local quad as been removed instead f just renumbered");
(*first_pair)(1) = new_el * nb_quad2 + _q2 % nb_quad2;
}
}
AKANTU_DEBUG_OUT();
}
diff --git a/src/model/solid_mechanics/solid_mechanics_model.cc b/src/model/solid_mechanics/solid_mechanics_model.cc
index e8e050c76..759a50a13 100644
--- a/src/model/solid_mechanics/solid_mechanics_model.cc
+++ b/src/model/solid_mechanics/solid_mechanics_model.cc
@@ -1,1398 +1,1394 @@
/**
* @file solid_mechanics_model.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Jul 27 18:15:37 2010
*
* @brief Implementation of the SolidMechanicsModel class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "aka_math.hh"
#include "aka_common.hh"
#include "solid_mechanics_model.hh"
#include "integration_scheme_2nd_order.hh"
#include "static_communicator.hh"
#include "dof_synchronizer.hh"
#include <cmath>
#ifdef AKANTU_USE_MUMPS
#include "solver_mumps.hh"
#endif
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
/**
* A solid mechanics model need a mesh and a dimension to be created. the model
* by it self can not do a lot, the good init functions should be called in
* order to configure the model depending on what we want to do.
*
* @param mesh mesh representing the model we want to simulate
* @param dim spatial dimension of the problem, if dim = 0 (default value) the
* dimension of the problem is assumed to be the on of the mesh
* @param id an id to identify the model
*/
SolidMechanicsModel::SolidMechanicsModel(Mesh & mesh,
UInt dim,
const ID & id,
const MemoryID & memory_id) :
Model(mesh, id, memory_id), Dumpable<DumperParaview>(id),
time_step(NAN), f_m2a(1.0),
mass_matrix(NULL),
velocity_damping_matrix(NULL),
stiffness_matrix(NULL),
jacobian_matrix(NULL),
//element_material("element_material", id),
element_index_by_material("element index by material", id),
integrator(NULL),
increment_flag(false), solver(NULL),
spatial_dimension(dim) {
AKANTU_DEBUG_IN();
createSynchronizerRegistry(this);
if (spatial_dimension == 0) spatial_dimension = mesh.getSpatialDimension();
registerFEMObject<MyFEMType>("SolidMechanicsFEM", mesh, spatial_dimension);
this->displacement = NULL;
this->mass = NULL;
this->velocity = NULL;
this->acceleration = NULL;
this->force = NULL;
this->residual = NULL;
this->boundary = NULL;
this->increment = NULL;
this->increment_acceleration = NULL;
this->dof_synchronizer = NULL;
materials.clear();
mesh.registerEventHandler(*this);
addDumpMesh(mesh, spatial_dimension, _not_ghost, _ek_regular);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
SolidMechanicsModel::~SolidMechanicsModel() {
AKANTU_DEBUG_IN();
std::vector<Material *>::iterator mat_it;
for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
delete *mat_it;
}
materials.clear();
delete integrator;
if(solver) delete solver;
if(mass_matrix) delete mass_matrix;
if(velocity_damping_matrix) delete velocity_damping_matrix;
if(stiffness_matrix && stiffness_matrix != jacobian_matrix)
delete stiffness_matrix;
if(jacobian_matrix) delete jacobian_matrix;
if(dof_synchronizer) delete dof_synchronizer;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/* Initialisation */
/* -------------------------------------------------------------------------- */
/**
* This function groups many of the initialization in on function. For most of
* basics case the function should be enough. The functions initialize the
* model, the internal vectors, set them to 0, and depending on the parameters
* it also initialize the explicit or implicit solver.
*
* @param material_file the file containing the materials to use
* @param method the analysis method wanted. See the akantu::AnalysisMethod for
* the different possibilites
*/
void SolidMechanicsModel::initFull(std::string material_file,
AnalysisMethod analysis_method) {
method = analysis_method;
// initialize the model
initModel();
// initialize the vectors
initVectors();
// set the initial condition to 0
force->clear();
velocity->clear();
acceleration->clear();
displacement->clear();
// initialize pcb
if(pbc_pair.size()!=0)
initPBC();
// initialize the time integration schemes
switch(method) {
case _explicit_dynamic:
initExplicit();
break;
case _implicit_dynamic:
initImplicit(true);
break;
case _static:
initImplicit(false);
break;
}
// initialize the materials
if(material_file != "") {
readMaterials(material_file);
initMaterials();
}
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::initParallel(MeshPartition * partition,
DataAccessor * data_accessor) {
AKANTU_DEBUG_IN();
if (data_accessor == NULL) data_accessor = this;
synch_parallel = &createParallelSynch(partition,data_accessor);
synch_registry->registerSynchronizer(*synch_parallel, _gst_material_id);
synch_registry->registerSynchronizer(*synch_parallel, _gst_smm_mass);
// synch_registry->registerSynchronizer(synch_parallel, _gst_smm_for_strain);
synch_registry->registerSynchronizer(*synch_parallel, _gst_smm_stress);
synch_registry->registerSynchronizer(*synch_parallel, _gst_smm_boundary);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::initFEMBoundary(bool create_surface) {
if(create_surface)
MeshUtils::buildFacets(mesh);
FEM & fem_boundary = getFEMBoundary();
fem_boundary.initShapeFunctions();
fem_boundary.computeNormalsOnControlPoints();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::initExplicit() {
AKANTU_DEBUG_IN();
method = _explicit_dynamic;
if (integrator) delete integrator;
integrator = new CentralDifference();
UInt nb_nodes = acceleration->getSize();
UInt nb_degree_of_freedom = acceleration->getNbComponent();
std::stringstream sstr; sstr << id << ":increment_acceleration";
increment_acceleration = &(alloc<Real>(sstr.str(), nb_nodes, nb_degree_of_freedom, Real()));
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/**
* Allocate all the needed vectors. By default their are not necessarily set to
* 0
*
*/
void SolidMechanicsModel::initVectors() {
AKANTU_DEBUG_IN();
UInt nb_nodes = mesh.getNbNodes();
std::stringstream sstr_disp; sstr_disp << id << ":displacement";
std::stringstream sstr_mass; sstr_mass << id << ":mass";
std::stringstream sstr_velo; sstr_velo << id << ":velocity";
std::stringstream sstr_acce; sstr_acce << id << ":acceleration";
std::stringstream sstr_forc; sstr_forc << id << ":force";
std::stringstream sstr_resi; sstr_resi << id << ":residual";
std::stringstream sstr_boun; sstr_boun << id << ":boundary";
displacement = &(alloc<Real>(sstr_disp.str(), nb_nodes, spatial_dimension, REAL_INIT_VALUE));
mass = &(alloc<Real>(sstr_mass.str(), nb_nodes, spatial_dimension, 0));
velocity = &(alloc<Real>(sstr_velo.str(), nb_nodes, spatial_dimension, REAL_INIT_VALUE));
acceleration = &(alloc<Real>(sstr_acce.str(), nb_nodes, spatial_dimension, REAL_INIT_VALUE));
force = &(alloc<Real>(sstr_forc.str(), nb_nodes, spatial_dimension, REAL_INIT_VALUE));
residual = &(alloc<Real>(sstr_resi.str(), nb_nodes, spatial_dimension, REAL_INIT_VALUE));
boundary = &(alloc<bool>(sstr_boun.str(), nb_nodes, spatial_dimension, false));
std::stringstream sstr_curp; sstr_curp << id << ":current_position";
current_position = &(alloc<Real>(sstr_curp.str(), 0, spatial_dimension, REAL_INIT_VALUE));
for(UInt g = _not_ghost; g <= _ghost; ++g) {
GhostType gt = (GhostType) g;
Mesh::type_iterator it = mesh.firstType(spatial_dimension, gt, _ek_not_defined);
Mesh::type_iterator end = mesh.lastType(spatial_dimension, gt, _ek_not_defined);
for(; it != end; ++it) {
UInt nb_element = mesh.getNbElement(*it, gt);
element_index_by_material.alloc(nb_element, 2, *it, gt);
}
}
dof_synchronizer = new DOFSynchronizer(mesh, spatial_dimension);
dof_synchronizer->initLocalDOFEquationNumbers();
dof_synchronizer->initGlobalDOFEquationNumbers();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/**
* Initialize the model,basically it pre-compute the shapes, shapes derivatives
* and jacobian
*
*/
void SolidMechanicsModel::initModel() {
/// \todo add the current position as a parameter to initShapeFunctions for
/// large deformation
getFEM().initShapeFunctions(_not_ghost);
getFEM().initShapeFunctions(_ghost);
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::initPBC() {
Model::initPBC();
registerPBCSynchronizer();
// as long as there are ones on the diagonal of the matrix, we can put boudandary true for slaves
std::map<UInt, UInt>::iterator it = pbc_pair.begin();
std::map<UInt, UInt>::iterator end = pbc_pair.end();
UInt dim = mesh.getSpatialDimension();
while(it != end) {
for (UInt i=0; i<dim; ++i)
(*boundary)((*it).first,i) = true;
++it;
}
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::registerPBCSynchronizer(){
PBCSynchronizer * synch = new PBCSynchronizer(pbc_pair);
synch_registry->registerSynchronizer(*synch, _gst_smm_uv);
synch_registry->registerSynchronizer(*synch, _gst_smm_mass);
synch_registry->registerSynchronizer(*synch, _gst_smm_res);
changeLocalEquationNumberforPBC(pbc_pair, mesh.getSpatialDimension());
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::updateCurrentPosition() {
AKANTU_DEBUG_IN();
UInt nb_nodes = mesh.getNbNodes();
current_position->resize(nb_nodes);
Real * current_position_val = current_position->values;
Real * position_val = mesh.getNodes().values;
Real * displacement_val = displacement->values;
/// compute current_position = initial_position + displacement
memcpy(current_position_val, position_val, nb_nodes*spatial_dimension*sizeof(Real));
for (UInt n = 0; n < nb_nodes*spatial_dimension; ++n) {
*current_position_val++ += *displacement_val++;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::initializeUpdateResidualData() {
AKANTU_DEBUG_IN();
UInt nb_nodes = mesh.getNbNodes();
residual->resize(nb_nodes);
/// copy the forces in residual for boundary conditions
memcpy(residual->values, force->values, nb_nodes*spatial_dimension*sizeof(Real));
// start synchronization
synch_registry->asynchronousSynchronize(_gst_smm_uv);
synch_registry->waitEndSynchronize(_gst_smm_uv);
updateCurrentPosition();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/* Explicit scheme */
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
/**
* This function compute the second member of the motion equation. That is to
* say the sum of forces @f$ r = F_{ext} - F_{int} @f$. @f$ F_{ext} @f$ is given
* by the user in the force vector, and @f$ F_{int} @f$ is computed as @f$
* F_{int} = \int_{\Omega} N \sigma d\Omega@f$
*
*/
void SolidMechanicsModel::updateResidual(bool need_initialize) {
AKANTU_DEBUG_IN();
// f = f_ext - f_int
// f = f_ext
if (need_initialize) initializeUpdateResidualData();
- if (method == _explicit_dynamic) {
-
- // communicate the displacement
- // synch_registry->asynchronousSynchronize(_gst_smm_for_strain);
+ // communicate the displacement
+ // synch_registry->asynchronousSynchronize(_gst_smm_for_strain);
- std::vector<Material *>::iterator mat_it;
+ std::vector<Material *>::iterator mat_it;
- // call update residual on each local elements
- for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
- Material & mat = **mat_it;
- mat.computeAllStresses(_not_ghost);
- }
+ // call update residual on each local elements
+ for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
+ Material & mat = **mat_it;
+ mat.computeAllStresses(_not_ghost);
+ }
#ifdef AKANTU_DAMAGE_NON_LOCAL
- /* ------------------------------------------------------------------------ */
- /* Computation of the non local part */
- synch_registry->asynchronousSynchronize(_gst_mnl_for_average);
+ /* ------------------------------------------------------------------------ */
+ /* Computation of the non local part */
+ synch_registry->asynchronousSynchronize(_gst_mnl_for_average);
- for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
- Material & mat = **mat_it;
- mat.computeAllNonLocalStresses(_not_ghost);
- }
+ for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
+ Material & mat = **mat_it;
+ mat.computeAllNonLocalStresses(_not_ghost);
+ }
- synch_registry->waitEndSynchronize(_gst_mnl_for_average);
+ synch_registry->waitEndSynchronize(_gst_mnl_for_average);
- for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
- Material & mat = **mat_it;
- mat.computeAllNonLocalStresses(_ghost);
- }
+ for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
+ Material & mat = **mat_it;
+ mat.computeAllNonLocalStresses(_ghost);
+ }
#endif
- /* ------------------------------------------------------------------------ */
- /* assembling the forces internal */
- // communicate the strain
- synch_registry->asynchronousSynchronize(_gst_smm_stress);
-
- for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
- Material & mat = **mat_it;
- mat.assembleResidual(_not_ghost);
- }
-
- // finalize communications
- synch_registry->waitEndSynchronize(_gst_smm_stress);
- // synch_registry->waitEndSynchronize(_gst_smm_for_strain);
+ /* ------------------------------------------------------------------------ */
+ /* assembling the forces internal */
+ // communicate the strain
+ synch_registry->asynchronousSynchronize(_gst_smm_stress);
- for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
- Material & mat = **mat_it;
- mat.assembleResidual(_ghost);
- }
- } else {
- Vector<Real> * Ku = new Vector<Real>(*displacement, true, "Ku");
- *Ku *= *stiffness_matrix;
- *residual -= *Ku;
+ for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
+ Material & mat = **mat_it;
+ mat.assembleResidual(_not_ghost);
+ }
- // updateSupportReaction();
+ // finalize communications
+ synch_registry->waitEndSynchronize(_gst_smm_stress);
+ // synch_registry->waitEndSynchronize(_gst_smm_for_strain);
- delete Ku;
+ for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
+ Material & mat = **mat_it;
+ mat.assembleResidual(_ghost);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::computeStresses() {
if (method == _explicit_dynamic) {
// start synchronization
synch_registry->asynchronousSynchronize(_gst_smm_uv);
synch_registry->waitEndSynchronize(_gst_smm_uv);
// compute stresses on all local elements for each materials
std::vector<Material *>::iterator mat_it;
for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
Material & mat = **mat_it;
mat.computeAllStresses(_not_ghost);
}
/* ------------------------------------------------------------------------ */
#ifdef AKANTU_DAMAGE_NON_LOCAL
/* Computation of the non local part */
synch_registry->asynchronousSynchronize(_gst_mnl_for_average);
for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
Material & mat = **mat_it;
mat.computeAllNonLocalStresses(_not_ghost);
}
synch_registry->waitEndSynchronize(_gst_mnl_for_average);
for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
Material & mat = **mat_it;
mat.computeAllNonLocalStresses(_ghost);
}
#endif
} else {
std::vector<Material *>::iterator mat_it;
for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
Material & mat = **mat_it;
mat.computeAllStressesFromTangentModuli(_not_ghost);
}
}
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::updateResidualInternal() {
AKANTU_DEBUG_IN();
// f = f_ext - f_int - Ma - Cv = r - Ma - Cv;
if(method != _static) {
// f -= Ma
if(mass_matrix) {
// if full mass_matrix
Vector<Real> * Ma = new Vector<Real>(*acceleration, true, "Ma");
*Ma *= *mass_matrix;
/// \todo check unit conversion for implicit dynamics
// *Ma /= f_m2a
*residual -= *Ma;
delete Ma;
} else {
// else lumped mass
UInt nb_nodes = acceleration->getSize();
UInt nb_degree_of_freedom = acceleration->getNbComponent();
Real * mass_val = mass->values;
Real * accel_val = acceleration->values;
Real * res_val = residual->values;
bool * boundary_val = boundary->values;
for (UInt n = 0; n < nb_nodes * nb_degree_of_freedom; ++n) {
if(!(*boundary_val)) {
*res_val -= *accel_val * *mass_val /f_m2a;
}
boundary_val++;
res_val++;
mass_val++;
accel_val++;
}
}
// f -= Cv
if(velocity_damping_matrix) {
Vector<Real> * Cv = new Vector<Real>(*velocity);
*Cv *= *velocity_damping_matrix;
*residual -= *Cv;
delete Cv;
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::updateAcceleration() {
AKANTU_DEBUG_IN();
updateResidualInternal();
if(method == _explicit_dynamic && !mass_matrix) {
/* residual = residual_{n+1} - M * acceleration_n therefore
solution = increment acceleration not acceleration */
solveLumped(*increment_acceleration,
*mass,
*residual,
*boundary,
f_m2a);
} else {
solveDynamic<NewmarkBeta::_acceleration_corrector>(*increment_acceleration);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::solveLumped(Vector<Real> & x,
const Vector<Real> & A,
const Vector<Real> & b,
const Vector<bool> & boundary,
Real alpha) {
Real * A_val = A.storage();
Real * b_val = b.storage();
Real * x_val = x.storage();
bool * boundary_val = boundary.storage();
UInt nb_degrees_of_freedom = x.getSize() * x.getNbComponent();
for (UInt n = 0; n < nb_degrees_of_freedom; ++n) {
if(!(*boundary_val)) {
*x_val = alpha * (*b_val / *A_val);
}
x_val++;
A_val++;
b_val++;
boundary_val++;
}
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::explicitPred() {
AKANTU_DEBUG_IN();
if(increment_flag) {
memcpy(increment->values,
displacement->values,
displacement->getSize()*displacement->getNbComponent()*sizeof(Real));
}
AKANTU_DEBUG_ASSERT(integrator,"itegrator should have been allocated: "
<< "have called initExplicit ? "
<< "or initImplicit ?");
integrator->integrationSchemePred(time_step,
*displacement,
*velocity,
*acceleration,
*boundary);
if(increment_flag) {
Real * inc_val = increment->values;
Real * dis_val = displacement->values;
UInt nb_nodes = displacement->getSize();
for (UInt n = 0; n < nb_nodes; ++n) {
*inc_val = *dis_val - *inc_val;
inc_val++;
dis_val++;
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::explicitCorr() {
AKANTU_DEBUG_IN();
integrator->integrationSchemeCorrAccel(time_step,
*displacement,
*velocity,
*acceleration,
*boundary,
*increment_acceleration);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/* Implicit scheme */
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
/**
* Initialize the solver and create the sparse matrices needed.
*
*/
void SolidMechanicsModel::initSolver(__attribute__((unused)) SolverOptions & options) {
#if !defined(AKANTU_USE_MUMPS) // or other solver in the future \todo add AKANTU_HAS_SOLVER in CMake
AKANTU_DEBUG_ERROR("You should at least activate one solver.");
#else
UInt nb_global_node = mesh.getNbGlobalNodes();
std::stringstream sstr; sstr << id << ":jacobian_matrix";
jacobian_matrix = new SparseMatrix(nb_global_node * spatial_dimension, _symmetric,
spatial_dimension, sstr.str(), memory_id);
- // dof_synchronizer->initGlobalDOFEquationNumbers();
+
jacobian_matrix->buildProfile(mesh, *dof_synchronizer);
+ std::stringstream sstr_sti; sstr_sti << id << ":stiffness_matrix";
+ stiffness_matrix = new SparseMatrix(*jacobian_matrix, sstr_sti.str(), memory_id);
+
#ifdef AKANTU_USE_MUMPS
std::stringstream sstr_solv; sstr_solv << id << ":solver";
solver = new SolverMumps(*jacobian_matrix, sstr_solv.str());
dof_synchronizer->initScatterGatherCommunicationScheme();
#else
AKANTU_DEBUG_ERROR("You should at least activate one solver.");
#endif //AKANTU_USE_MUMPS
solver->initialize(options);
#endif //AKANTU_HAS_SOLVER
}
/* -------------------------------------------------------------------------- */
/**
* Initialize the implicit solver, either for dynamic or static cases,
*
* @param dynamic
*/
void SolidMechanicsModel::initImplicit(bool dynamic, SolverOptions & solver_options) {
AKANTU_DEBUG_IN();
method = dynamic ? _implicit_dynamic : _static;
initSolver(solver_options);
if(method == _implicit_dynamic) {
if(integrator) delete integrator;
integrator = new TrapezoidalRule2();
}
- std::stringstream sstr; sstr << id << ":stiffness_matrix";
- stiffness_matrix = new SparseMatrix(*jacobian_matrix, sstr.str(), memory_id);
- // } else {
- // stiffness_matrix = jacobian_matrix;
- // }
-
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::initialAcceleration() {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_INFO("Solving Ma = f");
Solver * acc_solver = NULL;
std::stringstream sstr; sstr << id << ":tmp_mass_matrix";
SparseMatrix * tmp_mass = new SparseMatrix(*mass_matrix, sstr.str(), memory_id);
#ifdef AKANTU_USE_MUMPS
std::stringstream sstr_solver; sstr << id << ":solver_mass_matrix";
acc_solver = new SolverMumps(*mass_matrix, sstr_solver.str());
dof_synchronizer->initScatterGatherCommunicationScheme();
#else
AKANTU_DEBUG_ERROR("You should at least activate one solver.");
#endif //AKANTU_USE_MUMPS
acc_solver->initialize();
tmp_mass->applyBoundary(*boundary);
acc_solver->setRHS(*residual);
acc_solver->solve(*acceleration);
delete acc_solver;
delete tmp_mass;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::assembleStiffnessMatrix() {
AKANTU_DEBUG_IN();
stiffness_matrix->clear();
// call compute stiffness matrix on each local elements
std::vector<Material *>::iterator mat_it;
for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
(*mat_it)->assembleStiffnessMatrix(_not_ghost);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::solveDynamic() {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(stiffness_matrix != NULL,
"You should first initialize the implicit solver and assemble the stiffness matrix");
AKANTU_DEBUG_ASSERT(mass_matrix != NULL,
"You should first initialize the implicit solver and assemble the mass matrix");
if(!increment) setIncrementFlagOn();
updateResidualInternal();
solveDynamic<NewmarkBeta::_displacement_corrector>(*increment);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::solveStatic() {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_INFO("Solving Ku = f");
AKANTU_DEBUG_ASSERT(stiffness_matrix != NULL,
"You should first initialize the implicit solver and assemble the stiffness matrix");
UInt nb_nodes = displacement->getSize();
UInt nb_degree_of_freedom = displacement->getNbComponent();
// if(method != _static)
jacobian_matrix->copyContent(*stiffness_matrix);
-
jacobian_matrix->applyBoundary(*boundary);
solver->setRHS(*residual);
if(!increment) setIncrementFlagOn();
solver->solve(*increment);
Real * increment_val = increment->values;
Real * displacement_val = displacement->values;
bool * boundary_val = boundary->values;
for (UInt n = 0; n < nb_nodes * nb_degree_of_freedom; ++n) {
if(!(*boundary_val)) {
*displacement_val += *increment_val;
}
displacement_val++;
boundary_val++;
increment_val++;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
bool SolidMechanicsModel::testConvergenceIncrement(Real tolerance) {
Real error;
bool tmp = testConvergenceIncrement(tolerance, error);
AKANTU_DEBUG_INFO("Norm of increment : " << error);
return tmp;
}
/* -------------------------------------------------------------------------- */
bool SolidMechanicsModel::testConvergenceIncrement(Real tolerance, Real & error) {
AKANTU_DEBUG_IN();
UInt nb_nodes = displacement->getSize();
UInt nb_degree_of_freedom = displacement->getNbComponent();
error = 0;
Real norm[2] = {0., 0.};
Real * increment_val = increment->storage();
bool * boundary_val = boundary->storage();
Real * displacement_val = displacement->storage();
for (UInt n = 0; n < nb_nodes; ++n) {
bool is_local_node = mesh.isLocalOrMasterNode(n);
for (UInt d = 0; d < nb_degree_of_freedom; ++d) {
if(!(*boundary_val) && is_local_node) {
norm[0] += *increment_val * *increment_val;
norm[1] += *displacement_val * *displacement_val;
}
boundary_val++;
increment_val++;
displacement_val++;
}
}
StaticCommunicator::getStaticCommunicator().allReduce(norm, 2, _so_sum);
norm[0] = sqrt(norm[0]);
norm[1] = sqrt(norm[1]);
AKANTU_DEBUG_ASSERT(!Math::isnan(norm[0]), "Something goes wrong in the solve phase");
AKANTU_DEBUG_OUT();
error = norm[0] / norm[1];
return (error < tolerance);
}
/* -------------------------------------------------------------------------- */
bool SolidMechanicsModel::testConvergenceResidual(Real tolerance) {
Real error;
bool tmp = testConvergenceResidual(tolerance, error);
AKANTU_DEBUG_INFO("Norm of residual : " << error);
return tmp;
}
/* -------------------------------------------------------------------------- */
bool SolidMechanicsModel::testConvergenceResidual(Real tolerance, Real & norm) {
AKANTU_DEBUG_IN();
UInt nb_nodes = residual->getSize();
norm = 0;
Real * residual_val = residual->values;
bool * boundary_val = boundary->values;
for (UInt n = 0; n < nb_nodes; ++n) {
bool is_local_node = mesh.isLocalOrMasterNode(n);
if(is_local_node) {
for (UInt d = 0; d < spatial_dimension; ++d) {
if(!(*boundary_val)) {
norm += *residual_val * *residual_val;
}
boundary_val++;
residual_val++;
}
} else {
boundary_val += spatial_dimension;
residual_val += spatial_dimension;
}
}
StaticCommunicator::getStaticCommunicator().allReduce(&norm, 1, _so_sum);
norm = sqrt(norm);
AKANTU_DEBUG_ASSERT(!Math::isnan(norm), "Something goes wrong in the solve phase");
AKANTU_DEBUG_OUT();
return (norm < tolerance);
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::implicitPred() {
AKANTU_DEBUG_IN();
integrator->integrationSchemePred(time_step,
*displacement,
*velocity,
*acceleration,
*boundary);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::implicitCorr() {
AKANTU_DEBUG_IN();
integrator->integrationSchemeCorrDispl(time_step,
*displacement,
*velocity,
*acceleration,
*boundary,
*increment);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/* Information */
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::synchronizeBoundaries() {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(synch_registry,"Synchronizer registry was not initialized."
<< " Did you call initParallel?");
synch_registry->synchronize(_gst_smm_boundary);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::synchronizeResidual() {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(synch_registry,"Synchronizer registry was not initialized."
<< " Did you call initPBC?");
synch_registry->synchronize(_gst_smm_res);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::setIncrementFlagOn() {
AKANTU_DEBUG_IN();
if(!increment) {
UInt nb_nodes = mesh.getNbNodes();
std::stringstream sstr_inc; sstr_inc << id << ":increment";
increment = &(alloc<Real>(sstr_inc.str(), nb_nodes, spatial_dimension, 0));
}
increment_flag = true;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
Real SolidMechanicsModel::getStableTimeStep() {
AKANTU_DEBUG_IN();
Real min_dt = getStableTimeStep(_not_ghost);
/// reduction min over all processors
StaticCommunicator::getStaticCommunicator().allReduce(&min_dt, 1, _so_min);
AKANTU_DEBUG_OUT();
return min_dt;
}
/* -------------------------------------------------------------------------- */
Real SolidMechanicsModel::getStableTimeStep(const GhostType & ghost_type) {
AKANTU_DEBUG_IN();
Material ** mat_val = &(materials.at(0));
Real min_dt = std::numeric_limits<Real>::max();
- Real * coord = mesh.getNodes().values;
- Real * disp_val = displacement->values;
+ updateCurrentPosition();
Element elem;
elem.ghost_type = ghost_type;
+ elem.kind = _ek_regular;
Mesh::type_iterator it = mesh.firstType(spatial_dimension, ghost_type);
Mesh::type_iterator end = mesh.lastType(spatial_dimension, ghost_type);
for(; it != end; ++it) {
elem.type = *it;
UInt nb_nodes_per_element = mesh.getNbNodesPerElement(*it);
UInt nb_element = mesh.getNbElement(*it);
- UInt * conn = mesh.getConnectivity(*it, ghost_type).storage();
- UInt * elem_mat_val = element_index_by_material(*it, ghost_type).storage();
+ Vector<UInt>::iterator< types::Vector<UInt> > eibm =
+ element_index_by_material(*it, ghost_type).begin(2);
- Real * u = new Real[nb_nodes_per_element*spatial_dimension];
+ Vector<Real> X(0, nb_nodes_per_element*spatial_dimension);
+ FEM::extractNodalToElementField(mesh, *current_position,
+ X, *it, _not_ghost);
- for (UInt el = 0; el < nb_element; ++el) {
- UInt el_offset = el * nb_nodes_per_element;
- elem.element = el;
- for (UInt n = 0; n < nb_nodes_per_element; ++n) {
- UInt offset_conn = conn[el_offset + n] * spatial_dimension;
- memcpy(u + n * spatial_dimension,
- coord + offset_conn,
- spatial_dimension * sizeof(Real));
-
- for (UInt i = 0; i < spatial_dimension; ++i) {
- u[n * spatial_dimension + i] += disp_val[offset_conn + i];
- }
- }
+ Vector<Real>::iterator< types::Matrix<Real> > X_el =
+ X.begin(spatial_dimension, nb_nodes_per_element);
- Real el_size = getFEM().getElementInradius(u, *it);
- Real el_dt = mat_val[elem_mat_val[2*el+1]]->getStableTimeStep(el_size, elem);
- min_dt = min_dt > el_dt ? el_dt : min_dt;
+ for (UInt el = 0; el < nb_element; ++el, ++X_el, ++eibm) {
+ elem.element = el;
+ Real el_size = getFEM().getElementInradius(*X_el, *it);
+ Real el_dt = mat_val[(*eibm)(1)]->getStableTimeStep(el_size, elem);
+ min_dt = std::min(min_dt, el_dt);
}
-
- delete [] u;
}
AKANTU_DEBUG_OUT();
return min_dt;
}
/* -------------------------------------------------------------------------- */
Real SolidMechanicsModel::getPotentialEnergy() {
AKANTU_DEBUG_IN();
Real energy = 0.;
/// call update residual on each local elements
std::vector<Material *>::iterator mat_it;
for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
energy += (*mat_it)->getPotentialEnergy();
}
/// reduction sum over all processors
StaticCommunicator::getStaticCommunicator().allReduce(&energy, 1, _so_sum);
AKANTU_DEBUG_OUT();
return energy;
}
/* -------------------------------------------------------------------------- */
Real SolidMechanicsModel::getKineticEnergy() {
AKANTU_DEBUG_IN();
Real ekin = 0.;
UInt nb_nodes = mesh.getNbNodes();
Real * vel_val = velocity->values;
Real * mass_val = mass->values;
for (UInt n = 0; n < nb_nodes; ++n) {
Real mv2 = 0;
bool is_local_node = mesh.isLocalOrMasterNode(n);
bool is_not_pbc_slave_node = !getIsPBCSlaveNode(n);
bool count_node = is_local_node && is_not_pbc_slave_node;
for (UInt i = 0; i < spatial_dimension; ++i) {
if (count_node)
mv2 += *vel_val * *vel_val * *mass_val;
vel_val++;
mass_val++;
}
ekin += mv2;
}
StaticCommunicator::getStaticCommunicator().allReduce(&ekin, 1, _so_sum);
AKANTU_DEBUG_OUT();
return ekin * .5;
}
/* -------------------------------------------------------------------------- */
Real SolidMechanicsModel::getExternalWork() {
AKANTU_DEBUG_IN();
Real * velo = velocity->storage();
Real * forc = force->storage();
Real * resi = residual->storage();
bool * boun = boundary->storage();
Real work = 0.;
UInt nb_nodes = mesh.getNbNodes();
for (UInt n = 0; n < nb_nodes; ++n) {
bool is_local_node = mesh.isLocalOrMasterNode(n);
bool is_not_pbc_slave_node = !getIsPBCSlaveNode(n);
bool count_node = is_local_node && is_not_pbc_slave_node;
for (UInt i = 0; i < spatial_dimension; ++i) {
if (count_node) {
if(*boun)
work -= *resi * *velo * time_step;
else
work += *forc * *velo * time_step;
}
++velo;
++forc;
++resi;
++boun;
}
}
StaticCommunicator::getStaticCommunicator().allReduce(&work, 1, _so_sum);
AKANTU_DEBUG_OUT();
return work;
}
/* -------------------------------------------------------------------------- */
Real SolidMechanicsModel::getEnergy(const std::string & id) {
AKANTU_DEBUG_IN();
if (id == "kinetic") {
return getKineticEnergy();
} else if (id == "external work"){
return getExternalWork();
}
Real energy = 0.;
std::vector<Material *>::iterator mat_it;
for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
energy += (*mat_it)->getEnergy(id);
}
/// reduction sum over all processors
StaticCommunicator::getStaticCommunicator().allReduce(&energy, 1, _so_sum);
AKANTU_DEBUG_OUT();
return energy;
}
/* -------------------------------------------------------------------------- */
Real SolidMechanicsModel::getEnergy(const std::string & energy_id,
ElementType & type,
UInt index){
AKANTU_DEBUG_IN();
std::vector<Material *>::iterator mat_it;
- types::Vector<UInt> mat = element_index_by_material(type,_not_ghost).begin(2)[index];
- Real energy = materials[mat(1)]->getEnergy(energy_id,type,mat(0));
+ types::Vector<UInt> mat = element_index_by_material(type, _not_ghost).begin(2)[index];
+ Real energy = materials[mat(1)]->getEnergy(energy_id, type, mat(0));
AKANTU_DEBUG_OUT();
return energy;
}
/* -------------------------------------------------------------------------- */
-void SolidMechanicsModel::onNodesAdded(const Vector<UInt> & nodes_list) {
+void SolidMechanicsModel::onNodesAdded(const Vector<UInt> & nodes_list,
+ __attribute__((unused)) const NewNodesEvent & event) {
AKANTU_DEBUG_IN();
UInt nb_nodes = mesh.getNbNodes();
if(displacement) displacement->resize(nb_nodes);
if(mass ) mass ->resize(nb_nodes);
if(velocity ) velocity ->resize(nb_nodes);
if(acceleration) acceleration->resize(nb_nodes);
if(force ) force ->resize(nb_nodes);
if(residual ) residual ->resize(nb_nodes);
if(boundary ) boundary ->resize(nb_nodes);
if(increment_acceleration) increment_acceleration->resize(nb_nodes);
if(increment) increment->resize(nb_nodes);
delete dof_synchronizer;
dof_synchronizer = new DOFSynchronizer(mesh, spatial_dimension);
dof_synchronizer->initLocalDOFEquationNumbers();
dof_synchronizer->initGlobalDOFEquationNumbers();
std::vector<Material *>::iterator mat_it;
for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
- (*mat_it)->onNodesAdded(nodes_list);
+ (*mat_it)->onNodesAdded(nodes_list, event);
}
- if(method != _explicit_dynamic) AKANTU_DEBUG_TO_IMPLEMENT();
+ if (method != _explicit_dynamic) {
+ delete stiffness_matrix;
+ delete jacobian_matrix;
+ delete solver;
+ SolverOptions solver_options;
+ initImplicit((method == _implicit_dynamic), solver_options);
+ }
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-void SolidMechanicsModel::onElementsAdded(const Vector<Element> & element_list) {
+void SolidMechanicsModel::onElementsAdded(const Vector<Element> & element_list,
+ const NewElementsEvent & event) {
AKANTU_DEBUG_IN();
getFEM().initShapeFunctions(_not_ghost);
getFEM().initShapeFunctions(_ghost);
Vector<Element>::const_iterator<Element> it = element_list.begin();
Vector<Element>::const_iterator<Element> end = element_list.end();
/// \todo have rules to choose the correct material
- Material & mat = *materials[0];
+ UInt mat_id = 0;
+
+ UInt * mat_id_vect = NULL;
+ try {
+ const NewMaterialElementsEvent & event_mat = dynamic_cast<const NewMaterialElementsEvent &>(event);
+ mat_id_vect = event_mat.getMaterialList().storage();
+ } catch(...) { }
- for (; it != end; ++it) {
+ for (UInt el = 0; it != end; ++it, ++el) {
const Element & elem = *it;
// element_material(elem.type, elem.ghost_type).push_back(UInt(0));
+ if(mat_id_vect) mat_id = mat_id_vect[el];
+ Material & mat = *materials[mat_id];
+
UInt mat_index = mat.addElement(elem.type, elem.element, elem.ghost_type);
UInt id[2];
id[0] = mat_index; id[1] = 0;
element_index_by_material(elem.type, elem.ghost_type).push_back(id);
}
std::vector<Material *>::iterator mat_it;
for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
- (*mat_it)->onElementsAdded(element_list);
+ (*mat_it)->onElementsAdded(element_list, event);
}
if(method != _explicit_dynamic) AKANTU_DEBUG_TO_IMPLEMENT();
+ assembleMassLumped();
+
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::onElementsRemoved(const Vector<Element> & element_list,
- const ByElementTypeUInt & new_numbering) {
+ const ByElementTypeUInt & new_numbering,
+ const RemovedElementsEvent & event) {
std::cout << "NbNodes before purify " << mesh.getNbNodes() << std::endl;
// MeshUtils::purifyMesh(mesh);
std::cout << "NbNodes after purify " << mesh.getNbNodes() << std::endl;
getFEM().initShapeFunctions(_not_ghost);
getFEM().initShapeFunctions(_ghost);
std::vector<Material *>::iterator mat_it;
for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
- (*mat_it)->onElementsRemoved(element_list, new_numbering);
+ (*mat_it)->onElementsRemoved(element_list, new_numbering, event);
}
-
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::onNodesRemoved(const Vector<UInt> & element_list,
- const Vector<UInt> & new_numbering) {
+ const Vector<UInt> & new_numbering,
+ __attribute__((unused)) const RemovedNodesEvent & event) {
std::cout << "NbNodes in u before purify " << displacement->getSize() << " " << element_list.getSize() << " " << mesh.getNbNodes() << std::endl;
if(displacement) mesh.removeNodesFromVector(*displacement, new_numbering);
std::cout << "NbNodes in u after purify " << displacement->getSize() << std::endl;
if(mass ) mesh.removeNodesFromVector(*mass , new_numbering);
if(velocity ) mesh.removeNodesFromVector(*velocity , new_numbering);
if(acceleration) mesh.removeNodesFromVector(*acceleration, new_numbering);
if(force ) mesh.removeNodesFromVector(*force , new_numbering);
if(residual ) mesh.removeNodesFromVector(*residual , new_numbering);
if(boundary ) mesh.removeNodesFromVector(*boundary , new_numbering);
if(increment_acceleration) mesh.removeNodesFromVector(*increment_acceleration, new_numbering);
if(increment) mesh.removeNodesFromVector(*increment , new_numbering);
delete dof_synchronizer;
dof_synchronizer = new DOFSynchronizer(mesh, spatial_dimension);
dof_synchronizer->initLocalDOFEquationNumbers();
dof_synchronizer->initGlobalDOFEquationNumbers();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::addDumpField(const std::string & field_id) {
#ifdef AKANTU_USE_IOHELPER
#define ADD_FIELD(field, type) \
addDumpFieldToDumper(BOOST_PP_STRINGIZE(field), \
new DumperIOHelper::NodalField<type>(*field))
if(field_id == "displacement") { ADD_FIELD(displacement, Real); }
else if(field_id == "mass" ) { ADD_FIELD(mass , Real); }
else if(field_id == "velocity" ) { ADD_FIELD(velocity , Real); }
else if(field_id == "acceleration") { ADD_FIELD(acceleration, Real); }
else if(field_id == "force" ) { ADD_FIELD(force , Real); }
else if(field_id == "residual" ) { ADD_FIELD(residual , Real); }
else if(field_id == "boundary" ) { ADD_FIELD(boundary , bool); }
else if(field_id == "partitions" ) {
addDumpFieldToDumper(field_id,
new DumperIOHelper::ElementPartitionField(mesh,
spatial_dimension,
_not_ghost,
_ek_regular));
}
else if(field_id == "element_index_by_material") {
addDumpFieldToDumper(field_id,
new DumperIOHelper::ElementalField<UInt>(element_index_by_material,
spatial_dimension,
_not_ghost,
_ek_regular));
} else {
addDumpFieldToDumper(field_id,
new DumperIOHelper::HomogenizedField<Real,
DumperIOHelper::InternalMaterialField>(*this,
field_id,
spatial_dimension,
_not_ghost,
_ek_regular));
}
#undef ADD_FIELD
#endif
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::addDumpFieldVector(const std::string & field_id) {
#ifdef AKANTU_USE_IOHELPER
#define ADD_FIELD(field, type) \
DumperIOHelper::Field * f = \
new DumperIOHelper::NodalField<type>(*field); \
f->setPadding(3); \
addDumpFieldToDumper(BOOST_PP_STRINGIZE(field), f)
if(field_id == "displacement") { ADD_FIELD(displacement, Real); }
else if(field_id == "mass" ) { ADD_FIELD(mass , Real); }
else if(field_id == "velocity" ) { ADD_FIELD(velocity , Real); }
else if(field_id == "acceleration") { ADD_FIELD(acceleration, Real); }
else if(field_id == "force" ) { ADD_FIELD(force , Real); }
else if(field_id == "residual" ) { ADD_FIELD(residual , Real); }
else {
typedef DumperIOHelper::HomogenizedField<Real,
DumperIOHelper::InternalMaterialField> Field;
Field * field = new Field(*this,
field_id,
spatial_dimension,
spatial_dimension,
_not_ghost,
_ek_regular);
field->setPadding(3);
addDumpFieldToDumper(field_id, field);
}
#undef ADD_FIELD
#endif
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::addDumpFieldTensor(const std::string & field_id) {
#ifdef AKANTU_USE_IOHELPER
if(field_id == "stress") {
typedef DumperIOHelper::HomogenizedField<Real,
DumperIOHelper::InternalMaterialField,
DumperIOHelper::AvgHomogenizingFunctor,
types::Matrix,
DumperIOHelper::material_stress_field_iterator> Field;
Field * field = new Field(*this,
field_id,
spatial_dimension,
spatial_dimension,
_not_ghost,
_ek_regular);
field->setPadding(3, 3);
addDumpFieldToDumper(field_id, field);
} else if(field_id == "strain") {
typedef DumperIOHelper::HomogenizedField<Real,
DumperIOHelper::InternalMaterialField,
DumperIOHelper::AvgHomogenizingFunctor,
types::Matrix,
DumperIOHelper::material_strain_field_iterator> Field;
Field * field = new Field(*this,
field_id,
spatial_dimension,
spatial_dimension,
_not_ghost,
_ek_regular);
field->setPadding(3, 3);
addDumpFieldToDumper(field_id, field);
} else {
typedef DumperIOHelper::HomogenizedField<Real,
DumperIOHelper::InternalMaterialField,
DumperIOHelper::AvgHomogenizingFunctor,
types::Matrix> Field;
Field * field = new Field(*this,
field_id,
spatial_dimension,
spatial_dimension,
_not_ghost,
_ek_regular);
field->setPadding(3, 3);
addDumpFieldToDumper(field_id, field);
}
#endif
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModel::printself(std::ostream & stream, int indent) const {
std::string space;
for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
stream << space << "Solid Mechanics Model [" << std::endl;
stream << space << " + id : " << id << std::endl;
stream << space << " + spatial dimension : " << spatial_dimension << std::endl;
stream << space << " + fem [" << std::endl;
getFEM().printself(stream, indent + 2);
stream << space << AKANTU_INDENT << "]" << std::endl;
stream << space << " + nodals information [" << std::endl;
displacement->printself(stream, indent + 2);
mass ->printself(stream, indent + 2);
velocity ->printself(stream, indent + 2);
acceleration->printself(stream, indent + 2);
force ->printself(stream, indent + 2);
residual ->printself(stream, indent + 2);
boundary ->printself(stream, indent + 2);
stream << space << AKANTU_INDENT << "]" << std::endl;
stream << space << " + connectivity type information [" << std::endl;
element_index_by_material.printself(stream, indent + 2);
stream << space << AKANTU_INDENT << "]" << std::endl;
stream << space << "]" << std::endl;
}
/* -------------------------------------------------------------------------- */
__END_AKANTU__
diff --git a/src/model/solid_mechanics/solid_mechanics_model.hh b/src/model/solid_mechanics/solid_mechanics_model.hh
index ef2356d73..0e44cc59f 100644
--- a/src/model/solid_mechanics/solid_mechanics_model.hh
+++ b/src/model/solid_mechanics/solid_mechanics_model.hh
@@ -1,584 +1,594 @@
/**
* @file solid_mechanics_model.hh
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Tue Jul 27 18:15:37 2010
*
* @brief Model of Solid Mechanics
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_SOLID_MECHANICS_MODEL_HH__
#define __AKANTU_SOLID_MECHANICS_MODEL_HH__
/* -------------------------------------------------------------------------- */
#include <fstream>
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "model.hh"
#include "data_accessor.hh"
#include "integrator_gauss.hh"
#include "shape_lagrange.hh"
#include "aka_types.hh"
#include "integration_scheme_2nd_order.hh"
#include "solver.hh"
#include "dumpable.hh"
/* -------------------------------------------------------------------------- */
namespace akantu {
class Material;
class IntegrationScheme2ndOrder;
class Contact;
class SparseMatrix;
}
__BEGIN_AKANTU__
class SolidMechanicsModel : public Model, public DataAccessor, public MeshEventHandler, public Dumpable<DumperParaview> {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
+ class NewMaterialElementsEvent : public NewElementsEvent {
+ public:
+ AKANTU_GET_MACRO_NOT_CONST(MaterialList, material, Vector<UInt> &);
+ AKANTU_GET_MACRO(MaterialList, material, const Vector<UInt> &);
+ protected:
+ Vector<UInt> material;
+ };
typedef FEMTemplate<IntegratorGauss,ShapeLagrange> MyFEMType;
SolidMechanicsModel(Mesh & mesh,
UInt spatial_dimension = 0,
const ID & id = "solid_mechanics_model",
const MemoryID & memory_id = 0);
virtual ~SolidMechanicsModel();
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
/// initialize completely the model
virtual void initFull(std::string material_file,
AnalysisMethod method = _explicit_dynamic);
/// initialize the fem object needed for boundary conditions
void initFEMBoundary(bool create_surface = true);
/// register the tags associated with the parallel synchronizer
void initParallel(MeshPartition * partition, DataAccessor * data_accessor=NULL);
/// allocate all vectors
void initVectors();
/// initialize all internal arrays for materials
void initMaterials();
/// initialize the model
virtual void initModel();
/// init PBC synchronizer
void initPBC();
/// function to print the containt of the class
virtual void printself(std::ostream & stream, int indent = 0) const;
/* ------------------------------------------------------------------------ */
/* PBC */
/* ------------------------------------------------------------------------ */
public:
/// change the equation number for proper assembly when using PBC
void changeEquationNumberforPBC(std::map<UInt,UInt> & pbc_pair);
/// synchronize Residual for output
void synchronizeResidual();
protected:
/// register PBC synchronizer
void registerPBCSynchronizer();
/* ------------------------------------------------------------------------ */
/* Explicit */
/* ------------------------------------------------------------------------ */
public:
/// initialize the stuff for the explicit scheme
void initExplicit();
/// initialize the array needed by updateResidual (residual, current_position)
void initializeUpdateResidualData();
/// update the current position vector
void updateCurrentPosition();
/// assemble the residual for the explicit scheme
void updateResidual(bool need_initialize = true);
/**
* \brief compute the acceleration from the residual
* this function is the explicit equivalent to solveDynamic in implicit
* In the case of lumped mass just divide the residual by the mass
* In the case of not lumped mass call solveDynamic<_acceleration_corrector>
*/
void updateAcceleration();
/// Solve the system @f[ A x = \alpha b @f] with A a lumped matrix
void solveLumped(Vector<Real> & x,
const Vector<Real> & A,
const Vector<Real> & b,
const Vector<bool> & boundary,
Real alpha);
/// explicit integration predictor
void explicitPred();
/// explicit integration corrector
void explicitCorr();
/* ------------------------------------------------------------------------ */
/* Implicit */
/* ------------------------------------------------------------------------ */
public:
/// initialize the solver and the jacobian_matrix (called by initImplicit)
void initSolver(SolverOptions & options = _solver_no_options);
/// initialize the stuff for the implicit solver
void initImplicit(bool dynamic = false,
SolverOptions & solver_options = _solver_no_options);
/// solve Ma = f to get the initial acceleration
void initialAcceleration();
/// assemble the stiffness matrix
void assembleStiffnessMatrix();
/// solve @f[ A\delta u = f_ext - f_int @f] in displacement
void solveDynamic();
/// solve Ku = f
void solveStatic();
/// test the convergence (norm of increment)
bool testConvergenceIncrement(Real tolerance);
bool testConvergenceIncrement(Real tolerance, Real & error);
/// test the convergence (norm of residual)
bool testConvergenceResidual(Real tolerance);
bool testConvergenceResidual(Real tolerance, Real & error);
/// implicit time integration predictor
void implicitPred();
/// implicit time integration corrector
void implicitCorr();
protected:
/// finish the computation of residual to solve in increment
void updateResidualInternal();
/// compute the support reaction and store it in force
void updateSupportReaction();
/// compute A and solve @f[ A\delta u = f_ext - f_int @f]
template<NewmarkBeta::IntegrationSchemeCorrectorType type>
void solveDynamic(Vector<Real> & increment);
/* ------------------------------------------------------------------------ */
/* Explicit/Implicit */
/* ------------------------------------------------------------------------ */
public:
/// compute the stresses
void computeStresses();
/* ------------------------------------------------------------------------ */
/* Boundaries (solid_mechanics_model_boundary.cc) */
/* ------------------------------------------------------------------------ */
public:
class SurfaceLoadFunctor {
public:
virtual void traction(__attribute__ ((unused)) const types::Vector<Real> & position,
__attribute__ ((unused)) types::Vector<Real> & traction,
__attribute__ ((unused)) const types::Vector<Real> & normal,
__attribute__ ((unused)) Surface surface_id) {
AKANTU_DEBUG_TO_IMPLEMENT();
}
virtual void stress(__attribute__ ((unused)) const types::Vector<Real> & position,
__attribute__ ((unused)) types::RMatrix & stress,
__attribute__ ((unused)) const types::Vector<Real> & normal,
__attribute__ ((unused)) Surface surface_id) {
AKANTU_DEBUG_TO_IMPLEMENT();
}
};
/// compute force vector from a function(x,y,z) that describe stresses
void computeForcesFromFunction(BoundaryFunction in_function,
BoundaryFunctionType function_type) __attribute__((deprecated));
template<class Functor>
void computeForcesFromFunction(Functor & functor, BoundaryFunctionType function_type);
/// integrate a force on the boundary by providing a stress tensor
void computeForcesByStressTensor(const Vector<Real> & stresses,
const ElementType & type,
const GhostType & ghost_type);
/// integrate a force on the boundary by providing a traction vector
void computeForcesByTractionVector(const Vector<Real> & tractions,
const ElementType & type,
const GhostType & ghost_type);
/// synchronize the ghost element boundaries values
void synchronizeBoundaries();
/* ------------------------------------------------------------------------ */
/* Materials (solid_mechanics_model_material.cc) */
/* ------------------------------------------------------------------------ */
public:
/// register a material in the dynamic database
Material & registerNewMaterial(const ID & mat_type,
const std::string & opt_param = "");
template <typename M>
Material & registerNewCustomMaterial(const ID & mat_type,
const std::string & opt_param = "");
/// read the material files to instantiate all the materials
void readMaterials(const std::string & filename);
/// read a custom material with a keyword and class as template
template <typename M>
UInt readCustomMaterial(const std::string & filename,
const std::string & keyword);
/// Use a UIntData in the mesh to specify the material to use per element
void setMaterialIDsFromIntData(const std::string & data_name);
/* ------------------------------------------------------------------------ */
/* Mass (solid_mechanics_model_mass.cc) */
/* ------------------------------------------------------------------------ */
public:
/// assemble the lumped mass matrix
void assembleMassLumped();
/// assemble the mass matrix
void assembleMass();
protected:
/// assemble the lumped mass matrix for local and ghost elements
void assembleMassLumped(GhostType ghost_type);
void assembleMass(GhostType ghost_type);
/// fill a vector of rho
void computeRho(Vector<Real> & rho,
ElementType type,
GhostType ghost_type);
/* ------------------------------------------------------------------------ */
/* Data Accessor inherited members */
/* ------------------------------------------------------------------------ */
public:
inline virtual UInt getNbDataForElements(const Vector<Element> & elements,
SynchronizationTag tag) const;
inline virtual void packElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag) const;
inline virtual void unpackElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag);
inline virtual UInt getNbDataToPack(SynchronizationTag tag) const;
inline virtual UInt getNbDataToUnpack(SynchronizationTag tag) const;
inline virtual void packData(CommunicationBuffer & buffer,
const UInt index,
SynchronizationTag tag) const;
inline virtual void unpackData(CommunicationBuffer & buffer,
const UInt index,
SynchronizationTag tag);
protected:
inline void splitElementByMaterial(const Vector<Element> & elements,
Vector<Element> * elements_per_mat) const;
inline virtual void packBarycenter(CommunicationBuffer & buffer,
const Vector<Element> & elements) const;
inline virtual void unpackBarycenter(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag);
/* ------------------------------------------------------------------------ */
/* Mesh Event Handler inherited members */
/* ------------------------------------------------------------------------ */
protected:
- virtual void onNodesAdded (const Vector<UInt> & nodes_list);
+ virtual void onNodesAdded (const Vector<UInt> & nodes_list,
+ const NewNodesEvent & event);
virtual void onNodesRemoved(const Vector<UInt> & element_list,
- const Vector<UInt> & new_numbering);
-
- virtual void onElementsAdded (const Vector<Element> & nodes_list);
+ const Vector<UInt> & new_numbering,
+ const RemovedNodesEvent & event);
+ virtual void onElementsAdded (const Vector<Element> & nodes_list,
+ const NewElementsEvent & event);
virtual void onElementsRemoved(const Vector<Element> & element_list,
- const ByElementTypeUInt & new_numbering);
+ const ByElementTypeUInt & new_numbering,
+ const RemovedElementsEvent & event);
+ /* ------------------------------------------------------------------------ */
+ /* Dumpable interface */
+ /* ------------------------------------------------------------------------ */
public:
virtual void addDumpField(const std::string & field_id);
virtual void addDumpFieldVector(const std::string & field_id);
virtual void addDumpFieldTensor(const std::string & field_id);
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
/// return the dimension of the system space
AKANTU_GET_MACRO(SpatialDimension, spatial_dimension, UInt);
/// get the current value of the time step
AKANTU_GET_MACRO(TimeStep, time_step, Real);
/// set the value of the time step
AKANTU_SET_MACRO(TimeStep, time_step, Real);
/// get the value of the conversion from forces/ mass to acceleration
AKANTU_GET_MACRO(F_M2A, f_m2a, Real);
/// set the value of the conversion from forces/ mass to acceleration
AKANTU_SET_MACRO(F_M2A, f_m2a, Real);
/// get the SolidMechanicsModel::displacement vector
AKANTU_GET_MACRO(Displacement, *displacement, Vector<Real> &);
/// get the SolidMechanicsModel::current_position vector \warn only consistent
/// after a call to SolidMechanicsModel::updateCurrentPosition
AKANTU_GET_MACRO(CurrentPosition, *current_position, const Vector<Real> &);
/// get the SolidMechanicsModel::increment vector \warn only consistent if
/// SolidMechanicsModel::setIncrementFlagOn has been called before
AKANTU_GET_MACRO(Increment, *increment, Vector<Real> &);
/// get the lumped SolidMechanicsModel::mass vector
AKANTU_GET_MACRO(Mass, *mass, Vector<Real> &);
/// get the SolidMechanicsModel::velocity vector
AKANTU_GET_MACRO(Velocity, *velocity, Vector<Real> &);
/// get the SolidMechanicsModel::acceleration vector, updated by
/// SolidMechanicsModel::updateAcceleration
AKANTU_GET_MACRO(Acceleration, *acceleration, Vector<Real> &);
/// get the SolidMechanicsModel::force vector (boundary forces)
AKANTU_GET_MACRO(Force, *force, Vector<Real> &);
/// get the SolidMechanicsModel::residual vector, computed by
/// SolidMechanicsModel::updateResidual
AKANTU_GET_MACRO(Residual, *residual, Vector<Real> &);
/// get the SolidMechanicsModel::boundary vector
AKANTU_GET_MACRO(Boundary, *boundary, Vector<bool> &);
/// get the SolidMechnicsModel::incrementAcceleration vector
AKANTU_GET_MACRO(IncrementAcceleration, *increment_acceleration, Vector<Real> &);
/// get the value of the SolidMechanicsModel::increment_flag
AKANTU_GET_MACRO(IncrementFlag, increment_flag, bool);
/// get the SolidMechanicsModel::element_material vector corresponding to a
/// given akantu::ElementType
// AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(ElementMaterial, element_material, UInt);
// AKANTU_GET_MACRO_BY_ELEMENT_TYPE(ElementMaterial, element_material, UInt);
//AKANTU_GET_MACRO(ElementMaterial, element_material, const ByElementTypeVector<UInt> &);
/// vectors containing local material element index for each global element index
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(ElementIndexByMaterial, element_index_by_material, UInt);
AKANTU_GET_MACRO_BY_ELEMENT_TYPE(ElementIndexByMaterial, element_index_by_material, UInt);
AKANTU_GET_MACRO(ElementIndexByMaterial, element_index_by_material, const ByElementTypeVector<UInt> &);
/// get a particular material
inline Material & getMaterial(UInt mat_index);
inline const Material & getMaterial(UInt mat_index) const;
/// give the number of materials
inline UInt getNbMaterials() const { return materials.size(); };
/// give the material internal index from its id
Int getInternalIndexFromID(const ID & id) const;
/// compute the stable time step
Real getStableTimeStep();
/// compute the potential energy
Real getPotentialEnergy();
/// compute the kinetic energy
Real getKineticEnergy();
/// compute the external work (for impose displacement, the velocity should be given too)
Real getExternalWork();
/// get the energies
Real getEnergy(const std::string & energy_id);
/// compute the energy for energy
Real getEnergy(const std::string & energy_id, ElementType & type, UInt index);
/// set the Contact object
AKANTU_SET_MACRO(Contact, contact, Contact *);
/**
* @brief set the SolidMechanicsModel::increment_flag to on, the activate the
* update of the SolidMechanicsModel::increment vector
*/
void setIncrementFlagOn();
/// get the stiffness matrix
AKANTU_GET_MACRO(StiffnessMatrix, *stiffness_matrix, SparseMatrix &);
/// get the mass matrix
AKANTU_GET_MACRO(MassMatrix, *mass_matrix, SparseMatrix &);
inline FEM & getFEMBoundary(std::string name = "");
/// get integrator
AKANTU_GET_MACRO(Integrator, *integrator, const IntegrationScheme2ndOrder &);
/// get access to the internal solver
AKANTU_GET_MACRO(Solver, *solver, Solver &);
protected:
/// compute the stable time step
Real getStableTimeStep(const GhostType & ghost_type);
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
protected:
/// time step
Real time_step;
/// conversion coefficient form force/mass to acceleration
Real f_m2a;
/// displacements array
Vector<Real> * displacement;
/// lumped mass array
Vector<Real> * mass;
/// velocities array
Vector<Real> * velocity;
/// accelerations array
Vector<Real> * acceleration;
/// accelerations array
Vector<Real> * increment_acceleration;
/// forces array
Vector<Real> * force;
/// residuals array
Vector<Real> * residual;
/// boundaries array
Vector<bool> * boundary;
/// array of current position used during update residual
Vector<Real> * current_position;
/// mass matrix
SparseMatrix * mass_matrix;
/// velocity damping matrix
SparseMatrix * velocity_damping_matrix;
/// stiffness matrix
SparseMatrix * stiffness_matrix;
/// jacobian matrix @f[A = cM + dD + K@f] with @f[c = \frac{1}{\beta \Delta t^2}, d = \frac{\gamma}{\beta \Delta t} @f]
SparseMatrix * jacobian_matrix;
- // /// materials of all elements
- // ByElementTypeUInt element_material;
-
/// vectors containing local material element index for each global element index
ByElementTypeUInt element_index_by_material;
/// list of used materials
std::vector<Material *> materials;
/// integration scheme of second order used
IntegrationScheme2ndOrder * integrator;
/// increment of displacement
Vector<Real> * increment;
/// flag defining if the increment must be computed or not
bool increment_flag;
/// solver for implicit
Solver * solver;
/// object to resolve the contact
Contact * contact;
/// the spatial dimension
UInt spatial_dimension;
AnalysisMethod method;
Synchronizer * synch_parallel;
};
__END_AKANTU__
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
#include "parser.hh"
#include "material.hh"
__BEGIN_AKANTU__
#ifdef AKANTU_USE_IOHELPER
# include "dumper_iohelper_tmpl_homogenizing_field.hh"
# include "dumper_iohelper_tmpl_material_internal_field.hh"
#endif
#include "solid_mechanics_model_tmpl.hh"
#if defined (AKANTU_INCLUDE_INLINE_IMPL)
# include "solid_mechanics_model_inline_impl.cc"
#endif
/// standard output stream operator
inline std::ostream & operator <<(std::ostream & stream, const SolidMechanicsModel & _this)
{
_this.printself(stream);
return stream;
}
__END_AKANTU__
#endif /* __AKANTU_SOLID_MECHANICS_MODEL_HH__ */
diff --git a/src/model/solid_mechanics/solid_mechanics_model_cohesive.cc b/src/model/solid_mechanics/solid_mechanics_model_cohesive.cc
index 66b51125b..0c0f85746 100644
--- a/src/model/solid_mechanics/solid_mechanics_model_cohesive.cc
+++ b/src/model/solid_mechanics/solid_mechanics_model_cohesive.cc
@@ -1,764 +1,773 @@
/**
* @file solid_mechanics_model_cohesive.cc
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Tue May 08 13:01:18 2012
*
* @brief Solid mechanics model for cohesive elements
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "solid_mechanics_model_cohesive.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
SolidMechanicsModelCohesive::SolidMechanicsModelCohesive(Mesh & mesh,
UInt dim,
const ID & id,
const MemoryID & memory_id)
: SolidMechanicsModel(mesh, dim, id, memory_id),
+ type_facet(_not_defined),
mesh_facets(mesh.getSpatialDimension(),
mesh.getNodes().getID(),
id, memory_id),
stress_on_facet("stress_on_facet", id),
facet_stress(0, spatial_dimension * spatial_dimension, "facet_stress"),
fragment_to_element("fragment_to_element", id),
fragment_velocity(0, spatial_dimension, "fragment_velocity"),
fragment_center(0, spatial_dimension, "fragment_center") {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModelCohesive::updateResidual(bool need_initialize) {
AKANTU_DEBUG_IN();
if (need_initialize) initializeUpdateResidualData();
// f -= fint
std::vector<Material *>::iterator mat_it;
for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
try {
MaterialCohesive & mat = dynamic_cast<MaterialCohesive &>(**mat_it);
mat.computeTraction(_not_ghost);
- synch_registry->asynchronousSynchronize(_gst_smmc_tractions);
+ // synch_registry->asynchronousSynchronize(_gst_smmc_tractions);
- mat.assembleResidual(_not_ghost);
+ // mat.assembleResidual(_not_ghost);
- synch_registry->waitEndSynchronize(_gst_smmc_tractions);
+ // synch_registry->waitEndSynchronize(_gst_smmc_tractions);
- mat.assembleResidual(_ghost);
+ // mat.assembleResidual(_ghost);
} catch (std::bad_cast & bce) { }
}
SolidMechanicsModel::updateResidual(false);
for(mat_it = materials.begin(); mat_it != materials.end(); ++mat_it) {
try {
MaterialCohesive & mat = dynamic_cast<MaterialCohesive &>(**mat_it);
mat.computeEnergies();
} catch (std::bad_cast & bce) { }
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-void SolidMechanicsModelCohesive::initIntrinsic(std::string material_file,
- AnalysisMethod method) {
+void SolidMechanicsModelCohesive::initFull(std::string material_file,
+ AnalysisMethod method,
+ CohesiveMethod cohesive_method) {
AKANTU_DEBUG_IN();
- SolidMechanicsModel::initFull(material_file, method);
+ if (cohesive_method == _intrinsic) {
+ SolidMechanicsModel::initFull(material_file, method);
- if(material_file != "") {
- initCohesiveMaterial();
+ if(material_file != "")
+ initCohesiveMaterial();
}
+ else if (cohesive_method == _extrinsic)
+ initExtrinsic(material_file, method);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModelCohesive::initParallel(MeshPartition * partition,
DataAccessor * data_accessor) {
AKANTU_DEBUG_IN();
SolidMechanicsModel::initParallel(partition, data_accessor);
- synch_registry->registerSynchronizer(*synch_parallel, _gst_smmc_tractions);
+ // synch_registry->registerSynchronizer(*synch_parallel, _gst_smmc_tractions);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModelCohesive::initCohesiveMaterial() {
AKANTU_DEBUG_IN();
/// find the cohesive index
cohesive_index = 0;
while ((dynamic_cast<MaterialCohesive *>(materials[cohesive_index]) == NULL)
&& cohesive_index <= materials.size())
++cohesive_index;
AKANTU_DEBUG_ASSERT(cohesive_index != materials.size(),
"No cohesive materials in the material input file");
/// initialize element_index_by_material to to cohesive_index
Material ** mat_val = &(materials.at(0));
for(UInt g = _not_ghost; g <= _ghost; ++g) {
GhostType gt = (GhostType) g;
/// fill the element filters of the materials using the element_material arrays
Mesh::type_iterator it = mesh.firstType(spatial_dimension, gt, _ek_cohesive);
Mesh::type_iterator end = mesh.lastType(spatial_dimension, gt, _ek_cohesive);
for(; it != end; ++it) {
UInt nb_element = mesh.getNbElement(*it, gt);
Vector<UInt> & el_id_by_mat = element_index_by_material(*it, gt);
for (UInt el = 0; el < nb_element; ++el) {
el_id_by_mat(el, 1) = cohesive_index;
UInt index = mat_val[cohesive_index]->addElement(*it, el, gt);
el_id_by_mat(el, 0) = index;
}
}
}
/// resize cohesive material vectors
MaterialCohesive * mat_cohesive
= dynamic_cast<MaterialCohesive*>(materials[cohesive_index]);
AKANTU_DEBUG_ASSERT(mat_cohesive, "No cohesive materials in the materials vector");
mat_cohesive->resizeCohesiveVectors();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/**
* Initialize the model,basically it pre-compute the shapes, shapes derivatives
* and jacobian
*
*/
void SolidMechanicsModelCohesive::initModel() {
AKANTU_DEBUG_IN();
SolidMechanicsModel::initModel();
registerFEMObject<MyFEMCohesiveType>("CohesiveFEM", mesh, spatial_dimension);
/// assign cohesive type
- Mesh::type_iterator it = mesh_facets.firstType(spatial_dimension - 1);
- Mesh::type_iterator last = mesh_facets.lastType(spatial_dimension - 1);
+ Mesh::type_iterator it = mesh.firstType(spatial_dimension);
+ Mesh::type_iterator last = mesh.lastType(spatial_dimension);
+
+ ElementType type = _not_defined;
for (; it != last; ++it) {
- const Vector<UInt> & connectivity = mesh_facets.getConnectivity(*it);
+ const Vector<UInt> & connectivity = mesh.getConnectivity(*it);
if (connectivity.getSize() != 0) {
- type_facet = *it;
+ type = *it;
break;
}
}
+ AKANTU_DEBUG_ASSERT(type != _not_defined, "No elements in the mesh");
+
+ type_facet = Mesh::getFacetType(type);
type_cohesive = FEM::getCohesiveElementType(type_facet);
mesh.addConnectivityType(type_cohesive);
getFEM("CohesiveFEM").initShapeFunctions(_not_ghost);
getFEM("CohesiveFEM").initShapeFunctions(_ghost);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModelCohesive::initExtrinsic(std::string material_file,
AnalysisMethod method) {
AKANTU_DEBUG_IN();
MeshUtils::buildAllFacets(mesh, mesh_facets);
SolidMechanicsModel::initFull(material_file, method);
if(material_file != "") {
initCohesiveMaterial();
buildFragmentsList();
}
/// assign sigma_c to each facet
MaterialCohesive * mat_cohesive
= dynamic_cast<MaterialCohesive*>(materials[cohesive_index]);
UInt nb_facet = mesh_facets.getNbElement(type_facet);
sigma_lim.resize(nb_facet);
mat_cohesive->generateRandomDistribution(sigma_lim);
if (facets_check.getSize() < 1) {
- const Vector<Vector<Element> > & element_to_facet
+ const Vector< std::vector<Element> > & element_to_facet
= mesh_facets.getElementToSubelement(type_facet);
facets_check.resize(nb_facet);
for (UInt f = 0; f < nb_facet; ++f) {
- if (element_to_facet(f)(1) != ElementNull) facets_check(f) = true;
+ if (element_to_facet(f)[1] != ElementNull) facets_check(f) = true;
else facets_check(f) = false;
}
}
/// compute normals on facets
registerFEMObject<MyFEMType>("FacetsFEM", mesh_facets, spatial_dimension-1);
getFEM("FacetsFEM").initShapeFunctions();
getFEM("FacetsFEM").computeNormalsOnControlPoints();
/**
* @todo store tangents while computing normals instead of
* recomputing them as follows:
*/
/* ------------------------------------------------------------------------ */
const Vector<Real> & normals = getFEM("FacetsFEM").getNormalsOnQuadPoints(type_facet);
Vector<Real>::const_iterator<types::RVector> normal_it =
normals.begin(spatial_dimension);
tangents.resize(normals.getSize());
tangents.extendComponentsInterlaced(spatial_dimension, tangents.getNbComponent());
Vector<Real>::iterator<types::RVector> tangent_it =
tangents.begin(spatial_dimension);
for (UInt i = 0; i < normals.getSize(); ++i, ++normal_it, ++tangent_it) {
Math::normal2( (*normal_it).storage(), (*tangent_it).storage() );
}
/* ------------------------------------------------------------------------ */
/// compute quadrature points coordinates on facets
Vector<Real> & position = mesh.getNodes();
UInt nb_quad_per_facet = getFEM("FacetsFEM").getNbQuadraturePoints(type_facet);
UInt nb_tot_quad = nb_quad_per_facet * nb_facet;
Vector<Real> quad_facets(nb_tot_quad, spatial_dimension);
getFEM("FacetsFEM").interpolateOnQuadraturePoints(position,
quad_facets,
spatial_dimension,
type_facet);
/// compute elements quadrature point positions and build
/// element-facet quadrature points data structure
ByElementTypeReal elements_quad_facets;
Mesh::type_iterator it = mesh.firstType(spatial_dimension);
Mesh::type_iterator last = mesh.lastType(spatial_dimension);
for (; it != last; ++it) {
UInt nb_element = mesh.getNbElement(*it);
if (nb_element == 0) continue;
/// compute elements' quadrature points and list of facet
/// quadrature points positions by element
Vector<Element> & facet_to_element = mesh_facets.getSubelementToElement(*it);
UInt nb_facet_per_elem = facet_to_element.getNbComponent();
elements_quad_facets.alloc(nb_element * nb_facet_per_elem * nb_quad_per_facet,
spatial_dimension,
*it);
Vector<Real> & el_q_facet = elements_quad_facets(*it);
stress_on_facet.alloc(el_q_facet.getSize(),
spatial_dimension * spatial_dimension,
*it);
for (UInt el = 0; el < nb_element; ++el) {
for (UInt f = 0; f < nb_facet_per_elem; ++f) {
UInt global_facet = facet_to_element(el, f).element;
for (UInt q = 0; q < nb_quad_per_facet; ++q) {
for (UInt s = 0; s < spatial_dimension; ++s) {
el_q_facet(el * nb_facet_per_elem * nb_quad_per_facet
+ f * nb_quad_per_facet + q, s)
= quad_facets(global_facet * nb_quad_per_facet + q, s);
}
}
}
}
}
/// initialize the interpolation function
materials[0]->initElementalFieldInterpolation(elements_quad_facets);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModelCohesive::checkCohesiveStress() {
AKANTU_DEBUG_IN();
Vector<UInt> facet_insertion;
UInt nb_materials = materials.size();
UInt nb_quad_per_facet = getFEM("FacetsFEM").getNbQuadraturePoints(type_facet);
UInt nb_facet = mesh_facets.getNbElement(type_facet);
/// vector containing stresses coming from the two elements of each facets
facet_stress.resize(2 * nb_facet * nb_quad_per_facet);
facet_stress_count.resize(nb_facet);
facet_stress_count.clear();
/// loop over materials
for (UInt m = 0; m < nb_materials; ++m) {
if (m == cohesive_index) continue;
Mesh::type_iterator it = mesh.firstType(spatial_dimension);
Mesh::type_iterator last = mesh.lastType(spatial_dimension);
/// loop over element type
for (; it != last; ++it) {
UInt nb_element = mesh.getNbElement(*it);
if (nb_element == 0) continue;
Vector<Real> & stress_on_f = stress_on_facet(*it);
/// interpolate stress on facet quadrature points positions
materials[m]->interpolateStress(*it,
stress_on_f);
/// store the interpolated stresses on the facet_stress vector
Vector<Element> & facet_to_element = mesh_facets.getSubelementToElement(*it);
UInt nb_facet_per_elem = facet_to_element.getNbComponent();
Vector<Element>::iterator<types::Vector<Element> > facet_to_el_it =
facet_to_element.begin(nb_facet_per_elem);
Vector<Real>::iterator<types::RMatrix> stress_on_f_it =
stress_on_f.begin(spatial_dimension, spatial_dimension);
UInt sp2 = spatial_dimension * spatial_dimension;
UInt nb_quad_f_two = nb_quad_per_facet * 2;
for (UInt el = 0; el < nb_element; ++el, ++facet_to_el_it) {
for (UInt f = 0; f < nb_facet_per_elem; ++f) {
UInt global_facet = (*facet_to_el_it)(f).element;
for (UInt q = 0; q < nb_quad_per_facet; ++q, ++stress_on_f_it) {
if (facets_check(global_facet) == true) {
types::RMatrix facet_stress_local(facet_stress.storage()
+ (global_facet * nb_quad_f_two
+ q * 2
+ facet_stress_count(global_facet))
* sp2,
spatial_dimension,
spatial_dimension);
facet_stress_local = *stress_on_f_it;
}
}
facet_stress_count(global_facet) = true;
}
}
}
}
MaterialCohesive * mat_cohesive
= dynamic_cast<MaterialCohesive*>(materials[cohesive_index]);
mat_cohesive->checkInsertion(facet_stress, facet_insertion);
if (facet_insertion.getSize() != 0)
insertCohesiveElements(facet_insertion);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModelCohesive::insertCohesiveElements(const Vector<UInt> & facet_insertion) {
AKANTU_DEBUG_IN();
if(facet_insertion.getSize() == 0) return;
/// create doubled nodes and facets vector that are going to be filled later
Vector<UInt> doubled_nodes(0, 2);
Vector<UInt> doubled_facets(0, 2);
/// insert cohesive elements
MeshUtils::insertCohesiveElements(mesh,
mesh_facets,
type_facet,
facet_insertion,
doubled_nodes,
doubled_facets);
/// define facet material vector
Vector<UInt> facet_material(facet_insertion.getSize(), 1, cohesive_index);
Vector<UInt> & element_mat = getElementIndexByMaterial(type_cohesive);
UInt old_nb_cohesive_elements = element_mat.getSize();
UInt new_cohesive_elements = doubled_facets.getSize();
element_mat.resize(old_nb_cohesive_elements + new_cohesive_elements);
if (facets_check.getSize() > 0)
facets_check.resize(facets_check.getSize() + new_cohesive_elements);
for (UInt f = 0; f < doubled_facets.getSize(); ++f) {
/// assign the cohesive material to each new cohesive element
UInt nb_cohesive_elements = old_nb_cohesive_elements + f;
element_mat(nb_cohesive_elements, 1) = facet_material(f);
element_mat(nb_cohesive_elements, 0) =
materials[cohesive_index]->addElement(type_cohesive,
nb_cohesive_elements,
_not_ghost);
/// update facets_check vector
if (facets_check.getSize() > 0) {
facets_check(doubled_facets(f, 0)) = false;
facets_check(doubled_facets(f, 1)) = false;
}
}
/// update shape functions
getFEM("CohesiveFEM").initShapeFunctions(_not_ghost);
/// resize cohesive material vectors
MaterialCohesive * mat_cohesive
= dynamic_cast<MaterialCohesive*>(materials[cohesive_index]);
AKANTU_DEBUG_ASSERT(mat_cohesive, "No cohesive materials in the materials vector");
mat_cohesive->resizeCohesiveVectors();
/// update nodal values
- updateDoubledNodes(doubled_nodes);
+ this->updateDoubledNodes(doubled_nodes);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-
void SolidMechanicsModelCohesive::updateDoubledNodes(const Vector<UInt> & doubled_nodes) {
AKANTU_DEBUG_IN();
UInt nb_old_nodes = displacement->getSize();
UInt nb_new_nodes = nb_old_nodes + doubled_nodes.getSize();
displacement ->resize(nb_new_nodes);
velocity ->resize(nb_new_nodes);
acceleration ->resize(nb_new_nodes);
if (increment_acceleration)
increment_acceleration->resize(nb_new_nodes);
force ->resize(nb_new_nodes);
residual ->resize(nb_new_nodes);
boundary ->resize(nb_new_nodes);
mass ->resize(nb_new_nodes);
if (increment)
increment->resize(nb_new_nodes);
//initsolver();
/**
* @todo temporary patch, should be done in a better way that works
* always (pbc, parallel, ...)
**/
delete dof_synchronizer;
dof_synchronizer = new DOFSynchronizer(mesh, spatial_dimension);
dof_synchronizer->initLocalDOFEquationNumbers();
dof_synchronizer->initGlobalDOFEquationNumbers();
if (method != _explicit_dynamic) {
if(method == _implicit_dynamic)
delete stiffness_matrix;
delete jacobian_matrix;
delete solver;
SolverOptions solver_options;
initImplicit((method == _implicit_dynamic), solver_options);
}
for (UInt n = 0; n < doubled_nodes.getSize(); ++n) {
UInt old_node = doubled_nodes(n, 0);
UInt new_node = doubled_nodes(n, 1);
for (UInt dim = 0; dim < displacement->getNbComponent(); ++dim) {
(*displacement)(new_node, dim) = (*displacement)(old_node, dim);
}
for (UInt dim = 0; dim < velocity->getNbComponent(); ++dim) {
(*velocity)(new_node, dim) = (*velocity)(old_node, dim);
}
for (UInt dim = 0; dim < acceleration->getNbComponent(); ++dim) {
(*acceleration)(new_node, dim) = (*acceleration)(old_node, dim);
}
if (increment_acceleration) {
for (UInt dim = 0; dim < increment_acceleration->getNbComponent(); ++dim) {
(*increment_acceleration)(new_node, dim)
= (*increment_acceleration)(old_node, dim);
}
}
}
if (increment) {
for (UInt n = 0; n < doubled_nodes.getSize(); ++n) {
UInt old_node = doubled_nodes(n, 0);
UInt new_node = doubled_nodes(n, 1);
for (UInt dim = 0; dim < increment->getNbComponent(); ++dim)
(*increment)(new_node, dim) = (*increment)(old_node, dim);
}
}
assembleMassLumped();
updateCurrentPosition();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModelCohesive::buildFragmentsList() {
AKANTU_DEBUG_IN();
Mesh::type_iterator it = mesh.firstType(spatial_dimension);
Mesh::type_iterator last = mesh.lastType(spatial_dimension);
const UInt max = std::numeric_limits<UInt>::max();
for (; it != last; ++it) {
UInt nb_element = mesh.getNbElement(*it);
if (nb_element != 0) {
/// initialize the list of checked elements and the list of
/// elements to be checked
fragment_to_element.alloc(nb_element, 1, *it);
Vector<UInt> & frag_to_el = fragment_to_element(*it);
for (UInt el = 0; el < nb_element; ++el)
frag_to_el(el) = max;
}
}
- Vector<Vector<Element> > & element_to_facet
+ Vector< std::vector<Element> > & element_to_facet
= mesh_facets.getElementToSubelement(type_facet);
const Vector<UInt> & facets_to_cohesive_el = mesh.getFacetsToCohesiveEl();
nb_fragment = 0;
it = mesh.firstType(spatial_dimension);
MaterialCohesive * mat_cohesive
= dynamic_cast<MaterialCohesive*>(materials[cohesive_index]);
const Vector<Real> & damage = mat_cohesive->getDamage(type_cohesive);
UInt nb_quad_cohesive = getFEM("CohesiveFEM").getNbQuadraturePoints(type_cohesive);
Real epsilon = std::numeric_limits<Real>::epsilon();
for (; it != last; ++it) {
Vector<UInt> & checked_el = fragment_to_element(*it);
UInt nb_element = checked_el.getSize();
if (nb_element != 0) {
Vector<Element> & facet_to_element = mesh_facets.getSubelementToElement(*it);
UInt nb_facet_per_elem = facet_to_element.getNbComponent();
/// loop on elements
for (UInt el = 0; el < nb_element; ++el) {
if (checked_el(el) == max) {
/// build fragment
++nb_fragment;
checked_el(el) = nb_fragment - 1;
Vector<Element> elem_to_check;
Element first_el(*it, el);
elem_to_check.push_back(first_el);
/// keep looping while there are elements to check
while (elem_to_check.getSize() != 0) {
UInt nb_elem_check = elem_to_check.getSize();
for (UInt el_check = 0; el_check < nb_elem_check; ++el_check) {
Element current_el = elem_to_check(el_check);
for (UInt f = 0; f < nb_facet_per_elem; ++f) {
/// find adjacent element on current facet
UInt global_facet = facet_to_element(current_el.element, f).element;
Element next_el;
for (UInt i = 0; i < 2; ++i) {
- next_el = element_to_facet(global_facet)(i);
+ next_el = element_to_facet(global_facet)[i];
if (next_el != current_el) break;
}
if (next_el.kind == _ek_cohesive) {
/// fragmention occurs when the cohesive element has
/// reached damage = 1 on every quadrature point
UInt q = 0;
while (q < nb_quad_cohesive &&
std::abs(damage(next_el.element * nb_quad_cohesive + q) - 1)
<= epsilon) ++q;
if (q == nb_quad_cohesive)
next_el = ElementNull;
else {
/// check which facet is the correct one
UInt other_facet_index
= facets_to_cohesive_el(next_el.element, 0) == global_facet;
UInt other_facet
= facets_to_cohesive_el(next_el.element, other_facet_index);
/// get the other regualar element
- next_el = element_to_facet(other_facet)(0);
+ next_el = element_to_facet(other_facet)[0];
}
}
/// if it exists, add it to the fragment list
if (next_el != ElementNull) {
Vector<UInt> & checked_next_el = fragment_to_element(next_el.type);
/// check if the element isn't already part of a fragment
if (checked_next_el(next_el.element) == max) {
checked_next_el(next_el.element) = nb_fragment - 1;
elem_to_check.push_back(next_el);
}
}
}
}
/// erase elements that have already been checked
for (UInt el_check = nb_elem_check; el_check > 0; --el_check)
elem_to_check.erase(el_check - 1);
}
}
}
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModelCohesive::computeFragmentsMV() {
AKANTU_DEBUG_IN();
fragment_mass.resize(nb_fragment);
fragment_mass.clear();
fragment_velocity.resize(nb_fragment);
fragment_velocity.clear();
fragment_center.resize(nb_fragment);
fragment_center.clear();
UInt nb_nodes = mesh.getNbNodes();
Vector<bool> checked_node(nb_nodes);
checked_node.clear();
const Vector<Real> & position = mesh.getNodes();
Mesh::type_iterator it = mesh.firstType(spatial_dimension);
Mesh::type_iterator last = mesh.lastType(spatial_dimension);
for (; it != last; ++it) {
UInt nb_element = mesh.getNbElement(*it);
if (nb_element != 0) {
const Vector<UInt> & frag_to_el = fragment_to_element(*it);
const Vector<UInt> & connectivity = mesh.getConnectivity(*it);
UInt nb_nodes_per_elem = connectivity.getNbComponent();
/// loop over each node of every element
for (UInt el = 0; el < nb_element; ++el) {
for (UInt n = 0; n < nb_nodes_per_elem; ++n) {
UInt node = connectivity(el, n);
/// if the node hasn't been checked, store its data
if (!checked_node(node)) {
fragment_mass(frag_to_el(el)) += (*mass)(node);
for (UInt s = 0; s < spatial_dimension; ++s) {
fragment_velocity(frag_to_el(el), s)
+= (*mass)(node) * (*velocity)(node, s);
fragment_center(frag_to_el(el), s)
+= (*mass)(node) * position(node, s);
}
checked_node(node) = true;
}
}
}
}
}
for (UInt frag = 0; frag < nb_fragment; ++frag) {
for (UInt s = 0; s < spatial_dimension; ++s) {
fragment_velocity(frag, s) /= fragment_mass(frag);
fragment_center(frag, s) /= fragment_mass(frag);
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModelCohesive::computeFragmentsData() {
AKANTU_DEBUG_IN();
buildFragmentsList();
computeFragmentsMV();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SolidMechanicsModelCohesive::printself(std::ostream & stream, int indent) const {
std::string space;
for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
stream << space << "SolidMechanicsModelCohesive [" << std::endl;
SolidMechanicsModel::printself(stream, indent + 1);
stream << space << "]" << std::endl;
}
/* -------------------------------------------------------------------------- */
__END_AKANTU__
diff --git a/src/model/solid_mechanics/solid_mechanics_model_cohesive.hh b/src/model/solid_mechanics/solid_mechanics_model_cohesive.hh
index d33a4d4ca..46a87dd65 100644
--- a/src/model/solid_mechanics/solid_mechanics_model_cohesive.hh
+++ b/src/model/solid_mechanics/solid_mechanics_model_cohesive.hh
@@ -1,246 +1,253 @@
/**
* @file solid_mechanics_model_cohesive.hh
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Tue May 08 13:01:18 2012
*
* @brief Solid mechanics model for cohesive elements
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "solid_mechanics_model.hh"
#include "integrator_cohesive.hh"
#include "shape_cohesive.hh"
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_SOLID_MECHANICS_MODEL_COHESIVE_HH__
#define __AKANTU_SOLID_MECHANICS_MODEL_COHESIVE_HH__
__BEGIN_AKANTU__
class SolidMechanicsModelCohesive : public SolidMechanicsModel {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
+ class NewCohesiveNodesEvent : public NewNodesEvent {
+ public:
+ AKANTU_GET_MACRO_NOT_CONST(OldNodesList, old_nodes, Vector<UInt> &);
+ AKANTU_GET_MACRO(OldNodesList, old_nodes, const Vector<UInt> &);
+ protected:
+ Vector<UInt> old_nodes;
+ };
- typedef FEMTemplate< IntegratorCohesive<IntegratorGauss>, ShapeCohesive<ShapeLagrange> > MyFEMCohesiveType;
+ typedef FEMTemplate<IntegratorGauss, ShapeLagrange, _ek_cohesive> MyFEMCohesiveType;
SolidMechanicsModelCohesive(Mesh & mesh,
UInt spatial_dimension = 0,
const ID & id = "solid_mechanics_model_cohesive",
const MemoryID & memory_id = 0);
// virtual ~SolidMechanicsModelCohesive();
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
/// assemble the residual for the explicit scheme
void updateResidual(bool need_initialize = true);
/// function to print the contain of the class
virtual void printself(std::ostream & stream, int indent = 0) const;
/// function to perform a stress check on each facet and insert
/// cohesive elements if needed
void checkCohesiveStress();
/// function to insert cohesive elements on the selected facets
void insertCohesiveElements(const Vector<UInt> & facet_insertion);
- /// initialize the model for intrinsic simulations
- void initIntrinsic(std::string material_file,
- AnalysisMethod method = _explicit_dynamic);
-
- /// initialize completely the model for extrinsic elements
- void initExtrinsic(std::string material_file,
- AnalysisMethod method = _explicit_dynamic);
+ /// initialize the cohesive model
+ void initFull(std::string material_file,
+ AnalysisMethod method = _explicit_dynamic,
+ CohesiveMethod cohesive_method = _intrinsic);
/// initialize the model
void initModel();
/// register the tags associated with the parallel synchronizer for
/// cohesive elements
void initParallel(MeshPartition * partition, DataAccessor * data_accessor=NULL);
/// initialize cohesive material
void initCohesiveMaterial();
/// build fragments and compute their data (mass, velocity..)
void computeFragmentsData();
private:
+ /// initialize completely the model for extrinsic elements
+ void initExtrinsic(std::string material_file,
+ AnalysisMethod method = _explicit_dynamic);
+
/// function to update nodal parameters for doubled nodes
void updateDoubledNodes(const Vector<UInt> & doubled_nodes);
/// build fragments list
void buildFragmentsList();
/// compute fragments' mass and velocity
void computeFragmentsMV();
-
/* ------------------------------------------------------------------------ */
/* Data Accessor inherited members */
/* ------------------------------------------------------------------------ */
public:
inline virtual UInt getNbDataForElements(const Vector<Element> & elements,
SynchronizationTag tag) const;
inline virtual void packElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag) const;
inline virtual void unpackElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag);
protected:
inline virtual void splitElementByKind(const Vector<Element> & elements,
Vector<Element> & elements_regular,
Vector<Element> & elements_cohesive) const;
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
/// get cohesive element type
AKANTU_GET_MACRO(CohesiveElementType, type_cohesive, ElementType);
/// get cohesive index
AKANTU_GET_MACRO(CohesiveIndex, cohesive_index, UInt);
/// get facet type
AKANTU_GET_MACRO(FacetType, type_facet, ElementType);
/// get facet mesh
AKANTU_GET_MACRO(MeshFacets, mesh_facets, const Mesh &);
/// get sigma limit vector for automatic insertion
AKANTU_GET_MACRO(SigmaLimit, sigma_lim, const Vector<Real> &);
AKANTU_GET_MACRO_NOT_CONST(SigmaLimit, sigma_lim, Vector<Real> &);
/// get facets check vector
AKANTU_GET_MACRO_NOT_CONST(FacetsCheck, facets_check, Vector<bool> &);
/// get stress on facets vector
AKANTU_GET_MACRO(StressOnFacets, facet_stress, const Vector<Real> &);
/// get number of fragments
AKANTU_GET_MACRO(NbFragment, nb_fragment, UInt);
/// get fragment_to_element vectors
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(FragmentToElement, fragment_to_element, UInt);
/// get mass for each fragment
AKANTU_GET_MACRO(FragmentsMass, fragment_mass, const Vector<Real> &);
/// get average velocity for each fragment
AKANTU_GET_MACRO(FragmentsVelocity, fragment_velocity, const Vector<Real> &);
/// get center of mass coordinates for each fragment
AKANTU_GET_MACRO(FragmentsCenter, fragment_center, const Vector<Real> &);
/// THIS HAS TO BE CHANGED
AKANTU_GET_MACRO(Tangents, tangents, const Vector<Real> &);
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
private:
/// cohesive element type
ElementType type_cohesive;
/// facet type
ElementType type_facet;
/// cohesive material index in materials vector
UInt cohesive_index;
/// mesh containing facets and their data structures
Mesh mesh_facets;
/// vector containing a sigma limit for automatic insertion
Vector<Real> sigma_lim;
/// vector containing facets in which cohesive elements can be automatically inserted
Vector<bool> facets_check;
/// @todo store tangents when normals are computed:
Vector<Real> tangents;
/// list of stresses on facet quadrature points for every element
ByElementTypeReal stress_on_facet;
/// already counted facets in stress check
Vector<bool> facet_stress_count;
/// stress on facets on the two sides by quadrature point
Vector<Real> facet_stress;
/// fragment number for each element
ByElementTypeUInt fragment_to_element;
/// number of fragments
UInt nb_fragment;
/// mass for each fragment
Vector<Real> fragment_mass;
/// average velocity for each fragment
Vector<Real> fragment_velocity;
/// center of mass coordinates for each element
Vector<Real> fragment_center;
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
#if defined (AKANTU_INCLUDE_INLINE_IMPL)
#include "solid_mechanics_model_cohesive_inline_impl.cc"
#endif
/// standard output stream operator
inline std::ostream & operator <<(std::ostream & stream, const SolidMechanicsModelCohesive & _this)
{
_this.printself(stream);
return stream;
}
__END_AKANTU__
#endif /* __AKANTU_SOLID_MECHANICS_MODEL_COHESIVE_HH__ */
diff --git a/src/model/solid_mechanics/solid_mechanics_model_inline_impl.cc b/src/model/solid_mechanics/solid_mechanics_model_inline_impl.cc
index 28ab3fe4b..05662c1ff 100644
--- a/src/model/solid_mechanics/solid_mechanics_model_inline_impl.cc
+++ b/src/model/solid_mechanics/solid_mechanics_model_inline_impl.cc
@@ -1,430 +1,431 @@
/**
* @file solid_mechanics_model_inline_impl.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Wed Aug 04 10:58:42 2010
*
* @brief Implementation of the inline functions of the SolidMechanicsModel class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
inline Material & SolidMechanicsModel::getMaterial(UInt mat_index) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(mat_index < materials.size(),
"The model " << id << " has no material no "<< mat_index);
AKANTU_DEBUG_OUT();
return *materials[mat_index];
}
/* -------------------------------------------------------------------------- */
inline const Material & SolidMechanicsModel::getMaterial(UInt mat_index) const {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(mat_index < materials.size(),
"The model " << id << " has no material no "<< mat_index);
AKANTU_DEBUG_OUT();
return *materials[mat_index];
}
/* -------------------------------------------------------------------------- */
inline FEM & SolidMechanicsModel::getFEMBoundary(std::string name) {
return dynamic_cast<FEM &>(getFEMClassBoundary<MyFEMType>(name));
}
/* -------------------------------------------------------------------------- */
inline void SolidMechanicsModel::splitElementByMaterial(const Vector<Element> & elements,
Vector<Element> * elements_per_mat) const {
ElementType current_element_type = _not_defined;
GhostType current_ghost_type = _casper;
UInt * elem_mat = NULL;
Vector<Element>::const_iterator<Element> it = elements.begin();
Vector<Element>::const_iterator<Element> end = elements.end();
for (; it != end; ++it) {
const Element & el = *it;
if(el.type != current_element_type || el.ghost_type != current_ghost_type) {
current_element_type = el.type;
current_ghost_type = el.ghost_type;
elem_mat = element_index_by_material(el.type, el.ghost_type).storage();
}
elements_per_mat[elem_mat[2*el.element+1]].push_back(el);
}
}
/* -------------------------------------------------------------------------- */
inline UInt SolidMechanicsModel::getNbDataForElements(const Vector<Element> & elements,
SynchronizationTag tag) const {
AKANTU_DEBUG_IN();
UInt size = 0;
#ifndef AKANTU_NDEBUG
size += elements.getSize() * spatial_dimension * sizeof(Real); /// position of the barycenter of the element (only for check)
#endif
UInt nb_nodes_per_element = 0;
Vector<Element>::const_iterator<Element> it = elements.begin();
Vector<Element>::const_iterator<Element> end = elements.end();
for (; it != end; ++it) {
const Element & el = *it;
nb_nodes_per_element += Mesh::getNbNodesPerElement(el.type);
}
switch(tag) {
case _gst_material_id: {
size += elements.getSize() * 2 * sizeof(UInt);
break;
}
case _gst_smm_mass: {
size += nb_nodes_per_element * sizeof(Real) * spatial_dimension; // mass vector
break;
}
case _gst_smm_for_strain: {
size += nb_nodes_per_element * spatial_dimension * sizeof(Real); // displacement
break;
}
case _gst_smm_boundary: {
// force, displacement, boundary
size += nb_nodes_per_element * spatial_dimension * (2 * sizeof(Real) + sizeof(bool));
break;
}
default: { }
}
if(tag != _gst_material_id) {
Vector<Element> * elements_per_mat = new Vector<Element>[materials.size()];
this->splitElementByMaterial(elements, elements_per_mat);
for (UInt i = 0; i < materials.size(); ++i) {
size += materials[i]->getNbDataForElements(elements_per_mat[i], tag);
}
delete [] elements_per_mat;
}
AKANTU_DEBUG_OUT();
return size;
}
/* -------------------------------------------------------------------------- */
inline void SolidMechanicsModel::packBarycenter(CommunicationBuffer & buffer,
const Vector<Element> & elements) const {
Vector<Element>::const_iterator<Element> bit = elements.begin();
Vector<Element>::const_iterator<Element> bend = elements.end();
for (; bit != bend; ++bit) {
const Element & element = *bit;
types::RVector barycenter(spatial_dimension);
mesh.getBarycenter(element.element, element.type, barycenter.storage(), element.ghost_type);
+ // std::cout << ">> " << element << " -> " << barycenter << std::endl;
buffer << barycenter;
}
}
/* -------------------------------------------------------------------------- */
inline void SolidMechanicsModel::packElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag) const {
AKANTU_DEBUG_IN();
#ifndef AKANTU_NDEBUG
packBarycenter(buffer, elements);
#endif
switch(tag) {
case _gst_material_id: {
packElementalDataHelper(element_index_by_material, buffer, elements, false);
break;
}
case _gst_smm_mass: {
packNodalDataHelper(*mass, buffer, elements);
break;
}
case _gst_smm_for_strain: {
packNodalDataHelper(*displacement, buffer, elements);
break;
}
case _gst_smm_boundary: {
packNodalDataHelper(*force, buffer, elements);
packNodalDataHelper(*velocity, buffer, elements);
packNodalDataHelper(*boundary, buffer, elements);
break;
}
default: {
}
}
if(tag != _gst_material_id) {
Vector<Element> * elements_per_mat = new Vector<Element>[materials.size()];
splitElementByMaterial(elements, elements_per_mat);
for (UInt i = 0; i < materials.size(); ++i) {
materials[i]->packElementData(buffer, elements_per_mat[i], tag);
}
delete [] elements_per_mat;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
inline void SolidMechanicsModel::unpackBarycenter(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag) {
Vector<Element>::const_iterator<Element> bit = elements.begin();
Vector<Element>::const_iterator<Element> bend = elements.end();
for (; bit != bend; ++bit) {
const Element & element = *bit;
types::RVector barycenter_loc(spatial_dimension);
mesh.getBarycenter(element.element, element.type, barycenter_loc.storage(), element.ghost_type);
-
+ // std::cout << "<< " << element << " -> " << barycenter_loc << std::endl;
types::RVector barycenter(spatial_dimension);
buffer >> barycenter;
Real tolerance = 1e-15;
for (UInt i = 0; i < spatial_dimension; ++i) {
if(!(std::abs(barycenter(i) - barycenter_loc(i)) <= tolerance))
AKANTU_DEBUG_ERROR("Unpacking an unknown value for the element: "
<< element
<< "(barycenter[" << i << "] = " << barycenter_loc(i)
<< " and buffer[" << i << "] = " << barycenter(i) << ") - tag: " << tag);
}
}
}
/* -------------------------------------------------------------------------- */
inline void SolidMechanicsModel::unpackElementData(CommunicationBuffer & buffer,
const Vector<Element> & elements,
SynchronizationTag tag) {
AKANTU_DEBUG_IN();
#ifndef AKANTU_NDEBUG
unpackBarycenter(buffer, elements, tag);
#endif
switch(tag) {
case _gst_material_id: {
unpackElementalDataHelper(element_index_by_material, buffer, elements, false);
break;
}
case _gst_smm_mass: {
unpackNodalDataHelper(*mass, buffer, elements);
break;
}
case _gst_smm_for_strain: {
unpackNodalDataHelper(*displacement, buffer, elements);
break;
}
case _gst_smm_boundary: {
unpackNodalDataHelper(*force, buffer, elements);
unpackNodalDataHelper(*velocity, buffer, elements);
unpackNodalDataHelper(*boundary, buffer, elements);
break;
}
default: {
}
}
if(tag != _gst_material_id) {
Vector<Element> * elements_per_mat = new Vector<Element>[materials.size()];
splitElementByMaterial(elements, elements_per_mat);
for (UInt i = 0; i < materials.size(); ++i) {
materials[i]->unpackElementData(buffer, elements_per_mat[i], tag);
}
delete [] elements_per_mat;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
inline UInt SolidMechanicsModel::getNbDataToPack(SynchronizationTag tag) const {
AKANTU_DEBUG_IN();
UInt size = 0;
// UInt nb_nodes = mesh.getNbNodes();
switch(tag) {
case _gst_smm_uv: {
size += sizeof(Real) * spatial_dimension * 2;
break;
}
case _gst_smm_res: {
size += sizeof(Real) * spatial_dimension;
break;
}
case _gst_smm_mass: {
size += sizeof(Real) * spatial_dimension;
break;
}
default: {
AKANTU_DEBUG_ERROR("Unknown ghost synchronization tag : " << tag);
}
}
AKANTU_DEBUG_OUT();
return size;
}
/* -------------------------------------------------------------------------- */
inline UInt SolidMechanicsModel::getNbDataToUnpack(SynchronizationTag tag) const {
AKANTU_DEBUG_IN();
UInt size = 0;
// UInt nb_nodes = mesh.getNbNodes();
switch(tag) {
case _gst_smm_uv: {
size += sizeof(Real) * spatial_dimension * 2;
break;
}
case _gst_smm_res: {
size += sizeof(Real) * spatial_dimension;
break;
}
case _gst_smm_mass: {
size += sizeof(Real) * spatial_dimension;
break;
}
default: {
AKANTU_DEBUG_ERROR("Unknown ghost synchronization tag : " << tag);
}
}
AKANTU_DEBUG_OUT();
return size;
}
/* -------------------------------------------------------------------------- */
inline void SolidMechanicsModel::packData(CommunicationBuffer & buffer,
const UInt index,
SynchronizationTag tag) const {
AKANTU_DEBUG_IN();
switch(tag) {
case _gst_smm_uv: {
Vector<Real>::iterator<types::RVector> it_disp = displacement->begin(spatial_dimension);
Vector<Real>::iterator<types::RVector> it_velo = velocity->begin(spatial_dimension);
buffer << it_disp[index];
buffer << it_velo[index];
break;
}
case _gst_smm_res: {
Vector<Real>::iterator<types::RVector> it_res = residual->begin(spatial_dimension);
buffer << it_res[index];
break;
}
case _gst_smm_mass: {
AKANTU_DEBUG_INFO("pack mass of node " << index << " which is " << (*mass)(index,0));
Vector<Real>::iterator<types::RVector> it_mass = mass->begin(spatial_dimension);
buffer << it_mass[index];
break;
}
default: {
AKANTU_DEBUG_ERROR("Unknown ghost synchronization tag : " << tag);
}
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
inline void SolidMechanicsModel::unpackData(CommunicationBuffer & buffer,
const UInt index,
SynchronizationTag tag) {
AKANTU_DEBUG_IN();
switch(tag) {
case _gst_smm_uv: {
Vector<Real>::iterator<types::RVector> it_disp = displacement->begin(spatial_dimension);
Vector<Real>::iterator<types::RVector> it_velo = velocity->begin(spatial_dimension);
buffer >> it_disp[index];
buffer >> it_velo[index];
break;
}
case _gst_smm_res: {
Vector<Real>::iterator<types::RVector> it_res = residual->begin(spatial_dimension);
buffer >> it_res[index];
break;
}
case _gst_smm_mass: {
AKANTU_DEBUG_INFO("mass of node " << index << " was " << (*mass)(index,0));
Vector<Real>::iterator<types::RVector> it_mass = mass->begin(spatial_dimension);
buffer >> it_mass[index];
AKANTU_DEBUG_INFO("mass of node " << index << " is now " << (*mass)(index,0));
break;
}
default: {
AKANTU_DEBUG_ERROR("Unknown ghost synchronization tag : " << tag);
}
}
AKANTU_DEBUG_OUT();
}
__END_AKANTU__
#include "sparse_matrix.hh"
#include "solver.hh"
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
template<NewmarkBeta::IntegrationSchemeCorrectorType type>
void SolidMechanicsModel::solveDynamic(Vector<Real> & increment) {
AKANTU_DEBUG_INFO("Solving Ma + Cv + Ku = f");
NewmarkBeta * nmb_int = dynamic_cast<NewmarkBeta *>(integrator);
Real c = nmb_int->getAccelerationCoefficient<type>(time_step);
Real d = nmb_int->getVelocityCoefficient<type>(time_step);
Real e = nmb_int->getDisplacementCoefficient<type>(time_step);
// A = c M + d C + e K
jacobian_matrix->clear();
if(type != NewmarkBeta::_acceleration_corrector)
jacobian_matrix->add(*stiffness_matrix, e);
jacobian_matrix->add(*mass_matrix, c);
mass_matrix->saveMatrix("M.mtx");
if(velocity_damping_matrix)
jacobian_matrix->add(*velocity_damping_matrix, d);
jacobian_matrix->applyBoundary(*boundary);
#ifndef AKANTU_NDEBUG
if(AKANTU_DEBUG_TEST(dblDump))
jacobian_matrix->saveMatrix("J.mtx");
#endif
jacobian_matrix->saveMatrix("J.mtx");
solver->setRHS(*residual);
// solve A w = f
solver->solve(increment);
}
/* -------------------------------------------------------------------------- */
diff --git a/src/model/solid_mechanics/solid_mechanics_model_tmpl.hh b/src/model/solid_mechanics/solid_mechanics_model_tmpl.hh
index 43ac3fbd1..807b0cf70 100644
--- a/src/model/solid_mechanics/solid_mechanics_model_tmpl.hh
+++ b/src/model/solid_mechanics/solid_mechanics_model_tmpl.hh
@@ -1,164 +1,166 @@
/**
* @file solid_mechanics_model_tmpl.hh
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Thu Nov 24 09:36:33 2011
*
* @brief template part of solid mechanics model
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
template <typename M>
Material & SolidMechanicsModel::registerNewCustomMaterial(const ID & mat_type,
__attribute__((unused)) const std::string & opt_param) {
UInt mat_count = materials.size();
std::stringstream sstr_mat; sstr_mat << id << ":" << mat_count << ":" << mat_type;
Material * material;
ID mat_id = sstr_mat.str();
// add all the new materials in the AKANTU_MATERIAL_LIST in the material.hh file
material = new M(*this, mat_id);
materials.push_back(material);
return *material;
}
/* -------------------------------------------------------------------------- */
template <typename M>
UInt SolidMechanicsModel::readCustomMaterial(const std::string & filename,
const std::string & keyword) {
Parser parser;
parser.open(filename);
std::string key = keyword;
std::string opt_param;
std::string mat_name = parser.getNextSection("material", opt_param);
while (mat_name != ""){
if (mat_name == key) break;
mat_name = parser.getNextSection("material", opt_param);
}
if (mat_name != key) AKANTU_DEBUG_ERROR("material "
<< key
<< " not found in file " << filename);
Material & mat = registerNewCustomMaterial<M>(key, opt_param);
parser.readSection(mat.getID(), mat);
materials.push_back(&mat);
return materials.size();;
}
/* -------------------------------------------------------------------------- */
template<class Functor>
void SolidMechanicsModel::computeForcesFromFunction(Functor & functor,
BoundaryFunctionType function_type) {
/** function type is
** _bft_forces : traction function is given
** _bft_stress : stress function is given
*/
GhostType ghost_type = _not_ghost;
UInt nb_component = 0;
switch(function_type) {
case _bft_stress: nb_component = spatial_dimension * spatial_dimension; break;
case _bft_traction: nb_component = spatial_dimension; break;
+ default: break;
}
Vector<Real> funct(0, nb_component, "traction_stress");
Vector<Real> quad_coords(0, spatial_dimension, "quad_coords");
//prepare the loop over element types
Mesh::type_iterator it = getFEMBoundary().getMesh().firstType(getFEMBoundary().getElementDimension(),
ghost_type);
Mesh::type_iterator end = getFEMBoundary().getMesh().lastType(getFEMBoundary().getElementDimension(),
ghost_type);
for(; it != end; ++it) {
UInt nb_quad = getFEMBoundary().getNbQuadraturePoints(*it, ghost_type);
UInt nb_element = getFEMBoundary().getMesh().getNbElement(*it, ghost_type);
funct.resize(nb_element * nb_quad);
quad_coords.resize(nb_element * nb_quad);
const Vector<Real> & normals_on_quad = getFEMBoundary().getNormalsOnQuadPoints(*it, ghost_type);
getFEMBoundary().interpolateOnQuadraturePoints(getFEMBoundary().getMesh().getNodes(),
quad_coords, spatial_dimension, *it, ghost_type);
Vector<Real>::const_iterator< types::Vector<Real> > normals = normals_on_quad.begin(spatial_dimension);
Vector<Real>::iterator< types::Vector<Real> > qcoord = quad_coords.begin(spatial_dimension);
Vector<UInt>::iterator< UInt > surface_id;
bool has_surface_id;
try {
surface_id = mesh.getSurfaceID(*it, ghost_type).begin();
has_surface_id = true;
} catch (...) {
has_surface_id = false;
}
if(function_type == _bft_stress) {
Vector<Real>::iterator< types::RMatrix > stress = funct.begin(spatial_dimension, spatial_dimension);
for (UInt el = 0; el < nb_element; ++el) {
Surface surf_id = 0;
if(has_surface_id) {
surf_id = *surface_id;
++surface_id;
}
for (UInt q = 0; q < nb_quad; ++q, ++stress, ++qcoord, ++normals) {
functor.stress(*qcoord, *stress, *normals, surf_id);
}
}
} else if (function_type == _bft_traction) {
Vector<Real>::iterator< types::Vector<Real> > force = funct.begin(spatial_dimension);
for (UInt el = 0; el < nb_element; ++el) {
Surface surf_id = 0;
if(has_surface_id) {
surf_id = *surface_id;
++surface_id;
}
for (UInt q = 0; q < nb_quad; ++q, ++force, ++qcoord, ++normals) {
functor.traction(*qcoord, *force, *normals, surf_id);
}
}
}
switch(function_type) {
case _bft_stress:
computeForcesByStressTensor(funct, *it, ghost_type); break;
case _bft_traction:
computeForcesByTractionVector(funct, *it, ghost_type); break;
+ default: break;
}
}
}
/* -------------------------------------------------------------------------- */
diff --git a/src/model/structural_mechanics/structural_mechanics_model.cc b/src/model/structural_mechanics/structural_mechanics_model.cc
index 802b1d678..ca0d3573f 100644
--- a/src/model/structural_mechanics/structural_mechanics_model.cc
+++ b/src/model/structural_mechanics/structural_mechanics_model.cc
@@ -1,363 +1,652 @@
/**
* @file structural_mechanics_model.cc
- *
* @author Fabian Barras <fabian.barras@epfl.ch>
+ * @date Thu May 5 15:52:38 2011
*
- * @date Fri Jul 15 19:41:58 2011
- *
- * @brief StructuralMechanicsModel implementation
+ * @brief
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "structural_mechanics_model.hh"
#include "aka_math.hh"
#include "integration_scheme_2nd_order.hh"
-
#include "static_communicator.hh"
#include "sparse_matrix.hh"
#include "solver.hh"
#ifdef AKANTU_USE_MUMPS
#include "solver_mumps.hh"
#endif
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
StructuralMechanicsModel::StructuralMechanicsModel(Mesh & mesh,
UInt dim,
const ID & id,
const MemoryID & memory_id) :
- Model(mesh, id, memory_id),
+ Model(mesh, id, memory_id), Dumpable<DumperParaview>(id),
stress("stress", id, memory_id),
element_material("element_material", id, memory_id),
stiffness_matrix(NULL),
solver(NULL),
- spatial_dimension(dim) {
+ spatial_dimension(dim),
+ rotation_matrix("rotation_matices", id, memory_id) {
AKANTU_DEBUG_IN();
if (spatial_dimension == 0) spatial_dimension = mesh.getSpatialDimension();
- registerFEMObject<MyFEMType>("SolidMechanicsFEM", mesh, spatial_dimension);
+ registerFEMObject<MyFEMType>("StructuralMechanicsFEM", mesh, spatial_dimension);
this->displacement_rotation = NULL;
this->force_momentum = NULL;
this->residual = NULL;
this->boundary = NULL;
this->increment = NULL;
if(spatial_dimension == 2)
nb_degree_of_freedom = 3;
+ else if (spatial_dimension == 3)
+ nb_degree_of_freedom = 6;
else {
AKANTU_DEBUG_TO_IMPLEMENT();
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
StructuralMechanicsModel::~StructuralMechanicsModel() {
AKANTU_DEBUG_IN();
if(solver) delete solver;
if(stiffness_matrix) delete stiffness_matrix;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
/* Initialisation */
/* -------------------------------------------------------------------------- */
+void StructuralMechanicsModel::initFull(std::string material) {
+ initModel();
+ initVectors();
+ initSolver();
+
+ displacement_rotation->clear();
+ force_momentum ->clear();
+ residual ->clear();
+ boundary ->clear();
+ increment ->clear();
+
+
+ Mesh::type_iterator it = getFEM().getMesh().firstType(spatial_dimension, _not_ghost, _ek_structural);
+ Mesh::type_iterator end = getFEM().getMesh().lastType(spatial_dimension, _not_ghost, _ek_structural);
+ for (; it != end; ++it) {
+ computeRotationMatrix(*it);
+ }
+}
+
/* -------------------------------------------------------------------------- */
void StructuralMechanicsModel::initVectors() {
AKANTU_DEBUG_IN();
UInt nb_nodes = getFEM().getMesh().getNbNodes();
std::stringstream sstr_disp; sstr_disp << id << ":displacement";
std::stringstream sstr_forc; sstr_forc << id << ":force";
std::stringstream sstr_resi; sstr_resi << id << ":residual";
std::stringstream sstr_boun; sstr_boun << id << ":boundary";
std::stringstream sstr_incr; sstr_incr << id << ":increment";
displacement_rotation = &(alloc<Real>(sstr_disp.str(), nb_nodes, nb_degree_of_freedom, REAL_INIT_VALUE));
force_momentum = &(alloc<Real>(sstr_forc.str(), nb_nodes, nb_degree_of_freedom, REAL_INIT_VALUE));
residual = &(alloc<Real>(sstr_resi.str(), nb_nodes, nb_degree_of_freedom, REAL_INIT_VALUE));
boundary = &(alloc<bool>(sstr_boun.str(), nb_nodes, nb_degree_of_freedom, false));
increment = &(alloc<Real>(sstr_incr.str(), nb_nodes, nb_degree_of_freedom, REAL_INIT_VALUE));
- const Mesh::ConnectivityTypeList & type_list = getFEM().getMesh().getConnectivityTypeList();
- Mesh::ConnectivityTypeList::const_iterator it;
- for(it = type_list.begin(); it != type_list.end(); ++it) {
+ Mesh::type_iterator it = getFEM().getMesh().firstType(spatial_dimension, _not_ghost, _ek_structural);
+ Mesh::type_iterator end = getFEM().getMesh().lastType(spatial_dimension, _not_ghost, _ek_structural);
+ for (; it != end; ++it) {
UInt nb_element = getFEM().getMesh().getNbElement(*it);
UInt nb_quadrature_points = getFEM().getNbQuadraturePoints(*it);
element_material.alloc(nb_element, 1, *it, _not_ghost);
+ set_ID.alloc(nb_element, 1, *it, _not_ghost);
UInt size = getTangentStiffnessVoigtSize(*it);
stress.alloc(nb_element * nb_quadrature_points, size , *it, _not_ghost);
}
dof_synchronizer = new DOFSynchronizer(getFEM().getMesh(), nb_degree_of_freedom);
dof_synchronizer->initLocalDOFEquationNumbers();
+ dof_synchronizer->initGlobalDOFEquationNumbers();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void StructuralMechanicsModel::initModel() {
getFEM().initShapeFunctions(_not_ghost);
}
/* -------------------------------------------------------------------------- */
-void StructuralMechanicsModel::initImplicitSolver() {
+void StructuralMechanicsModel::initSolver(__attribute__((unused)) SolverOptions & options) {
AKANTU_DEBUG_IN();
const Mesh & mesh = getFEM().getMesh();
+#if !defined(AKANTU_USE_MUMPS) // or other solver in the future \todo add AKANTU_HAS_SOLVER in CMake
+ AKANTU_DEBUG_ERROR("You should at least activate one solver.");
+#else
+ UInt nb_global_node = mesh.getNbGlobalNodes();
- std::stringstream sstr; sstr << id << ":stiffness_matrix";
- stiffness_matrix = new SparseMatrix(mesh.getNbGlobalNodes() * nb_degree_of_freedom, _symmetric,
- nb_degree_of_freedom, sstr.str(), memory_id);
+ std::stringstream sstr; sstr << id << ":jacobian_matrix";
+ jacobian_matrix = new SparseMatrix(nb_global_node * nb_degree_of_freedom, _symmetric,
+ nb_degree_of_freedom, sstr.str(), memory_id);
- dof_synchronizer->initGlobalDOFEquationNumbers();
+ jacobian_matrix->buildProfile(mesh, *dof_synchronizer);
- stiffness_matrix->buildProfile(mesh, *dof_synchronizer);
+ std::stringstream sstr_sti; sstr_sti << id << ":stiffness_matrix";
+ stiffness_matrix = new SparseMatrix(*jacobian_matrix, sstr_sti.str(), memory_id);
#ifdef AKANTU_USE_MUMPS
- std::stringstream sstr_solv; sstr_solv << id << ":solver_stiffness_matrix";
- solver = new SolverMumps(*stiffness_matrix, sstr_solv.str());
+ std::stringstream sstr_solv; sstr_solv << id << ":solver";
+ solver = new SolverMumps(*jacobian_matrix, sstr_solv.str());
+
dof_synchronizer->initScatterGatherCommunicationScheme();
#else
AKANTU_DEBUG_ERROR("You should at least activate one solver.");
#endif //AKANTU_USE_MUMPS
- solver->initialize();
+
+ solver->initialize(options);
+#endif //AKANTU_HAS_SOLVER
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
UInt StructuralMechanicsModel::getTangentStiffnessVoigtSize(const ElementType & type) {
UInt size;
#define GET_TANGENT_STIFFNESS_VOIGT_SIZE(type) \
size = getTangentStiffnessVoigtSize<type>();
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(GET_TANGENT_STIFFNESS_VOIGT_SIZE);
+ AKANTU_BOOST_STRUCTURAL_ELEMENT_SWITCH(GET_TANGENT_STIFFNESS_VOIGT_SIZE);
#undef GET_TANGENT_STIFFNESS_VOIGT_SIZE
return size;
}
+
/* -------------------------------------------------------------------------- */
void StructuralMechanicsModel::assembleStiffnessMatrix() {
AKANTU_DEBUG_IN();
stiffness_matrix->clear();
- const Mesh::ConnectivityTypeList & type_list = getFEM().getMesh().getConnectivityTypeList();
- Mesh::ConnectivityTypeList::const_iterator it;
- for(it = type_list.begin(); it != type_list.end(); ++it) {
+ Mesh::type_iterator it = getFEM().getMesh().firstType(spatial_dimension, _not_ghost, _ek_structural);
+ Mesh::type_iterator end = getFEM().getMesh().lastType(spatial_dimension, _not_ghost, _ek_structural);
+ for (; it != end; ++it) {
ElementType type = *it;
#define ASSEMBLE_STIFFNESS_MATRIX(type) \
assembleStiffnessMatrix<type>();
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(ASSEMBLE_STIFFNESS_MATRIX);
+ AKANTU_BOOST_STRUCTURAL_ELEMENT_SWITCH(ASSEMBLE_STIFFNESS_MATRIX);
#undef ASSEMBLE_STIFFNESS_MATRIX
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
-void StructuralMechanicsModel::computeStressOnQuad() {
+template<>
+void StructuralMechanicsModel::computeRotationMatrix<_bernoulli_beam_2>(Vector<Real> & rotations){
+
+ ElementType type = _bernoulli_beam_2;
+ Mesh & mesh = getFEM().getMesh();
+ UInt nb_element = mesh.getNbElement(type);
+
+ Vector<UInt>::iterator< types::Vector<UInt> > connec_it = mesh.getConnectivity(type).begin(2);
+ Vector<Real>::iterator<types::RVector> nodes_it = mesh.getNodes().begin(spatial_dimension);
+ Vector<Real>::iterator<types::RMatrix> R_it = rotations.begin(nb_degree_of_freedom, nb_degree_of_freedom);
+
+ for (UInt e = 0; e < nb_element; ++e, ++R_it, ++connec_it) {
+ types::Matrix<Real> & R = *R_it;
+ types::Vector<UInt> & connec = *connec_it;
+
+ types::Vector<Real> x2 = nodes_it[connec(1)]; // X2
+ types::Vector<Real> x1 = nodes_it[connec(0)]; // X1
+
+ Real le = x1.distance(x2);
+ Real c = (x2(0) - x1(0)) / le;
+ Real s = (x2(1) - x1(1)) / le;
+
+ /// Definition of the rotation matrix
+ R(0,0) = c; R(0,1) = s; R(0,2) = 0.;
+ R(1,0) = -s; R(1,1) = c; R(1,2) = 0.;
+ R(2,0) = 0.; R(2,1) = 0.; R(2,2) = 1.;
+ }
+}
+
+/* -------------------------------------------------------------------------- */
+template<>
+void StructuralMechanicsModel::computeRotationMatrix<_bernoulli_beam_3>(Vector<Real> & rotations){
+ ElementType type = _bernoulli_beam_3;
+ Mesh & mesh = getFEM().getMesh();
+ UInt nb_element = mesh.getNbElement(type);
+
+ Vector<Real>::iterator< types::RVector > n_it = mesh.getNormals(type).begin(spatial_dimension);
+ Vector<UInt>::iterator< types::Vector<UInt> > connec_it = mesh.getConnectivity(type).begin(2);
+ Vector<Real>::iterator<types::RVector> nodes_it = mesh.getNodes().begin(spatial_dimension);
+
+ types::Matrix<Real> Pe (spatial_dimension, spatial_dimension);
+ types::Matrix<Real> Pg (spatial_dimension, spatial_dimension);
+ types::Matrix<Real> inv_Pg(spatial_dimension, spatial_dimension);
+ types::Vector<Real> x_n(spatial_dimension); // x vect n
+
+ Vector<Real>::iterator<types::RMatrix> R_it =
+ rotations.begin(nb_degree_of_freedom, nb_degree_of_freedom);
+
+ for (UInt e=0 ; e < nb_element; ++e, ++n_it, ++connec_it, ++R_it) {
+ types::Vector<Real> & n = *n_it;
+ types::Matrix<Real> & R = *R_it;
+ types::Vector<UInt> & connec = *connec_it;
+
+ types::Vector<Real> x = nodes_it[connec(1)]; // X2
+ types::Vector<Real> y = nodes_it[connec(0)]; // X1
+
+ Real l = x.distance(y);
+ x -= y; // X2 - X1
+ x_n.crossProduct(x, n);
+
+ Pe.eye();
+ Pe(0, 0) *= l;
+ Pe(1, 1) *= -l;
+
+ Pg(0,0) = x(0); Pg(0,1) = x_n(0); Pg(0,2) = n(0);
+ Pg(1,0) = x(1); Pg(1,1) = x_n(1); Pg(1,2) = n(1);
+ Pg(2,0) = x(2); Pg(2,1) = x_n(2); Pg(2,2) = n(2);
+
+ inv_Pg.inverse(Pg);
+
+ Pe *= inv_Pg;
+ for (UInt i = 0; i < spatial_dimension; ++i) {
+ for (UInt j = 0; j < spatial_dimension; ++j) {
+ R(i, j) = Pe(i, j);
+ R(i + spatial_dimension,j + spatial_dimension) = Pe(i, j);
+ }
+ }
+ }
+}
+
+/* -------------------------------------------------------------------------- */
+void StructuralMechanicsModel::computeRotationMatrix(const ElementType & type) {
+ Mesh & mesh = getFEM().getMesh();
+
+ UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
+ UInt nb_element = mesh.getNbElement(type);
+
+ if(!rotation_matrix.exists(type)) {
+ rotation_matrix.alloc(nb_element,
+ nb_degree_of_freedom*nb_nodes_per_element * nb_degree_of_freedom*nb_nodes_per_element,
+ type);
+ } else {
+ rotation_matrix(type).resize(nb_element);
+ }
+ rotation_matrix(type).clear();
+
+ Vector<Real>rotations(nb_element, nb_degree_of_freedom * nb_degree_of_freedom);
+ rotations.clear();
+
+#define COMPUTE_ROTATION_MATRIX(type) \
+ computeRotationMatrix<type>(rotations);
+
+ AKANTU_BOOST_STRUCTURAL_ELEMENT_SWITCH(COMPUTE_ROTATION_MATRIX);
+#undef COMPUTE_ROTATION_MATRIX
+
+
+ Vector<Real>::iterator<types::RMatrix> R_it = rotations.begin(nb_degree_of_freedom, nb_degree_of_freedom);
+ Vector<Real>::iterator<types::RMatrix> T_it =
+ rotation_matrix(type).begin(nb_degree_of_freedom*nb_nodes_per_element,
+ nb_degree_of_freedom*nb_nodes_per_element);
+
+ for (UInt el = 0; el < nb_element; ++el, ++R_it, ++T_it) {
+ types::Matrix<Real> & T = *T_it;
+ types::Matrix<Real> & R = *R_it;
+ T.clear();
+ for (UInt k = 0; k < nb_nodes_per_element; ++k){
+ for (UInt i = 0; i < nb_degree_of_freedom; ++i)
+ for (UInt j = 0; j < nb_degree_of_freedom; ++j)
+ T(k*nb_degree_of_freedom + i, k*nb_degree_of_freedom + j) = R(i, j);
+ }
+ }
+}
+
+/* -------------------------------------------------------------------------- */
+void StructuralMechanicsModel::computeStresses() {
AKANTU_DEBUG_IN();
- const Mesh::ConnectivityTypeList & type_list = getFEM().getMesh().getConnectivityTypeList();
- Mesh::ConnectivityTypeList::const_iterator it;
- for(it = type_list.begin(); it != type_list.end(); ++it) {
+ Mesh::type_iterator it = getFEM().getMesh().firstType(spatial_dimension, _not_ghost, _ek_structural);
+ Mesh::type_iterator end = getFEM().getMesh().lastType(spatial_dimension, _not_ghost, _ek_structural);
+ for (; it != end; ++it) {
ElementType type = *it;
#define COMPUTE_STRESS_ON_QUAD(type) \
computeStressOnQuad<type>();
- AKANTU_BOOST_REGULAR_ELEMENT_SWITCH(COMPUTE_STRESS_ON_QUAD);
+ AKANTU_BOOST_STRUCTURAL_ELEMENT_SWITCH(COMPUTE_STRESS_ON_QUAD);
#undef COMPUTE_STRESS_ON_QUAD
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void StructuralMechanicsModel::updateResidual() {
AKANTU_DEBUG_IN();
residual->copy(*force_momentum);
Vector<Real> ku(*displacement_rotation, true);
ku *= *stiffness_matrix;
*residual -= ku;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void StructuralMechanicsModel::solve() {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_INFO("Solving an implicit step.");
UInt nb_nodes = displacement_rotation->getSize();
/// todo residual = force - Kxr * d_bloq
- stiffness_matrix->applyBoundary(*boundary);
+ jacobian_matrix->copyContent(*stiffness_matrix);
+ jacobian_matrix->applyBoundary(*boundary);
solver->setRHS(*residual);
solver->solve(*increment);
Real * increment_val = increment->values;
Real * displacement_val = displacement_rotation->values;
bool * boundary_val = boundary->values;
for (UInt n = 0; n < nb_nodes * nb_degree_of_freedom; ++n) {
if(!(*boundary_val)) {
*displacement_val += *increment_val;
}
displacement_val++;
boundary_val++;
increment_val++;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
bool StructuralMechanicsModel::testConvergenceIncrement(Real tolerance) {
Real error;
bool tmp = testConvergenceIncrement(tolerance, error);
AKANTU_DEBUG_INFO("Norm of increment : " << error);
return tmp;
}
/* -------------------------------------------------------------------------- */
bool StructuralMechanicsModel::testConvergenceIncrement(Real tolerance, Real & error) {
AKANTU_DEBUG_IN();
Mesh & mesh= getFEM().getMesh();
UInt nb_nodes = displacement_rotation->getSize();
UInt nb_degree_of_freedom = displacement_rotation->getNbComponent();
Real norm = 0;
Real * increment_val = increment->values;
bool * boundary_val = boundary->values;
for (UInt n = 0; n < nb_nodes; ++n) {
bool is_local_node = mesh.isLocalOrMasterNode(n);
for (UInt d = 0; d < nb_degree_of_freedom; ++d) {
if(!(*boundary_val) && is_local_node) {
norm += *increment_val * *increment_val;
}
boundary_val++;
increment_val++;
}
}
StaticCommunicator::getStaticCommunicator().allReduce(&norm, 1, _so_sum);
error = sqrt(norm);
AKANTU_DEBUG_ASSERT(!isnan(norm), "Something goes wrong in the solve phase");
AKANTU_DEBUG_OUT();
return (error < tolerance);
}
/* -------------------------------------------------------------------------- */
template<>
-void StructuralMechanicsModel::computeTangentStiffness<_bernoulli_beam_2>(Vector<Real> & tangent_stiffness_matrix) {
+void StructuralMechanicsModel::computeTangentModuli<_bernoulli_beam_2>(Vector<Real> & tangent_moduli) {
UInt nb_element = getFEM().getMesh().getNbElement(_bernoulli_beam_2);
UInt nb_quadrature_points = getFEM().getNbQuadraturePoints(_bernoulli_beam_2);
-
UInt tangent_size = 2;
- tangent_stiffness_matrix.clear();
- Vector<Real>::iterator<types::RMatrix> D = tangent_stiffness_matrix.begin(tangent_size, tangent_size);
+ Vector<Real>::iterator<types::RMatrix> D_it = tangent_moduli.begin(tangent_size, tangent_size);
+ Vector<UInt> & el_mat = element_material(_bernoulli_beam_2, _not_ghost);
for (UInt e = 0; e < nb_element; ++e) {
- UInt mat = element_material(_bernoulli_beam_2, _not_ghost)(e);
+ UInt mat = el_mat(e);
Real E = materials[mat].E;
Real A = materials[mat].A;
Real I = materials[mat].I;
- for (UInt q = 0; q < nb_quadrature_points; ++q) {
- (*D)(0,0) = E * A;
- (*D)(1,1) = E * I;
- ++D;
+ for (UInt q = 0; q < nb_quadrature_points; ++q, ++D_it) {
+ types::Matrix<Real> & D = *D_it;
+ D(0,0) = E * A;
+ D(1,1) = E * I;
}
}
}
/* -------------------------------------------------------------------------- */
+template<>
+void StructuralMechanicsModel::computeTangentModuli<_bernoulli_beam_3>(Vector<Real> & tangent_moduli) {
+ UInt nb_element = getFEM().getMesh().getNbElement(_bernoulli_beam_3);
+ UInt nb_quadrature_points = getFEM().getNbQuadraturePoints(_bernoulli_beam_3);
+ UInt tangent_size = 4;
+
+ Vector<Real>::iterator<types::RMatrix> D_it = tangent_moduli.begin(tangent_size, tangent_size);
+
+ for (UInt e = 0; e < nb_element; ++e) {
+ UInt mat = element_material(_bernoulli_beam_3, _not_ghost)(e);
+ Real E = materials[mat].E;
+ Real A = materials[mat].A;
+ Real Iz = materials[mat].Iz;
+ Real Iy = materials[mat].Iy;
+ Real GJ = materials[mat].GJ;
+ for (UInt q = 0; q < nb_quadrature_points; ++q, ++D_it) {
+ types::Matrix<Real> & D = *D_it;
+ D(0,0) = E * A;
+ D(1,1) = E * Iz;
+ D(2,2) = E * Iy;
+ D(3,3) = GJ;
+ }
+ }
+}
/* -------------------------------------------------------------------------- */
template<>
-void StructuralMechanicsModel::transferBMatrixToSymVoigtBMatrix<_bernoulli_beam_2>(Vector<Real> & b) {
- MyFEMType & fem = getFEMClass<MyFEMType>();
- const Vector<Real> & Np = fem.getShapesDerivatives(_bernoulli_beam_2, _not_ghost, 0);
- const Vector<Real> & Mpp = fem.getShapesDerivatives(_bernoulli_beam_2, _not_ghost, 1);
- const Vector<Real> & Lpp = fem.getShapesDerivatives(_bernoulli_beam_2, _not_ghost, 2);
-
+void StructuralMechanicsModel::transferBMatrixToSymVoigtBMatrix<_bernoulli_beam_2>(Vector<Real> & b, bool local) {
UInt nb_element = getFEM().getMesh().getNbElement(_bernoulli_beam_2);
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(_bernoulli_beam_2);
UInt nb_quadrature_points = getFEM().getNbQuadraturePoints(_bernoulli_beam_2);
- Real * Np_val = Np.values;
- Real * Mpp_val = Mpp.values;
- Real * Lpp_val = Lpp.values;
+ MyFEMType & fem = getFEMClass<MyFEMType>();
+ Vector<Real>::const_iterator<types::RVector> shape_Np = fem.getShapesDerivatives(_bernoulli_beam_2, _not_ghost, 0).begin(nb_nodes_per_element);
+ Vector<Real>::const_iterator<types::RVector> shape_Mpp = fem.getShapesDerivatives(_bernoulli_beam_2, _not_ghost, 1).begin(nb_nodes_per_element);
+ Vector<Real>::const_iterator<types::RVector> shape_Lpp = fem.getShapesDerivatives(_bernoulli_beam_2, _not_ghost, 2).begin(nb_nodes_per_element);
UInt tangent_size = getTangentStiffnessVoigtSize<_bernoulli_beam_2>();
UInt bt_d_b_size = nb_nodes_per_element * nb_degree_of_freedom;
b.clear();
- Vector<Real>::iterator<types::RMatrix> B = b.begin(tangent_size, bt_d_b_size);
+ Vector<Real>::iterator<types::RMatrix> B_it = b.begin(tangent_size, bt_d_b_size);
+
+ for (UInt e = 0; e < nb_element; ++e) {
+ for (UInt q = 0; q < nb_quadrature_points; ++q) {
+ types::Matrix<Real> & B = *B_it;
+ const types::Vector<Real> & Np = *shape_Np;
+ const types::Vector<Real> & Lpp = *shape_Lpp;
+ const types::Vector<Real> & Mpp = *shape_Mpp;
+
+ B(0,0) = Np(0);
+ B(0,3) = Np(1);
+
+ B(1,1) = Mpp(0);
+ B(1,2) = Lpp(0);
+ B(1,4) = Mpp(1);
+ B(1,5) = Lpp(1);
+
+ ++B_it;
+ ++shape_Np;
+ ++shape_Mpp;
+ ++shape_Lpp;
+ }
+
+ // ++R_it;
+ }
+}
+
+/* -------------------------------------------------------------------------- */
+template<>
+void StructuralMechanicsModel::transferBMatrixToSymVoigtBMatrix<_bernoulli_beam_3>(Vector<Real> & b, bool local) {
+ MyFEMType & fem = getFEMClass<MyFEMType>();
+
+ UInt nb_element = getFEM().getMesh().getNbElement(_bernoulli_beam_3);
+ UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(_bernoulli_beam_3);
+ UInt nb_quadrature_points = getFEM().getNbQuadraturePoints(_bernoulli_beam_3);
+
+ Vector<Real>::const_iterator<types::RVector> shape_Np = fem.getShapesDerivatives(_bernoulli_beam_3, _not_ghost, 0).begin(nb_nodes_per_element);
+ Vector<Real>::const_iterator<types::RVector> shape_Mpp = fem.getShapesDerivatives(_bernoulli_beam_3, _not_ghost, 1).begin(nb_nodes_per_element);
+ Vector<Real>::const_iterator<types::RVector> shape_Lpp = fem.getShapesDerivatives(_bernoulli_beam_3, _not_ghost, 2).begin(nb_nodes_per_element);
+
+ UInt tangent_size = getTangentStiffnessVoigtSize<_bernoulli_beam_3>();
+ UInt bt_d_b_size = nb_nodes_per_element * nb_degree_of_freedom;
+
+ b.clear();
+
+ Vector<Real>::iterator<types::RMatrix> B_it = b.begin(tangent_size, bt_d_b_size);
for (UInt e = 0; e < nb_element; ++e) {
for (UInt q = 0; q < nb_quadrature_points; ++q) {
- (*B)(0,0) = Np_val[0];
- (*B)(0,1) = Np_val[1];
- (*B)(0,3) = Np_val[2];
- (*B)(0,4) = Np_val[3];
-
- (*B)(1,0) = Mpp_val[0];
- (*B)(1,1) = Mpp_val[1];
- (*B)(1,2) = Lpp_val[0];
- (*B)(1,3) = Mpp_val[2];
- (*B)(1,4) = Mpp_val[3];
- (*B)(1,5) = Lpp_val[1];
- ++B;
-
- Np_val += 2*nb_nodes_per_element;
- Mpp_val += 2*nb_nodes_per_element;
- Lpp_val += 2*nb_nodes_per_element;
+ types::Matrix<Real> & B = *B_it;
+
+ const types::Vector<Real> & Np = *shape_Np;
+ const types::Vector<Real> & Lpp = *shape_Lpp;
+ const types::Vector<Real> & Mpp = *shape_Mpp;
+
+ B(0,0) = Np(0);
+ B(0,6) = Np(1);
+
+ B(1,1) = Mpp(0);
+ B(1,5) = Lpp(0);
+ B(1,7) = Mpp(1);
+ B(1,11) = Lpp(1);
+
+ B(2,2) = Mpp(0);
+ B(2,4) = -Lpp(0);
+ B(2,8) = Mpp(1);
+ B(2,10) = -Lpp(1);
+
+ B(3,3) = Np(0);
+ B(3,9) = Np(1);
+
+ ++B_it;
+ ++shape_Np;
+ ++shape_Mpp;
+ ++shape_Lpp;
}
}
}
+/* -------------------------------------------------------------------------- */
+void StructuralMechanicsModel::addDumpField(const std::string & field_id) {
+#ifdef AKANTU_USE_IOHELPER
+#define ADD_FIELD(id, field, type, n, stride) \
+ addDumpFieldToDumper(id, \
+ new DumperIOHelper::NodalField<type>(*field, n, stride))
+
+ UInt n;
+ if(spatial_dimension == 2) {
+ n = 2;
+ } else n = 3;
+
+ if(field_id == "displacement" ) { ADD_FIELD("displacement", displacement_rotation, Real,
+ n, 0); }
+ else if(field_id == "rotation") { ADD_FIELD("rotation", displacement_rotation, Real,
+ nb_degree_of_freedom - n, n); }
+ else if(field_id == "force" ) { ADD_FIELD("force", force_momentum, Real,
+ n, 0); }
+ else if(field_id == "momentum") { ADD_FIELD("momentum", force_momentum, Real,
+ nb_degree_of_freedom - n, n); }
+ else if(field_id == "residual") { ADD_FIELD("residual", residual, Real, nb_degree_of_freedom, 0); }
+ else if(field_id == "boundary") { ADD_FIELD("boundary", boundary, bool, nb_degree_of_freedom, 0); }
+ else if(field_id == "element_index_by_material") {
+ addDumpFieldToDumper(field_id,
+ new DumperIOHelper::ElementalField<UInt>(element_material,
+ spatial_dimension,
+ _not_ghost,
+ _ek_regular));
+ }
+#undef ADD_FIELD
+#endif
+}
+
+/* -------------------------------------------------------------------------- */
+void StructuralMechanicsModel::addDumpFieldVector(const std::string & field_id) {
+#ifdef AKANTU_USE_IOHELPER
+#define ADD_FIELD(id, field, type, n, stride) \
+ DumperIOHelper::Field * f = \
+ new DumperIOHelper::NodalField<type>(*field, n, stride); \
+ f->setPadding(3); \
+ addDumpFieldToDumper(id, f)
+
+ UInt n;
+ if(spatial_dimension == 2) {
+ n = 2;
+ } else n = 3;
+
+ if(field_id == "displacement" ) { ADD_FIELD("displacement", displacement_rotation, Real,
+ n, 0); }
+ else if(field_id == "force" ) { ADD_FIELD("force", force_momentum, Real,
+ n, 0); }
+#undef ADD_FIELD
+#endif
+}
+
+/* -------------------------------------------------------------------------- */
+void StructuralMechanicsModel::addDumpFieldTensor(__attribute__((unused)) const std::string & field_id) {
+}
+
+
__END_AKANTU__
diff --git a/src/model/structural_mechanics/structural_mechanics_model.hh b/src/model/structural_mechanics/structural_mechanics_model.hh
index 3dc730f48..b3b7461de 100644
--- a/src/model/structural_mechanics/structural_mechanics_model.hh
+++ b/src/model/structural_mechanics/structural_mechanics_model.hh
@@ -1,221 +1,268 @@
/**
* @file structural_mechanics_model.hh
- *
* @author Fabian Barras <fabian.barras@epfl.ch>
+ * @date Thu May 5 15:31:11 2011
*
- * @date Fri Jul 15 19:41:58 2011
- *
- * @brief StructuralMechanicsModel description
+ * @brief
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_STRUCTURAL_MECHANICS_MODEL_HH__
#define __AKANTU_STRUCTURAL_MECHANICS_MODEL_HH__
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "model.hh"
#include "integrator_gauss.hh"
#include "shape_linked.hh"
#include "aka_types.hh"
+#include "dumpable.hh"
+#include "solver.hh"
/* -------------------------------------------------------------------------- */
namespace akantu {
- class Solver;
class SparseMatrix;
}
__BEGIN_AKANTU__
struct StructuralMaterial {
Real E;
Real A;
Real I;
+ Real Iz;
+ Real Iy;
+ Real GJ;
};
-class StructuralMechanicsModel : public Model {
+class StructuralMechanicsModel : public Model, public Dumpable<DumperParaview> {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
public:
- typedef FEMTemplate<IntegratorGauss,ShapeLinked> MyFEMType;
-
- StructuralMechanicsModel(UInt spatial_dimension,
- const ID & id = "structural_mechanics_model",
- const MemoryID & memory_id = 0);
+ typedef FEMTemplate<IntegratorGauss, ShapeLinked, _ek_structural> MyFEMType;
StructuralMechanicsModel(Mesh & mesh,
UInt spatial_dimension = 0,
const ID & id = "structural_mechanics_model",
const MemoryID & memory_id = 0);
virtual ~StructuralMechanicsModel();
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
+ /// initialize fully the model
+ void initFull(std::string material = "");
+
+ /// initialize the internal vectors
void initVectors();
+
+ /// initialize the model
void initModel();
- void initImplicitSolver();
- void computeStressOnQuad();
+
+ /// initialize the solver
+ void initSolver(SolverOptions & options = _solver_no_options);
+
+ /// compute the stresses per elements
+ void computeStresses();
+
+ /// assemble the stiffness matrix
void assembleStiffnessMatrix();
+
+ /// update the residual vector
void updateResidual();
+
+ /// solve the system
void solve();
+
+
bool testConvergenceIncrement(Real tolerance);
bool testConvergenceIncrement(Real tolerance, Real & error);
- virtual void printself(__attribute__ ((unused)) std::ostream & stream,
- __attribute__ ((unused)) int indent = 0) const {};
+
+ virtual void printself(std::ostream & stream, int indent = 0) const {};
+
+ void computeRotationMatrix(const ElementType & type);
+
+protected:
UInt getTangentStiffnessVoigtSize(const ElementType & type);
+ /// compute Rotation Matrices
+ template<const ElementType type>
+ void computeRotationMatrix(Vector<Real> & rotations) {};
+
/* ------------------------------------------------------------------------ */
private:
template<ElementType type>
inline UInt getTangentStiffnessVoigtSize();
template <ElementType type>
void assembleStiffnessMatrix();
template<ElementType type>
void computeStressOnQuad();
template <ElementType type>
- void computeTangentStiffness(Vector<Real> & tangent_stiffness_matrix);
+ void computeTangentModuli(Vector<Real> & tangent_moduli);
+
+ template <ElementType type>
+ void transferBMatrixToSymVoigtBMatrix(Vector<Real> & B, bool local = false);
template <ElementType type>
- void transferBMatrixToSymVoigtBMatrix(Vector<Real> & B);
+ void transferNMatrixToSymVoigtNMatrix(Vector<Real> & N_matrix);
+ /* ------------------------------------------------------------------------ */
+ /* Dumpable interface */
+ /* ------------------------------------------------------------------------ */
+public:
+ virtual void addDumpField(const std::string & field_id);
+ virtual void addDumpFieldVector(const std::string & field_id);
+ virtual void addDumpFieldTensor(const std::string & field_id);
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
/// return the dimension of the system space
AKANTU_GET_MACRO(SpatialDimension, spatial_dimension, UInt);
/// get the StructuralMechanicsModel::displacement vector
AKANTU_GET_MACRO(Displacement, *displacement_rotation, Vector<Real> &);
/// get the StructuralMechanicsModel::force vector (boundary forces)
AKANTU_GET_MACRO(Force, *force_momentum, Vector<Real> &);
/// get the StructuralMechanicsModel::residual vector, computed by StructuralMechanicsModel::updateResidual
AKANTU_GET_MACRO(Residual, *residual, const Vector<Real> &);
/// get the StructuralMechanicsModel::boundary vector
AKANTU_GET_MACRO(Boundary, *boundary, Vector<bool> &);
+ AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(RotationMatrix, rotation_matrix, Real);
+
AKANTU_GET_MACRO(StiffnessMatrix, *stiffness_matrix, const SparseMatrix &);
AKANTU_GET_MACRO_BY_ELEMENT_TYPE_CONST(Stress, stress, Real);
- AKANTU_GET_MACRO_BY_ELEMENT_TYPE(ElementMaterial, element_material, UInt)
+ AKANTU_GET_MACRO_BY_ELEMENT_TYPE(ElementMaterial, element_material, UInt);
+
+ AKANTU_GET_MACRO_BY_ELEMENT_TYPE(Set_ID, set_ID, UInt);
void addMaterial(StructuralMaterial & material) { materials.push_back(material); }
/* ------------------------------------------------------------------------ */
/* Boundaries (structural_mechanics_model_boundary.cc) */
/* ------------------------------------------------------------------------ */
public:
- /// !!NOT IMPLEMENTED YET!!
- void computeForcesByStressTensor(const Vector<Real> & stresses,
- const ElementType & type);
+ /// Compute Linear load function set in global axis
+ template <ElementType type>
+ void computeForcesByGlobalTractionVector(const Vector<Real> & tractions);
- /// integrate a force on the boundary by providing a traction vector
- void computeForcesByTractionVector(const Vector<Real> & tractions,
- const ElementType & type);
+ /// Compute Linear load function set in local axis
+ template <ElementType type>
+ void computeForcesByLocalTractionVector(const Vector<Real> & tractions);
/// compute force vector from a function(x,y,momentum) that describe stresses
+ template <ElementType type>
void computeForcesFromFunction(BoundaryFunction in_function,
BoundaryFunctionType function_type);
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
private:
/// displacements array
Vector<Real> * displacement_rotation;
/// forces array
Vector<Real> * force_momentum;
/// stress arraz
ByElementTypeReal stress;
/// residuals array
Vector<Real> * residual;
/// boundaries array
Vector<bool> * boundary;
/// position of a dof in the K matrix
Vector<Int> * equation_number;
ByElementTypeUInt element_material;
+ // Define sets of beams
+ ByElementTypeUInt set_ID;
+
/// local equation_number to global
unordered_map<UInt, UInt>::type local_eq_num_to_global;
/// stiffness matrix
SparseMatrix * stiffness_matrix;
+ /// jacobian matrix
+ SparseMatrix * jacobian_matrix;
+
/// increment of displacement
Vector<Real> * increment;
/// solver for implicit
Solver * solver;
/// the spatial dimension
UInt spatial_dimension;
/// number of degre of freedom
UInt nb_degree_of_freedom;
+ // Rotation matrix
+ ByElementTypeReal rotation_matrix;
+
+
/* -------------------------------------------------------------------------- */
std::vector<StructuralMaterial> materials;
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
-#if defined (AKANTU_INCLUDE_INLINE_IMPL)
-# include "structural_mechanics_model_inline_impl.cc"
-#endif
+#include "structural_mechanics_model_inline_impl.cc"
/// standard output stream operator
inline std::ostream & operator <<(std::ostream & stream, const StructuralMechanicsModel & _this)
{
_this.printself(stream);
return stream;
}
__END_AKANTU__
#endif /* __AKANTU_STRUCTURAL_MECHANICS_MODEL_HH__ */
diff --git a/src/model/structural_mechanics/structural_mechanics_model_boundary.cc b/src/model/structural_mechanics/structural_mechanics_model_boundary.cc
index 556160812..bac0c4ffa 100644
--- a/src/model/structural_mechanics/structural_mechanics_model_boundary.cc
+++ b/src/model/structural_mechanics/structural_mechanics_model_boundary.cc
@@ -1,243 +1,136 @@
/**
* @file structural_mechanics_model_boundary.cc
- *
* @author Fabian Barras <fabian.barras@epfl.ch>
+ * @date Wed May 25 15:21:50 2011
*
- * @date Fri Jul 15 19:41:58 2011
- *
- * @brief StructuralMechanicsModel functions to set boundary conditions
+ * @brief
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "model.hh"
#include "structural_mechanics_model.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
-/**
- * @param myf pointer to a function that fills a vector/tensor with respect to
- * passed coordinates
- */
-void StructuralMechanicsModel::computeForcesFromFunction(BoundaryFunction myf,
- BoundaryFunctionType function_type){
- /** function type is
- ** _bft_forces : linear load is given
- ** _bft_stress : stress function is given -> Not already done for this kind of model
- */
-
- std::stringstream name;
- name << id << ":structuralmechanics:imposed_linear_load";
- Vector<Real> lin_load(0, nb_degree_of_freedom,name.str());
- name.clear();
- name << id << ":structuralmechanics:imposed_stresses";
- Vector<Real> stress_funct(0, nb_degree_of_freedom*nb_degree_of_freedom,name.str());
-
- UInt offset = 0;
- switch(function_type) {
- case _bft_stress:
- offset = nb_degree_of_freedom * nb_degree_of_freedom; break;
- case _bft_traction:
- offset = nb_degree_of_freedom; break;
- }
-
- //prepare the loop over element types
- const ElementType type = _bernoulli_beam_2;
- UInt nb_quad = getFEM().getNbQuadraturePoints(type);
- UInt nb_element = getFEM().getMesh().getNbElement(type);
-
- name.clear();
- name << id << ":structuralmechanics:quad_coords";
- Vector<Real> quad_coords(nb_element * nb_quad, spatial_dimension, "quad_coords");
-
-
- getFEMClass<MyFEMType>().getShapeFunctions().interpolateOnControlPoints<type>(getFEM().getMesh().getNodes(),
- quad_coords,
- spatial_dimension);
- getFEMClass<MyFEMType>().getShapeFunctions().interpolateOnControlPoints<type>(getFEM().getMesh().getNodes(),
- quad_coords,
- spatial_dimension,
- _not_ghost,
- NULL,
- true,
- 0,
- 1,
- 1);
-
- Real * imposed_val = NULL;
- switch(function_type) {
- case _bft_stress:
- stress_funct.resize(nb_element*nb_quad);
- imposed_val = stress_funct.values;
- break;
- case _bft_traction:
- lin_load.resize(nb_element*nb_quad);
- imposed_val = lin_load.values;
- break;
- }
-
- /// sigma/load on each quadrature points
- Real * qcoord = quad_coords.values;
- for (UInt el = 0; el < nb_element; ++el) {
- for (UInt q = 0; q < nb_quad; ++q) {
- myf(qcoord, imposed_val, NULL, 0);
- imposed_val += offset;
- qcoord += spatial_dimension;
- }
- }
-
- switch(function_type) {
- case _bft_stress:
- computeForcesByStressTensor(stress_funct,(type)); break;
- case _bft_traction:
- computeForcesByTractionVector(lin_load,(type)); break;
- }
-}
-
-
-/* -------------------------------------------------------------------------- */
-void StructuralMechanicsModel::computeForcesByTractionVector(const Vector<Real> & tractions,
- const ElementType & type){
+template<>
+void StructuralMechanicsModel::transferNMatrixToSymVoigtNMatrix<_bernoulli_beam_2>(Vector<Real> & N_matrix) {
AKANTU_DEBUG_IN();
MyFEMType & fem = getFEMClass<MyFEMType>();
- UInt nb_element = getFEM().getMesh().getNbElement(type);
- UInt nb_nodes_per_element = getFEM().getMesh().getNbNodesPerElement(type);
- UInt nb_quad = getFEM().getNbQuadraturePoints(type);
-
- // check dimension match
- AKANTU_DEBUG_ASSERT(Mesh::getSpatialDimension(type) == getFEM().getElementDimension(),
- "element type dimension does not match the dimension of boundaries : " <<
- getFEM().getElementDimension() << " != " <<
- Mesh::getSpatialDimension(type));
-
- // check size of the vector
- AKANTU_DEBUG_ASSERT(tractions.getSize() == nb_quad*nb_element,
- "the size of the vector should be the total number of quadrature points");
-
- // check number of components
- AKANTU_DEBUG_ASSERT(tractions.getNbComponent() == nb_degree_of_freedom,
- "the number of components should be the spatial dimension of the problem");
-
-
- Vector<Real> funct(nb_element * nb_quad, nb_degree_of_freedom * nb_nodes_per_element);
-
- const Vector<Real> & N0 = fem.getShapeFunctions().getShapes(_bernoulli_beam_2, _not_ghost, 0);
- const Vector<Real> & M0 = fem.getShapeFunctions().getShapes(_bernoulli_beam_2, _not_ghost, 1);
- const Vector<Real> & L0 = fem.getShapeFunctions().getShapes(_bernoulli_beam_2, _not_ghost, 2);
- const Vector<Real> & Mp = fem.getShapeFunctions().getShapes(_bernoulli_beam_2, _not_ghost, 3);
- const Vector<Real> & Lp = fem.getShapeFunctions().getShapes(_bernoulli_beam_2, _not_ghost, 4);
-
-
- // Vector<Real> n (nb_degree_of_freedom * nb_nodes_per_element, nb_degree_of_freedom);
- funct.clear();
-
- Real * N0_val = N0.values;
- Real * M0_val = M0.values;
- Real * L0_val = L0.values;
- Real * Mp_val = Mp.values;
- Real * Lp_val = Lp.values;
-
- types::RMatrix N(nb_degree_of_freedom , nb_degree_of_freedom * nb_nodes_per_element);
- Vector<Real>::iterator< types::RVector> Nt_T = funct.begin(nb_degree_of_freedom * nb_nodes_per_element);
- Vector<Real>::iterator<types::RVector> T = const_cast< Vector<Real> &>(tractions).begin(nb_degree_of_freedom);
-
- for (UInt e = 0; e < nb_element; ++e) {
- for (UInt q = 0; q < nb_quad; ++q) {
- N.clear();
- N(0,0) = N0_val[0];
- N(0,3) = N0_val[1];
-
- N(1,1) = M0_val[0];
- N(1,2) = L0_val[0];
- N(1,4) = M0_val[1];
- N(1,5) = L0_val[1];
-
- N(2,1) = Mp_val[0];
- N(2,2) = Lp_val[0];
- N(2,4) = Mp_val[1];
- N(2,5) = Lp_val[1];
-
- Nt_T->mul<true>(N, *T);
-
- ++Nt_T;
-
- N0_val += nb_nodes_per_element;
- M0_val += nb_nodes_per_element;
- L0_val += nb_nodes_per_element;
- Mp_val += nb_nodes_per_element;
- Lp_val += nb_nodes_per_element;
- ++T;
- }
-
+ UInt nb_nodes_per_element = getFEM().getMesh().getNbNodesPerElement(_bernoulli_beam_2);
+
+ Vector<Real>::const_iterator<types::RVector> shape_N0 = fem.getShapeFunctions().getShapes(_bernoulli_beam_2, _not_ghost, 0).begin(nb_nodes_per_element);
+ Vector<Real>::const_iterator<types::RVector> shape_M0 = fem.getShapeFunctions().getShapes(_bernoulli_beam_2, _not_ghost, 1).begin(nb_nodes_per_element);
+ Vector<Real>::const_iterator<types::RVector> shape_L0 = fem.getShapeFunctions().getShapes(_bernoulli_beam_2, _not_ghost, 2).begin(nb_nodes_per_element);
+ Vector<Real>::const_iterator<types::RVector> shape_Mp = fem.getShapeFunctions().getShapes(_bernoulli_beam_2, _not_ghost, 3).begin(nb_nodes_per_element);
+ Vector<Real>::const_iterator<types::RVector> shape_Lp = fem.getShapeFunctions().getShapes(_bernoulli_beam_2, _not_ghost, 4).begin(nb_nodes_per_element);
+
+ N_matrix.clear();
+ Vector<Real>::iterator<types::RMatrix> N_it = N_matrix.begin(nb_degree_of_freedom, nb_degree_of_freedom * nb_nodes_per_element);
+ Vector<Real>::iterator<types::RMatrix> N_end = N_matrix.end(nb_degree_of_freedom, nb_degree_of_freedom * nb_nodes_per_element);
+
+ for (;N_it != N_end; ++N_it, ++shape_N0, ++shape_M0, ++shape_L0, ++shape_Mp, ++shape_Lp) {
+ types::Matrix<Real> & N = *N_it;
+ const types::Vector<Real> & N0 = *shape_N0;
+ const types::Vector<Real> & M0 = *shape_M0;
+ const types::Vector<Real> & L0 = *shape_L0;
+ const types::Vector<Real> & Mp = *shape_Mp;
+ const types::Vector<Real> & Lp = *shape_Lp;
+
+ N(0,0) = N0(0);
+ N(0,3) = N0(1);
+
+ N(1,1) = M0(0);
+ N(1,2) = L0(0);
+ N(1,4) = M0(1);
+ N(1,5) = L0(1);
+
+ N(2,1) = Mp(0);
+ N(2,2) = Lp(0);
+ N(2,4) = Mp(1);
+ N(2,5) = Lp(1);
}
- // allocate the vector that will contain the integrated values
- std::stringstream name;
- name << id << ":solidmechanics:" << type << ":integral_boundary";
- Vector<Real> int_funct(nb_element, nb_degree_of_freedom*nb_nodes_per_element,name.str());
- //do the integration
- getFEM().integrate(funct, int_funct, nb_degree_of_freedom*nb_nodes_per_element, type);
- // assemble the result into force vector
- getFEM().assembleVector(int_funct,*force_momentum,
- dof_synchronizer->getLocalDOFEquationNumbers(),
- nb_degree_of_freedom, type);
AKANTU_DEBUG_OUT();
}
+
/* -------------------------------------------------------------------------- */
-void StructuralMechanicsModel::computeForcesByStressTensor(__attribute__ ((unused)) const Vector<Real> & stresses,
- __attribute__ ((unused)) const ElementType & type){
+template<>
+void StructuralMechanicsModel::transferNMatrixToSymVoigtNMatrix<_bernoulli_beam_3>(Vector<Real> & N_matrix) {
AKANTU_DEBUG_IN();
- /**
- UInt nb_element = getFEMBoundary().getMesh().getNbElement(type);
- UInt nb_quad = getFEMBoundary().getNbQuadraturePoints(type);
-
- // check dimension match
- AKANTU_DEBUG_ASSERT(Mesh::getSpatialDimension(type) == getFEMBoundary().getElementDimension(),
- "element type dimension does not match the dimension of boundaries : " <<
- getFEMBoundary().getElementDimension() << " != " <<
- Mesh::getSpatialDimension(type));
-
- // check size of the vector
- AKANTU_DEBUG_ASSERT(stresses.getSize() == nb_quad*nb_element,
- "the size of the vector should be the total number of quadrature points");
-
- // check number of components
- AKANTU_DEBUG_ASSERT(stresses.getNbComponent() == spatial_dimension*spatial_dimension,
- "the number of components should be the dimension of 2-tensors");
-
+ ElementType type = _bernoulli_beam_3;
- std::stringstream name;
- name << id << ":solidmechanics:" << type << ":traction_boundary";
- Vector<Real> funct(nb_element*nb_quad, spatial_dimension,name.str());
- const Vector<Real> & normals_on_quad = getFEMBoundary().getNormalsOnQuadPoints(type);
+ MyFEMType & fem = getFEMClass<MyFEMType>();
+ UInt nb_nodes_per_element = getFEM().getMesh().getNbNodesPerElement(type);
- Math::matrix_vector(spatial_dimension,spatial_dimension,stresses,normals_on_quad,funct);
- computeForcesByTractionVector(funct,type);
- */
+ Vector<Real>::const_iterator<types::RVector> shape_N0 = fem.getShapeFunctions().getShapes(type, _not_ghost, 0).begin(nb_nodes_per_element);
+ Vector<Real>::const_iterator<types::RVector> shape_M0 = fem.getShapeFunctions().getShapes(type, _not_ghost, 1).begin(nb_nodes_per_element);
+ Vector<Real>::const_iterator<types::RVector> shape_L0 = fem.getShapeFunctions().getShapes(type, _not_ghost, 2).begin(nb_nodes_per_element);
+ Vector<Real>::const_iterator<types::RVector> shape_Mp = fem.getShapeFunctions().getShapes(type, _not_ghost, 3).begin(nb_nodes_per_element);
+ Vector<Real>::const_iterator<types::RVector> shape_Lp = fem.getShapeFunctions().getShapes(type, _not_ghost, 4).begin(nb_nodes_per_element);
+
+ N_matrix.clear();
+ Vector<Real>::iterator<types::RMatrix> N_it = N_matrix.begin(nb_degree_of_freedom, nb_degree_of_freedom * nb_nodes_per_element);
+ Vector<Real>::iterator<types::RMatrix> N_end = N_matrix.end(nb_degree_of_freedom, nb_degree_of_freedom * nb_nodes_per_element);
+
+ for (; N_it != N_end; ++N_it, ++shape_N0, ++shape_M0, ++shape_L0, ++shape_Mp, ++shape_Lp) {
+ types::Matrix<Real> & N = *N_it;
+ const types::Vector<Real> & N0 = *shape_N0;
+ const types::Vector<Real> & M0 = *shape_M0;
+ const types::Vector<Real> & L0 = *shape_L0;
+ const types::Vector<Real> & Mp = *shape_Mp;
+ const types::Vector<Real> & Lp = *shape_Lp;
+
+ N(0,0) = N0(0);
+ N(0,6) = N0(1);
+
+ N(1,1) = M0(0);
+ N(1,5) = L0(0);
+ N(1,7) = M0(1);
+ N(1,11) = L0(1);
+
+ N(2,2) = M0(0);
+ N(2,4) = -L0(0);
+ N(2,8) = M0(1);
+ N(2,10) = -L0(1);
+
+ N(3,3) = N0(0);
+ N(3,9) = N0(1);
+
+ N(4,2) = Mp(0);
+ N(4,4) = -Lp(0);
+ N(4,8) = Mp(1);
+ N(4,10) = -Lp(1);
+
+ N(5,1) = Mp(0);
+ N(5,5) = Lp(0);
+ N(5,7) = Mp(1);
+ N(5,11) = Lp(1);
+ }
AKANTU_DEBUG_OUT();
}
-
+/* -------------------------------------------------------------------------- */
__END_AKANTU__
diff --git a/src/model/structural_mechanics/structural_mechanics_model_inline_impl.cc b/src/model/structural_mechanics/structural_mechanics_model_inline_impl.cc
index 77e63e350..2d7deab6c 100644
--- a/src/model/structural_mechanics/structural_mechanics_model_inline_impl.cc
+++ b/src/model/structural_mechanics/structural_mechanics_model_inline_impl.cc
@@ -1,200 +1,381 @@
/**
* @file structural_mechanics_model_inline_impl.cc
*
* @author Fabian Barras <fabian.barras@epfl.ch>
+ * @date Thu May 5 19:48:07 2011
*
- * @date Fri Jul 15 19:41:58 2011
- *
- * @brief StructuralMechanicsModel implementation
+ * @brief
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
+
/* -------------------------------------------------------------------------- */
template<ElementType type>
inline UInt StructuralMechanicsModel::getTangentStiffnessVoigtSize() {
AKANTU_DEBUG_TO_IMPLEMENT();
return 0;
}
template<>
inline UInt StructuralMechanicsModel::getTangentStiffnessVoigtSize<_bernoulli_beam_2>() {
return 2;
}
+template<>
+inline UInt StructuralMechanicsModel::getTangentStiffnessVoigtSize<_bernoulli_beam_3>() {
+ return 4;
+}
+
/* -------------------------------------------------------------------------- */
template <ElementType type>
void StructuralMechanicsModel::assembleStiffnessMatrix() {
AKANTU_DEBUG_IN();
SparseMatrix & K = *stiffness_matrix;
- // const Vector<Int> & equation_number = *equation_number;
- // const Vector<Real> * shapes_derivatives;
UInt nb_element = getFEM().getMesh().getNbElement(type);
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
UInt nb_quadrature_points = getFEM().getNbQuadraturePoints(type);
UInt tangent_size = getTangentStiffnessVoigtSize<type>();
- Vector<Real> * tangent_stiffness_matrix =
+ Vector<Real> * tangent_moduli =
new Vector<Real>(nb_element * nb_quadrature_points, tangent_size * tangent_size,
"tangent_stiffness_matrix");
- computeTangentStiffness<type>(*tangent_stiffness_matrix);
+ tangent_moduli->clear();
+
+ computeTangentModuli<type>(*tangent_moduli);
/// compute @f$\mathbf{B}^t * \mathbf{D} * \mathbf{B}@f$
UInt bt_d_b_size = nb_degree_of_freedom * nb_nodes_per_element;
Vector<Real> * bt_d_b = new Vector<Real>(nb_element*nb_quadrature_points,
bt_d_b_size * bt_d_b_size,
"B^t*D*B");
Vector<Real> * b = new Vector<Real>(nb_element*nb_quadrature_points,
tangent_size*bt_d_b_size,
"B");
transferBMatrixToSymVoigtBMatrix<type>(*b);
types::RMatrix Bt_D(bt_d_b_size, tangent_size);
+ types::RMatrix BT(tangent_size, bt_d_b_size);
Vector<Real>::iterator<types::RMatrix> B = b->begin(tangent_size, bt_d_b_size);
- Vector<Real>::iterator<types::RMatrix> D = tangent_stiffness_matrix->begin(tangent_size, tangent_size);
+ Vector<Real>::iterator<types::RMatrix> D = tangent_moduli->begin(tangent_size, tangent_size);
Vector<Real>::iterator<types::RMatrix> Bt_D_B = bt_d_b->begin(bt_d_b_size, bt_d_b_size);
+ Vector<Real>::iterator<types::RMatrix> T = rotation_matrix(type).begin(bt_d_b_size, bt_d_b_size);
- for (UInt e = 0; e < nb_element; ++e) {
- for (UInt q = 0; q < nb_quadrature_points; ++q) {
- Bt_D.mul<true, false>(*B, *D);
- Bt_D_B->mul<false, false>(Bt_D, *B);
-
- ++B;
- ++D;
- ++Bt_D_B;
+ for (UInt e = 0; e < nb_element; ++e, ++T) {
+ for (UInt q = 0; q < nb_quadrature_points; ++q, ++B, ++D, ++Bt_D_B) {
+ BT.mul<false, false>(*B, *T);
+ Bt_D.mul<true, false>(BT, *D);
+ Bt_D_B->mul<false, false>(Bt_D, BT);
}
}
delete b;
- delete tangent_stiffness_matrix;
+ delete tangent_moduli;
/// compute @f$ k_e = \int_e \mathbf{B}^t * \mathbf{D} * \mathbf{B}@f$
Vector<Real> * int_bt_d_b = new Vector<Real>(nb_element,
bt_d_b_size * bt_d_b_size,
"int_B^t*D*B");
getFEM().integrate(*bt_d_b, *int_bt_d_b,
bt_d_b_size * bt_d_b_size,
type);
delete bt_d_b;
getFEM().assembleMatrix(*int_bt_d_b, K, nb_degree_of_freedom, type);
delete int_bt_d_b;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template<ElementType type>
-void StructuralMechanicsModel::computeTangentStiffness(__attribute__ ((unused)) Vector<Real> & tangent_stiffness_matrix) {
+void StructuralMechanicsModel::computeTangentModuli(Vector<Real> & tangent_moduli) {
AKANTU_DEBUG_TO_IMPLEMENT();
}
/* -------------------------------------------------------------------------- */
template<ElementType type>
-void StructuralMechanicsModel::transferBMatrixToSymVoigtBMatrix(__attribute__ ((unused)) Vector<Real> & b) {
+void StructuralMechanicsModel::transferBMatrixToSymVoigtBMatrix(Vector<Real> & b, bool local) {
AKANTU_DEBUG_TO_IMPLEMENT();
}
/* -------------------------------------------------------------------------- */
template<ElementType type>
void StructuralMechanicsModel::computeStressOnQuad() {
- AKANTU_DEBUG_IN();
+ AKANTU_DEBUG_IN();
- Vector<Real> & sigma = stress(type, _not_ghost);
+ Vector<Real> & sigma = stress(type, _not_ghost);
- sigma.clear();
+ sigma.clear();
+ const Mesh & mesh = getFEM().getMesh();
- UInt nb_element = getFEM().getMesh().getNbElement(type);
+ UInt nb_element = mesh.getNbElement(type);
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
UInt nb_quadrature_points = getFEM().getNbQuadraturePoints(type);
- const Vector<UInt> & connect = getFEM().getMesh().getConnectivity(type);
UInt tangent_size = getTangentStiffnessVoigtSize<type>();
- Vector<Real> * tangent_stiffness_matrix =
+ Vector<Real> * tangent_moduli =
new Vector<Real>(nb_element*nb_quadrature_points, tangent_size * tangent_size,
"tangent_stiffness_matrix");
- computeTangentStiffness<type>(*tangent_stiffness_matrix);
+ computeTangentModuli<type>(*tangent_moduli);
/// compute DB
UInt d_b_size = nb_degree_of_freedom * nb_nodes_per_element;
Vector<Real> * d_b = new Vector<Real>(nb_element*nb_quadrature_points,
d_b_size * tangent_size,
- "D*B");
+ "D*B");
Vector<Real> * b = new Vector<Real>(nb_element*nb_quadrature_points,
tangent_size*d_b_size,
"B");
transferBMatrixToSymVoigtBMatrix<type>(*b);
Vector<Real>::iterator<types::RMatrix> B = b->begin(tangent_size, d_b_size);
- Vector<Real>::iterator<types::RMatrix> D = tangent_stiffness_matrix->begin(tangent_size, tangent_size);
+ Vector<Real>::iterator<types::RMatrix> D = tangent_moduli->begin(tangent_size, tangent_size);
Vector<Real>::iterator<types::RMatrix> D_B = d_b->begin(tangent_size, d_b_size);
for (UInt e = 0; e < nb_element; ++e) {
- for (UInt q = 0; q < nb_quadrature_points; ++q) {
+ for (UInt q = 0; q < nb_quadrature_points; ++q, ++B, ++D, ++D_B) {
D_B->mul<false, false>(*D, *B);
-
- ++B;
- ++D;
- ++D_B;
}
}
delete b;
- delete tangent_stiffness_matrix;
+ delete tangent_moduli;
/// compute DBu
D_B = d_b->begin(tangent_size, d_b_size);
Vector<Real>::iterator< types::RVector> DBu = sigma.begin(tangent_size);
- types::RVector U (d_b_size);
- for (UInt e = 0; e < nb_element; ++e) {
- for (UInt n = 0; n < nb_nodes_per_element; ++n) {
- memcpy(U.storage()+n*nb_degree_of_freedom,
- displacement_rotation->values+connect(e,n)*nb_degree_of_freedom,
- nb_degree_of_freedom*sizeof(Real));
- }
+ types::RVector ul (d_b_size);
+
+ Vector<Real> u_el(0, d_b_size);
+ FEM::extractNodalToElementField(mesh, *displacement_rotation, u_el, type);
- for (UInt q = 0; q < nb_quadrature_points; ++q) {
- DBu ->mul<false>(*D_B,U);
- ++D_B;
- ++DBu;
+ Vector<Real>::iterator<types::RVector> ug = u_el.begin(d_b_size);
+ Vector<Real>::iterator<types::RMatrix> T = rotation_matrix(type).begin(d_b_size, d_b_size);
+
+ for (UInt e = 0; e < nb_element; ++e, ++T, ++ug) {
+ ul.mul<false>(*T, *ug);
+ for (UInt q = 0; q < nb_quadrature_points; ++q, ++D_B, ++DBu) {
+ DBu->mul<false>(*D_B, ul);
}
}
delete d_b;
AKANTU_DEBUG_OUT();
}
+
+/* -------------------------------------------------------------------------- */
+template<ElementType type>
+void StructuralMechanicsModel::computeForcesByLocalTractionVector(const Vector<Real> & tractions) {
+ AKANTU_DEBUG_IN();
+
+ UInt nb_element = getFEM().getMesh().getNbElement(type);
+ UInt nb_nodes_per_element = getFEM().getMesh().getNbNodesPerElement(type);
+ UInt nb_quad = getFEM().getNbQuadraturePoints(type);
+
+ // check dimension match
+ AKANTU_DEBUG_ASSERT(Mesh::getSpatialDimension(type) == getFEM().getElementDimension(),
+ "element type dimension does not match the dimension of boundaries : " <<
+ getFEM().getElementDimension() << " != " <<
+ Mesh::getSpatialDimension(type));
+
+ // check size of the vector
+ AKANTU_DEBUG_ASSERT(tractions.getSize() == nb_quad*nb_element,
+ "the size of the vector should be the total number of quadrature points");
+
+ // check number of components
+ AKANTU_DEBUG_ASSERT(tractions.getNbComponent() == nb_degree_of_freedom,
+ "the number of components should be the spatial dimension of the problem");
+
+
+ Vector<Real> Nvoigt(nb_element * nb_quad, nb_degree_of_freedom * nb_degree_of_freedom * nb_nodes_per_element);
+ transferNMatrixToSymVoigtNMatrix<type>(Nvoigt);
+
+ Vector<Real>::const_iterator<types::RMatrix> N_it = Nvoigt.begin(nb_degree_of_freedom,
+ nb_degree_of_freedom * nb_nodes_per_element);
+ Vector<Real>::const_iterator<types::RMatrix> T_it = rotation_matrix(type).begin(nb_degree_of_freedom * nb_nodes_per_element,
+ nb_degree_of_freedom * nb_nodes_per_element);
+ Vector<Real>::const_iterator<types::RVector> te_it = tractions.begin(nb_degree_of_freedom);
+
+ Vector<Real> funct(nb_element * nb_quad, nb_degree_of_freedom * nb_nodes_per_element, 0.);
+ Vector<Real>::iterator< types::RVector> Fe_it = funct.begin(nb_degree_of_freedom * nb_nodes_per_element);
+
+ types::Vector<Real> fe(nb_degree_of_freedom * nb_nodes_per_element);
+ for (UInt e = 0; e < nb_element; ++e, ++T_it) {
+ const types::RMatrix & T = *T_it;
+ for (UInt q = 0; q < nb_quad; ++q, ++N_it, ++te_it, ++Fe_it) {
+ const types::RMatrix & N = *N_it;
+ const types::RVector & te = *te_it;
+ types::RVector & Fe = *Fe_it;
+
+ // compute N^t tl
+ fe.mul<true>(N, te);
+ // turn N^t tl back in the global referential
+ Fe.mul<true>(T, fe);
+ }
+ }
+
+ // allocate the vector that will contain the integrated values
+ std::stringstream name;
+ name << id << type << ":integral_boundary";
+ Vector<Real> int_funct(nb_element, nb_degree_of_freedom * nb_nodes_per_element, name.str());
+
+ //do the integration
+ getFEM().integrate(funct, int_funct, nb_degree_of_freedom*nb_nodes_per_element, type);
+
+ // assemble the result into force vector
+ getFEM().assembleVector(int_funct,*force_momentum,
+ dof_synchronizer->getLocalDOFEquationNumbers(),
+ nb_degree_of_freedom, type);
+ AKANTU_DEBUG_OUT();
+}
+
+
+/* -------------------------------------------------------------------------- */
+template<ElementType type>
+void StructuralMechanicsModel::computeForcesByGlobalTractionVector(const Vector<Real> & traction_global){
+ AKANTU_DEBUG_IN();
+ UInt nb_element = getFEM().getMesh().getNbElement(type);
+ UInt nb_quad = getFEM().getNbQuadraturePoints(type);
+ UInt nb_nodes_per_element = getFEM().getMesh().getNbNodesPerElement(type);
+
+ std::stringstream name;
+ name << id << ":structuralmechanics:imposed_linear_load";
+ Vector<Real> traction_local(nb_element*nb_quad, nb_degree_of_freedom, name.str());
+
+ Vector<Real>::const_iterator<types::RMatrix> T_it = rotation_matrix(type).begin(nb_degree_of_freedom * nb_nodes_per_element,
+ nb_degree_of_freedom * nb_nodes_per_element);
+
+ Vector<Real>::const_iterator< types::RVector> Te_it = traction_global.begin(nb_degree_of_freedom);
+ Vector<Real>::iterator< types::RVector> te_it = traction_local.begin(nb_degree_of_freedom);
+
+ types::Matrix<Real> R(nb_degree_of_freedom, nb_degree_of_freedom);
+ for (UInt e = 0; e < nb_element; ++e, ++T_it) {
+ const types::RMatrix & T = *T_it;
+ for (UInt i = 0; i < nb_degree_of_freedom; ++i)
+ for (UInt j = 0; j < nb_degree_of_freedom; ++j)
+ R(i, j) = T(i, j);
+
+ for (UInt q = 0; q < nb_quad; ++q, ++Te_it, ++te_it) {
+ const types::RVector & Te = *Te_it;
+ types::RVector & te = *te_it;
+ // turn the traction in the local referential
+ te.mul<false>(R, Te);
+ }
+ }
+
+ computeForcesByLocalTractionVector<type>(traction_local);
+
+ AKANTU_DEBUG_OUT();
+
+}
+
+/* -------------------------------------------------------------------------- */
+/**
+ * @param myf pointer to a function that fills a vector/tensor with respect to
+ * passed coordinates
+ */
+template<ElementType type>
+void StructuralMechanicsModel::computeForcesFromFunction(BoundaryFunction myf,
+ BoundaryFunctionType function_type){
+ /** function type is
+ ** _bft_forces : linear load is given
+ ** _bft_stress : stress function is given -> Not already done for this kind of model
+ */
+
+ std::stringstream name;
+ name << id << ":structuralmechanics:imposed_linear_load";
+ Vector<Real> lin_load(0, nb_degree_of_freedom,name.str());
+ name.clear();
+
+ UInt offset = nb_degree_of_freedom;
+
+ //prepare the loop over element types
+ UInt nb_quad = getFEM().getNbQuadraturePoints(type);
+ UInt nb_element = getFEM().getMesh().getNbElement(type);
+
+ name.clear();
+ name << id << ":structuralmechanics:quad_coords";
+ Vector<Real> quad_coords(nb_element * nb_quad, spatial_dimension, "quad_coords");
+
+
+ getFEMClass<MyFEMType>().getShapeFunctions().interpolateOnControlPoints<type>(getFEM().getMesh().getNodes(),
+ quad_coords,
+ spatial_dimension);
+ getFEMClass<MyFEMType>().getShapeFunctions().interpolateOnControlPoints<type>(getFEM().getMesh().getNodes(),
+ quad_coords,
+ spatial_dimension,
+ _not_ghost,
+ NULL,
+ true,
+ 0,
+ 1,
+ 1);
+ if(spatial_dimension == 3)
+ getFEMClass<MyFEMType>().getShapeFunctions().interpolateOnControlPoints<type>(getFEM().getMesh().getNodes(),
+ quad_coords,
+ spatial_dimension,
+ _not_ghost,
+ NULL,
+ true,
+ 0,
+ 2,
+ 2);
+ lin_load.resize(nb_element*nb_quad);
+ Real * imposed_val = lin_load.storage();
+
+ /// sigma/load on each quadrature points
+ Real * qcoord = quad_coords.storage();
+ for (UInt el = 0; el < nb_element; ++el) {
+ for (UInt q = 0; q < nb_quad; ++q) {
+ myf(qcoord, imposed_val, NULL, 0);
+ imposed_val += offset;
+ qcoord += spatial_dimension;
+ }
+ }
+
+ switch(function_type) {
+ case _bft_traction_local:
+ computeForcesByLocalTractionVector<type>(lin_load); break;
+ case _bft_traction:
+ computeForcesByGlobalTractionVector<type>(lin_load); break;
+ default: break;
+ }
+}
+
+/* -------------------------------------------------------------------------- */
diff --git a/src/solver/sparse_matrix.cc b/src/solver/sparse_matrix.cc
index 6161b4c65..8092e1f0e 100644
--- a/src/solver/sparse_matrix.cc
+++ b/src/solver/sparse_matrix.cc
@@ -1,431 +1,431 @@
/**
* @file sparse_matrix.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Mon Dec 13 10:48:06 2010
*
* @brief implementation of the SparseMatrix class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <fstream>
/* -------------------------------------------------------------------------- */
#include "sparse_matrix.hh"
#include "static_communicator.hh"
#include "dof_synchronizer.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
SparseMatrix::SparseMatrix(UInt size,
const SparseMatrixType & sparse_matrix_type,
UInt nb_degree_of_freedom,
const ID & id,
const MemoryID & memory_id) :
Memory(memory_id), id(id),
sparse_matrix_type(sparse_matrix_type),
nb_degree_of_freedom(nb_degree_of_freedom),
size(size),
nb_non_zero(0),
irn(0,1,"irn"), jcn(0,1,"jcn"), a(0,1,"A") {
AKANTU_DEBUG_IN();
StaticCommunicator & comm = StaticCommunicator::getStaticCommunicator();
nb_proc = comm.getNbProc();
dof_synchronizer = NULL;
irn_save = NULL;
jcn_save = NULL;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
SparseMatrix::SparseMatrix(const SparseMatrix & matrix,
const ID & id,
const MemoryID & memory_id) :
Memory(memory_id), id(id),
sparse_matrix_type(matrix.sparse_matrix_type),
nb_degree_of_freedom(matrix.nb_degree_of_freedom),
size(matrix.size),
nb_proc(matrix.nb_proc),
nb_non_zero(matrix.nb_non_zero),
irn(matrix.irn, true), jcn(matrix.jcn, true), a(matrix.getA(), true),
irn_jcn_k(matrix.irn_jcn_k) {
AKANTU_DEBUG_IN();
size_save = 0;
irn_save = NULL;
jcn_save = NULL;
dof_synchronizer = matrix.dof_synchronizer;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
SparseMatrix::~SparseMatrix() {
AKANTU_DEBUG_IN();
// if (irn_jcn_to_k) delete irn_jcn_to_k;
if(irn_save) delete irn_save;
if(jcn_save) delete jcn_save;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SparseMatrix::buildProfile(const Mesh & mesh, const DOFSynchronizer & dof_synchronizer) {
AKANTU_DEBUG_IN();
// if(irn_jcn_to_k) delete irn_jcn_to_k;
// irn_jcn_to_k = new std::map<std::pair<UInt, UInt>, UInt>;
clearProfile();
this->dof_synchronizer = &const_cast<DOFSynchronizer &>(dof_synchronizer);
coordinate_list_map::iterator irn_jcn_k_it;
Int * eq_nb_val = dof_synchronizer.getGlobalDOFEquationNumbers().values;
Mesh::type_iterator it = mesh.firstType(mesh.getSpatialDimension(), _not_ghost, _ek_not_defined);
Mesh::type_iterator end = mesh.lastType (mesh.getSpatialDimension(), _not_ghost, _ek_not_defined);
for(; it != end; ++it) {
UInt nb_element = mesh.getNbElement(*it);
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(*it);
UInt size_mat = nb_nodes_per_element * nb_degree_of_freedom;
UInt * conn_val = mesh.getConnectivity(*it, _not_ghost).values;
Int * local_eq_nb_val = new Int[nb_degree_of_freedom * nb_nodes_per_element];
for (UInt e = 0; e < nb_element; ++e) {
Int * tmp_local_eq_nb_val = local_eq_nb_val;
for (UInt i = 0; i < nb_nodes_per_element; ++i) {
UInt n = conn_val[i];
for (UInt d = 0; d < nb_degree_of_freedom; ++d) {
*tmp_local_eq_nb_val++ = eq_nb_val[n * nb_degree_of_freedom + d];
}
// memcpy(tmp_local_eq_nb_val, eq_nb_val + n * nb_degree_of_freedom, nb_degree_of_freedom * sizeof(Int));
// tmp_local_eq_nb_val += nb_degree_of_freedom;
}
for (UInt i = 0; i < size_mat; ++i) {
UInt c_irn = local_eq_nb_val[i];
if(c_irn < size) {
UInt j_start = (sparse_matrix_type == _symmetric) ? i : 0;
for (UInt j = j_start; j < size_mat; ++j) {
UInt c_jcn = local_eq_nb_val[j];
if(c_jcn < size) {
KeyCOO irn_jcn = key(c_irn, c_jcn);
irn_jcn_k_it = irn_jcn_k.find(irn_jcn);
if (irn_jcn_k_it == irn_jcn_k.end()) {
irn_jcn_k[irn_jcn] = nb_non_zero;
irn.push_back(c_irn + 1);
jcn.push_back(c_jcn + 1);
nb_non_zero++;
}
}
}
}
}
conn_val += nb_nodes_per_element;
}
delete [] local_eq_nb_val;
}
for (UInt i = 0; i < size; ++i) {
KeyCOO irn_jcn = key(i, i);
irn_jcn_k_it = irn_jcn_k.find(irn_jcn);
if(irn_jcn_k_it == irn_jcn_k.end()) {
irn_jcn_k[irn_jcn] = nb_non_zero;
irn.push_back(i + 1);
jcn.push_back(i + 1);
nb_non_zero++;
}
}
a.resize(nb_non_zero);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SparseMatrix::applyBoundary(const Vector<bool> & boundary) {
AKANTU_DEBUG_IN();
const DOFSynchronizer::GlobalEquationNumberMap & local_eq_num_to_global = dof_synchronizer->getGlobalEquationNumberToLocal();
Int * irn_val = irn.values;
Int * jcn_val = jcn.values;
Real * a_val = a.values;
for (UInt i = 0; i < nb_non_zero; ++i) {
UInt ni = local_eq_num_to_global.find(*irn_val - 1)->second;
UInt nj = local_eq_num_to_global.find(*jcn_val - 1)->second;
if(boundary.values[ni] || boundary.values[nj]) {
if (*irn_val != *jcn_val) *a_val = 0;
else {
if(dof_synchronizer->getDOFTypes()(ni) >= 0) *a_val = 0;
else *a_val = 1;
}
}
irn_val++; jcn_val++; a_val++;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SparseMatrix::removeBoundary(const Vector<bool> & boundary) {
AKANTU_DEBUG_IN();
if(irn_save) delete irn_save;
if(jcn_save) delete jcn_save;
irn_save = new Vector<Int>(irn, true);
jcn_save = new Vector<Int>(jcn, true);
UInt n = boundary.getSize()*boundary.getNbComponent();
UInt * perm = new UInt[n];
size_save = size;
size = 0;
for (UInt i = 0; i < n; ++i) {
if(!boundary.values[i]) {
perm[i] = size;
// std::cout << "perm["<< i <<"] = " << size << std::endl;
size++;
}
}
for (UInt i = 0; i < nb_non_zero;) {
if(boundary.values[irn(i) - 1] || boundary.values[jcn(i) - 1]) {
irn.erase(i);
jcn.erase(i);
a.erase(i);
nb_non_zero--;
} else {
irn(i) = perm[irn(i) - 1] + 1;
jcn(i) = perm[jcn(i) - 1] + 1;
i++;
}
}
delete [] perm;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SparseMatrix::restoreProfile() {
AKANTU_DEBUG_IN();
irn.resize(irn_save->getSize());
jcn.resize(jcn_save->getSize());
nb_non_zero = irn.getSize();
a.resize(nb_non_zero);
size = size_save;
memcpy(irn.values, irn_save->values, irn.getSize()*sizeof(Int));
memcpy(jcn.values, jcn_save->values, jcn.getSize()*sizeof(Int));
delete irn_save; irn_save = NULL;
delete jcn_save; jcn_save = NULL;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SparseMatrix::saveProfile(const std::string & filename) const {
AKANTU_DEBUG_IN();
std::ofstream outfile;
outfile.open(filename.c_str());
outfile << "%%MatrixMarket matrix coordinate pattern";
if(sparse_matrix_type == _symmetric) outfile << " symmetric";
else outfile << " general";
outfile << std::endl;
UInt m = size;
outfile << m << " " << m << " " << nb_non_zero << std::endl;
for (UInt i = 0; i < nb_non_zero; ++i) {
outfile << irn.values[i] << " " << jcn.values[i] << " 1" << std::endl;
}
outfile.close();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SparseMatrix::saveMatrix(const std::string & filename) const {
AKANTU_DEBUG_IN();
std::ofstream outfile;
outfile.precision(std::numeric_limits<Real>::digits10);
outfile.open(filename.c_str());
outfile << "%%MatrixMarket matrix coordinate real";
if(sparse_matrix_type == _symmetric) outfile << " symmetric";
else outfile << " general";
outfile << std::endl;
outfile << size << " " << size << " " << nb_non_zero << std::endl;
for (UInt i = 0; i < nb_non_zero; ++i) {
outfile << irn(i) << " " << jcn(i) << " " << a(i) << std::endl;
}
outfile.close();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
Vector<Real> & operator*=(Vector<Real> & vect, const SparseMatrix & mat) {
AKANTU_DEBUG_IN();
// AKANTU_DEBUG_ASSERT((vect.getSize()*vect.getNbComponent() == mat.getSize()) &&
// (vect.getNbComponent() == mat.getNbDegreOfFreedom()),
// "The size of the matrix and the vector do not match");
const SparseMatrixType & sparse_matrix_type = mat.getSparseMatrixType();
DOFSynchronizer * dof_synchronizer = mat.getDOFSynchronizerPointer();
UInt nb_non_zero = mat.getNbNonZero();
Real * tmp = new Real [vect.getNbComponent() * vect.getSize()];
std::fill_n(tmp, vect.getNbComponent() * vect.getSize(), 0);
Int * i_val = mat.getIRN().values;
Int * j_val = mat.getJCN().values;
Real * a_val = mat.getA().values;
Real * vect_val = vect.values;
for (UInt k = 0; k < nb_non_zero; ++k) {
UInt i = *(i_val++);
UInt j = *(j_val++);
Real a = *(a_val++);
UInt local_i = i - 1;
UInt local_j = j - 1;
if(dof_synchronizer) {
local_i = dof_synchronizer->getDOFLocalID(local_i);
local_j = dof_synchronizer->getDOFLocalID(local_j);
}
tmp[local_i] += a * vect_val[local_j];
- if(sparse_matrix_type == _symmetric && (local_i != local_j))
+ if((sparse_matrix_type == _symmetric) && (local_i != local_j))
tmp[local_j] += a * vect_val[local_i];
}
memcpy(vect_val, tmp, vect.getNbComponent() * vect.getSize() * sizeof(Real));
delete [] tmp;
if(dof_synchronizer)
dof_synchronizer->reduceSynchronize<AddOperation>(vect);
AKANTU_DEBUG_OUT();
return vect;
}
/* -------------------------------------------------------------------------- */
void SparseMatrix::copyContent(const SparseMatrix & matrix) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(nb_non_zero == matrix.getNbNonZero(),
"The to matrix don't have the same profiles");
memcpy(a.values, matrix.getA().values, nb_non_zero * sizeof(Real));
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void SparseMatrix::add(const SparseMatrix & matrix, Real alpha) {
AKANTU_DEBUG_ASSERT(nb_non_zero == matrix.getNbNonZero(),
"The to matrix don't have the same profiles");
Real * a_val = a.values;
Real * b_val = matrix.a.values;
for (UInt n = 0; n < nb_non_zero; ++n) {
*a_val++ += alpha * *b_val++;
}
}
/* -------------------------------------------------------------------------- */
void SparseMatrix::lump(Vector<Real> & lumped) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT((lumped.getNbComponent() == nb_degree_of_freedom),
"The size of the matrix and the vector do not match");
UInt vect_size = size / nb_degree_of_freedom;
if(dof_synchronizer) vect_size = dof_synchronizer->getNbDOFs() / nb_degree_of_freedom;
lumped.resize(vect_size);
lumped.clear();
Int * i_val = irn.values;
Int * j_val = jcn.values;
Real * a_val = a.values;
Real * vect_val = lumped.values;
for (UInt k = 0; k < nb_non_zero; ++k) {
UInt i = *(i_val++);
UInt j = *(j_val++);
Real a = *(a_val++);
UInt local_i = i - 1;
UInt local_j = j - 1;
if(dof_synchronizer) {
local_i = dof_synchronizer->getDOFLocalID(local_i);
local_j = dof_synchronizer->getDOFLocalID(local_j);
}
vect_val[local_i] += a;
if(sparse_matrix_type == _symmetric && (i != j))
vect_val[local_j] += a;
}
if(dof_synchronizer)
dof_synchronizer->reduceSynchronize<AddOperation>(lumped);
AKANTU_DEBUG_OUT();
}
__END_AKANTU__
diff --git a/src/synchronizer/distributed_synchronizer.cc b/src/synchronizer/distributed_synchronizer.cc
index c8d0ad6bf..f376e9b17 100644
--- a/src/synchronizer/distributed_synchronizer.cc
+++ b/src/synchronizer/distributed_synchronizer.cc
@@ -1,1025 +1,1026 @@
/**
* @file distributed_synchronizer.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Thu Jun 16 16:36:52 2011
*
* @brief implementation of a communicator using a static_communicator for real
* send/receive
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "distributed_synchronizer.hh"
#include "static_communicator.hh"
#include "mesh_utils.hh"
/* -------------------------------------------------------------------------- */
#include <map>
#include <iostream>
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
DistributedSynchronizer::DistributedSynchronizer(Mesh & mesh,
SynchronizerID id,
MemoryID memory_id) :
Synchronizer(id, memory_id),
mesh(mesh), static_communicator(&StaticCommunicator::getStaticCommunicator())
{
AKANTU_DEBUG_IN();
nb_proc = static_communicator->getNbProc();
rank = static_communicator->whoAmI();
send_element = new Vector<Element>[nb_proc];
recv_element = new Vector<Element>[nb_proc];
mesh.registerEventHandler(*this);
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
DistributedSynchronizer::~DistributedSynchronizer() {
AKANTU_DEBUG_IN();
for (UInt p = 0; p < nb_proc; ++p) {
// send_buffer[p].resize(0);
// recv_buffer[p].resize(0);
send_element[p].clear();
recv_element[p].clear();
}
// delete [] send_buffer;
// delete [] recv_buffer;
delete [] send_element;
delete [] recv_element;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
DistributedSynchronizer * DistributedSynchronizer::
createDistributedSynchronizerMesh(Mesh & mesh,
const MeshPartition * partition,
UInt root,
SynchronizerID id,
MemoryID memory_id) {
AKANTU_DEBUG_IN();
const UInt TAG_SIZES = 0;
const UInt TAG_CONNECTIVITY = 1;
const UInt TAG_DATA = 2;
const UInt TAG_PARTITIONS = 3;
const UInt TAG_NB_NODES = 4;
const UInt TAG_NODES = 5;
const UInt TAG_COORDINATES = 6;
const UInt TAG_NODES_TYPE = 7;
StaticCommunicator & comm = StaticCommunicator::getStaticCommunicator();
UInt nb_proc = comm.getNbProc();
UInt my_rank = comm.whoAmI();
DistributedSynchronizer & communicator = *(new DistributedSynchronizer(mesh, id, memory_id));
if(nb_proc == 1) return &communicator;
UInt * local_connectivity = NULL;
UInt * local_partitions = NULL;
UInt * local_data = NULL;
Vector<UInt> * old_nodes = mesh.getNodesGlobalIdsPointer();
old_nodes->resize(0);
Vector<Real> * nodes = mesh.getNodesPointer();
UInt spatial_dimension = nodes->getNbComponent();
/* ------------------------------------------------------------------------ */
/* Local (rank == root) */
/* ------------------------------------------------------------------------ */
if(my_rank == root) {
AKANTU_DEBUG_ASSERT(partition->getNbPartition() == nb_proc,
"The number of partition does not match the number of processors");
/**
* connectivity and communications scheme construction
*/
Mesh::type_iterator it = mesh.firstType(mesh.getSpatialDimension(),
_not_ghost,
_ek_not_defined);
Mesh::type_iterator end = mesh.lastType(mesh.getSpatialDimension(),
_not_ghost,
_ek_not_defined);
UInt count = 0;
for(; it != end; ++it) {
ElementType type = *it;
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
UInt nb_element = mesh.getNbElement(*it);
UInt nb_local_element[nb_proc];
UInt nb_ghost_element[nb_proc];
UInt nb_element_to_send[nb_proc];
memset(nb_local_element, 0, nb_proc*sizeof(UInt));
memset(nb_ghost_element, 0, nb_proc*sizeof(UInt));
memset(nb_element_to_send, 0, nb_proc*sizeof(UInt));
UInt * partition_num = partition->getPartition(type, _not_ghost).values;
UInt * ghost_partition = partition->getGhostPartition(type, _ghost).values;
UInt * ghost_partition_offset = partition->getGhostPartitionOffset(type, _ghost).values;
UIntDataMap & uint_data_map = mesh.getUIntDataMap(type, _not_ghost);
UInt nb_tags = uint_data_map.size();
/* -------------------------------------------------------------------- */
/// constructing the reordering structures
for (UInt el = 0; el < nb_element; ++el) {
nb_local_element[partition_num[el]]++;
for (UInt part = ghost_partition_offset[el];
part < ghost_partition_offset[el + 1];
++part) {
nb_ghost_element[ghost_partition[part]]++;
}
nb_element_to_send[partition_num[el]] +=
ghost_partition_offset[el + 1] - ghost_partition_offset[el] + 1;
}
/// allocating buffers
UInt * buffers[nb_proc];
UInt * buffers_tmp[nb_proc];
for (UInt p = 0; p < nb_proc; ++p) {
UInt size = nb_nodes_per_element * (nb_local_element[p] +
nb_ghost_element[p]);
buffers[p] = new UInt[size];
buffers_tmp[p] = buffers[p];
}
/// copying the local connectivity
UInt * conn_val = mesh.getConnectivity(type, _not_ghost).values;
for (UInt el = 0; el < nb_element; ++el) {
memcpy(buffers_tmp[partition_num[el]],
conn_val + el * nb_nodes_per_element,
nb_nodes_per_element * sizeof(UInt));
buffers_tmp[partition_num[el]] += nb_nodes_per_element;
}
/// copying the connectivity of ghost element
for (UInt el = 0; el < nb_element; ++el) {
for (UInt part = ghost_partition_offset[el];
part < ghost_partition_offset[el + 1];
++part) {
UInt proc = ghost_partition[part];
memcpy(buffers_tmp[proc],
conn_val + el * nb_nodes_per_element,
nb_nodes_per_element * sizeof(UInt));
buffers_tmp[proc] += nb_nodes_per_element;
}
}
UInt names_size = 0;
UIntDataMap::iterator it_data;
for(it_data = uint_data_map.begin(); it_data != uint_data_map.end(); ++it_data) {
names_size += it_data->first.size() + 1;
}
/* -------->>>>-SIZE + CONNECTIVITY------------------------------------ */
/// send all connectivity and ghost information to all processors
std::vector<CommunicationRequest *> requests;
for (UInt p = 0; p < nb_proc; ++p) {
if(p != root) {
UInt size[6];
size[0] = (UInt) type;
size[1] = nb_local_element[p];
size[2] = nb_ghost_element[p];
size[3] = nb_element_to_send[p];
size[4] = nb_tags;
size[5] = names_size;
AKANTU_DEBUG_INFO("Sending connectivities informations to proc " << p << " TAG("<< Tag::genTag(my_rank, count, TAG_SIZES) <<")");
comm.send(size, 6, p, Tag::genTag(my_rank, count, TAG_SIZES));
AKANTU_DEBUG_INFO("Sending connectivities to proc " << p << " TAG("<< Tag::genTag(my_rank, count, TAG_CONNECTIVITY) <<")");
requests.push_back(comm.asyncSend(buffers[p],
nb_nodes_per_element * (nb_local_element[p] +
nb_ghost_element[p]),
p, Tag::genTag(my_rank, count, TAG_CONNECTIVITY)));
} else {
local_connectivity = buffers[p];
}
}
/// create the renumbered connectivity
AKANTU_DEBUG_INFO("Renumbering local connectivities");
MeshUtils::renumberMeshNodes(mesh,
local_connectivity,
nb_local_element[root],
nb_ghost_element[root],
type,
*old_nodes);
comm.waitAll(requests);
comm.freeCommunicationRequest(requests);
requests.clear();
for (UInt p = 0; p < nb_proc; ++p) {
delete [] buffers[p];
}
/* -------------------------------------------------------------------- */
for (UInt p = 0; p < nb_proc; ++p) {
buffers[p] = new UInt[nb_ghost_element[p] + nb_element_to_send[p]];
buffers_tmp[p] = buffers[p];
}
/// splitting the partition information to send them to processors
UInt count_by_proc[nb_proc];
memset(count_by_proc, 0, nb_proc*sizeof(UInt));
for (UInt el = 0; el < nb_element; ++el) {
*(buffers_tmp[partition_num[el]]++) = ghost_partition_offset[el + 1] - ghost_partition_offset[el];
for (UInt part = ghost_partition_offset[el], i = 0;
part < ghost_partition_offset[el + 1];
++part, ++i) {
*(buffers_tmp[partition_num[el]]++) = ghost_partition[part];
}
}
for (UInt el = 0; el < nb_element; ++el) {
for (UInt part = ghost_partition_offset[el], i = 0;
part < ghost_partition_offset[el + 1];
++part, ++i) {
*(buffers_tmp[ghost_partition[part]]++) = partition_num[el];
}
}
/* -------->>>>-PARTITIONS--------------------------------------------- */
/// last data to compute the communication scheme
for (UInt p = 0; p < nb_proc; ++p) {
if(p != root) {
AKANTU_DEBUG_INFO("Sending partition informations to proc " << p << " TAG("<< Tag::genTag(my_rank, count, TAG_PARTITIONS) <<")");
requests.push_back(comm.asyncSend(buffers[p],
nb_element_to_send[p] + nb_ghost_element[p],
p, Tag::genTag(my_rank, count, TAG_PARTITIONS)));
} else {
local_partitions = buffers[p];
}
}
AKANTU_DEBUG_INFO("Creating communications scheme");
communicator.fillCommunicationScheme(local_partitions,
nb_local_element[root],
nb_ghost_element[root],
type);
comm.waitAll(requests);
comm.freeCommunicationRequest(requests);
requests.clear();
for (UInt p = 0; p < nb_proc; ++p) {
delete [] buffers[p];
}
/* -------------------------------------------------------------------- */
/// send int data assossiated to the mesh
if(nb_tags) {
UInt uint_names_size = names_size / sizeof(UInt) + (names_size % sizeof(UInt) ? 1 : 0);
for (UInt p = 0; p < nb_proc; ++p) {
UInt size = nb_tags * (nb_local_element[p] + nb_ghost_element[p])
+ uint_names_size;
buffers[p] = new UInt[size];
std::fill_n(buffers[p], size, 0);
buffers_tmp[p] = buffers[p];
}
char * names = new char[names_size];
char * names_tmp = names;
memset(names, 0, names_size);
for(it_data = uint_data_map.begin(); it_data != uint_data_map.end(); ++it_data) {
UInt * data = it_data->second->values;
memcpy(names_tmp, it_data->first.data(), it_data->first.size());
names_tmp += it_data->first.size() + 1;
/// copying data for the local element
for (UInt el = 0; el < nb_element; ++el) {
UInt proc = partition_num[el];
*(buffers_tmp[proc]) = data[el];
buffers_tmp[proc]++;
}
/// copying the data for the ghost element
for (UInt el = 0; el < nb_element; ++el) {
for (UInt part = ghost_partition_offset[el];
part < ghost_partition_offset[el + 1];
++part) {
UInt proc = ghost_partition[part];
*(buffers_tmp[proc]) = data[el];
buffers_tmp[proc]++;
}
}
}
/* -------->>>>-TAGS------------------------------------------------- */
for (UInt p = 0; p < nb_proc; ++p) {
memcpy((char *)buffers_tmp[p], names, names_size);
if(p != root) {
UInt size = nb_tags * (nb_local_element[p] + nb_ghost_element[p])
+ uint_names_size;
AKANTU_DEBUG_INFO("Sending associated data to proc " << p << " TAG("<< Tag::genTag(my_rank, count, TAG_DATA) <<")");
requests.push_back(comm.asyncSend(buffers[p], size, p, Tag::genTag(my_rank, count, TAG_DATA)));
} else {
local_data = buffers[p];
}
}
MeshUtils::setUIntData(mesh, local_data, nb_tags, type);
comm.waitAll(requests);
comm.freeCommunicationRequest(requests);
requests.clear();
for (UInt p = 0; p < nb_proc; ++p) delete [] buffers[p];
delete [] names;
}
++count;
}
/* -------->>>>-SIZE----------------------------------------------------- */
for (UInt p = 0; p < nb_proc; ++p) {
if(p != root) {
UInt size[6];
size[0] = (UInt) _not_defined;
size[1] = 0;
size[2] = 0;
size[3] = 0;
size[4] = 0;
size[5] = 0;
AKANTU_DEBUG_INFO("Sending empty connectivities informations to proc " << p << " TAG("<< Tag::genTag(my_rank, count, TAG_SIZES) <<")");
comm.send(size, 6, p, Tag::genTag(my_rank, count, TAG_SIZES));
}
}
/* ---------------------------------------------------------------------- */
/* ---------------------------------------------------------------------- */
/**
* Nodes coordinate construction and synchronization
*/
std::multimap< UInt, std::pair<UInt, UInt> > nodes_to_proc;
/// get the list of nodes to send and send them
Real * local_nodes = NULL;
UInt nb_nodes_per_proc[nb_proc];
UInt * nodes_per_proc[nb_proc];
/* --------<<<<-NB_NODES + NODES----------------------------------------- */
for (UInt p = 0; p < nb_proc; ++p) {
UInt nb_nodes = 0;
// UInt * buffer;
if(p != root) {
AKANTU_DEBUG_INFO("Receiving number of nodes from proc " << p << " TAG("<< Tag::genTag(p, 0, TAG_NB_NODES) <<")");
comm.receive(&nb_nodes, 1, p, Tag::genTag(p, 0, TAG_NB_NODES));
nodes_per_proc[p] = new UInt[nb_nodes];
nb_nodes_per_proc[p] = nb_nodes;
AKANTU_DEBUG_INFO("Receiving list of nodes from proc " << p << " TAG("<< Tag::genTag(p, 0, TAG_NODES) <<")");
comm.receive(nodes_per_proc[p], nb_nodes, p, Tag::genTag(p, 0, TAG_NODES));
} else {
nb_nodes = old_nodes->getSize();
nb_nodes_per_proc[p] = nb_nodes;
nodes_per_proc[p] = old_nodes->values;
}
/// get the coordinates for the selected nodes
Real * nodes_to_send = new Real[nb_nodes * spatial_dimension];
Real * nodes_to_send_tmp = nodes_to_send;
for (UInt n = 0; n < nb_nodes; ++n) {
memcpy(nodes_to_send_tmp,
nodes->values + spatial_dimension * nodes_per_proc[p][n],
spatial_dimension * sizeof(Real));
// nodes_to_proc.insert(std::make_pair(buffer[n], std::make_pair(p, n)));
nodes_to_send_tmp += spatial_dimension;
}
/* -------->>>>-COORDINATES-------------------------------------------- */
if(p != root) { /// send them for distant processors
AKANTU_DEBUG_INFO("Sending coordinates to proc " << p << " TAG("<< Tag::genTag(my_rank, 0, TAG_COORDINATES) <<")");
comm.send(nodes_to_send, nb_nodes * spatial_dimension, p, Tag::genTag(my_rank, 0, TAG_COORDINATES));
delete [] nodes_to_send;
} else { /// save them for local processor
local_nodes = nodes_to_send;
}
}
/// construct the local nodes coordinates
UInt nb_nodes = old_nodes->getSize();
nodes->resize(nb_nodes);
memcpy(nodes->values, local_nodes, nb_nodes * spatial_dimension * sizeof(Real));
delete [] local_nodes;
Vector<Int> * nodes_type_per_proc[nb_proc];
for (UInt p = 0; p < nb_proc; ++p) {
nodes_type_per_proc[p] = new Vector<Int>(nb_nodes_per_proc[p]);
}
communicator.fillNodesType(mesh);
/* --------<<<<-NODES_TYPE-1--------------------------------------------- */
for (UInt p = 0; p < nb_proc; ++p) {
if(p != root) {
AKANTU_DEBUG_INFO("Receiving first nodes types from proc " << p << " TAG("<< Tag::genTag(my_rank, count, TAG_NODES_TYPE) <<")");
comm.receive(nodes_type_per_proc[p]->values,
nb_nodes_per_proc[p], p, Tag::genTag(p, 0, TAG_NODES_TYPE));
} else {
nodes_type_per_proc[p]->copy(mesh.getNodesType());
}
for (UInt n = 0; n < nb_nodes_per_proc[p]; ++n) {
if((*nodes_type_per_proc[p])(n) == -2)
nodes_to_proc.insert(std::make_pair(nodes_per_proc[p][n], std::make_pair(p, n)));
}
}
std::multimap< UInt, std::pair<UInt, UInt> >::iterator it_node;
std::pair< std::multimap< UInt, std::pair<UInt, UInt> >::iterator,
std::multimap< UInt, std::pair<UInt, UInt> >::iterator > it_range;
for (UInt i = 0; i < mesh.nb_global_nodes; ++i) {
it_range = nodes_to_proc.equal_range(i);
if(it_range.first == nodes_to_proc.end() || it_range.first->first != i) continue;
UInt node_type = (it_range.first)->second.first;
for (it_node = it_range.first; it_node != it_range.second; ++it_node) {
UInt proc = it_node->second.first;
UInt node = it_node->second.second;
if(proc != node_type)
nodes_type_per_proc[proc]->values[node] = node_type;
}
}
/* -------->>>>-NODES_TYPE-2--------------------------------------------- */
std::vector<CommunicationRequest *> requests;
for (UInt p = 0; p < nb_proc; ++p) {
if(p != root) {
AKANTU_DEBUG_INFO("Sending nodes types to proc " << p << " TAG("<< Tag::genTag(my_rank, 0, TAG_NODES_TYPE) <<")");
requests.push_back(comm.asyncSend(nodes_type_per_proc[p]->values,
nb_nodes_per_proc[p], p, Tag::genTag(my_rank, 0, TAG_NODES_TYPE)));
} else {
mesh.getNodesTypePointer()->copy(*nodes_type_per_proc[p]);
}
}
comm.waitAll(requests);
comm.freeCommunicationRequest(requests);
requests.clear();
for (UInt p = 0; p < nb_proc; ++p) {
if(p != root) delete [] nodes_per_proc[p];
delete nodes_type_per_proc[p];
}
/* ---------------------------------------------------------------------- */
/* Distant (rank != root) */
/* ---------------------------------------------------------------------- */
} else {
/**
* connectivity and communications scheme construction on distant processors
*/
ElementType type = _not_defined;
UInt count = 0;
do {
/* --------<<<<-SIZE--------------------------------------------------- */
UInt size[6] = { 0 };
comm.receive(size, 6, root, Tag::genTag(root, count, TAG_SIZES));
type = (ElementType) size[0];
UInt nb_local_element = size[1];
UInt nb_ghost_element = size[2];
UInt nb_element_to_send = size[3];
UInt nb_tags = size[4];
UInt names_size = size[5];
UInt uint_names_size = names_size / sizeof(UInt) + (names_size % sizeof(UInt) ? 1 : 0);
if(type != _not_defined) {
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
/* --------<<<<-CONNECTIVITY----------------------------------------- */
local_connectivity = new UInt[(nb_local_element + nb_ghost_element) *
nb_nodes_per_element];
AKANTU_DEBUG_INFO("Receiving connectivities from proc " << root);
comm.receive(local_connectivity, nb_nodes_per_element * (nb_local_element +
nb_ghost_element),
root, Tag::genTag(root, count, TAG_CONNECTIVITY));
AKANTU_DEBUG_INFO("Renumbering local connectivities");
MeshUtils::renumberMeshNodes(mesh,
local_connectivity,
nb_local_element,
nb_ghost_element,
type,
*old_nodes);
delete [] local_connectivity;
/* --------<<<<-PARTITIONS--------------------------------------------- */
local_partitions = new UInt[nb_element_to_send + nb_ghost_element * 2];
AKANTU_DEBUG_INFO("Receiving partition informations from proc " << root);
comm.receive(local_partitions,
nb_element_to_send + nb_ghost_element * 2,
root, Tag::genTag(root, count, TAG_PARTITIONS));
AKANTU_DEBUG_INFO("Creating communications scheme");
communicator.fillCommunicationScheme(local_partitions,
nb_local_element,
nb_ghost_element,
type);
delete [] local_partitions;
/* --------<<<<-TAGS------------------------------------------------- */
if(nb_tags) {
AKANTU_DEBUG_INFO("Receiving associated data from proc " << root);
UInt size_data = (nb_local_element + nb_ghost_element) * nb_tags
+ uint_names_size;
local_data = new UInt[size_data];
comm.receive(local_data, size_data, root, Tag::genTag(root, count, TAG_DATA));
MeshUtils::setUIntData(mesh, local_data, nb_tags, type);
delete [] local_data;
}
}
++count;
} while(type != _not_defined);
/**
* Nodes coordinate construction and synchronization on distant processors
*/
/* -------->>>>-NB_NODES + NODES----------------------------------------- */
AKANTU_DEBUG_INFO("Sending list of nodes to proc " << root);
UInt nb_nodes = old_nodes->getSize();
comm.send(&nb_nodes, 1, root, Tag::genTag(my_rank, 0, TAG_NB_NODES));
comm.send(old_nodes->values, nb_nodes, root, Tag::genTag(my_rank, 0, TAG_NODES));
/* --------<<<<-COORDINATES---------------------------------------------- */
nodes->resize(nb_nodes);
AKANTU_DEBUG_INFO("Receiving coordinates from proc " << root);
comm.receive(nodes->values, nb_nodes * spatial_dimension, root, Tag::genTag(root, 0, TAG_COORDINATES));
communicator.fillNodesType(mesh);
/* --------<<<<-NODES_TYPE-2--------------------------------------------- */
Int * nodes_types = mesh.getNodesTypePointer()->values;
AKANTU_DEBUG_INFO("Sending first nodes types to proc " << root);
comm.send(nodes_types, nb_nodes,
root, Tag::genTag(my_rank, 0, TAG_NODES_TYPE));
/* --------<<<<-NODES_TYPE-2--------------------------------------------- */
AKANTU_DEBUG_INFO("Receiving nodes types from proc " << root);
comm.receive(nodes_types, nb_nodes,
root, Tag::genTag(root, 0, TAG_NODES_TYPE));
}
comm.broadcast(&(mesh.nb_global_nodes), 1, root);
AKANTU_DEBUG_OUT();
return &communicator;
}
/* -------------------------------------------------------------------------- */
void DistributedSynchronizer::fillNodesType(Mesh & mesh) {
AKANTU_DEBUG_IN();
// StaticCommunicator * comm = StaticCommunicator::getStaticCommunicator();
// UInt my_rank = comm.whoAmI();
UInt nb_nodes = mesh.getNbNodes();
// std::cout << nb_nodes << std::endl;
Int * nodes_type = mesh.getNodesTypePointer()->values;
//memcpy(nodes_type, nodes_type_tmp, nb_nodes * sizeof(Int));
UInt * nodes_set = new UInt[nb_nodes];
std::fill_n(nodes_set, nb_nodes, 0);
// Mesh::ConnectivityTypeList::const_iterator it;
const UInt NORMAL_SET = 1;
const UInt GHOST_SET = 2;
bool * already_seen = new bool[nb_nodes];
for(UInt g = _not_ghost; g <= _ghost; ++g) {
GhostType gt = (GhostType) g;
UInt set = NORMAL_SET;
if (gt == _ghost) set = GHOST_SET;
std::fill_n(already_seen, nb_nodes, false);
Mesh::type_iterator it = mesh.firstType(0, gt, _ek_not_defined);
Mesh::type_iterator end = mesh.lastType(0, gt, _ek_not_defined);
for(; it != end; ++it) {
ElementType type = *it;
UInt nb_nodes_per_element = Mesh::getNbNodesPerElement(type);
UInt nb_element = mesh.getNbElement(type, gt);
UInt * conn_val = mesh.getConnectivity(type, gt).values;
for (UInt e = 0; e < nb_element; ++e) {
for (UInt n = 0; n < nb_nodes_per_element; ++n) {
AKANTU_DEBUG_ASSERT(*conn_val < nb_nodes, "Node " << *conn_val
<< " bigger than number of nodes " << nb_nodes);
if(!already_seen[*conn_val]) {
nodes_set[*conn_val] += set;
already_seen[*conn_val] = true;
}
conn_val++;
}
}
}
}
delete [] already_seen;
for (UInt i = 0; i < nb_nodes; ++i) {
if(nodes_set[i] == NORMAL_SET) nodes_type[i] = -1;
else if(nodes_set[i] == GHOST_SET) nodes_type[i] = -3;
else if(nodes_set[i] == (GHOST_SET + NORMAL_SET)) nodes_type[i] = -2;
}
delete [] nodes_set;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void DistributedSynchronizer::fillCommunicationScheme(UInt * partition,
UInt nb_local_element,
UInt nb_ghost_element,
ElementType type) {
AKANTU_DEBUG_IN();
Element element;
element.type = type;
element.kind = Mesh::getKind(type);
UInt * part = partition;
part = partition;
for (UInt lel = 0; lel < nb_local_element; ++lel) {
UInt nb_send = *part; part++;
element.element = lel;
element.ghost_type = _not_ghost;
for (UInt p = 0; p < nb_send; ++p) {
UInt proc = *part; part++;
AKANTU_DEBUG(dblAccessory, "Must send : " << element << " to proc " << proc);
(send_element[proc]).push_back(element);
}
}
for (UInt gel = 0; gel < nb_ghost_element; ++gel) {
UInt proc = *part; part++;
element.element = gel;
element.ghost_type = _ghost;
AKANTU_DEBUG(dblAccessory, "Must recv : " << element << " from proc " << proc);
recv_element[proc].push_back(element);
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void DistributedSynchronizer::asynchronousSynchronize(DataAccessor & data_accessor,
SynchronizationTag tag) {
AKANTU_DEBUG_IN();
if (communications.find(tag) == communications.end()) {
communications[tag].resize(nb_proc);
computeBufferSize(data_accessor, tag);
}
Communication & communication = communications[tag];
AKANTU_DEBUG_ASSERT(communication.send_requests.size() == 0,
"There must be some pending sending communications. Tag is " << tag);
for (UInt p = 0; p < nb_proc; ++p) {
UInt ssize = communication.size_to_send[p];
if(p == rank || ssize == 0) continue;
CommunicationBuffer & buffer = communication.send_buffer[p];
buffer.resize(ssize);
#ifndef AKANTU_NDEBUG
UInt nb_elements = send_element[p].getSize();
AKANTU_DEBUG_INFO("Packing data for proc " << p
<< " (" << ssize << "/" << nb_elements
<<" data to send/elements)");
#endif
data_accessor.packElementData(buffer, send_element[p], tag);
AKANTU_DEBUG_ASSERT(buffer.getPackedSize() == ssize,
"a problem have been introduced with "
<< "false sent sizes declaration "
<< buffer.getPackedSize() << " != " << ssize);
std::cerr << std::dec;
AKANTU_DEBUG_INFO("Posting send to proc " << p);
communication.send_requests.push_back(static_communicator->asyncSend(buffer.storage(),
ssize,
p,
(Int) tag));
}
AKANTU_DEBUG_ASSERT(communication.recv_requests.size() == 0,
"There must be some pending receive communications");
for (UInt p = 0; p < nb_proc; ++p) {
UInt rsize = communication.size_to_receive[p];
if(p == rank || rsize == 0) continue;
CommunicationBuffer & buffer = communication.recv_buffer[p];
buffer.resize(rsize);
AKANTU_DEBUG_INFO("Posting receive from proc " << p << " (" << rsize << " data to receive)");
communication.recv_requests.push_back(static_communicator->asyncReceive(buffer.storage(),
rsize,
p,
(Int) tag));
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void DistributedSynchronizer::waitEndSynchronize(DataAccessor & data_accessor,
SynchronizationTag tag) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_ASSERT(communications.find(tag) != communications.end(), "No communication with the tag \""
<< tag <<"\" started");
Communication & communication = communications[tag];
std::vector<CommunicationRequest *> req_not_finished;
std::vector<CommunicationRequest *> * req_not_finished_tmp = &req_not_finished;
std::vector<CommunicationRequest *> * recv_requests_tmp = &(communication.recv_requests);
// static_communicator->waitAll(recv_requests);
while(!recv_requests_tmp->empty()) {
for (std::vector<CommunicationRequest *>::iterator req_it = recv_requests_tmp->begin();
req_it != recv_requests_tmp->end() ; ++req_it) {
CommunicationRequest * req = *req_it;
if(static_communicator->testRequest(req)) {
UInt proc = req->getSource();
AKANTU_DEBUG_INFO("Unpacking data coming from proc " << proc);
CommunicationBuffer & buffer = communication.recv_buffer[proc];
data_accessor.unpackElementData(buffer, recv_element[proc], tag);
buffer.resize(0);
AKANTU_DEBUG_ASSERT(buffer.getLeftToUnpack() == 0,
"all data have not been unpacked: "
<< buffer.getLeftToUnpack() << " bytes left");
static_communicator->freeCommunicationRequest(req);
} else {
req_not_finished_tmp->push_back(req);
}
}
std::vector<CommunicationRequest *> * swap = req_not_finished_tmp;
req_not_finished_tmp = recv_requests_tmp;
recv_requests_tmp = swap;
req_not_finished_tmp->clear();
}
static_communicator->waitAll(communication.send_requests);
for (std::vector<CommunicationRequest *>::iterator req_it = communication.send_requests.begin();
req_it != communication.send_requests.end() ; ++req_it) {
CommunicationRequest & req = *(*req_it);
if(static_communicator->testRequest(&req)) {
UInt proc = req.getDestination();
CommunicationBuffer & buffer = communication.send_buffer[proc];
buffer.resize(0);
static_communicator->freeCommunicationRequest(&req);
}
}
communication.send_requests.clear();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void DistributedSynchronizer::computeBufferSize(DataAccessor & data_accessor,
SynchronizationTag tag) {
AKANTU_DEBUG_IN();
for (UInt p = 0; p < nb_proc; ++p) {
UInt ssend = 0;
UInt sreceive = 0;
if(p != rank) {
ssend = data_accessor.getNbDataForElements(send_element[p], tag);
sreceive = data_accessor.getNbDataForElements(recv_element[p], tag);
AKANTU_DEBUG_INFO("I have " << ssend << "(" << ssend / 1024.
<< "kB - "<< send_element[p].getSize() <<" element(s)) data to send to " << p
<< " and " << sreceive << "(" << sreceive / 1024.
<< "kB - "<< recv_element[p].getSize() <<" element(s)) data to receive for tag "
<< tag);
}
communications[tag].size_to_send [p] = ssend;
communications[tag].size_to_receive[p] = sreceive;
}
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
void DistributedSynchronizer::printself(std::ostream & stream, int indent) const {
std::string space;
for(Int i = 0; i < indent; i++, space += AKANTU_INDENT);
Int prank = StaticCommunicator::getStaticCommunicator().whoAmI();
Int psize = StaticCommunicator::getStaticCommunicator().getNbProc();
stream << "[" << prank << "/" << psize << "]" << space << "DistributedSynchronizer [" << std::endl;
for (UInt p = 0; p < nb_proc; ++p) {
if (p == UInt(prank)) continue;
stream << "[" << prank << "/" << psize << "]" << space << " + Communication to proc " << p << " [" << std::endl;
if(AKANTU_DEBUG_TEST(dblDump)) {
stream << "[" << prank << "/" << psize << "]" << space << " - Element to send to proc " << p << " [" << std::endl;
Vector<Element>::iterator<Element> it_el = send_element[p].begin();
Vector<Element>::iterator<Element> end_el = send_element[p].end();
for(;it_el != end_el; ++it_el)
stream << "[" << prank << "/" << psize << "]" << space << " " << *it_el << std::endl;
stream << "[" << prank << "/" << psize << "]" << space << " ]" << std::endl;
stream << "[" << prank << "/" << psize << "]" << space << " - Element to recv from proc " << p << " [" << std::endl;
it_el = recv_element[p].begin();
end_el = recv_element[p].end();
for(;it_el != end_el; ++it_el)
stream << "[" << prank << "/" << psize << "]" << space << " " << *it_el << std::endl;stream << "[" << prank << "/" << psize << "]" << space << " ]" << std::endl;
}
std::map< SynchronizationTag, Communication>::const_iterator it = communications.begin();
std::map< SynchronizationTag, Communication>::const_iterator end = communications.end();
for (; it != end; ++it) {
const SynchronizationTag & tag = it->first;
const Communication & communication = it->second;
UInt ssend = communication.size_to_send[p];
UInt sreceive = communication.size_to_receive[p];
stream << "[" << prank << "/" << psize << "]" << space << " - Tag " << tag << " -> " << ssend << "byte(s) -- <- " << sreceive << "byte(s)" << std::endl;
}
std::cout << "[" << prank << "/" << psize << "]" << space << " ]" << std::endl;
}
std::cout << "[" << prank << "/" << psize << "]" << space << "]" << std::endl;
}
/* -------------------------------------------------------------------------- */
void DistributedSynchronizer::onElementsRemoved(const Vector<Element> & element_to_remove,
- const ByElementTypeUInt & new_numbering) {
+ const ByElementTypeUInt & new_numbering,
+ const RemovedElementsEvent & event) {
AKANTU_DEBUG_IN();
StaticCommunicator & comm = StaticCommunicator::getStaticCommunicator();
UInt psize = comm.getNbProc();
UInt prank = comm.whoAmI();
std::vector<CommunicationRequest *> isend_requests;
Vector<UInt> * list_of_el = new Vector<UInt>[nb_proc];
// Handling ghost elements
for (UInt p = 0; p < psize; ++p) {
if (p == prank) continue;
Vector<Element> & recv = recv_element[p];
if(recv.getSize() == 0) continue;
Vector<Element>::iterator<Element> recv_begin = recv.begin();
Vector<Element>::iterator<Element> recv_end = recv.end();
Vector<Element>::const_iterator<Element> er_it = element_to_remove.begin();
Vector<Element>::const_iterator<Element> er_end = element_to_remove.end();
// for (;it != end; ++it) {
// const Element & el = *it;
// if(el.ghost_type == _ghost) {
// Vector<Element>::iterator<Element> pos = std::find(recv_begin, recv_end, el);
// if(pos != recv_end) {
// UInt i = pos - recv_begin;
// AKANTU_DEBUG_ASSERT(i < recv.getSize(), "The element is out of the list");
// list_of_el_to_remove.push_back(i);
// }
// } else {
// /// \todo handle the removal of element to send from the ghost of other procs
// AKANTU_EXCEPTION("DistributedSynchronizer do not know how to remove _not_ghost element, ask a developer to finish is job");
// }
// }
Vector<UInt> & list = list_of_el[p];
for (UInt i = 0; recv_begin != recv_end; ++i, ++recv_begin) {
const Element & el = *recv_begin;
Vector<Element>::const_iterator<Element> pos = std::find(er_it, er_end, el);
if(pos == er_end) {
list.push_back(i);
}
}
// if (list_of_el_to_remove.getSize() != 0) {
// std::sort(list_of_el_to_remove.begin(), list_of_el_to_remove.end());
// UInt lr = 0;
// for (UInt l = 0; l < recv.getSize(); ++l) {
// if(lr < list_of_el_to_remove.getSize() && list_of_el_to_remove(lr) == l) ++lr;
// else list.push_back(l);
// }
// AKANTU_DEBUG_INFO("Sending list of elements (" << list.getSize() << " elements) of proc " << p << " TAG("<< Tag::genTag(p, 0, 0) <<")");
// list.push_back(UInt(-1));
// } else {
// list.push_back(UInt(0));
// }
if(list.getSize() == recv.getSize())
list.push_back(UInt(0));
else list.push_back(UInt(-1));
isend_requests.push_back(comm.asyncSend(list.storage(), list.getSize(),
p, Tag::genTag(prank, 0, 0)));
list.erase(list.getSize() - 1);
if(list.getSize() == recv.getSize()) continue;
Vector<Element> new_recv;
for (UInt nr = 0; nr < list.getSize(); ++nr) {
Element & el = recv(list(nr));
el.element = new_numbering(el.type, el.ghost_type)(el.element);
new_recv.push_back(el);
}
AKANTU_DEBUG_INFO("I had " << recv.getSize() << " elements to recv from proc " << p << " and "
<< list.getSize() << " elements to keep. I have "
<< new_recv.getSize() << " elements left.");
recv.copy(new_recv);
}
for (UInt p = 0; p < psize; ++p) {
if (p == prank) continue;
Vector<Element> & send = send_element[p];
if(send.getSize() == 0) continue;
CommunicationStatus status;
AKANTU_DEBUG_INFO("Getting number of elements of proc " << p << " not needed anymore TAG("<< Tag::genTag(p, 0, 0) <<")");
comm.probe<UInt>(p, Tag::genTag(p, 0, 0), status);
Vector<UInt> list(status.getSize());
AKANTU_DEBUG_INFO("Receiving list of elements (" << status.getSize() - 1 << " elements) no longer needed by proc " << p << " TAG("<< Tag::genTag(p, 0, 0) <<")");
comm.receive(list.storage(), list.getSize(),
p, Tag::genTag(p, 0, 0));
if(list.getSize() == 1 && list(0) == 0) continue;
list.erase(list.getSize() - 1);
Vector<Element> new_send;
for (UInt ns = 0; ns < list.getSize(); ++ns) {
new_send.push_back(send(list(ns)));
}
AKANTU_DEBUG_INFO("I had " << send.getSize() << " elements to send to proc " << p << " and "
<< list.getSize() << " elements to keep. I have "
<< new_send.getSize() << " elements left.");
send.copy(new_send);
}
comm.waitAll(isend_requests);
comm.freeCommunicationRequest(isend_requests);
delete [] list_of_el;
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
__END_AKANTU__
diff --git a/src/synchronizer/distributed_synchronizer.hh b/src/synchronizer/distributed_synchronizer.hh
index fb3a3343e..4d48f98f8 100644
--- a/src/synchronizer/distributed_synchronizer.hh
+++ b/src/synchronizer/distributed_synchronizer.hh
@@ -1,162 +1,163 @@
/**
* @file distributed_synchronizer.hh
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Thu Jun 16 16:36:52 2011
*
* @brief wrapper to the static communicator
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#ifndef __AKANTU_DISTRIBUTED_SYNCHRONIZER_HH__
#define __AKANTU_DISTRIBUTED_SYNCHRONIZER_HH__
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "aka_vector.hh"
#include "static_communicator.hh"
#include "synchronizer.hh"
#include "mesh.hh"
#include "mesh_partition.hh"
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
class CommunicationBuffer;
class DistributedSynchronizer : public Synchronizer, public MeshEventHandler {
/* ------------------------------------------------------------------------ */
/* Constructors/Destructors */
/* ------------------------------------------------------------------------ */
protected:
DistributedSynchronizer(Mesh & mesh,
SynchronizerID id = "distributed_synchronizer",
MemoryID memory_id = 0);
public:
virtual ~DistributedSynchronizer();
/* ------------------------------------------------------------------------ */
/* Methods */
/* ------------------------------------------------------------------------ */
public:
/// get a mesh and a partition and create the local mesh and the associated
/// DistributedSynchronizer
static DistributedSynchronizer *
createDistributedSynchronizerMesh(Mesh & mesh,
const MeshPartition * partition,
UInt root = 0,
SynchronizerID id = "distributed_synchronizer",
MemoryID memory_id = 0);
/* ------------------------------------------------------------------------ */
/* Inherited from Synchronizer */
/* ------------------------------------------------------------------------ */
/// asynchronous synchronization of ghosts
void asynchronousSynchronize(DataAccessor & data_accessor,SynchronizationTag tag);
/// wait end of asynchronous synchronization of ghosts
void waitEndSynchronize(DataAccessor & data_accessor,SynchronizationTag tag);
virtual void printself(std::ostream & stream, int indent = 0) const;
/// mesh event handler onRemovedElement
virtual void onElementsRemoved(const Vector<Element> & element_list,
- const ByElementTypeUInt & new_numbering);
+ const ByElementTypeUInt & new_numbering,
+ const RemovedElementsEvent & event);
protected:
/// fill the nodes type vector
void fillNodesType(Mesh & mesh);
/// fill the communications array of a distributedSynchronizer based on a partition array
void fillCommunicationScheme(UInt * partition,
UInt nb_local_element,
UInt nb_ghost_element,
ElementType type);
/// compute buffer size for a given tag and data accessor
void computeBufferSize(DataAccessor & data_accessor, SynchronizationTag tag);
/* ------------------------------------------------------------------------ */
/* Accessors */
/* ------------------------------------------------------------------------ */
public:
/* ------------------------------------------------------------------------ */
/* Class Members */
/* ------------------------------------------------------------------------ */
protected:
/// reference to the underlying mesh
Mesh & mesh;
/// the static memory instance
StaticCommunicator * static_communicator;
class Communication {
public:
void resize(UInt size) {
send_buffer.resize(size);
recv_buffer.resize(size);
size_to_send .resize(size);
size_to_receive.resize(size);
}
public:
/// size of data to send to each processor
std::vector<UInt> size_to_send;
/// size of data to recv to each processor
std::vector<UInt> size_to_receive;
std::vector<CommunicationBuffer> send_buffer;
std::vector<CommunicationBuffer> recv_buffer;
std::vector<CommunicationRequest *> send_requests;
std::vector<CommunicationRequest *> recv_requests;
};
std::map<SynchronizationTag, Communication> communications;
/// list of element to sent to proc p
Vector<Element> * send_element;
/// list of element to receive from proc p
Vector<Element> * recv_element;
UInt nb_proc;
UInt rank;
};
/* -------------------------------------------------------------------------- */
/* inline functions */
/* -------------------------------------------------------------------------- */
//#include "distributedSynchronizer_inline_impl.cc"
__END_AKANTU__
#endif /* __AKANTU_DISTRIBUTED_SYNCHRONIZER_HH__ */
diff --git a/src/synchronizer/grid_synchronizer.cc b/src/synchronizer/grid_synchronizer.cc
index af5827a07..4ec2e35a1 100644
--- a/src/synchronizer/grid_synchronizer.cc
+++ b/src/synchronizer/grid_synchronizer.cc
@@ -1,480 +1,479 @@
/**
* @file grid_synchronizer.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Mon Oct 03 12:24:07 2011
*
* @brief implementation of the grid synchronizer
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "grid_synchronizer.hh"
#include "aka_grid.hh"
#include "mesh.hh"
#include "fem.hh"
#include "static_communicator.hh"
#include "mesh_io.hh"
#include <iostream>
/* -------------------------------------------------------------------------- */
__BEGIN_AKANTU__
/* -------------------------------------------------------------------------- */
GridSynchronizer::GridSynchronizer(Mesh & mesh,
const ID & id,
MemoryID memory_id) :
DistributedSynchronizer(mesh, id, memory_id) {
AKANTU_DEBUG_IN();
AKANTU_DEBUG_OUT();
}
/* -------------------------------------------------------------------------- */
template <class E>
GridSynchronizer * GridSynchronizer::createGridSynchronizer(Mesh & mesh,
const RegularGrid<E> & grid,
SynchronizerID id,
MemoryID memory_id) {
AKANTU_DEBUG_IN();
StaticCommunicator & comm = StaticCommunicator::getStaticCommunicator();
UInt nb_proc = comm.getNbProc();
UInt my_rank = comm.whoAmI();
GridSynchronizer & communicator = *(new GridSynchronizer(mesh, id, memory_id));
if(nb_proc == 1) return &communicator;
UInt spatial_dimension = mesh.getSpatialDimension();
Real * bounding_boxes = new Real[2 * spatial_dimension * nb_proc];
Real * my_bounding_box = bounding_boxes + 2 * spatial_dimension * my_rank;
// mesh.getLocalLowerBounds(my_bounding_box);
// mesh.getLocalUpperBounds(my_bounding_box + spatial_dimension);
grid.getLocalLowerBounds(my_bounding_box);
grid.getLocalUpperBounds(my_bounding_box + spatial_dimension);
Real spacing[spatial_dimension];
grid.getSpacing(spacing);
AKANTU_DEBUG_INFO("Exchange of bounding box to detect the overlapping regions.");
comm.allGather(bounding_boxes, spatial_dimension * 2);
bool * intersects_proc = new bool[nb_proc];
std::fill_n(intersects_proc, nb_proc, true);
UInt * first_cells = new UInt[3 * nb_proc];
UInt * last_cells = new UInt[3 * nb_proc];
std::fill_n(first_cells, 3 * nb_proc, 0);
std::fill_n(first_cells, 3 * nb_proc, 0);
ByElementTypeUInt ** element_per_proc = new ByElementTypeUInt* [nb_proc];
for (UInt p = 0; p < nb_proc; ++p) element_per_proc[p] = NULL;
// check the overlapping between my box and the one from other processors
for (UInt p = 0; p < nb_proc; ++p) {
if(p == my_rank) continue;
Real * proc_bounding_box = bounding_boxes + 2 * spatial_dimension * p;
bool intersects = false;
UInt * first_cell_p = first_cells + p * spatial_dimension;
UInt * last_cell_p = last_cells + p * spatial_dimension;
for (UInt s = 0; s < spatial_dimension; ++s) {
// check overlapping of grid
intersects = Math::intersects(my_bounding_box[s],
my_bounding_box[spatial_dimension + s],
proc_bounding_box[s],
proc_bounding_box[spatial_dimension + s]);
intersects_proc[p] &= intersects;
if(intersects) {
AKANTU_DEBUG_INFO("I intersects with processor " << p << " in direction " << s);
// is point 1 of proc p in the dimension s in the range ?
bool point1 = Math::is_in_range(proc_bounding_box[s],
my_bounding_box[s],
my_bounding_box[s+spatial_dimension]);
// is point 2 of proc p in the dimension s in the range ?
bool point2 = Math::is_in_range(proc_bounding_box[s+spatial_dimension],
my_bounding_box[s],
my_bounding_box[s+spatial_dimension]);
Real start = 0.;
Real end = 0.;
if(point1 && !point2) {
/* |-----------| my_bounding_box(i)
* |-----------| proc_bounding_box(i)
* 1 2
*/
start = proc_bounding_box[s];
end = my_bounding_box[s+spatial_dimension];
} else if(point1 && point2) {
/* |-----------------| my_bounding_box(i)
* |-----------| proc_bounding_box(i)
* 1 2
*/
start = proc_bounding_box[s];
end = proc_bounding_box[s+spatial_dimension];
} else if(!point1 && point2) {
/* |-----------| my_bounding_box(i)
* |-----------| proc_bounding_box(i)
* 1 2
*/
start = my_bounding_box[s];
end = proc_bounding_box[s+spatial_dimension];
}
first_cell_p[s] = grid.getCell(start + spacing[s]/100., s);
last_cell_p [s] = grid.getCell(end - spacing[s]/100., s);
}
}
//create the list of cells in the overlapping
typedef typename RegularGrid<E>::Cell Cell;
std::vector<Cell> * cells = new std::vector<Cell>;
if(intersects_proc[p]) {
AKANTU_DEBUG_INFO("I intersects with processor " << p);
Cell cell(grid);
// for (UInt i = 0; i < spatial_dimension; ++i) {
// if(first_cell_p[i] != 0) --first_cell_p[i];
// if(last_cell_p[i] != 0) ++last_cell_p[i];
// }
for (UInt fd = first_cell_p[0]; fd <= last_cell_p[0]; ++fd) {
cell.position[0] = fd;
if(spatial_dimension == 1) {
cell.updateID();
cells->push_back(cell);
}
else {
for (UInt sd = first_cell_p[1]; sd <= last_cell_p[1] ; ++sd) {
cell.position[1] = sd;
if(spatial_dimension == 2) {
cell.updateID();
cells->push_back(cell);
} else {
for (UInt ld = first_cell_p[2]; fd <= last_cell_p[2] ; ++ld) {
cell.position[2] = ld;
cell.updateID();
cells->push_back(cell);
}
}
}
}
}
// get the list of elements in the cells of the overlapping
typename std::vector<Cell>::iterator cur_cell = cells->begin();
typename std::vector<Cell>::iterator last_cell = cells->end();
std::set<Element, CompElementLess> * to_send = new std::set<Element, CompElementLess>();
for (; cur_cell != last_cell; ++cur_cell) {
typename RegularGrid<E>::const_iterator cur_elem = grid.beginCell(*cur_cell);
typename RegularGrid<E>::const_iterator last_elem = grid.endCell(*cur_cell);
for (; cur_elem != last_elem; ++cur_elem) {
to_send->insert(*cur_elem);
}
}
AKANTU_DEBUG_INFO("I have prepared " << to_send->size() << " elements to send to processor " << p);
delete cells;
std::stringstream sstr; sstr << "element_per_proc_" << p;
element_per_proc[p] = new ByElementTypeUInt(sstr.str(), id);
ByElementTypeUInt & elempproc = *(element_per_proc[p]);
typename std::set<Element>::iterator elem = to_send->begin();
typename std::set<Element>::iterator last_elem = to_send->end();
for (; elem != last_elem; ++elem) {
ElementType type = elem->type;
UInt nb_nodes_per_element = mesh.getNbNodesPerElement(type);
// /!\ this part must be slow due to the access in the ByElementTypeUInt
if(!elempproc.exists(type))
elempproc.alloc(0, nb_nodes_per_element, type, _not_ghost);
UInt global_connect[nb_nodes_per_element];
UInt * local_connect = mesh.getConnectivity(type).storage() + elem->element * nb_nodes_per_element;
for (UInt i = 0; i < nb_nodes_per_element; ++i) {
global_connect[i] = mesh.getNodeGlobalId(local_connect[i]);
}
elempproc(type).push_back(global_connect);
communicator.send_element[p].push_back(*elem);
}
delete to_send;
}
}
AKANTU_DEBUG_INFO("I have finished to compute intersection,"
<< " no it's time to communicate with my neighbors");
/**
* Sending loop, sends the connectivity asynchronously to all concerned proc
*/
std::vector<CommunicationRequest *> isend_requests;
for (UInt p = 0; p < nb_proc; ++p) {
if(p == my_rank) continue;
if(intersects_proc[p]) {
ByElementTypeUInt & elempproc = *(element_per_proc[p]);
ByElementTypeUInt::type_iterator it_type = elempproc.firstType(0, _not_ghost);
ByElementTypeUInt::type_iterator last_type = elempproc.lastType (0, _not_ghost);
UInt count = 0;
for (; it_type != last_type; ++it_type) {
Vector<UInt> & conn = elempproc(*it_type, _not_ghost);
UInt info[2];
info[0] = (UInt) *it_type;
info[1] = conn.getSize() * conn.getNbComponent();
AKANTU_DEBUG_INFO("I have " << conn.getSize() << " elements of type " << *it_type
<< " to send to processor " << p
<< " (communication tag : " << Tag::genTag(my_rank, count, DATA_TAG) << ")");
isend_requests.push_back(comm.asyncSend(info, 2, p, Tag::genTag(my_rank, count, SIZE_TAG)));
isend_requests.push_back(comm.asyncSend(conn.storage(),
conn.getSize() * conn.getNbComponent(),
p, Tag::genTag(my_rank, count, DATA_TAG)));
++count;
}
UInt info[2];
info[0] = (UInt) _not_defined;
info[1] = 0;
isend_requests.push_back(comm.asyncSend(info, 2, p, Tag::genTag(my_rank, count, SIZE_TAG)));
}
}
/**
* Receives the connectivity and store them in the ghosts elements
*/
Vector<UInt> & global_nodes_ids = const_cast<Vector<UInt> &>(mesh.getGlobalNodesIds());
Vector<Int> & nodes_type = const_cast<Vector<Int> &>(mesh.getNodesType());
std::vector<CommunicationRequest *> isend_nodes_requests;
UInt nb_nodes_to_recv[nb_proc];
UInt nb_total_nodes_to_recv = 0;
UInt nb_current_nodes = global_nodes_ids.getSize();
NewNodesEvent new_nodes;
NewElementsEvent new_elements;
Vector<UInt> * ask_nodes_per_proc = new Vector<UInt>[nb_proc];
for (UInt p = 0; p < nb_proc; ++p) {
nb_nodes_to_recv[p] = 0;
if(p == my_rank) continue;
Vector<UInt> & ask_nodes = ask_nodes_per_proc[p];
UInt count = 0;
if(intersects_proc[p]) {
ElementType type = _not_defined;
do {
UInt info[2] = { 0 };
comm.receive(info, 2, p, Tag::genTag(p, count, SIZE_TAG));
type = (ElementType) info[0];
if(type != _not_defined) {
UInt nb_nodes_per_element = mesh.getNbNodesPerElement(type);;
UInt nb_element = info[1] / nb_nodes_per_element;
Vector<UInt> tmp_conn(nb_element, nb_nodes_per_element);
comm.receive(tmp_conn.storage(), info[1], p, Tag::genTag(p, count, DATA_TAG));
AKANTU_DEBUG_INFO("I will receive " << nb_element << " elements of type " << ElementType(info[0])
<< " from processor " << p
<< " (communication tag : " << Tag::genTag(p, count, DATA_TAG) << ")");
Vector<UInt> & ghost_connectivity = const_cast<Vector<UInt> &>(mesh.getConnectivity(type, _ghost));
UInt nb_ghost_element = ghost_connectivity.getSize();
Element element(type, 0, _ghost);
UInt conn[nb_nodes_per_element];
for (UInt el = 0; el < nb_element; ++el) {
UInt nb_node_to_ask_for_elem = 0;
for (UInt n = 0; n < nb_nodes_per_element; ++n) {
UInt gn = tmp_conn(el, n);
UInt ln = global_nodes_ids.find(gn);
if(ln == UInt(-1)) {
global_nodes_ids.push_back(gn);
nodes_type.push_back(-3); // pure ghost node
ln = nb_current_nodes;
new_nodes.getList().push_back(ln);
++nb_current_nodes;
ask_nodes.push_back(gn);
++nb_node_to_ask_for_elem;
}
conn[n] = ln;
}
// all the nodes are already known locally, the element should already exists
UInt c = UInt(-1);
if(nb_node_to_ask_for_elem == 0) {
c = ghost_connectivity.find(conn);
element.element = c;
}
if(c == UInt(-1)) {
element.element = nb_ghost_element;
++nb_ghost_element;
ghost_connectivity.push_back(conn);
new_elements.getList().push_back(element);
}
communicator.recv_element[p].push_back(element);
}
}
count++;
} while(type != _not_defined);
AKANTU_DEBUG_INFO("I have " << ask_nodes.getSize()
<< " missing nodes for elements coming from processor " << p
<< " (communication tag : " << Tag::genTag(my_rank, 0, ASK_NODES_TAG) << ")");
isend_nodes_requests.push_back(comm.asyncSend(ask_nodes.storage(), ask_nodes.getSize(),
p, Tag::genTag(my_rank, 0, ASK_NODES_TAG)));
nb_nodes_to_recv[p] = ask_nodes.getSize();
nb_total_nodes_to_recv += ask_nodes.getSize();
}
}
for (UInt p = 0; p < nb_proc; ++p) {
if(element_per_proc[p]) delete element_per_proc[p];
}
delete [] element_per_proc;
comm.waitAll(isend_requests);
comm.freeCommunicationRequest(isend_requests);
/**
* Sends requested nodes to proc
*/
Vector<Real> & nodes = const_cast<Vector<Real> &>(mesh.getNodes());
UInt nb_nodes = nodes.getSize();
std::vector<CommunicationRequest *> isend_coordinates_requests;
Vector<Real> * nodes_to_send_per_proc = new Vector<Real>[nb_proc];
for (UInt p = 0; p < nb_proc; ++p) {
if(p == my_rank || !intersects_proc[p]) continue;
Vector<UInt> asked_nodes;
CommunicationStatus status;
AKANTU_DEBUG_INFO("Waiting list of nodes to send to processor " << p
<< "(communication tag : " << Tag::genTag(p, 0, ASK_NODES_TAG) << ")");
comm.probe<UInt>(p, Tag::genTag(p, 0, ASK_NODES_TAG), status);
UInt nb_nodes_to_send = status.getSize();
asked_nodes.resize(nb_nodes_to_send);
AKANTU_DEBUG_INFO("I have " << nb_nodes_to_send
<< " nodes to send to processor " << p
<< " (communication tag : " << Tag::genTag(p, 0, ASK_NODES_TAG) << ")");
AKANTU_DEBUG_INFO("Getting list of nodes to send to processor " << p
<< " (communication tag : " << Tag::genTag(p, 0, ASK_NODES_TAG) << ")");
comm.receive(asked_nodes.storage(), nb_nodes_to_send, p, Tag::genTag(p, 0, ASK_NODES_TAG));
Vector<Real> & nodes_to_send = nodes_to_send_per_proc[p];
nodes_to_send.extendComponentsInterlaced(spatial_dimension, 1);
for (UInt n = 0; n < nb_nodes_to_send; ++n) {
UInt ln = global_nodes_ids.find(asked_nodes(n));
AKANTU_DEBUG_ASSERT(ln != UInt(-1), "The node [" << asked_nodes(n) << "] requested by proc " << p << " was not found locally!");
nodes_to_send.push_back(nodes.storage() + ln * spatial_dimension);
}
AKANTU_DEBUG_INFO("Sending the nodes to processor " << p
<< " (communication tag : " << Tag::genTag(p, 0, ASK_NODES_TAG) << ")");
isend_coordinates_requests.push_back(comm.asyncSend(nodes_to_send.storage(), nb_nodes_to_send * spatial_dimension, p, Tag::genTag(my_rank, 0, SEND_NODES_TAG)));
}
comm.waitAll(isend_nodes_requests);
comm.freeCommunicationRequest(isend_nodes_requests);
delete [] ask_nodes_per_proc;
// std::vector<CommunicationRequest *> irecv_nodes_requests;
nodes.resize(nb_total_nodes_to_recv + nb_nodes);
for (UInt p = 0; p < nb_proc; ++p) {
if((p != my_rank) && (nb_nodes_to_recv[p] > 0)) {
AKANTU_DEBUG_INFO("Receiving the nodes from processor " << p
<< " (communication tag : " << Tag::genTag(p, 0, ASK_NODES_TAG) << ")");
comm.receive(nodes.storage() + nb_nodes * spatial_dimension,
nb_nodes_to_recv[p] * spatial_dimension,
p, Tag::genTag(p, 0, SEND_NODES_TAG));
nb_nodes += nb_nodes_to_recv[p];
}
}
comm.waitAll(isend_coordinates_requests);
comm.freeCommunicationRequest(isend_coordinates_requests);
delete [] nodes_to_send_per_proc;
// comm.waitAll(irecv_nodes_requests);
// comm.freeCommunicationRequest(irecv_nodes_requests);
mesh.sendEvent(new_nodes);
mesh.sendEvent(new_elements);
-
AKANTU_DEBUG_OUT();
return &communicator;
}
/* -------------------------------------------------------------------------- */
template GridSynchronizer *
GridSynchronizer::createGridSynchronizer<QuadraturePoint>(Mesh & mesh,
const RegularGrid<QuadraturePoint> & grid,
SynchronizerID id,
MemoryID memory_id);
template GridSynchronizer *
GridSynchronizer::createGridSynchronizer<Element>(Mesh & mesh,
const RegularGrid<Element> & grid,
SynchronizerID id,
MemoryID memory_id);
__END_AKANTU__
diff --git a/test/test_fem/test_gradient.cc b/test/test_fem/test_gradient.cc
index 2994f28c0..fab4f7fb1 100644
--- a/test/test_fem/test_gradient.cc
+++ b/test/test_fem/test_gradient.cc
@@ -1,149 +1,150 @@
/**
* @file test_gradient.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Jun 17 17:28:22 2011
*
* @brief test of the fem class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
* @section DESCRIPTION
*
* This code is computing the gradient of a linear field and check that it gives
* a constant result. It also compute the gradient the coordinates of the mesh
* and check that it gives the identity
*
*/
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "fem.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh.hh"
#include "shape_lagrange.hh"
#include "integrator_gauss.hh"
/* -------------------------------------------------------------------------- */
#include <cstdlib>
#include <fstream>
#include <iostream>
/* -------------------------------------------------------------------------- */
using namespace akantu;
int main(int argc, char *argv[]) {
akantu::initialize(argc, argv);
debug::setDebugLevel(dblTest);
const ElementType type = TYPE;
UInt dim = ElementClass<type>::getSpatialDimension();
Real eps = 1e-12;
std::cout << "Epsilon : " << eps << std::endl;
MeshIOMSH mesh_io;
Mesh my_mesh(dim);
std::stringstream meshfilename; meshfilename << type << ".msh";
mesh_io.read(meshfilename.str(), my_mesh);
FEM *fem = new FEMTemplate<IntegratorGauss,ShapeLagrange>(my_mesh, dim, "my_fem");
std::stringstream outfilename; outfilename << "out_" << type << ".txt";
std::ofstream my_file(outfilename.str().c_str());
fem->initShapeFunctions();
std::cout << *fem << std::endl;
StaticMemory * st_mem = StaticMemory::getStaticMemory();
std::cout << *st_mem << std::endl;
Real alpha[2][3] = {{13, 23, 31},
{11, 7, 5}};
/// create the 2 component field
const Vector<Real> & position = fem->getMesh().getNodes();
Vector<Real> const_val(fem->getMesh().getNbNodes(), 2, "const_val");
UInt nb_element = my_mesh.getNbElement(type);
UInt nb_quadrature_points = fem->getNbQuadraturePoints(type) * nb_element;
Vector<Real> grad_on_quad(nb_quadrature_points, 2 * dim, "grad_on_quad");
for (UInt i = 0; i < const_val.getSize(); ++i) {
const_val(i, 0) = 0;
const_val(i, 1) = 0;
for (UInt d = 0; d < dim; ++d) {
const_val(i, 0) += alpha[0][d] * position(i, d);
const_val(i, 1) += alpha[1][d] * position(i, d);
}
}
/// compute the gradient
fem->gradientOnQuadraturePoints(const_val, grad_on_quad, 2, type);
my_file << const_val << std::endl;
my_file << grad_on_quad << std::endl;
std::cout << grad_on_quad << std::endl;
/// check the results
Vector<Real>::iterator<types::RMatrix> it = grad_on_quad.begin(2,dim);
Vector<Real>::iterator<types::RMatrix> it_end = grad_on_quad.end(2,dim);
for (;it != it_end; ++it) {
for (UInt d = 0; d < dim; ++d) {
- if(!(std::abs((*it)(0, d) - alpha[0][d]) < eps) ||
- !(std::abs((*it)(1, d) - alpha[1][d]) < eps)) {
+ types::RMatrix & grad = *it;
+ if(!(std::abs(grad(0, d) - alpha[0][d]) < eps) ||
+ !(std::abs(grad(1, d) - alpha[1][d]) < eps)) {
std::cout << "Error gradient is not correct "
<< (*it)(0, d) << " " << alpha[0][d] << " (" << std::abs((*it)(0, d) - alpha[0][d]) << ")"
<< " - "
<< (*it)(1, d) << " " << alpha[1][d] << " (" << std::abs((*it)(1, d) - alpha[1][d]) << ")"
<< " - " << d << std::endl;
std::cout << *it << std::endl;
exit(EXIT_FAILURE);
}
}
}
// compute gradient of coordinates
Vector<Real> grad_coord_on_quad(nb_quadrature_points, dim * dim, "grad_coord_on_quad");
fem->gradientOnQuadraturePoints(my_mesh.getNodes(), grad_coord_on_quad, my_mesh.getSpatialDimension(), type);
my_file << my_mesh.getNodes() << std::endl;
my_file << grad_coord_on_quad << std::endl;
Vector<Real>::iterator<types::RMatrix> itp = grad_coord_on_quad.begin(dim, dim);
Vector<Real>::iterator<types::RMatrix> itp_end = grad_coord_on_quad.end(dim, dim);
for (;itp != itp_end; ++itp) {
for (UInt i = 0; i < dim; ++i) {
for (UInt j = 0; j < dim; ++j) {
if(!(std::abs((*itp)(i,j) - (i == j)) < eps)) {
std::cout << *itp << std::endl;
exit(EXIT_FAILURE);
}
}
}
}
delete fem;
finalize();
return EXIT_SUCCESS;
}
diff --git a/test/test_fem/test_gradient_hexahedron_8.verified b/test/test_fem/test_gradient_hexahedron_8.verified
index 09f92324b..1f5bd94fa 100644
--- a/test/test_fem/test_gradient_hexahedron_8.verified
+++ b/test/test_fem/test_gradient_hexahedron_8.verified
@@ -1,181 +1,179 @@
Epsilon : 1e-12
FEM [
+ id : my_fem
+ element dimension : 3
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 125
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.25, 0.75, 1}, {0.25, 0.5, 1}, {0.25, 0.25, 1}, {0.5, 0.75, 1}, {0.5, 0.5, 1}, {0.5, 0.25, 1}, {0.75, 0.75, 1}, {0.75, 0.5, 1}, {0.75, 0.25, 1}, {0.75, 1, 0.25}, {0.75, 1, 0.5}, {0.75, 1, 0.75}, {0.5, 1, 0.25}, {0.5, 1, 0.5}, {0.5, 1, 0.75}, {0.25, 1, 0.25}, {0.25, 1, 0.5}, {0.25, 1, 0.75}, {0.25, 0, 0.75}, {0.25, 0, 0.5}, {0.25, 0, 0.25}, {0.5, 0, 0.75}, {0.5, 0, 0.5}, {0.5, 0, 0.25}, {0.75, 0, 0.75}, {0.75, 0, 0.5}, {0.75, 0, 0.25}, {0.75, 0.75, 0}, {0.75, 0.5, 0}, {0.75, 0.25, 0}, {0.5, 0.75, 0}, {0.5, 0.5, 0}, {0.5, 0.25, 0}, {0.25, 0.75, 0}, {0.25, 0.5, 0}, {0.25, 0.25, 0}, {0, 0.75, 0.25}, {0, 0.5, 0.25}, {0, 0.25, 0.25}, {0, 0.75, 0.5}, {0, 0.5, 0.5}, {0, 0.25, 0.5}, {0, 0.75, 0.75}, {0, 0.5, 0.75}, {0, 0.25, 0.75}, {1, 0.75, 0.75}, {1, 0.75, 0.5}, {1, 0.75, 0.25}, {1, 0.5, 0.75}, {1, 0.5, 0.5}, {1, 0.5, 0.25}, {1, 0.25, 0.75}, {1, 0.25, 0.5}, {1, 0.25, 0.25}, {0.75, 0.75, 0.75}, {0.5, 0.75, 0.75}, {0.25, 0.75, 0.75}, {0.75, 0.75, 0.5}, {0.5, 0.75, 0.5}, {0.25, 0.75, 0.5}, {0.75, 0.75, 0.25}, {0.5, 0.75, 0.25}, {0.25, 0.75, 0.25}, {0.75, 0.5, 0.75}, {0.5, 0.5, 0.75}, {0.25, 0.5, 0.75}, {0.75, 0.5, 0.5}, {0.5, 0.5, 0.5}, {0.25, 0.5, 0.5}, {0.75, 0.5, 0.25}, {0.5, 0.5, 0.25}, {0.25, 0.5, 0.25}, {0.75, 0.25, 0.75}, {0.5, 0.25, 0.75}, {0.25, 0.25, 0.75}, {0.75, 0.25, 0.5}, {0.5, 0.25, 0.5}, {0.25, 0.25, 0.5}, {0.75, 0.25, 0.25}, {0.5, 0.25, 0.25}, {0.25, 0.25, 0.25}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
+ ]
(not_ghost:_quadrangle_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 96
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{6, 8, 44, 35}, {35, 44, 45, 36}, {36, 45, 46, 37}, {37, 46, 23, 4}, {8, 9, 47, 44}, {44, 47, 48, 45}, {45, 48, 49, 46}, {46, 49, 24, 23}, {9, 10, 50, 47}, {47, 50, 51, 48}, {48, 51, 52, 49}, {49, 52, 25, 24}, {10, 7, 38, 50}, {50, 38, 39, 51}, {51, 39, 40, 52}, {52, 40, 5, 25}, {3, 14, 53, 13}, {13, 53, 54, 12}, {12, 54, 55, 11}, {11, 55, 10, 7}, {14, 15, 56, 53}, {53, 56, 57, 54}, {54, 57, 58, 55}, {55, 58, 9, 10}, {15, 16, 59, 56}, {56, 59, 60, 57}, {57, 60, 61, 58}, {58, 61, 8, 9}, {16, 2, 17, 59}, {59, 17, 18, 60}, {60, 18, 19, 61}, {61, 19, 6, 8}, {4, 23, 62, 22}, {22, 62, 63, 21}, {21, 63, 64, 20}, {20, 64, 31, 0}, {23, 24, 65, 62}, {62, 65, 66, 63}, {63, 66, 67, 64}, {64, 67, 30, 31}, {24, 25, 68, 65}, {65, 68, 69, 66}, {66, 69, 70, 67}, {67, 70, 29, 30}, {25, 5, 26, 68}, {68, 26, 27, 69}, {69, 27, 28, 70}, {70, 28, 1, 29}, {3, 14, 71, 41}, {41, 71, 72, 42}, {42, 72, 73, 43}, {43, 73, 29, 1}, {14, 15, 74, 71}, {71, 74, 75, 72}, {72, 75, 76, 73}, {73, 76, 30, 29}, {15, 16, 77, 74}, {74, 77, 78, 75}, {75, 78, 79, 76}, {76, 79, 31, 30}, {16, 2, 32, 77}, {77, 32, 33, 78}, {78, 33, 34, 79}, {79, 34, 0, 31}, {2, 17, 80, 32}, {32, 80, 81, 33}, {33, 81, 82, 34}, {34, 82, 20, 0}, {17, 18, 83, 80}, {80, 83, 84, 81}, {81, 84, 85, 82}, {82, 85, 21, 20}, {18, 19, 86, 83}, {83, 86, 87, 84}, {84, 87, 88, 85}, {85, 88, 22, 21}, {19, 6, 35, 86}, {86, 35, 36, 87}, {87, 36, 37, 88}, {88, 37, 4, 22}, {7, 38, 89, 11}, {11, 89, 90, 12}, {12, 90, 91, 13}, {13, 91, 41, 3}, {38, 39, 92, 89}, {89, 92, 93, 90}, {90, 93, 94, 91}, {91, 94, 42, 41}, {39, 40, 95, 92}, {92, 95, 96, 93}, {93, 96, 97, 94}, {94, 97, 43, 42}, {40, 5, 26, 95}, {95, 26, 27, 96}, {96, 27, 28, 97}, {97, 28, 1, 43}}
]
+ ]
(not_ghost:_hexahedron_8) [
Vector<unsigned int> [
+ id : mesh:connectivities:_hexahedron_8
+ size : 64
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{89, 38, 7, 11, 98, 50, 10, 55}, {98, 50, 10, 55, 99, 47, 9, 58}, {99, 47, 9, 58, 100, 44, 8, 61}, {100, 44, 8, 61, 86, 35, 6, 19}, {90, 89, 11, 12, 101, 98, 55, 54}, {101, 98, 55, 54, 102, 99, 58, 57}, {102, 99, 58, 57, 103, 100, 61, 60}, {103, 100, 61, 60, 83, 86, 19, 18}, {91, 90, 12, 13, 104, 101, 54, 53}, {104, 101, 54, 53, 105, 102, 57, 56}, {105, 102, 57, 56, 106, 103, 60, 59}, {106, 103, 60, 59, 80, 83, 18, 17}, {41, 91, 13, 3, 71, 104, 53, 14}, {71, 104, 53, 14, 74, 105, 56, 15}, {74, 105, 56, 15, 77, 106, 59, 16}, {77, 106, 59, 16, 32, 80, 17, 2}, {92, 39, 38, 89, 107, 51, 50, 98}, {107, 51, 50, 98, 108, 48, 47, 99}, {108, 48, 47, 99, 109, 45, 44, 100}, {109, 45, 44, 100, 87, 36, 35, 86}, {93, 92, 89, 90, 110, 107, 98, 101}, {110, 107, 98, 101, 111, 108, 99, 102}, {111, 108, 99, 102, 112, 109, 100, 103}, {112, 109, 100, 103, 84, 87, 86, 83}, {94, 93, 90, 91, 113, 110, 101, 104}, {113, 110, 101, 104, 114, 111, 102, 105}, {114, 111, 102, 105, 115, 112, 103, 106}, {115, 112, 103, 106, 81, 84, 83, 80}, {42, 94, 91, 41, 72, 113, 104, 71}, {72, 113, 104, 71, 75, 114, 105, 74}, {75, 114, 105, 74, 78, 115, 106, 77}, {78, 115, 106, 77, 33, 81, 80, 32}, {95, 40, 39, 92, 116, 52, 51, 107}, {116, 52, 51, 107, 117, 49, 48, 108}, {117, 49, 48, 108, 118, 46, 45, 109}, {118, 46, 45, 109, 88, 37, 36, 87}, {96, 95, 92, 93, 119, 116, 107, 110}, {119, 116, 107, 110, 120, 117, 108, 111}, {120, 117, 108, 111, 121, 118, 109, 112}, {121, 118, 109, 112, 85, 88, 87, 84}, {97, 96, 93, 94, 122, 119, 110, 113}, {122, 119, 110, 113, 123, 120, 111, 114}, {123, 120, 111, 114, 124, 121, 112, 115}, {124, 121, 112, 115, 82, 85, 84, 81}, {43, 97, 94, 42, 73, 122, 113, 72}, {73, 122, 113, 72, 76, 123, 114, 75}, {76, 123, 114, 75, 79, 124, 115, 78}, {79, 124, 115, 78, 34, 82, 81, 33}, {26, 5, 40, 95, 68, 25, 52, 116}, {68, 25, 52, 116, 65, 24, 49, 117}, {65, 24, 49, 117, 62, 23, 46, 118}, {62, 23, 46, 118, 22, 4, 37, 88}, {27, 26, 95, 96, 69, 68, 116, 119}, {69, 68, 116, 119, 66, 65, 117, 120}, {66, 65, 117, 120, 63, 62, 118, 121}, {63, 62, 118, 121, 21, 22, 88, 85}, {28, 27, 96, 97, 70, 69, 119, 122}, {70, 69, 119, 122, 67, 66, 120, 123}, {67, 66, 120, 123, 64, 63, 121, 124}, {64, 63, 121, 124, 20, 21, 85, 82}, {1, 28, 97, 43, 29, 70, 122, 73}, {29, 70, 122, 73, 30, 67, 123, 76}, {30, 67, 123, 76, 31, 64, 124, 79}, {31, 64, 124, 79, 0, 20, 82, 34}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 125
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.25, 0.75, 1}, {0.25, 0.5, 1}, {0.25, 0.25, 1}, {0.5, 0.75, 1}, {0.5, 0.5, 1}, {0.5, 0.25, 1}, {0.75, 0.75, 1}, {0.75, 0.5, 1}, {0.75, 0.25, 1}, {0.75, 1, 0.25}, {0.75, 1, 0.5}, {0.75, 1, 0.75}, {0.5, 1, 0.25}, {0.5, 1, 0.5}, {0.5, 1, 0.75}, {0.25, 1, 0.25}, {0.25, 1, 0.5}, {0.25, 1, 0.75}, {0.25, 0, 0.75}, {0.25, 0, 0.5}, {0.25, 0, 0.25}, {0.5, 0, 0.75}, {0.5, 0, 0.5}, {0.5, 0, 0.25}, {0.75, 0, 0.75}, {0.75, 0, 0.5}, {0.75, 0, 0.25}, {0.75, 0.75, 0}, {0.75, 0.5, 0}, {0.75, 0.25, 0}, {0.5, 0.75, 0}, {0.5, 0.5, 0}, {0.5, 0.25, 0}, {0.25, 0.75, 0}, {0.25, 0.5, 0}, {0.25, 0.25, 0}, {0, 0.75, 0.25}, {0, 0.5, 0.25}, {0, 0.25, 0.25}, {0, 0.75, 0.5}, {0, 0.5, 0.5}, {0, 0.25, 0.5}, {0, 0.75, 0.75}, {0, 0.5, 0.75}, {0, 0.25, 0.75}, {1, 0.75, 0.75}, {1, 0.75, 0.5}, {1, 0.75, 0.25}, {1, 0.5, 0.75}, {1, 0.5, 0.5}, {1, 0.5, 0.25}, {1, 0.25, 0.75}, {1, 0.25, 0.5}, {1, 0.25, 0.25}, {0.75, 0.75, 0.75}, {0.5, 0.75, 0.75}, {0.25, 0.75, 0.75}, {0.75, 0.75, 0.5}, {0.5, 0.75, 0.5}, {0.25, 0.75, 0.5}, {0.75, 0.75, 0.25}, {0.5, 0.75, 0.25}, {0.25, 0.75, 0.25}, {0.75, 0.5, 0.75}, {0.5, 0.5, 0.75}, {0.25, 0.5, 0.75}, {0.75, 0.5, 0.5}, {0.5, 0.5, 0.5}, {0.25, 0.5, 0.5}, {0.75, 0.5, 0.25}, {0.5, 0.5, 0.25}, {0.25, 0.5, 0.25}, {0.75, 0.25, 0.75}, {0.5, 0.25, 0.75}, {0.25, 0.25, 0.75}, {0.75, 0.25, 0.5}, {0.5, 0.25, 0.5}, {0.25, 0.25, 0.5}, {0.75, 0.25, 0.25}, {0.5, 0.25, 0.25}, {0.25, 0.25, 0.25}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
+ ]
(not_ghost:_quadrangle_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 96
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{6, 8, 44, 35}, {35, 44, 45, 36}, {36, 45, 46, 37}, {37, 46, 23, 4}, {8, 9, 47, 44}, {44, 47, 48, 45}, {45, 48, 49, 46}, {46, 49, 24, 23}, {9, 10, 50, 47}, {47, 50, 51, 48}, {48, 51, 52, 49}, {49, 52, 25, 24}, {10, 7, 38, 50}, {50, 38, 39, 51}, {51, 39, 40, 52}, {52, 40, 5, 25}, {3, 14, 53, 13}, {13, 53, 54, 12}, {12, 54, 55, 11}, {11, 55, 10, 7}, {14, 15, 56, 53}, {53, 56, 57, 54}, {54, 57, 58, 55}, {55, 58, 9, 10}, {15, 16, 59, 56}, {56, 59, 60, 57}, {57, 60, 61, 58}, {58, 61, 8, 9}, {16, 2, 17, 59}, {59, 17, 18, 60}, {60, 18, 19, 61}, {61, 19, 6, 8}, {4, 23, 62, 22}, {22, 62, 63, 21}, {21, 63, 64, 20}, {20, 64, 31, 0}, {23, 24, 65, 62}, {62, 65, 66, 63}, {63, 66, 67, 64}, {64, 67, 30, 31}, {24, 25, 68, 65}, {65, 68, 69, 66}, {66, 69, 70, 67}, {67, 70, 29, 30}, {25, 5, 26, 68}, {68, 26, 27, 69}, {69, 27, 28, 70}, {70, 28, 1, 29}, {3, 14, 71, 41}, {41, 71, 72, 42}, {42, 72, 73, 43}, {43, 73, 29, 1}, {14, 15, 74, 71}, {71, 74, 75, 72}, {72, 75, 76, 73}, {73, 76, 30, 29}, {15, 16, 77, 74}, {74, 77, 78, 75}, {75, 78, 79, 76}, {76, 79, 31, 30}, {16, 2, 32, 77}, {77, 32, 33, 78}, {78, 33, 34, 79}, {79, 34, 0, 31}, {2, 17, 80, 32}, {32, 80, 81, 33}, {33, 81, 82, 34}, {34, 82, 20, 0}, {17, 18, 83, 80}, {80, 83, 84, 81}, {81, 84, 85, 82}, {82, 85, 21, 20}, {18, 19, 86, 83}, {83, 86, 87, 84}, {84, 87, 88, 85}, {85, 88, 22, 21}, {19, 6, 35, 86}, {86, 35, 36, 87}, {87, 36, 37, 88}, {88, 37, 4, 22}, {7, 38, 89, 11}, {11, 89, 90, 12}, {12, 90, 91, 13}, {13, 91, 41, 3}, {38, 39, 92, 89}, {89, 92, 93, 90}, {90, 93, 94, 91}, {91, 94, 42, 41}, {39, 40, 95, 92}, {92, 95, 96, 93}, {93, 96, 97, 94}, {94, 97, 43, 42}, {40, 5, 26, 95}, {95, 26, 27, 96}, {96, 27, 28, 97}, {97, 28, 1, 43}}
]
+ ]
(not_ghost:_hexahedron_8) [
Vector<unsigned int> [
+ id : mesh:connectivities:_hexahedron_8
+ size : 64
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{89, 38, 7, 11, 98, 50, 10, 55}, {98, 50, 10, 55, 99, 47, 9, 58}, {99, 47, 9, 58, 100, 44, 8, 61}, {100, 44, 8, 61, 86, 35, 6, 19}, {90, 89, 11, 12, 101, 98, 55, 54}, {101, 98, 55, 54, 102, 99, 58, 57}, {102, 99, 58, 57, 103, 100, 61, 60}, {103, 100, 61, 60, 83, 86, 19, 18}, {91, 90, 12, 13, 104, 101, 54, 53}, {104, 101, 54, 53, 105, 102, 57, 56}, {105, 102, 57, 56, 106, 103, 60, 59}, {106, 103, 60, 59, 80, 83, 18, 17}, {41, 91, 13, 3, 71, 104, 53, 14}, {71, 104, 53, 14, 74, 105, 56, 15}, {74, 105, 56, 15, 77, 106, 59, 16}, {77, 106, 59, 16, 32, 80, 17, 2}, {92, 39, 38, 89, 107, 51, 50, 98}, {107, 51, 50, 98, 108, 48, 47, 99}, {108, 48, 47, 99, 109, 45, 44, 100}, {109, 45, 44, 100, 87, 36, 35, 86}, {93, 92, 89, 90, 110, 107, 98, 101}, {110, 107, 98, 101, 111, 108, 99, 102}, {111, 108, 99, 102, 112, 109, 100, 103}, {112, 109, 100, 103, 84, 87, 86, 83}, {94, 93, 90, 91, 113, 110, 101, 104}, {113, 110, 101, 104, 114, 111, 102, 105}, {114, 111, 102, 105, 115, 112, 103, 106}, {115, 112, 103, 106, 81, 84, 83, 80}, {42, 94, 91, 41, 72, 113, 104, 71}, {72, 113, 104, 71, 75, 114, 105, 74}, {75, 114, 105, 74, 78, 115, 106, 77}, {78, 115, 106, 77, 33, 81, 80, 32}, {95, 40, 39, 92, 116, 52, 51, 107}, {116, 52, 51, 107, 117, 49, 48, 108}, {117, 49, 48, 108, 118, 46, 45, 109}, {118, 46, 45, 109, 88, 37, 36, 87}, {96, 95, 92, 93, 119, 116, 107, 110}, {119, 116, 107, 110, 120, 117, 108, 111}, {120, 117, 108, 111, 121, 118, 109, 112}, {121, 118, 109, 112, 85, 88, 87, 84}, {97, 96, 93, 94, 122, 119, 110, 113}, {122, 119, 110, 113, 123, 120, 111, 114}, {123, 120, 111, 114, 124, 121, 112, 115}, {124, 121, 112, 115, 82, 85, 84, 81}, {43, 97, 94, 42, 73, 122, 113, 72}, {73, 122, 113, 72, 76, 123, 114, 75}, {76, 123, 114, 75, 79, 124, 115, 78}, {79, 124, 115, 78, 34, 82, 81, 33}, {26, 5, 40, 95, 68, 25, 52, 116}, {68, 25, 52, 116, 65, 24, 49, 117}, {65, 24, 49, 117, 62, 23, 46, 118}, {62, 23, 46, 118, 22, 4, 37, 88}, {27, 26, 95, 96, 69, 68, 116, 119}, {69, 68, 116, 119, 66, 65, 117, 120}, {66, 65, 117, 120, 63, 62, 118, 121}, {63, 62, 118, 121, 21, 22, 88, 85}, {28, 27, 96, 97, 70, 69, 119, 122}, {70, 69, 119, 122, 67, 66, 120, 123}, {67, 66, 120, 123, 64, 63, 121, 124}, {64, 63, 121, 124, 20, 21, 85, 82}, {1, 28, 97, 43, 29, 70, 122, 73}, {29, 70, 122, 73, 30, 67, 123, 76}, {30, 67, 123, 76, 31, 64, 124, 79}, {31, 64, 124, 79, 0, 20, 82, 34}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 8
+ + nb vectors : 7
Vector<unsigned int> [
+ id : mesh:connectivities:_hexahedron_8
+ size : 64
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{89, 38, 7, 11, 98, 50, 10, 55}, {98, 50, 10, 55, 99, 47, 9, 58}, {99, 47, 9, 58, 100, 44, 8, 61}, {100, 44, 8, 61, 86, 35, 6, 19}, {90, 89, 11, 12, 101, 98, 55, 54}, {101, 98, 55, 54, 102, 99, 58, 57}, {102, 99, 58, 57, 103, 100, 61, 60}, {103, 100, 61, 60, 83, 86, 19, 18}, {91, 90, 12, 13, 104, 101, 54, 53}, {104, 101, 54, 53, 105, 102, 57, 56}, {105, 102, 57, 56, 106, 103, 60, 59}, {106, 103, 60, 59, 80, 83, 18, 17}, {41, 91, 13, 3, 71, 104, 53, 14}, {71, 104, 53, 14, 74, 105, 56, 15}, {74, 105, 56, 15, 77, 106, 59, 16}, {77, 106, 59, 16, 32, 80, 17, 2}, {92, 39, 38, 89, 107, 51, 50, 98}, {107, 51, 50, 98, 108, 48, 47, 99}, {108, 48, 47, 99, 109, 45, 44, 100}, {109, 45, 44, 100, 87, 36, 35, 86}, {93, 92, 89, 90, 110, 107, 98, 101}, {110, 107, 98, 101, 111, 108, 99, 102}, {111, 108, 99, 102, 112, 109, 100, 103}, {112, 109, 100, 103, 84, 87, 86, 83}, {94, 93, 90, 91, 113, 110, 101, 104}, {113, 110, 101, 104, 114, 111, 102, 105}, {114, 111, 102, 105, 115, 112, 103, 106}, {115, 112, 103, 106, 81, 84, 83, 80}, {42, 94, 91, 41, 72, 113, 104, 71}, {72, 113, 104, 71, 75, 114, 105, 74}, {75, 114, 105, 74, 78, 115, 106, 77}, {78, 115, 106, 77, 33, 81, 80, 32}, {95, 40, 39, 92, 116, 52, 51, 107}, {116, 52, 51, 107, 117, 49, 48, 108}, {117, 49, 48, 108, 118, 46, 45, 109}, {118, 46, 45, 109, 88, 37, 36, 87}, {96, 95, 92, 93, 119, 116, 107, 110}, {119, 116, 107, 110, 120, 117, 108, 111}, {120, 117, 108, 111, 121, 118, 109, 112}, {121, 118, 109, 112, 85, 88, 87, 84}, {97, 96, 93, 94, 122, 119, 110, 113}, {122, 119, 110, 113, 123, 120, 111, 114}, {123, 120, 111, 114, 124, 121, 112, 115}, {124, 121, 112, 115, 82, 85, 84, 81}, {43, 97, 94, 42, 73, 122, 113, 72}, {73, 122, 113, 72, 76, 123, 114, 75}, {76, 123, 114, 75, 79, 124, 115, 78}, {79, 124, 115, 78, 34, 82, 81, 33}, {26, 5, 40, 95, 68, 25, 52, 116}, {68, 25, 52, 116, 65, 24, 49, 117}, {65, 24, 49, 117, 62, 23, 46, 118}, {62, 23, 46, 118, 22, 4, 37, 88}, {27, 26, 95, 96, 69, 68, 116, 119}, {69, 68, 116, 119, 66, 65, 117, 120}, {66, 65, 117, 120, 63, 62, 118, 121}, {63, 62, 118, 121, 21, 22, 88, 85}, {28, 27, 96, 97, 70, 69, 119, 122}, {70, 69, 119, 122, 67, 66, 120, 123}, {67, 66, 120, 123, 64, 63, 121, 124}, {64, 63, 121, 124, 20, 21, 85, 82}, {1, 28, 97, 43, 29, 70, 122, 73}, {29, 70, 122, 73, 30, 67, 123, 76}, {30, 67, 123, 76, 31, 64, 124, 79}, {31, 64, 124, 79, 0, 20, 82, 34}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 96
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{6, 8, 44, 35}, {35, 44, 45, 36}, {36, 45, 46, 37}, {37, 46, 23, 4}, {8, 9, 47, 44}, {44, 47, 48, 45}, {45, 48, 49, 46}, {46, 49, 24, 23}, {9, 10, 50, 47}, {47, 50, 51, 48}, {48, 51, 52, 49}, {49, 52, 25, 24}, {10, 7, 38, 50}, {50, 38, 39, 51}, {51, 39, 40, 52}, {52, 40, 5, 25}, {3, 14, 53, 13}, {13, 53, 54, 12}, {12, 54, 55, 11}, {11, 55, 10, 7}, {14, 15, 56, 53}, {53, 56, 57, 54}, {54, 57, 58, 55}, {55, 58, 9, 10}, {15, 16, 59, 56}, {56, 59, 60, 57}, {57, 60, 61, 58}, {58, 61, 8, 9}, {16, 2, 17, 59}, {59, 17, 18, 60}, {60, 18, 19, 61}, {61, 19, 6, 8}, {4, 23, 62, 22}, {22, 62, 63, 21}, {21, 63, 64, 20}, {20, 64, 31, 0}, {23, 24, 65, 62}, {62, 65, 66, 63}, {63, 66, 67, 64}, {64, 67, 30, 31}, {24, 25, 68, 65}, {65, 68, 69, 66}, {66, 69, 70, 67}, {67, 70, 29, 30}, {25, 5, 26, 68}, {68, 26, 27, 69}, {69, 27, 28, 70}, {70, 28, 1, 29}, {3, 14, 71, 41}, {41, 71, 72, 42}, {42, 72, 73, 43}, {43, 73, 29, 1}, {14, 15, 74, 71}, {71, 74, 75, 72}, {72, 75, 76, 73}, {73, 76, 30, 29}, {15, 16, 77, 74}, {74, 77, 78, 75}, {75, 78, 79, 76}, {76, 79, 31, 30}, {16, 2, 32, 77}, {77, 32, 33, 78}, {78, 33, 34, 79}, {79, 34, 0, 31}, {2, 17, 80, 32}, {32, 80, 81, 33}, {33, 81, 82, 34}, {34, 82, 20, 0}, {17, 18, 83, 80}, {80, 83, 84, 81}, {81, 84, 85, 82}, {82, 85, 21, 20}, {18, 19, 86, 83}, {83, 86, 87, 84}, {84, 87, 88, 85}, {85, 88, 22, 21}, {19, 6, 35, 86}, {86, 35, 36, 87}, {87, 36, 37, 88}, {88, 37, 4, 22}, {7, 38, 89, 11}, {11, 89, 90, 12}, {12, 90, 91, 13}, {13, 91, 41, 3}, {38, 39, 92, 89}, {89, 92, 93, 90}, {90, 93, 94, 91}, {91, 94, 42, 41}, {39, 40, 95, 92}, {92, 95, 96, 93}, {93, 96, 97, 94}, {94, 97, 43, 42}, {40, 5, 26, 95}, {95, 26, 27, 96}, {96, 27, 28, 97}, {97, 28, 1, 43}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 125
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.25, 0.75, 1}, {0.25, 0.5, 1}, {0.25, 0.25, 1}, {0.5, 0.75, 1}, {0.5, 0.5, 1}, {0.5, 0.25, 1}, {0.75, 0.75, 1}, {0.75, 0.5, 1}, {0.75, 0.25, 1}, {0.75, 1, 0.25}, {0.75, 1, 0.5}, {0.75, 1, 0.75}, {0.5, 1, 0.25}, {0.5, 1, 0.5}, {0.5, 1, 0.75}, {0.25, 1, 0.25}, {0.25, 1, 0.5}, {0.25, 1, 0.75}, {0.25, 0, 0.75}, {0.25, 0, 0.5}, {0.25, 0, 0.25}, {0.5, 0, 0.75}, {0.5, 0, 0.5}, {0.5, 0, 0.25}, {0.75, 0, 0.75}, {0.75, 0, 0.5}, {0.75, 0, 0.25}, {0.75, 0.75, 0}, {0.75, 0.5, 0}, {0.75, 0.25, 0}, {0.5, 0.75, 0}, {0.5, 0.5, 0}, {0.5, 0.25, 0}, {0.25, 0.75, 0}, {0.25, 0.5, 0}, {0.25, 0.25, 0}, {0, 0.75, 0.25}, {0, 0.5, 0.25}, {0, 0.25, 0.25}, {0, 0.75, 0.5}, {0, 0.5, 0.5}, {0, 0.25, 0.5}, {0, 0.75, 0.75}, {0, 0.5, 0.75}, {0, 0.25, 0.75}, {1, 0.75, 0.75}, {1, 0.75, 0.5}, {1, 0.75, 0.25}, {1, 0.5, 0.75}, {1, 0.5, 0.5}, {1, 0.5, 0.25}, {1, 0.25, 0.75}, {1, 0.25, 0.5}, {1, 0.25, 0.25}, {0.75, 0.75, 0.75}, {0.5, 0.75, 0.75}, {0.25, 0.75, 0.75}, {0.75, 0.75, 0.5}, {0.5, 0.75, 0.5}, {0.25, 0.75, 0.5}, {0.75, 0.75, 0.25}, {0.5, 0.75, 0.25}, {0.25, 0.75, 0.25}, {0.75, 0.5, 0.75}, {0.5, 0.5, 0.75}, {0.25, 0.5, 0.75}, {0.75, 0.5, 0.5}, {0.5, 0.5, 0.5}, {0.25, 0.5, 0.5}, {0.75, 0.5, 0.25}, {0.5, 0.5, 0.25}, {0.25, 0.5, 0.25}, {0.75, 0.25, 0.75}, {0.5, 0.25, 0.75}, {0.25, 0.25, 0.75}, {0.75, 0.25, 0.5}, {0.5, 0.25, 0.5}, {0.25, 0.25, 0.5}, {0.75, 0.25, 0.25}, {0.5, 0.25, 0.25}, {0.25, 0.25, 0.25}}
]
Vector<double> [
+ id : my_fem:jacobians:_hexahedron_8
+ size : 512
+ nb_component : 1
+ allocated size : 512
+ memory size : 4kB
+ values : {{0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_hexahedron_8
- + size : 8
- + nb_component : 3
- + allocated size : 2000
- + memory size : 47kB
- + values : {{-0.57735, -0.57735, -0.57735}, {0.57735, -0.57735, -0.57735}, {0.57735, 0.57735, -0.57735}, {-0.57735, 0.57735, -0.57735}, {-0.57735, -0.57735, 0.57735}, {0.57735, -0.57735, 0.57735}, {0.57735, 0.57735, 0.57735}, {-0.57735, 0.57735, 0.57735}}
- ]
Vector<double> [
+ id : my_fem:shapes:_hexahedron_8
+ size : 512
+ nb_component : 8
+ allocated size : 512
+ memory size : 32kB
+ values : {{0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_hexahedron_8
+ size : 512
+ nb_component : 24
+ allocated size : 512
+ memory size : 96kB
+ values : {{2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}}
]
- + total size : 3.4e+02kB
+ + total size : 2.9e+02kB
]
- + total size : 3.4e+02kB
+ + total size : 2.9e+02kB
]
Vector<double> [
+ id : grad_on_quad
+ size : 512
+ nb_component : 6
+ allocated size : 512
+ memory size : 24kB
- + values : {{13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}}
+ + values : {{13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}}
]
diff --git a/test/test_fem/test_gradient_quadrangle_4.verified b/test/test_fem/test_gradient_quadrangle_4.verified
index 0d84b0472..ae7e4c400 100644
--- a/test/test_fem/test_gradient_quadrangle_4.verified
+++ b/test/test_fem/test_gradient_quadrangle_4.verified
@@ -1,155 +1,151 @@
Epsilon : 1e-12
FEM [
+ id : my_fem
+ element dimension : 2
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 9
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
+ ]
(not_ghost:_quadrangle_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 4
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{2, 6, 8, 5}, {5, 8, 4, 1}, {6, 3, 7, 8}, {8, 7, 0, 4}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 9
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
+ ]
(not_ghost:_quadrangle_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 4
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{2, 6, 8, 5}, {5, 8, 4, 1}, {6, 3, 7, 8}, {8, 7, 0, 4}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 7
+ + nb vectors : 6
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 4
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{2, 6, 8, 5}, {5, 8, 4, 1}, {6, 3, 7, 8}, {8, 7, 0, 4}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 9
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}}
]
Vector<double> [
+ id : my_fem:jacobians:_quadrangle_4
+ size : 16
+ nb_component : 1
+ allocated size : 16
+ memory size : 0.12kB
+ values : {{0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_quadrangle_4
- + size : 4
- + nb_component : 2
- + allocated size : 2000
- + memory size : 31kB
- + values : {{-0.57735, -0.57735}, {0.57735, -0.57735}, {0.57735, 0.57735}, {-0.57735, 0.57735}}
- ]
Vector<double> [
+ id : my_fem:shapes:_quadrangle_4
+ size : 16
+ nb_component : 4
+ allocated size : 16
+ memory size : 0.5kB
+ values : {{0.622008, 0.166667, 0.0446582, 0.166667}, {0.166667, 0.622008, 0.166667, 0.0446582}, {0.0446582, 0.166667, 0.622008, 0.166667}, {0.166667, 0.0446582, 0.166667, 0.622008}, {0.622008, 0.166667, 0.0446582, 0.166667}, {0.166667, 0.622008, 0.166667, 0.0446582}, {0.0446582, 0.166667, 0.622008, 0.166667}, {0.166667, 0.0446582, 0.166667, 0.622008}, {0.622008, 0.166667, 0.0446582, 0.166667}, {0.166667, 0.622008, 0.166667, 0.0446582}, {0.0446582, 0.166667, 0.622008, 0.166667}, {0.166667, 0.0446582, 0.166667, 0.622008}, {0.622008, 0.166667, 0.0446582, 0.166667}, {0.166667, 0.622008, 0.166667, 0.0446582}, {0.0446582, 0.166667, 0.622008, 0.166667}, {0.166667, 0.0446582, 0.166667, 0.622008}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_quadrangle_4
+ size : 16
+ nb_component : 8
+ allocated size : 16
+ memory size : 1kB
+ values : {{1.57735, 1.57735, -1.57735, 0.42265, -0.42265, -0.42265, 0.42265, -1.57735}, {1.57735, 0.42265, -1.57735, 1.57735, -0.42265, -1.57735, 0.42265, -0.42265}, {0.42265, 0.42265, -0.42265, 1.57735, -1.57735, -1.57735, 1.57735, -0.42265}, {0.42265, 1.57735, -0.42265, 0.42265, -1.57735, -0.42265, 1.57735, -1.57735}, {1.57735, 1.57735, -1.57735, 0.42265, -0.42265, -0.42265, 0.42265, -1.57735}, {1.57735, 0.42265, -1.57735, 1.57735, -0.42265, -1.57735, 0.42265, -0.42265}, {0.42265, 0.42265, -0.42265, 1.57735, -1.57735, -1.57735, 1.57735, -0.42265}, {0.42265, 1.57735, -0.42265, 0.42265, -1.57735, -0.42265, 1.57735, -1.57735}, {1.57735, 1.57735, -1.57735, 0.42265, -0.42265, -0.42265, 0.42265, -1.57735}, {1.57735, 0.42265, -1.57735, 1.57735, -0.42265, -1.57735, 0.42265, -0.42265}, {0.42265, 0.42265, -0.42265, 1.57735, -1.57735, -1.57735, 1.57735, -0.42265}, {0.42265, 1.57735, -0.42265, 0.42265, -1.57735, -0.42265, 1.57735, -1.57735}, {1.57735, 1.57735, -1.57735, 0.42265, -0.42265, -0.42265, 0.42265, -1.57735}, {1.57735, 0.42265, -1.57735, 1.57735, -0.42265, -1.57735, 0.42265, -0.42265}, {0.42265, 0.42265, -0.42265, 1.57735, -1.57735, -1.57735, 1.57735, -0.42265}, {0.42265, 1.57735, -0.42265, 0.42265, -1.57735, -0.42265, 1.57735, -1.57735}}
]
- + total size : 1.1e+02kB
+ + total size : 80kB
]
- + total size : 1.1e+02kB
+ + total size : 80kB
]
Vector<double> [
+ id : grad_on_quad
+ size : 16
+ nb_component : 4
+ allocated size : 16
+ memory size : 0.5kB
- + values : {{13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}}
+ + values : {{13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}}
]
diff --git a/test/test_fem/test_gradient_quadrangle_8.verified b/test/test_fem/test_gradient_quadrangle_8.verified
index dc6c96dbc..edc184373 100644
--- a/test/test_fem/test_gradient_quadrangle_8.verified
+++ b/test/test_fem/test_gradient_quadrangle_8.verified
@@ -1,129 +1,123 @@
Epsilon : 1e-12
FEM [
+ id : my_fem
+ element dimension : 2
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.5, 0.75}, {0.75, 0.5}, {0.5, 0.25}, {0.25, 0.5}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_quadrangle_8) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_8
+ size : 4
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{2, 10, 16, 7, 11, 17, 18, 9}, {7, 16, 4, 1, 18, 19, 6, 8}, {10, 3, 13, 16, 12, 14, 20, 17}, {16, 13, 0, 4, 20, 15, 5, 19}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.5, 0.75}, {0.75, 0.5}, {0.5, 0.25}, {0.25, 0.5}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_quadrangle_8) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_8
+ size : 4
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{2, 10, 16, 7, 11, 17, 18, 9}, {7, 16, 4, 1, 18, 19, 6, 8}, {10, 3, 13, 16, 12, 14, 20, 17}, {16, 13, 0, 4, 20, 15, 5, 19}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 6
+ + nb vectors : 5
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_8
+ size : 4
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{2, 10, 16, 7, 11, 17, 18, 9}, {7, 16, 4, 1, 18, 19, 6, 8}, {10, 3, 13, 16, 12, 14, 20, 17}, {16, 13, 0, 4, 20, 15, 5, 19}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.5, 0.75}, {0.75, 0.5}, {0.5, 0.25}, {0.25, 0.5}}
]
Vector<double> [
+ id : my_fem:jacobians:_quadrangle_8
+ size : 36
+ nb_component : 1
+ allocated size : 36
+ memory size : 0.28kB
+ values : {{0.0493827}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0493827}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0493827}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0493827}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0308642}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_quadrangle_8
- + size : 9
- + nb_component : 2
- + allocated size : 2000
- + memory size : 31kB
- + values : {{0, 0}, {0.774597, 0.774597}, {-0.774597, 0.774597}, {-0.774597, -0.774597}, {0.774597, -0.774597}, {0, 0.774597}, {-0.774597, 0}, {0, -0.774597}, {0.774597, 0}}
- ]
Vector<double> [
+ id : my_fem:shapes:_quadrangle_8
+ size : 36
+ nb_component : 8
+ allocated size : 36
+ memory size : 2.2kB
+ values : {{-0.25, -0.25, -0.25, -0.25, 0.5, 0.5, 0.5, 0.5}, {-0.032379, -0.1, 0.432379, -0.1, 0.0450807, 0.354919, 0.354919, 0.0450807}, {-0.1, -0.032379, -0.1, 0.432379, 0.0450807, 0.0450807, 0.354919, 0.354919}, {0.432379, -0.1, -0.032379, -0.1, 0.354919, 0.0450807, 0.0450807, 0.354919}, {-0.1, 0.432379, -0.1, -0.032379, 0.354919, 0.354919, 0.0450807, 0.0450807}, {-0.1, -0.1, -0.1, -0.1, 0.112702, 0.2, 0.887298, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.112702, 0.2, 0.887298}, {-0.1, -0.1, -0.1, -0.1, 0.887298, 0.2, 0.112702, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.887298, 0.2, 0.112702}, {-0.25, -0.25, -0.25, -0.25, 0.5, 0.5, 0.5, 0.5}, {-0.032379, -0.1, 0.432379, -0.1, 0.0450807, 0.354919, 0.354919, 0.0450807}, {-0.1, -0.032379, -0.1, 0.432379, 0.0450807, 0.0450807, 0.354919, 0.354919}, {0.432379, -0.1, -0.032379, -0.1, 0.354919, 0.0450807, 0.0450807, 0.354919}, {-0.1, 0.432379, -0.1, -0.032379, 0.354919, 0.354919, 0.0450807, 0.0450807}, {-0.1, -0.1, -0.1, -0.1, 0.112702, 0.2, 0.887298, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.112702, 0.2, 0.887298}, {-0.1, -0.1, -0.1, -0.1, 0.887298, 0.2, 0.112702, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.887298, 0.2, 0.112702}, {-0.25, -0.25, -0.25, -0.25, 0.5, 0.5, 0.5, 0.5}, {-0.032379, -0.1, 0.432379, -0.1, 0.0450807, 0.354919, 0.354919, 0.0450807}, {-0.1, -0.032379, -0.1, 0.432379, 0.0450807, 0.0450807, 0.354919, 0.354919}, {0.432379, -0.1, -0.032379, -0.1, 0.354919, 0.0450807, 0.0450807, 0.354919}, {-0.1, 0.432379, -0.1, -0.032379, 0.354919, 0.354919, 0.0450807, 0.0450807}, {-0.1, -0.1, -0.1, -0.1, 0.112702, 0.2, 0.887298, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.112702, 0.2, 0.887298}, {-0.1, -0.1, -0.1, -0.1, 0.887298, 0.2, 0.112702, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.887298, 0.2, 0.112702}, {-0.25, -0.25, -0.25, -0.25, 0.5, 0.5, 0.5, 0.5}, {-0.032379, -0.1, 0.432379, -0.1, 0.0450807, 0.354919, 0.354919, 0.0450807}, {-0.1, -0.032379, -0.1, 0.432379, 0.0450807, 0.0450807, 0.354919, 0.354919}, {0.432379, -0.1, -0.032379, -0.1, 0.354919, 0.0450807, 0.0450807, 0.354919}, {-0.1, 0.432379, -0.1, -0.032379, 0.354919, 0.354919, 0.0450807, 0.0450807}, {-0.1, -0.1, -0.1, -0.1, 0.112702, 0.2, 0.887298, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.112702, 0.2, 0.887298}, {-0.1, -0.1, -0.1, -0.1, 0.887298, 0.2, 0.112702, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.887298, 0.2, 0.112702}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_quadrangle_8
+ size : 36
+ nb_component : 16
+ allocated size : 36
+ memory size : 4.5kB
+ values : {{0, 0, 0, 0, 0, 0, 0, 0, 2.36611e-12, 2, -2, 1.88161e-12, -2.36611e-12, -2, 2, -1.88161e-12}, {-0.52379, -0.52379, -0.174597, -1.3746, -4.12379, -4.12379, -1.3746, -0.174597, 0.698387, 0.8, -0.8, 5.49839, 5.49839, -0.8, 0.8, 0.698387}, {0.174597, -1.3746, 0.52379, -0.52379, 1.3746, -0.174597, 4.12379, -4.12379, -0.698387, 0.8, -0.8, 0.698387, -5.49839, -0.8, 0.8, 5.49839}, {4.12379, 4.12379, 1.3746, 0.174597, 0.52379, 0.52379, 0.174597, 1.3746, -5.49839, 0.8, -0.8, -0.698387, -0.698387, -0.8, 0.8, -5.49839}, {-1.3746, 0.174597, -4.12379, 4.12379, -0.174597, 1.3746, -0.52379, 0.52379, 5.49839, 0.8, -0.8, -5.49839, 0.698387, -0.8, 0.8, -0.698387}, {-0.174597, -1.54919, 0.174597, -1.54919, -1.3746, -1.54919, 1.3746, -1.54919, 4.19886e-12, 2, -0.8, 3.09839, -4.19886e-12, -2, 0.8, 3.09839}, {1.54919, 1.3746, 1.54919, -0.174597, 1.54919, 0.174597, 1.54919, -1.3746, -3.09839, 0.8, -2, 3.39506e-13, -3.09839, -0.8, 2, -3.39506e-13}, {1.3746, 1.54919, -1.3746, 1.54919, 0.174597, 1.54919, -0.174597, 1.54919, 5.33573e-13, 2, -0.8, -3.09839, -5.33573e-13, -2, 0.8, -3.09839}, {-1.54919, -0.174597, -1.54919, 1.3746, -1.54919, -1.3746, -1.54919, 0.174597, 3.09839, 0.8, -2, 4.0048e-12, 3.09839, -0.8, 2, -4.0048e-12}, {0, 0, 0, 0, 0, 0, 0, 0, 2.07689e-12, 2, -2, 2.36611e-12, -2.07689e-12, -2, 2, -2.36611e-12}, {-0.52379, -0.52379, -0.174597, -1.3746, -4.12379, -4.12379, -1.3746, -0.174597, 0.698387, 0.8, -0.8, 5.49839, 5.49839, -0.8, 0.8, 0.698387}, {0.174597, -1.3746, 0.52379, -0.52379, 1.3746, -0.174597, 4.12379, -4.12379, -0.698387, 0.8, -0.8, 0.698387, -5.49839, -0.8, 0.8, 5.49839}, {4.12379, 4.12379, 1.3746, 0.174597, 0.52379, 0.52379, 0.174597, 1.3746, -5.49839, 0.8, -0.8, -0.698387, -0.698387, -0.8, 0.8, -5.49839}, {-1.3746, 0.174597, -4.12379, 4.12379, -0.174597, 1.3746, -0.52379, 0.52379, 5.49839, 0.8, -0.8, -5.49839, 0.698387, -0.8, 0.8, -0.698387}, {-0.174597, -1.54919, 0.174597, -1.54919, -1.3746, -1.54919, 1.3746, -1.54919, 4.17666e-13, 2, -0.8, 3.09839, -4.17666e-13, -2, 0.8, 3.09839}, {1.54919, 1.3746, 1.54919, -0.174597, 1.54919, 0.174597, 1.54919, -1.3746, -3.09839, 0.8, -2, 5.33573e-13, -3.09839, -0.8, 2, -5.33573e-13}, {1.3746, 1.54919, -1.3746, 1.54919, 0.174597, 1.54919, -0.174597, 1.54919, 4.08307e-12, 2, -0.8, -3.09839, -4.08307e-12, -2, 0.8, -3.09839}, {-1.54919, -0.174597, -1.54919, 1.3746, -1.54919, -1.3746, -1.54919, 0.174597, 3.09839, 0.8, -2, 4.19864e-12, 3.09839, -0.8, 2, -4.19864e-12}, {0, 0, 0, 0, 0, 0, 0, 0, 1.88161e-12, 2, -2, 2.36589e-12, -1.88161e-12, -2, 2, -2.36589e-12}, {-0.52379, -0.52379, -0.174597, -1.3746, -4.12379, -4.12379, -1.3746, -0.174597, 0.698387, 0.8, -0.8, 5.49839, 5.49839, -0.8, 0.8, 0.698387}, {0.174597, -1.3746, 0.52379, -0.52379, 1.3746, -0.174597, 4.12379, -4.12379, -0.698387, 0.8, -0.8, 0.698387, -5.49839, -0.8, 0.8, 5.49839}, {4.12379, 4.12379, 1.3746, 0.174597, 0.52379, 0.52379, 0.174597, 1.3746, -5.49839, 0.8, -0.8, -0.698387, -0.698387, -0.8, 0.8, -5.49839}, {-1.3746, 0.174597, -4.12379, 4.12379, -0.174597, 1.3746, -0.52379, 0.52379, 5.49839, 0.8, -0.8, -5.49839, 0.698387, -0.8, 0.8, -0.698387}, {-0.174597, -1.54919, 0.174597, -1.54919, -1.3746, -1.54919, 1.3746, -1.54919, 4.0048e-12, 2, -0.8, 3.09839, -4.0048e-12, -2, 0.8, 3.09839}, {1.54919, 1.3746, 1.54919, -0.174597, 1.54919, 0.174597, 1.54919, -1.3746, -3.09839, 0.8, -2, 4.19864e-12, -3.09839, -0.8, 2, -4.19864e-12}, {1.3746, 1.54919, -1.3746, 1.54919, 0.174597, 1.54919, -0.174597, 1.54919, 3.39284e-13, 2, -0.8, -3.09839, -3.39284e-13, -2, 0.8, -3.09839}, {-1.54919, -0.174597, -1.54919, 1.3746, -1.54919, -1.3746, -1.54919, 0.174597, 3.09839, 0.8, -2, 5.3324e-13, 3.09839, -0.8, 2, -5.3324e-13}, {0, 0, 0, 0, 0, 0, 0, 0, 2.36589e-12, 2, -2, 2.07689e-12, -2.36589e-12, -2, 2, -2.07689e-12}, {-0.52379, -0.52379, -0.174597, -1.3746, -4.12379, -4.12379, -1.3746, -0.174597, 0.698387, 0.8, -0.8, 5.49839, 5.49839, -0.8, 0.8, 0.698387}, {0.174597, -1.3746, 0.52379, -0.52379, 1.3746, -0.174597, 4.12379, -4.12379, -0.698387, 0.8, -0.8, 0.698387, -5.49839, -0.8, 0.8, 5.49839}, {4.12379, 4.12379, 1.3746, 0.174597, 0.52379, 0.52379, 0.174597, 1.3746, -5.49839, 0.8, -0.8, -0.698387, -0.698387, -0.8, 0.8, -5.49839}, {-1.3746, 0.174597, -4.12379, 4.12379, -0.174597, 1.3746, -0.52379, 0.52379, 5.49839, 0.8, -0.8, -5.49839, 0.698387, -0.8, 0.8, -0.698387}, {-0.174597, -1.54919, 0.174597, -1.54919, -1.3746, -1.54919, 1.3746, -1.54919, 5.3324e-13, 2, -0.8, 3.09839, -5.3324e-13, -2, 0.8, 3.09839}, {1.54919, 1.3746, 1.54919, -0.174597, 1.54919, 0.174597, 1.54919, -1.3746, -3.09839, 0.8, -2, 4.08307e-12, -3.09839, -0.8, 2, -4.08307e-12}, {1.3746, 1.54919, -1.3746, 1.54919, 0.174597, 1.54919, -0.174597, 1.54919, 4.19864e-12, 2, -0.8, -3.09839, -4.19864e-12, -2, 0.8, -3.09839}, {-1.54919, -0.174597, -1.54919, 1.3746, -1.54919, -1.3746, -1.54919, 0.174597, 3.09839, 0.8, -2, 4.17666e-13, 3.09839, -0.8, 2, -4.17666e-13}}
]
- + total size : 1.3e+02kB
+ + total size : 1e+02kB
]
- + total size : 1.3e+02kB
+ + total size : 1e+02kB
]
Vector<double> [
+ id : grad_on_quad
+ size : 36
+ nb_component : 4
+ allocated size : 36
+ memory size : 1.1kB
- + values : {{13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}}
+ + values : {{13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}}
]
diff --git a/test/test_fem/test_gradient_segment_2.verified b/test/test_fem/test_gradient_segment_2.verified
index 653b719f5..26ff878f8 100644
--- a/test/test_fem/test_gradient_segment_2.verified
+++ b/test/test_fem/test_gradient_segment_2.verified
@@ -1,129 +1,123 @@
Epsilon : 1e-12
FEM [
+ id : my_fem
+ element dimension : 1
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 1
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 11
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 10
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 2}, {2, 3}, {3, 4}, {4, 5}, {5, 6}, {6, 7}, {7, 8}, {8, 9}, {9, 10}, {10, 1}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 1
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 11
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 10
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 2}, {2, 3}, {3, 4}, {4, 5}, {5, 6}, {6, 7}, {7, 8}, {8, 9}, {9, 10}, {10, 1}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 6
+ + nb vectors : 5
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 10
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 2}, {2, 3}, {3, 4}, {4, 5}, {5, 6}, {6, 7}, {7, 8}, {8, 9}, {9, 10}, {10, 1}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 11
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}}
]
Vector<double> [
+ id : my_fem:jacobians:_segment_2
+ size : 10
+ nb_component : 1
+ allocated size : 10
+ memory size : 0.078kB
+ values : {{0.1}, {0.1}, {0.1}, {0.1}, {0.1}, {0.1}, {0.1}, {0.1}, {0.1}, {0.1}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_segment_2
- + size : 1
- + nb_component : 1
- + allocated size : 2000
- + memory size : 16kB
- + values : {{0}}
- ]
Vector<double> [
+ id : my_fem:shapes:_segment_2
+ size : 10
+ nb_component : 2
+ allocated size : 10
+ memory size : 0.16kB
+ values : {{0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_segment_2
+ size : 10
+ nb_component : 2
+ allocated size : 10
+ memory size : 0.16kB
+ values : {{-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}}
]
- + total size : 47kB
+ + total size : 32kB
]
- + total size : 47kB
+ + total size : 32kB
]
Vector<double> [
+ id : grad_on_quad
+ size : 10
+ nb_component : 2
+ allocated size : 10
+ memory size : 0.16kB
+ values : {{13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}}
]
diff --git a/test/test_fem/test_gradient_segment_3.verified b/test/test_fem/test_gradient_segment_3.verified
index 61868b83a..2f8b20281 100644
--- a/test/test_fem/test_gradient_segment_3.verified
+++ b/test/test_fem/test_gradient_segment_3.verified
@@ -1,129 +1,123 @@
Epsilon : 1e-12
FEM [
+ id : my_fem
+ element dimension : 1
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 1
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}, {0.05}, {0.15}, {0.25}, {0.35}, {0.45}, {0.55}, {0.65}, {0.75}, {0.85}, {0.95}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 10
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 2, 11}, {2, 3, 12}, {3, 4, 13}, {4, 5, 14}, {5, 6, 15}, {6, 7, 16}, {7, 8, 17}, {8, 9, 18}, {9, 10, 19}, {10, 1, 20}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 1
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}, {0.05}, {0.15}, {0.25}, {0.35}, {0.45}, {0.55}, {0.65}, {0.75}, {0.85}, {0.95}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 10
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 2, 11}, {2, 3, 12}, {3, 4, 13}, {4, 5, 14}, {5, 6, 15}, {6, 7, 16}, {7, 8, 17}, {8, 9, 18}, {9, 10, 19}, {10, 1, 20}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 6
+ + nb vectors : 5
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 10
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 2, 11}, {2, 3, 12}, {3, 4, 13}, {4, 5, 14}, {5, 6, 15}, {6, 7, 16}, {7, 8, 17}, {8, 9, 18}, {9, 10, 19}, {10, 1, 20}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}, {0.05}, {0.15}, {0.25}, {0.35}, {0.45}, {0.55}, {0.65}, {0.75}, {0.85}, {0.95}}
]
Vector<double> [
+ id : my_fem:jacobians:_segment_3
+ size : 20
+ nb_component : 1
+ allocated size : 20
+ memory size : 0.16kB
+ values : {{0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_segment_3
- + size : 2
- + nb_component : 1
- + allocated size : 2000
- + memory size : 16kB
- + values : {{-0.57735}, {0.57735}}
- ]
Vector<double> [
+ id : my_fem:shapes:_segment_3
+ size : 20
+ nb_component : 3
+ allocated size : 20
+ memory size : 0.47kB
+ values : {{0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_segment_3
+ size : 20
+ nb_component : 3
+ allocated size : 20
+ memory size : 0.47kB
+ values : {{-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}}
]
- + total size : 56kB
+ + total size : 40kB
]
- + total size : 56kB
+ + total size : 40kB
]
Vector<double> [
+ id : grad_on_quad
+ size : 20
+ nb_component : 2
+ allocated size : 20
+ memory size : 0.31kB
+ values : {{13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}, {13, 11}}
]
diff --git a/test/test_fem/test_gradient_tetrahedron_10.verified b/test/test_fem/test_gradient_tetrahedron_10.verified
index 0c4b91561..ffd0eeb6a 100644
--- a/test/test_fem/test_gradient_tetrahedron_10.verified
+++ b/test/test_fem/test_gradient_tetrahedron_10.verified
@@ -1,181 +1,179 @@
Epsilon : 1e-12
FEM [
+ id : my_fem
+ element dimension : 3
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 722
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {0.125, 1, 1}, {0.375, 1, 1}, {0.625, 1, 1}, {0.875, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {1, 1, 0.875}, {1, 1, 0.625}, {1, 1, 0.375}, {1, 1, 0.125}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0.875, 1, 0}, {0.625, 1, 0}, {0.375, 1, 0}, {0.125, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 1, 0.125}, {0, 1, 0.375}, {0, 1, 0.625}, {0, 1, 0.875}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0, 0, 0.125}, {0, 0, 0.375}, {0, 0, 0.625}, {0, 0, 0.875}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {0.125, 0, 1}, {0.375, 0, 1}, {0.625, 0, 1}, {0.875, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {1, 0, 0.875}, {1, 0, 0.625}, {1, 0, 0.375}, {1, 0, 0.125}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0.875, 0, 0}, {0.625, 0, 0}, {0.375, 0, 0}, {0.125, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.875, 0}, {0, 0.625, 0}, {0, 0.375, 0}, {0, 0.125, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {0, 0.875, 1}, {0, 0.625, 1}, {0, 0.375, 1}, {0, 0.125, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.875, 1}, {1, 0.625, 1}, {1, 0.375, 1}, {1, 0.125, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {1, 0.875, 0}, {1, 0.625, 0}, {1, 0.375, 0}, {1, 0.125, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.234692, 0.610874, 1}, {0.095431, 0.625135, 1}, {0.139261, 0.735739, 1}, {0.264261, 0.860739, 1}, {0.375, 0.904691, 1}, {0.389261, 0.76543, 1}, {0.860739, 0.735739, 1}, {0.904569, 0.625135, 1}, {0.765308, 0.610874, 1}, {0.264261, 0.139383, 1}, {0.389261, 0.234962, 1}, {0.375, 0.0955798, 1}, {0.610739, 0.76543, 1}, {0.625, 0.904691, 1}, {0.735739, 0.860739, 1}, {0.095431, 0.375135, 1}, {0.234692, 0.389518, 1}, {0.139261, 0.264383, 1}, {0.625, 0.0955798, 1}, {0.610739, 0.234962, 1}, {0.735739, 0.139383, 1}, {0.860739, 0.264383, 1}, {0.765308, 0.389518, 1}, {0.904569, 0.375135, 1}, {0.095431, 0.500135, 1}, {0.904569, 0.500135, 1}, {0.5, 0.904691, 1}, {0.5, 0.0955798, 1}, {0.389261, 0.611834, 1}, {0.345431, 0.501231, 1}, {0.5, 0.655786, 1}, {0.610739, 0.611834, 1}, {0.389261, 0.390478, 1}, {0.654569, 0.501231, 1}, {0.5, 0.346675, 1}, {0.610739, 0.390478, 1}, {0.0709532, 0.804047, 1}, {0.210214, 0.789786, 1}, {0.195953, 0.929047, 1}, {0.789786, 0.789786, 1}, {0.929047, 0.804047, 1}, {0.195953, 0.0709735, 1}, {0.210214, 0.210356, 1}, {0.804047, 0.929047, 1}, {0.0709532, 0.195973, 1}, {0.789786, 0.210356, 1}, {0.804047, 0.0709735, 1}, {0.929047, 0.195973, 1}, {0.0709532, 0.0709735, 1}, {0.0709532, 0.929047, 1}, {0.929047, 0.929047, 1}, {0.929047, 0.0709735, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.904569, 1, 0.625}, {0.765308, 1, 0.610739}, {0.860739, 1, 0.735739}, {0.625, 1, 0.095431}, {0.610739, 1, 0.234692}, {0.735739, 1, 0.139261}, {0.375, 1, 0.904569}, {0.389261, 1, 0.765308}, {0.264261, 1, 0.860739}, {0.095431, 1, 0.375}, {0.234692, 1, 0.389261}, {0.139261, 1, 0.264261}, {0.735739, 1, 0.860739}, {0.610739, 1, 0.765308}, {0.625, 1, 0.904569}, {0.139261, 1, 0.735739}, {0.234692, 1, 0.610739}, {0.095431, 1, 0.625}, {0.860739, 1, 0.264261}, {0.765308, 1, 0.389261}, {0.904569, 1, 0.375}, {0.264261, 1, 0.139261}, {0.389261, 1, 0.234692}, {0.375, 1, 0.095431}, {0.5, 1, 0.095431}, {0.904569, 1, 0.5}, {0.095431, 1, 0.5}, {0.5, 1, 0.904569}, {0.654569, 1, 0.5}, {0.610739, 1, 0.610739}, {0.610739, 1, 0.389261}, {0.5, 1, 0.345431}, {0.389261, 1, 0.389261}, {0.5, 1, 0.654569}, {0.389261, 1, 0.610739}, {0.345431, 1, 0.5}, {0.789786, 1, 0.789786}, {0.929047, 1, 0.804047}, {0.789786, 1, 0.210214}, {0.804047, 1, 0.0709532}, {0.210214, 1, 0.789786}, {0.195953, 1, 0.929047}, {0.210214, 1, 0.210214}, {0.0709532, 1, 0.195953}, {0.804047, 1, 0.929047}, {0.0709532, 1, 0.804047}, {0.929047, 1, 0.195953}, {0.195953, 1, 0.0709532}, {0.0709532, 1, 0.0709532}, {0.929047, 1, 0.0709532}, {0.0709532, 1, 0.929047}, {0.929047, 1, 0.929047}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.904691, 0, 0.625}, {0.76543, 0, 0.610739}, {0.860739, 0, 0.735739}, {0.625135, 0, 0.095431}, {0.610874, 0, 0.234692}, {0.735739, 0, 0.139261}, {0.375135, 0, 0.904569}, {0.389518, 0, 0.765308}, {0.264383, 0, 0.860739}, {0.0955798, 0, 0.375}, {0.234962, 0, 0.389261}, {0.139383, 0, 0.264261}, {0.735739, 0, 0.860739}, {0.610874, 0, 0.765308}, {0.625135, 0, 0.904569}, {0.139383, 0, 0.735739}, {0.234962, 0, 0.610739}, {0.0955798, 0, 0.625}, {0.860739, 0, 0.264261}, {0.76543, 0, 0.389261}, {0.904691, 0, 0.375}, {0.264383, 0, 0.139261}, {0.389518, 0, 0.234692}, {0.375135, 0, 0.095431}, {0.500135, 0, 0.095431}, {0.904691, 0, 0.5}, {0.0955798, 0, 0.5}, {0.500135, 0, 0.904569}, {0.655786, 0, 0.5}, {0.611834, 0, 0.610739}, {0.611834, 0, 0.389261}, {0.501231, 0, 0.345431}, {0.390478, 0, 0.389261}, {0.501231, 0, 0.654569}, {0.390478, 0, 0.610739}, {0.346675, 0, 0.5}, {0.789786, 0, 0.789786}, {0.929047, 0, 0.804047}, {0.789786, 0, 0.210214}, {0.804047, 0, 0.0709532}, {0.210356, 0, 0.789786}, {0.195973, 0, 0.929047}, {0.210356, 0, 0.210214}, {0.0709735, 0, 0.195953}, {0.804047, 0, 0.929047}, {0.0709735, 0, 0.804047}, {0.929047, 0, 0.195953}, {0.195973, 0, 0.0709532}, {0.0709735, 0, 0.0709532}, {0.929047, 0, 0.0709532}, {0.0709735, 0, 0.929047}, {0.929047, 0, 0.929047}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0.860739, 0.735739, 0}, {0.765308, 0.610739, 0}, {0.904569, 0.625, 0}, {0.625, 0.904569, 0}, {0.610739, 0.765308, 0}, {0.735739, 0.860739, 0}, {0.735739, 0.139261, 0}, {0.610739, 0.234692, 0}, {0.625, 0.095431, 0}, {0.095431, 0.625, 0}, {0.234692, 0.610739, 0}, {0.139261, 0.735739, 0}, {0.264261, 0.860739, 0}, {0.389261, 0.765308, 0}, {0.375, 0.904569, 0}, {0.904569, 0.375, 0}, {0.765308, 0.389261, 0}, {0.860739, 0.264261, 0}, {0.139261, 0.264261, 0}, {0.234692, 0.389261, 0}, {0.095431, 0.375, 0}, {0.375, 0.095431, 0}, {0.389261, 0.234692, 0}, {0.264261, 0.139261, 0}, {0.904569, 0.5, 0}, {0.5, 0.904569, 0}, {0.5, 0.095431, 0}, {0.095431, 0.5, 0}, {0.5, 0.654569, 0}, {0.610739, 0.610739, 0}, {0.654569, 0.5, 0}, {0.389261, 0.610739, 0}, {0.610739, 0.389261, 0}, {0.345431, 0.5, 0}, {0.5, 0.345431, 0}, {0.389261, 0.389261, 0}, {0.789786, 0.789786, 0}, {0.804047, 0.929047, 0}, {0.929047, 0.804047, 0}, {0.804047, 0.0709532, 0}, {0.789786, 0.210214, 0}, {0.210214, 0.789786, 0}, {0.0709532, 0.804047, 0}, {0.929047, 0.195953, 0}, {0.195953, 0.929047, 0}, {0.210214, 0.210214, 0}, {0.195953, 0.0709532, 0}, {0.0709532, 0.195953, 0}, {0.929047, 0.0709532, 0}, {0.0709532, 0.929047, 0}, {0.929047, 0.929047, 0}, {0.0709532, 0.0709532, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {0, 0.735739, 0.139261}, {0, 0.610739, 0.234692}, {0, 0.625, 0.095431}, {0, 0.904569, 0.375}, {0, 0.765308, 0.389261}, {0, 0.860739, 0.264261}, {0, 0.625, 0.904569}, {0, 0.610739, 0.765308}, {0, 0.735739, 0.860739}, {0, 0.139261, 0.264261}, {0, 0.234692, 0.389261}, {0, 0.095431, 0.375}, {0, 0.860739, 0.735739}, {0, 0.765308, 0.610739}, {0, 0.904569, 0.625}, {0, 0.375, 0.095431}, {0, 0.389261, 0.234692}, {0, 0.264261, 0.139261}, {0, 0.095431, 0.625}, {0, 0.234692, 0.610739}, {0, 0.139261, 0.735739}, {0, 0.264261, 0.860739}, {0, 0.389261, 0.765308}, {0, 0.375, 0.904569}, {0, 0.5, 0.095431}, {0, 0.5, 0.904569}, {0, 0.904569, 0.5}, {0, 0.095431, 0.5}, {0, 0.610739, 0.389261}, {0, 0.5, 0.345431}, {0, 0.654569, 0.5}, {0, 0.610739, 0.610739}, {0, 0.389261, 0.389261}, {0, 0.5, 0.654569}, {0, 0.345431, 0.5}, {0, 0.389261, 0.610739}, {0, 0.804047, 0.0709532}, {0, 0.789786, 0.210214}, {0, 0.929047, 0.195953}, {0, 0.789786, 0.789786}, {0, 0.804047, 0.929047}, {0, 0.0709532, 0.195953}, {0, 0.210214, 0.210214}, {0, 0.929047, 0.804047}, {0, 0.195953, 0.0709532}, {0, 0.210214, 0.789786}, {0, 0.0709532, 0.804047}, {0, 0.195953, 0.929047}, {0, 0.0709532, 0.0709532}, {0, 0.929047, 0.0709532}, {0, 0.929047, 0.929047}, {0, 0.0709532, 0.929047}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {1, 0.860678, 0.735678}, {1, 0.76518, 0.610611}, {1, 0.904501, 0.624932}, {1, 0.624932, 0.904501}, {1, 0.610611, 0.76518}, {1, 0.735678, 0.860678}, {1, 0.0953701, 0.624939}, {1, 0.234631, 0.610678}, {1, 0.139261, 0.735739}, {1, 0.735739, 0.139261}, {1, 0.610678, 0.234631}, {1, 0.624939, 0.0953701}, {1, 0.904501, 0.374932}, {1, 0.76524, 0.389193}, {1, 0.860739, 0.264261}, {1, 0.264261, 0.860739}, {1, 0.389193, 0.76524}, {1, 0.374932, 0.904501}, {1, 0.374939, 0.0953701}, {1, 0.3892, 0.234631}, {1, 0.264261, 0.139261}, {1, 0.139261, 0.264261}, {1, 0.234631, 0.3892}, {1, 0.0953701, 0.374939}, {1, 0.904501, 0.499932}, {1, 0.499932, 0.904501}, {1, 0.0953701, 0.499939}, {1, 0.499939, 0.0953701}, {1, 0.610131, 0.610131}, {1, 0.499385, 0.653954}, {1, 0.653954, 0.499385}, {1, 0.610191, 0.388713}, {1, 0.388713, 0.610191}, {1, 0.499391, 0.344822}, {1, 0.344822, 0.499391}, {1, 0.388713, 0.388713}, {1, 0.929037, 0.804037}, {1, 0.789715, 0.789715}, {1, 0.804037, 0.929037}, {1, 0.210214, 0.789786}, {1, 0.0709532, 0.804047}, {1, 0.804047, 0.0709532}, {1, 0.789786, 0.210214}, {1, 0.195953, 0.929047}, {1, 0.929047, 0.195953}, {1, 0.0709532, 0.195953}, {1, 0.210214, 0.210214}, {1, 0.195953, 0.0709532}, {1, 0.0709532, 0.929047}, {1, 0.929047, 0.0709532}, {1, 0.929037, 0.929037}, {1, 0.0709532, 0.0709532}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}, {0.403787, 0.502163, 0.604301}, {0.59395, 0.335588, 0.588613}, {0.57425, 0.502163, 0.604301}, {0.533055, 0.519268, 0.479373}, {0.723218, 0.352693, 0.463685}, {0.552756, 0.352693, 0.463685}, {0.907719, 0.227933, 0.0932632}, {0.768458, 0.242194, 0.0932632}, {0.812288, 0.352933, 0.0932632}, {0.462839, 0.167794, 0.544306}, {0.592107, 0.184899, 0.419378}, {0.423487, 0.335588, 0.41815}, {0.552756, 0.352693, 0.293222}, {0.462839, 0.167794, 0.373844}, {0.610874, 0.139383, 0.904569}, {0.500135, 0.0955798, 0.904569}, {0.141927, 0.0709532, 0.0709532}, {0.0709735, 0.0709532, 0.141906}, {0.0709532, 0.141906, 0.0709532}, {0.307175, 0.417794, 0.123844}, {0.351005, 0.307055, 0.123844}, {0.095431, 0.5, 0.095431}, {0.139261, 0.389261, 0.095431}, {0.211744, 0.417794, 0.219275}, {0.633302, 0.167794, 0.544306}, {0.907719, 0.173886, 0.164216}, {0.907719, 0.242194, 0.232524}, {0.0709532, 0.210234, 0.860739}, {0.141927, 0.0709735, 0.929047}, {0.0709735, 0.139261, 0.789786}, {0.0709735, 0.0709532, 0.858094}, {0.0709532, 0.141927, 0.929047}, {0.210336, 0.0709735, 0.860739}, {0.139383, 0.139261, 0.721478}, {0.742945, 0.167794, 0.655045}, {0.786897, 0.167794, 0.544306}, {0.904691, 0.139261, 0.610739}, {0.882206, 0.307055, 0.655045}, {0.860739, 0.139261, 0.721478}, {0.442043, 0.585464, 0.809994}, {0.461744, 0.418889, 0.794306}, {0.632206, 0.418889, 0.794306}, {0.907719, 0.352872, 0.188633}, {0.836765, 0.173886, 0.0932632}, {0.549357, 0.674254, 0.636624}, {0.73952, 0.678141, 0.450474}, {0.57425, 0.672625, 0.433838}, {0.723218, 0.523156, 0.293222}, {0.698326, 0.524784, 0.496008}, {0.721478, 0.860739, 0.860739}, {0.610739, 0.904691, 0.860739}, {0.0709735, 0.139261, 0.210214}, {0.882206, 0.263164, 0.544245}, {0.882206, 0.417246, 0.543759}, {0.768458, 0.102933, 0.232524}, {0.907719, 0.102933, 0.218263}, {0.836765, 0.102933, 0.164216}, {0.73952, 0.507679, 0.620936}, {0.929047, 0.929037, 0.858083}, {0.403787, 0.672625, 0.433838}, {0.59395, 0.676512, 0.247688}, {0.552756, 0.523156, 0.293222}, {0.307175, 0.417929, 0.794306}, {0.351005, 0.307176, 0.794306}, {0.095431, 0.904569, 0.5}, {0.500135, 0.095431, 0.095431}, {0.858094, 0.929047, 0.929047}, {0.5, 0.904691, 0.904569}, {0.929047, 0.858083, 0.929037}, {0.423487, 0.50605, 0.41815}, {0.904569, 0.904501, 0.499932}, {0.139261, 0.860739, 0.278522}, {0.139261, 0.904569, 0.389261}, {0.351005, 0.838256, 0.263105}, {0.211744, 0.742825, 0.373844}, {0.211744, 0.698995, 0.263105}, {0.141906, 0.929047, 0.929047}, {0.210214, 0.860739, 0.929047}, {0.904569, 0.500068, 0.904501}, {0.745703, 0.184899, 0.419378}, {0.904691, 0.0953701, 0.499939}, {0.841012, 0.280269, 0.419318}, {0.607314, 0.59098, 0.82663}, {0.461879, 0.167794, 0.698875}, {0.572483, 0.167794, 0.655045}, {0.882206, 0.417726, 0.698808}, {0.0709532, 0.789786, 0.139261}, {0.139261, 0.721478, 0.139261}, {0.882206, 0.588195, 0.219214}, {0.841012, 0.434839, 0.264749}, {0.882206, 0.587709, 0.373296}, {0.841012, 0.434352, 0.418831}, {0.389261, 0.904569, 0.139261}, {0.5, 0.904569, 0.095431}, {0.389383, 0.095431, 0.139261}, {0.278522, 0.860739, 0.139261}, {0.287474, 0.834369, 0.559994}, {0.331304, 0.834369, 0.670734}, {0.192043, 0.695108, 0.670734}, {0.139261, 0.860739, 0.721478}, {0.095431, 0.860739, 0.610739}, {0.139261, 0.278644, 0.860739}, {0.278644, 0.139383, 0.860739}, {0.139261, 0.389383, 0.904569}, {0.192043, 0.584369, 0.559994}, {0.192043, 0.584369, 0.714563}, {0.211744, 0.417794, 0.698875}, {0.211744, 0.417794, 0.544306}, {0.0955798, 0.139261, 0.610739}, {0.351005, 0.698995, 0.123844}, {0.461744, 0.742825, 0.123844}, {0.461744, 0.838256, 0.219275}, {0.929047, 0.141906, 0.0709532}, {0.858094, 0.929047, 0.0709532}, {0.0955798, 0.095431, 0.5}, {0.307323, 0.167794, 0.544306}, {0.211744, 0.263225, 0.544306}, {0.211744, 0.307055, 0.655045}, {0.461744, 0.263225, 0.123844}, {0.351126, 0.167794, 0.263105}, {0.278644, 0.139261, 0.139261}, {0.461879, 0.167794, 0.219275}, {0.929047, 0.929047, 0.141906}, {0.860739, 0.860678, 0.721417}, {0.904569, 0.860678, 0.610678}, {0.442043, 0.834369, 0.559994}, {0.718053, 0.839885, 0.687369}, {0.857314, 0.700563, 0.687308}, {0.761883, 0.839885, 0.57663}, {0.857314, 0.744386, 0.576562}, {0.904569, 0.499939, 0.0953701}, {0.786775, 0.588256, 0.123844}, {0.745581, 0.434899, 0.169378}, {0.701751, 0.32416, 0.169378}, {0.748731, 0.287832, 0.262642}, {0.857314, 0.589817, 0.731131}, {0.857314, 0.589337, 0.576082}, {0.572483, 0.307055, 0.123844}, {0.461744, 0.417794, 0.123844}, {0.591012, 0.434899, 0.169378}, {0.929047, 0.858094, 0.0709532}, {0.882206, 0.713256, 0.123844}, {0.882206, 0.767303, 0.194797}, {0.882206, 0.698995, 0.263105}, {0.351126, 0.167794, 0.433567}, {0.351126, 0.167794, 0.655045}, {0.211744, 0.417794, 0.373844}, {0.423487, 0.50605, 0.247688}, {0.211744, 0.588256, 0.373844}, {0.929047, 0.0709532, 0.141906}, {0.287474, 0.584504, 0.809994}, {0.929047, 0.0709532, 0.858094}, {0.192043, 0.738938, 0.559994}, {0.461744, 0.838256, 0.373844}, {0.632206, 0.838256, 0.373844}, {0.139261, 0.210214, 0.0709532}, {0.210234, 0.139261, 0.0709532}, {0.789786, 0.0709735, 0.860739}, {0.721478, 0.139383, 0.860739}, {0.610739, 0.904569, 0.139261}, {0.721478, 0.860739, 0.139261}, {0.0709532, 0.929047, 0.141906}, {0.095431, 0.500135, 0.904569}, {0.442043, 0.834369, 0.714563}, {0.461744, 0.263374, 0.794306}, {0.860739, 0.278644, 0.860739}, {0.929047, 0.210234, 0.860739}, {0.211744, 0.307055, 0.263105}, {0.139261, 0.610739, 0.095431}, {0.211744, 0.588256, 0.219275}, {0.632206, 0.588256, 0.123844}, {0.461744, 0.588256, 0.123844}, {0.139383, 0.139261, 0.278522}, {0.139261, 0.278522, 0.139261}, {0.607314, 0.839885, 0.57663}, {0.904569, 0.610813, 0.860678}, {0.0709532, 0.858094, 0.929047}, {0.331304, 0.695108, 0.809994}, {0.139261, 0.721478, 0.860739}, {0.278522, 0.860739, 0.860739}, {0.0709532, 0.929047, 0.858094}, {0.718053, 0.700624, 0.82663}, {0.860739, 0.721417, 0.860678}, {0.761883, 0.59002, 0.82663}, {0.742945, 0.307176, 0.794306}, {0.786775, 0.417929, 0.794306}, {0.860739, 0.929037, 0.789776}, {0.389261, 0.904691, 0.860739}, {0.307175, 0.588256, 0.123844}, {0.789786, 0.860739, 0.0709532}, {0.0709532, 0.858094, 0.0709532}, {0.742945, 0.838256, 0.263105}, {0.632206, 0.742825, 0.123844}, {0.742945, 0.698995, 0.123844}, {0.841012, 0.32416, 0.308639}, {0.610874, 0.139261, 0.095431}, {0.782719, 0.102933, 0.0932632}, {0.860739, 0.789776, 0.929037}, {0.929047, 0.141927, 0.929047}, {0.811253, 0.838256, 0.194797}, {0.858094, 0.0709735, 0.929047}, {0.607314, 0.839885, 0.731199}, {0.607314, 0.744576, 0.82663}, {0.442043, 0.73906, 0.809994}, {0.389383, 0.0955798, 0.860739}, {0.141906, 0.929047, 0.0709532}, {0.0709532, 0.860739, 0.210214}, {0.929047, 0.860739, 0.210214}, {0.860739, 0.860739, 0.278522}, {0.139383, 0.095431, 0.389261}, {0.211744, 0.263225, 0.373844}, {0.139261, 0.789786, 0.929047}, {0.789786, 0.929047, 0.860739}, {0.904691, 0.139261, 0.389261}, {0.701751, 0.184899, 0.308639}, {0.929047, 0.139261, 0.789786}, {0.786775, 0.838256, 0.373844}, {0.875, 0.0709532, 0.0709532}, {0.210214, 0.929047, 0.139261}, {0.572483, 0.838256, 0.263105}, {0.591147, 0.184899, 0.264809}, {0.904569, 0.389396, 0.860739}, {0.572483, 0.307176, 0.794306}, {0.331304, 0.834369, 0.449255}, {0.139261, 0.929047, 0.789786}, {0.860739, 0.789786, 0.0709532}, {0.904569, 0.860739, 0.389261}, {0.139261, 0.610739, 0.904569}, {0.812409, 0.102933, 0.343263}, {0.657854, 0.102933, 0.188694}, {0.857314, 0.700624, 0.465891}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 48
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{6, 8, 11}, {8, 9, 12}, {9, 10, 13}, {10, 7, 14}, {7, 15, 18}, {15, 16, 19}, {16, 17, 20}, {17, 3, 21}, {3, 22, 25}, {22, 23, 26}, {23, 24, 27}, {24, 2, 28}, {2, 29, 32}, {29, 30, 33}, {30, 31, 34}, {31, 6, 35}, {0, 36, 39}, {36, 37, 40}, {37, 38, 41}, {38, 4, 42}, {4, 43, 46}, {43, 44, 47}, {44, 45, 48}, {45, 5, 49}, {5, 50, 53}, {50, 51, 54}, {51, 52, 55}, {52, 1, 56}, {1, 57, 60}, {57, 58, 61}, {58, 59, 62}, {59, 0, 63}, {2, 64, 67}, {64, 65, 68}, {65, 66, 69}, {66, 0, 70}, {6, 71, 74}, {71, 72, 75}, {72, 73, 76}, {73, 4, 77}, {7, 78, 81}, {78, 79, 82}, {79, 80, 83}, {80, 5, 84}, {3, 85, 88}, {85, 86, 89}, {86, 87, 90}, {87, 1, 91}}
]
+ ]
(not_ghost:_triangle_6) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 240
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{93, 97, 71, 105, 106, 107}, {93, 8, 98, 108, 109, 110}, {94, 78, 99, 111, 112, 113}, {43, 95, 100, 114, 115, 116}, {94, 98, 10, 117, 118, 119}, {73, 97, 95, 120, 121, 122}, {45, 100, 96, 123, 124, 125}, {80, 96, 99, 126, 127, 128}, {71, 97, 72, 106, 129, 75}, {78, 79, 99, 82, 130, 112}, {8, 9, 98, 12, 131, 109}, {43, 100, 44, 116, 132, 47}, {72, 97, 73, 129, 120, 76}, {9, 10, 98, 13, 118, 131}, {79, 80, 99, 83, 128, 130}, {44, 100, 45, 132, 123, 48}, {93, 92, 97, 133, 134, 105}, {93, 98, 92, 110, 135, 133}, {94, 92, 98, 136, 135, 117}, {92, 95, 97, 137, 121, 134}, {94, 99, 92, 113, 138, 136}, {92, 100, 95, 139, 115, 137}, {92, 99, 96, 138, 127, 140}, {92, 96, 100, 140, 124, 139}, {93, 71, 101, 107, 141, 142}, {93, 101, 8, 142, 143, 108}, {94, 102, 78, 144, 145, 111}, {43, 103, 95, 146, 147, 114}, {94, 10, 102, 119, 148, 144}, {73, 95, 103, 122, 147, 149}, {45, 96, 104, 125, 150, 151}, {80, 104, 96, 152, 150, 126}, {4, 73, 103, 77, 149, 153}, {6, 101, 71, 154, 141, 74}, {7, 102, 10, 155, 148, 14}, {7, 78, 102, 81, 145, 155}, {6, 8, 101, 11, 143, 154}, {5, 104, 80, 156, 152, 84}, {4, 103, 43, 153, 146, 46}, {5, 45, 104, 49, 151, 156}, {15, 162, 158, 170, 171, 172}, {22, 163, 159, 173, 174, 175}, {8, 164, 160, 176, 177, 178}, {29, 165, 161, 179, 180, 181}, {10, 158, 164, 182, 183, 184}, {31, 160, 165, 185, 186, 187}, {17, 159, 162, 188, 189, 190}, {24, 161, 163, 191, 192, 193}, {22, 23, 163, 26, 194, 173}, {15, 16, 162, 19, 195, 170}, {29, 30, 165, 33, 196, 179}, {8, 9, 164, 12, 197, 176}, {16, 17, 162, 20, 190, 195}, {23, 24, 163, 27, 193, 194}, {9, 10, 164, 13, 184, 197}, {30, 31, 165, 34, 187, 196}, {158, 162, 157, 171, 198, 199}, {159, 157, 162, 200, 198, 189}, {159, 163, 157, 174, 201, 200}, {161, 157, 163, 202, 201, 192}, {158, 157, 164, 199, 203, 183}, {160, 164, 157, 177, 203, 204}, {160, 157, 165, 204, 205, 186}, {161, 165, 157, 180, 205, 202}, {15, 158, 167, 172, 206, 207}, {22, 159, 166, 175, 208, 209}, {8, 160, 169, 178, 210, 211}, {29, 161, 168, 181, 212, 213}, {10, 167, 158, 214, 206, 182}, {31, 169, 160, 215, 210, 185}, {17, 166, 159, 216, 208, 188}, {24, 168, 161, 217, 212, 191}, {2, 168, 24, 218, 217, 28}, {3, 166, 17, 219, 216, 21}, {6, 169, 31, 220, 215, 35}, {7, 167, 10, 221, 214, 14}, {7, 15, 167, 18, 207, 221}, {3, 22, 166, 25, 209, 219}, {6, 8, 169, 11, 211, 220}, {2, 29, 168, 32, 213, 218}, {50, 227, 223, 235, 236, 237}, {57, 228, 224, 238, 239, 240}, {43, 229, 225, 241, 242, 243}, {36, 230, 226, 244, 245, 246}, {45, 223, 229, 247, 248, 249}, {38, 225, 230, 250, 251, 252}, {52, 224, 227, 253, 254, 255}, {59, 226, 228, 256, 257, 258}, {57, 58, 228, 61, 259, 238}, {50, 51, 227, 54, 260, 235}, {36, 37, 230, 40, 261, 244}, {43, 44, 229, 47, 262, 241}, {51, 52, 227, 55, 255, 260}, {58, 59, 228, 62, 258, 259}, {44, 45, 229, 48, 249, 262}, {37, 38, 230, 41, 252, 261}, {223, 227, 222, 236, 263, 264}, {224, 222, 227, 265, 263, 254}, {224, 228, 222, 239, 266, 265}, {222, 228, 226, 266, 257, 267}, {223, 222, 229, 264, 268, 248}, {222, 225, 229, 269, 242, 268}, {222, 230, 225, 270, 251, 269}, {222, 226, 230, 267, 245, 270}, {50, 223, 232, 237, 271, 272}, {57, 224, 231, 240, 273, 274}, {43, 225, 234, 243, 275, 276}, {36, 226, 233, 246, 277, 278}, {45, 232, 223, 279, 271, 247}, {38, 234, 225, 280, 275, 250}, {52, 231, 224, 281, 273, 253}, {59, 233, 226, 282, 277, 256}, {0, 233, 59, 283, 282, 63}, {1, 231, 52, 284, 281, 56}, {4, 234, 38, 285, 280, 42}, {5, 232, 45, 286, 279, 49}, {5, 50, 232, 53, 272, 286}, {1, 57, 231, 60, 274, 284}, {4, 43, 234, 46, 276, 285}, {0, 36, 233, 39, 278, 283}, {85, 288, 292, 300, 301, 302}, {22, 293, 288, 303, 304, 305}, {57, 290, 294, 306, 307, 308}, {64, 295, 289, 309, 310, 311}, {24, 289, 293, 312, 313, 314}, {87, 292, 290, 315, 316, 317}, {66, 291, 295, 318, 319, 320}, {59, 294, 291, 321, 322, 323}, {85, 292, 86, 302, 324, 89}, {22, 23, 293, 26, 325, 303}, {57, 294, 58, 308, 326, 61}, {64, 65, 295, 68, 327, 309}, {86, 292, 87, 324, 315, 90}, {23, 24, 293, 27, 314, 325}, {65, 66, 295, 69, 320, 327}, {58, 294, 59, 326, 321, 62}, {288, 293, 287, 304, 328, 329}, {288, 287, 292, 329, 330, 301}, {289, 287, 293, 331, 328, 313}, {290, 292, 287, 316, 330, 332}, {289, 295, 287, 310, 333, 331}, {290, 287, 294, 332, 334, 307}, {291, 294, 287, 322, 334, 335}, {291, 287, 295, 335, 333, 319}, {22, 288, 296, 305, 336, 337}, {85, 296, 288, 338, 336, 300}, {57, 298, 290, 339, 340, 306}, {64, 289, 297, 311, 341, 342}, {87, 290, 298, 317, 340, 343}, {24, 297, 289, 344, 341, 312}, {59, 291, 299, 323, 345, 346}, {66, 299, 291, 347, 345, 318}, {1, 87, 298, 91, 343, 348}, {2, 297, 24, 349, 344, 28}, {3, 296, 85, 350, 338, 88}, {3, 22, 296, 25, 337, 350}, {1, 298, 57, 348, 339, 60}, {2, 64, 297, 67, 342, 349}, {0, 59, 299, 63, 346, 351}, {0, 299, 66, 351, 347, 70}, {64, 353, 357, 365, 366, 367}, {29, 358, 353, 368, 369, 370}, {71, 359, 354, 371, 372, 373}, {36, 355, 360, 374, 375, 376}, {31, 354, 358, 377, 378, 379}, {66, 357, 355, 380, 381, 382}, {38, 360, 356, 383, 384, 385}, {73, 356, 359, 386, 387, 388}, {64, 357, 65, 367, 389, 68}, {71, 72, 359, 75, 390, 371}, {29, 30, 358, 33, 391, 368}, {36, 360, 37, 376, 392, 40}, {65, 357, 66, 389, 380, 69}, {30, 31, 358, 34, 379, 391}, {72, 73, 359, 76, 388, 390}, {37, 360, 38, 392, 383, 41}, {353, 352, 357, 393, 394, 366}, {353, 358, 352, 369, 395, 393}, {354, 352, 358, 396, 395, 378}, {355, 357, 352, 381, 394, 397}, {354, 359, 352, 372, 398, 396}, {355, 352, 360, 397, 399, 375}, {356, 352, 359, 400, 398, 387}, {356, 360, 352, 384, 399, 400}, {64, 361, 353, 401, 402, 365}, {29, 353, 361, 370, 402, 403}, {71, 354, 362, 373, 404, 405}, {36, 363, 355, 406, 407, 374}, {31, 362, 354, 408, 404, 377}, {66, 355, 363, 382, 407, 409}, {38, 356, 364, 385, 410, 411}, {73, 364, 356, 412, 410, 386}, {0, 66, 363, 70, 409, 413}, {2, 361, 64, 414, 401, 67}, {6, 362, 31, 415, 408, 35}, {6, 71, 362, 74, 405, 415}, {2, 29, 361, 32, 403, 414}, {4, 364, 73, 416, 412, 77}, {0, 363, 36, 413, 406, 39}, {4, 38, 364, 42, 411, 416}, {15, 418, 423, 430, 431, 432}, {78, 422, 418, 433, 434, 435}, {50, 424, 420, 436, 437, 438}, {85, 419, 425, 439, 440, 441}, {17, 423, 419, 442, 443, 444}, {80, 420, 422, 445, 446, 447}, {87, 425, 421, 448, 449, 450}, {52, 421, 424, 451, 452, 453}, {15, 423, 16, 432, 454, 19}, {78, 79, 422, 82, 455, 433}, {50, 51, 424, 54, 456, 436}, {85, 425, 86, 441, 457, 89}, {79, 80, 422, 83, 447, 455}, {16, 423, 17, 454, 442, 20}, {86, 425, 87, 457, 448, 90}, {51, 52, 424, 55, 453, 456}, {417, 418, 422, 458, 434, 459}, {417, 423, 418, 460, 431, 458}, {419, 423, 417, 443, 460, 461}, {420, 417, 422, 462, 459, 446}, {419, 417, 425, 461, 463, 440}, {420, 424, 417, 437, 464, 462}, {421, 417, 424, 465, 464, 452}, {421, 425, 417, 449, 463, 465}, {15, 426, 418, 466, 467, 430}, {78, 418, 426, 435, 467, 468}, {50, 420, 428, 438, 469, 470}, {85, 427, 419, 471, 472, 439}, {80, 428, 420, 473, 469, 445}, {17, 419, 427, 444, 472, 474}, {52, 429, 421, 475, 476, 451}, {87, 421, 429, 450, 476, 477}, {5, 428, 80, 478, 473, 84}, {3, 17, 427, 21, 474, 479}, {7, 78, 426, 81, 468, 480}, {7, 426, 15, 480, 466, 18}, {5, 50, 428, 53, 470, 478}, {3, 427, 85, 479, 471, 88}, {1, 429, 52, 481, 475, 56}, {1, 87, 429, 91, 477, 481}}
]
+ ]
(not_ghost:_tetrahedron_10) [
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_10
+ size : 341
+ nb_component : 10
+ allocated size : 2000
+ memory size : 78kB
+ values : {{484, 483, 485, 489, 491, 493, 492, 496, 494, 495}, {87, 290, 490, 292, 317, 498, 497, 315, 316, 499}, {222, 484, 489, 486, 500, 496, 501, 504, 502, 503}, {96, 229, 45, 100, 505, 249, 125, 124, 506, 123}, {59, 0, 233, 299, 63, 283, 282, 346, 351, 507}, {0, 363, 233, 299, 413, 508, 283, 351, 509, 507}, {486, 295, 291, 357, 510, 319, 511, 514, 512, 513}, {484, 222, 489, 485, 500, 501, 496, 492, 515, 495}, {87, 429, 421, 490, 477, 476, 450, 497, 516, 517}, {103, 356, 234, 364, 518, 520, 519, 522, 410, 521}, {356, 103, 234, 225, 518, 519, 520, 524, 523, 275}, {43, 103, 225, 234, 146, 523, 243, 276, 519, 275}, {223, 227, 485, 420, 236, 526, 525, 529, 527, 528}, {483, 92, 484, 485, 530, 531, 491, 493, 532, 492}, {87, 421, 425, 490, 450, 449, 448, 497, 517, 533}, {298, 87, 290, 490, 343, 317, 340, 534, 497, 498}, {482, 483, 488, 489, 535, 537, 536, 539, 494, 538}, {94, 10, 158, 98, 119, 182, 540, 117, 118, 541}, {355, 363, 233, 36, 407, 508, 542, 374, 406, 278}, {485, 420, 424, 417, 528, 437, 543, 544, 462, 464}, {231, 224, 52, 490, 273, 253, 281, 547, 545, 546}, {483, 482, 485, 489, 535, 548, 493, 494, 539, 495}, {167, 15, 7, 426, 207, 18, 221, 549, 466, 480}, {483, 487, 488, 489, 550, 551, 537, 494, 552, 538}, {484, 92, 97, 95, 531, 134, 553, 554, 137, 121}, {29, 165, 30, 358, 179, 196, 33, 368, 555, 391}, {228, 294, 58, 59, 556, 326, 259, 258, 321, 62}, {102, 10, 7, 167, 148, 14, 155, 557, 214, 221}, {9, 10, 98, 164, 13, 118, 131, 197, 184, 558}, {78, 102, 7, 426, 145, 155, 81, 468, 559, 480}, {483, 484, 487, 489, 491, 560, 550, 494, 496, 552}, {16, 423, 162, 17, 454, 561, 195, 20, 442, 190}, {353, 161, 358, 487, 562, 563, 369, 566, 564, 565}, {93, 101, 8, 169, 142, 143, 108, 568, 567, 211}, {78, 422, 79, 99, 433, 455, 82, 112, 569, 130}, {485, 227, 489, 424, 526, 570, 495, 543, 571, 572}, {482, 92, 483, 485, 573, 530, 535, 548, 532, 493}, {223, 222, 229, 484, 264, 268, 248, 575, 500, 574}, {422, 420, 485, 417, 446, 528, 576, 459, 462, 544}, {64, 297, 353, 289, 342, 577, 365, 311, 341, 578}, {101, 6, 8, 169, 154, 11, 143, 567, 220, 211}, {425, 488, 489, 417, 579, 538, 580, 463, 581, 582}, {163, 161, 24, 293, 192, 191, 193, 584, 583, 314}, {228, 294, 59, 226, 556, 321, 258, 257, 585, 256}, {161, 289, 24, 293, 586, 312, 191, 583, 313, 314}, {165, 483, 160, 354, 587, 588, 186, 591, 589, 590}, {103, 356, 95, 225, 518, 592, 147, 523, 524, 593}, {356, 95, 359, 73, 592, 594, 387, 386, 122, 388}, {352, 483, 359, 484, 595, 596, 398, 598, 491, 597}, {103, 43, 4, 234, 146, 46, 153, 519, 276, 285}, {230, 356, 38, 225, 599, 385, 252, 251, 524, 250}, {161, 289, 293, 487, 586, 313, 583, 564, 600, 601}, {161, 487, 293, 163, 564, 601, 583, 192, 602, 584}, {429, 87, 298, 490, 477, 343, 603, 516, 497, 534}, {364, 38, 234, 4, 411, 280, 521, 416, 42, 285}, {22, 296, 3, 166, 337, 350, 25, 209, 604, 219}, {230, 37, 360, 36, 261, 392, 605, 244, 40, 376}, {356, 230, 360, 484, 599, 605, 384, 608, 606, 607}, {22, 23, 293, 163, 26, 325, 303, 173, 194, 584}, {294, 486, 291, 226, 609, 511, 322, 585, 610, 611}, {294, 228, 486, 226, 556, 612, 609, 585, 257, 610}, {3, 17, 166, 427, 21, 216, 219, 479, 474, 613}, {364, 103, 4, 234, 522, 153, 416, 521, 519, 285}, {158, 15, 418, 162, 172, 430, 614, 171, 170, 615}, {15, 423, 418, 162, 432, 431, 430, 170, 561, 615}, {157, 483, 160, 165, 616, 588, 204, 205, 587, 186}, {482, 158, 418, 162, 617, 614, 618, 619, 171, 615}, {423, 482, 418, 162, 620, 618, 431, 561, 619, 615}, {425, 488, 292, 489, 579, 622, 621, 580, 538, 623}, {290, 489, 490, 292, 624, 625, 498, 316, 623, 499}, {222, 223, 485, 484, 264, 525, 515, 500, 575, 492}, {363, 0, 66, 299, 413, 70, 409, 509, 351, 347}, {482, 422, 485, 417, 626, 576, 548, 627, 459, 544}, {486, 290, 287, 489, 628, 332, 629, 503, 624, 630}, {296, 3, 166, 427, 350, 219, 604, 631, 479, 613}, {489, 290, 287, 292, 624, 332, 630, 623, 316, 330}, {488, 85, 427, 419, 632, 471, 633, 634, 439, 472}, {425, 488, 419, 85, 579, 634, 440, 441, 632, 439}, {15, 16, 423, 162, 19, 454, 432, 170, 195, 561}, {65, 64, 357, 295, 68, 367, 389, 327, 309, 512}, {222, 484, 486, 226, 500, 502, 504, 267, 635, 610}, {356, 484, 95, 225, 608, 554, 592, 524, 636, 593}, {352, 484, 486, 487, 598, 502, 637, 639, 560, 638}, {230, 222, 484, 225, 270, 500, 606, 251, 269, 636}, {294, 228, 58, 57, 556, 259, 326, 308, 238, 61}, {352, 483, 484, 487, 595, 491, 598, 639, 550, 560}, {23, 163, 24, 293, 194, 193, 27, 325, 584, 314}, {429, 231, 1, 52, 640, 284, 481, 475, 281, 56}, {228, 222, 486, 226, 266, 504, 612, 257, 267, 610}, {482, 422, 417, 418, 626, 459, 627, 618, 434, 458}, {489, 425, 490, 292, 580, 533, 625, 623, 621, 499}, {483, 92, 97, 484, 530, 134, 641, 491, 531, 553}, {50, 232, 5, 428, 272, 286, 53, 470, 642, 478}, {483, 165, 358, 354, 587, 555, 643, 589, 591, 378}, {157, 483, 487, 488, 616, 550, 644, 645, 537, 551}, {425, 488, 417, 419, 579, 581, 463, 440, 634, 461}, {222, 230, 484, 226, 270, 606, 500, 267, 245, 635}, {299, 363, 233, 291, 509, 508, 507, 345, 646, 647}, {103, 356, 73, 95, 518, 386, 149, 147, 592, 122}, {229, 44, 45, 100, 262, 48, 249, 506, 132, 123}, {356, 230, 38, 360, 599, 252, 385, 384, 605, 383}, {104, 223, 45, 96, 648, 247, 151, 150, 649, 125}, {22, 159, 293, 288, 175, 650, 303, 305, 651, 304}, {352, 356, 360, 484, 400, 384, 399, 598, 608, 607}, {2, 361, 168, 29, 414, 652, 218, 32, 403, 213}, {484, 483, 359, 97, 491, 596, 597, 553, 641, 653}, {483, 157, 160, 164, 616, 204, 588, 654, 203, 177}, {92, 484, 100, 95, 531, 655, 139, 137, 554, 115}, {223, 420, 96, 104, 529, 656, 649, 648, 657, 150}, {85, 425, 292, 86, 441, 621, 302, 89, 457, 324}, {355, 352, 486, 357, 397, 637, 658, 381, 394, 514}, {353, 289, 487, 357, 578, 600, 566, 366, 659, 660}, {66, 295, 357, 291, 320, 512, 380, 318, 319, 513}, {488, 487, 287, 489, 551, 662, 661, 538, 552, 630}, {486, 294, 287, 290, 609, 334, 629, 628, 307, 332}, {227, 223, 485, 222, 236, 525, 526, 263, 264, 515}, {355, 486, 226, 291, 658, 610, 663, 664, 511, 611}, {43, 103, 95, 225, 146, 147, 114, 243, 523, 593}, {356, 230, 484, 225, 599, 606, 608, 524, 251, 636}, {64, 295, 289, 357, 309, 310, 311, 367, 512, 659}, {157, 482, 162, 158, 665, 619, 198, 199, 617, 171}, {223, 229, 45, 96, 248, 249, 247, 649, 505, 125}, {222, 229, 484, 225, 268, 574, 500, 269, 242, 636}, {422, 78, 418, 99, 433, 435, 434, 569, 112, 666}, {422, 80, 79, 99, 447, 83, 455, 569, 128, 130}, {159, 22, 293, 163, 175, 303, 650, 174, 173, 584}, {101, 362, 71, 6, 667, 405, 141, 154, 415, 74}, {93, 483, 354, 160, 668, 589, 669, 670, 588, 590}, {355, 486, 291, 357, 658, 511, 664, 381, 514, 513}, {362, 101, 169, 6, 667, 567, 671, 415, 154, 220}, {94, 482, 418, 99, 672, 618, 673, 113, 674, 666}, {488, 482, 489, 417, 536, 539, 538, 581, 627, 582}, {484, 356, 95, 359, 608, 592, 554, 597, 387, 594}, {363, 355, 233, 291, 407, 542, 508, 646, 664, 647}, {485, 92, 96, 99, 532, 140, 675, 676, 138, 127}, {78, 94, 418, 99, 111, 673, 435, 112, 113, 666}, {92, 483, 97, 93, 530, 641, 134, 133, 668, 105}, {484, 95, 97, 359, 554, 121, 553, 597, 594, 653}, {72, 71, 97, 359, 75, 106, 129, 390, 371, 653}, {94, 482, 99, 92, 672, 674, 113, 136, 573, 138}, {102, 167, 7, 426, 557, 221, 155, 559, 549, 480}, {10, 164, 158, 98, 184, 183, 182, 118, 558, 541}, {482, 422, 99, 485, 626, 569, 674, 548, 576, 676}, {15, 158, 426, 167, 172, 677, 466, 207, 206, 549}, {92, 482, 99, 485, 573, 674, 138, 532, 548, 676}, {158, 15, 426, 418, 172, 466, 677, 614, 430, 467}, {38, 356, 234, 225, 385, 520, 280, 250, 524, 275}, {94, 482, 158, 418, 672, 617, 540, 673, 618, 614}, {364, 356, 234, 38, 410, 520, 521, 411, 385, 280}, {93, 160, 8, 98, 670, 178, 108, 110, 678, 109}, {355, 233, 226, 36, 542, 277, 663, 374, 278, 246}, {160, 93, 8, 169, 670, 108, 178, 210, 568, 211}, {227, 223, 50, 420, 236, 237, 235, 527, 529, 438}, {363, 0, 233, 36, 413, 283, 508, 406, 39, 278}, {486, 295, 287, 291, 510, 333, 629, 511, 319, 335}, {59, 294, 291, 226, 321, 322, 323, 256, 585, 611}, {66, 363, 299, 291, 409, 509, 347, 318, 646, 345}, {486, 352, 487, 357, 637, 639, 638, 514, 394, 660}, {295, 486, 487, 357, 510, 638, 679, 512, 514, 660}, {296, 22, 288, 166, 337, 305, 336, 604, 209, 680}, {361, 64, 2, 297, 401, 67, 414, 681, 342, 349}, {95, 97, 359, 73, 121, 653, 594, 122, 120, 388}, {423, 482, 417, 418, 620, 627, 460, 431, 618, 458}, {65, 295, 357, 66, 327, 512, 389, 69, 320, 380}, {97, 72, 359, 73, 129, 390, 653, 120, 76, 388}, {420, 223, 96, 485, 529, 649, 656, 528, 525, 675}, {159, 488, 293, 288, 682, 683, 650, 651, 684, 304}, {31, 165, 160, 354, 187, 186, 185, 377, 591, 590}, {484, 486, 487, 489, 502, 638, 560, 496, 503, 552}, {486, 295, 487, 287, 510, 679, 638, 629, 333, 662}, {59, 233, 226, 291, 282, 277, 256, 323, 647, 611}, {233, 355, 226, 291, 542, 663, 277, 647, 664, 611}, {425, 421, 489, 490, 449, 685, 580, 533, 517, 625}, {288, 488, 292, 85, 684, 622, 301, 300, 632, 302}, {421, 425, 489, 417, 449, 580, 685, 465, 463, 582}, {294, 228, 57, 290, 556, 238, 308, 307, 686, 306}, {165, 31, 358, 354, 187, 379, 555, 591, 377, 378}, {103, 356, 364, 73, 518, 410, 522, 149, 386, 412}, {352, 483, 358, 354, 595, 643, 395, 396, 589, 378}, {22, 159, 288, 166, 175, 651, 305, 209, 208, 680}, {356, 352, 359, 484, 400, 398, 387, 608, 598, 597}, {64, 361, 353, 297, 401, 402, 365, 342, 681, 577}, {355, 66, 357, 291, 382, 380, 381, 664, 318, 513}, {487, 486, 287, 489, 638, 629, 662, 552, 503, 630}, {298, 57, 490, 290, 339, 687, 534, 340, 306, 498}, {31, 362, 169, 6, 408, 671, 215, 35, 415, 220}, {488, 425, 292, 85, 579, 621, 622, 632, 441, 302}, {483, 352, 359, 354, 595, 398, 596, 589, 396, 372}, {94, 78, 418, 426, 111, 435, 673, 688, 468, 467}, {229, 43, 44, 100, 241, 47, 262, 506, 116, 132}, {31, 165, 358, 30, 187, 555, 379, 34, 196, 391}, {429, 231, 52, 490, 640, 281, 475, 516, 547, 546}, {94, 102, 78, 426, 144, 145, 111, 688, 559, 468}, {421, 429, 52, 490, 476, 475, 451, 517, 516, 546}, {364, 103, 73, 4, 522, 149, 412, 416, 153, 77}, {420, 227, 424, 50, 527, 571, 437, 438, 235, 436}, {104, 80, 5, 428, 152, 84, 156, 689, 473, 478}, {227, 51, 52, 424, 260, 55, 255, 571, 456, 453}, {487, 289, 293, 287, 600, 313, 601, 662, 331, 328}, {166, 159, 288, 488, 208, 651, 680, 690, 682, 684}, {289, 161, 353, 487, 586, 562, 578, 600, 564, 566}, {482, 485, 489, 417, 548, 495, 539, 627, 544, 582}, {50, 227, 424, 51, 235, 571, 436, 54, 260, 456}, {488, 489, 287, 292, 538, 630, 661, 622, 623, 330}, {482, 483, 157, 488, 535, 616, 665, 536, 537, 645}, {80, 420, 104, 96, 445, 657, 152, 126, 656, 150}, {232, 104, 45, 5, 691, 151, 279, 286, 156, 49}, {288, 488, 287, 292, 684, 661, 329, 301, 622, 330}, {295, 289, 487, 287, 310, 600, 679, 333, 331, 662}, {157, 161, 163, 487, 202, 192, 201, 644, 564, 602}, {483, 482, 164, 98, 535, 692, 654, 694, 693, 558}, {3, 296, 85, 427, 350, 338, 88, 479, 631, 471}, {92, 483, 93, 98, 530, 668, 133, 135, 694, 110}, {95, 484, 100, 225, 554, 655, 115, 593, 636, 695}, {231, 224, 490, 57, 273, 545, 547, 274, 240, 687}, {64, 289, 353, 357, 311, 578, 365, 367, 659, 366}, {2, 297, 24, 168, 349, 344, 28, 218, 696, 217}, {361, 297, 168, 353, 681, 696, 652, 402, 577, 697}, {353, 161, 168, 29, 562, 212, 697, 370, 181, 213}, {289, 295, 487, 357, 310, 679, 600, 659, 512, 660}, {352, 353, 487, 357, 393, 566, 639, 394, 366, 660}, {361, 353, 168, 29, 402, 697, 652, 403, 370, 213}, {484, 229, 100, 225, 574, 506, 655, 636, 242, 695}, {104, 223, 232, 45, 648, 271, 691, 151, 247, 279}, {160, 164, 8, 98, 177, 176, 178, 678, 558, 109}, {164, 9, 8, 98, 197, 12, 176, 558, 131, 109}, {165, 161, 358, 29, 180, 563, 555, 179, 181, 368}, {297, 361, 168, 2, 681, 652, 696, 349, 414, 218}, {161, 353, 358, 29, 562, 369, 563, 181, 370, 368}, {230, 37, 38, 360, 261, 41, 252, 605, 392, 383}, {43, 95, 100, 225, 114, 115, 116, 243, 593, 695}, {420, 80, 104, 428, 445, 152, 657, 469, 473, 689}, {232, 104, 5, 428, 691, 156, 286, 642, 689, 478}, {59, 299, 233, 291, 346, 507, 282, 323, 345, 647}, {355, 363, 66, 291, 407, 409, 382, 664, 646, 318}, {158, 94, 418, 426, 540, 673, 614, 677, 688, 467}, {87, 429, 298, 1, 477, 603, 343, 91, 481, 348}, {420, 227, 485, 424, 527, 526, 528, 437, 571, 543}, {482, 422, 418, 99, 626, 434, 618, 674, 569, 666}, {229, 43, 100, 225, 241, 116, 506, 242, 243, 695}, {294, 486, 287, 291, 609, 629, 334, 322, 511, 335}, {17, 166, 419, 159, 216, 698, 444, 188, 208, 699}, {419, 166, 17, 427, 698, 216, 444, 472, 613, 474}, {166, 488, 419, 159, 690, 634, 698, 208, 682, 699}, {419, 488, 166, 427, 634, 690, 698, 472, 633, 613}, {160, 98, 483, 164, 678, 694, 588, 177, 558, 654}, {483, 98, 160, 93, 694, 678, 588, 668, 110, 670}, {226, 360, 486, 355, 700, 701, 610, 663, 375, 658}, {360, 36, 226, 230, 376, 246, 700, 605, 244, 245}, {226, 36, 360, 355, 246, 376, 700, 663, 374, 375}, {93, 169, 362, 101, 568, 671, 702, 142, 567, 667}, {93, 362, 71, 101, 702, 405, 107, 142, 667, 141}, {71, 362, 93, 354, 405, 702, 107, 373, 404, 669}, {489, 424, 417, 485, 572, 464, 582, 495, 543, 544}, {417, 424, 489, 421, 464, 572, 582, 465, 452, 685}, {102, 10, 158, 94, 148, 182, 703, 144, 119, 540}, {158, 10, 102, 167, 182, 148, 703, 206, 214, 557}, {102, 158, 426, 94, 703, 677, 559, 144, 540, 688}, {426, 158, 102, 167, 677, 703, 559, 549, 206, 557}, {421, 489, 227, 424, 685, 570, 704, 452, 572, 571}, {52, 421, 227, 424, 451, 704, 255, 453, 452, 571}, {489, 227, 222, 224, 570, 263, 501, 705, 254, 265}, {489, 222, 227, 485, 501, 263, 570, 495, 515, 526}, {87, 425, 292, 490, 448, 621, 315, 497, 533, 499}, {292, 425, 87, 86, 621, 448, 315, 324, 457, 90}, {104, 420, 232, 223, 657, 706, 691, 648, 529, 271}, {104, 232, 420, 428, 691, 706, 657, 689, 642, 469}, {232, 420, 50, 223, 706, 438, 272, 271, 529, 237}, {232, 50, 420, 428, 272, 438, 706, 642, 470, 469}, {226, 484, 360, 230, 635, 607, 700, 245, 606, 605}, {226, 360, 484, 486, 700, 607, 635, 610, 701, 502}, {486, 360, 352, 355, 701, 399, 637, 658, 375, 397}, {352, 360, 486, 484, 399, 701, 637, 598, 607, 502}, {162, 488, 157, 159, 707, 645, 198, 189, 682, 200}, {157, 488, 162, 482, 645, 707, 198, 665, 536, 619}, {490, 57, 429, 231, 687, 708, 516, 547, 274, 640}, {429, 57, 490, 298, 708, 687, 516, 603, 339, 534}, {57, 1, 429, 231, 60, 481, 708, 274, 284, 640}, {429, 1, 57, 298, 481, 60, 708, 603, 348, 339}, {158, 98, 482, 94, 541, 693, 617, 540, 117, 672}, {482, 98, 158, 164, 693, 541, 617, 692, 558, 183}, {353, 297, 161, 289, 577, 709, 562, 578, 341, 586}, {353, 161, 297, 168, 562, 709, 577, 697, 212, 696}, {161, 297, 24, 289, 709, 344, 191, 586, 341, 312}, {161, 24, 297, 168, 191, 344, 709, 212, 217, 696}, {159, 293, 487, 163, 650, 601, 710, 174, 584, 602}, {487, 293, 159, 488, 601, 650, 710, 551, 683, 682}, {159, 487, 157, 163, 710, 644, 200, 174, 602, 201}, {157, 487, 159, 488, 644, 710, 200, 645, 551, 682}, {290, 228, 486, 294, 686, 612, 628, 307, 556, 609}, {290, 486, 228, 489, 628, 612, 686, 624, 503, 711}, {485, 99, 420, 422, 676, 712, 528, 576, 569, 446}, {420, 99, 485, 96, 712, 676, 528, 656, 127, 675}, {99, 80, 420, 422, 128, 445, 712, 569, 447, 446}, {420, 80, 99, 96, 445, 128, 712, 656, 126, 127}, {96, 484, 229, 100, 713, 574, 505, 124, 655, 506}, {92, 96, 484, 485, 140, 713, 531, 532, 675, 492}, {92, 484, 96, 100, 531, 713, 140, 139, 655, 124}, {161, 358, 483, 165, 563, 643, 714, 180, 555, 587}, {483, 358, 161, 487, 643, 563, 714, 550, 565, 564}, {161, 483, 157, 165, 714, 616, 202, 180, 587, 205}, {157, 483, 161, 487, 616, 714, 202, 644, 550, 564}, {362, 31, 160, 354, 408, 185, 715, 404, 377, 590}, {160, 31, 362, 169, 185, 408, 715, 210, 215, 671}, {362, 160, 93, 354, 715, 670, 702, 404, 590, 669}, {93, 160, 362, 169, 670, 715, 702, 568, 210, 671}, {482, 164, 157, 483, 692, 203, 665, 535, 654, 616}, {157, 164, 482, 158, 203, 692, 665, 199, 183, 617}, {228, 489, 222, 224, 711, 501, 266, 239, 705, 265}, {222, 489, 228, 486, 501, 711, 266, 504, 503, 612}, {288, 166, 427, 296, 680, 613, 716, 336, 604, 631}, {288, 427, 166, 488, 716, 613, 680, 684, 633, 690}, {85, 288, 427, 296, 300, 716, 471, 338, 336, 631}, {85, 427, 288, 488, 471, 716, 300, 632, 633, 684}, {484, 223, 96, 229, 575, 649, 713, 574, 248, 505}, {484, 96, 223, 485, 713, 649, 575, 492, 675, 525}, {488, 293, 287, 487, 683, 328, 661, 551, 601, 662}, {287, 293, 488, 288, 328, 683, 661, 329, 304, 684}, {419, 488, 162, 159, 634, 707, 717, 699, 682, 189}, {162, 419, 17, 423, 717, 444, 190, 561, 443, 442}, {17, 419, 162, 159, 444, 717, 190, 188, 699, 189}, {482, 98, 92, 94, 693, 135, 573, 672, 117, 136}, {92, 98, 482, 483, 135, 693, 573, 530, 694, 535}, {358, 487, 352, 353, 565, 639, 395, 369, 566, 393}, {352, 487, 358, 483, 639, 565, 395, 595, 550, 643}, {359, 483, 93, 97, 596, 668, 718, 653, 641, 105}, {359, 93, 483, 354, 718, 668, 596, 372, 669, 589}, {71, 359, 93, 97, 371, 718, 107, 106, 653, 105}, {71, 93, 359, 354, 107, 718, 371, 373, 669, 372}, {52, 490, 227, 421, 546, 719, 255, 451, 517, 704}, {227, 490, 52, 224, 719, 546, 255, 254, 545, 253}, {490, 489, 227, 421, 625, 570, 719, 517, 685, 704}, {227, 489, 490, 224, 570, 625, 719, 254, 705, 545}, {57, 490, 228, 224, 687, 720, 238, 240, 545, 239}, {228, 490, 57, 290, 720, 687, 238, 686, 498, 306}, {490, 489, 228, 224, 625, 711, 720, 545, 705, 239}, {228, 489, 490, 290, 711, 625, 720, 686, 624, 498}, {162, 419, 482, 488, 717, 721, 619, 707, 634, 536}, {482, 419, 162, 423, 721, 717, 619, 620, 443, 561}, {419, 417, 482, 488, 461, 627, 721, 634, 581, 536}, {482, 417, 419, 423, 627, 461, 721, 620, 460, 443}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 722
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {0.125, 1, 1}, {0.375, 1, 1}, {0.625, 1, 1}, {0.875, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {1, 1, 0.875}, {1, 1, 0.625}, {1, 1, 0.375}, {1, 1, 0.125}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0.875, 1, 0}, {0.625, 1, 0}, {0.375, 1, 0}, {0.125, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 1, 0.125}, {0, 1, 0.375}, {0, 1, 0.625}, {0, 1, 0.875}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0, 0, 0.125}, {0, 0, 0.375}, {0, 0, 0.625}, {0, 0, 0.875}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {0.125, 0, 1}, {0.375, 0, 1}, {0.625, 0, 1}, {0.875, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {1, 0, 0.875}, {1, 0, 0.625}, {1, 0, 0.375}, {1, 0, 0.125}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0.875, 0, 0}, {0.625, 0, 0}, {0.375, 0, 0}, {0.125, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.875, 0}, {0, 0.625, 0}, {0, 0.375, 0}, {0, 0.125, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {0, 0.875, 1}, {0, 0.625, 1}, {0, 0.375, 1}, {0, 0.125, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.875, 1}, {1, 0.625, 1}, {1, 0.375, 1}, {1, 0.125, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {1, 0.875, 0}, {1, 0.625, 0}, {1, 0.375, 0}, {1, 0.125, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.234692, 0.610874, 1}, {0.095431, 0.625135, 1}, {0.139261, 0.735739, 1}, {0.264261, 0.860739, 1}, {0.375, 0.904691, 1}, {0.389261, 0.76543, 1}, {0.860739, 0.735739, 1}, {0.904569, 0.625135, 1}, {0.765308, 0.610874, 1}, {0.264261, 0.139383, 1}, {0.389261, 0.234962, 1}, {0.375, 0.0955798, 1}, {0.610739, 0.76543, 1}, {0.625, 0.904691, 1}, {0.735739, 0.860739, 1}, {0.095431, 0.375135, 1}, {0.234692, 0.389518, 1}, {0.139261, 0.264383, 1}, {0.625, 0.0955798, 1}, {0.610739, 0.234962, 1}, {0.735739, 0.139383, 1}, {0.860739, 0.264383, 1}, {0.765308, 0.389518, 1}, {0.904569, 0.375135, 1}, {0.095431, 0.500135, 1}, {0.904569, 0.500135, 1}, {0.5, 0.904691, 1}, {0.5, 0.0955798, 1}, {0.389261, 0.611834, 1}, {0.345431, 0.501231, 1}, {0.5, 0.655786, 1}, {0.610739, 0.611834, 1}, {0.389261, 0.390478, 1}, {0.654569, 0.501231, 1}, {0.5, 0.346675, 1}, {0.610739, 0.390478, 1}, {0.0709532, 0.804047, 1}, {0.210214, 0.789786, 1}, {0.195953, 0.929047, 1}, {0.789786, 0.789786, 1}, {0.929047, 0.804047, 1}, {0.195953, 0.0709735, 1}, {0.210214, 0.210356, 1}, {0.804047, 0.929047, 1}, {0.0709532, 0.195973, 1}, {0.789786, 0.210356, 1}, {0.804047, 0.0709735, 1}, {0.929047, 0.195973, 1}, {0.0709532, 0.0709735, 1}, {0.0709532, 0.929047, 1}, {0.929047, 0.929047, 1}, {0.929047, 0.0709735, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.904569, 1, 0.625}, {0.765308, 1, 0.610739}, {0.860739, 1, 0.735739}, {0.625, 1, 0.095431}, {0.610739, 1, 0.234692}, {0.735739, 1, 0.139261}, {0.375, 1, 0.904569}, {0.389261, 1, 0.765308}, {0.264261, 1, 0.860739}, {0.095431, 1, 0.375}, {0.234692, 1, 0.389261}, {0.139261, 1, 0.264261}, {0.735739, 1, 0.860739}, {0.610739, 1, 0.765308}, {0.625, 1, 0.904569}, {0.139261, 1, 0.735739}, {0.234692, 1, 0.610739}, {0.095431, 1, 0.625}, {0.860739, 1, 0.264261}, {0.765308, 1, 0.389261}, {0.904569, 1, 0.375}, {0.264261, 1, 0.139261}, {0.389261, 1, 0.234692}, {0.375, 1, 0.095431}, {0.5, 1, 0.095431}, {0.904569, 1, 0.5}, {0.095431, 1, 0.5}, {0.5, 1, 0.904569}, {0.654569, 1, 0.5}, {0.610739, 1, 0.610739}, {0.610739, 1, 0.389261}, {0.5, 1, 0.345431}, {0.389261, 1, 0.389261}, {0.5, 1, 0.654569}, {0.389261, 1, 0.610739}, {0.345431, 1, 0.5}, {0.789786, 1, 0.789786}, {0.929047, 1, 0.804047}, {0.789786, 1, 0.210214}, {0.804047, 1, 0.0709532}, {0.210214, 1, 0.789786}, {0.195953, 1, 0.929047}, {0.210214, 1, 0.210214}, {0.0709532, 1, 0.195953}, {0.804047, 1, 0.929047}, {0.0709532, 1, 0.804047}, {0.929047, 1, 0.195953}, {0.195953, 1, 0.0709532}, {0.0709532, 1, 0.0709532}, {0.929047, 1, 0.0709532}, {0.0709532, 1, 0.929047}, {0.929047, 1, 0.929047}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.904691, 0, 0.625}, {0.76543, 0, 0.610739}, {0.860739, 0, 0.735739}, {0.625135, 0, 0.095431}, {0.610874, 0, 0.234692}, {0.735739, 0, 0.139261}, {0.375135, 0, 0.904569}, {0.389518, 0, 0.765308}, {0.264383, 0, 0.860739}, {0.0955798, 0, 0.375}, {0.234962, 0, 0.389261}, {0.139383, 0, 0.264261}, {0.735739, 0, 0.860739}, {0.610874, 0, 0.765308}, {0.625135, 0, 0.904569}, {0.139383, 0, 0.735739}, {0.234962, 0, 0.610739}, {0.0955798, 0, 0.625}, {0.860739, 0, 0.264261}, {0.76543, 0, 0.389261}, {0.904691, 0, 0.375}, {0.264383, 0, 0.139261}, {0.389518, 0, 0.234692}, {0.375135, 0, 0.095431}, {0.500135, 0, 0.095431}, {0.904691, 0, 0.5}, {0.0955798, 0, 0.5}, {0.500135, 0, 0.904569}, {0.655786, 0, 0.5}, {0.611834, 0, 0.610739}, {0.611834, 0, 0.389261}, {0.501231, 0, 0.345431}, {0.390478, 0, 0.389261}, {0.501231, 0, 0.654569}, {0.390478, 0, 0.610739}, {0.346675, 0, 0.5}, {0.789786, 0, 0.789786}, {0.929047, 0, 0.804047}, {0.789786, 0, 0.210214}, {0.804047, 0, 0.0709532}, {0.210356, 0, 0.789786}, {0.195973, 0, 0.929047}, {0.210356, 0, 0.210214}, {0.0709735, 0, 0.195953}, {0.804047, 0, 0.929047}, {0.0709735, 0, 0.804047}, {0.929047, 0, 0.195953}, {0.195973, 0, 0.0709532}, {0.0709735, 0, 0.0709532}, {0.929047, 0, 0.0709532}, {0.0709735, 0, 0.929047}, {0.929047, 0, 0.929047}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0.860739, 0.735739, 0}, {0.765308, 0.610739, 0}, {0.904569, 0.625, 0}, {0.625, 0.904569, 0}, {0.610739, 0.765308, 0}, {0.735739, 0.860739, 0}, {0.735739, 0.139261, 0}, {0.610739, 0.234692, 0}, {0.625, 0.095431, 0}, {0.095431, 0.625, 0}, {0.234692, 0.610739, 0}, {0.139261, 0.735739, 0}, {0.264261, 0.860739, 0}, {0.389261, 0.765308, 0}, {0.375, 0.904569, 0}, {0.904569, 0.375, 0}, {0.765308, 0.389261, 0}, {0.860739, 0.264261, 0}, {0.139261, 0.264261, 0}, {0.234692, 0.389261, 0}, {0.095431, 0.375, 0}, {0.375, 0.095431, 0}, {0.389261, 0.234692, 0}, {0.264261, 0.139261, 0}, {0.904569, 0.5, 0}, {0.5, 0.904569, 0}, {0.5, 0.095431, 0}, {0.095431, 0.5, 0}, {0.5, 0.654569, 0}, {0.610739, 0.610739, 0}, {0.654569, 0.5, 0}, {0.389261, 0.610739, 0}, {0.610739, 0.389261, 0}, {0.345431, 0.5, 0}, {0.5, 0.345431, 0}, {0.389261, 0.389261, 0}, {0.789786, 0.789786, 0}, {0.804047, 0.929047, 0}, {0.929047, 0.804047, 0}, {0.804047, 0.0709532, 0}, {0.789786, 0.210214, 0}, {0.210214, 0.789786, 0}, {0.0709532, 0.804047, 0}, {0.929047, 0.195953, 0}, {0.195953, 0.929047, 0}, {0.210214, 0.210214, 0}, {0.195953, 0.0709532, 0}, {0.0709532, 0.195953, 0}, {0.929047, 0.0709532, 0}, {0.0709532, 0.929047, 0}, {0.929047, 0.929047, 0}, {0.0709532, 0.0709532, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {0, 0.735739, 0.139261}, {0, 0.610739, 0.234692}, {0, 0.625, 0.095431}, {0, 0.904569, 0.375}, {0, 0.765308, 0.389261}, {0, 0.860739, 0.264261}, {0, 0.625, 0.904569}, {0, 0.610739, 0.765308}, {0, 0.735739, 0.860739}, {0, 0.139261, 0.264261}, {0, 0.234692, 0.389261}, {0, 0.095431, 0.375}, {0, 0.860739, 0.735739}, {0, 0.765308, 0.610739}, {0, 0.904569, 0.625}, {0, 0.375, 0.095431}, {0, 0.389261, 0.234692}, {0, 0.264261, 0.139261}, {0, 0.095431, 0.625}, {0, 0.234692, 0.610739}, {0, 0.139261, 0.735739}, {0, 0.264261, 0.860739}, {0, 0.389261, 0.765308}, {0, 0.375, 0.904569}, {0, 0.5, 0.095431}, {0, 0.5, 0.904569}, {0, 0.904569, 0.5}, {0, 0.095431, 0.5}, {0, 0.610739, 0.389261}, {0, 0.5, 0.345431}, {0, 0.654569, 0.5}, {0, 0.610739, 0.610739}, {0, 0.389261, 0.389261}, {0, 0.5, 0.654569}, {0, 0.345431, 0.5}, {0, 0.389261, 0.610739}, {0, 0.804047, 0.0709532}, {0, 0.789786, 0.210214}, {0, 0.929047, 0.195953}, {0, 0.789786, 0.789786}, {0, 0.804047, 0.929047}, {0, 0.0709532, 0.195953}, {0, 0.210214, 0.210214}, {0, 0.929047, 0.804047}, {0, 0.195953, 0.0709532}, {0, 0.210214, 0.789786}, {0, 0.0709532, 0.804047}, {0, 0.195953, 0.929047}, {0, 0.0709532, 0.0709532}, {0, 0.929047, 0.0709532}, {0, 0.929047, 0.929047}, {0, 0.0709532, 0.929047}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {1, 0.860678, 0.735678}, {1, 0.76518, 0.610611}, {1, 0.904501, 0.624932}, {1, 0.624932, 0.904501}, {1, 0.610611, 0.76518}, {1, 0.735678, 0.860678}, {1, 0.0953701, 0.624939}, {1, 0.234631, 0.610678}, {1, 0.139261, 0.735739}, {1, 0.735739, 0.139261}, {1, 0.610678, 0.234631}, {1, 0.624939, 0.0953701}, {1, 0.904501, 0.374932}, {1, 0.76524, 0.389193}, {1, 0.860739, 0.264261}, {1, 0.264261, 0.860739}, {1, 0.389193, 0.76524}, {1, 0.374932, 0.904501}, {1, 0.374939, 0.0953701}, {1, 0.3892, 0.234631}, {1, 0.264261, 0.139261}, {1, 0.139261, 0.264261}, {1, 0.234631, 0.3892}, {1, 0.0953701, 0.374939}, {1, 0.904501, 0.499932}, {1, 0.499932, 0.904501}, {1, 0.0953701, 0.499939}, {1, 0.499939, 0.0953701}, {1, 0.610131, 0.610131}, {1, 0.499385, 0.653954}, {1, 0.653954, 0.499385}, {1, 0.610191, 0.388713}, {1, 0.388713, 0.610191}, {1, 0.499391, 0.344822}, {1, 0.344822, 0.499391}, {1, 0.388713, 0.388713}, {1, 0.929037, 0.804037}, {1, 0.789715, 0.789715}, {1, 0.804037, 0.929037}, {1, 0.210214, 0.789786}, {1, 0.0709532, 0.804047}, {1, 0.804047, 0.0709532}, {1, 0.789786, 0.210214}, {1, 0.195953, 0.929047}, {1, 0.929047, 0.195953}, {1, 0.0709532, 0.195953}, {1, 0.210214, 0.210214}, {1, 0.195953, 0.0709532}, {1, 0.0709532, 0.929047}, {1, 0.929047, 0.0709532}, {1, 0.929037, 0.929037}, {1, 0.0709532, 0.0709532}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}, {0.403787, 0.502163, 0.604301}, {0.59395, 0.335588, 0.588613}, {0.57425, 0.502163, 0.604301}, {0.533055, 0.519268, 0.479373}, {0.723218, 0.352693, 0.463685}, {0.552756, 0.352693, 0.463685}, {0.907719, 0.227933, 0.0932632}, {0.768458, 0.242194, 0.0932632}, {0.812288, 0.352933, 0.0932632}, {0.462839, 0.167794, 0.544306}, {0.592107, 0.184899, 0.419378}, {0.423487, 0.335588, 0.41815}, {0.552756, 0.352693, 0.293222}, {0.462839, 0.167794, 0.373844}, {0.610874, 0.139383, 0.904569}, {0.500135, 0.0955798, 0.904569}, {0.141927, 0.0709532, 0.0709532}, {0.0709735, 0.0709532, 0.141906}, {0.0709532, 0.141906, 0.0709532}, {0.307175, 0.417794, 0.123844}, {0.351005, 0.307055, 0.123844}, {0.095431, 0.5, 0.095431}, {0.139261, 0.389261, 0.095431}, {0.211744, 0.417794, 0.219275}, {0.633302, 0.167794, 0.544306}, {0.907719, 0.173886, 0.164216}, {0.907719, 0.242194, 0.232524}, {0.0709532, 0.210234, 0.860739}, {0.141927, 0.0709735, 0.929047}, {0.0709735, 0.139261, 0.789786}, {0.0709735, 0.0709532, 0.858094}, {0.0709532, 0.141927, 0.929047}, {0.210336, 0.0709735, 0.860739}, {0.139383, 0.139261, 0.721478}, {0.742945, 0.167794, 0.655045}, {0.786897, 0.167794, 0.544306}, {0.904691, 0.139261, 0.610739}, {0.882206, 0.307055, 0.655045}, {0.860739, 0.139261, 0.721478}, {0.442043, 0.585464, 0.809994}, {0.461744, 0.418889, 0.794306}, {0.632206, 0.418889, 0.794306}, {0.907719, 0.352872, 0.188633}, {0.836765, 0.173886, 0.0932632}, {0.549357, 0.674254, 0.636624}, {0.73952, 0.678141, 0.450474}, {0.57425, 0.672625, 0.433838}, {0.723218, 0.523156, 0.293222}, {0.698326, 0.524784, 0.496008}, {0.721478, 0.860739, 0.860739}, {0.610739, 0.904691, 0.860739}, {0.0709735, 0.139261, 0.210214}, {0.882206, 0.263164, 0.544245}, {0.882206, 0.417246, 0.543759}, {0.768458, 0.102933, 0.232524}, {0.907719, 0.102933, 0.218263}, {0.836765, 0.102933, 0.164216}, {0.73952, 0.507679, 0.620936}, {0.929047, 0.929037, 0.858083}, {0.403787, 0.672625, 0.433838}, {0.59395, 0.676512, 0.247688}, {0.552756, 0.523156, 0.293222}, {0.307175, 0.417929, 0.794306}, {0.351005, 0.307176, 0.794306}, {0.095431, 0.904569, 0.5}, {0.500135, 0.095431, 0.095431}, {0.858094, 0.929047, 0.929047}, {0.5, 0.904691, 0.904569}, {0.929047, 0.858083, 0.929037}, {0.423487, 0.50605, 0.41815}, {0.904569, 0.904501, 0.499932}, {0.139261, 0.860739, 0.278522}, {0.139261, 0.904569, 0.389261}, {0.351005, 0.838256, 0.263105}, {0.211744, 0.742825, 0.373844}, {0.211744, 0.698995, 0.263105}, {0.141906, 0.929047, 0.929047}, {0.210214, 0.860739, 0.929047}, {0.904569, 0.500068, 0.904501}, {0.745703, 0.184899, 0.419378}, {0.904691, 0.0953701, 0.499939}, {0.841012, 0.280269, 0.419318}, {0.607314, 0.59098, 0.82663}, {0.461879, 0.167794, 0.698875}, {0.572483, 0.167794, 0.655045}, {0.882206, 0.417726, 0.698808}, {0.0709532, 0.789786, 0.139261}, {0.139261, 0.721478, 0.139261}, {0.882206, 0.588195, 0.219214}, {0.841012, 0.434839, 0.264749}, {0.882206, 0.587709, 0.373296}, {0.841012, 0.434352, 0.418831}, {0.389261, 0.904569, 0.139261}, {0.5, 0.904569, 0.095431}, {0.389383, 0.095431, 0.139261}, {0.278522, 0.860739, 0.139261}, {0.287474, 0.834369, 0.559994}, {0.331304, 0.834369, 0.670734}, {0.192043, 0.695108, 0.670734}, {0.139261, 0.860739, 0.721478}, {0.095431, 0.860739, 0.610739}, {0.139261, 0.278644, 0.860739}, {0.278644, 0.139383, 0.860739}, {0.139261, 0.389383, 0.904569}, {0.192043, 0.584369, 0.559994}, {0.192043, 0.584369, 0.714563}, {0.211744, 0.417794, 0.698875}, {0.211744, 0.417794, 0.544306}, {0.0955798, 0.139261, 0.610739}, {0.351005, 0.698995, 0.123844}, {0.461744, 0.742825, 0.123844}, {0.461744, 0.838256, 0.219275}, {0.929047, 0.141906, 0.0709532}, {0.858094, 0.929047, 0.0709532}, {0.0955798, 0.095431, 0.5}, {0.307323, 0.167794, 0.544306}, {0.211744, 0.263225, 0.544306}, {0.211744, 0.307055, 0.655045}, {0.461744, 0.263225, 0.123844}, {0.351126, 0.167794, 0.263105}, {0.278644, 0.139261, 0.139261}, {0.461879, 0.167794, 0.219275}, {0.929047, 0.929047, 0.141906}, {0.860739, 0.860678, 0.721417}, {0.904569, 0.860678, 0.610678}, {0.442043, 0.834369, 0.559994}, {0.718053, 0.839885, 0.687369}, {0.857314, 0.700563, 0.687308}, {0.761883, 0.839885, 0.57663}, {0.857314, 0.744386, 0.576562}, {0.904569, 0.499939, 0.0953701}, {0.786775, 0.588256, 0.123844}, {0.745581, 0.434899, 0.169378}, {0.701751, 0.32416, 0.169378}, {0.748731, 0.287832, 0.262642}, {0.857314, 0.589817, 0.731131}, {0.857314, 0.589337, 0.576082}, {0.572483, 0.307055, 0.123844}, {0.461744, 0.417794, 0.123844}, {0.591012, 0.434899, 0.169378}, {0.929047, 0.858094, 0.0709532}, {0.882206, 0.713256, 0.123844}, {0.882206, 0.767303, 0.194797}, {0.882206, 0.698995, 0.263105}, {0.351126, 0.167794, 0.433567}, {0.351126, 0.167794, 0.655045}, {0.211744, 0.417794, 0.373844}, {0.423487, 0.50605, 0.247688}, {0.211744, 0.588256, 0.373844}, {0.929047, 0.0709532, 0.141906}, {0.287474, 0.584504, 0.809994}, {0.929047, 0.0709532, 0.858094}, {0.192043, 0.738938, 0.559994}, {0.461744, 0.838256, 0.373844}, {0.632206, 0.838256, 0.373844}, {0.139261, 0.210214, 0.0709532}, {0.210234, 0.139261, 0.0709532}, {0.789786, 0.0709735, 0.860739}, {0.721478, 0.139383, 0.860739}, {0.610739, 0.904569, 0.139261}, {0.721478, 0.860739, 0.139261}, {0.0709532, 0.929047, 0.141906}, {0.095431, 0.500135, 0.904569}, {0.442043, 0.834369, 0.714563}, {0.461744, 0.263374, 0.794306}, {0.860739, 0.278644, 0.860739}, {0.929047, 0.210234, 0.860739}, {0.211744, 0.307055, 0.263105}, {0.139261, 0.610739, 0.095431}, {0.211744, 0.588256, 0.219275}, {0.632206, 0.588256, 0.123844}, {0.461744, 0.588256, 0.123844}, {0.139383, 0.139261, 0.278522}, {0.139261, 0.278522, 0.139261}, {0.607314, 0.839885, 0.57663}, {0.904569, 0.610813, 0.860678}, {0.0709532, 0.858094, 0.929047}, {0.331304, 0.695108, 0.809994}, {0.139261, 0.721478, 0.860739}, {0.278522, 0.860739, 0.860739}, {0.0709532, 0.929047, 0.858094}, {0.718053, 0.700624, 0.82663}, {0.860739, 0.721417, 0.860678}, {0.761883, 0.59002, 0.82663}, {0.742945, 0.307176, 0.794306}, {0.786775, 0.417929, 0.794306}, {0.860739, 0.929037, 0.789776}, {0.389261, 0.904691, 0.860739}, {0.307175, 0.588256, 0.123844}, {0.789786, 0.860739, 0.0709532}, {0.0709532, 0.858094, 0.0709532}, {0.742945, 0.838256, 0.263105}, {0.632206, 0.742825, 0.123844}, {0.742945, 0.698995, 0.123844}, {0.841012, 0.32416, 0.308639}, {0.610874, 0.139261, 0.095431}, {0.782719, 0.102933, 0.0932632}, {0.860739, 0.789776, 0.929037}, {0.929047, 0.141927, 0.929047}, {0.811253, 0.838256, 0.194797}, {0.858094, 0.0709735, 0.929047}, {0.607314, 0.839885, 0.731199}, {0.607314, 0.744576, 0.82663}, {0.442043, 0.73906, 0.809994}, {0.389383, 0.0955798, 0.860739}, {0.141906, 0.929047, 0.0709532}, {0.0709532, 0.860739, 0.210214}, {0.929047, 0.860739, 0.210214}, {0.860739, 0.860739, 0.278522}, {0.139383, 0.095431, 0.389261}, {0.211744, 0.263225, 0.373844}, {0.139261, 0.789786, 0.929047}, {0.789786, 0.929047, 0.860739}, {0.904691, 0.139261, 0.389261}, {0.701751, 0.184899, 0.308639}, {0.929047, 0.139261, 0.789786}, {0.786775, 0.838256, 0.373844}, {0.875, 0.0709532, 0.0709532}, {0.210214, 0.929047, 0.139261}, {0.572483, 0.838256, 0.263105}, {0.591147, 0.184899, 0.264809}, {0.904569, 0.389396, 0.860739}, {0.572483, 0.307176, 0.794306}, {0.331304, 0.834369, 0.449255}, {0.139261, 0.929047, 0.789786}, {0.860739, 0.789786, 0.0709532}, {0.904569, 0.860739, 0.389261}, {0.139261, 0.610739, 0.904569}, {0.812409, 0.102933, 0.343263}, {0.657854, 0.102933, 0.188694}, {0.857314, 0.700624, 0.465891}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 48
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{6, 8, 11}, {8, 9, 12}, {9, 10, 13}, {10, 7, 14}, {7, 15, 18}, {15, 16, 19}, {16, 17, 20}, {17, 3, 21}, {3, 22, 25}, {22, 23, 26}, {23, 24, 27}, {24, 2, 28}, {2, 29, 32}, {29, 30, 33}, {30, 31, 34}, {31, 6, 35}, {0, 36, 39}, {36, 37, 40}, {37, 38, 41}, {38, 4, 42}, {4, 43, 46}, {43, 44, 47}, {44, 45, 48}, {45, 5, 49}, {5, 50, 53}, {50, 51, 54}, {51, 52, 55}, {52, 1, 56}, {1, 57, 60}, {57, 58, 61}, {58, 59, 62}, {59, 0, 63}, {2, 64, 67}, {64, 65, 68}, {65, 66, 69}, {66, 0, 70}, {6, 71, 74}, {71, 72, 75}, {72, 73, 76}, {73, 4, 77}, {7, 78, 81}, {78, 79, 82}, {79, 80, 83}, {80, 5, 84}, {3, 85, 88}, {85, 86, 89}, {86, 87, 90}, {87, 1, 91}}
]
+ ]
(not_ghost:_triangle_6) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 240
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{93, 97, 71, 105, 106, 107}, {93, 8, 98, 108, 109, 110}, {94, 78, 99, 111, 112, 113}, {43, 95, 100, 114, 115, 116}, {94, 98, 10, 117, 118, 119}, {73, 97, 95, 120, 121, 122}, {45, 100, 96, 123, 124, 125}, {80, 96, 99, 126, 127, 128}, {71, 97, 72, 106, 129, 75}, {78, 79, 99, 82, 130, 112}, {8, 9, 98, 12, 131, 109}, {43, 100, 44, 116, 132, 47}, {72, 97, 73, 129, 120, 76}, {9, 10, 98, 13, 118, 131}, {79, 80, 99, 83, 128, 130}, {44, 100, 45, 132, 123, 48}, {93, 92, 97, 133, 134, 105}, {93, 98, 92, 110, 135, 133}, {94, 92, 98, 136, 135, 117}, {92, 95, 97, 137, 121, 134}, {94, 99, 92, 113, 138, 136}, {92, 100, 95, 139, 115, 137}, {92, 99, 96, 138, 127, 140}, {92, 96, 100, 140, 124, 139}, {93, 71, 101, 107, 141, 142}, {93, 101, 8, 142, 143, 108}, {94, 102, 78, 144, 145, 111}, {43, 103, 95, 146, 147, 114}, {94, 10, 102, 119, 148, 144}, {73, 95, 103, 122, 147, 149}, {45, 96, 104, 125, 150, 151}, {80, 104, 96, 152, 150, 126}, {4, 73, 103, 77, 149, 153}, {6, 101, 71, 154, 141, 74}, {7, 102, 10, 155, 148, 14}, {7, 78, 102, 81, 145, 155}, {6, 8, 101, 11, 143, 154}, {5, 104, 80, 156, 152, 84}, {4, 103, 43, 153, 146, 46}, {5, 45, 104, 49, 151, 156}, {15, 162, 158, 170, 171, 172}, {22, 163, 159, 173, 174, 175}, {8, 164, 160, 176, 177, 178}, {29, 165, 161, 179, 180, 181}, {10, 158, 164, 182, 183, 184}, {31, 160, 165, 185, 186, 187}, {17, 159, 162, 188, 189, 190}, {24, 161, 163, 191, 192, 193}, {22, 23, 163, 26, 194, 173}, {15, 16, 162, 19, 195, 170}, {29, 30, 165, 33, 196, 179}, {8, 9, 164, 12, 197, 176}, {16, 17, 162, 20, 190, 195}, {23, 24, 163, 27, 193, 194}, {9, 10, 164, 13, 184, 197}, {30, 31, 165, 34, 187, 196}, {158, 162, 157, 171, 198, 199}, {159, 157, 162, 200, 198, 189}, {159, 163, 157, 174, 201, 200}, {161, 157, 163, 202, 201, 192}, {158, 157, 164, 199, 203, 183}, {160, 164, 157, 177, 203, 204}, {160, 157, 165, 204, 205, 186}, {161, 165, 157, 180, 205, 202}, {15, 158, 167, 172, 206, 207}, {22, 159, 166, 175, 208, 209}, {8, 160, 169, 178, 210, 211}, {29, 161, 168, 181, 212, 213}, {10, 167, 158, 214, 206, 182}, {31, 169, 160, 215, 210, 185}, {17, 166, 159, 216, 208, 188}, {24, 168, 161, 217, 212, 191}, {2, 168, 24, 218, 217, 28}, {3, 166, 17, 219, 216, 21}, {6, 169, 31, 220, 215, 35}, {7, 167, 10, 221, 214, 14}, {7, 15, 167, 18, 207, 221}, {3, 22, 166, 25, 209, 219}, {6, 8, 169, 11, 211, 220}, {2, 29, 168, 32, 213, 218}, {50, 227, 223, 235, 236, 237}, {57, 228, 224, 238, 239, 240}, {43, 229, 225, 241, 242, 243}, {36, 230, 226, 244, 245, 246}, {45, 223, 229, 247, 248, 249}, {38, 225, 230, 250, 251, 252}, {52, 224, 227, 253, 254, 255}, {59, 226, 228, 256, 257, 258}, {57, 58, 228, 61, 259, 238}, {50, 51, 227, 54, 260, 235}, {36, 37, 230, 40, 261, 244}, {43, 44, 229, 47, 262, 241}, {51, 52, 227, 55, 255, 260}, {58, 59, 228, 62, 258, 259}, {44, 45, 229, 48, 249, 262}, {37, 38, 230, 41, 252, 261}, {223, 227, 222, 236, 263, 264}, {224, 222, 227, 265, 263, 254}, {224, 228, 222, 239, 266, 265}, {222, 228, 226, 266, 257, 267}, {223, 222, 229, 264, 268, 248}, {222, 225, 229, 269, 242, 268}, {222, 230, 225, 270, 251, 269}, {222, 226, 230, 267, 245, 270}, {50, 223, 232, 237, 271, 272}, {57, 224, 231, 240, 273, 274}, {43, 225, 234, 243, 275, 276}, {36, 226, 233, 246, 277, 278}, {45, 232, 223, 279, 271, 247}, {38, 234, 225, 280, 275, 250}, {52, 231, 224, 281, 273, 253}, {59, 233, 226, 282, 277, 256}, {0, 233, 59, 283, 282, 63}, {1, 231, 52, 284, 281, 56}, {4, 234, 38, 285, 280, 42}, {5, 232, 45, 286, 279, 49}, {5, 50, 232, 53, 272, 286}, {1, 57, 231, 60, 274, 284}, {4, 43, 234, 46, 276, 285}, {0, 36, 233, 39, 278, 283}, {85, 288, 292, 300, 301, 302}, {22, 293, 288, 303, 304, 305}, {57, 290, 294, 306, 307, 308}, {64, 295, 289, 309, 310, 311}, {24, 289, 293, 312, 313, 314}, {87, 292, 290, 315, 316, 317}, {66, 291, 295, 318, 319, 320}, {59, 294, 291, 321, 322, 323}, {85, 292, 86, 302, 324, 89}, {22, 23, 293, 26, 325, 303}, {57, 294, 58, 308, 326, 61}, {64, 65, 295, 68, 327, 309}, {86, 292, 87, 324, 315, 90}, {23, 24, 293, 27, 314, 325}, {65, 66, 295, 69, 320, 327}, {58, 294, 59, 326, 321, 62}, {288, 293, 287, 304, 328, 329}, {288, 287, 292, 329, 330, 301}, {289, 287, 293, 331, 328, 313}, {290, 292, 287, 316, 330, 332}, {289, 295, 287, 310, 333, 331}, {290, 287, 294, 332, 334, 307}, {291, 294, 287, 322, 334, 335}, {291, 287, 295, 335, 333, 319}, {22, 288, 296, 305, 336, 337}, {85, 296, 288, 338, 336, 300}, {57, 298, 290, 339, 340, 306}, {64, 289, 297, 311, 341, 342}, {87, 290, 298, 317, 340, 343}, {24, 297, 289, 344, 341, 312}, {59, 291, 299, 323, 345, 346}, {66, 299, 291, 347, 345, 318}, {1, 87, 298, 91, 343, 348}, {2, 297, 24, 349, 344, 28}, {3, 296, 85, 350, 338, 88}, {3, 22, 296, 25, 337, 350}, {1, 298, 57, 348, 339, 60}, {2, 64, 297, 67, 342, 349}, {0, 59, 299, 63, 346, 351}, {0, 299, 66, 351, 347, 70}, {64, 353, 357, 365, 366, 367}, {29, 358, 353, 368, 369, 370}, {71, 359, 354, 371, 372, 373}, {36, 355, 360, 374, 375, 376}, {31, 354, 358, 377, 378, 379}, {66, 357, 355, 380, 381, 382}, {38, 360, 356, 383, 384, 385}, {73, 356, 359, 386, 387, 388}, {64, 357, 65, 367, 389, 68}, {71, 72, 359, 75, 390, 371}, {29, 30, 358, 33, 391, 368}, {36, 360, 37, 376, 392, 40}, {65, 357, 66, 389, 380, 69}, {30, 31, 358, 34, 379, 391}, {72, 73, 359, 76, 388, 390}, {37, 360, 38, 392, 383, 41}, {353, 352, 357, 393, 394, 366}, {353, 358, 352, 369, 395, 393}, {354, 352, 358, 396, 395, 378}, {355, 357, 352, 381, 394, 397}, {354, 359, 352, 372, 398, 396}, {355, 352, 360, 397, 399, 375}, {356, 352, 359, 400, 398, 387}, {356, 360, 352, 384, 399, 400}, {64, 361, 353, 401, 402, 365}, {29, 353, 361, 370, 402, 403}, {71, 354, 362, 373, 404, 405}, {36, 363, 355, 406, 407, 374}, {31, 362, 354, 408, 404, 377}, {66, 355, 363, 382, 407, 409}, {38, 356, 364, 385, 410, 411}, {73, 364, 356, 412, 410, 386}, {0, 66, 363, 70, 409, 413}, {2, 361, 64, 414, 401, 67}, {6, 362, 31, 415, 408, 35}, {6, 71, 362, 74, 405, 415}, {2, 29, 361, 32, 403, 414}, {4, 364, 73, 416, 412, 77}, {0, 363, 36, 413, 406, 39}, {4, 38, 364, 42, 411, 416}, {15, 418, 423, 430, 431, 432}, {78, 422, 418, 433, 434, 435}, {50, 424, 420, 436, 437, 438}, {85, 419, 425, 439, 440, 441}, {17, 423, 419, 442, 443, 444}, {80, 420, 422, 445, 446, 447}, {87, 425, 421, 448, 449, 450}, {52, 421, 424, 451, 452, 453}, {15, 423, 16, 432, 454, 19}, {78, 79, 422, 82, 455, 433}, {50, 51, 424, 54, 456, 436}, {85, 425, 86, 441, 457, 89}, {79, 80, 422, 83, 447, 455}, {16, 423, 17, 454, 442, 20}, {86, 425, 87, 457, 448, 90}, {51, 52, 424, 55, 453, 456}, {417, 418, 422, 458, 434, 459}, {417, 423, 418, 460, 431, 458}, {419, 423, 417, 443, 460, 461}, {420, 417, 422, 462, 459, 446}, {419, 417, 425, 461, 463, 440}, {420, 424, 417, 437, 464, 462}, {421, 417, 424, 465, 464, 452}, {421, 425, 417, 449, 463, 465}, {15, 426, 418, 466, 467, 430}, {78, 418, 426, 435, 467, 468}, {50, 420, 428, 438, 469, 470}, {85, 427, 419, 471, 472, 439}, {80, 428, 420, 473, 469, 445}, {17, 419, 427, 444, 472, 474}, {52, 429, 421, 475, 476, 451}, {87, 421, 429, 450, 476, 477}, {5, 428, 80, 478, 473, 84}, {3, 17, 427, 21, 474, 479}, {7, 78, 426, 81, 468, 480}, {7, 426, 15, 480, 466, 18}, {5, 50, 428, 53, 470, 478}, {3, 427, 85, 479, 471, 88}, {1, 429, 52, 481, 475, 56}, {1, 87, 429, 91, 477, 481}}
]
+ ]
(not_ghost:_tetrahedron_10) [
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_10
+ size : 341
+ nb_component : 10
+ allocated size : 2000
+ memory size : 78kB
+ values : {{484, 483, 485, 489, 491, 493, 492, 496, 494, 495}, {87, 290, 490, 292, 317, 498, 497, 315, 316, 499}, {222, 484, 489, 486, 500, 496, 501, 504, 502, 503}, {96, 229, 45, 100, 505, 249, 125, 124, 506, 123}, {59, 0, 233, 299, 63, 283, 282, 346, 351, 507}, {0, 363, 233, 299, 413, 508, 283, 351, 509, 507}, {486, 295, 291, 357, 510, 319, 511, 514, 512, 513}, {484, 222, 489, 485, 500, 501, 496, 492, 515, 495}, {87, 429, 421, 490, 477, 476, 450, 497, 516, 517}, {103, 356, 234, 364, 518, 520, 519, 522, 410, 521}, {356, 103, 234, 225, 518, 519, 520, 524, 523, 275}, {43, 103, 225, 234, 146, 523, 243, 276, 519, 275}, {223, 227, 485, 420, 236, 526, 525, 529, 527, 528}, {483, 92, 484, 485, 530, 531, 491, 493, 532, 492}, {87, 421, 425, 490, 450, 449, 448, 497, 517, 533}, {298, 87, 290, 490, 343, 317, 340, 534, 497, 498}, {482, 483, 488, 489, 535, 537, 536, 539, 494, 538}, {94, 10, 158, 98, 119, 182, 540, 117, 118, 541}, {355, 363, 233, 36, 407, 508, 542, 374, 406, 278}, {485, 420, 424, 417, 528, 437, 543, 544, 462, 464}, {231, 224, 52, 490, 273, 253, 281, 547, 545, 546}, {483, 482, 485, 489, 535, 548, 493, 494, 539, 495}, {167, 15, 7, 426, 207, 18, 221, 549, 466, 480}, {483, 487, 488, 489, 550, 551, 537, 494, 552, 538}, {484, 92, 97, 95, 531, 134, 553, 554, 137, 121}, {29, 165, 30, 358, 179, 196, 33, 368, 555, 391}, {228, 294, 58, 59, 556, 326, 259, 258, 321, 62}, {102, 10, 7, 167, 148, 14, 155, 557, 214, 221}, {9, 10, 98, 164, 13, 118, 131, 197, 184, 558}, {78, 102, 7, 426, 145, 155, 81, 468, 559, 480}, {483, 484, 487, 489, 491, 560, 550, 494, 496, 552}, {16, 423, 162, 17, 454, 561, 195, 20, 442, 190}, {353, 161, 358, 487, 562, 563, 369, 566, 564, 565}, {93, 101, 8, 169, 142, 143, 108, 568, 567, 211}, {78, 422, 79, 99, 433, 455, 82, 112, 569, 130}, {485, 227, 489, 424, 526, 570, 495, 543, 571, 572}, {482, 92, 483, 485, 573, 530, 535, 548, 532, 493}, {223, 222, 229, 484, 264, 268, 248, 575, 500, 574}, {422, 420, 485, 417, 446, 528, 576, 459, 462, 544}, {64, 297, 353, 289, 342, 577, 365, 311, 341, 578}, {101, 6, 8, 169, 154, 11, 143, 567, 220, 211}, {425, 488, 489, 417, 579, 538, 580, 463, 581, 582}, {163, 161, 24, 293, 192, 191, 193, 584, 583, 314}, {228, 294, 59, 226, 556, 321, 258, 257, 585, 256}, {161, 289, 24, 293, 586, 312, 191, 583, 313, 314}, {165, 483, 160, 354, 587, 588, 186, 591, 589, 590}, {103, 356, 95, 225, 518, 592, 147, 523, 524, 593}, {356, 95, 359, 73, 592, 594, 387, 386, 122, 388}, {352, 483, 359, 484, 595, 596, 398, 598, 491, 597}, {103, 43, 4, 234, 146, 46, 153, 519, 276, 285}, {230, 356, 38, 225, 599, 385, 252, 251, 524, 250}, {161, 289, 293, 487, 586, 313, 583, 564, 600, 601}, {161, 487, 293, 163, 564, 601, 583, 192, 602, 584}, {429, 87, 298, 490, 477, 343, 603, 516, 497, 534}, {364, 38, 234, 4, 411, 280, 521, 416, 42, 285}, {22, 296, 3, 166, 337, 350, 25, 209, 604, 219}, {230, 37, 360, 36, 261, 392, 605, 244, 40, 376}, {356, 230, 360, 484, 599, 605, 384, 608, 606, 607}, {22, 23, 293, 163, 26, 325, 303, 173, 194, 584}, {294, 486, 291, 226, 609, 511, 322, 585, 610, 611}, {294, 228, 486, 226, 556, 612, 609, 585, 257, 610}, {3, 17, 166, 427, 21, 216, 219, 479, 474, 613}, {364, 103, 4, 234, 522, 153, 416, 521, 519, 285}, {158, 15, 418, 162, 172, 430, 614, 171, 170, 615}, {15, 423, 418, 162, 432, 431, 430, 170, 561, 615}, {157, 483, 160, 165, 616, 588, 204, 205, 587, 186}, {482, 158, 418, 162, 617, 614, 618, 619, 171, 615}, {423, 482, 418, 162, 620, 618, 431, 561, 619, 615}, {425, 488, 292, 489, 579, 622, 621, 580, 538, 623}, {290, 489, 490, 292, 624, 625, 498, 316, 623, 499}, {222, 223, 485, 484, 264, 525, 515, 500, 575, 492}, {363, 0, 66, 299, 413, 70, 409, 509, 351, 347}, {482, 422, 485, 417, 626, 576, 548, 627, 459, 544}, {486, 290, 287, 489, 628, 332, 629, 503, 624, 630}, {296, 3, 166, 427, 350, 219, 604, 631, 479, 613}, {489, 290, 287, 292, 624, 332, 630, 623, 316, 330}, {488, 85, 427, 419, 632, 471, 633, 634, 439, 472}, {425, 488, 419, 85, 579, 634, 440, 441, 632, 439}, {15, 16, 423, 162, 19, 454, 432, 170, 195, 561}, {65, 64, 357, 295, 68, 367, 389, 327, 309, 512}, {222, 484, 486, 226, 500, 502, 504, 267, 635, 610}, {356, 484, 95, 225, 608, 554, 592, 524, 636, 593}, {352, 484, 486, 487, 598, 502, 637, 639, 560, 638}, {230, 222, 484, 225, 270, 500, 606, 251, 269, 636}, {294, 228, 58, 57, 556, 259, 326, 308, 238, 61}, {352, 483, 484, 487, 595, 491, 598, 639, 550, 560}, {23, 163, 24, 293, 194, 193, 27, 325, 584, 314}, {429, 231, 1, 52, 640, 284, 481, 475, 281, 56}, {228, 222, 486, 226, 266, 504, 612, 257, 267, 610}, {482, 422, 417, 418, 626, 459, 627, 618, 434, 458}, {489, 425, 490, 292, 580, 533, 625, 623, 621, 499}, {483, 92, 97, 484, 530, 134, 641, 491, 531, 553}, {50, 232, 5, 428, 272, 286, 53, 470, 642, 478}, {483, 165, 358, 354, 587, 555, 643, 589, 591, 378}, {157, 483, 487, 488, 616, 550, 644, 645, 537, 551}, {425, 488, 417, 419, 579, 581, 463, 440, 634, 461}, {222, 230, 484, 226, 270, 606, 500, 267, 245, 635}, {299, 363, 233, 291, 509, 508, 507, 345, 646, 647}, {103, 356, 73, 95, 518, 386, 149, 147, 592, 122}, {229, 44, 45, 100, 262, 48, 249, 506, 132, 123}, {356, 230, 38, 360, 599, 252, 385, 384, 605, 383}, {104, 223, 45, 96, 648, 247, 151, 150, 649, 125}, {22, 159, 293, 288, 175, 650, 303, 305, 651, 304}, {352, 356, 360, 484, 400, 384, 399, 598, 608, 607}, {2, 361, 168, 29, 414, 652, 218, 32, 403, 213}, {484, 483, 359, 97, 491, 596, 597, 553, 641, 653}, {483, 157, 160, 164, 616, 204, 588, 654, 203, 177}, {92, 484, 100, 95, 531, 655, 139, 137, 554, 115}, {223, 420, 96, 104, 529, 656, 649, 648, 657, 150}, {85, 425, 292, 86, 441, 621, 302, 89, 457, 324}, {355, 352, 486, 357, 397, 637, 658, 381, 394, 514}, {353, 289, 487, 357, 578, 600, 566, 366, 659, 660}, {66, 295, 357, 291, 320, 512, 380, 318, 319, 513}, {488, 487, 287, 489, 551, 662, 661, 538, 552, 630}, {486, 294, 287, 290, 609, 334, 629, 628, 307, 332}, {227, 223, 485, 222, 236, 525, 526, 263, 264, 515}, {355, 486, 226, 291, 658, 610, 663, 664, 511, 611}, {43, 103, 95, 225, 146, 147, 114, 243, 523, 593}, {356, 230, 484, 225, 599, 606, 608, 524, 251, 636}, {64, 295, 289, 357, 309, 310, 311, 367, 512, 659}, {157, 482, 162, 158, 665, 619, 198, 199, 617, 171}, {223, 229, 45, 96, 248, 249, 247, 649, 505, 125}, {222, 229, 484, 225, 268, 574, 500, 269, 242, 636}, {422, 78, 418, 99, 433, 435, 434, 569, 112, 666}, {422, 80, 79, 99, 447, 83, 455, 569, 128, 130}, {159, 22, 293, 163, 175, 303, 650, 174, 173, 584}, {101, 362, 71, 6, 667, 405, 141, 154, 415, 74}, {93, 483, 354, 160, 668, 589, 669, 670, 588, 590}, {355, 486, 291, 357, 658, 511, 664, 381, 514, 513}, {362, 101, 169, 6, 667, 567, 671, 415, 154, 220}, {94, 482, 418, 99, 672, 618, 673, 113, 674, 666}, {488, 482, 489, 417, 536, 539, 538, 581, 627, 582}, {484, 356, 95, 359, 608, 592, 554, 597, 387, 594}, {363, 355, 233, 291, 407, 542, 508, 646, 664, 647}, {485, 92, 96, 99, 532, 140, 675, 676, 138, 127}, {78, 94, 418, 99, 111, 673, 435, 112, 113, 666}, {92, 483, 97, 93, 530, 641, 134, 133, 668, 105}, {484, 95, 97, 359, 554, 121, 553, 597, 594, 653}, {72, 71, 97, 359, 75, 106, 129, 390, 371, 653}, {94, 482, 99, 92, 672, 674, 113, 136, 573, 138}, {102, 167, 7, 426, 557, 221, 155, 559, 549, 480}, {10, 164, 158, 98, 184, 183, 182, 118, 558, 541}, {482, 422, 99, 485, 626, 569, 674, 548, 576, 676}, {15, 158, 426, 167, 172, 677, 466, 207, 206, 549}, {92, 482, 99, 485, 573, 674, 138, 532, 548, 676}, {158, 15, 426, 418, 172, 466, 677, 614, 430, 467}, {38, 356, 234, 225, 385, 520, 280, 250, 524, 275}, {94, 482, 158, 418, 672, 617, 540, 673, 618, 614}, {364, 356, 234, 38, 410, 520, 521, 411, 385, 280}, {93, 160, 8, 98, 670, 178, 108, 110, 678, 109}, {355, 233, 226, 36, 542, 277, 663, 374, 278, 246}, {160, 93, 8, 169, 670, 108, 178, 210, 568, 211}, {227, 223, 50, 420, 236, 237, 235, 527, 529, 438}, {363, 0, 233, 36, 413, 283, 508, 406, 39, 278}, {486, 295, 287, 291, 510, 333, 629, 511, 319, 335}, {59, 294, 291, 226, 321, 322, 323, 256, 585, 611}, {66, 363, 299, 291, 409, 509, 347, 318, 646, 345}, {486, 352, 487, 357, 637, 639, 638, 514, 394, 660}, {295, 486, 487, 357, 510, 638, 679, 512, 514, 660}, {296, 22, 288, 166, 337, 305, 336, 604, 209, 680}, {361, 64, 2, 297, 401, 67, 414, 681, 342, 349}, {95, 97, 359, 73, 121, 653, 594, 122, 120, 388}, {423, 482, 417, 418, 620, 627, 460, 431, 618, 458}, {65, 295, 357, 66, 327, 512, 389, 69, 320, 380}, {97, 72, 359, 73, 129, 390, 653, 120, 76, 388}, {420, 223, 96, 485, 529, 649, 656, 528, 525, 675}, {159, 488, 293, 288, 682, 683, 650, 651, 684, 304}, {31, 165, 160, 354, 187, 186, 185, 377, 591, 590}, {484, 486, 487, 489, 502, 638, 560, 496, 503, 552}, {486, 295, 487, 287, 510, 679, 638, 629, 333, 662}, {59, 233, 226, 291, 282, 277, 256, 323, 647, 611}, {233, 355, 226, 291, 542, 663, 277, 647, 664, 611}, {425, 421, 489, 490, 449, 685, 580, 533, 517, 625}, {288, 488, 292, 85, 684, 622, 301, 300, 632, 302}, {421, 425, 489, 417, 449, 580, 685, 465, 463, 582}, {294, 228, 57, 290, 556, 238, 308, 307, 686, 306}, {165, 31, 358, 354, 187, 379, 555, 591, 377, 378}, {103, 356, 364, 73, 518, 410, 522, 149, 386, 412}, {352, 483, 358, 354, 595, 643, 395, 396, 589, 378}, {22, 159, 288, 166, 175, 651, 305, 209, 208, 680}, {356, 352, 359, 484, 400, 398, 387, 608, 598, 597}, {64, 361, 353, 297, 401, 402, 365, 342, 681, 577}, {355, 66, 357, 291, 382, 380, 381, 664, 318, 513}, {487, 486, 287, 489, 638, 629, 662, 552, 503, 630}, {298, 57, 490, 290, 339, 687, 534, 340, 306, 498}, {31, 362, 169, 6, 408, 671, 215, 35, 415, 220}, {488, 425, 292, 85, 579, 621, 622, 632, 441, 302}, {483, 352, 359, 354, 595, 398, 596, 589, 396, 372}, {94, 78, 418, 426, 111, 435, 673, 688, 468, 467}, {229, 43, 44, 100, 241, 47, 262, 506, 116, 132}, {31, 165, 358, 30, 187, 555, 379, 34, 196, 391}, {429, 231, 52, 490, 640, 281, 475, 516, 547, 546}, {94, 102, 78, 426, 144, 145, 111, 688, 559, 468}, {421, 429, 52, 490, 476, 475, 451, 517, 516, 546}, {364, 103, 73, 4, 522, 149, 412, 416, 153, 77}, {420, 227, 424, 50, 527, 571, 437, 438, 235, 436}, {104, 80, 5, 428, 152, 84, 156, 689, 473, 478}, {227, 51, 52, 424, 260, 55, 255, 571, 456, 453}, {487, 289, 293, 287, 600, 313, 601, 662, 331, 328}, {166, 159, 288, 488, 208, 651, 680, 690, 682, 684}, {289, 161, 353, 487, 586, 562, 578, 600, 564, 566}, {482, 485, 489, 417, 548, 495, 539, 627, 544, 582}, {50, 227, 424, 51, 235, 571, 436, 54, 260, 456}, {488, 489, 287, 292, 538, 630, 661, 622, 623, 330}, {482, 483, 157, 488, 535, 616, 665, 536, 537, 645}, {80, 420, 104, 96, 445, 657, 152, 126, 656, 150}, {232, 104, 45, 5, 691, 151, 279, 286, 156, 49}, {288, 488, 287, 292, 684, 661, 329, 301, 622, 330}, {295, 289, 487, 287, 310, 600, 679, 333, 331, 662}, {157, 161, 163, 487, 202, 192, 201, 644, 564, 602}, {483, 482, 164, 98, 535, 692, 654, 694, 693, 558}, {3, 296, 85, 427, 350, 338, 88, 479, 631, 471}, {92, 483, 93, 98, 530, 668, 133, 135, 694, 110}, {95, 484, 100, 225, 554, 655, 115, 593, 636, 695}, {231, 224, 490, 57, 273, 545, 547, 274, 240, 687}, {64, 289, 353, 357, 311, 578, 365, 367, 659, 366}, {2, 297, 24, 168, 349, 344, 28, 218, 696, 217}, {361, 297, 168, 353, 681, 696, 652, 402, 577, 697}, {353, 161, 168, 29, 562, 212, 697, 370, 181, 213}, {289, 295, 487, 357, 310, 679, 600, 659, 512, 660}, {352, 353, 487, 357, 393, 566, 639, 394, 366, 660}, {361, 353, 168, 29, 402, 697, 652, 403, 370, 213}, {484, 229, 100, 225, 574, 506, 655, 636, 242, 695}, {104, 223, 232, 45, 648, 271, 691, 151, 247, 279}, {160, 164, 8, 98, 177, 176, 178, 678, 558, 109}, {164, 9, 8, 98, 197, 12, 176, 558, 131, 109}, {165, 161, 358, 29, 180, 563, 555, 179, 181, 368}, {297, 361, 168, 2, 681, 652, 696, 349, 414, 218}, {161, 353, 358, 29, 562, 369, 563, 181, 370, 368}, {230, 37, 38, 360, 261, 41, 252, 605, 392, 383}, {43, 95, 100, 225, 114, 115, 116, 243, 593, 695}, {420, 80, 104, 428, 445, 152, 657, 469, 473, 689}, {232, 104, 5, 428, 691, 156, 286, 642, 689, 478}, {59, 299, 233, 291, 346, 507, 282, 323, 345, 647}, {355, 363, 66, 291, 407, 409, 382, 664, 646, 318}, {158, 94, 418, 426, 540, 673, 614, 677, 688, 467}, {87, 429, 298, 1, 477, 603, 343, 91, 481, 348}, {420, 227, 485, 424, 527, 526, 528, 437, 571, 543}, {482, 422, 418, 99, 626, 434, 618, 674, 569, 666}, {229, 43, 100, 225, 241, 116, 506, 242, 243, 695}, {294, 486, 287, 291, 609, 629, 334, 322, 511, 335}, {17, 166, 419, 159, 216, 698, 444, 188, 208, 699}, {419, 166, 17, 427, 698, 216, 444, 472, 613, 474}, {166, 488, 419, 159, 690, 634, 698, 208, 682, 699}, {419, 488, 166, 427, 634, 690, 698, 472, 633, 613}, {160, 98, 483, 164, 678, 694, 588, 177, 558, 654}, {483, 98, 160, 93, 694, 678, 588, 668, 110, 670}, {226, 360, 486, 355, 700, 701, 610, 663, 375, 658}, {360, 36, 226, 230, 376, 246, 700, 605, 244, 245}, {226, 36, 360, 355, 246, 376, 700, 663, 374, 375}, {93, 169, 362, 101, 568, 671, 702, 142, 567, 667}, {93, 362, 71, 101, 702, 405, 107, 142, 667, 141}, {71, 362, 93, 354, 405, 702, 107, 373, 404, 669}, {489, 424, 417, 485, 572, 464, 582, 495, 543, 544}, {417, 424, 489, 421, 464, 572, 582, 465, 452, 685}, {102, 10, 158, 94, 148, 182, 703, 144, 119, 540}, {158, 10, 102, 167, 182, 148, 703, 206, 214, 557}, {102, 158, 426, 94, 703, 677, 559, 144, 540, 688}, {426, 158, 102, 167, 677, 703, 559, 549, 206, 557}, {421, 489, 227, 424, 685, 570, 704, 452, 572, 571}, {52, 421, 227, 424, 451, 704, 255, 453, 452, 571}, {489, 227, 222, 224, 570, 263, 501, 705, 254, 265}, {489, 222, 227, 485, 501, 263, 570, 495, 515, 526}, {87, 425, 292, 490, 448, 621, 315, 497, 533, 499}, {292, 425, 87, 86, 621, 448, 315, 324, 457, 90}, {104, 420, 232, 223, 657, 706, 691, 648, 529, 271}, {104, 232, 420, 428, 691, 706, 657, 689, 642, 469}, {232, 420, 50, 223, 706, 438, 272, 271, 529, 237}, {232, 50, 420, 428, 272, 438, 706, 642, 470, 469}, {226, 484, 360, 230, 635, 607, 700, 245, 606, 605}, {226, 360, 484, 486, 700, 607, 635, 610, 701, 502}, {486, 360, 352, 355, 701, 399, 637, 658, 375, 397}, {352, 360, 486, 484, 399, 701, 637, 598, 607, 502}, {162, 488, 157, 159, 707, 645, 198, 189, 682, 200}, {157, 488, 162, 482, 645, 707, 198, 665, 536, 619}, {490, 57, 429, 231, 687, 708, 516, 547, 274, 640}, {429, 57, 490, 298, 708, 687, 516, 603, 339, 534}, {57, 1, 429, 231, 60, 481, 708, 274, 284, 640}, {429, 1, 57, 298, 481, 60, 708, 603, 348, 339}, {158, 98, 482, 94, 541, 693, 617, 540, 117, 672}, {482, 98, 158, 164, 693, 541, 617, 692, 558, 183}, {353, 297, 161, 289, 577, 709, 562, 578, 341, 586}, {353, 161, 297, 168, 562, 709, 577, 697, 212, 696}, {161, 297, 24, 289, 709, 344, 191, 586, 341, 312}, {161, 24, 297, 168, 191, 344, 709, 212, 217, 696}, {159, 293, 487, 163, 650, 601, 710, 174, 584, 602}, {487, 293, 159, 488, 601, 650, 710, 551, 683, 682}, {159, 487, 157, 163, 710, 644, 200, 174, 602, 201}, {157, 487, 159, 488, 644, 710, 200, 645, 551, 682}, {290, 228, 486, 294, 686, 612, 628, 307, 556, 609}, {290, 486, 228, 489, 628, 612, 686, 624, 503, 711}, {485, 99, 420, 422, 676, 712, 528, 576, 569, 446}, {420, 99, 485, 96, 712, 676, 528, 656, 127, 675}, {99, 80, 420, 422, 128, 445, 712, 569, 447, 446}, {420, 80, 99, 96, 445, 128, 712, 656, 126, 127}, {96, 484, 229, 100, 713, 574, 505, 124, 655, 506}, {92, 96, 484, 485, 140, 713, 531, 532, 675, 492}, {92, 484, 96, 100, 531, 713, 140, 139, 655, 124}, {161, 358, 483, 165, 563, 643, 714, 180, 555, 587}, {483, 358, 161, 487, 643, 563, 714, 550, 565, 564}, {161, 483, 157, 165, 714, 616, 202, 180, 587, 205}, {157, 483, 161, 487, 616, 714, 202, 644, 550, 564}, {362, 31, 160, 354, 408, 185, 715, 404, 377, 590}, {160, 31, 362, 169, 185, 408, 715, 210, 215, 671}, {362, 160, 93, 354, 715, 670, 702, 404, 590, 669}, {93, 160, 362, 169, 670, 715, 702, 568, 210, 671}, {482, 164, 157, 483, 692, 203, 665, 535, 654, 616}, {157, 164, 482, 158, 203, 692, 665, 199, 183, 617}, {228, 489, 222, 224, 711, 501, 266, 239, 705, 265}, {222, 489, 228, 486, 501, 711, 266, 504, 503, 612}, {288, 166, 427, 296, 680, 613, 716, 336, 604, 631}, {288, 427, 166, 488, 716, 613, 680, 684, 633, 690}, {85, 288, 427, 296, 300, 716, 471, 338, 336, 631}, {85, 427, 288, 488, 471, 716, 300, 632, 633, 684}, {484, 223, 96, 229, 575, 649, 713, 574, 248, 505}, {484, 96, 223, 485, 713, 649, 575, 492, 675, 525}, {488, 293, 287, 487, 683, 328, 661, 551, 601, 662}, {287, 293, 488, 288, 328, 683, 661, 329, 304, 684}, {419, 488, 162, 159, 634, 707, 717, 699, 682, 189}, {162, 419, 17, 423, 717, 444, 190, 561, 443, 442}, {17, 419, 162, 159, 444, 717, 190, 188, 699, 189}, {482, 98, 92, 94, 693, 135, 573, 672, 117, 136}, {92, 98, 482, 483, 135, 693, 573, 530, 694, 535}, {358, 487, 352, 353, 565, 639, 395, 369, 566, 393}, {352, 487, 358, 483, 639, 565, 395, 595, 550, 643}, {359, 483, 93, 97, 596, 668, 718, 653, 641, 105}, {359, 93, 483, 354, 718, 668, 596, 372, 669, 589}, {71, 359, 93, 97, 371, 718, 107, 106, 653, 105}, {71, 93, 359, 354, 107, 718, 371, 373, 669, 372}, {52, 490, 227, 421, 546, 719, 255, 451, 517, 704}, {227, 490, 52, 224, 719, 546, 255, 254, 545, 253}, {490, 489, 227, 421, 625, 570, 719, 517, 685, 704}, {227, 489, 490, 224, 570, 625, 719, 254, 705, 545}, {57, 490, 228, 224, 687, 720, 238, 240, 545, 239}, {228, 490, 57, 290, 720, 687, 238, 686, 498, 306}, {490, 489, 228, 224, 625, 711, 720, 545, 705, 239}, {228, 489, 490, 290, 711, 625, 720, 686, 624, 498}, {162, 419, 482, 488, 717, 721, 619, 707, 634, 536}, {482, 419, 162, 423, 721, 717, 619, 620, 443, 561}, {419, 417, 482, 488, 461, 627, 721, 634, 581, 536}, {482, 417, 419, 423, 627, 461, 721, 620, 460, 443}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 8
+ + nb vectors : 7
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 48
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{6, 8, 11}, {8, 9, 12}, {9, 10, 13}, {10, 7, 14}, {7, 15, 18}, {15, 16, 19}, {16, 17, 20}, {17, 3, 21}, {3, 22, 25}, {22, 23, 26}, {23, 24, 27}, {24, 2, 28}, {2, 29, 32}, {29, 30, 33}, {30, 31, 34}, {31, 6, 35}, {0, 36, 39}, {36, 37, 40}, {37, 38, 41}, {38, 4, 42}, {4, 43, 46}, {43, 44, 47}, {44, 45, 48}, {45, 5, 49}, {5, 50, 53}, {50, 51, 54}, {51, 52, 55}, {52, 1, 56}, {1, 57, 60}, {57, 58, 61}, {58, 59, 62}, {59, 0, 63}, {2, 64, 67}, {64, 65, 68}, {65, 66, 69}, {66, 0, 70}, {6, 71, 74}, {71, 72, 75}, {72, 73, 76}, {73, 4, 77}, {7, 78, 81}, {78, 79, 82}, {79, 80, 83}, {80, 5, 84}, {3, 85, 88}, {85, 86, 89}, {86, 87, 90}, {87, 1, 91}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_10
+ size : 341
+ nb_component : 10
+ allocated size : 2000
+ memory size : 78kB
+ values : {{484, 483, 485, 489, 491, 493, 492, 496, 494, 495}, {87, 290, 490, 292, 317, 498, 497, 315, 316, 499}, {222, 484, 489, 486, 500, 496, 501, 504, 502, 503}, {96, 229, 45, 100, 505, 249, 125, 124, 506, 123}, {59, 0, 233, 299, 63, 283, 282, 346, 351, 507}, {0, 363, 233, 299, 413, 508, 283, 351, 509, 507}, {486, 295, 291, 357, 510, 319, 511, 514, 512, 513}, {484, 222, 489, 485, 500, 501, 496, 492, 515, 495}, {87, 429, 421, 490, 477, 476, 450, 497, 516, 517}, {103, 356, 234, 364, 518, 520, 519, 522, 410, 521}, {356, 103, 234, 225, 518, 519, 520, 524, 523, 275}, {43, 103, 225, 234, 146, 523, 243, 276, 519, 275}, {223, 227, 485, 420, 236, 526, 525, 529, 527, 528}, {483, 92, 484, 485, 530, 531, 491, 493, 532, 492}, {87, 421, 425, 490, 450, 449, 448, 497, 517, 533}, {298, 87, 290, 490, 343, 317, 340, 534, 497, 498}, {482, 483, 488, 489, 535, 537, 536, 539, 494, 538}, {94, 10, 158, 98, 119, 182, 540, 117, 118, 541}, {355, 363, 233, 36, 407, 508, 542, 374, 406, 278}, {485, 420, 424, 417, 528, 437, 543, 544, 462, 464}, {231, 224, 52, 490, 273, 253, 281, 547, 545, 546}, {483, 482, 485, 489, 535, 548, 493, 494, 539, 495}, {167, 15, 7, 426, 207, 18, 221, 549, 466, 480}, {483, 487, 488, 489, 550, 551, 537, 494, 552, 538}, {484, 92, 97, 95, 531, 134, 553, 554, 137, 121}, {29, 165, 30, 358, 179, 196, 33, 368, 555, 391}, {228, 294, 58, 59, 556, 326, 259, 258, 321, 62}, {102, 10, 7, 167, 148, 14, 155, 557, 214, 221}, {9, 10, 98, 164, 13, 118, 131, 197, 184, 558}, {78, 102, 7, 426, 145, 155, 81, 468, 559, 480}, {483, 484, 487, 489, 491, 560, 550, 494, 496, 552}, {16, 423, 162, 17, 454, 561, 195, 20, 442, 190}, {353, 161, 358, 487, 562, 563, 369, 566, 564, 565}, {93, 101, 8, 169, 142, 143, 108, 568, 567, 211}, {78, 422, 79, 99, 433, 455, 82, 112, 569, 130}, {485, 227, 489, 424, 526, 570, 495, 543, 571, 572}, {482, 92, 483, 485, 573, 530, 535, 548, 532, 493}, {223, 222, 229, 484, 264, 268, 248, 575, 500, 574}, {422, 420, 485, 417, 446, 528, 576, 459, 462, 544}, {64, 297, 353, 289, 342, 577, 365, 311, 341, 578}, {101, 6, 8, 169, 154, 11, 143, 567, 220, 211}, {425, 488, 489, 417, 579, 538, 580, 463, 581, 582}, {163, 161, 24, 293, 192, 191, 193, 584, 583, 314}, {228, 294, 59, 226, 556, 321, 258, 257, 585, 256}, {161, 289, 24, 293, 586, 312, 191, 583, 313, 314}, {165, 483, 160, 354, 587, 588, 186, 591, 589, 590}, {103, 356, 95, 225, 518, 592, 147, 523, 524, 593}, {356, 95, 359, 73, 592, 594, 387, 386, 122, 388}, {352, 483, 359, 484, 595, 596, 398, 598, 491, 597}, {103, 43, 4, 234, 146, 46, 153, 519, 276, 285}, {230, 356, 38, 225, 599, 385, 252, 251, 524, 250}, {161, 289, 293, 487, 586, 313, 583, 564, 600, 601}, {161, 487, 293, 163, 564, 601, 583, 192, 602, 584}, {429, 87, 298, 490, 477, 343, 603, 516, 497, 534}, {364, 38, 234, 4, 411, 280, 521, 416, 42, 285}, {22, 296, 3, 166, 337, 350, 25, 209, 604, 219}, {230, 37, 360, 36, 261, 392, 605, 244, 40, 376}, {356, 230, 360, 484, 599, 605, 384, 608, 606, 607}, {22, 23, 293, 163, 26, 325, 303, 173, 194, 584}, {294, 486, 291, 226, 609, 511, 322, 585, 610, 611}, {294, 228, 486, 226, 556, 612, 609, 585, 257, 610}, {3, 17, 166, 427, 21, 216, 219, 479, 474, 613}, {364, 103, 4, 234, 522, 153, 416, 521, 519, 285}, {158, 15, 418, 162, 172, 430, 614, 171, 170, 615}, {15, 423, 418, 162, 432, 431, 430, 170, 561, 615}, {157, 483, 160, 165, 616, 588, 204, 205, 587, 186}, {482, 158, 418, 162, 617, 614, 618, 619, 171, 615}, {423, 482, 418, 162, 620, 618, 431, 561, 619, 615}, {425, 488, 292, 489, 579, 622, 621, 580, 538, 623}, {290, 489, 490, 292, 624, 625, 498, 316, 623, 499}, {222, 223, 485, 484, 264, 525, 515, 500, 575, 492}, {363, 0, 66, 299, 413, 70, 409, 509, 351, 347}, {482, 422, 485, 417, 626, 576, 548, 627, 459, 544}, {486, 290, 287, 489, 628, 332, 629, 503, 624, 630}, {296, 3, 166, 427, 350, 219, 604, 631, 479, 613}, {489, 290, 287, 292, 624, 332, 630, 623, 316, 330}, {488, 85, 427, 419, 632, 471, 633, 634, 439, 472}, {425, 488, 419, 85, 579, 634, 440, 441, 632, 439}, {15, 16, 423, 162, 19, 454, 432, 170, 195, 561}, {65, 64, 357, 295, 68, 367, 389, 327, 309, 512}, {222, 484, 486, 226, 500, 502, 504, 267, 635, 610}, {356, 484, 95, 225, 608, 554, 592, 524, 636, 593}, {352, 484, 486, 487, 598, 502, 637, 639, 560, 638}, {230, 222, 484, 225, 270, 500, 606, 251, 269, 636}, {294, 228, 58, 57, 556, 259, 326, 308, 238, 61}, {352, 483, 484, 487, 595, 491, 598, 639, 550, 560}, {23, 163, 24, 293, 194, 193, 27, 325, 584, 314}, {429, 231, 1, 52, 640, 284, 481, 475, 281, 56}, {228, 222, 486, 226, 266, 504, 612, 257, 267, 610}, {482, 422, 417, 418, 626, 459, 627, 618, 434, 458}, {489, 425, 490, 292, 580, 533, 625, 623, 621, 499}, {483, 92, 97, 484, 530, 134, 641, 491, 531, 553}, {50, 232, 5, 428, 272, 286, 53, 470, 642, 478}, {483, 165, 358, 354, 587, 555, 643, 589, 591, 378}, {157, 483, 487, 488, 616, 550, 644, 645, 537, 551}, {425, 488, 417, 419, 579, 581, 463, 440, 634, 461}, {222, 230, 484, 226, 270, 606, 500, 267, 245, 635}, {299, 363, 233, 291, 509, 508, 507, 345, 646, 647}, {103, 356, 73, 95, 518, 386, 149, 147, 592, 122}, {229, 44, 45, 100, 262, 48, 249, 506, 132, 123}, {356, 230, 38, 360, 599, 252, 385, 384, 605, 383}, {104, 223, 45, 96, 648, 247, 151, 150, 649, 125}, {22, 159, 293, 288, 175, 650, 303, 305, 651, 304}, {352, 356, 360, 484, 400, 384, 399, 598, 608, 607}, {2, 361, 168, 29, 414, 652, 218, 32, 403, 213}, {484, 483, 359, 97, 491, 596, 597, 553, 641, 653}, {483, 157, 160, 164, 616, 204, 588, 654, 203, 177}, {92, 484, 100, 95, 531, 655, 139, 137, 554, 115}, {223, 420, 96, 104, 529, 656, 649, 648, 657, 150}, {85, 425, 292, 86, 441, 621, 302, 89, 457, 324}, {355, 352, 486, 357, 397, 637, 658, 381, 394, 514}, {353, 289, 487, 357, 578, 600, 566, 366, 659, 660}, {66, 295, 357, 291, 320, 512, 380, 318, 319, 513}, {488, 487, 287, 489, 551, 662, 661, 538, 552, 630}, {486, 294, 287, 290, 609, 334, 629, 628, 307, 332}, {227, 223, 485, 222, 236, 525, 526, 263, 264, 515}, {355, 486, 226, 291, 658, 610, 663, 664, 511, 611}, {43, 103, 95, 225, 146, 147, 114, 243, 523, 593}, {356, 230, 484, 225, 599, 606, 608, 524, 251, 636}, {64, 295, 289, 357, 309, 310, 311, 367, 512, 659}, {157, 482, 162, 158, 665, 619, 198, 199, 617, 171}, {223, 229, 45, 96, 248, 249, 247, 649, 505, 125}, {222, 229, 484, 225, 268, 574, 500, 269, 242, 636}, {422, 78, 418, 99, 433, 435, 434, 569, 112, 666}, {422, 80, 79, 99, 447, 83, 455, 569, 128, 130}, {159, 22, 293, 163, 175, 303, 650, 174, 173, 584}, {101, 362, 71, 6, 667, 405, 141, 154, 415, 74}, {93, 483, 354, 160, 668, 589, 669, 670, 588, 590}, {355, 486, 291, 357, 658, 511, 664, 381, 514, 513}, {362, 101, 169, 6, 667, 567, 671, 415, 154, 220}, {94, 482, 418, 99, 672, 618, 673, 113, 674, 666}, {488, 482, 489, 417, 536, 539, 538, 581, 627, 582}, {484, 356, 95, 359, 608, 592, 554, 597, 387, 594}, {363, 355, 233, 291, 407, 542, 508, 646, 664, 647}, {485, 92, 96, 99, 532, 140, 675, 676, 138, 127}, {78, 94, 418, 99, 111, 673, 435, 112, 113, 666}, {92, 483, 97, 93, 530, 641, 134, 133, 668, 105}, {484, 95, 97, 359, 554, 121, 553, 597, 594, 653}, {72, 71, 97, 359, 75, 106, 129, 390, 371, 653}, {94, 482, 99, 92, 672, 674, 113, 136, 573, 138}, {102, 167, 7, 426, 557, 221, 155, 559, 549, 480}, {10, 164, 158, 98, 184, 183, 182, 118, 558, 541}, {482, 422, 99, 485, 626, 569, 674, 548, 576, 676}, {15, 158, 426, 167, 172, 677, 466, 207, 206, 549}, {92, 482, 99, 485, 573, 674, 138, 532, 548, 676}, {158, 15, 426, 418, 172, 466, 677, 614, 430, 467}, {38, 356, 234, 225, 385, 520, 280, 250, 524, 275}, {94, 482, 158, 418, 672, 617, 540, 673, 618, 614}, {364, 356, 234, 38, 410, 520, 521, 411, 385, 280}, {93, 160, 8, 98, 670, 178, 108, 110, 678, 109}, {355, 233, 226, 36, 542, 277, 663, 374, 278, 246}, {160, 93, 8, 169, 670, 108, 178, 210, 568, 211}, {227, 223, 50, 420, 236, 237, 235, 527, 529, 438}, {363, 0, 233, 36, 413, 283, 508, 406, 39, 278}, {486, 295, 287, 291, 510, 333, 629, 511, 319, 335}, {59, 294, 291, 226, 321, 322, 323, 256, 585, 611}, {66, 363, 299, 291, 409, 509, 347, 318, 646, 345}, {486, 352, 487, 357, 637, 639, 638, 514, 394, 660}, {295, 486, 487, 357, 510, 638, 679, 512, 514, 660}, {296, 22, 288, 166, 337, 305, 336, 604, 209, 680}, {361, 64, 2, 297, 401, 67, 414, 681, 342, 349}, {95, 97, 359, 73, 121, 653, 594, 122, 120, 388}, {423, 482, 417, 418, 620, 627, 460, 431, 618, 458}, {65, 295, 357, 66, 327, 512, 389, 69, 320, 380}, {97, 72, 359, 73, 129, 390, 653, 120, 76, 388}, {420, 223, 96, 485, 529, 649, 656, 528, 525, 675}, {159, 488, 293, 288, 682, 683, 650, 651, 684, 304}, {31, 165, 160, 354, 187, 186, 185, 377, 591, 590}, {484, 486, 487, 489, 502, 638, 560, 496, 503, 552}, {486, 295, 487, 287, 510, 679, 638, 629, 333, 662}, {59, 233, 226, 291, 282, 277, 256, 323, 647, 611}, {233, 355, 226, 291, 542, 663, 277, 647, 664, 611}, {425, 421, 489, 490, 449, 685, 580, 533, 517, 625}, {288, 488, 292, 85, 684, 622, 301, 300, 632, 302}, {421, 425, 489, 417, 449, 580, 685, 465, 463, 582}, {294, 228, 57, 290, 556, 238, 308, 307, 686, 306}, {165, 31, 358, 354, 187, 379, 555, 591, 377, 378}, {103, 356, 364, 73, 518, 410, 522, 149, 386, 412}, {352, 483, 358, 354, 595, 643, 395, 396, 589, 378}, {22, 159, 288, 166, 175, 651, 305, 209, 208, 680}, {356, 352, 359, 484, 400, 398, 387, 608, 598, 597}, {64, 361, 353, 297, 401, 402, 365, 342, 681, 577}, {355, 66, 357, 291, 382, 380, 381, 664, 318, 513}, {487, 486, 287, 489, 638, 629, 662, 552, 503, 630}, {298, 57, 490, 290, 339, 687, 534, 340, 306, 498}, {31, 362, 169, 6, 408, 671, 215, 35, 415, 220}, {488, 425, 292, 85, 579, 621, 622, 632, 441, 302}, {483, 352, 359, 354, 595, 398, 596, 589, 396, 372}, {94, 78, 418, 426, 111, 435, 673, 688, 468, 467}, {229, 43, 44, 100, 241, 47, 262, 506, 116, 132}, {31, 165, 358, 30, 187, 555, 379, 34, 196, 391}, {429, 231, 52, 490, 640, 281, 475, 516, 547, 546}, {94, 102, 78, 426, 144, 145, 111, 688, 559, 468}, {421, 429, 52, 490, 476, 475, 451, 517, 516, 546}, {364, 103, 73, 4, 522, 149, 412, 416, 153, 77}, {420, 227, 424, 50, 527, 571, 437, 438, 235, 436}, {104, 80, 5, 428, 152, 84, 156, 689, 473, 478}, {227, 51, 52, 424, 260, 55, 255, 571, 456, 453}, {487, 289, 293, 287, 600, 313, 601, 662, 331, 328}, {166, 159, 288, 488, 208, 651, 680, 690, 682, 684}, {289, 161, 353, 487, 586, 562, 578, 600, 564, 566}, {482, 485, 489, 417, 548, 495, 539, 627, 544, 582}, {50, 227, 424, 51, 235, 571, 436, 54, 260, 456}, {488, 489, 287, 292, 538, 630, 661, 622, 623, 330}, {482, 483, 157, 488, 535, 616, 665, 536, 537, 645}, {80, 420, 104, 96, 445, 657, 152, 126, 656, 150}, {232, 104, 45, 5, 691, 151, 279, 286, 156, 49}, {288, 488, 287, 292, 684, 661, 329, 301, 622, 330}, {295, 289, 487, 287, 310, 600, 679, 333, 331, 662}, {157, 161, 163, 487, 202, 192, 201, 644, 564, 602}, {483, 482, 164, 98, 535, 692, 654, 694, 693, 558}, {3, 296, 85, 427, 350, 338, 88, 479, 631, 471}, {92, 483, 93, 98, 530, 668, 133, 135, 694, 110}, {95, 484, 100, 225, 554, 655, 115, 593, 636, 695}, {231, 224, 490, 57, 273, 545, 547, 274, 240, 687}, {64, 289, 353, 357, 311, 578, 365, 367, 659, 366}, {2, 297, 24, 168, 349, 344, 28, 218, 696, 217}, {361, 297, 168, 353, 681, 696, 652, 402, 577, 697}, {353, 161, 168, 29, 562, 212, 697, 370, 181, 213}, {289, 295, 487, 357, 310, 679, 600, 659, 512, 660}, {352, 353, 487, 357, 393, 566, 639, 394, 366, 660}, {361, 353, 168, 29, 402, 697, 652, 403, 370, 213}, {484, 229, 100, 225, 574, 506, 655, 636, 242, 695}, {104, 223, 232, 45, 648, 271, 691, 151, 247, 279}, {160, 164, 8, 98, 177, 176, 178, 678, 558, 109}, {164, 9, 8, 98, 197, 12, 176, 558, 131, 109}, {165, 161, 358, 29, 180, 563, 555, 179, 181, 368}, {297, 361, 168, 2, 681, 652, 696, 349, 414, 218}, {161, 353, 358, 29, 562, 369, 563, 181, 370, 368}, {230, 37, 38, 360, 261, 41, 252, 605, 392, 383}, {43, 95, 100, 225, 114, 115, 116, 243, 593, 695}, {420, 80, 104, 428, 445, 152, 657, 469, 473, 689}, {232, 104, 5, 428, 691, 156, 286, 642, 689, 478}, {59, 299, 233, 291, 346, 507, 282, 323, 345, 647}, {355, 363, 66, 291, 407, 409, 382, 664, 646, 318}, {158, 94, 418, 426, 540, 673, 614, 677, 688, 467}, {87, 429, 298, 1, 477, 603, 343, 91, 481, 348}, {420, 227, 485, 424, 527, 526, 528, 437, 571, 543}, {482, 422, 418, 99, 626, 434, 618, 674, 569, 666}, {229, 43, 100, 225, 241, 116, 506, 242, 243, 695}, {294, 486, 287, 291, 609, 629, 334, 322, 511, 335}, {17, 166, 419, 159, 216, 698, 444, 188, 208, 699}, {419, 166, 17, 427, 698, 216, 444, 472, 613, 474}, {166, 488, 419, 159, 690, 634, 698, 208, 682, 699}, {419, 488, 166, 427, 634, 690, 698, 472, 633, 613}, {160, 98, 483, 164, 678, 694, 588, 177, 558, 654}, {483, 98, 160, 93, 694, 678, 588, 668, 110, 670}, {226, 360, 486, 355, 700, 701, 610, 663, 375, 658}, {360, 36, 226, 230, 376, 246, 700, 605, 244, 245}, {226, 36, 360, 355, 246, 376, 700, 663, 374, 375}, {93, 169, 362, 101, 568, 671, 702, 142, 567, 667}, {93, 362, 71, 101, 702, 405, 107, 142, 667, 141}, {71, 362, 93, 354, 405, 702, 107, 373, 404, 669}, {489, 424, 417, 485, 572, 464, 582, 495, 543, 544}, {417, 424, 489, 421, 464, 572, 582, 465, 452, 685}, {102, 10, 158, 94, 148, 182, 703, 144, 119, 540}, {158, 10, 102, 167, 182, 148, 703, 206, 214, 557}, {102, 158, 426, 94, 703, 677, 559, 144, 540, 688}, {426, 158, 102, 167, 677, 703, 559, 549, 206, 557}, {421, 489, 227, 424, 685, 570, 704, 452, 572, 571}, {52, 421, 227, 424, 451, 704, 255, 453, 452, 571}, {489, 227, 222, 224, 570, 263, 501, 705, 254, 265}, {489, 222, 227, 485, 501, 263, 570, 495, 515, 526}, {87, 425, 292, 490, 448, 621, 315, 497, 533, 499}, {292, 425, 87, 86, 621, 448, 315, 324, 457, 90}, {104, 420, 232, 223, 657, 706, 691, 648, 529, 271}, {104, 232, 420, 428, 691, 706, 657, 689, 642, 469}, {232, 420, 50, 223, 706, 438, 272, 271, 529, 237}, {232, 50, 420, 428, 272, 438, 706, 642, 470, 469}, {226, 484, 360, 230, 635, 607, 700, 245, 606, 605}, {226, 360, 484, 486, 700, 607, 635, 610, 701, 502}, {486, 360, 352, 355, 701, 399, 637, 658, 375, 397}, {352, 360, 486, 484, 399, 701, 637, 598, 607, 502}, {162, 488, 157, 159, 707, 645, 198, 189, 682, 200}, {157, 488, 162, 482, 645, 707, 198, 665, 536, 619}, {490, 57, 429, 231, 687, 708, 516, 547, 274, 640}, {429, 57, 490, 298, 708, 687, 516, 603, 339, 534}, {57, 1, 429, 231, 60, 481, 708, 274, 284, 640}, {429, 1, 57, 298, 481, 60, 708, 603, 348, 339}, {158, 98, 482, 94, 541, 693, 617, 540, 117, 672}, {482, 98, 158, 164, 693, 541, 617, 692, 558, 183}, {353, 297, 161, 289, 577, 709, 562, 578, 341, 586}, {353, 161, 297, 168, 562, 709, 577, 697, 212, 696}, {161, 297, 24, 289, 709, 344, 191, 586, 341, 312}, {161, 24, 297, 168, 191, 344, 709, 212, 217, 696}, {159, 293, 487, 163, 650, 601, 710, 174, 584, 602}, {487, 293, 159, 488, 601, 650, 710, 551, 683, 682}, {159, 487, 157, 163, 710, 644, 200, 174, 602, 201}, {157, 487, 159, 488, 644, 710, 200, 645, 551, 682}, {290, 228, 486, 294, 686, 612, 628, 307, 556, 609}, {290, 486, 228, 489, 628, 612, 686, 624, 503, 711}, {485, 99, 420, 422, 676, 712, 528, 576, 569, 446}, {420, 99, 485, 96, 712, 676, 528, 656, 127, 675}, {99, 80, 420, 422, 128, 445, 712, 569, 447, 446}, {420, 80, 99, 96, 445, 128, 712, 656, 126, 127}, {96, 484, 229, 100, 713, 574, 505, 124, 655, 506}, {92, 96, 484, 485, 140, 713, 531, 532, 675, 492}, {92, 484, 96, 100, 531, 713, 140, 139, 655, 124}, {161, 358, 483, 165, 563, 643, 714, 180, 555, 587}, {483, 358, 161, 487, 643, 563, 714, 550, 565, 564}, {161, 483, 157, 165, 714, 616, 202, 180, 587, 205}, {157, 483, 161, 487, 616, 714, 202, 644, 550, 564}, {362, 31, 160, 354, 408, 185, 715, 404, 377, 590}, {160, 31, 362, 169, 185, 408, 715, 210, 215, 671}, {362, 160, 93, 354, 715, 670, 702, 404, 590, 669}, {93, 160, 362, 169, 670, 715, 702, 568, 210, 671}, {482, 164, 157, 483, 692, 203, 665, 535, 654, 616}, {157, 164, 482, 158, 203, 692, 665, 199, 183, 617}, {228, 489, 222, 224, 711, 501, 266, 239, 705, 265}, {222, 489, 228, 486, 501, 711, 266, 504, 503, 612}, {288, 166, 427, 296, 680, 613, 716, 336, 604, 631}, {288, 427, 166, 488, 716, 613, 680, 684, 633, 690}, {85, 288, 427, 296, 300, 716, 471, 338, 336, 631}, {85, 427, 288, 488, 471, 716, 300, 632, 633, 684}, {484, 223, 96, 229, 575, 649, 713, 574, 248, 505}, {484, 96, 223, 485, 713, 649, 575, 492, 675, 525}, {488, 293, 287, 487, 683, 328, 661, 551, 601, 662}, {287, 293, 488, 288, 328, 683, 661, 329, 304, 684}, {419, 488, 162, 159, 634, 707, 717, 699, 682, 189}, {162, 419, 17, 423, 717, 444, 190, 561, 443, 442}, {17, 419, 162, 159, 444, 717, 190, 188, 699, 189}, {482, 98, 92, 94, 693, 135, 573, 672, 117, 136}, {92, 98, 482, 483, 135, 693, 573, 530, 694, 535}, {358, 487, 352, 353, 565, 639, 395, 369, 566, 393}, {352, 487, 358, 483, 639, 565, 395, 595, 550, 643}, {359, 483, 93, 97, 596, 668, 718, 653, 641, 105}, {359, 93, 483, 354, 718, 668, 596, 372, 669, 589}, {71, 359, 93, 97, 371, 718, 107, 106, 653, 105}, {71, 93, 359, 354, 107, 718, 371, 373, 669, 372}, {52, 490, 227, 421, 546, 719, 255, 451, 517, 704}, {227, 490, 52, 224, 719, 546, 255, 254, 545, 253}, {490, 489, 227, 421, 625, 570, 719, 517, 685, 704}, {227, 489, 490, 224, 570, 625, 719, 254, 705, 545}, {57, 490, 228, 224, 687, 720, 238, 240, 545, 239}, {228, 490, 57, 290, 720, 687, 238, 686, 498, 306}, {490, 489, 228, 224, 625, 711, 720, 545, 705, 239}, {228, 489, 490, 290, 711, 625, 720, 686, 624, 498}, {162, 419, 482, 488, 717, 721, 619, 707, 634, 536}, {482, 419, 162, 423, 721, 717, 619, 620, 443, 561}, {419, 417, 482, 488, 461, 627, 721, 634, 581, 536}, {482, 417, 419, 423, 627, 461, 721, 620, 460, 443}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 240
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{93, 97, 71, 105, 106, 107}, {93, 8, 98, 108, 109, 110}, {94, 78, 99, 111, 112, 113}, {43, 95, 100, 114, 115, 116}, {94, 98, 10, 117, 118, 119}, {73, 97, 95, 120, 121, 122}, {45, 100, 96, 123, 124, 125}, {80, 96, 99, 126, 127, 128}, {71, 97, 72, 106, 129, 75}, {78, 79, 99, 82, 130, 112}, {8, 9, 98, 12, 131, 109}, {43, 100, 44, 116, 132, 47}, {72, 97, 73, 129, 120, 76}, {9, 10, 98, 13, 118, 131}, {79, 80, 99, 83, 128, 130}, {44, 100, 45, 132, 123, 48}, {93, 92, 97, 133, 134, 105}, {93, 98, 92, 110, 135, 133}, {94, 92, 98, 136, 135, 117}, {92, 95, 97, 137, 121, 134}, {94, 99, 92, 113, 138, 136}, {92, 100, 95, 139, 115, 137}, {92, 99, 96, 138, 127, 140}, {92, 96, 100, 140, 124, 139}, {93, 71, 101, 107, 141, 142}, {93, 101, 8, 142, 143, 108}, {94, 102, 78, 144, 145, 111}, {43, 103, 95, 146, 147, 114}, {94, 10, 102, 119, 148, 144}, {73, 95, 103, 122, 147, 149}, {45, 96, 104, 125, 150, 151}, {80, 104, 96, 152, 150, 126}, {4, 73, 103, 77, 149, 153}, {6, 101, 71, 154, 141, 74}, {7, 102, 10, 155, 148, 14}, {7, 78, 102, 81, 145, 155}, {6, 8, 101, 11, 143, 154}, {5, 104, 80, 156, 152, 84}, {4, 103, 43, 153, 146, 46}, {5, 45, 104, 49, 151, 156}, {15, 162, 158, 170, 171, 172}, {22, 163, 159, 173, 174, 175}, {8, 164, 160, 176, 177, 178}, {29, 165, 161, 179, 180, 181}, {10, 158, 164, 182, 183, 184}, {31, 160, 165, 185, 186, 187}, {17, 159, 162, 188, 189, 190}, {24, 161, 163, 191, 192, 193}, {22, 23, 163, 26, 194, 173}, {15, 16, 162, 19, 195, 170}, {29, 30, 165, 33, 196, 179}, {8, 9, 164, 12, 197, 176}, {16, 17, 162, 20, 190, 195}, {23, 24, 163, 27, 193, 194}, {9, 10, 164, 13, 184, 197}, {30, 31, 165, 34, 187, 196}, {158, 162, 157, 171, 198, 199}, {159, 157, 162, 200, 198, 189}, {159, 163, 157, 174, 201, 200}, {161, 157, 163, 202, 201, 192}, {158, 157, 164, 199, 203, 183}, {160, 164, 157, 177, 203, 204}, {160, 157, 165, 204, 205, 186}, {161, 165, 157, 180, 205, 202}, {15, 158, 167, 172, 206, 207}, {22, 159, 166, 175, 208, 209}, {8, 160, 169, 178, 210, 211}, {29, 161, 168, 181, 212, 213}, {10, 167, 158, 214, 206, 182}, {31, 169, 160, 215, 210, 185}, {17, 166, 159, 216, 208, 188}, {24, 168, 161, 217, 212, 191}, {2, 168, 24, 218, 217, 28}, {3, 166, 17, 219, 216, 21}, {6, 169, 31, 220, 215, 35}, {7, 167, 10, 221, 214, 14}, {7, 15, 167, 18, 207, 221}, {3, 22, 166, 25, 209, 219}, {6, 8, 169, 11, 211, 220}, {2, 29, 168, 32, 213, 218}, {50, 227, 223, 235, 236, 237}, {57, 228, 224, 238, 239, 240}, {43, 229, 225, 241, 242, 243}, {36, 230, 226, 244, 245, 246}, {45, 223, 229, 247, 248, 249}, {38, 225, 230, 250, 251, 252}, {52, 224, 227, 253, 254, 255}, {59, 226, 228, 256, 257, 258}, {57, 58, 228, 61, 259, 238}, {50, 51, 227, 54, 260, 235}, {36, 37, 230, 40, 261, 244}, {43, 44, 229, 47, 262, 241}, {51, 52, 227, 55, 255, 260}, {58, 59, 228, 62, 258, 259}, {44, 45, 229, 48, 249, 262}, {37, 38, 230, 41, 252, 261}, {223, 227, 222, 236, 263, 264}, {224, 222, 227, 265, 263, 254}, {224, 228, 222, 239, 266, 265}, {222, 228, 226, 266, 257, 267}, {223, 222, 229, 264, 268, 248}, {222, 225, 229, 269, 242, 268}, {222, 230, 225, 270, 251, 269}, {222, 226, 230, 267, 245, 270}, {50, 223, 232, 237, 271, 272}, {57, 224, 231, 240, 273, 274}, {43, 225, 234, 243, 275, 276}, {36, 226, 233, 246, 277, 278}, {45, 232, 223, 279, 271, 247}, {38, 234, 225, 280, 275, 250}, {52, 231, 224, 281, 273, 253}, {59, 233, 226, 282, 277, 256}, {0, 233, 59, 283, 282, 63}, {1, 231, 52, 284, 281, 56}, {4, 234, 38, 285, 280, 42}, {5, 232, 45, 286, 279, 49}, {5, 50, 232, 53, 272, 286}, {1, 57, 231, 60, 274, 284}, {4, 43, 234, 46, 276, 285}, {0, 36, 233, 39, 278, 283}, {85, 288, 292, 300, 301, 302}, {22, 293, 288, 303, 304, 305}, {57, 290, 294, 306, 307, 308}, {64, 295, 289, 309, 310, 311}, {24, 289, 293, 312, 313, 314}, {87, 292, 290, 315, 316, 317}, {66, 291, 295, 318, 319, 320}, {59, 294, 291, 321, 322, 323}, {85, 292, 86, 302, 324, 89}, {22, 23, 293, 26, 325, 303}, {57, 294, 58, 308, 326, 61}, {64, 65, 295, 68, 327, 309}, {86, 292, 87, 324, 315, 90}, {23, 24, 293, 27, 314, 325}, {65, 66, 295, 69, 320, 327}, {58, 294, 59, 326, 321, 62}, {288, 293, 287, 304, 328, 329}, {288, 287, 292, 329, 330, 301}, {289, 287, 293, 331, 328, 313}, {290, 292, 287, 316, 330, 332}, {289, 295, 287, 310, 333, 331}, {290, 287, 294, 332, 334, 307}, {291, 294, 287, 322, 334, 335}, {291, 287, 295, 335, 333, 319}, {22, 288, 296, 305, 336, 337}, {85, 296, 288, 338, 336, 300}, {57, 298, 290, 339, 340, 306}, {64, 289, 297, 311, 341, 342}, {87, 290, 298, 317, 340, 343}, {24, 297, 289, 344, 341, 312}, {59, 291, 299, 323, 345, 346}, {66, 299, 291, 347, 345, 318}, {1, 87, 298, 91, 343, 348}, {2, 297, 24, 349, 344, 28}, {3, 296, 85, 350, 338, 88}, {3, 22, 296, 25, 337, 350}, {1, 298, 57, 348, 339, 60}, {2, 64, 297, 67, 342, 349}, {0, 59, 299, 63, 346, 351}, {0, 299, 66, 351, 347, 70}, {64, 353, 357, 365, 366, 367}, {29, 358, 353, 368, 369, 370}, {71, 359, 354, 371, 372, 373}, {36, 355, 360, 374, 375, 376}, {31, 354, 358, 377, 378, 379}, {66, 357, 355, 380, 381, 382}, {38, 360, 356, 383, 384, 385}, {73, 356, 359, 386, 387, 388}, {64, 357, 65, 367, 389, 68}, {71, 72, 359, 75, 390, 371}, {29, 30, 358, 33, 391, 368}, {36, 360, 37, 376, 392, 40}, {65, 357, 66, 389, 380, 69}, {30, 31, 358, 34, 379, 391}, {72, 73, 359, 76, 388, 390}, {37, 360, 38, 392, 383, 41}, {353, 352, 357, 393, 394, 366}, {353, 358, 352, 369, 395, 393}, {354, 352, 358, 396, 395, 378}, {355, 357, 352, 381, 394, 397}, {354, 359, 352, 372, 398, 396}, {355, 352, 360, 397, 399, 375}, {356, 352, 359, 400, 398, 387}, {356, 360, 352, 384, 399, 400}, {64, 361, 353, 401, 402, 365}, {29, 353, 361, 370, 402, 403}, {71, 354, 362, 373, 404, 405}, {36, 363, 355, 406, 407, 374}, {31, 362, 354, 408, 404, 377}, {66, 355, 363, 382, 407, 409}, {38, 356, 364, 385, 410, 411}, {73, 364, 356, 412, 410, 386}, {0, 66, 363, 70, 409, 413}, {2, 361, 64, 414, 401, 67}, {6, 362, 31, 415, 408, 35}, {6, 71, 362, 74, 405, 415}, {2, 29, 361, 32, 403, 414}, {4, 364, 73, 416, 412, 77}, {0, 363, 36, 413, 406, 39}, {4, 38, 364, 42, 411, 416}, {15, 418, 423, 430, 431, 432}, {78, 422, 418, 433, 434, 435}, {50, 424, 420, 436, 437, 438}, {85, 419, 425, 439, 440, 441}, {17, 423, 419, 442, 443, 444}, {80, 420, 422, 445, 446, 447}, {87, 425, 421, 448, 449, 450}, {52, 421, 424, 451, 452, 453}, {15, 423, 16, 432, 454, 19}, {78, 79, 422, 82, 455, 433}, {50, 51, 424, 54, 456, 436}, {85, 425, 86, 441, 457, 89}, {79, 80, 422, 83, 447, 455}, {16, 423, 17, 454, 442, 20}, {86, 425, 87, 457, 448, 90}, {51, 52, 424, 55, 453, 456}, {417, 418, 422, 458, 434, 459}, {417, 423, 418, 460, 431, 458}, {419, 423, 417, 443, 460, 461}, {420, 417, 422, 462, 459, 446}, {419, 417, 425, 461, 463, 440}, {420, 424, 417, 437, 464, 462}, {421, 417, 424, 465, 464, 452}, {421, 425, 417, 449, 463, 465}, {15, 426, 418, 466, 467, 430}, {78, 418, 426, 435, 467, 468}, {50, 420, 428, 438, 469, 470}, {85, 427, 419, 471, 472, 439}, {80, 428, 420, 473, 469, 445}, {17, 419, 427, 444, 472, 474}, {52, 429, 421, 475, 476, 451}, {87, 421, 429, 450, 476, 477}, {5, 428, 80, 478, 473, 84}, {3, 17, 427, 21, 474, 479}, {7, 78, 426, 81, 468, 480}, {7, 426, 15, 480, 466, 18}, {5, 50, 428, 53, 470, 478}, {3, 427, 85, 479, 471, 88}, {1, 429, 52, 481, 475, 56}, {1, 87, 429, 91, 477, 481}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 722
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {0.125, 1, 1}, {0.375, 1, 1}, {0.625, 1, 1}, {0.875, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {1, 1, 0.875}, {1, 1, 0.625}, {1, 1, 0.375}, {1, 1, 0.125}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0.875, 1, 0}, {0.625, 1, 0}, {0.375, 1, 0}, {0.125, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 1, 0.125}, {0, 1, 0.375}, {0, 1, 0.625}, {0, 1, 0.875}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0, 0, 0.125}, {0, 0, 0.375}, {0, 0, 0.625}, {0, 0, 0.875}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {0.125, 0, 1}, {0.375, 0, 1}, {0.625, 0, 1}, {0.875, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {1, 0, 0.875}, {1, 0, 0.625}, {1, 0, 0.375}, {1, 0, 0.125}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0.875, 0, 0}, {0.625, 0, 0}, {0.375, 0, 0}, {0.125, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.875, 0}, {0, 0.625, 0}, {0, 0.375, 0}, {0, 0.125, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {0, 0.875, 1}, {0, 0.625, 1}, {0, 0.375, 1}, {0, 0.125, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.875, 1}, {1, 0.625, 1}, {1, 0.375, 1}, {1, 0.125, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {1, 0.875, 0}, {1, 0.625, 0}, {1, 0.375, 0}, {1, 0.125, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.234692, 0.610874, 1}, {0.095431, 0.625135, 1}, {0.139261, 0.735739, 1}, {0.264261, 0.860739, 1}, {0.375, 0.904691, 1}, {0.389261, 0.76543, 1}, {0.860739, 0.735739, 1}, {0.904569, 0.625135, 1}, {0.765308, 0.610874, 1}, {0.264261, 0.139383, 1}, {0.389261, 0.234962, 1}, {0.375, 0.0955798, 1}, {0.610739, 0.76543, 1}, {0.625, 0.904691, 1}, {0.735739, 0.860739, 1}, {0.095431, 0.375135, 1}, {0.234692, 0.389518, 1}, {0.139261, 0.264383, 1}, {0.625, 0.0955798, 1}, {0.610739, 0.234962, 1}, {0.735739, 0.139383, 1}, {0.860739, 0.264383, 1}, {0.765308, 0.389518, 1}, {0.904569, 0.375135, 1}, {0.095431, 0.500135, 1}, {0.904569, 0.500135, 1}, {0.5, 0.904691, 1}, {0.5, 0.0955798, 1}, {0.389261, 0.611834, 1}, {0.345431, 0.501231, 1}, {0.5, 0.655786, 1}, {0.610739, 0.611834, 1}, {0.389261, 0.390478, 1}, {0.654569, 0.501231, 1}, {0.5, 0.346675, 1}, {0.610739, 0.390478, 1}, {0.0709532, 0.804047, 1}, {0.210214, 0.789786, 1}, {0.195953, 0.929047, 1}, {0.789786, 0.789786, 1}, {0.929047, 0.804047, 1}, {0.195953, 0.0709735, 1}, {0.210214, 0.210356, 1}, {0.804047, 0.929047, 1}, {0.0709532, 0.195973, 1}, {0.789786, 0.210356, 1}, {0.804047, 0.0709735, 1}, {0.929047, 0.195973, 1}, {0.0709532, 0.0709735, 1}, {0.0709532, 0.929047, 1}, {0.929047, 0.929047, 1}, {0.929047, 0.0709735, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.904569, 1, 0.625}, {0.765308, 1, 0.610739}, {0.860739, 1, 0.735739}, {0.625, 1, 0.095431}, {0.610739, 1, 0.234692}, {0.735739, 1, 0.139261}, {0.375, 1, 0.904569}, {0.389261, 1, 0.765308}, {0.264261, 1, 0.860739}, {0.095431, 1, 0.375}, {0.234692, 1, 0.389261}, {0.139261, 1, 0.264261}, {0.735739, 1, 0.860739}, {0.610739, 1, 0.765308}, {0.625, 1, 0.904569}, {0.139261, 1, 0.735739}, {0.234692, 1, 0.610739}, {0.095431, 1, 0.625}, {0.860739, 1, 0.264261}, {0.765308, 1, 0.389261}, {0.904569, 1, 0.375}, {0.264261, 1, 0.139261}, {0.389261, 1, 0.234692}, {0.375, 1, 0.095431}, {0.5, 1, 0.095431}, {0.904569, 1, 0.5}, {0.095431, 1, 0.5}, {0.5, 1, 0.904569}, {0.654569, 1, 0.5}, {0.610739, 1, 0.610739}, {0.610739, 1, 0.389261}, {0.5, 1, 0.345431}, {0.389261, 1, 0.389261}, {0.5, 1, 0.654569}, {0.389261, 1, 0.610739}, {0.345431, 1, 0.5}, {0.789786, 1, 0.789786}, {0.929047, 1, 0.804047}, {0.789786, 1, 0.210214}, {0.804047, 1, 0.0709532}, {0.210214, 1, 0.789786}, {0.195953, 1, 0.929047}, {0.210214, 1, 0.210214}, {0.0709532, 1, 0.195953}, {0.804047, 1, 0.929047}, {0.0709532, 1, 0.804047}, {0.929047, 1, 0.195953}, {0.195953, 1, 0.0709532}, {0.0709532, 1, 0.0709532}, {0.929047, 1, 0.0709532}, {0.0709532, 1, 0.929047}, {0.929047, 1, 0.929047}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.904691, 0, 0.625}, {0.76543, 0, 0.610739}, {0.860739, 0, 0.735739}, {0.625135, 0, 0.095431}, {0.610874, 0, 0.234692}, {0.735739, 0, 0.139261}, {0.375135, 0, 0.904569}, {0.389518, 0, 0.765308}, {0.264383, 0, 0.860739}, {0.0955798, 0, 0.375}, {0.234962, 0, 0.389261}, {0.139383, 0, 0.264261}, {0.735739, 0, 0.860739}, {0.610874, 0, 0.765308}, {0.625135, 0, 0.904569}, {0.139383, 0, 0.735739}, {0.234962, 0, 0.610739}, {0.0955798, 0, 0.625}, {0.860739, 0, 0.264261}, {0.76543, 0, 0.389261}, {0.904691, 0, 0.375}, {0.264383, 0, 0.139261}, {0.389518, 0, 0.234692}, {0.375135, 0, 0.095431}, {0.500135, 0, 0.095431}, {0.904691, 0, 0.5}, {0.0955798, 0, 0.5}, {0.500135, 0, 0.904569}, {0.655786, 0, 0.5}, {0.611834, 0, 0.610739}, {0.611834, 0, 0.389261}, {0.501231, 0, 0.345431}, {0.390478, 0, 0.389261}, {0.501231, 0, 0.654569}, {0.390478, 0, 0.610739}, {0.346675, 0, 0.5}, {0.789786, 0, 0.789786}, {0.929047, 0, 0.804047}, {0.789786, 0, 0.210214}, {0.804047, 0, 0.0709532}, {0.210356, 0, 0.789786}, {0.195973, 0, 0.929047}, {0.210356, 0, 0.210214}, {0.0709735, 0, 0.195953}, {0.804047, 0, 0.929047}, {0.0709735, 0, 0.804047}, {0.929047, 0, 0.195953}, {0.195973, 0, 0.0709532}, {0.0709735, 0, 0.0709532}, {0.929047, 0, 0.0709532}, {0.0709735, 0, 0.929047}, {0.929047, 0, 0.929047}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0.860739, 0.735739, 0}, {0.765308, 0.610739, 0}, {0.904569, 0.625, 0}, {0.625, 0.904569, 0}, {0.610739, 0.765308, 0}, {0.735739, 0.860739, 0}, {0.735739, 0.139261, 0}, {0.610739, 0.234692, 0}, {0.625, 0.095431, 0}, {0.095431, 0.625, 0}, {0.234692, 0.610739, 0}, {0.139261, 0.735739, 0}, {0.264261, 0.860739, 0}, {0.389261, 0.765308, 0}, {0.375, 0.904569, 0}, {0.904569, 0.375, 0}, {0.765308, 0.389261, 0}, {0.860739, 0.264261, 0}, {0.139261, 0.264261, 0}, {0.234692, 0.389261, 0}, {0.095431, 0.375, 0}, {0.375, 0.095431, 0}, {0.389261, 0.234692, 0}, {0.264261, 0.139261, 0}, {0.904569, 0.5, 0}, {0.5, 0.904569, 0}, {0.5, 0.095431, 0}, {0.095431, 0.5, 0}, {0.5, 0.654569, 0}, {0.610739, 0.610739, 0}, {0.654569, 0.5, 0}, {0.389261, 0.610739, 0}, {0.610739, 0.389261, 0}, {0.345431, 0.5, 0}, {0.5, 0.345431, 0}, {0.389261, 0.389261, 0}, {0.789786, 0.789786, 0}, {0.804047, 0.929047, 0}, {0.929047, 0.804047, 0}, {0.804047, 0.0709532, 0}, {0.789786, 0.210214, 0}, {0.210214, 0.789786, 0}, {0.0709532, 0.804047, 0}, {0.929047, 0.195953, 0}, {0.195953, 0.929047, 0}, {0.210214, 0.210214, 0}, {0.195953, 0.0709532, 0}, {0.0709532, 0.195953, 0}, {0.929047, 0.0709532, 0}, {0.0709532, 0.929047, 0}, {0.929047, 0.929047, 0}, {0.0709532, 0.0709532, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {0, 0.735739, 0.139261}, {0, 0.610739, 0.234692}, {0, 0.625, 0.095431}, {0, 0.904569, 0.375}, {0, 0.765308, 0.389261}, {0, 0.860739, 0.264261}, {0, 0.625, 0.904569}, {0, 0.610739, 0.765308}, {0, 0.735739, 0.860739}, {0, 0.139261, 0.264261}, {0, 0.234692, 0.389261}, {0, 0.095431, 0.375}, {0, 0.860739, 0.735739}, {0, 0.765308, 0.610739}, {0, 0.904569, 0.625}, {0, 0.375, 0.095431}, {0, 0.389261, 0.234692}, {0, 0.264261, 0.139261}, {0, 0.095431, 0.625}, {0, 0.234692, 0.610739}, {0, 0.139261, 0.735739}, {0, 0.264261, 0.860739}, {0, 0.389261, 0.765308}, {0, 0.375, 0.904569}, {0, 0.5, 0.095431}, {0, 0.5, 0.904569}, {0, 0.904569, 0.5}, {0, 0.095431, 0.5}, {0, 0.610739, 0.389261}, {0, 0.5, 0.345431}, {0, 0.654569, 0.5}, {0, 0.610739, 0.610739}, {0, 0.389261, 0.389261}, {0, 0.5, 0.654569}, {0, 0.345431, 0.5}, {0, 0.389261, 0.610739}, {0, 0.804047, 0.0709532}, {0, 0.789786, 0.210214}, {0, 0.929047, 0.195953}, {0, 0.789786, 0.789786}, {0, 0.804047, 0.929047}, {0, 0.0709532, 0.195953}, {0, 0.210214, 0.210214}, {0, 0.929047, 0.804047}, {0, 0.195953, 0.0709532}, {0, 0.210214, 0.789786}, {0, 0.0709532, 0.804047}, {0, 0.195953, 0.929047}, {0, 0.0709532, 0.0709532}, {0, 0.929047, 0.0709532}, {0, 0.929047, 0.929047}, {0, 0.0709532, 0.929047}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {1, 0.860678, 0.735678}, {1, 0.76518, 0.610611}, {1, 0.904501, 0.624932}, {1, 0.624932, 0.904501}, {1, 0.610611, 0.76518}, {1, 0.735678, 0.860678}, {1, 0.0953701, 0.624939}, {1, 0.234631, 0.610678}, {1, 0.139261, 0.735739}, {1, 0.735739, 0.139261}, {1, 0.610678, 0.234631}, {1, 0.624939, 0.0953701}, {1, 0.904501, 0.374932}, {1, 0.76524, 0.389193}, {1, 0.860739, 0.264261}, {1, 0.264261, 0.860739}, {1, 0.389193, 0.76524}, {1, 0.374932, 0.904501}, {1, 0.374939, 0.0953701}, {1, 0.3892, 0.234631}, {1, 0.264261, 0.139261}, {1, 0.139261, 0.264261}, {1, 0.234631, 0.3892}, {1, 0.0953701, 0.374939}, {1, 0.904501, 0.499932}, {1, 0.499932, 0.904501}, {1, 0.0953701, 0.499939}, {1, 0.499939, 0.0953701}, {1, 0.610131, 0.610131}, {1, 0.499385, 0.653954}, {1, 0.653954, 0.499385}, {1, 0.610191, 0.388713}, {1, 0.388713, 0.610191}, {1, 0.499391, 0.344822}, {1, 0.344822, 0.499391}, {1, 0.388713, 0.388713}, {1, 0.929037, 0.804037}, {1, 0.789715, 0.789715}, {1, 0.804037, 0.929037}, {1, 0.210214, 0.789786}, {1, 0.0709532, 0.804047}, {1, 0.804047, 0.0709532}, {1, 0.789786, 0.210214}, {1, 0.195953, 0.929047}, {1, 0.929047, 0.195953}, {1, 0.0709532, 0.195953}, {1, 0.210214, 0.210214}, {1, 0.195953, 0.0709532}, {1, 0.0709532, 0.929047}, {1, 0.929047, 0.0709532}, {1, 0.929037, 0.929037}, {1, 0.0709532, 0.0709532}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}, {0.403787, 0.502163, 0.604301}, {0.59395, 0.335588, 0.588613}, {0.57425, 0.502163, 0.604301}, {0.533055, 0.519268, 0.479373}, {0.723218, 0.352693, 0.463685}, {0.552756, 0.352693, 0.463685}, {0.907719, 0.227933, 0.0932632}, {0.768458, 0.242194, 0.0932632}, {0.812288, 0.352933, 0.0932632}, {0.462839, 0.167794, 0.544306}, {0.592107, 0.184899, 0.419378}, {0.423487, 0.335588, 0.41815}, {0.552756, 0.352693, 0.293222}, {0.462839, 0.167794, 0.373844}, {0.610874, 0.139383, 0.904569}, {0.500135, 0.0955798, 0.904569}, {0.141927, 0.0709532, 0.0709532}, {0.0709735, 0.0709532, 0.141906}, {0.0709532, 0.141906, 0.0709532}, {0.307175, 0.417794, 0.123844}, {0.351005, 0.307055, 0.123844}, {0.095431, 0.5, 0.095431}, {0.139261, 0.389261, 0.095431}, {0.211744, 0.417794, 0.219275}, {0.633302, 0.167794, 0.544306}, {0.907719, 0.173886, 0.164216}, {0.907719, 0.242194, 0.232524}, {0.0709532, 0.210234, 0.860739}, {0.141927, 0.0709735, 0.929047}, {0.0709735, 0.139261, 0.789786}, {0.0709735, 0.0709532, 0.858094}, {0.0709532, 0.141927, 0.929047}, {0.210336, 0.0709735, 0.860739}, {0.139383, 0.139261, 0.721478}, {0.742945, 0.167794, 0.655045}, {0.786897, 0.167794, 0.544306}, {0.904691, 0.139261, 0.610739}, {0.882206, 0.307055, 0.655045}, {0.860739, 0.139261, 0.721478}, {0.442043, 0.585464, 0.809994}, {0.461744, 0.418889, 0.794306}, {0.632206, 0.418889, 0.794306}, {0.907719, 0.352872, 0.188633}, {0.836765, 0.173886, 0.0932632}, {0.549357, 0.674254, 0.636624}, {0.73952, 0.678141, 0.450474}, {0.57425, 0.672625, 0.433838}, {0.723218, 0.523156, 0.293222}, {0.698326, 0.524784, 0.496008}, {0.721478, 0.860739, 0.860739}, {0.610739, 0.904691, 0.860739}, {0.0709735, 0.139261, 0.210214}, {0.882206, 0.263164, 0.544245}, {0.882206, 0.417246, 0.543759}, {0.768458, 0.102933, 0.232524}, {0.907719, 0.102933, 0.218263}, {0.836765, 0.102933, 0.164216}, {0.73952, 0.507679, 0.620936}, {0.929047, 0.929037, 0.858083}, {0.403787, 0.672625, 0.433838}, {0.59395, 0.676512, 0.247688}, {0.552756, 0.523156, 0.293222}, {0.307175, 0.417929, 0.794306}, {0.351005, 0.307176, 0.794306}, {0.095431, 0.904569, 0.5}, {0.500135, 0.095431, 0.095431}, {0.858094, 0.929047, 0.929047}, {0.5, 0.904691, 0.904569}, {0.929047, 0.858083, 0.929037}, {0.423487, 0.50605, 0.41815}, {0.904569, 0.904501, 0.499932}, {0.139261, 0.860739, 0.278522}, {0.139261, 0.904569, 0.389261}, {0.351005, 0.838256, 0.263105}, {0.211744, 0.742825, 0.373844}, {0.211744, 0.698995, 0.263105}, {0.141906, 0.929047, 0.929047}, {0.210214, 0.860739, 0.929047}, {0.904569, 0.500068, 0.904501}, {0.745703, 0.184899, 0.419378}, {0.904691, 0.0953701, 0.499939}, {0.841012, 0.280269, 0.419318}, {0.607314, 0.59098, 0.82663}, {0.461879, 0.167794, 0.698875}, {0.572483, 0.167794, 0.655045}, {0.882206, 0.417726, 0.698808}, {0.0709532, 0.789786, 0.139261}, {0.139261, 0.721478, 0.139261}, {0.882206, 0.588195, 0.219214}, {0.841012, 0.434839, 0.264749}, {0.882206, 0.587709, 0.373296}, {0.841012, 0.434352, 0.418831}, {0.389261, 0.904569, 0.139261}, {0.5, 0.904569, 0.095431}, {0.389383, 0.095431, 0.139261}, {0.278522, 0.860739, 0.139261}, {0.287474, 0.834369, 0.559994}, {0.331304, 0.834369, 0.670734}, {0.192043, 0.695108, 0.670734}, {0.139261, 0.860739, 0.721478}, {0.095431, 0.860739, 0.610739}, {0.139261, 0.278644, 0.860739}, {0.278644, 0.139383, 0.860739}, {0.139261, 0.389383, 0.904569}, {0.192043, 0.584369, 0.559994}, {0.192043, 0.584369, 0.714563}, {0.211744, 0.417794, 0.698875}, {0.211744, 0.417794, 0.544306}, {0.0955798, 0.139261, 0.610739}, {0.351005, 0.698995, 0.123844}, {0.461744, 0.742825, 0.123844}, {0.461744, 0.838256, 0.219275}, {0.929047, 0.141906, 0.0709532}, {0.858094, 0.929047, 0.0709532}, {0.0955798, 0.095431, 0.5}, {0.307323, 0.167794, 0.544306}, {0.211744, 0.263225, 0.544306}, {0.211744, 0.307055, 0.655045}, {0.461744, 0.263225, 0.123844}, {0.351126, 0.167794, 0.263105}, {0.278644, 0.139261, 0.139261}, {0.461879, 0.167794, 0.219275}, {0.929047, 0.929047, 0.141906}, {0.860739, 0.860678, 0.721417}, {0.904569, 0.860678, 0.610678}, {0.442043, 0.834369, 0.559994}, {0.718053, 0.839885, 0.687369}, {0.857314, 0.700563, 0.687308}, {0.761883, 0.839885, 0.57663}, {0.857314, 0.744386, 0.576562}, {0.904569, 0.499939, 0.0953701}, {0.786775, 0.588256, 0.123844}, {0.745581, 0.434899, 0.169378}, {0.701751, 0.32416, 0.169378}, {0.748731, 0.287832, 0.262642}, {0.857314, 0.589817, 0.731131}, {0.857314, 0.589337, 0.576082}, {0.572483, 0.307055, 0.123844}, {0.461744, 0.417794, 0.123844}, {0.591012, 0.434899, 0.169378}, {0.929047, 0.858094, 0.0709532}, {0.882206, 0.713256, 0.123844}, {0.882206, 0.767303, 0.194797}, {0.882206, 0.698995, 0.263105}, {0.351126, 0.167794, 0.433567}, {0.351126, 0.167794, 0.655045}, {0.211744, 0.417794, 0.373844}, {0.423487, 0.50605, 0.247688}, {0.211744, 0.588256, 0.373844}, {0.929047, 0.0709532, 0.141906}, {0.287474, 0.584504, 0.809994}, {0.929047, 0.0709532, 0.858094}, {0.192043, 0.738938, 0.559994}, {0.461744, 0.838256, 0.373844}, {0.632206, 0.838256, 0.373844}, {0.139261, 0.210214, 0.0709532}, {0.210234, 0.139261, 0.0709532}, {0.789786, 0.0709735, 0.860739}, {0.721478, 0.139383, 0.860739}, {0.610739, 0.904569, 0.139261}, {0.721478, 0.860739, 0.139261}, {0.0709532, 0.929047, 0.141906}, {0.095431, 0.500135, 0.904569}, {0.442043, 0.834369, 0.714563}, {0.461744, 0.263374, 0.794306}, {0.860739, 0.278644, 0.860739}, {0.929047, 0.210234, 0.860739}, {0.211744, 0.307055, 0.263105}, {0.139261, 0.610739, 0.095431}, {0.211744, 0.588256, 0.219275}, {0.632206, 0.588256, 0.123844}, {0.461744, 0.588256, 0.123844}, {0.139383, 0.139261, 0.278522}, {0.139261, 0.278522, 0.139261}, {0.607314, 0.839885, 0.57663}, {0.904569, 0.610813, 0.860678}, {0.0709532, 0.858094, 0.929047}, {0.331304, 0.695108, 0.809994}, {0.139261, 0.721478, 0.860739}, {0.278522, 0.860739, 0.860739}, {0.0709532, 0.929047, 0.858094}, {0.718053, 0.700624, 0.82663}, {0.860739, 0.721417, 0.860678}, {0.761883, 0.59002, 0.82663}, {0.742945, 0.307176, 0.794306}, {0.786775, 0.417929, 0.794306}, {0.860739, 0.929037, 0.789776}, {0.389261, 0.904691, 0.860739}, {0.307175, 0.588256, 0.123844}, {0.789786, 0.860739, 0.0709532}, {0.0709532, 0.858094, 0.0709532}, {0.742945, 0.838256, 0.263105}, {0.632206, 0.742825, 0.123844}, {0.742945, 0.698995, 0.123844}, {0.841012, 0.32416, 0.308639}, {0.610874, 0.139261, 0.095431}, {0.782719, 0.102933, 0.0932632}, {0.860739, 0.789776, 0.929037}, {0.929047, 0.141927, 0.929047}, {0.811253, 0.838256, 0.194797}, {0.858094, 0.0709735, 0.929047}, {0.607314, 0.839885, 0.731199}, {0.607314, 0.744576, 0.82663}, {0.442043, 0.73906, 0.809994}, {0.389383, 0.0955798, 0.860739}, {0.141906, 0.929047, 0.0709532}, {0.0709532, 0.860739, 0.210214}, {0.929047, 0.860739, 0.210214}, {0.860739, 0.860739, 0.278522}, {0.139383, 0.095431, 0.389261}, {0.211744, 0.263225, 0.373844}, {0.139261, 0.789786, 0.929047}, {0.789786, 0.929047, 0.860739}, {0.904691, 0.139261, 0.389261}, {0.701751, 0.184899, 0.308639}, {0.929047, 0.139261, 0.789786}, {0.786775, 0.838256, 0.373844}, {0.875, 0.0709532, 0.0709532}, {0.210214, 0.929047, 0.139261}, {0.572483, 0.838256, 0.263105}, {0.591147, 0.184899, 0.264809}, {0.904569, 0.389396, 0.860739}, {0.572483, 0.307176, 0.794306}, {0.331304, 0.834369, 0.449255}, {0.139261, 0.929047, 0.789786}, {0.860739, 0.789786, 0.0709532}, {0.904569, 0.860739, 0.389261}, {0.139261, 0.610739, 0.904569}, {0.812409, 0.102933, 0.343263}, {0.657854, 0.102933, 0.188694}, {0.857314, 0.700624, 0.465891}}
]
Vector<double> [
+ id : my_fem:jacobians:_tetrahedron_10
+ size : 1364
+ nb_component : 1
+ allocated size : 1364
+ memory size : 11kB
+ values : {{0.00119768}, {0.00119768}, {0.00119768}, {0.00119768}, {0.000498855}, {0.000498855}, {0.000498855}, {0.000498855}, {0.00127072}, {0.00127072}, {0.00127072}, {0.00127072}, {0.000510867}, {0.000510867}, {0.000510867}, {0.000510867}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00023817}, {0.00023817}, {0.00023817}, {0.00023817}, {0.000731371}, {0.000731371}, {0.000731371}, {0.000731371}, {0.00123415}, {0.00123415}, {0.00123415}, {0.00123415}, {0.000262647}, {0.000262647}, {0.000262647}, {0.000262647}, {0.000229322}, {0.000229322}, {0.000229322}, {0.000229322}, {0.000450497}, {0.000450497}, {0.000450497}, {0.000450497}, {0.000202139}, {0.000202139}, {0.000202139}, {0.000202139}, {0.000887737}, {0.000887737}, {0.000887737}, {0.000887737}, {0.00187262}, {0.00187262}, {0.00187262}, {0.00187262}, {0.000493369}, {0.000493369}, {0.000493369}, {0.000493369}, {0.000265441}, {0.000265441}, {0.000265441}, {0.000265441}, {0.00172558}, {0.00172558}, {0.00172558}, {0.00172558}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000671175}, {0.000671175}, {0.000671175}, {0.000671175}, {0.000292964}, {0.000292964}, {0.000292964}, {0.000292964}, {0.00118606}, {0.00118606}, {0.00118606}, {0.00118606}, {0.000209795}, {0.000209795}, {0.000209795}, {0.000209795}, {0.00161203}, {0.00161203}, {0.00161203}, {0.00161203}, {0.00117664}, {0.00117664}, {0.00117664}, {0.00117664}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000378978}, {0.000378978}, {0.000378978}, {0.000378978}, {0.000209795}, {0.000209795}, {0.000209795}, {0.000209795}, {0.00121805}, {0.00121805}, {0.00121805}, {0.00121805}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00117268}, {0.00117268}, {0.00117268}, {0.00117268}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00083749}, {0.00083749}, {0.00083749}, {0.00083749}, {0.00191797}, {0.00191797}, {0.00191797}, {0.00191797}, {0.000953843}, {0.000953843}, {0.000953843}, {0.000953843}, {0.000672936}, {0.000672936}, {0.000672936}, {0.000672936}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00111398}, {0.00111398}, {0.00111398}, {0.00111398}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051068}, {0.00051068}, {0.00051068}, {0.00051068}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.00122601}, {0.00122601}, {0.00122601}, {0.00122601}, {0.000884197}, {0.000884197}, {0.000884197}, {0.000884197}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.00173384}, {0.00173384}, {0.00173384}, {0.00173384}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000209825}, {0.0007455}, {0.0007455}, {0.0007455}, {0.0007455}, {0.000899671}, {0.000899671}, {0.000899671}, {0.000899671}, {0.000616516}, {0.000616516}, {0.000616516}, {0.000616516}, {0.000200144}, {0.000200144}, {0.000200144}, {0.000200144}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000939334}, {0.000939334}, {0.000939334}, {0.000939334}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000930551}, {0.000930551}, {0.000930551}, {0.000930551}, {0.000638055}, {0.000638055}, {0.000638055}, {0.000638055}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000238204}, {0.000238204}, {0.000238204}, {0.000238204}, {0.000745217}, {0.000745217}, {0.000745217}, {0.000745217}, {0.000510776}, {0.000510776}, {0.000510776}, {0.000510776}, {0.000945026}, {0.000945026}, {0.000945026}, {0.000945026}, {0.000909981}, {0.000909981}, {0.000909981}, {0.000909981}, {0.000623877}, {0.000623877}, {0.000623877}, {0.000623877}, {0.000956672}, {0.000956672}, {0.000956672}, {0.000956672}, {0.000513725}, {0.000513725}, {0.000513725}, {0.000513725}, {0.00105581}, {0.00105581}, {0.00105581}, {0.00105581}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00115231}, {0.00115231}, {0.00115231}, {0.00115231}, {0.000871617}, {0.000871617}, {0.000871617}, {0.000871617}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000966407}, {0.000966407}, {0.000966407}, {0.000966407}, {0.000335259}, {0.000335259}, {0.000335259}, {0.000335259}, {0.000630433}, {0.000630433}, {0.000630433}, {0.000630433}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00037973}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.00106509}, {0.00106509}, {0.00106509}, {0.00106509}, {0.00198327}, {0.00198327}, {0.00198327}, {0.00198327}, {0.00205091}, {0.00205091}, {0.00205091}, {0.00205091}, {0.000963229}, {0.000963229}, {0.000963229}, {0.000963229}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.00215047}, {0.00215047}, {0.00215047}, {0.00215047}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000959836}, {0.000959836}, {0.000959836}, {0.000959836}, {0.000817692}, {0.000817692}, {0.000817692}, {0.000817692}, {0.000902791}, {0.000902791}, {0.000902791}, {0.000902791}, {0.00169951}, {0.00169951}, {0.00169951}, {0.00169951}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000840144}, {0.000840144}, {0.000840144}, {0.000840144}, {0.00173867}, {0.00173867}, {0.00173867}, {0.00173867}, {0.000671175}, {0.000671175}, {0.000671175}, {0.000671175}, {0.000963229}, {0.000963229}, {0.000963229}, {0.000963229}, {0.00022929}, {0.00022929}, {0.00022929}, {0.00022929}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000511246}, {0.000511246}, {0.000511246}, {0.000511246}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00161366}, {0.00161366}, {0.00161366}, {0.00161366}, {0.000945026}, {0.000945026}, {0.000945026}, {0.000945026}, {0.0011808}, {0.0011808}, {0.0011808}, {0.0011808}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000379219}, {0.000379219}, {0.000379219}, {0.000379219}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00105497}, {0.00105497}, {0.00105497}, {0.00105497}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00130751}, {0.00130751}, {0.00130751}, {0.00130751}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000951335}, {0.000951335}, {0.000951335}, {0.000951335}, {0.00145377}, {0.00145377}, {0.00145377}, {0.00145377}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000396677}, {0.00137036}, {0.00137036}, {0.00137036}, {0.00137036}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.000913554}, {0.000913554}, {0.000913554}, {0.000913554}, {0.000744668}, {0.000744668}, {0.000744668}, {0.000744668}, {0.000959836}, {0.000959836}, {0.000959836}, {0.000959836}, {0.000510776}, {0.000510776}, {0.000510776}, {0.000510776}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00173998}, {0.00173998}, {0.00173998}, {0.00173998}, {0.00106728}, {0.00106728}, {0.00106728}, {0.00106728}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000950017}, {0.000950017}, {0.000950017}, {0.000950017}, {0.00160036}, {0.00160036}, {0.00160036}, {0.00160036}, {0.00148765}, {0.00148765}, {0.00148765}, {0.00148765}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00117664}, {0.00117664}, {0.00117664}, {0.00117664}, {0.000744343}, {0.000744343}, {0.000744343}, {0.000744343}, {0.00108011}, {0.00108011}, {0.00108011}, {0.00108011}, {0.00102006}, {0.00102006}, {0.00102006}, {0.00102006}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000985542}, {0.000985542}, {0.000985542}, {0.000985542}, {0.00023817}, {0.00023817}, {0.00023817}, {0.00023817}, {0.000509799}, {0.000509799}, {0.000509799}, {0.000509799}, {0.00122872}, {0.00122872}, {0.00122872}, {0.00122872}, {0.000201973}, {0.000201973}, {0.000201973}, {0.000201973}, {0.00168481}, {0.00168481}, {0.00168481}, {0.00168481}, {0.000396652}, {0.000396652}, {0.000396652}, {0.000396652}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000396677}, {0.00127773}, {0.00127773}, {0.00127773}, {0.00127773}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00185969}, {0.00185969}, {0.00185969}, {0.00185969}, {0.00130224}, {0.00130224}, {0.00130224}, {0.00130224}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00051068}, {0.00051068}, {0.00051068}, {0.00051068}, {0.000817692}, {0.000817692}, {0.000817692}, {0.000817692}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.00137577}, {0.00137577}, {0.00137577}, {0.00137577}, {0.000708521}, {0.000708521}, {0.000708521}, {0.000708521}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.00125207}, {0.00125207}, {0.00125207}, {0.00125207}, {0.00108769}, {0.00108769}, {0.00108769}, {0.00108769}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000518452}, {0.000518452}, {0.000518452}, {0.000518452}, {0.000662427}, {0.000662427}, {0.000662427}, {0.000662427}, {0.000902637}, {0.000902637}, {0.000902637}, {0.000902637}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00109572}, {0.00109572}, {0.00109572}, {0.00109572}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.00100863}, {0.00100863}, {0.00100863}, {0.00100863}, {0.000265441}, {0.000265441}, {0.000265441}, {0.000265441}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000849291}, {0.000849291}, {0.000849291}, {0.000849291}, {0.00109572}, {0.00109572}, {0.00109572}, {0.00109572}, {0.000396652}, {0.000396652}, {0.000396652}, {0.000396652}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000196277}, {0.000196277}, {0.000196277}, {0.000196277}, {0.000201973}, {0.000201973}, {0.000201973}, {0.000201973}, {0.000262647}, {0.000262647}, {0.000262647}, {0.000262647}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000510096}, {0.000510096}, {0.000510096}, {0.000510096}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000378736}, {0.000378736}, {0.000378736}, {0.000378736}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000532051}, {0.000532051}, {0.000532051}, {0.000532051}, {0.0014145}, {0.0014145}, {0.0014145}, {0.0014145}, {0.00108638}, {0.00108638}, {0.00108638}, {0.00108638}, {0.000378736}, {0.000378736}, {0.000378736}, {0.000378736}, {0.0011856}, {0.0011856}, {0.0011856}, {0.0011856}, {0.00186025}, {0.00186025}, {0.00186025}, {0.00186025}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000922847}, {0.000922847}, {0.000922847}, {0.000922847}, {0.00132655}, {0.00132655}, {0.00132655}, {0.00132655}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00107727}, {0.00107727}, {0.00107727}, {0.00107727}, {0.00135137}, {0.00135137}, {0.00135137}, {0.00135137}, {0.000292964}, {0.000292964}, {0.000292964}, {0.000292964}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000722936}, {0.000722936}, {0.000722936}, {0.000722936}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000926941}, {0.000926941}, {0.000926941}, {0.000926941}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000509799}, {0.000509799}, {0.000509799}, {0.000509799}, {0.000378978}, {0.000378978}, {0.000378978}, {0.000378978}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000380053}, {0.0007455}, {0.0007455}, {0.0007455}, {0.0007455}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00023817}, {0.00023817}, {0.00023817}, {0.00023817}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000608086}, {0.000608086}, {0.000608086}, {0.000608086}, {0.000652377}, {0.000652377}, {0.000652377}, {0.000652377}, {0.000511476}, {0.000511476}, {0.000511476}, {0.000511476}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000493684}, {0.000493684}, {0.000493684}, {0.000493684}, {0.000251531}, {0.000251531}, {0.000251531}, {0.000251531}, {0.000835485}, {0.000835485}, {0.000835485}, {0.000835485}, {0.00121998}, {0.00121998}, {0.00121998}, {0.00121998}, {0.00120388}, {0.00120388}, {0.00120388}, {0.00120388}, {0.000510867}, {0.000510867}, {0.000510867}, {0.000510867}, {0.000745543}, {0.000745543}, {0.000745543}, {0.000745543}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000849837}, {0.000849837}, {0.000849837}, {0.000849837}, {0.000902637}, {0.000902637}, {0.000902637}, {0.000902637}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00022929}, {0.00022929}, {0.00022929}, {0.00022929}, {0.000761723}, {0.000761723}, {0.000761723}, {0.000761723}, {0.000509558}, {0.000509558}, {0.000509558}, {0.000509558}, {0.00104832}, {0.00104832}, {0.00104832}, {0.00104832}, {0.00111203}, {0.00111203}, {0.00111203}, {0.00111203}, {0.00080431}, {0.00080431}, {0.00080431}, {0.00080431}, {0.000379219}, {0.000379219}, {0.000379219}, {0.000379219}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00022929}, {0.00022929}, {0.00022929}, {0.00022929}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00106294}, {0.00106294}, {0.00106294}, {0.00106294}, {0.00172128}, {0.00172128}, {0.00172128}, {0.00172128}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00185969}, {0.00185969}, {0.00185969}, {0.00185969}, {0.000922847}, {0.000922847}, {0.000922847}, {0.000922847}, {0.00167934}, {0.00167934}, {0.00167934}, {0.00167934}, {0.000237043}, {0.000237043}, {0.000237043}, {0.000237043}, {0.000233177}, {0.000233177}, {0.000233177}, {0.000233177}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00100541}, {0.00100541}, {0.00100541}, {0.00100541}, {0.0006888}, {0.0006888}, {0.0006888}, {0.0006888}, {0.000883155}, {0.000883155}, {0.000883155}, {0.000883155}, {0.000449966}, {0.000449966}, {0.000449966}, {0.000449966}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000723193}, {0.000723193}, {0.000723193}, {0.000723193}, {0.00119627}, {0.00119627}, {0.00119627}, {0.00119627}, {0.000922847}, {0.000922847}, {0.000922847}, {0.000922847}, {0.00101774}, {0.00101774}, {0.00101774}, {0.00101774}, {0.00074475}, {0.00074475}, {0.00074475}, {0.00074475}, {0.00122628}, {0.00122628}, {0.00122628}, {0.00122628}, {0.000688235}, {0.000688235}, {0.000688235}, {0.000688235}, {0.00100531}, {0.00100531}, {0.00100531}, {0.00100531}, {0.00051012}, {0.00051012}, {0.00051012}, {0.00051012}, {0.000745227}, {0.000745227}, {0.000745227}, {0.000745227}, {0.00103381}, {0.00103381}, {0.00103381}, {0.00103381}, {0.00130566}, {0.00130566}, {0.00130566}, {0.00130566}, {0.0011808}, {0.0011808}, {0.0011808}, {0.0011808}, {0.00100744}, {0.00100744}, {0.00100744}, {0.00100744}, {0.00169196}, {0.00169196}, {0.00169196}, {0.00169196}, {0.000945026}, {0.000945026}, {0.000945026}, {0.000945026}, {0.00124164}, {0.00124164}, {0.00124164}, {0.00124164}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000883155}, {0.000883155}, {0.000883155}, {0.000883155}, {0.000449966}, {0.000449966}, {0.000449966}, {0.000449966}, {0.00139391}, {0.00139391}, {0.00139391}, {0.00139391}, {0.000913554}, {0.000913554}, {0.000913554}, {0.000913554}, {0.00105108}, {0.00105108}, {0.00105108}, {0.00105108}, {0.0011491}, {0.0011491}, {0.0011491}, {0.0011491}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000609681}, {0.000609681}, {0.000609681}, {0.000609681}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000391999}, {0.000391999}, {0.000391999}, {0.000391999}, {0.00150629}, {0.00150629}, {0.00150629}, {0.00150629}, {0.00185388}, {0.00185388}, {0.00185388}, {0.00185388}, {0.00108769}, {0.00108769}, {0.00108769}, {0.00108769}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.00068973}, {0.00068973}, {0.00068973}, {0.00068973}, {0.00051012}, {0.00051012}, {0.00051012}, {0.00051012}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000982951}, {0.000982951}, {0.000982951}, {0.000982951}, {0.00155838}, {0.00155838}, {0.00155838}, {0.00155838}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00190279}, {0.00190279}, {0.00190279}, {0.00190279}, {0.000890603}, {0.000890603}, {0.000890603}, {0.000890603}, {0.00130171}, {0.00130171}, {0.00130171}, {0.00130171}, {0.000509851}, {0.000509851}, {0.000509851}, {0.000509851}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000722514}, {0.000722514}, {0.000722514}, {0.000722514}, {0.000550638}, {0.000550638}, {0.000550638}, {0.000550638}, {0.000869085}, {0.000869085}, {0.000869085}, {0.000869085}, {0.00056562}, {0.00056562}, {0.00056562}, {0.00056562}, {0.000549932}, {0.000549932}, {0.000549932}, {0.000549932}, {0.000732214}, {0.000732214}, {0.000732214}, {0.000732214}, {0.00058443}, {0.00058443}, {0.00058443}, {0.00058443}, {0.000883971}, {0.000883971}, {0.000883971}, {0.000883971}, {0.00124314}, {0.00124314}, {0.00124314}, {0.00124314}, {0.000836794}, {0.000836794}, {0.000836794}, {0.000836794}, {0.00092794}, {0.00092794}, {0.00092794}, {0.00092794}, {0.000815143}, {0.000815143}, {0.000815143}, {0.000815143}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_tetrahedron_10
- + size : 4
- + nb_component : 3
- + allocated size : 2000
- + memory size : 47kB
- + values : {{0.138197, 0.138197, 0.138197}, {0.58541, 0.138197, 0.138197}, {0.138197, 0.58541, 0.138197}, {0.138197, 0.138197, 0.58541}}
- ]
Vector<double> [
+ id : my_fem:shapes:_tetrahedron_10
+ size : 1364
+ nb_component : 10
+ allocated size : 1364
+ memory size : 1.1e+02kB
+ values : {{0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_tetrahedron_10
+ size : 1364
+ nb_component : 30
+ allocated size : 1364
+ memory size : 3.2e+02kB
- + values : {{-3.9353, -4.55601, 0.673815, 0, -1.32529, -0.181463, -1.31177, -0.0269554, -1.36103, 0, -0.166427, 1.7671, -1.62143, 5.06211, 1.22778, 1.62143, 1.67146, 1.90663, 5.24706, -1.73604, 7.40408, -1.62143, -1.00576, -8.97503, 0, 1.84386, -1.95995, 1.62143, 0.239033, -0.501928}, {1.31177, 1.51867, -0.224605, 4.12325e-16, 3.97586, 0.54439, -1.31177, -0.0269554, -1.36103, 2.74179e-16, -0.166427, 1.7671, -6.86849, -6.31371, 1.40035, 6.86849, 1.77928, 7.35076, -1.56634e-16, -1.84386, 1.95995, -1.62143, -1.67146, -1.90663, -1.26573e-15, 2.50957, -9.02835, 1.62143, 0.239033, -0.501928}, {1.31177, 1.51867, -0.224605, 0, -1.32529, -0.181463, 3.9353, 0.0808662, 4.08309, 0, -0.166427, 1.7671, -1.62143, -0.239033, 0.501928, 1.62143, 6.97261, 2.63248, -5.24706, -7.91853, 2.85837, -1.62143, -1.67146, -1.90663, 0, 1.84386, -1.95995, 1.62143, 0.90474, -7.57033}, {1.31177, 1.51867, -0.224605, 0, -1.32529, -0.181463, -1.31177, -0.0269554, -1.36103, 0, 0.49928, -5.3013, -1.62143, -0.239033, 0.501928, 1.62143, 1.67146, 1.90663, -3.2565e-16, -1.84386, 1.95995, -6.86849, -7.74614, -1.00821, 0, 7.14501, -1.2341, 6.86849, 0.346855, 4.9422}, {4.62937, -1.83228, -3.04567, 1.74185, 1.32981, 2.03815, 0, 0, -2.39759, -0.198723, -1.94057, -0.655786, -7.21302, -7.71791, -11.9268, -2.15304, -1.64373, 0.444288, 1.90741, -0.754941, 11.2991, 2.94793, 9.40601, 2.17885, -1.90741, 0.754941, -1.7087, 0.245635, 2.39867, 3.77418}, {-1.54312, 0.61076, 1.01522, -5.22554, -3.98943, -6.11446, 0, 0, -2.39759, -0.198723, -1.94057, -0.655786, 5.92686, -4.84171, -7.83507, -2.15304, -1.64373, 10.0346, 1.90741, -0.754941, 1.7087, 2.15304, 1.64373, -0.444288, -1.11252, 8.51722, 0.914444, 0.245635, 2.39867, 3.77418}, {-1.54312, 0.61076, 1.01522, 1.74185, 1.32981, 2.03815, 0, 0, 7.19277, -0.198723, -1.94057, -0.655786, -0.245635, -2.39867, -3.77418, -9.12042, -6.96297, -7.70832, 8.0799, -3.19798, -2.35219, 2.15304, 1.64373, -0.444288, -1.90741, 0.754941, -1.7087, 1.04052, 10.1609, 6.39732}, {-1.54312, 0.61076, 1.01522, 1.74185, 1.32981, 2.03815, 0, 0, -2.39759, 0.596168, 5.82171, 1.96736, -0.245635, -2.39867, -3.77418, -2.15304, -1.64373, 0.444288, 1.90741, -0.754941, 1.7087, 8.32553, -0.799305, -4.50518, -8.87479, -4.5643, -9.86131, 0.245635, 2.39867, 13.3645}, {0.513102, -3.87755, 0, 0.57474, -0.851464, -1.31177, -1.67772, -0.393466, -9.15774e-16, 1.27402, -0.0475867, 1.31177, -2.79797, 2.86069, 6.86849, 1.36336, 1.53882, 1.62143, 8.99608, 0.462577, 4.66294e-15, -6.45943, -1.34847, -6.86849, -2.28519, 1.11129, -1.11022e-15, 0.499008, 0.545171, -1.62143}, {-0.171034, 1.29252, -2.22045e-16, -1.72422, 2.55439, 3.9353, -1.67772, -0.393466, -8.14021e-16, 1.27402, -0.0475867, 1.31177, 0.185129, -5.71524, 1.62143, 8.07425, 3.11268, 1.62143, 2.28519, -1.11129, 1.33227e-15, -1.36336, -1.53882, -1.62143, -7.38126, 1.30164, -5.24706, 0.499008, 0.545171, -1.62143}, {-0.171034, 1.29252, 4.44089e-16, 0.57474, -0.851464, -1.31177, 5.03317, 1.1804, 1.22103e-15, 1.27402, -0.0475867, 1.31177, -0.499008, -0.545171, 1.62143, -0.935598, 4.94468, 6.86849, 2.96933, -6.28136, -1.77636e-15, -1.36336, -1.53882, -1.62143, -2.28519, 1.11129, 0, -4.59706, 0.735518, -6.86849}, {-0.171034, 1.29252, 0, 0.57474, -0.851464, -1.31177, -1.67772, -0.393466, 5.5964e-16, -3.82205, 0.14276, -3.9353, -0.499008, -0.545171, 1.62143, 1.36336, 1.53882, 1.62143, 2.28519, -1.11129, -8.88178e-16, -0.679225, -6.70889, -1.62143, -4.58415, 4.51715, 5.24706, 7.2099, 2.11904, -1.62143}, {3.99239, 5.22128, -5.22376, -4.19346e-16, -1.90927e-15, 2.34313, -0.609885, 1.54187, -1.54513, 1.94068, 0.198561, -2.53925, 1.64495, 2.15129, -14.4211, 0.75386, -1.90585, -0.986372, 4.83836, -5.92203, 5.93812, -8.51658, 1.11161, 11.1434, -2.39881, -0.245434, 0.242418, -1.64495, -2.15129, 5.04857}, {-1.3308, -1.74043, 1.74125, -4.45091e-15, 2.34416e-15, -7.02938, -0.609885, 1.54187, -1.54513, 1.94068, 0.198561, -2.53925, 6.96814, 9.11299, -12.0136, 3.1934, -8.07331, 5.19416, 2.39881, 0.245434, -0.242418, -0.75386, 1.90585, 0.986372, -10.1615, -1.03968, 10.3994, -1.64495, -2.15129, 5.04857}, {-1.3308, -1.74043, 1.74125, 0, 0, 2.34313, 1.82966, -4.6256, 4.6354, 1.94068, 0.198561, -2.53925, 1.64495, 2.15129, -5.04857, 0.75386, -1.90585, -10.3589, 7.722, 7.20714, -7.20743, -0.75386, 1.90585, 0.986372, -2.39881, -0.245434, 0.242418, -9.40768, -2.94553, 15.2056}, {-1.3308, -1.74043, 1.74125, -1.12887e-15, -1.155e-16, 2.34313, -0.609885, 1.54187, -1.54513, -5.82204, -0.595682, 7.61774, 1.64495, 2.15129, -5.04857, 0.75386, -1.90585, -0.986372, 2.39881, 0.245434, -0.242418, 4.56932, 8.86756, -5.97864, -2.39881, -0.245434, -9.13008, 0.794587, -8.31875, 11.2291}, {5.36656, -5.36656, -5.3681, 1.78885, 1.36261, 1.3621, 0, 0, -3.15147, 0, -3.15147, 0, -7.15542, -9.34589, -9.34384, -2.21115, -1.68428, 2.21178, 2.21115, -2.21115, 14.2895, 2.21115, 14.2902, -2.21178, -2.21115, 2.21115, -1.68365, 0, 3.89543, 3.89543}, {-1.78885, 1.78885, 1.78937, -5.36656, -4.08784, -4.08631, 0, 0, -3.15147, 0, -3.15147, 0, 7.15542, -11.0508, -11.0529, -2.21115, -1.68428, 14.8177, 2.21115, -2.21115, 1.68365, 2.21115, 1.68428, -2.21178, -2.21115, 14.817, -1.68365, 0, 3.89543, 3.89543}, {-1.78885, 1.78885, 1.78937, 1.78885, 1.36261, 1.3621, 0, 0, 9.45441, 0, -3.15147, 0, 4.44089e-16, -3.89543, -3.89543, -9.36656, -7.13474, -3.23663, 9.36656, -9.36656, -5.47381, 2.21115, 1.68428, -2.21178, -2.21115, 2.21115, -1.68365, 0, 16.5013, 3.89543}, {-1.78885, 1.78885, 1.78937, 1.78885, 1.36261, 1.3621, 0, 0, -3.15147, 0, 9.45441, 0, 4.44089e-16, -3.89543, -3.89543, -2.21115, -1.68428, 2.21178, 2.21115, -2.21115, 1.68365, 9.36656, -5.47113, -9.36924, -9.36656, -3.23931, -7.13206, 0, 3.89543, 16.5013}, {-4.72653, -4.72788, -4.72653, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, -1.57551, -1.57596, 1.57596, -10.1969, 6.30148, 6.30439, -1.73195e-14, 1.73195e-14, 3.89543, 6.30204, -10.1975, 6.30204, 6.30204, 6.30384, -10.1993, 2.1394e-12, 3.89543, -2.14051e-12, 3.89487, 0.000556765, -0.000556765}, {1.57551, 1.57596, 1.57551, -4.72653, 4.72653, 4.72788, -1.57551, 1.57551, -1.57551, -1.57551, -1.57596, 1.57596, -10.1969, -6.30439, -6.30148, 6.30204, -6.30204, 10.1975, -2.13851e-12, -3.89543, 2.13829e-12, 1.42638e-14, -1.48241e-14, -3.89543, 6.30204, 10.1993, -6.30384, 3.89487, 0.000556765, -0.000556765}, {1.57551, 1.57596, 1.57551, 1.57551, -1.57551, -1.57596, 4.72653, -4.72653, 4.72653, -1.57551, -1.57596, 1.57596, -3.89487, -0.000556765, 0.000556765, -6.30204, 6.30204, 10.1993, -6.30204, -10.1993, -6.30204, 1.62622e-14, -1.72666e-14, -3.89543, 2.14029e-12, 3.89543, -2.14007e-12, 10.1969, 6.30439, -6.30439}, {1.57551, 1.57596, 1.57551, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, 4.72653, 4.72788, -4.72788, -3.89487, -0.000556765, 0.000556765, -1.70974e-14, 1.68754e-14, 3.89543, -2.14206e-12, -3.89543, 2.1414e-12, -6.30204, -6.30384, -10.1975, -6.30204, 10.1975, 6.30384, 10.1969, -6.30148, 6.30148}, {3.23101, 1.27881, 3.23101, -1.12016, -2.46258, 1.22297, 0.799503, 2.33566, 0.799503, 1.39766, 0.553185, -0.945467, 7.19648, 13.4211, -5.07228, 0.396353, 0.156874, -2.49991, -2.85501, -11.7028, -2.85501, -5.98699, -2.36962, 6.28178, -0.343007, 2.36014, -0.343007, -2.71584, -3.57081, 0.180421}, {-1.077, -0.426271, -1.077, 3.36048, 7.38773, -3.6689, 0.799503, 2.33566, 0.799503, 1.39766, 0.553185, -0.945467, 7.02385, 5.2759, 4.12759, -2.80166, -9.18577, -5.69792, 0.343007, -2.36014, 0.343007, -0.396353, -0.156874, 2.49991, -5.93364, 0.147394, 3.43886, -2.71584, -3.57081, 0.180421}, {-1.077, -0.426271, -1.077, -1.12016, -2.46258, 1.22297, -2.39851, -7.00698, -2.39851, 1.39766, 0.553185, -0.945467, 2.71584, 3.57081, -0.180421, 4.87699, 10.0072, -7.39177, 4.65101, -0.65505, 4.65101, -0.396353, -0.156874, 2.49991, -0.343007, 2.36014, -0.343007, -8.30647, -5.78355, 3.96229}, {-1.077, -0.426271, -1.077, -1.12016, -2.46258, 1.22297, 0.799503, 2.33566, 0.799503, -4.19298, -1.65956, 2.8364, 2.71584, 3.57081, -0.180421, 0.396353, 0.156874, -2.49991, 0.343007, -2.36014, 0.343007, 3.91165, 1.54821, 6.80792, 4.13763, 12.2104, -5.23487, -5.91385, -12.9135, -3.01759}, {-3.9353, 2.63698, 1.65871, 7.60332e-17, 1.28613, 0.176102, -3.18404e-16, -0.456132, 1.72743, -1.31177, 0.0489967, -1.35063, -1.62143, -5.64776, -0.238656, 2.99587e-16, -1.02593, -2.3529, -1.62143, 3.47483, -8.36153, 5.24706, 0.829946, 7.75543, 1.62143, -1.65031, 1.4518, 1.62143, 0.503247, -0.465751}, {1.31177, -0.878994, -0.552902, 8.56342e-16, -3.85839, -0.528305, 3.92674e-16, -0.456132, 1.72743, -1.31177, 0.0489967, -1.35063, -6.86849, 3.01273, 2.67736, -1.70324e-15, 0.798596, -9.26263, -1.62143, 1.65031, -1.4518, -1.93111e-16, 1.02593, 2.3529, 6.86849, -1.84629, 6.85433, 1.62143, 0.503247, -0.465751}, {1.31177, -0.878994, -0.552902, -5.33523e-16, 1.28613, 0.176102, 2.92961e-15, 1.3684, -5.1823, -1.31177, 0.0489967, -1.35063, -1.62143, -0.503247, 0.465751, 4.00063e-15, -6.17045, -3.0573, -6.86849, 5.16628, 0.75981, -2.19219e-15, 1.02593, 2.3529, 1.62143, -1.65031, 1.4518, 6.86849, 0.30726, 4.93678}, {1.31177, -0.878994, -0.552902, 7.60332e-17, 1.28613, 0.176102, -3.18404e-16, -0.456132, 1.72743, 3.9353, -0.14699, 4.0519, -1.62143, -0.503247, 0.465751, 2.99587e-16, -1.02593, -2.3529, -1.62143, 1.65031, -1.4518, -5.24706, 4.54191, 4.56451, 1.62143, -6.79482, 0.747392, 1.62143, 2.32778, -7.37548}, {0.56235, 5.36656, -5.36656, -1.24953, 3.64699, -0.373467, -0.986118, -1.85814, -1.41539, 2.4231, 0, 0, 6.77433, -16.8847, -0.255645, 2.76341, -2.21115, 2.21115, 5.39508, 11.9405, 5.19992, -12.4558, 2.21115, -2.21115, -1.45061, -4.50793, 0.461631, -1.77621, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, 3.74859, -10.941, 1.1204, -0.986118, -1.85814, -1.41539, 2.4231, 1.11775e-15, 8.51416e-16, 2.52601, 4.85864, -8.90493, 6.70789, 5.2214, 7.87269, 1.45061, 4.50793, -0.461631, -2.76341, 2.21115, -2.21115, -11.143, -4.50793, 0.461631, -1.77621, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, -1.24953, 3.64699, -0.373467, 2.95835, 5.57441, 4.24616, 2.4231, 0, 0, 1.77621, -2.29678, -1.74951, 7.76154, -16.7991, 3.70501, 2.20041, 11.6633, -7.61705, -2.76341, 2.21115, -2.21115, -1.45061, -4.50793, 0.461631, -11.4686, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, -1.24953, 3.64699, -0.373467, -0.986118, -1.85814, -1.41539, -7.2693, 0, 0, 1.77621, -2.29678, -1.74951, 2.76341, -2.21115, 2.21115, 1.45061, 4.50793, -0.461631, -2.01361, 9.36656, -9.36656, 3.54752, -19.0959, 1.9555, 2.16826, 9.72932, 7.41106}, {4.72585, 4.7272, 4.7272, -1.63629, -1.63676, 1.63676, -1.57573, 1.57528, 1.57528, 4.78731, 1.63721, -1.63631, 10.5149, 10.5179, -6.62248, 3.97028, 0.0759901, -3.97031, 10.1978, -6.30058, -6.30058, -23.1195, -6.62484, 10.5155, -3.89487, -0.000556685, -0.000556685, -3.96973, -3.97086, 0.0754336}, {-1.57528, -1.57573, -1.57573, 4.90888, 4.91028, -4.91028, -1.57573, 1.57528, 1.57528, 4.78731, 1.63721, -1.63631, 10.2709, 10.2738, 6.2275, 10.2732, -6.22515, -10.2714, 3.89487, 0.000556685, 0.000556685, -3.97028, -0.0759901, 3.97031, -23.0441, -6.5494, 6.54469, -3.96973, -3.97086, 0.0754336}, {-1.57528, -1.57573, -1.57573, -1.63629, -1.63676, 1.63676, 4.7272, -4.72585, -4.72585, 4.78731, 1.63721, -1.63631, 3.96973, 3.97086, -0.0754336, 10.5155, 6.62303, -10.5174, 10.196, 6.30349, 6.30349, -3.97028, -0.0759901, 3.97031, -3.89487, -0.000556685, -0.000556685, -23.119, -10.5197, 6.62068}, {-1.57528, -1.57573, -1.57573, -1.63629, -1.63676, 1.63676, -1.57573, 1.57528, 1.57528, -14.3619, -4.91163, 4.90893, 3.96973, 3.97086, -0.0754336, 3.97028, 0.0759901, -3.97031, 3.89487, 0.000556685, 0.000556685, 2.33085, 6.22695, 10.2732, 2.6503, 6.54649, -6.5476, 2.33321, -10.272, -6.2257}, {-2.40635, 2.40855, -2.40993, -1.57388, -1.57525, -1.57621, 3.20871, 3.21151, -0.0600473, -2.43695, -0.833412, 0.832954, 7.24946, 9.24051, 7.26022, -2.02076, -2.02253, 2.02253, -17.7925, -15.8233, -0.678532, 11.7686, 5.35618, -5.35435, 4.95766, 2.97727, 0.918721, -0.953948, -2.9395, -0.955365}, {0.802117, -0.80285, 0.803308, 4.72163, 4.72576, 4.72864, 3.20871, 3.21151, -0.0600473, -2.43695, -0.833412, 0.832954, -2.25452, 6.1509, -2.25787, -14.8556, -14.8686, 2.26272, -4.95766, -2.97727, -0.918721, 2.02076, 2.02253, -2.02253, 14.7055, 6.31092, -2.41309, -0.953948, -2.9395, -0.955365}, {0.802117, -0.80285, 0.803308, -1.57388, -1.57525, -1.57621, -9.62613, -9.63454, 0.180142, -2.43695, -0.833412, 0.832954, 0.953948, 2.9395, 0.955365, 4.27475, 4.27848, 8.32739, -8.16613, 0.234124, -4.13196, 2.02076, 2.02253, -2.02253, 4.95766, 2.97727, 0.918721, 8.79385, 0.394151, -4.28718}, {0.802117, -0.80285, 0.803308, -1.57388, -1.57525, -1.57621, 3.20871, 3.21151, -0.0600473, 7.31085, 2.50024, -2.49886, 0.953948, 2.9395, 0.955365, -2.02076, -2.02253, 2.02253, -4.95766, -2.97727, -0.918721, -1.18771, 5.23393, -5.23576, 11.2532, 9.27829, 7.22358, -13.7888, -15.7856, -0.715176}, {5.36291, -5.36781, 5.37088, 0, -3.15057, 0, -1.85687, -1.41402, 1.41389, 3.64451, 2.77532, 0.376399, 2.20964, 14.2849, 2.21292, 2.29522, 5.64214, -1.74767, 11.9323, 5.19225, -5.19032, -16.8733, -16.7434, 0.242074, -4.50486, 0.463834, -0.465254, -2.20964, -1.68266, -2.21292}, {-1.78764, 1.78927, -1.79029, 0, 9.4517, 0, -1.85687, -1.41402, 1.41389, 3.64451, 2.77532, 0.376399, 9.36019, -5.47442, 9.37409, 9.72271, 11.2982, -7.40324, 4.50486, -0.463834, 0.465254, -2.29522, -5.64214, 1.74767, -19.0829, -10.6374, -1.97085, -2.20964, -1.68266, -2.21292}, {-1.78764, 1.78927, -1.79029, 0, -3.15057, 0, 5.57061, 4.24206, -4.24168, 3.64451, 2.77532, 0.376399, 2.20964, 1.68266, 2.21292, 2.29522, 18.2444, -1.74767, 11.6554, -7.62091, 7.62642, -2.29522, -5.64214, 1.74767, -4.50486, 0.463834, -0.465254, -16.7877, -12.7839, -3.71852}, {-1.78764, 1.78927, -1.79029, 0, -3.15057, 0, -1.85687, -1.41402, 1.41389, -10.9335, -8.32596, -1.1292, 2.20964, 1.68266, 2.21292, 2.29522, 5.64214, -1.74767, 4.50486, -0.463834, 0.465254, 4.85533, -12.7992, 8.90884, -4.50486, 13.0661, -0.465254, 5.21784, 3.97342, -7.8685}, {-3.12618, -1.69082, 4.8169, -0.776768, 0.776768, 1.71093, 1.29482, -1.29482, 0.513906, -1.56011, -0.0455553, -0.619199, 2.77915, -4.76387, -6.97386, -0.640348, 0.640348, -2.75005, -8.06782, 6.08311, -0.706171, 6.8808, -0.458127, 5.22684, 2.88854, -0.903828, -1.34945, 0.32792, 1.6568, 0.130149}, {1.04206, 0.563608, -1.60563, 2.3303, -2.3303, -5.13278, 1.29482, -1.29482, 0.513906, -1.56011, -0.0455553, -0.619199, -4.49616, -3.91123, 6.29239, -5.81963, 5.81963, -4.80567, -2.88854, 0.903828, 1.34945, 0.640348, -0.640348, 2.75005, 9.12899, -0.721607, 1.12734, 0.32792, 1.6568, 0.130149}, {1.04206, 0.563608, -1.60563, -0.776768, 0.776768, 1.71093, -3.88446, 3.88446, -1.54172, -1.56011, -0.0455553, -0.619199, -0.32792, -1.6568, -0.130149, 2.46672, -2.46672, -9.59376, -7.05678, -1.3506, 7.77199, 0.640348, -0.640348, 2.75005, 2.88854, -0.903828, -1.34945, 6.56837, 1.83902, 2.60694}, {1.04206, 0.563608, -1.60563, -0.776768, 0.776768, 1.71093, 1.29482, -1.29482, 0.513906, 4.68034, 0.136666, 1.8576, -0.32792, -1.6568, -0.130149, -0.640348, 0.640348, -2.75005, -2.88854, 0.903828, 1.34945, -3.52789, -2.89478, 9.17259, 5.99561, -4.0109, -8.19316, -4.85136, 6.83608, -1.92547}, {0, 4.18682, -1.69558, 0, 0.106442, -1.13019, 1.31177, 1.47434, 0.246037, -1.31177, -0.185178, 0.318964, 0, 1.16773, 5.21915, -1.62143, -1.95396, 1.09288, -6.86849, -5.9947, -1.98688, 6.86849, 2.69467, -2.36873, 1.62143, 0.0973232, 1.00273, 0, -1.5935, -0.69838}, {6.66134e-16, -1.39561, 0.565192, -4.14281e-16, -0.319327, 3.39058, 1.31177, 1.47434, 0.246037, -1.31177, -0.185178, 0.318964, -3.55271e-15, 7.17592, -1.56239, -6.86849, -7.85133, 0.108727, -1.62143, -0.0973232, -1.00273, 1.62143, 1.95396, -1.09288, 6.86849, 0.838037, -0.273122, 1.11022e-15, -1.5935, -0.69838}, {6.66134e-16, -1.39561, 0.565192, -3.97019e-16, 0.106442, -1.13019, -3.9353, -4.42303, -0.738112, -1.31177, -0.185178, 0.318964, -2.22045e-16, 1.5935, 0.69838, -1.62143, -2.37973, 5.61365, -1.62143, 5.48511, -3.2635, 1.62143, 1.95396, -1.09288, 1.62143, 0.0973232, 1.00273, 5.24706, -0.852781, -1.97424}, {-2.22045e-16, -1.39561, 0.565192, 3.45234e-17, 0.106442, -1.13019, 1.31177, 1.47434, 0.246037, 3.9353, 0.555535, -0.956892, 2.22045e-16, 1.5935, 0.69838, -1.62143, -1.95396, 1.09288, -1.62143, -0.0973232, -1.00273, 1.62143, 7.53639, -3.35364, 1.62143, -0.328446, 5.52351, -5.24706, -7.49087, -1.68253}, {3.02999, -1.83569, -4.62902, -2.0783, 1.32959, -1.74182, 0.665193, -1.94149, 0.198817, 2.4231, 0, 0, 12.1305, -7.71818, 7.21305, 1.74669, 0.756347, 1.90726, -2.23457, 9.40942, -2.94828, -11.4391, -0.756347, -1.90726, -0.4262, -1.64347, 2.15301, -3.81734, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, 6.23489, -3.98877, 5.22547, 0.665193, -1.94149, 0.198817, 2.4231, 1.16789e-15, -1.19597e-16, 7.85732, -4.8474, -5.92628, -0.91408, 8.5223, 1.11199, 0.4262, 1.64347, -2.15301, -1.74669, -0.756347, -1.90726, -10.1186, -1.64347, 2.15301, -3.81734, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, -2.0783, 1.32959, -1.74182, -1.99558, 5.82447, -0.59645, 2.4231, 0, 0, 3.81734, -2.39981, 0.245751, 10.0599, -4.56202, 8.87456, 4.46618, -0.804126, -8.32504, -1.74669, -0.756347, -1.90726, -0.4262, -1.64347, 2.15301, -13.5097, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, -2.0783, 1.32959, -1.74182, 0.665193, -1.94149, 0.198817, -7.2693, 0, 0, 3.81734, -2.39981, 0.245751, 1.74669, 0.756347, 1.90726, 0.4262, 1.64347, -2.15301, 2.29329, -3.20394, -8.07929, 7.88699, -6.96183, 9.12031, -6.47811, 10.1658, -1.04102}, {-1.1204, -10.941, -3.69733, -1.78885, -1.78885, 0.204309, 1.41539, -1.85814, 0.960835, 0, 0, -2.39759, 8.90493, 4.85864, -2.59316, 0.461631, 4.50793, -1.4402, -7.87269, 5.2214, -6.55438, -0.461631, -4.50793, 11.0306, 2.21115, 2.21115, 2.71104, -1.74951, 2.29678, 1.77593}, {0.373467, 3.64699, 1.23244, 5.36656, 5.36656, -0.612928, 1.41539, -1.85814, 0.960835, 0, 0, -2.39759, 0.255645, -16.8847, -6.70571, -5.19992, 11.9405, -5.28354, -2.21115, -2.21115, -2.71104, -0.461631, -4.50793, 1.4402, 2.21115, 2.21115, 12.3014, -1.74951, 2.29678, 1.77593}, {0.373467, 3.64699, 1.23244, -1.78885, -1.78885, 0.204309, -4.24616, 5.57441, -2.88251, 0, 0, -2.39759, 1.74951, -2.29678, -1.77593, 7.61705, 11.6633, -2.25744, -3.70501, -16.7991, -7.64082, -0.461631, -4.50793, 1.4402, 2.21115, 2.21115, 2.71104, -1.74951, 2.29678, 11.3663}, {0.373467, 3.64699, 1.23244, -1.78885, -1.78885, 0.204309, 1.41539, -1.85814, 0.960835, 0, 0, 7.19277, 1.74951, -2.29678, -1.77593, 0.461631, 4.50793, -1.4402, -2.21115, -2.21115, -2.71104, -1.9555, -19.0959, -3.48958, 9.36656, 9.36656, 1.89381, -7.41106, 9.72932, -2.06741}, {3.67635, 0.128375, 3.75827, 1.3465, -0.311871, 0.167791, -0.0738998, -1.11087, 1.10252, -0.0471455, 1.46553, -0.0175582, -5.53561, 1.68587, 0.669927, -1.57302, 1.7586, -1.5702, 1.90169, 5.86948, -4.2244, 1.7616, -7.62073, 1.64043, -1.60609, -1.426, -0.185698, 0.14962, -0.438387, -1.34109}, {-1.22545, -0.0427917, -1.25276, -4.03949, 0.935613, -0.503374, -0.0738998, -1.11087, 1.10252, -0.0471455, 1.46553, -0.0175582, 4.75218, 0.609554, 6.35212, -1.27742, 6.20208, -5.98029, 1.60609, 1.426, 0.185698, 1.57302, -1.7586, 1.5702, -1.4175, -7.28813, -0.115465, 0.14962, -0.438387, -1.34109}, {-1.22545, -0.0427917, -1.25276, 1.3465, -0.311871, 0.167791, 0.221699, 3.33261, -3.30757, -0.0471455, 1.46553, -0.0175582, -0.14962, 0.438387, 1.34109, -6.959, 3.00609, -2.24136, 6.50789, 1.59717, 5.19673, 1.57302, -1.7586, 1.5702, -1.60609, -1.426, -0.185698, 0.338202, -6.30052, -1.27086}, {-1.22545, -0.0427917, -1.25276, 1.3465, -0.311871, 0.167791, -0.0738998, -1.11087, 1.10252, 0.141437, -4.3966, 0.0526746, -0.14962, 0.438387, 1.34109, -1.57302, 1.7586, -1.5702, 1.60609, 1.426, 0.185698, 6.47482, -1.58744, 6.58122, -6.99207, -0.17852, -0.856863, 0.445219, 4.00509, -5.75119}, {3.98391, -5.22497, -0.407969, -0.61239, -1.54296, -1.54296, -3.86726e-16, 3.96024e-17, 1.60567, 1.94036, -0.198701, -0.198701, 4.84797, 5.92622, 7.91093, 0.756955, 1.9072, -0.0775154, 1.64146, -2.15281, -8.57548, -8.51839, -1.1124, 0.87232, -1.64146, 2.15281, 2.15281, -2.39842, 0.245608, -1.73911}, {-1.32797, 1.74166, 0.13599, 1.83717, 4.62887, 4.62887, -1.16018e-15, 1.18807e-16, 1.60567, 1.94036, -0.198701, -0.198701, 7.71029, -7.21224, 1.19515, 0.756955, 1.9072, -6.50019, 1.64146, -2.15281, -2.15281, -0.756955, -1.9072, 0.0775154, -9.4029, 2.94761, 2.94761, -2.39842, 0.245608, -1.73911}, {-1.32797, 1.74166, 0.13599, -0.61239, -1.54296, -1.54296, 0, 0, -4.817, 1.94036, -0.198701, -0.198701, 2.39842, -0.245608, 1.73911, 3.20651, 8.07903, 6.09431, 6.95334, -9.11944, -2.69677, -0.756955, -1.9072, 0.0775154, -1.64146, 2.15281, 2.15281, -10.1599, 1.04041, -0.944303}, {-1.32797, 1.74166, 0.13599, -0.61239, -1.54296, -1.54296, 1.16018e-15, -1.18807e-16, 1.60567, -5.82108, 0.596103, 0.596103, 2.39842, -0.245608, 1.73911, 0.756955, 1.9072, -0.0775154, 1.64146, -2.15281, -2.15281, 4.55492, -8.87383, -0.466443, 0.808098, 8.32463, 8.32463, -2.39842, 0.245608, -8.16178}, {4.24495, 4.24616, 5.57441, 2.77721, -0.373467, 3.64699, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -12.7926, 3.70501, -16.7991, 0.461499, 0.461631, -4.50793, 18.2456, 1.74951, 2.29678, -7.61487, -7.61705, 11.6633, -5.64333, -1.74951, -2.29678, 1.6838, -2.21115, 2.21115}, {-1.41498, -1.41539, -1.85814, -8.33162, 1.1204, -10.941, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, 3.97613, 7.87269, 5.2214, 13.0638, 0.461631, -4.50793, 5.64333, 1.74951, 2.29678, -0.461499, -0.461631, 4.50793, -12.7967, -8.90493, 4.85864, 1.6838, -2.21115, 2.21115}, {-1.41498, -1.41539, -1.85814, 2.77721, -0.373467, 3.64699, 9.4517, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 2.21115, -2.21115, -10.6473, 1.9555, -19.0959, 11.3033, 7.41106, 9.72932, -0.461499, -0.461631, 4.50793, -5.64333, -1.74951, -2.29678, -5.46957, -9.36656, 9.36656}, {-1.41498, -1.41539, -1.85814, 2.77721, -0.373467, 3.64699, -3.15057, 0, 0, -5.36503, -5.36656, 5.36656, -1.6838, 2.21115, -2.21115, 0.461499, 0.461631, -4.50793, 5.64333, 1.74951, 2.29678, 5.19843, 5.19992, 11.9405, -16.7522, -0.255645, -16.8847, 14.2861, -2.21115, 2.21115}, {-5.69487, -2.66454e-15, -8.88178e-16, -0.76309, -0.00636856, -2.01559, -0.460311, 1.45577, 1.44144, -0.67489, -1.4494, 0.574147, 1.64917, 0.0333462, 10.5538, 1.51221, -1.79156, 0.709685, 0.063805, -7.62252, -7.54749, 1.18735, 7.58918, -3.00627, 1.77744, 1.79943, 1.78172, 1.40319, -0.00787198, -2.49141}, {1.89829, -1.55431e-15, 3.33067e-16, 2.28927, 0.0191057, 6.04677, -0.460311, 1.45577, 1.44144, -0.67489, -1.4494, 0.574147, -8.99635, 0.00787198, 2.49141, 3.35345, -7.61465, -5.05609, -1.77744, -1.79943, -1.78172, -1.51221, 1.79156, -0.709685, 4.477, 7.59705, -0.514866, 1.40319, -0.00787198, -2.49141}, {1.89829, -1.9984e-15, -1.22125e-15, -0.76309, -0.00636856, -2.01559, 1.38093, -4.36732, -4.32433, -0.67489, -1.4494, 0.574147, -1.40319, 0.00787198, 2.49141, 4.56457, -1.76609, 8.77205, -9.3706, -1.79943, -1.78172, -1.51221, 1.79156, -0.709685, 1.77744, 1.79943, 1.78172, 4.10275, 5.78974, -4.78799}, {1.89829, 1.33227e-15, -5.55112e-16, -0.76309, -0.00636856, -2.01559, -0.460311, 1.45577, 1.44144, 2.02467, 4.34821, -1.72244, -1.40319, 0.00787198, 2.49141, 1.51221, -1.79156, 0.709685, -1.77744, -1.79943, -1.78172, -9.10537, 1.79156, -0.709685, 4.8298, 1.82491, 9.84408, 3.24443, -5.83096, -8.25718}, {-1.1204, -4.37783, -10.941, 1.41539, 0.69601, -1.85814, -1.78885, 0.0170635, -1.78885, 0, -2.17235, 0, -7.87269, -5.44812, 5.2214, 0.461631, -0.881407, 4.50793, 8.90493, -1.89311, 4.85864, -0.461631, 9.57081, -4.50793, -1.74951, 1.82486, 2.29678, 2.21115, 2.66408, 2.21115}, {0.373467, 1.45928, 3.64699, -4.24616, -2.08803, 5.57441, -1.78885, 0.0170635, -1.78885, 0, -2.17235, 0, -3.70501, -8.50119, -16.7991, 7.61705, -0.949661, 11.6633, 1.74951, -1.82486, -2.29678, -0.461631, 0.881407, -4.50793, -1.74951, 10.5143, 2.29678, 2.21115, 2.66408, 2.21115}, {0.373467, 1.45928, 3.64699, 1.41539, 0.69601, -1.85814, 5.36656, -0.0511904, 5.36656, 0, -2.17235, 0, -2.21115, -2.66408, -2.21115, -5.19992, -3.66545, 11.9405, 0.255645, -7.66197, -16.8847, -0.461631, 0.881407, -4.50793, -1.74951, 1.82486, 2.29678, 2.21115, 11.3535, 2.21115}, {0.373467, 1.45928, 3.64699, 1.41539, 0.69601, -1.85814, -1.78885, 0.0170635, -1.78885, 0, 6.51705, 0, -2.21115, -2.66408, -2.21115, 0.461631, -0.881407, 4.50793, 1.74951, -1.82486, -2.29678, -1.9555, -4.9557, -19.0959, -7.41106, -0.959181, 9.72932, 9.36656, 2.59583, 9.36656}, {-4.15743, -0.83732, 1.25624, -1.32462, -1.53355, 0.226806, 0.107516, 1.61619, -1.60405, -0.168703, -0.361739, 1.79599, 5.22286, 7.6848, -0.669975, 1.50443, -0.10214, 1.70236, -2.27592, -8.80746, 8.91649, -0.829614, 1.5491, -8.88631, 1.84585, 2.34271, -2.50031, 0.0756322, -1.55058, -0.237251}, {1.38581, 0.279107, -0.418747, 3.97387, 4.60066, -0.680419, 0.107516, 1.61619, -1.60405, -0.168703, -0.361739, 1.79599, -5.61888, 0.434156, 1.91224, 1.07436, -6.56689, 8.11854, -1.84585, -2.34271, 2.50031, -1.50443, 0.10214, -1.70236, 2.52067, 3.78967, -9.68425, 0.0756322, -1.55058, -0.237251}, {1.38581, 0.279107, -0.418747, -1.32462, -1.53355, 0.226806, -0.322547, -4.84856, 4.81214, -0.168703, -0.361739, 1.79599, -0.0756322, 1.55058, 0.237251, 6.80292, 6.03208, 0.795135, -7.3891, -3.45914, 4.1753, -1.50443, 0.10214, -1.70236, 1.84585, 2.34271, -2.50031, 0.750446, -0.103625, -7.4212}, {1.38581, 0.279107, -0.418747, -1.32462, -1.53355, 0.226806, 0.107516, 1.61619, -1.60405, 0.50611, 1.08522, -5.38796, -0.0756322, 1.55058, 0.237251, 1.50443, -0.10214, 1.70236, -1.84585, -2.34271, 2.50031, -7.04767, -1.01429, -0.0273746, 7.14434, 8.47693, -3.40753, -0.354431, -8.01533, 6.17893}, {-9.45441, -1.42109e-14, 0, -1.78885, -1.78885, 1.78885, -1.36261, -1.36216, -1.78885, 0, 3.15102, 0, 5.47113, 9.36656, -9.36656, 3.89543, 3.89487, 0, 3.23931, 7.13238, 9.36656, -3.89543, -16.4989, 0, 2.21115, -1.68373, -2.21115, 1.68428, -2.21115, 2.21115}, {3.15147, 5.77316e-15, -1.39933e-15, 5.36656, 5.36656, -5.36656, -1.36261, -1.36216, -1.78885, 1.06591e-15, 3.15102, 1.39933e-15, -14.2902, 2.21115, -2.21115, 9.34589, 9.34353, 7.15542, -2.21115, 1.68373, 2.21115, -3.89543, -3.89487, 3.47389e-31, 2.21115, -14.2878, -2.21115, 1.68428, -2.21115, 2.21115}, {3.15147, 1.77636e-15, 2.66454e-15, -1.78885, -1.78885, 1.78885, 4.08784, 4.08649, 5.36656, 0, 3.15102, 0, -1.68428, 2.21115, -2.21115, 11.0508, 11.0503, -7.15542, -14.817, 1.68373, 2.21115, -3.89543, -3.89487, -3.55271e-15, 2.21115, -1.68373, -2.21115, 1.68428, -14.8152, 2.21115}, {3.15147, -2.66454e-15, 0, -1.78885, -1.78885, 1.78885, -1.36261, -1.36216, -1.78885, 0, -9.45305, 0, -1.68428, 2.21115, -2.21115, 3.89543, 3.89487, 0, -2.21115, 1.68373, 2.21115, -16.5013, -3.89487, 0, 9.36656, 5.47169, -9.36656, 7.13474, 3.23751, 9.36656}, {1.36235e-15, 1.07667, 3.62612, 1.31177, 0.0458057, 1.34099, -1.31177, -1.15409, -0.162924, 1.0026e-17, 1.46718, 0.0306378, -6.86849, 0.20377, -5.52749, -6.66134e-16, 1.36992, -1.45618, 6.86849, 6.48653, 2.34713, 6.2603e-16, -7.23863, 1.33362, -1.62143, -1.87015, -1.69543, 1.62143, -0.386993, 0.163515}, {-7.28501e-17, -0.358889, -1.20871, -3.9353, -0.137417, -4.02298, -1.31177, -1.15409, -0.162924, 1.18307e-15, 1.46718, 0.0306378, -1.62143, 1.82255, 4.67132, 5.24706, 5.9863, -0.804479, 1.62143, 1.87015, 1.69543, -1.55431e-15, -1.36992, 1.45618, -1.62143, -7.73886, -1.81798, 1.62143, -0.386993, 0.163515}, {5.92827e-17, -0.358889, -1.20871, 1.31177, 0.0458057, 1.34099, 3.9353, 3.46228, 0.488772, -9.47461e-16, 1.46718, 0.0306378, -1.62143, 0.386993, -0.163515, -5.24706, 1.1867, -6.82015, 1.62143, 3.30571, 6.53026, 1.11022e-15, -1.36992, 1.45618, -1.62143, -1.87015, -1.69543, 1.62143, -6.25571, 0.0409633}, {0, -0.358889, -1.20871, 1.31177, 0.0458057, 1.34099, -1.31177, -1.15409, -0.162924, 0, -4.40153, -0.0919135, -1.62143, 0.386993, -0.163515, 0, 1.36992, -1.45618, 1.62143, 1.87015, 1.69543, 0, 0.0656375, 6.29101, -6.86849, -2.05337, -7.05941, 6.86849, 4.22939, 0.815211}, {1.26288e-15, -3.55271e-15, -3.26126, -1.4431, -0.571101, -0.587405, 1.45561, -1.44292, 0.31363, -0.0125109, 2.01402, -0.813311, 7.55617, 2.99032, 1.73198, -0.0154644, 2.48947, 0.338405, -7.62167, 7.55524, -2.9859, 0.0655081, -10.5456, 2.91484, 1.79923, -1.78355, 1.73138, -1.78377, -0.70592, 0.61764}, {9.0726e-16, -4.44089e-16, 1.08709, 4.3293, 1.7133, 1.76222, 1.45561, -1.44292, 0.31363, -0.0125109, 2.01402, -0.813311, 1.78377, 0.70592, -4.96598, -5.83791, 8.26116, -0.916114, -1.79923, 1.78355, -1.73138, 0.0154644, -2.48947, -0.338405, 1.84928, -9.83965, 4.98462, -1.78377, -0.70592, 0.61764}, {4.63171e-16, 8.88178e-16, 1.08709, -1.4431, -0.571101, -0.587405, -4.36683, 4.32877, -0.940889, -0.0125109, 2.01402, -0.813311, 1.78377, 0.70592, -0.61764, 5.75693, 4.77387, 2.68803, -1.79923, 1.78355, -6.07972, 0.0154644, -2.48947, -0.338405, 1.79923, -1.78355, 1.73138, -1.73373, -8.76202, 3.87088}, {0, -4.44089e-16, 1.08709, -1.4431, -0.571101, -0.587405, 1.45561, -1.44292, 0.31363, 0.0375328, -6.04207, 2.43993, 1.78377, 0.70592, -0.61764, -0.0154644, 2.48947, 0.338405, -1.79923, 1.78355, -1.73138, 0.0154644, -2.48947, -4.68675, 7.57163, 0.500853, 4.081, -7.60621, 5.06577, -0.63688}, {2.18368e-11, -2.07612e-11, -5.36656, -2.34313, 0, 0, 2.34313, -2.34313, -1.78885, 0, 2.34313, 0, 12.2688, -8.55449e-12, -2.21115, -8.99725e-12, 2.89626, 2.21115, -12.2688, 12.2688, 7.15542, 8.99725e-12, -12.2688, -2.21115, 2.89626, -2.89626, 0, -2.89626, 8.55449e-12, 2.21115}, {-7.27948e-12, 6.92291e-12, 1.78885, 7.02938, 0, 0, 2.34313, -2.34313, -1.78885, -1.36297e-15, 2.34313, 1.04056e-15, 2.89626, -3.62483e-11, -9.36656, -9.3725, 12.2688, 9.36656, -2.89626, 2.89626, 8.4211e-16, 8.99947e-12, -2.89626, -2.21115, 2.89626, -12.2688, -5.44843e-15, -2.89626, 8.55715e-12, 2.21115}, {-7.27773e-12, 6.92024e-12, 1.78885, -2.34313, 0, 0, -7.02938, 7.02938, 5.36656, 0, 2.34313, 0, 2.89626, -8.55405e-12, -2.21115, 9.3725, 2.89626, 2.21115, -2.89626, 2.89626, -7.15542, 8.99636e-12, -2.89626, -2.21115, 2.89626, -2.89626, 0, -2.89626, -9.3725, 2.21115}, {-7.27951e-12, 6.9198e-12, 1.78885, -2.34313, 0, 0, 2.34313, -2.34313, -1.78885, 0, -7.02938, 0, 2.89626, -8.55316e-12, -2.21115, -8.99814e-12, 2.89626, 2.21115, -2.89626, 2.89626, -4.44089e-16, 3.81171e-11, -2.89626, -9.36656, 12.2688, -2.89626, 0, -12.2688, 9.3725, 9.36656}, {0, -2.67212e-17, 7.02938, 0, -2.34313, 0, -1.78885, 2.34313, 2.34566, 1.78885, 1.02081e-11, -0.00253498, 0, 12.2688, 2.89626, 2.21115, 1.26184e-11, -2.8994, 9.36656, -12.2688, -9.38578, -9.36656, -5.34508e-11, 2.90954, -2.21115, 2.89626, 0.00313341, 0, -2.89626, -2.89626}, {0, 3.72666e-16, -2.34313, 0, 7.02938, 0, -1.78885, 2.34313, 2.34566, 1.78885, 1.02097e-11, -0.00253498, 0, 2.89626, 12.2688, 9.36656, -9.3725, -12.282, 2.21115, -2.89626, -0.00313341, -2.21115, -1.26201e-11, 2.8994, -9.36656, 2.89626, 0.0132733, 0, -2.89626, -2.89626}, {0, -1.47432e-16, -2.34313, 0, -2.34313, 0, 5.36656, -7.02938, -7.03698, 1.78885, 1.02102e-11, -0.00253498, 0, 2.89626, 2.89626, 2.21115, 9.3725, -2.8994, 2.21115, -2.89626, 9.36937, -2.21115, -1.26201e-11, 2.8994, -2.21115, 2.89626, 0.00313341, -7.15542, -2.89626, -2.88612}, {-2.22045e-16, -3.98999e-17, -2.34313, 0, -2.34313, 0, -1.78885, 2.34313, 2.34566, -5.36656, -3.06329e-11, 0.00760494, 4.44089e-16, 2.89626, 2.89626, 2.21115, 1.26215e-11, -2.8994, 2.21115, -2.89626, -0.00313341, -2.21115, -1.26209e-11, 12.2719, -2.21115, 12.2688, 0.00313341, 7.15542, -12.2688, -12.2789}, {3.55271e-15, -9.45441, -2.66454e-14, 1.78885, -1.78885, -1.78885, -1.78885, -1.36261, -1.36261, 0, 0, 3.15147, -9.36656, 5.47113, 9.36656, -1.77636e-15, 3.89543, 3.89543, 9.36656, 3.23931, 7.13474, 1.77636e-15, -3.89543, -16.5013, -2.21115, 2.21115, -1.68428, 2.21115, 1.68428, -2.21115}, {3.76824e-16, 3.15147, -2.22045e-15, -5.36656, 5.36656, 5.36656, -1.78885, -1.36261, -1.36261, 1.39953e-15, 1.06606e-15, 3.15147, -2.21115, -14.2902, 2.21115, 7.15542, 9.34589, 9.34589, 2.21115, -2.21115, 1.68428, -2.22045e-15, -3.89543, -3.89543, -2.21115, 2.21115, -14.2902, 2.21115, 1.68428, -2.21115}, {0, 3.15147, -7.10543e-15, 1.78885, -1.78885, -1.78885, 5.36656, 4.08784, 4.08784, 0, 0, 3.15147, -2.21115, -1.68428, 2.21115, -7.15542, 11.0508, 11.0508, 2.21115, -14.817, 1.68428, 0, -3.89543, -3.89543, -2.21115, 2.21115, -1.68428, 2.21115, 1.68428, -14.817}, {-5.55112e-15, 3.15147, 4.44089e-16, 1.78885, -1.78885, -1.78885, -1.78885, -1.36261, -1.36261, 0, 0, -9.45441, -2.21115, -1.68428, 2.21115, -7.10543e-15, 3.89543, 3.89543, 2.21115, -2.21115, 1.68428, 3.01981e-14, -16.5013, -3.89543, -9.36656, 9.36656, 5.47113, 9.36656, 7.13474, 3.23931}, {-5.36656, 7.03835, 7.02938, -1.78885, -6.94208e-12, -7.11741e-12, 0, 2.34612, 2.72942e-15, 0, 0, 2.34313, 7.15542, 2.89996, 2.89626, 2.21115, -2.89996, 8.79423e-12, -2.21115, -9.38447, 2.89626, -2.21115, 2.89996, -9.3725, 2.21115, 8.58089e-12, -2.89626, 0, -2.89996, -2.89626}, {1.78885, -2.34612, -2.34313, 5.36656, 2.08278e-11, 2.13522e-11, 0, 2.34612, 1.36471e-15, 0, -1.36471e-15, 2.34313, -7.15542, 12.2844, 12.2688, 2.21115, -12.2844, 8.79045e-12, -2.21115, -8.58264e-12, 2.89626, -2.21115, 2.89996, -8.79533e-12, 2.21115, 8.58868e-12, -12.2688, 0, -2.89996, -2.89626}, {1.78885, -2.34612, -2.34313, -1.78885, -6.94417e-12, -7.11741e-12, 0, -7.03835, 0, 0, 0, 2.34313, -4.44089e-16, 2.89996, 2.89626, 9.36656, -2.89996, 3.72672e-11, -9.36656, 9.38447, 12.2688, -2.21115, 2.89996, -8.79702e-12, 2.21115, 8.58346e-12, -2.89626, 0, -2.89996, -12.2688}, {1.78885, -2.34612, -2.34313, -1.78885, -6.94104e-12, -7.11845e-12, 0, 2.34612, 2.72942e-15, 0, 0, -7.02938, -4.44089e-16, 2.89996, 2.89626, 2.21115, -2.89996, 8.79551e-12, -2.21115, -8.57902e-12, 2.89626, -9.36656, 12.2844, 9.3725, 9.36656, 3.63438e-11, -2.89626, 0, -12.2844, -2.89626}, {5.36656, -5.36656, 5.36656, 3.15147, 0, 0, -1.36261, -1.78885, -1.36216, 0, 0, 3.15102, -14.2902, -2.21115, 2.21115, -2.21115, 2.21115, 1.68373, 9.34589, 7.15542, 9.34353, 2.21115, -2.21115, -14.2878, -3.89543, 0, -3.89487, 1.68428, 2.21115, -2.21115}, {-1.78885, 1.78885, -1.78885, -9.45441, -4.1986e-15, -1.05928e-14, -1.36261, -1.78885, -1.36216, 1.06591e-15, 1.39933e-15, 3.15102, 5.47113, -9.36656, 9.36656, 3.23931, 9.36656, 7.13238, 3.89543, 3.0155e-15, 3.89487, 2.21115, -2.21115, -1.68373, -3.89543, -9.05692e-15, -16.4989, 1.68428, 2.21115, -2.21115}, {-1.78885, 1.78885, -1.78885, 3.15147, 0, 0, 4.08784, 5.36656, 4.08649, 0, 0, 3.15102, -1.68428, -2.21115, 2.21115, -14.817, 2.21115, 1.68373, 11.0508, -7.15542, 11.0503, 2.21115, -2.21115, -1.68373, -3.89543, 0, -3.89487, 1.68428, 2.21115, -14.8152}, {-1.78885, 1.78885, -1.78885, 3.15147, 0, 0, -1.36261, -1.78885, -1.36216, 0, 0, -9.45305, -1.68428, -2.21115, 2.21115, -2.21115, 2.21115, 1.68373, 3.89543, -4.44089e-16, 3.89487, 9.36656, -9.36656, 5.47169, -16.5013, 0, -3.89487, 7.13474, 9.36656, 3.23751}, {3.37408, 4.04519, 4.04519, 1.73606, 1.52739, 0.215622, 1.28983, 0.0265046, 1.33827, -1.90119, -0.205494, -0.205494, -7.69991, -6.33079, 0.5377, -3.7402, -1.92072, -1.92072, -5.36342, 1.52793, -5.34056, 11.345, 2.74269, 2.74269, 0.204116, -1.63395, -0.0125188, 0.755686, 0.221243, -1.40019}, {-1.12469, -1.3484, -1.3484, -5.20817, -4.58216, -0.646866, 1.28983, 0.0265046, 1.33827, -1.90119, -0.205494, -0.205494, 3.74309, 5.17235, 6.79378, -8.89951, -2.02673, -7.27379, -0.204116, 1.63395, 0.0125188, 3.7402, 1.92072, 1.92072, 7.80888, -0.811974, 0.809457, 0.755686, 0.221243, -1.40019}, {-1.12469, -1.3484, -1.3484, 1.73606, 1.52739, 0.215622, -3.86948, -0.0795138, -4.01481, -1.90119, -0.205494, -0.205494, -0.755686, -0.221243, 1.40019, -10.6844, -8.03027, -2.7832, 4.29466, 7.02754, 5.40611, 3.7402, 1.92072, 1.92072, 0.204116, -1.63395, -0.0125188, 8.36045, 1.04322, -0.578212}, {-1.12469, -1.3484, -1.3484, 1.73606, 1.52739, 0.215622, 1.28983, 0.0265046, 1.33827, 5.70357, 0.616482, 0.616482, -0.755686, -0.221243, 1.40019, -3.7402, -1.92072, -1.92072, -0.204116, 1.63395, 0.0125188, 8.23897, 7.31431, 7.31431, -6.74011, -7.7435, -0.875007, -4.40362, 0.115225, -6.75327}, {7.02938, 7.0206, 5.36656, -2.72401e-15, 2.34147, -1.03982e-15, 2.34313, 0, 0, -1.04066e-11, -0.00126659, 1.78885, 2.89626, -9.36743, 2.21115, -2.89626, -2.89421, 1.28529e-15, -9.3725, 2.89265, 2.21115, 2.89626, 2.89928, -7.15542, 1.28666e-11, -2.89265, -2.21115, -2.89626, 0.00156559, -2.21115}, {-2.34313, -2.3402, -1.78885, 4.08602e-15, -7.0244, -3.11946e-15, 2.34313, 7.36763e-19, -1.04056e-15, -1.0403e-11, -0.00126659, 1.78885, 12.2688, 9.35923, 9.36656, -12.2688, -2.89421, 4.16314e-15, -1.28599e-11, 2.89265, 2.21115, 2.89626, 2.89421, 4.43179e-16, 5.44723e-11, -2.88758, -9.36656, -2.89626, 0.00156559, -2.21115}, {-2.34313, -2.3402, -1.78885, -2.41965e-26, 2.34147, 4.15928e-15, -7.02938, 0, 0, -1.04066e-11, -0.00126659, 1.78885, 2.89626, -0.00156559, 2.21115, -2.89626, -12.2601, -2.17783e-14, 9.3725, 12.2534, 9.36656, 2.89626, 2.89421, 5.58524e-15, 1.28633e-11, -2.89265, -2.21115, -2.89626, 0.00663197, -9.36656}, {-2.34313, -2.3402, -1.78885, 6.05094e-27, 2.34147, -1.03982e-15, 2.34313, 0, 0, 3.12292e-11, 0.00379978, -5.36656, 2.89626, -0.00156559, 2.21115, -2.89626, -2.89421, 1.28529e-15, -1.28666e-11, 2.89265, 2.21115, 12.2688, 12.255, 7.15542, 1.28671e-11, -12.2585, -2.21115, -12.2688, 0.00156559, -2.21115}, {-3.69587, -1.12113, -5.61393, -0.115297, -1.49037, 0.58988, -0.136463, 0.136463, -2.07323, -0.980196, 0.980196, -0.387956, -0.919078, 7.34175, -5.40172, 0.311194, 1.67352, 1.83353, -0.80825, -1.17646, 8.54253, 3.60959, -5.59431, -0.281701, 1.3541, 0.630611, -0.249592, 1.38027, -1.38027, 3.0422}, {1.23196, 0.373711, 1.87131, 0.345892, 4.47111, -1.76964, -0.136463, 0.136463, -2.07323, -0.980196, 0.980196, -0.387956, -6.30809, -0.114578, -10.5274, 0.857047, 1.12767, 10.1265, -1.3541, -0.630611, 0.249592, -0.311194, -1.67352, -1.83353, 5.27489, -3.29017, 1.30223, 1.38027, -1.38027, 3.0422}, {1.23196, 0.373711, 1.87131, -0.115297, -1.49037, 0.58988, 0.40939, -0.40939, 6.2197, -0.980196, 0.980196, -0.387956, -1.38027, 1.38027, -3.0422, 0.772383, 7.635, -0.525997, -6.28193, -2.12546, -7.23564, -0.311194, -1.67352, -1.83353, 1.3541, 0.630611, -0.249592, 5.30105, -5.30105, 4.59402}, {1.23196, 0.373711, 1.87131, -0.115297, -1.49037, 0.58988, -0.136463, 0.136463, -2.07323, 2.94059, -2.94059, 1.16387, -1.38027, 1.38027, -3.0422, 0.311194, 1.67352, 1.83353, -1.3541, -0.630611, 0.249592, -5.23902, -3.16837, -9.31876, 1.81529, 6.59209, -2.60911, 1.92612, -1.92612, 11.3351}, {5.57441, -4.24616, -4.24616, 3.64699, 0.373467, -2.778, -1.78885, -1.78885, -1.78885, 0, 0, 3.15147, -16.7991, -3.70501, 12.7963, -2.29678, 1.74951, 5.64494, 11.6633, 7.61705, 7.61705, 2.29678, -1.74951, -18.2508, -4.50793, -0.461631, -0.461631, 2.21115, 2.21115, -1.68428}, {-1.85814, 1.41539, 1.41539, -10.941, -1.1204, 8.334, -1.78885, -1.78885, -1.78885, 1.39953e-15, 1.39953e-15, 3.15147, 5.2214, -7.87269, -3.97726, 4.85864, 8.90493, 12.8004, 4.50793, 0.461631, 0.461631, 2.29678, -1.74951, -5.64494, -4.50793, -0.461631, -13.0675, 2.21115, 2.21115, -1.68428}, {-1.85814, 1.41539, 1.41539, 3.64699, 0.373467, -2.778, 5.36656, 5.36656, 5.36656, 0, 0, 3.15147, -2.21115, -2.21115, 1.68428, -16.8847, 0.255645, 16.7569, 11.9405, -5.19992, -5.19992, 2.29678, -1.74951, -5.64494, -4.50793, -0.461631, -0.461631, 2.21115, 2.21115, -14.2902}, {-1.85814, 1.41539, 1.41539, 3.64699, 0.373467, -2.778, -1.78885, -1.78885, -1.78885, 0, 0, -9.45441, -2.21115, -2.21115, 1.68428, -2.29678, 1.74951, 5.64494, 4.50793, 0.461631, 0.461631, 9.72932, -7.41106, -11.3065, -19.0959, -1.9555, 10.6504, 9.36656, 9.36656, 5.47113}, {0.00760494, 5.36656, -0.00379978, 1.35906e-15, -2.07964e-15, 2.34147, -2.34059, 1.78885, -2.34273, 2.34313, 0, 0, 0.00313341, 2.21115, -12.2616, 2.89313, -2.21115, 0.00156559, 12.2586, -7.15542, 12.2651, -12.2656, 2.21115, -0.00156559, -2.89626, 2.57058e-15, -2.89421, -0.00313341, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, -8.16761e-15, 3.11946e-15, -7.0244, -2.34059, 1.78885, -2.34273, 2.34313, -1.04056e-15, 1.36274e-15, 0.0132733, 9.36656, -2.90084, 12.2555, -9.36656, 9.3725, 2.89626, -2.1274e-15, 2.89421, -2.89313, 2.21115, -0.00156559, -12.2688, 6.73371e-15, -2.89421, -0.00313341, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, 5.44802e-15, 0, 2.34147, 7.02177, -5.36656, 7.0282, 2.34313, 0, 0, 0.00313341, 2.21115, -2.89578, 2.89313, -2.21115, -9.3643, 2.9064, 7.15542, 2.88915, -2.89313, 2.21115, -0.00156559, -2.89626, 0, -2.89421, -9.37564, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, -1.36201e-15, 0, 2.34147, -2.34059, 1.78885, -2.34273, -7.02938, 0, 0, 0.00313341, 2.21115, -2.89578, 2.89313, -2.21115, 0.00156559, 2.89626, 4.44089e-16, 2.89421, -2.88299, 9.36656, -0.00663197, -2.89626, 0, -12.2601, 9.35923, -9.36656, 12.2667}, {-2.0499, 2.05263, 6.32666, 0.872781, 1.47234, -0.0861955, 0.376973, -0.375702, 1.61414, -1.93305, -0.412429, 0.580942, -5.41454, -6.86355, 3.05805, -1.54478, -1.35552, -1.88864, -2.81846, 2.81293, -5.84502, 9.277, 3.00524, -0.435124, 1.31057, -1.31012, -0.61154, 1.92342, 0.974184, -2.71327}, {0.683301, -0.68421, -2.10889, -2.61834, -4.41703, 0.258586, 0.376973, -0.375702, 1.61414, -1.93305, -0.412429, 0.580942, -4.65662, 1.76266, 11.1488, -3.05267, 0.147289, -8.34521, -1.31057, 1.31012, 0.61154, 1.54478, 1.35552, 1.88864, 9.04279, 0.339593, -2.93531, 1.92342, 0.974184, -2.71327}, {0.683301, -0.68421, -2.10889, 0.872781, 1.47234, -0.0861955, -1.13092, 1.12711, -4.84242, -1.93305, -0.412429, 0.580942, -1.92342, -0.974184, 2.71327, -5.0359, -7.24489, -1.54386, -4.04377, 4.04697, 9.04709, 1.54478, 1.35552, 1.88864, 1.31057, -1.31012, -0.61154, 9.65564, 2.6239, -5.03704}, {0.683301, -0.68421, -2.10889, 0.872781, 1.47234, -0.0861955, 0.376973, -0.375702, 1.61414, 5.79916, 1.23729, -1.74283, -1.92342, -0.974184, 2.71327, -1.54478, -1.35552, -1.88864, -1.31057, 1.31012, 0.61154, -1.18842, 4.09236, 10.3242, -2.18055, -7.19949, -0.266758, 0.41553, 2.47699, -9.16983}, {3.84226, 4.31846, 0.720662, 0.104325, 0.223697, -1.11063, 1.27099, 0.0329107, 0.803582, -0.0945646, 1.18288, 0.547265, 1.03685, 0.608011, 6.11224, -1.69999, -0.317185, 0.379527, -5.07191, 1.60698, -3.91068, 2.07825, -4.41433, -2.56859, -0.0120645, -1.73863, 0.696352, -1.45415, -1.5028, -1.66974}, {-1.28075, -1.43949, -0.240221, -0.312975, -0.671092, 3.33188, 1.27099, 0.0329107, 0.803582, -0.0945646, 1.18288, 0.547265, 6.57716, 7.26075, 2.63062, -6.78396, -0.448828, -2.8348, 0.0120645, 1.73863, -0.696352, 1.69999, 0.317185, -0.379527, 0.366194, -6.47014, -1.49271, -1.45415, -1.5028, -1.66974}, {-1.28075, -1.43949, -0.240221, 0.104325, 0.223697, -1.11063, -3.81298, -0.0987322, -2.41075, -0.0945646, 1.18288, 0.547265, 1.45415, 1.5028, 1.66974, -2.11729, -1.21197, 4.82203, 5.13508, 7.49658, 0.26453, 1.69999, 0.317185, -0.379527, -0.0120645, -1.73863, 0.696352, -1.07589, -6.23432, -3.8588}, {-1.28075, -1.43949, -0.240221, 0.104325, 0.223697, -1.11063, 1.27099, 0.0329107, 0.803582, 0.283694, -3.54864, -1.64179, 1.45415, 1.5028, 1.66974, -1.69999, -0.317185, 0.379527, 0.0120645, 1.73863, -0.696352, 6.823, 6.07514, 0.581356, -0.429365, -2.63341, 5.13886, -6.53812, -1.63444, -4.88406}, {6.08004, 1.41594, 0.0377686, 0.57469, 1.08447, 1.45022, 1.45199, 0.720135, -1.43763, 0, -1.33263, 0, -0.504, -5.09498, -7.57787, -2.50511, -2.23062, -0.0155615, -5.09761, -3.18728, 7.54308, 2.50511, 7.56114, 0.0155615, -0.710355, 0.306735, -1.79257, -1.79476, 0.757084, 1.77701}, {-2.02668, -0.471981, -0.0125895, -1.72407, -3.25342, -4.35065, 1.45199, 0.720135, -1.43763, 0, -1.33263, 0, 9.90148, 1.13084, -1.72665, -8.31307, -5.11116, 5.73495, 0.710355, -0.306735, 1.79257, 2.50511, 2.23062, 0.0155615, -0.710355, 5.63725, -1.79257, -1.79476, 0.757084, 1.77701}, {-2.02668, -0.471981, -0.0125895, 0.57469, 1.08447, 1.45022, -4.35597, -2.1604, 4.31288, 0, -1.33263, 0, 1.79476, -0.757084, -1.77701, -4.80387, -6.56852, -5.81643, 8.81707, 1.58119, 1.84292, 2.50511, 2.23062, 0.0155615, -0.710355, 0.306735, -1.79257, -1.79476, 6.0876, 1.77701}, {-2.02668, -0.471981, -0.0125895, 0.57469, 1.08447, 1.45022, 1.45199, 0.720135, -1.43763, 0, 3.99789, 0, 1.79476, -0.757084, -1.77701, -2.50511, -2.23062, -0.0155615, 0.710355, -0.306735, 1.79257, 10.6118, 4.11854, 0.0659197, -3.00911, -4.03116, -7.59343, -7.60272, -2.12346, 7.52752}, {-1.37732, 4.35589, 4.31302, -1.40475, 2.02293, -0.00626368, 1.89829, -6.72683e-16, 1.70116e-15, -0.952649, -0.570969, 1.44394, 6.78788, -8.79749, 1.80986, -0.610051, -2.50048, 0.00774234, -10.5071, 1.79473, 1.77706, 4.42065, 4.78436, -5.78349, 2.9139, -1.79473, -1.77706, -1.16888, 0.705756, -1.7848}, {0.459107, -1.45196, -1.43767, 4.21425, -6.0688, 0.018791, 1.89829, -4.0361e-16, 1.0207e-15, -0.952649, -0.570969, 1.44394, -0.66755, 5.1021, 7.53549, -8.20322, -2.50048, 0.00774234, -2.9139, 1.79473, 1.77706, 0.610051, 2.50048, -0.00774234, 6.7245, 0.489149, -7.5528, -1.16888, 0.705756, -1.7848}, {0.459107, -1.45196, -1.43767, -1.40475, 2.02293, -0.00626368, -5.69487, 0, 0, -0.952649, -0.570969, 1.44394, 1.16888, -0.705756, 1.7848, 5.00895, -10.5922, 0.0327971, -4.75033, 7.60258, 7.52775, 0.610051, 2.50048, -0.00774234, 2.9139, -1.79473, -1.77706, 2.64172, 2.98963, -7.56055}, {0.459107, -1.45196, -1.43767, -1.40475, 2.02293, -0.00626368, 1.89829, -1.34537e-16, 3.40233e-16, 2.85795, 1.71291, -4.33181, 1.16888, -0.705756, 1.7848, -0.610051, -2.50048, 0.00774234, -2.9139, 1.79473, 1.77706, -1.22638, 8.30834, 5.74295, 8.5329, -9.88646, -1.75201, -8.76204, 0.705756, -1.7848}, {-5.36656, -5.36656, -5.36656, -0.373467, -3.64699, -0.373467, 0, 0, -1.60567, -1.41539, 1.85814, 0.190281, -0.255645, 16.8847, -0.255645, 0.461631, 4.50793, 2.44635, -2.21115, -2.21115, 6.19624, 5.19992, -11.9405, -3.20747, 2.21115, 2.21115, 0.226431, 1.74951, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 1.1204, 10.941, 1.1204, 0, 0, -1.60567, -1.41539, 1.85814, 0.190281, -8.90493, -4.85864, -8.90493, 0.461631, 4.50793, 8.86902, -2.21115, -2.21115, -0.226431, -0.461631, -4.50793, -2.44635, 7.87269, -5.2214, -0.534693, 1.74951, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, -0.373467, -3.64699, -0.373467, 0, 0, 4.817, -1.41539, 1.85814, 0.190281, -1.74951, 2.29678, -1.74951, 1.9555, 19.0959, 3.94022, -9.36656, -9.36656, -7.38185, -0.461631, -4.50793, -2.44635, 2.21115, 2.21115, 0.226431, 7.41106, -9.72932, 0.988391}, {1.78885, 1.78885, 1.78885, -0.373467, -3.64699, -0.373467, 0, 0, -1.60567, 4.24616, -5.57441, -0.570843, -1.74951, 2.29678, -1.74951, 0.461631, 4.50793, 2.44635, -2.21115, -2.21115, -0.226431, -7.61705, -11.6633, -9.60176, 3.70501, 16.7991, 1.7203, 1.74951, -2.29678, 8.17219}, {-8.88178e-15, -9.45441, 5.32907e-15, 1.78885, -1.36261, -1.36261, -1.78885, -1.78885, -1.78885, 0, 0, 3.15147, -9.36656, 3.23931, 7.13474, 3.55271e-15, 3.89543, 3.89543, 9.36656, 5.47113, 9.36656, -3.55271e-15, -3.89543, -16.5013, -2.21115, 1.68428, -2.21115, 2.21115, 2.21115, -1.68428}, {1.48705e-15, 3.15147, -8.88178e-16, -5.36656, 4.08784, 4.08784, -1.78885, -1.78885, -1.78885, 1.39953e-15, 1.39953e-15, 3.15147, -2.21115, -14.817, 1.68428, 7.15542, 11.0508, 11.0508, 2.21115, -1.68428, 2.21115, -3.55271e-15, -3.89543, -3.89543, -2.21115, 1.68428, -14.817, 2.21115, 2.21115, -1.68428}, {2.88658e-15, 3.15147, -2.22045e-15, 1.78885, -1.36261, -1.36261, 5.36656, 5.36656, 5.36656, 0, 0, 3.15147, -2.21115, -2.21115, 1.68428, -7.15542, 9.34589, 9.34589, 2.21115, -14.2902, 2.21115, -3.55271e-15, -3.89543, -3.89543, -2.21115, 1.68428, -2.21115, 2.21115, 2.21115, -14.2902}, {0, 3.15147, 2.22045e-15, 1.78885, -1.36261, -1.36261, -1.78885, -1.78885, -1.78885, 0, 0, -9.45441, -2.21115, -2.21115, 1.68428, 0, 3.89543, 3.89543, 2.21115, -1.68428, 2.21115, 0, -16.5013, -3.89543, -9.36656, 7.13474, 3.23931, 9.36656, 9.36656, 5.47113}, {3.05492, -2.11527, -4.36034, 0.668117, -1.63909, -0.00517894, 0.911433, 1.21439, 0.00383706, -0.561241, -0.2804, -1.4521, -2.23961, 7.71083, -1.76944, -1.95243, 0.524948, 0.00165865, -3.51362, -7.23019, -1.81665, 4.1974, 0.59665, 5.80676, -0.132105, 2.37262, 1.8013, -0.43286, -1.15448, 1.79016}, {-1.01831, 0.705091, 1.45345, -2.00435, 4.91726, 0.0155368, 0.911433, 1.21439, 0.00383706, -0.561241, -0.2804, -1.4521, 4.50609, -1.66588, -7.60394, -5.59816, -4.33263, -0.0136896, 0.132105, -2.37262, -1.8013, 1.95243, -0.524948, -0.00165865, 2.11286, 3.49421, 7.60972, -0.43286, -1.15448, 1.79016}, {-1.01831, 0.705091, 1.45345, 0.668117, -1.63909, -0.00517894, -2.7343, -3.64318, -0.0115112, -0.561241, -0.2804, -1.4521, 0.43286, 1.15448, -1.79016, -4.6249, 7.08129, 0.0223744, 4.20534, -5.19298, -7.61508, 1.95243, -0.524948, -0.00165865, -0.132105, 2.37262, 1.8013, 1.81211, -0.0328828, 7.59857}, {-1.01831, 0.705091, 1.45345, 0.668117, -1.63909, -0.00517894, 0.911433, 1.21439, 0.00383706, 1.68372, 0.841199, 4.35631, 0.43286, 1.15448, -1.79016, -1.95243, 0.524948, 0.00165865, 0.132105, -2.37262, -1.8013, 6.02566, -3.34531, -5.81544, -2.80457, 8.92896, 1.82202, -4.07859, -6.01206, 1.77481}, {5.82171, 7.62554, -0.596168, 1.32981, 1.74185, -1.74185, 0.61076, -1.54312, 1.54312, 0, 2.34313, 0, -4.5643, -5.97853, 8.87479, -2.39867, -0.245635, 0.245635, -0.799305, 11.2218, -8.32553, 2.39867, -9.12687, -0.245635, -1.64373, -5.0493, 2.15304, -0.754941, -0.988857, -1.90741}, {-1.94057, -2.54185, 0.198723, -3.98943, -5.22554, 5.22554, 0.61076, -1.54312, 1.54312, -3.55272e-16, 2.34313, -8.97618e-16, 8.51722, 11.1562, 1.11252, -4.84171, 5.92686, -5.92686, 1.64373, 5.0493, -2.15304, 2.39867, 0.245635, -0.245635, -1.64373, -14.4218, 2.15304, -0.754941, -0.988857, -1.90741}, {-1.94057, -2.54185, 0.198723, 1.32981, 1.74185, -1.74185, -1.83228, 4.62937, -4.62937, 0, 2.34313, 0, 0.754941, 0.988857, 1.90741, -7.71791, -7.21302, 7.21302, 9.40601, 15.2167, -2.94793, 2.39867, 0.245635, -0.245635, -1.64373, -5.0493, 2.15304, -0.754941, -10.3614, -1.90741}, {-1.94057, -2.54185, 0.198723, 1.32981, 1.74185, -1.74185, 0.61076, -1.54312, 1.54312, 0, -7.02938, 0, 0.754941, 0.988857, 1.90741, -2.39867, -0.245635, 0.245635, 1.64373, 5.0493, -2.15304, 10.1609, 10.413, -1.04052, -6.96297, -12.0167, 9.12042, -3.19798, 5.18364, -8.0799}, {5.81909, -7.62212, -0.600985, 0, -2.34313, 0, 0.610485, 1.54348, 1.54262, 1.32921, -1.74106, -1.74295, 2.3976, 9.12828, -0.24762, -0.754601, 0.988412, -1.90678, -0.798945, -11.2223, -8.32487, -4.56224, 5.97584, 8.87857, -1.643, 5.04833, 2.1544, -2.3976, 0.244222, 0.24762}, {-1.9397, 2.54071, 0.200328, 0, 7.02938, 0, 0.610485, 1.54348, 1.54262, 1.32921, -1.74106, -1.74295, 10.1564, -10.407, -1.04893, -3.19654, -5.18552, -8.07725, 1.643, -5.04833, -2.1544, 0.754601, -0.988412, 1.90678, -6.95984, 12.0126, 9.12619, -2.3976, 0.244222, 0.24762}, {-1.9397, 2.54071, 0.200328, 0, -2.34313, 0, -1.83146, -4.63045, -4.62785, 1.32921, -1.74106, -1.74295, 2.3976, -0.244222, -0.24762, -0.754601, 10.3609, -1.90678, 9.40178, -15.2112, -2.95571, 0.754601, -0.988412, 1.90678, -1.643, 5.04833, 2.1544, -7.71444, 7.20847, 7.21941}, {-1.9397, 2.54071, 0.200328, 0, -2.34313, 0, 0.610485, 1.54348, 1.54262, -3.98763, 5.22319, 5.22884, 2.3976, -0.244222, -0.24762, -0.754601, 0.988412, -1.90678, 1.643, -5.04833, -2.1544, 8.51339, -11.1512, 1.10547, -1.643, 14.4208, 2.1544, -4.83954, -5.92971, -5.92285}, {8.88178e-16, -4.44089e-16, 4.817, 1.32981, 1.74185, -0.136178, 0.61076, -1.54312, 1.54312, -1.94057, -0.198723, 0.198723, -6.96297, -9.12042, 2.69775, -2.39867, -0.245635, -1.73908, -3.19798, 8.0799, -6.09519, 10.1609, 1.04052, 0.94419, 0.754941, -1.90741, -0.0773091, 1.64373, 2.15304, -2.15304}, {4.44089e-16, 1.66533e-16, -1.60567, -3.98943, -5.22554, 0.408534, 0.61076, -1.54312, 1.54312, -1.94057, -0.198723, 0.198723, -1.64373, -2.15304, 8.57571, -4.84171, 5.92686, -7.91157, -0.754941, 1.90741, 0.0773091, 2.39867, 0.245635, 1.73908, 8.51722, -1.11252, -0.872199, 1.64373, 2.15304, -2.15304}, {0, -3.05311e-16, -1.60567, 1.32981, 1.74185, -0.136178, -1.83228, 4.62937, -4.62937, -1.94057, -0.198723, 0.198723, -1.64373, -2.15304, 2.15304, -7.71791, -7.21302, -1.19437, -0.754941, 1.90741, 6.49998, 2.39867, 0.245635, 1.73908, 0.754941, -1.90741, -0.0773091, 9.40601, 2.94793, -2.94793}, {-4.44089e-16, -2.77556e-17, -1.60567, 1.32981, 1.74185, -0.136178, 0.61076, -1.54312, 1.54312, 5.82171, 0.596168, -0.596168, -1.64373, -2.15304, 2.15304, -2.39867, -0.245635, -1.73908, -0.754941, 1.90741, 0.0773091, 2.39867, 0.245635, 8.16175, -4.5643, -8.87479, 0.467403, -0.799305, 8.32553, -8.32553}, {-1.28888, 1.28888, -5.54754, -0.937563, 0.937563, 0.371082, -0.607159, -0.998509, -1.77891, 1.1151, 0.490571, -0.441349, 4.3781, -4.3781, -4.22872, 1.90938, 0.0753332, 1.74017, 2.64808, 5.7593, 7.02879, -6.36977, -2.03762, 0.0252242, -0.219445, -1.76527, 0.0868549, -0.627846, 0.627846, 2.74439}, {0.429625, -0.429625, 1.84918, 2.81269, -2.81269, -1.11325, -0.607159, -0.998509, -1.77891, 1.1151, 0.490571, -0.441349, -1.09065, 1.09065, -10.1411, 4.33802, 4.06937, 8.85582, 0.219445, 1.76527, -0.0868549, -1.90938, -0.0753332, -1.74017, -4.67983, -3.72755, 1.85225, -0.627846, 0.627846, 2.74439}, {0.429625, -0.429625, 1.84918, -0.937563, 0.937563, 0.371082, 1.82148, 2.99553, 5.33673, 1.1151, 0.490571, -0.441349, 0.627846, -0.627846, -2.74439, 5.65963, -3.67492, 0.255844, -1.49906, 3.48377, -7.48357, -1.90938, -0.0753332, -1.74017, -0.219445, -1.76527, 0.0868549, -5.08823, -1.33444, 4.50979}, {0.429625, -0.429625, 1.84918, -0.937563, 0.937563, 0.371082, -0.607159, -0.998509, -1.77891, -3.34529, -1.47171, 1.32405, 0.627846, -0.627846, -2.74439, 1.90938, 0.0753332, 1.74017, 0.219445, 1.76527, -0.0868549, -3.62788, 1.64317, -9.13689, 3.53081, -5.51552, -1.39747, 1.80079, 4.62188, 9.86004}, {-4.9045, -4.90878, 4.90879, 0.803078, -0.801888, 0.80329, -1.63483, -1.63626, 0.030594, -0.803078, 0.801888, 0.802378, -6.22574, 2.17621, -2.18355, 1.0281, 3.01372, -1.03074, 6.53933, 6.54504, 1.86234, 2.18421, -6.22127, -2.17877, 7.60503e-14, -7.59393e-14, -1.98471, 3.01342, 1.03134, -1.02961}, {1.63483, 1.63626, -1.63626, -2.40924, 2.40566, -2.40987, -1.63483, -1.63626, 0.030594, -0.803078, 0.801888, 0.802378, -9.55275, -7.57638, 7.57466, 7.56743, 9.55876, -1.15311, -7.62723e-14, 7.68274e-14, 1.98471, -1.0281, -3.01372, 1.03074, 3.21231, -3.20755, -5.19423, 3.01342, 1.03134, -1.02961}, {1.63483, 1.63626, -1.63626, 0.803078, -0.801888, 0.80329, 4.9045, 4.90878, -0.0917819, -0.803078, 0.801888, 0.802378, -3.01342, -1.03134, 1.02961, -2.18421, 6.22127, -4.2439, -6.53933, -6.54504, 8.52976, -1.0281, -3.01372, 1.03074, 7.52731e-14, -7.53841e-14, -1.98471, 6.22574, -2.17621, -4.23912}, {1.63483, 1.63626, -1.63626, 0.803078, -0.801888, 0.80329, -1.63483, -1.63626, 0.030594, 2.40924, -2.40566, -2.40713, -3.01342, -1.03134, 1.02961, 1.0281, 3.01372, -1.03074, -7.52731e-14, 7.43849e-14, 1.98471, -7.56743, -9.55876, 7.57579, -3.21231, 3.20755, -5.19788, 9.55275, 7.57638, -1.15199}, {0.412021, -3.98943, -5.22554, -1.60567, 0, 0, 0.200419, -1.94057, -0.198723, 1.54259, 0.61076, -1.54312, 8.57715, -1.64373, -2.15304, 1.73698, 2.39867, 0.245635, -0.879643, 8.51722, -1.11252, -7.90734, -4.84171, 5.92686, 0.0779689, -0.754941, 1.90741, -2.15448, 1.64373, 2.15304}, {-0.13734, 1.32981, 1.74185, 4.817, 0, 0, 0.200419, -1.94057, -0.198723, 1.54259, 0.61076, -1.54312, 2.70384, -6.96297, -9.12042, 0.93531, 10.1609, 1.04052, -0.0779689, 0.754941, -1.90741, -1.73698, -2.39867, -0.245635, -6.09239, -3.19798, 8.0799, -2.15448, 1.64373, 2.15304}, {-0.13734, 1.32981, 1.74185, -1.60567, 0, 0, -0.601256, 5.82171, 0.596168, 1.54259, 0.61076, -1.54312, 2.15448, -1.64373, -2.15304, 8.15966, 2.39867, 0.245635, 0.471392, -4.5643, -8.87479, -1.73698, -2.39867, -0.245635, 0.0779689, -0.754941, 1.90741, -8.32484, -0.799305, 8.32553}, {-0.13734, 1.32981, 1.74185, -1.60567, 0, 0, 0.200419, -1.94057, -0.198723, -4.62777, -1.83228, 4.62937, 2.15448, -1.64373, -2.15304, 1.73698, 2.39867, 0.245635, -0.0779689, 0.754941, -1.90741, -1.18762, -7.71791, -7.21302, 6.50064, -0.754941, 1.90741, -2.95615, 9.40601, 2.94793}, {-2.2024, 0.148267, -4.33994, -0.546238, -1.40698, 1.37428e-12, 0.372712, 0.180326, -1.44665, -0.560609, 1.27608, -1.24642e-12, 1.9527, 7.42813, -1.78815, 0.21449, 1.51623, 1.78815, -2.85899, -0.883108, 5.78659, 2.02795, -6.62053, -1.78815, 1.36814, 0.161805, -1.58045e-13, 0.232253, -1.80021, 1.78815}, {0.734135, -0.0494224, 1.44665, 1.63871, 4.22094, -4.12207e-12, 0.372712, 0.180326, -1.44665, -0.560609, 1.27608, -1.24619e-12, -3.16879, 1.9979, -7.57474, -1.27636, 0.794924, 7.57474, -1.36814, -0.161805, 1.57656e-13, -0.21449, -1.51623, -1.78815, 3.61057, -4.9425, 4.82673e-12, 0.232253, -1.80021, 1.78815}, {0.734135, -0.0494224, 1.44665, -0.546238, -1.40698, 1.37428e-12, -1.11814, -0.540977, 4.33994, -0.560609, 1.27608, -1.24642e-12, -0.232253, 1.80021, -1.78815, 2.39944, 7.14414, 1.78815, -4.30468, 0.0358845, -5.78659, -0.21449, -1.51623, -1.78815, 1.36814, 0.161805, -1.58045e-13, 2.47469, -6.90451, 1.78815}, {0.734135, -0.0494224, 1.44665, -0.546238, -1.40698, 1.3744e-12, 0.372712, 0.180326, -1.44665, 1.68183, -3.82823, 3.73959e-12, -0.232253, 1.80021, -1.78815, 0.21449, 1.51623, 1.78815, -1.36814, -0.161805, 1.577e-13, -3.15103, -1.31854, -7.57474, 3.55309, 5.78972, -5.65567e-12, -1.25859, -2.52151, 7.57474}, {0, 9.4517, 0, -1.78885, 1.78834, -1.78937, 1.78885, 1.36222, -1.3621, 0, 0, 3.15147, 9.36656, -5.46957, 9.36924, 0, -3.89432, 3.89543, -9.36656, -3.23838, 7.13206, 0, 3.89432, -16.5013, 2.21115, -2.21051, -1.68365, -2.21115, -1.6838, -2.21178}, {-1.54779e-16, -3.15057, 0, 5.36656, -5.36503, 5.3681, 1.78885, 1.36222, -1.3621, -1.39953e-15, -1.06575e-15, 3.15147, 2.21115, 14.2861, 2.21178, -7.15542, -9.34321, 9.34384, -2.21115, 2.21051, 1.68365, 1.77636e-15, 3.89432, -3.89543, 2.21115, -2.21051, -14.2895, -2.21115, -1.6838, -2.21178}, {0, -3.15057, -4.44089e-16, -1.78885, 1.78834, -1.78937, -5.36656, -4.08667, 4.08631, 0, 0, 3.15147, 2.21115, 1.6838, 2.21178, 7.15542, -11.0477, 11.0529, -2.21115, 14.8128, 1.68365, 0, 3.89432, -3.89543, 2.21115, -2.21051, -1.68365, -2.21115, -1.6838, -14.8177}, {0, -3.15057, 0, -1.78885, 1.78834, -1.78937, 1.78885, 1.36222, -1.3621, 0, 0, -9.45441, 2.21115, 1.6838, 2.21178, 0, -3.89432, 3.89543, -2.21115, 2.21051, 1.68365, 0, 16.4966, -3.89543, 9.36656, -9.36389, 5.47381, -9.36656, -7.1327, 3.23663}, {-0.595682, -0.596202, -5.82204, 0, -1.60567, 0, 1.54187, 1.54321, -0.609885, -1.74043, -0.136279, -1.3308, -0.245434, 8.16174, -2.39881, -1.90585, 0.0771985, 0.75386, -8.31875, -8.32602, 0.794587, 8.86756, 0.467918, 4.56932, 2.15129, 2.15317, 1.64495, 0.245434, -1.73907, 2.39881}, {0.198561, 0.198734, 1.94068, 0, 4.817, 0, 1.54187, 1.54321, -0.609885, -1.74043, -0.136279, -1.3308, -1.03968, 0.94413, -10.1615, -8.07331, -6.09565, 3.1934, -2.15129, -2.15317, -1.64495, 1.90585, -0.0771985, -0.75386, 9.11299, 2.69828, 6.96814, 0.245434, -1.73907, 2.39881}, {0.198561, 0.198734, 1.94068, 0, -1.60567, 0, -4.6256, -4.62964, 1.82966, -1.74043, -0.136279, -1.3308, -0.245434, 1.73907, -2.39881, -1.90585, 6.49987, 0.75386, -2.94553, -2.9481, -9.40768, 1.90585, -0.0771985, -0.75386, 2.15129, 2.15317, 1.64495, 7.20714, -1.19395, 7.722}, {0.198561, 0.198734, 1.94068, 0, -1.60567, 0, 1.54187, 1.54321, -0.609885, 5.22128, 0.408838, 3.99239, -0.245434, 1.73907, -2.39881, -1.90585, 0.0771985, 0.75386, -2.15129, -2.15317, -1.64495, 1.11161, -0.872135, -8.51658, 2.15129, 8.57584, 1.64495, -5.92203, -7.91192, 4.83836}, {-1.34911, 3.4086, 1.4084, 1.74422, 0.694821, 0.910847, -1.68823, -0.836265, 0.836265, -0.505685, 1.27764, -1.27764, -9.68869, -2.23371, -4.18896, -0.0691986, 0.174835, -2.15955, 8.28384, 5.78316, -3.79845, 2.09194, -5.28541, 7.27013, -1.53091, -2.4381, 0.453387, 2.71183, -0.545574, 0.545574}, {0.449702, -1.1362, -0.469468, -5.23265, -2.08446, -2.73254, -1.68823, -0.836265, 0.836265, -0.505685, 1.27764, -1.27764, -4.51064, 5.09037, 1.3323, 6.68373, 3.5199, -5.50461, 1.53091, 2.4381, -0.453387, 0.0691986, -0.174835, 2.15955, 0.49183, -7.54868, 5.56396, 2.71183, -0.545574, 0.545574}, {0.449702, -1.1362, -0.469468, 1.74422, 0.694821, 0.910847, 5.0647, 2.5088, -2.5088, -0.505685, 1.27764, -1.27764, -2.71183, 0.545574, -0.545574, -7.04606, -2.60445, -5.80294, -0.267898, 6.9829, 1.42448, 0.0691986, -0.174835, 2.15955, -1.53091, -2.4381, 0.453387, 4.73457, -5.65615, 5.65615}, {0.449702, -1.1362, -0.469468, 1.74422, 0.694821, 0.910847, -1.68823, -0.836265, 0.836265, 1.51705, -3.83293, 3.83293, -2.71183, 0.545574, -0.545574, -0.0691986, 0.174835, -2.15955, 1.53091, 2.4381, -0.453387, -1.72961, 4.36997, 4.03742, -8.50777, -5.21739, -3.19, 9.46476, 2.79949, -2.79949}, {-6.58175, 1.32414, -1.32414, -0.505685, 1.27764, -1.27764, 0.857073, 0.177676, 2.16545, -2.54531, -1.01394, -1.32918, -0.0640323, -6.14426, 6.14426, -0.43434, -1.79887, -1.09739, -7.19952, -0.384749, -11.884, 10.6156, 5.85464, 6.41412, 3.77123, -0.325955, 3.22222, 2.08677, 1.03368, -1.03368}, {2.19392, -0.441379, 0.441379, 1.51705, -3.83293, 3.83293, 0.857073, 0.177676, 2.16545, -2.54531, -1.01394, -1.32918, -10.8624, 0.731834, -0.731834, -3.86263, -2.50958, -9.75919, -3.77123, 0.325955, -3.22222, 0.43434, 1.79887, 1.09739, 13.9525, 3.72981, 8.53895, 2.08677, 1.03368, -1.03368}, {2.19392, -0.441379, 0.441379, -0.505685, 1.27764, -1.27764, -2.57122, -0.533028, -6.49635, -2.54531, -1.01394, -1.32918, -2.08677, -1.03368, 1.03368, 1.5884, -6.90945, 4.01319, -12.5469, 2.09147, -4.98773, 0.43434, 1.79887, 1.09739, 3.77123, -0.325955, 3.22222, 12.268, 5.08945, 4.28305}, {2.19392, -0.441379, 0.441379, -0.505685, 1.27764, -1.27764, 0.857073, 0.177676, 2.16545, 7.63592, 3.04182, 3.98755, -2.08677, -1.03368, 1.03368, -0.43434, -1.79887, -1.09739, -3.77123, 0.325955, -3.22222, -8.34133, 3.56439, -0.668128, 5.79397, -5.43653, 8.33279, -1.34152, 0.322977, -9.69548}, {5.63148, -7.39306, 3.82293, -0.845027, -3.02792, 0.845027, 1.29407, 2.43841, 1.8574, 1.42811, -1.87484, -1.42811, 6.74491, 12.8083, -2.84948, -0.55505, 0.728676, -3.34038, -4.45555, -15.8138, -8.15032, -5.15741, 6.7707, 9.05284, -0.720736, 6.06015, 0.720736, -3.36481, -0.696607, -0.530622}, {-1.87716, 2.46435, -1.27431, 2.53508, 9.08376, -2.53508, 1.29407, 2.43841, 1.8574, 1.42811, -1.87484, -1.42811, 10.8734, -9.16081, 5.62786, -5.73134, -9.02497, -10.77, 0.720736, -6.06015, -0.720736, 0.55505, -0.728676, 3.34038, -6.43319, 13.5595, 6.43319, -3.36481, -0.696607, -0.530622}, {-1.87716, 2.46435, -1.27431, -0.845027, -3.02792, 0.845027, -3.88221, -7.31523, -5.57219, 1.42811, -1.87484, -1.42811, 3.36481, 0.696607, 0.530622, 2.82506, 12.8404, -6.72049, 8.22937, -15.9176, 4.3765, 0.55505, -0.728676, 3.34038, -0.720736, 6.06015, 0.720736, -9.07726, 6.80277, 5.18184}, {-1.87716, 2.46435, -1.27431, -0.845027, -3.02792, 0.845027, 1.29407, 2.43841, 1.8574, -4.28434, 5.62453, 4.28434, 3.36481, 0.696607, 0.530622, -0.55505, 0.728676, -3.34038, 0.720736, -6.06015, -0.720736, 8.06369, -10.5861, 8.43762, 2.65937, 18.1718, -2.65937, -8.54109, -10.4502, -7.96021}, {8.88178e-16, 9.45441, -1.77636e-15, 1.78834, 1.78885, 1.78885, -3.15057, 0, 0, 1.36222, 1.36261, -1.78885, -9.36389, -5.47113, -9.36656, 1.6838, -2.21115, -2.21115, 16.4966, 3.89543, -4.44089e-16, -7.1327, -3.23931, 9.36656, -3.89432, -3.89543, 4.44089e-16, 2.21051, -1.68428, 2.21115}, {4.44089e-16, -3.15147, 2.22045e-16, -5.36503, -5.36656, -5.36656, -3.15057, 0, 0, 1.36222, 1.36261, -1.78885, -2.21051, 14.2902, -2.21115, 14.2861, -2.21115, -2.21115, 3.89432, 3.89543, 0, -1.6838, 2.21115, 2.21115, -9.34321, -9.34589, 7.15542, 2.21051, -1.68428, 2.21115}, {-4.44089e-16, -3.15147, 0, 1.78834, 1.78885, 1.78885, 9.4517, 0, 0, 1.36222, 1.36261, -1.78885, -2.21051, 1.68428, -2.21115, -5.46957, -9.36656, -9.36656, 3.89432, 16.5013, 0, -1.6838, 2.21115, 2.21115, -3.89432, -3.89543, 0, -3.23838, -7.13474, 9.36656}, {4.44089e-16, -3.15147, -2.22045e-16, 1.78834, 1.78885, 1.78885, -3.15057, 0, 0, -4.08667, -4.08784, 5.36656, -2.21051, 1.68428, -2.21115, 1.6838, -2.21115, -2.21115, 3.89432, 3.89543, 0, -1.6838, 14.817, 2.21115, -11.0477, -11.0508, -7.15542, 14.8128, -1.68428, 2.21115}, {-5.36656, 5.36656, -5.36656, 2.79907e-15, 3.15147, 3.33475e-16, -1.78885, -1.36261, 1.36261, 0, 0, -3.15147, -2.21115, -14.2902, -2.21115, 2.21115, -2.21115, -1.68428, 7.15542, 9.34589, -9.34589, -2.21115, 2.21115, 14.2902, -3.45984e-15, -3.89543, 3.89543, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, -4.1986e-15, -9.45441, 1.0595e-14, -1.78885, -1.36261, 1.36261, 0, 0, -3.15147, -9.36656, 5.47113, -9.36656, 9.36656, 3.23931, -7.13474, 1.28583e-15, 3.89543, -3.89543, -2.21115, 2.21115, 1.68428, -1.72992e-15, -3.89543, 16.5013, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 5.36656, 4.08784, -4.08784, 0, 0, -3.15147, -2.21115, -1.68428, -2.21115, 2.21115, -14.817, -1.68428, -7.15542, 11.0508, -11.0508, -2.21115, 2.21115, 1.68428, 0, -3.89543, 3.89543, 2.21115, 1.68428, 14.817}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 2.46559e-15, -1.78885, -1.36261, 1.36261, 0, 0, 9.45441, -2.21115, -1.68428, -2.21115, 2.21115, -2.21115, -1.68428, -4.44089e-16, 3.89543, -3.89543, -9.36656, 9.36656, -5.47113, 0, -16.5013, 3.89543, 9.36656, 7.13474, -3.23931}, {7.01844, 1.17551e-15, 0, 2.33948, 2.34313, -1.78885, 0, -2.34313, 0, -7.30165e-12, -6.9197e-12, 1.78885, -9.35791, -12.2688, 9.36656, -2.89175, -8.55405e-12, 2.21115, 2.89175, 12.2688, 0, 2.89175, 3.62329e-11, -9.36656, -2.89175, -2.89626, 0, 9.02534e-12, 2.89626, -2.21115}, {-2.33948, -1.95894e-17, 0, -7.01844, -7.02938, 5.36656, 0, -2.34313, 0, -7.30373e-12, -6.92022e-12, 1.78885, 9.35791, -2.89626, 2.21115, -2.89175, 9.3725, 2.21115, 2.89175, 2.89626, 0, 2.89175, 8.5536e-12, -2.21115, -2.89175, -2.89626, -7.15542, 9.02791e-12, 2.89626, -2.21115}, {-2.33948, 1.32789e-16, -4.44089e-16, 2.33948, 2.34313, -1.78885, 0, 7.02938, 0, -7.30321e-12, -6.92126e-12, 1.78885, -9.02668e-12, -2.89626, 2.21115, -12.2497, -9.3725, 9.36656, 12.2497, 2.89626, 1.77636e-15, 2.89175, 8.55493e-12, -2.21115, -2.89175, -2.89626, -4.44089e-16, 3.82401e-11, 2.89626, -9.36656}, {-2.33948, -8.31579e-16, -4.44089e-16, 2.33948, 2.34313, -1.78885, 0, -2.34313, 0, 2.19143e-11, 2.07622e-11, -5.36656, -9.02861e-12, -2.89626, 2.21115, -2.89175, -8.55538e-12, 2.21115, 2.89175, 2.89626, 4.44089e-16, 12.2497, 8.55648e-12, -2.21115, -12.2497, -12.2688, 7.15542, 9.02919e-12, 12.2688, -2.21115}, {-1.00651, -1.00808, 6.45666, -0.481765, 1.86061, -0.736419, 0.984821, -1.35677, 2.55622, -0.83856, -0.839867, 0.332415, 2.10785, -10.1576, 6.51623, -0.62181, -0.62278, -2.2494, -5.57129, 6.68879, -10.7243, 3.97605, 3.98225, 0.919744, 1.63201, -1.26171, 0.499377, -0.180789, 2.71519, -3.57055}, {0.335504, 0.336027, -2.15222, 1.4453, -5.58183, 2.20926, 0.984821, -1.35677, 2.55622, -0.83856, -0.839867, 0.332415, -1.16123, -4.0593, 12.1794, -4.56109, 4.8043, -12.4743, -1.63201, 1.26171, -0.499377, 0.62181, 0.62278, 2.2494, 4.98625, 2.09776, -0.830282, -0.180789, 2.71519, -3.57055}, {0.335504, 0.336027, -2.15222, -0.481765, 1.86061, -0.736419, -2.95446, 4.07031, -7.66867, -0.83856, -0.839867, 0.332415, 0.180789, -2.71519, 3.57055, 1.30525, -8.06522, 0.696272, -2.97403, -0.0824032, 8.1095, 0.62181, 0.62278, 2.2494, 1.63201, -1.26171, 0.499377, 3.17345, 6.07466, -4.90021}, {0.335504, 0.336027, -2.15222, -0.481765, 1.86061, -0.736419, 0.984821, -1.35677, 2.55622, 2.51568, 2.5196, -0.997244, 0.180789, -2.71519, 3.57055, -0.62181, -0.62278, -2.2494, -1.63201, 1.26171, -0.499377, -0.720207, -0.72133, 10.8583, 3.55907, -8.70414, 3.44505, -4.12007, 8.14227, -13.7954}, {5.36656, -5.48024e-11, 5.58682e-11, 1.78885, -2.34313, 2.34313, 0, 2.34313, 0, 0, 0, -2.34313, -7.15542, 12.2688, -12.2688, -2.21115, 2.25797e-11, -2.89626, 2.21115, -12.2688, 2.30194e-11, 2.21115, -2.25797e-11, 12.2688, -2.21115, 2.89626, -2.30194e-11, 0, -2.89626, 2.89626}, {-1.78885, 1.21112e-11, -1.24669e-11, -5.36656, 7.02938, -7.02938, 0, 2.34313, 1.36297e-15, 0, 0, -2.34313, 7.15542, 2.89626, -2.89626, -2.21115, -9.3725, -2.89626, 2.21115, -2.89626, 1.54086e-11, 2.21115, -1.49702e-11, 2.89626, -2.21115, 2.89626, 9.3725, 0, -2.89626, 2.89626}, {-1.78885, 1.21094e-11, -1.24669e-11, 1.78885, -2.34313, 2.34313, 0, -7.02938, 0, 0, 0, -2.34313, 4.44089e-16, 2.89626, -2.89626, -9.36656, 9.3725, -12.2688, 9.36656, -2.89626, 6.52776e-11, 2.21115, -1.49685e-11, 2.89626, -2.21115, 2.89626, -1.54099e-11, 0, -2.89626, 12.2688}, {-1.78885, 1.21099e-11, -1.24638e-11, 1.78885, -2.34313, 2.34313, 0, 2.34313, 0, 0, 0, 7.02938, 4.44089e-16, 2.89626, -2.89626, -2.21115, 1.49689e-11, -2.89626, 2.21115, -2.89626, 1.54063e-11, 9.36656, -6.34088e-11, 2.89626, -9.36656, 12.2688, -9.3725, 0, -12.2688, 2.89626}, {5.09908, -2.42192, -2.42638, -0.488904, -1.23525, -1.23482, 1.75382, -0.670557, 0.933579, 0.434779, 1.0985, -0.507552, 4.66087, 5.46995, 5.46587, -1.56352, 2.3557, 0.372353, -7.08218, 2.51319, -5.888, -0.175592, -6.74968, 1.65786, 0.0669023, 0.169033, 2.15369, -2.70526, -0.528962, -0.526598}, {-1.69969, 0.807307, 0.808792, 1.46671, 3.70574, 3.70446, 1.75382, -0.670557, 0.933579, 0.434779, 1.0985, -0.507552, 9.50403, -2.70027, -2.70857, -8.5788, 5.03793, -3.36196, -0.0669023, -0.169033, -2.15369, 1.56352, -2.3557, -0.372353, -1.67221, -4.22495, 4.1839, -2.70526, -0.528962, -0.526598}, {-1.69969, 0.807307, 0.808792, -0.488904, -1.23525, -1.23482, -5.26146, 2.01167, -2.80074, 0.434779, 1.0985, -0.507552, 2.70526, 0.528962, 0.526598, 0.392092, 7.29669, 5.31163, 6.73188, -3.39826, -5.38886, 1.56352, -2.3557, -0.372353, 0.0669023, 0.169033, 2.15369, -4.44437, -4.92294, 1.50361}, {-1.69969, 0.807307, 0.808792, -0.488904, -1.23525, -1.23482, 1.75382, -0.670557, 0.933579, -1.30434, -3.29549, 1.52266, 2.70526, 0.528962, 0.526598, -1.56352, 2.3557, 0.372353, -0.0669023, -0.169033, -2.15369, 8.3623, -5.58493, -3.60752, 2.02252, 5.11002, 7.09296, -9.72053, 2.15326, -4.26091}, {-2.57735, 0.513092, -6.51263, -2.5578, 0.977952, -1.36155, -0.488614, -1.23536, -1.23466, 2.1873, 0.428435, 0.425336, 12.3309, -4.90922, 4.44581, 3.76558, 0.31817, 3.2091, 1.49649, 6.67982, 3.78144, -12.5148, -2.03191, -4.91044, 0.457966, -1.73839, 1.15722, -2.09969, 0.99741, 1.00039}, {0.859116, -0.171031, 2.17088, 7.67341, -2.93386, 4.08465, -0.488614, -1.23536, -1.23466, 2.1873, 0.428435, 0.425336, -1.33677, -0.313288, -9.6839, 5.72003, 5.2596, 8.14775, -0.457966, 1.73839, -1.15722, -3.76558, -0.31817, -3.2091, -8.29124, -3.45213, -0.54412, -2.09969, 0.99741, 1.00039}, {0.859116, -0.171031, 2.17088, -2.5578, 0.977952, -1.36155, 1.46584, 3.70607, 3.70399, 2.1873, 0.428435, 0.425336, 2.09969, -0.99741, -1.00039, 13.9968, -3.59364, 8.65529, -3.89443, 2.42251, -9.84073, -3.76558, -0.31817, -3.2091, 0.457966, -1.73839, 1.15722, -10.8489, -0.716331, -0.700957}, {0.859116, -0.171031, 2.17088, -2.5578, 0.977952, -1.36155, -0.488614, -1.23536, -1.23466, -6.5619, -1.28531, -1.27601, 2.09969, -0.99741, -1.00039, 3.76558, 0.31817, 3.2091, -0.457966, 1.73839, -1.15722, -7.20204, 0.365952, -11.8926, 10.6892, -5.6502, 6.60342, -0.145237, 5.93884, 5.93904}, {4.08784, 4.08784, -5.36656, -1.78885, -1.78885, -1.78885, 3.15147, 2.46559e-15, 0, 0, 3.15147, 0, 11.0508, 11.0508, 7.15542, -1.68428, 2.21115, 2.21115, -14.817, 1.68428, -2.21115, 1.68428, -14.817, -2.21115, 2.21115, -1.68428, 2.21115, -3.89543, -3.89543, 0}, {-1.36261, -1.36261, 1.78885, 5.36656, 5.36656, 5.36656, 3.15147, 0, 0, -2.46559e-15, 3.15147, 0, 9.34589, 9.34589, -7.15542, -14.2902, 2.21115, 2.21115, -2.21115, 1.68428, -2.21115, 1.68428, -2.21115, -2.21115, 2.21115, -14.2902, 2.21115, -3.89543, -3.89543, 0}, {-1.36261, -1.36261, 1.78885, -1.78885, -1.78885, -1.78885, -9.45441, 0, 0, 0, 3.15147, 0, 3.89543, 3.89543, -4.44089e-16, 5.47113, 9.36656, 9.36656, 3.23931, 7.13474, -9.36656, 1.68428, -2.21115, -2.21115, 2.21115, -1.68428, 2.21115, -3.89543, -16.5013, 0}, {-1.36261, -1.36261, 1.78885, -1.78885, -1.78885, -1.78885, 3.15147, 2.46559e-15, 0, 0, -9.45441, 0, 3.89543, 3.89543, -4.44089e-16, -1.68428, 2.21115, 2.21115, -2.21115, 1.68428, -2.21115, 7.13474, 3.23931, -9.36656, 9.36656, 5.47113, 9.36656, -16.5013, -3.89543, 0}, {-4.7272, 4.72585, -4.72855, -1.57528, -1.57573, -1.57573, 1.57528, 1.57573, -1.57573, -1.57573, 1.57528, 1.57528, 6.30058, 10.1978, 6.30238, 2.11209e-12, -2.11164e-12, 3.89543, -10.196, -6.30349, 6.30238, 6.30294, -6.30114, -10.1966, 3.89487, 0.000556685, 0.000556685, 0.000556685, -3.89487, 0.000556844}, {1.57573, -1.57528, 1.57618, 4.72585, 4.7272, 4.7272, 1.57528, 1.57573, -1.57573, -1.57573, 1.57528, 1.57528, -6.30349, 10.196, -6.3053, -6.30114, -6.30294, 10.1984, -3.89487, -0.000556685, -0.000556685, -2.11226e-12, 2.11514e-12, -3.89543, 10.1978, -6.30058, -6.30058, 0.000556685, -3.89487, 0.000556844}, {1.57573, -1.57528, 1.57618, -1.57528, -1.57573, -1.57573, -4.72585, -4.7272, 4.7272, -1.57573, 1.57528, 1.57528, -0.000556685, 3.89487, -0.000556844, 6.30114, 6.30294, 10.1984, -10.1978, 6.30058, -6.3053, -2.11581e-12, 2.11492e-12, -3.89543, 3.89487, 0.000556685, 0.000556685, 6.30349, -10.196, -6.30058}, {1.57573, -1.57528, 1.57618, -1.57528, -1.57573, -1.57573, 1.57528, 1.57573, -1.57573, 4.7272, -4.72585, -4.72585, -0.000556685, 3.89487, -0.000556844, 2.11831e-12, -2.1172e-12, 3.89543, -3.89487, -0.000556685, -0.000556685, -6.30294, 6.30114, -10.2002, 10.196, 6.30349, 6.30349, -6.30058, -10.1978, 6.30349}, {-5.22554, -0.410098, 3.98943, -1.54312, -1.54218, -0.61076, 3.95893e-17, 1.60497, -3.86599e-16, -0.198723, -0.199483, 1.94057, 5.92686, 7.906, 4.84171, 1.90741, -0.0776051, 0.754941, -2.15304, -8.57268, 1.64373, -1.11252, 0.875539, -8.51722, 2.15304, 2.15282, -1.64373, 0.245635, -1.73727, -2.39867}, {1.74185, 0.136699, -1.32981, 4.62937, 4.62655, 1.83228, 1.18768e-16, 1.60497, -1.1598e-15, -0.198723, -0.199483, 1.94057, -7.21302, 1.19047, 7.71791, 1.90741, -6.49747, 0.754941, -2.15304, -2.15282, 1.64373, -1.90741, 0.0776051, -0.754941, 2.94793, 2.95075, -9.40601, 0.245635, -1.73727, -2.39867}, {1.74185, 0.136699, -1.32981, -1.54312, -1.54218, -0.61076, 0, -4.8149, 0, -0.198723, -0.199483, 1.94057, -0.245635, 1.73727, 2.39867, 8.0799, 6.09113, 3.19798, -9.12042, -2.69962, 6.96297, -1.90741, 0.0776051, -0.754941, 2.15304, 2.15282, -1.64373, 1.04052, -0.939339, -10.1609}, {1.74185, 0.136699, -1.32981, -1.54312, -1.54218, -0.61076, -1.18768e-16, 1.60497, 1.1598e-15, 0.596168, 0.59845, -5.82171, -0.245635, 1.73727, 2.39867, 1.90741, -0.0776051, 0.754941, -2.15304, -2.15282, 1.64373, -8.87479, -0.469193, 4.5643, 8.32553, 8.32155, 0.799305, 0.245635, -8.15714, -2.39867}, {4.63127, 4.6267, 1.83083, -2.54134, -0.199443, 1.94018, 1.74197, 1.74168, -1.3299, 2.34313, 0, 0, 15.2148, 2.9506, -9.40456, 0.988073, -1.9063, -0.754342, -7.21287, -7.21323, 7.7178, -10.3606, 1.9063, 0.754342, 0.245001, 0.246525, -2.39819, -5.04945, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, 7.62401, 0.598329, -5.82053, 1.74197, 1.74168, -1.3299, 2.34313, -1.01311e-15, 7.73589e-16, 11.2245, 8.32176, 0.797254, -5.9798, -8.87301, 4.56526, -0.245001, -0.246525, 2.39819, -0.988073, 1.9063, 0.754342, -9.1275, 0.246525, -2.39819, -5.04945, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, -2.54134, -0.199443, 1.94018, -5.2259, -5.22503, 3.9897, 2.34313, 0, 0, 5.04945, 2.15283, -1.64385, 11.1534, -1.10853, -8.51505, 5.93003, 5.92241, 4.83929, -0.988073, 1.9063, 0.754342, 0.245001, 0.246525, -2.39819, -14.422, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, -2.54134, -0.199443, 1.94018, 1.74197, 1.74168, -1.3299, -7.02938, 0, 0, 5.04945, 2.15283, -1.64385, 0.988073, -1.9063, -0.754342, -0.245001, -0.246525, 2.39819, 5.18696, 8.07523, 3.19544, 10.4103, 1.0443, -10.1589, -12.0173, -9.11953, 6.96345}, {4.33994, 1.90929, -1.71772, 1.45453e-15, 1.35003, 1.01047e-16, 1.36e-12, -0.731398, -2.01922, 1.44665, 0.0177991, 1.44665, 1.78815, -6.28218, -0.707741, -1.68285e-12, -0.764672, 2.4959, 1.78815, 4.61632, 9.86504, -5.78659, 0.693475, -8.28248, -1.78815, -1.69073, -1.78815, -1.78815, 0.882056, 0.707741}, {-1.44665, -0.636431, 0.572575, -4.36359e-15, -4.05009, -2.33336e-15, 1.35855e-12, -0.731398, -2.01922, 1.44665, 0.0177991, 1.44665, 7.57474, 1.66367, -2.99804, -7.11526e-12, 2.16092, 10.5728, 1.78815, 1.69073, 1.78815, 1.68142e-12, 0.764672, -2.4959, -7.57474, -1.76193, -7.57474, -1.78815, 0.882056, 0.707741}, {-1.44665, -0.636431, 0.572575, 0, 1.35003, 0, -4.08128e-12, 2.19419, 6.05767, 1.44665, 0.0177991, 1.44665, 1.78815, -0.882056, -0.707741, -1.68158e-12, -6.16479, 2.4959, 7.57474, 4.23646, -0.502145, 1.68194e-12, 0.764672, -2.4959, -1.78815, -1.69073, -1.78815, -7.57474, 0.81086, -5.07885}, {-1.44665, -0.636431, 0.572575, -4.84843e-16, 1.35003, -4.84843e-16, 1.3596e-12, -0.731398, -2.01922, -4.33994, -0.0533972, -4.33994, 1.78815, -0.882056, -0.707741, -1.67996e-12, -0.764672, 2.4959, 1.78815, 1.69073, 1.78815, 5.78659, 3.3104, -4.7862, -1.78815, -7.09085, -1.78815, -1.78815, 3.80765, 8.78463}, {-3.79117, -3.78885, -1.50052, 0.577052, -1.02738, -1.79083, -1.45233, 0.153525, -0.574823, -0.388446, -0.389091, 1.86548, -4.58353, 3.81836, 8.75865, 1.0819, 1.08015, 2.92411, 6.04244, -2.36496, 2.39156, 0.471884, 0.476215, -10.386, -0.233129, 1.75086, -0.0922713, 2.27532, 0.291177, -1.59534}, {1.26372, 1.26295, 0.500174, -1.73116, 3.08215, 5.37248, -1.45233, 0.153525, -0.574823, -0.388446, -0.389091, 1.86548, -7.33021, -5.34298, -0.40536, 6.89121, 0.466052, 5.2234, 0.233129, -1.75086, 0.0922713, -1.0819, -1.08015, -2.92411, 1.32066, 3.30723, -7.55418, 2.27532, 0.291177, -1.59534}, {1.26372, 1.26295, 0.500174, 0.577052, -1.02738, -1.79083, 4.35698, -0.460574, 1.72447, -0.388446, -0.389091, 1.86548, -2.27532, -0.291177, 1.59534, -1.22631, 5.18969, 10.0874, -4.82176, -6.80267, -1.90843, -1.0819, -1.08015, -2.92411, -0.233129, 1.75086, -0.0922713, 3.82911, 1.84754, -9.05724}, {1.26372, 1.26295, 0.500174, 0.577052, -1.02738, -1.79083, -1.45233, 0.153525, -0.574823, 1.16534, 1.16727, -5.59643, -2.27532, -0.291177, 1.59534, 1.0819, 1.08015, 2.92411, 0.233129, -1.75086, 0.0922713, -6.13679, -6.13196, -4.9248, -2.54134, 5.8604, 7.07104, 8.08463, -0.322922, 0.703957}, {2.52504, -4.49559, -7.83624, 1.26389, 1.26265, 0.49964, -0.875592, -0.873298, -2.36467, 0.453379, -1.88788, -0.747051, -5.57746, -8.46358, -5.84486, -0.479968, -0.48126, 2.3053, 5.62503, 2.72036, 9.15287, -1.33355, 8.03278, 0.682901, -2.12267, 0.772832, 0.305817, 0.521884, 3.413, 3.8463}, {-0.841681, 1.49853, 2.61208, -3.79168, -3.78794, -1.49892, -0.875592, -0.873298, -2.36467, 0.453379, -1.88788, -0.747051, 2.84484, -9.40713, -14.2946, 3.0224, 3.01193, 11.764, 2.12267, -0.772832, -0.305817, 0.479968, 0.48126, -2.3053, -3.93618, 8.32435, 3.29402, 0.521884, 3.413, 3.8463}, {-0.841681, 1.49853, 2.61208, 1.26389, 1.26265, 0.49964, 2.62678, 2.61989, 7.09401, 0.453379, -1.88788, -0.747051, -0.521884, -3.413, -3.8463, -5.53554, -5.53184, 0.306743, 5.48939, -6.76696, -10.7541, 0.479968, 0.48126, -2.3053, -2.12267, 0.772832, 0.305817, -1.29163, 10.9645, 6.8345}, {-0.841681, 1.49853, 2.61208, 1.26389, 1.26265, 0.49964, -0.875592, -0.873298, -2.36467, -1.36014, 5.66364, 2.24115, -0.521884, -3.413, -3.8463, -0.479968, -0.48126, 2.3053, 2.12267, -0.772832, -0.305817, 3.84669, -5.51287, -12.7536, -7.17824, -4.27775, -1.69274, 4.02425, 6.90619, 13.305}, {5.37846, -0.954422, 1.65136, 0.482922, -1.73161, -0.484335, 0.65353, 0.326507, 1.69088, 0.656368, 1.08696, -0.656093, -0.312565, 8.67359, 3.21641, -1.40473, 1.7368, -1.49137, -1.20588, -2.10286, -8.17318, -1.22074, -6.08465, 4.11575, -1.40824, 0.796829, 1.40965, -1.61912, -1.74715, -1.27907}, {-1.79282, 0.318141, -0.550454, -1.44877, 5.19483, 1.45301, 0.65353, 0.326507, 1.69088, 0.656368, 1.08696, -0.656093, 8.7904, 0.474582, 3.48088, -4.01885, 0.430774, -8.2549, 1.40824, -0.796829, -1.40965, 1.40473, -1.7368, 1.49137, -4.03371, -3.55102, 4.03402, -1.61912, -1.74715, -1.27907}, {-1.79282, 0.318141, -0.550454, 0.482922, -1.73161, -0.484335, -1.96059, -0.979522, -5.07265, 0.656368, 1.08696, -0.656093, 1.61912, 1.74715, 1.27907, -3.33642, 8.66325, 0.445966, 8.57952, -2.06939, 0.792169, 1.40473, -1.7368, 1.49137, -1.40824, 0.796829, 1.40965, -4.24459, -6.095, 1.3453}, {-1.79282, 0.318141, -0.550454, 0.482922, -1.73161, -0.484335, 0.65353, 0.326507, 1.69088, -1.9691, -3.26089, 1.96828, 1.61912, 1.74715, 1.27907, -1.40473, 1.7368, -1.49137, 1.40824, -0.796829, -1.40965, 8.57601, -3.00937, 3.69319, -3.33993, 7.72327, 3.34699, -4.23324, -3.05317, -8.0426}, {-8.19974, -2.81226, -4.15773, 1.49846, -0.593081, -0.985836, -2.7214, 1.07711, -0.607179, -1.5103, -1.42145, 0.207104, -11.2245, 1.9467, 3.44883, 1.51164, -0.598298, 1.96907, 10.8709, -6.79856, 1.46615, 4.52957, 6.28411, -2.79749, 0.0146435, 2.4901, 0.962565, 5.23067, 0.425625, 0.494519}, {2.73325, 0.937419, 1.38591, -4.49537, 1.77924, 2.95751, -2.7214, 1.07711, -0.607179, -1.5103, -1.42145, 0.207104, -16.1637, -4.1753, -6.03816, 12.3972, -4.90676, 4.39779, -0.0146435, -2.4901, -0.962565, -1.51164, 0.598298, -1.96907, 6.05586, 8.17591, 0.134147, 5.23067, 0.425625, 0.494519}, {2.73325, 0.937419, 1.38591, 1.49846, -0.593081, -0.985836, 8.16419, -3.23134, 1.82154, -1.5103, -1.42145, 0.207104, -5.23067, -0.425625, -0.494519, -4.48219, 1.77402, 5.91242, -10.9476, -6.23977, -6.50621, -1.51164, 0.598298, -1.96907, 0.0146435, 2.4901, 0.962565, 11.2719, 6.11143, -0.333899}, {2.73325, 0.937419, 1.38591, 1.49846, -0.593081, -0.985836, -2.7214, 1.07711, -0.607179, 4.53091, 4.26436, -0.621313, -5.23067, -0.425625, -0.494519, 1.51164, -0.598298, 1.96907, -0.0146435, -2.4901, -0.962565, -12.4446, -3.15138, -7.51272, -5.97918, 4.86242, 4.90591, 16.1163, -3.88283, 2.92323}, {-8.88178e-16, -2.39835, -6.05767, -3.06161e-16, 0.53318, -2.01922, -1.31177, -0.650588, 1.29879, 1.31177, -0.68204, -1.29879, 1.33227e-15, -3.77994, 8.07689, 1.62143, 0.145125, 0.890503, 6.86849, 2.41835, -9.29645, -6.86849, 2.58304, 4.30465, -1.62143, 0.184002, 4.10129, 0, 1.64722, 0}, {-2.22045e-16, 0.799449, 2.01922, -9.18483e-16, -1.59954, 6.05767, -1.31177, -0.650588, 1.29879, 1.31177, -0.68204, -1.29879, 8.88178e-16, -4.84502, -8.07689, 6.86849, 2.74748, -4.30465, 1.62143, -0.184002, -4.10129, -1.62143, -0.145125, -0.890503, -6.86849, 2.91216, 9.29645, 0, 1.64722, 0}, {1.77636e-15, 0.799449, 2.01922, -2.08189e-15, 0.53318, -2.01922, 3.9353, 1.95177, -3.89637, 1.31177, -0.68204, -1.29879, 2.22045e-16, -1.64722, -6.66134e-16, 1.62143, -1.98759, 8.96739, 1.62143, -3.3818, -12.1782, -1.62143, -0.145125, -0.890503, -1.62143, 0.184002, 4.10129, -5.24706, 4.37538, 5.19516}, {-6.66134e-16, 0.799449, 2.01922, 1.04095e-15, 0.53318, -2.01922, -1.31177, -0.650588, 1.29879, -3.9353, 2.04612, 3.89637, -6.66134e-16, -1.64722, -2.22045e-16, 1.62143, 0.145125, 0.890503, 1.62143, -0.184002, -4.10129, -1.62143, -3.34292, -8.96739, -1.62143, -1.94872, 12.1782, 5.24706, 4.24957, -5.19516}, {1.77636e-15, 0, 9.45441, 1.36261, 1.78885, 1.36261, 1.78885, -1.78885, 1.78885, -3.15147, 0, 0, -7.13474, -9.36656, -3.23931, -3.89543, 0, -3.89543, -9.36656, 9.36656, -5.47113, 16.5013, 0, 3.89543, 2.21115, -2.21115, -1.68428, 1.68428, 2.21115, -2.21115}, {4.44089e-16, -4.44089e-16, -3.15147, -4.08784, -5.36656, -4.08784, 1.78885, -1.78885, 1.78885, -3.15147, 0, 0, -1.68428, -2.21115, 14.817, -11.0508, 7.15542, -11.0508, -2.21115, 2.21115, 1.68428, 3.89543, 8.88178e-16, 3.89543, 14.817, -2.21115, -1.68428, 1.68428, 2.21115, -2.21115}, {0, 2.22045e-16, -3.15147, 1.36261, 1.78885, 1.36261, -5.36656, 5.36656, -5.36656, -3.15147, 0, 0, -1.68428, -2.21115, 2.21115, -9.34589, -7.15542, -9.34589, -2.21115, 2.21115, 14.2902, 3.89543, -4.44089e-16, 3.89543, 2.21115, -2.21115, -1.68428, 14.2902, 2.21115, -2.21115}, {4.44089e-16, 2.22045e-16, -3.15147, 1.36261, 1.78885, 1.36261, 1.78885, -1.78885, 1.78885, 9.45441, 0, 0, -1.68428, -2.21115, 2.21115, -3.89543, 4.44089e-16, -3.89543, -2.21115, 2.21115, 1.68428, 3.89543, 0, 16.5013, -3.23931, -9.36656, -7.13474, -5.47113, 9.36656, -9.36656}, {-2.46108, 3.54412, -0.0109738, -0.670026, 0.174063, -1.44271, 0.904569, 1.43103, -0.00443094, -1.0549, -0.423716, 1.44348, 2.49428, 0.548851, 7.54959, -0.28991, -1.984, 1.78876, -5.7504, -6.03269, 0.0186792, 4.50952, 3.67886, -7.56268, 2.13213, 0.308587, -0.000955489, 0.185824, -1.2451, -1.77876}, {0.820361, -1.18137, 0.00365793, 2.01008, -0.52219, 4.32812, 0.904569, 1.43103, -0.00443094, -1.0549, -0.423716, 1.44348, -3.46727, 5.9706, 1.76413, -3.90819, -7.7081, 1.80648, -2.13213, -0.308587, 0.000955489, 0.28991, 1.984, -1.78876, 6.35174, 2.00345, -5.77487, 0.185824, -1.2451, -1.77876}, {0.820361, -1.18137, 0.00365793, -0.670026, 0.174063, -1.44271, -2.71371, -4.29308, 0.0132928, -1.0549, -0.423716, 1.44348, -0.185824, 1.2451, 1.77876, 2.39019, -2.68025, 7.55959, -5.41357, 4.41691, -0.0136762, 0.28991, 1.984, -1.78876, 2.13213, 0.308587, -0.000955489, 4.40544, 0.449758, -7.55268}, {0.820361, -1.18137, 0.00365793, -0.670026, 0.174063, -1.44271, 0.904569, 1.43103, -0.00443094, 3.16471, 1.27115, -4.33044, -0.185824, 1.2451, 1.77876, -0.28991, -1.984, 1.78876, -2.13213, -0.308587, 0.000955489, -2.99153, 6.7095, -1.80339, 4.81224, -0.387667, 5.76987, -3.43245, -6.96921, -1.76104}, {-4.81192, -4.81192, 0.736124, -0.501255, 1.51797, 0.85277, 0.0700522, -1.94917, 0.533356, -1.17277, -1.17277, -1.14075, 0.641985, -9.9308, -4.16186, 0.532996, 0.532996, -1.71335, -2.34942, 8.22336, -2.48939, 4.15809, 4.15809, 6.27635, 2.06921, -0.426686, 0.355964, 1.36304, 3.85893, 0.750782}, {1.60397, 1.60397, -0.245375, 1.50376, -4.5539, -2.55831, 0.0700522, -1.94917, 0.533356, -1.17277, -1.17277, -1.14075, -7.77893, -10.2748, 0.230717, 0.252787, 8.32967, -3.84677, -2.06921, 0.426686, -0.355964, -0.532996, -0.532996, 1.71335, 6.76029, 4.2644, 4.91897, 1.36304, 3.85893, 0.750782}, {1.60397, 1.60397, -0.245375, -0.501255, 1.51797, 0.85277, -0.210157, 5.84751, -1.60007, -1.17277, -1.17277, -1.14075, -1.36304, -3.85893, -0.750782, 2.53802, -5.53887, -5.12443, -8.4851, -5.98921, 0.625534, -0.532996, -0.532996, 1.71335, 2.06921, -0.426686, 0.355964, 6.05412, 8.55001, 5.31379}, {1.60397, 1.60397, -0.245375, -0.501255, 1.51797, 0.85277, 0.0700522, -1.94917, 0.533356, 3.51831, 3.51831, 3.42225, -1.36304, -3.85893, -0.750782, 0.532996, 0.532996, -1.71335, -2.06921, 0.426686, -0.355964, -6.94889, -6.94889, 2.69484, 4.07423, -6.49855, -3.05512, 1.08283, 11.6556, -1.38264}, {-4.7272, -4.7272, -4.7272, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 6.30294, 6.30294, -10.1984, -1.8181e-12, 3.89543, -1.80878e-12, -10.1984, 6.30294, 6.30294, 6.30294, -10.1984, 6.30294, 3.89543, -1.79678e-12, -1.79323e-12, 3.77476e-15, -3.77476e-15, 3.89543}, {1.57573, 1.57573, 1.57573, 4.7272, 4.7272, -4.7272, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, -6.30294, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -3.89543, 1.79323e-12, 1.80544e-12, 1.81771e-12, -3.89543, 1.82415e-12, 10.1984, -6.30294, 6.30294, 3.55271e-15, -3.55271e-15, 3.89543}, {1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 1.57573, -4.7272, 4.7272, 4.7272, -1.57573, 1.57573, -1.57573, -3.9968e-15, 3.10862e-15, -3.89543, 6.30294, 10.1984, -6.30294, -10.1984, -6.30294, -6.30294, 1.82792e-12, -3.89543, 1.81616e-12, 3.89543, -1.80234e-12, -1.79368e-12, 6.30294, -6.30294, 10.1984}, {1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 4.7272, -4.7272, 4.7272, -2.66454e-15, 1.33227e-15, -3.89543, -1.81033e-12, 3.89543, -1.81055e-12, -3.89543, 1.80367e-12, 1.80389e-12, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -6.30294, -6.30294, 6.30294, 10.1984}, {1.77636e-15, 8.88178e-16, 3.96048, -1.97452e-12, 2.01922, 0.776088, 1.44665, -0.572575, 0.322765, -1.44665, -1.44665, 0.221307, 1.03391e-11, -10.5728, -2.43184, -1.78815, -1.78815, -1.35826, -7.57474, 2.99804, -0.0582134, 7.57474, 7.57474, 0.47303, 1.78815, -0.707741, -1.23285, -2.44094e-12, 2.4959, -0.672511}, {2.22045e-16, 0, -1.32016, 5.92356e-12, -6.05767, -2.32827, 1.44665, -0.572575, 0.322765, -1.44665, -1.44665, 0.221307, 2.43894e-12, -2.4959, 5.95315, -7.57474, 0.502145, -2.64932, -1.78815, 0.707741, 1.23285, 1.78815, 1.78815, 1.35826, 7.57474, 5.07885, -2.11808, -2.44005e-12, 2.4959, -0.672511}, {4.44089e-16, 4.44089e-16, -1.32016, -1.97278e-12, 2.01922, 0.776088, -4.33994, 1.71772, -0.968296, -1.44665, -1.44665, 0.221307, 2.43805e-12, -2.4959, 0.672511, -1.78815, -9.86504, -4.46261, -1.78815, 0.707741, 6.51349, 1.78815, 1.78815, 1.35826, 1.78815, -0.707741, -1.23285, 5.78659, 8.28248, -1.55774}, {2.22045e-16, 2.22045e-16, -1.32016, -1.97211e-12, 2.01922, 0.776088, 1.44665, -0.572575, 0.322765, 4.33994, 4.33994, -0.663921, 2.43761e-12, -2.4959, 0.672511, -1.78815, -1.78815, -1.35826, -1.78815, 0.707741, 1.23285, 1.78815, 1.78815, 6.6389, 1.78815, -8.78463, -4.3372, -5.78659, 4.7862, -1.96357}, {-5.69487, 4.44089e-15, -2.66454e-15, -0.575562, 1.78885, 1.78885, 0.744968, -3.64699, -0.373467, -2.0677, 1.85814, -1.41539, 0.667265, -9.36656, -9.36656, -0.209397, 2.29678, -1.74951, -6.24712, 19.0959, 1.9555, 8.48018, -9.72932, 7.41106, 3.26725, -4.50793, -0.461631, 1.63498, 2.21115, 2.21115}, {1.89829, 2.66454e-15, -6.66134e-16, 1.72669, -5.36656, -5.36656, 0.744968, -3.64699, -0.373467, -2.0677, 1.85814, -1.41539, -9.22815, -2.21115, -2.21115, -3.18927, 16.8847, -0.255645, -3.26725, 4.50793, 0.461631, 0.209397, -2.29678, 1.74951, 11.538, -11.9405, 5.19992, 1.63498, 2.21115, 2.21115}, {1.89829, 3.55271e-15, 4.44089e-16, -0.575562, 1.78885, 1.78885, -2.2349, 10.941, 1.1204, -2.0677, 1.85814, -1.41539, -1.63498, -2.21115, -2.21115, 2.09285, -4.85864, -8.90493, -10.8604, 4.50793, 0.461631, 0.209397, -2.29678, 1.74951, 3.26725, -4.50793, -0.461631, 9.90577, -5.2214, 7.87269}, {1.89829, -2.44249e-15, 1.33227e-15, -0.575562, 1.78885, 1.78885, 0.744968, -3.64699, -0.373467, 6.20309, -5.57441, 4.24616, -1.63498, -2.21115, -2.21115, -0.209397, 2.29678, -1.74951, -3.26725, 4.50793, 0.461631, -7.38377, -2.29678, 1.74951, 5.5695, -11.6633, -7.61705, -1.34489, 16.7991, 3.70501}, {1.1885, -5.81832, -0.595821, 1.89829, -2.11601e-15, 5.39995e-16, -1.41683, -1.32819, -1.74168, -0.0852942, -0.611252, 1.54307, -9.44989, -2.39728, -0.245492, -0.59512, 1.64173, 2.15284, 7.9083, 4.5572, 8.87406, 0.936297, 0.803277, -8.32513, -2.24099, 0.755549, -1.90734, 1.85673, 2.39728, 0.245492}, {-0.396168, 1.93944, 0.198607, -5.69487, -1.01358e-15, -4.64389e-15, -1.41683, -1.32819, -1.74168, -0.0852942, -0.611252, 1.54307, -0.272056, -10.155, -1.03992, 5.0722, 6.95448, 9.11956, 2.24099, -0.755549, 1.90734, 0.59512, -1.64173, -2.15284, -1.89981, 3.20056, -8.07964, 1.85673, 2.39728, 0.245492}, {-0.396168, 1.93944, 0.198607, 1.89829, 0, 0, 4.25049, 3.98456, 5.22504, -0.0852942, -0.611252, 1.54307, -1.85673, -2.39728, -0.245492, -8.18828, 1.64173, 2.15284, 3.82566, -8.51331, 1.11292, 0.59512, -1.64173, -2.15284, -2.24099, 0.755549, -1.90734, 2.1979, 4.84229, -5.9268}, {-0.396168, 1.93944, 0.198607, 1.89829, 2.88057e-16, -7.27184e-16, -1.41683, -1.32819, -1.74168, 0.255883, 1.83376, -4.62922, -1.85673, -2.39728, -0.245492, -0.59512, 1.64173, 2.15284, 2.24099, -0.755549, 1.90734, 2.17979, -9.39949, -2.94726, -9.83415, 0.755549, -1.90734, 7.52404, 7.71003, 7.21221}, {-5.53939e-11, -0.00379978, 5.36656, -2.34313, -2.34273, 1.78885, -6.81003e-16, 2.34147, 0, 2.34313, 0, 0, 12.2688, 12.2651, -7.15542, 2.89626, 0.00156559, -2.21115, -2.28204e-11, -12.2616, 2.21115, -12.2688, -0.00156559, 2.21115, 2.28231e-11, 2.89578, -2.21115, -2.89626, -2.89421, 0}, {1.23088e-11, 0.00126659, -1.78885, 7.02938, 7.0282, -5.36656, -2.04301e-15, 2.34147, 0, 2.34313, -1.36201e-15, 0, 2.89626, 2.88915, 7.15542, 2.89626, -9.3643, -2.21115, -1.52118e-11, -2.89578, 2.21115, -2.89626, -0.00156559, 2.21115, -9.3725, 2.89578, -2.21115, -2.89626, -2.89421, 0}, {1.23057e-11, 0.00126659, -1.78885, -2.34313, -2.34273, 1.78885, 0, -7.0244, 0, 2.34313, 0, 0, 2.89626, 2.89421, 4.44089e-16, 12.2688, 9.3725, -9.36656, -6.44356e-11, -2.90084, 9.36656, -2.89626, -0.00156559, 2.21115, 1.52105e-11, 2.89578, -2.21115, -12.2688, -2.89421, 0}, {1.23084e-11, 0.00126659, -1.78885, -2.34313, -2.34273, 1.78885, 2.04301e-15, 2.34147, 0, -7.02938, 0, 0, 2.89626, 2.89421, 4.44089e-16, 2.89626, 0.00156559, -2.21115, -1.52163e-11, -2.89578, 2.21115, -2.89626, -0.00663197, 9.36656, 9.3725, 12.2667, -9.36656, -2.89626, -12.2601, 0}, {-7.02938, -5.36656, -7.02938, -1.21095e-11, -1.78885, -1.21105e-11, 0, 0, -2.34313, -2.34313, 0, 0, -2.89626, 7.15542, -2.89626, 1.49681e-11, 2.21115, 2.89626, -2.89626, -2.21115, 9.3725, 9.3725, -2.21115, -2.89626, 2.89626, 2.21115, 1.49694e-11, 2.89626, 0, 2.89626}, {2.34313, 1.78885, 2.34313, 5.47931e-11, 5.36656, 5.47978e-11, 0, 0, -2.34313, -2.34313, 0, 0, -12.2688, -7.15542, -12.2688, 2.2576e-11, 2.21115, 12.2688, -2.89626, -2.21115, -2.25785e-11, -2.25766e-11, -2.21115, -2.89626, 12.2688, 2.21115, 2.25779e-11, 2.89626, 0, 2.89626}, {2.34313, 1.78885, 2.34313, -1.21079e-11, -1.78885, -1.21105e-11, 0, 0, 7.02938, -2.34313, 0, 0, -2.89626, -4.44089e-16, -2.89626, 6.33979e-11, 9.36656, 2.89626, -12.2688, -9.36656, -9.3725, -1.49668e-11, -2.21115, -2.89626, 2.89626, 2.21115, 1.49694e-11, 12.2688, 0, 2.89626}, {2.34313, 1.78885, 2.34313, -1.21105e-11, -1.78885, -1.21079e-11, 0, 0, -2.34313, 7.02938, 0, 0, -2.89626, -4.44089e-16, -2.89626, 1.49694e-11, 2.21115, 2.89626, -2.89626, -2.21115, -1.49668e-11, -9.3725, -9.36656, -12.2688, 2.89626, 9.36656, 6.33979e-11, 2.89626, 0, 12.2688}, {6.00487, -2.5896, 0, 1.30033, -0.681296, -1.31177, -1.30033, -0.651333, 1.31177, 2.00162, 0.469428, 0, -4.33448, 2.50034, 6.86849, 0, 1.64722, 0, 9.28277, 2.34345, -6.86849, -8.00649, -3.52493, 0, -4.08144, 0.261882, 1.62143, -0.866843, 0.224847, -1.62143}, {-2.00162, 0.8632, -1.61346e-16, -3.901, 2.04389, 3.9353, -1.30033, -0.651333, 1.31177, 2.00162, 0.469428, -6.06985e-17, 8.87333, -3.67765, 1.62143, 5.20133, 4.25255, -5.24706, 4.08144, -0.261882, -1.62143, 5.28204e-17, -1.64722, 2.22045e-16, -12.0879, -1.61583, 1.62143, -0.866843, 0.224847, -1.62143}, {-2.00162, 0.8632, -1.00648e-16, 1.30033, -0.681296, -1.31177, 3.901, 1.954, -3.9353, 2.00162, 0.469428, -1.21397e-16, 0.866843, -0.224847, 1.62143, -5.20133, 4.3724, 5.24706, 12.0879, -3.71468, -1.62143, 4.9691e-16, -1.64722, 2.22045e-16, -4.08144, 0.261882, 1.62143, -8.87333, -1.65287, -1.62143}, {-2.00162, 0.8632, 0, 1.30033, -0.681296, -1.31177, -1.30033, -0.651333, 1.31177, -6.00487, -1.40829, 0, 0.866843, -0.224847, 1.62143, 0, 1.64722, 0, 4.08144, -0.261882, -1.62143, 8.00649, -5.10002, 0, -9.28277, 2.98706, 6.86849, 4.33448, 2.83018, -6.86849}, {-3.67855, 1.13524, -1.13945, -0.728854, -0.729491, 0.729491, -0.347691, -0.347995, -1.25767, -0.149637, 1.4559, 0.148365, 2.30068, 4.28741, -4.28915, 1.33068, 1.33185, 0.652868, 0.304891, 2.28987, 6.11578, -0.732135, -7.15545, -1.24633, 1.08587, -0.897892, -1.08509, 0.614731, -1.36945, 1.37118}, {1.22618, -0.378415, 0.379817, 2.18656, 2.18847, -2.18847, -0.347691, -0.347995, -1.25767, -0.149637, 1.4559, 0.148365, -5.51946, 2.8831, -2.89045, 2.72145, 2.72383, 5.68356, -1.08587, 0.897892, 1.08509, -1.33068, -1.33185, -0.652868, 1.68442, -6.72149, -1.67855, 0.614731, -1.36945, 1.37118}, {1.22618, -0.378415, 0.379817, -0.728854, -0.729491, 0.729491, 1.04307, 1.04399, 3.77302, -0.149637, 1.4559, 0.148365, -0.614731, 1.36945, -1.37118, 4.2461, 4.24981, -2.2651, -5.9906, 2.41155, -0.434178, -1.33068, -1.33185, -0.652868, 1.08587, -0.897892, -1.08509, 1.21328, -7.19305, 0.777722}, {1.22618, -0.378415, 0.379817, -0.728854, -0.729491, 0.729491, -0.347691, -0.347995, -1.25767, 0.448911, -4.3677, -0.445094, -0.614731, 1.36945, -1.37118, 1.33068, 1.33185, 0.652868, -1.08587, 0.897892, 1.08509, -6.23541, 0.181812, -2.17214, 4.00129, 2.02007, -4.00305, 2.0055, 0.0225343, 6.40187}, {-3.16808, 0, 5.09912e-16, -0.781545, 0, -1.31177, 0.234793, 1.31177, 1.31177, -0.509273, -1.31177, -1.26089e-16, 2.78691, 0, 6.86849, 0.675824, -1.62143, -2.22045e-16, -2.53471, -6.86849, -6.86849, 1.36127, 6.86849, 7.264e-16, 1.59554, 1.62143, 1.62143, 0.339276, 0, -1.62143}, {1.05603, 0, 6.58225e-17, 2.34464, 0, 3.9353, 0.234793, 1.31177, 1.31177, -0.509273, -1.31177, 3.78267e-16, -4.56338, 0, 1.62143, -0.263347, -6.86849, -5.24706, -1.59554, -1.62143, -1.62143, -0.675824, 1.62143, -4.44089e-16, 3.63263, 6.86849, 1.62143, 0.339276, 0, -1.62143}, {1.05603, -2.22045e-16, 6.02665e-17, -0.781545, 3.78267e-16, -1.31177, -0.704378, -3.9353, -3.9353, -0.509273, -1.31177, -5.04356e-16, -0.339276, -2.22045e-16, 1.62143, 3.80201, -1.62143, 5.24706, -5.81964, -1.62143, -1.62143, -0.675824, 1.62143, 4.44089e-16, 1.59554, 1.62143, 1.62143, 2.37637, 5.24706, -1.62143}, {1.05603, 0, 0, -0.781545, 0, -1.31177, 0.234793, 1.31177, 1.31177, 1.52782, 3.9353, 0, -0.339276, 0, 1.62143, 0.675824, -1.62143, 0, -1.59554, -1.62143, -1.62143, -4.89993, 1.62143, 0, 4.72172, 1.62143, 6.86849, -0.599895, -5.24706, -6.86849}, {-4.31352, 0.137385, -4.35145, -1.43784, 0.845244, 0.568738, 0, -1.33263, 0, 1.50855e-12, 0.53318, -2.01922, 5.75136, -4.36915, -4.77085, 1.77727, 0.602441, -0.702999, -1.77727, 7.03434, -1.7929, -1.77727, -2.73516, 8.77989, 1.77727, -1.70383, 1.7929, -1.86467e-12, 0.988174, 2.4959}, {1.43784, -0.0457949, 1.45048, 4.31352, -2.53573, -1.70622, 0, -1.33263, 0, 1.50567e-12, 0.53318, -2.01922, -5.75136, -0.804994, -8.29783, 1.77727, 5.93296, -0.702999, -1.77727, 1.70383, -1.7929, -1.77727, -0.602441, 0.702999, 1.77727, -3.83654, 9.86978, -1.86111e-12, 0.988174, 2.4959}, {1.43784, -0.0457949, 1.45048, -1.43784, 0.845244, 0.568738, 0, 3.99789, 0, 1.50891e-12, 0.53318, -2.01922, 1.86476e-12, -0.988174, -2.4959, 7.52863, -2.77854, -2.97795, -7.52863, 1.887, -7.59483, -1.77727, -0.602441, 0.702999, 1.77727, -1.70383, 1.7929, -7.90075e-12, -1.14454, 10.5728}, {1.43784, -0.0457949, 1.45048, -1.43784, 0.845244, 0.568738, 0, -1.33263, 0, -4.51484e-12, -1.59954, 6.05767, 1.85986e-12, -0.988174, -2.4959, 1.77727, 0.602441, -0.702999, -1.77727, 1.70383, -1.7929, -7.52863, -0.419261, -5.09894, 7.52863, -5.0848, -0.482057, -1.86021e-12, 6.31869, 2.4959}, {0, 7.02938, 1.2039e-15, 0, 0, -2.34313, 1.78885, 2.34313, 2.34059, -1.78885, -1.21095e-11, 0.00253498, 0, 2.89626, 12.2688, -2.21115, -2.89626, 0.00313341, -9.36656, -9.3725, -12.2555, 9.36656, 2.89626, -0.0132733, 2.21115, 1.49681e-11, 2.89313, 0, -2.89626, -2.89626}, {0, -2.34313, 2.70617e-16, 0, 0, 7.02938, 1.78885, 2.34313, 2.34059, -1.78885, -1.2111e-11, 0.00253498, 0, 12.2688, 2.89626, -9.36656, -12.2688, -9.35923, -2.21115, -1.49695e-11, -2.89313, 2.21115, 2.89626, -0.00313341, 9.36656, 6.34142e-11, 2.88299, 0, -2.89626, -2.89626}, {0, -2.34313, -2.48499e-16, 0, 0, -2.34313, -5.36656, -7.02938, -7.02177, -1.78885, -1.21116e-11, 0.00253498, 0, 2.89626, 2.89626, -2.21115, -2.89626, 9.37564, -2.21115, 9.3725, -2.89313, 2.21115, 2.89626, -0.00313341, 2.21115, 1.49707e-11, 2.89313, 7.15542, -2.89626, -2.9064}, {0, -2.34313, 5.31259e-16, 0, 0, -2.34313, 1.78885, 2.34313, 2.34059, 5.36656, 5.47978e-11, -0.00760494, 0, 2.89626, 2.89626, -2.21115, -2.89626, 0.00313341, -2.21115, -2.25774e-11, -2.89313, 2.21115, 12.2688, -0.00313341, 2.21115, 2.25779e-11, 12.2656, -7.15542, -12.2688, -12.2586}, {-3.23058, -0.349184, -0.349184, -0.223923, -1.25104, -1.25104, -0.552433, 1.28003, -0.0317341, -0.300503, -0.14539, 1.16638, -0.158596, 6.40664, 6.40664, 0.959628, -0.0358398, 1.58559, 1.56151, -6.8462, 0.0222906, 0.242385, 0.617398, -6.25109, 0.648226, 1.72608, 0.104646, 1.05429, -1.40249, -1.40249}, {1.07686, 0.116395, 0.116395, 0.671768, 3.75311, 3.75311, -0.552433, 1.28003, -0.0317341, -0.300503, -0.14539, 1.16638, -5.36172, 0.936916, 0.936916, 3.16936, -5.15596, 1.71253, -0.648226, -1.72608, -0.104646, -0.959628, 0.0358398, -1.58559, 1.85024, 2.30764, -4.56086, 1.05429, -1.40249, -1.40249}, {1.07686, 0.116395, 0.116395, -0.223923, -1.25104, -1.25104, 1.6573, -3.84009, 0.0952024, -0.300503, -0.14539, 1.16638, -1.05429, 1.40249, 1.40249, 1.85532, 4.96831, 6.58973, -4.95566, -2.19166, -0.570224, -0.959628, 0.0358398, -1.58559, 0.648226, 1.72608, 0.104646, 2.2563, -0.820936, -6.068}, {1.07686, 0.116395, 0.116395, -0.223923, -1.25104, -1.25104, -0.552433, 1.28003, -0.0317341, 0.90151, 0.436169, -3.49913, -1.05429, 1.40249, 1.40249, 0.959628, -0.0358398, 1.58559, -0.648226, -1.72608, -0.104646, -5.26706, -0.429738, -2.05117, 1.54392, 6.73022, 5.10879, 3.26402, -6.52262, -1.27556}, {5.36656, 7.02938, -7.02938, 0, 0, -2.34313, 1.78885, -1.02092e-11, 1.05679e-11, 0, 2.34313, 0, 2.21115, 2.89626, 9.3725, -2.21115, 1.26192e-11, 2.89626, -7.15542, 2.89626, -2.89626, 2.21115, -9.3725, -2.89626, 0, -2.89626, 2.89626, -2.21115, -2.89626, -1.30626e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, 7.02938, 1.78885, -1.02081e-11, 1.05669e-11, -1.04056e-15, 2.34313, -6.14662e-27, 9.36656, 12.2688, -9.3725, -9.36656, 5.34504e-11, 2.89626, -8.4211e-16, 2.89626, -2.89626, 2.21115, -1.26174e-11, -2.89626, 5.44843e-15, -12.2688, 2.89626, -2.21115, -2.89626, -1.30613e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, -2.34313, -5.36656, 3.06298e-11, -3.17084e-11, 0, 2.34313, 0, 2.21115, 2.89626, 1.3064e-11, -2.21115, 1.26202e-11, 12.2688, 7.15542, 12.2688, -12.2688, 2.21115, -1.26196e-11, -2.89626, 0, -2.89626, 2.89626, -2.21115, -12.2688, -1.30646e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, -2.34313, 1.78885, -1.02092e-11, 1.05658e-11, 0, -7.02938, 0, 2.21115, 2.89626, 1.30595e-11, -2.21115, 1.26192e-11, 2.89626, 4.44089e-16, 2.89626, -2.89626, 9.36656, 9.3725, -12.2688, 0, -2.89626, 12.2688, -9.36656, -2.89626, -5.53233e-11}, {0, 9.45441, 0, 3.15147, 1.39953e-15, -1.39953e-15, -1.36261, 1.36261, 1.78885, -1.78885, 1.78885, -1.78885, -16.5013, 3.89543, 7.54952e-15, -2.21115, -1.68428, -2.21115, 7.13474, -3.23931, -9.36656, 9.36656, -5.47113, 9.36656, -1.68428, -2.21115, 2.21115, 3.89543, -3.89543, -1.77636e-15}, {8.88178e-16, -3.15147, 2.22045e-16, -9.45441, -1.00042e-15, 8.3972e-15, -1.36261, 1.36261, 1.78885, -1.78885, 1.78885, -1.78885, -3.89543, 16.5013, 5.32907e-15, 3.23931, -7.13474, -9.36656, 1.68428, 2.21115, -2.21115, 2.21115, 1.68428, 2.21115, 5.47113, -9.36656, 9.36656, 3.89543, -3.89543, -3.55271e-15}, {4.44089e-16, -3.15147, 0, 3.15147, 0, 0, 4.08784, -4.08784, -5.36656, -1.78885, 1.78885, -1.78885, -3.89543, 3.89543, 0, -14.817, -1.68428, -2.21115, 1.68428, 14.817, -2.21115, 2.21115, 1.68428, 2.21115, -1.68428, -2.21115, 2.21115, 11.0508, -11.0508, 7.15542}, {6.66134e-16, -3.15147, -2.22045e-16, 3.15147, 1.39953e-15, -1.39953e-15, -1.36261, 1.36261, 1.78885, 5.36656, -5.36656, 5.36656, -3.89543, 3.89543, 1.77636e-15, -2.21115, -1.68428, -2.21115, 1.68428, 2.21115, -2.21115, 2.21115, 14.2902, 2.21115, -14.2902, -2.21115, 2.21115, 9.34589, -9.34589, -7.15542}, {4.32877, -2.26802, -4.36683, -0.571101, 0.113693, -1.4431, 0, -1.33263, 0, 2.01402, 0.462931, -0.0125109, 4.77387, -1.52978, 5.75693, 0.70592, 1.50669, 1.78377, 1.78355, 6.04326, -1.79923, -8.76202, -3.35841, -1.73373, -1.78355, -0.712746, 1.79923, -2.48947, 1.07501, 0.0154644}, {-1.44292, 0.756005, 1.45561, 1.7133, -0.34108, 4.3293, 0, -1.33263, 0, 2.01402, 0.462931, -0.0125109, 8.26116, -4.09903, -5.83791, 0.70592, 6.8372, 1.78377, 1.78355, 0.712746, -1.79923, -0.70592, -1.50669, -1.78377, -9.83965, -2.56447, 1.84928, -2.48947, 1.07501, 0.0154644}, {-1.44292, 0.756005, 1.45561, -0.571101, 0.113693, -1.4431, 0, 3.99789, 0, 2.01402, 0.462931, -0.0125109, 2.48947, -1.07501, -0.0154644, 2.99032, 1.05191, 7.55617, 7.55524, -2.31127, -7.62167, -0.70592, -1.50669, -1.78377, -1.78355, -0.712746, 1.79923, -10.5456, -0.776716, 0.0655081}, {-1.44292, 0.756005, 1.45561, -0.571101, 0.113693, -1.4431, 0, -1.33263, 0, -6.04207, -1.38879, 0.0375328, 2.48947, -1.07501, -0.0154644, 0.70592, 1.50669, 1.78377, 1.78355, 0.712746, -1.79923, 5.06577, -4.53071, -7.60621, 0.500853, -1.16752, 7.57163, -2.48947, 6.40552, 0.0154644}, {-4.70136, -8.88178e-16, -1.57513e-15, 0.134389, 1.44665, -1.44665, -0.426776, 0.569981, 1.4404, -1.27473, -2.01663, 0.00624416, -2.64074, -7.57474, 7.57474, 0.36141, -2.49269, 0.00771821, 0.297559, -2.98446, -7.54205, 4.73753, 10.5592, -0.0326948, 1.40954, 0.704535, 1.78044, 2.10318, 1.78815, -1.78815}, {1.56712, -8.88178e-16, 1.00961e-15, -0.403167, -4.33994, 4.33994, -0.426776, 0.569981, 1.4404, -1.27473, -2.01663, 0.00624416, -8.37167, -1.78815, 1.78815, 2.06851, -4.77261, -5.75389, -1.40954, -0.704535, -1.78044, -0.36141, 2.49269, -0.00771821, 6.50848, 8.77105, 1.75546, 2.10318, 1.78815, -1.78815}, {1.56712, -1.33227e-15, 1.05818e-16, 0.134389, 1.44665, -1.44665, 1.28033, -1.70994, -4.32121, -1.27473, -2.01663, 0.00624416, -2.10318, -1.78815, 1.78815, -0.176146, -8.27928, 5.79431, -7.67803, -0.704535, -1.78044, -0.36141, 2.49269, -0.00771821, 1.40954, 0.704535, 1.78044, 7.20212, 9.85467, -1.81313}, {1.56712, 0, 2.67147e-16, 0.134389, 1.44665, -1.44665, -0.426776, 0.569981, 1.4404, 3.8242, 6.04988, -0.0187325, -2.10318, -1.78815, 1.78815, 0.36141, -2.49269, 0.00771821, -1.40954, -0.704535, -1.78044, -6.6299, 2.49269, -0.00771821, 0.871989, -5.08205, 7.56702, 3.81029, -0.491769, -7.54977}, {-3.47256, 2.13004, 3.47613, -1.55533, -0.53343, -0.78864, -0.511744, 1.83496, 0.513241, 0.909554, -0.591516, 1.43411, 6.71303, 3.6707, 5.56162, 2.55504, -1.60878, 0.340411, 1.24875, -8.73034, -1.25512, -6.19326, 3.97484, -6.07685, 0.798222, 1.39051, -0.797844, -0.49172, -1.53698, -2.40706}, {1.15752, -0.710012, -1.15871, 4.66599, 1.60029, 2.36592, -0.511744, 1.83496, 0.513241, 0.909554, -0.591516, 1.43411, -4.13836, 4.37703, 7.0419, 4.60202, -8.94861, -1.71255, -0.798222, -1.39051, 0.797844, -2.55504, 1.60878, -0.340411, -2.83999, 3.75657, -6.53428, -0.49172, -1.53698, -2.40706}, {1.15752, -0.710012, -1.15871, -1.55533, -0.53343, -0.78864, 1.53523, -5.50487, -1.53972, 0.909554, -0.591516, 1.43411, 0.49172, 1.53698, 2.40706, 8.77636, 0.524942, 3.49497, -5.4283, 1.44954, 5.43269, -2.55504, 1.60878, -0.340411, 0.798222, 1.39051, -0.797844, -4.12993, 0.829086, -8.14349}, {1.15752, -0.710012, -1.15871, -1.55533, -0.53343, -0.78864, -0.511744, 1.83496, 0.513241, -2.72866, 1.77455, -4.30233, 0.49172, 1.53698, 2.40706, 2.55504, -1.60878, 0.340411, -0.798222, -1.39051, 0.797844, -7.18512, 4.44882, 4.29443, 7.01954, 3.52423, 2.35672, 1.55526, -8.87681, -4.46002}, {-0.0259854, 4.18315, -1.68926, -1.44604, -0.0976914, -0.778579, 1.44538, 0.20404, -0.351453, -0.00800116, 1.28804, 0.566947, 7.56086, 2.23507, 3.38068, 0.000816584, -0.131455, 1.3968, -7.57881, 0.655184, 1.14422, 0.031188, -5.02069, -3.66458, 1.79729, -1.47135, 0.261592, -1.7767, -1.84431, -0.266365}, {0.00866179, -1.39438, 0.563086, 4.33812, 0.293074, 2.33574, 1.44538, 0.20404, -0.351453, -0.00800116, 1.28804, 0.566947, 1.74205, 7.42184, -1.98598, -5.7807, -0.947617, 2.80261, -1.79729, 1.47135, -0.261592, -0.000816584, 0.131455, -1.3968, 1.8293, -6.62349, -2.0062, -1.7767, -1.84431, -0.266365}, {0.00866179, -1.39438, 0.563086, -1.44604, -0.0976914, -0.778579, -4.33614, -0.612121, 1.05436, -0.00800116, 1.28804, 0.566947, 1.7767, 1.84431, 0.266365, 5.78498, 0.259311, 4.51111, -1.83194, 7.04888, -2.51393, -0.000816584, 0.131455, -1.3968, 1.79729, -1.47135, 0.261592, -1.74469, -6.99645, -2.53415}, {0.00866179, -1.39438, 0.563086, -1.44604, -0.0976914, -0.778579, 1.44538, 0.20404, -0.351453, 0.0240035, -3.86411, -1.70084, 1.7767, 1.84431, 0.266365, 0.000816584, -0.131455, 1.3968, -1.79729, 1.47135, -0.261592, -0.0354637, 5.70899, -3.64914, 7.58145, -1.08058, 3.37591, -7.55822, -2.66047, 1.13945}, {5.36656, -5.36656, -5.36656, 3.15147, -4.93118e-15, 0, -1.36261, 1.36261, -1.78885, 0, -3.15147, 0, -14.2902, -2.21115, -2.21115, -2.21115, -1.68428, 2.21115, 9.34589, -9.34589, 7.15542, 2.21115, 14.2902, -2.21115, -3.89543, 3.89543, 0, 1.68428, 2.21115, 2.21115}, {-1.78885, 1.78885, 1.78885, -9.45441, 1.0595e-14, -4.1986e-15, -1.36261, 1.36261, -1.78885, 0, -3.15147, 0, 5.47113, -9.36656, -9.36656, 3.23931, -7.13474, 9.36656, 3.89543, -3.89543, 1.28583e-15, 2.21115, 1.68428, -2.21115, -3.89543, 16.5013, -1.72992e-15, 1.68428, 2.21115, 2.21115}, {-1.78885, 1.78885, 1.78885, 3.15147, 0, 0, 4.08784, -4.08784, 5.36656, 0, -3.15147, 0, -1.68428, -2.21115, -2.21115, -14.817, -1.68428, 2.21115, 11.0508, -11.0508, -7.15542, 2.21115, 1.68428, -2.21115, -3.89543, 3.89543, 0, 1.68428, 14.817, 2.21115}, {-1.78885, 1.78885, 1.78885, 3.15147, -4.93118e-15, 0, -1.36261, 1.36261, -1.78885, 0, 9.45441, 0, -1.68428, -2.21115, -2.21115, -2.21115, -1.68428, 2.21115, 3.89543, -3.89543, -4.44089e-16, 9.36656, -5.47113, -9.36656, -16.5013, 3.89543, 0, 7.13474, -3.23931, 9.36656}, {2.81269, -2.81269, -1.11325, -0.456393, -1.88673, -0.746758, 0.886018, 1.45711, 2.59594, 0.507938, -0.507938, -2.22026, 3.5486, 8.72017, 3.45139, -0.531046, 0.531046, -2.28571, -3.48036, -8.78841, -14.0512, -1.50071, 1.50071, 11.1668, -0.0637129, 2.95998, 3.66744, -1.72302, -1.17324, -0.464361}, {-0.937563, 0.937563, 0.371082, 1.36918, 5.6602, 2.24027, 0.886018, 1.45711, 2.59594, 0.507938, -0.507938, -2.22026, 5.47328, -2.57701, -1.01997, -4.07512, -5.29738, -12.6695, 0.0637129, -2.95998, -3.66744, 0.531046, -0.531046, 2.28571, -2.09546, 4.99173, 12.5485, -1.72302, -1.17324, -0.464361}, {-0.937563, 0.937563, 0.371082, -0.456393, -1.88673, -0.746758, -2.65805, -4.37132, -7.78781, 0.507938, -0.507938, -2.22026, 1.72302, 1.17324, 0.464361, 1.29453, 8.07798, 0.701322, 3.81396, -6.71023, -5.15177, 0.531046, -0.531046, 2.28571, -0.0637129, 2.95998, 3.66744, -3.75477, 0.858512, 8.41668}, {-0.937563, 0.937563, 0.371082, -0.456393, -1.88673, -0.746758, 0.886018, 1.45711, 2.59594, -1.52381, 1.52381, 6.66078, 1.72302, 1.17324, 0.464361, -0.531046, 0.531046, -2.28571, 0.0637129, -2.95998, -3.66744, 4.2813, -4.2813, 0.801382, 1.76186, 10.5069, 6.65447, -5.2671, -7.00167, -10.8481}, {8.88178e-16, 4.08096, 0.0852192, 2.97466e-16, 0.921902, -1.18196, 1.31177, 0.0265815, 1.34059, -1.31177, 0.411835, -0.130224, -1.11022e-15, -3.1457, 6.22395, -1.62143, -1.17239, -0.196078, -6.86849, 1.54226, -6.98432, 6.86849, -0.474951, 0.716974, 1.62143, -1.64859, 1.62195, 0, -0.541913, -1.4961}, {-2.22045e-16, -1.36032, -0.0284064, -4.46199e-16, -2.76571, 3.54589, 1.31177, 0.0265815, 1.34059, -1.31177, 0.411835, -0.130224, 8.88178e-16, 5.98319, 1.60972, -6.86849, -1.27872, -5.55845, -1.62143, 1.64859, -1.62195, 1.62143, 1.17239, 0.196078, 6.86849, -3.29593, 2.14285, 0, -0.541913, -1.4961}, {-1.33227e-15, -1.36032, -0.0284064, 4.46199e-16, 0.921902, -1.18196, -3.9353, -0.0797444, -4.02178, -1.31177, 0.411835, -0.130224, 8.88178e-16, 0.541913, 1.4961, -1.62143, -4.86, 4.53177, -1.62143, 7.08987, -1.50833, 1.62143, 1.17239, 0.196078, 1.62143, -1.64859, 1.62195, 5.24706, -2.18925, -0.975202}, {1.55431e-15, -1.36032, -0.0284064, -1.04113e-15, 0.921902, -1.18196, 1.31177, 0.0265815, 1.34059, 3.9353, -1.23551, 0.390672, -4.44089e-16, 0.541913, 1.4961, -1.62143, -1.17239, -0.196078, -1.62143, 1.64859, -1.62195, 1.62143, 6.61367, 0.309704, 1.62143, -5.3362, 6.3498, -5.24706, -0.648239, -6.85847}, {1.39697, -4.32433, -4.36732, 1.89829, -2.30844e-15, -1.37509e-15, 0.0801166, 0.574147, -1.4494, -1.51275, -2.01559, -0.00636856, -9.364, -1.78172, -1.79943, -2.44545, -0.709685, 1.79156, 0.156089, -4.78799, 5.78974, 8.49644, 8.77205, -1.76609, -0.476556, 2.49141, 0.00787198, 1.77083, 1.78172, 1.79943}, {-0.465658, 1.44144, 1.45577, -5.69487, 3.6613e-15, -2.04012e-15, 0.0801166, 0.574147, -1.4494, -1.51275, -2.01559, -0.00636856, 0.0918014, -7.54749, -7.62252, -2.76591, -3.00627, 7.58918, 0.476556, -2.49141, -0.00787198, 2.44545, 0.709685, -1.79156, 5.57444, 10.5538, 0.0333462, 1.77083, 1.78172, 1.79943}, {-0.465658, 1.44144, 1.45577, 1.89829, 0, 0, -0.24035, -1.72244, 4.34821, -1.51275, -2.01559, -0.00636856, -1.77083, -1.78172, -1.79943, -10.0386, -0.709685, 1.79156, 2.33919, -8.25718, -5.83096, 2.44545, 0.709685, -1.79156, -0.476556, 2.49141, 0.00787198, 7.82183, 9.84408, 1.82491}, {-0.465658, 1.44144, 1.45577, 1.89829, 9.49861e-16, 3.00123e-18, 0.0801166, 0.574147, -1.4494, 4.53825, 6.04677, 0.0191057, -1.77083, -1.78172, -1.79943, -2.44545, -0.709685, 1.79156, 0.476556, -2.49141, -0.00787198, 4.30808, -5.05609, -7.61465, -8.06972, 2.49141, 0.00787198, 1.45037, -0.514866, 7.59705}, {4.31352, -3.43679, 1.70622, 1.43784, 0.720211, -1.45048, 0, -1.33263, 0, -1.50621e-12, -0.53318, 2.01922, -5.75136, -5.18711, 8.29783, -1.77727, 0.75699, 1.7929, 1.77727, 5.5617, 0.702999, 1.77727, 1.37573, -9.86978, -1.77727, -0.231184, -0.702999, 1.86177e-12, 2.30627, -2.4959}, {-1.43784, 1.1456, -0.568738, -4.31352, -2.16063, 4.35145, 0, -1.33263, 0, -1.50909e-12, -0.53318, 2.01922, 5.75136, -6.88865, 4.77085, -1.77727, 6.08751, 1.7929, 1.77727, 0.231184, 0.702999, 1.77727, -0.75699, -1.7929, -1.77727, 1.90153, -8.77989, 1.86534e-12, 2.30627, -2.4959}, {-1.43784, 1.1456, -0.568738, 1.43784, 0.720211, -1.45048, 0, 3.99789, 0, -1.50945e-12, -0.53318, 2.01922, -1.86543e-12, -2.30627, 2.4959, -7.52863, -2.12386, 7.59483, 7.52863, -4.3512, 2.97795, 1.77727, -0.75699, -1.7929, -1.77727, -0.231184, -0.702999, 7.90358e-12, 4.43898, -10.5728}, {-1.43784, 1.1456, -0.568738, 1.43784, 0.720211, -1.45048, 0, -1.33263, 0, 4.52348e-12, 1.59954, -6.05767, -1.86342e-12, -2.30627, 2.4959, -1.77727, 0.75699, 1.7929, 1.77727, 0.231184, 0.702999, 7.52863, -5.33938, 0.482057, -7.52863, -3.11203, 5.09894, 1.86378e-12, 7.63678, -2.4959}, {-4.90958, -4.91099, -14.364, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, -1.63653, -1.637, -1.63653, -10.2723, 6.22604, 2.33354, -1.68754e-14, 1.70974e-14, 3.89543, 6.22661, -10.2729, 2.33118, 6.54611, 6.54798, 2.65068, 0.0754226, 3.97087, 3.97085, 3.9703, 0.076001, 3.9703}, {1.63653, 1.637, 4.788, -4.72653, 4.72653, 4.72788, -1.57551, 1.57551, -1.57551, -1.63653, -1.637, -1.63653, -10.5164, -6.62398, -23.1223, 6.30204, -6.30204, 10.1975, -0.0754226, -3.97087, -3.97085, 1.38046e-14, -1.50613e-14, -3.89543, 6.62153, 10.5189, 10.517, 3.9703, 0.076001, 3.9703}, {1.63653, 1.637, 4.788, 1.57551, -1.57551, -1.57596, 4.72653, -4.72653, 4.72653, -1.63653, -1.637, -1.63653, -3.9703, -0.076001, -3.9703, -6.30204, 6.30204, 10.1993, -6.62153, -10.5189, -23.1228, 1.64691e-14, -1.72818e-14, -3.89543, 0.0754226, 3.97087, 3.97085, 10.5164, 6.62398, 10.5164}, {1.63653, 1.637, 4.788, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, 4.90958, 4.91099, 4.90958, -3.9703, -0.076001, -3.9703, -1.70974e-14, 1.68754e-14, 3.89543, -0.0754226, -3.97087, -3.97085, -6.54611, -6.54798, -23.0474, -6.22661, 10.2729, 10.2747, 10.2723, -6.22604, 10.2723}, {1.1292, -10.9335, -1.11964, 0, 0, 1.60567, 1.79029, -1.78764, -1.78873, -1.41389, -1.85687, -0.190152, 0.465254, -4.50486, -8.8687, -2.21292, 2.20964, 0.226277, -8.90884, 4.85533, 8.90459, 7.8685, 5.21784, 0.53433, 1.74767, 2.29522, -1.74967, -0.465254, 4.50486, 2.44603}, {-0.376399, 3.64451, 0.373213, 3.83169e-15, 8.27924e-17, -4.817, 1.79029, -1.78764, -1.78873, -1.41389, -1.85687, -0.190152, 1.97085, -19.0829, -3.93889, -9.37409, 9.36019, 7.3812, -1.74767, -2.29522, 1.74967, 2.21292, -2.20964, -0.226277, 7.40324, 9.72271, -0.989068, -0.465254, 4.50486, 2.44603}, {-0.376399, 3.64451, 0.373213, -2.25438e-15, -2.96069e-15, 1.60567, -5.37088, 5.36291, 5.36619, -1.41389, -1.85687, -0.190152, 0.465254, -4.50486, -2.44603, -2.21292, 2.20964, -6.1964, -0.242074, -16.8733, 0.256821, 2.21292, -2.20964, -0.226277, 1.74767, 2.29522, -1.74967, 5.19032, 11.9323, 3.20664}, {-0.376399, 3.64451, 0.373213, 0, 0, 1.60567, 1.79029, -1.78764, -1.78873, 4.24168, 5.57061, 0.570455, 0.465254, -4.50486, -2.44603, -2.21292, 2.20964, 0.226277, -1.74767, -2.29522, 1.74967, 3.71852, -16.7877, -1.71913, 1.74767, 2.29522, -8.17235, -7.62642, 11.6554, 9.60095}, {-9.76996e-15, 8.88178e-16, -7.02938, 1.78885, 2.33948, -2.34059, -1.78885, 6.92504e-12, -0.00253498, 0, -2.33948, 0, -9.36656, -12.2497, 9.35923, 3.9968e-15, -2.89175, 2.89626, 9.36656, -3.62599e-11, -2.88299, -3.9968e-15, 12.2497, -2.89626, -2.21115, 8.55982e-12, 2.89313, 2.21115, 2.89175, 0.00313341}, {-2.22045e-15, -1.33227e-15, 2.34313, -5.36656, -7.01844, 7.02177, -1.78885, 6.92556e-12, -0.00253498, 0, -2.33948, 0, -2.21115, -2.89175, -9.37564, 7.15542, -2.89175, 2.9064, 2.21115, -8.55893e-12, -2.89313, 2.66454e-15, 2.89175, -2.89626, -2.21115, 9.35791, 2.89313, 2.21115, 2.89175, 0.00313341}, {3.9968e-15, 3.55271e-15, 2.34313, 1.78885, 2.33948, -2.34059, 5.36656, -2.0786e-11, 0.00760494, 0, -2.33948, 0, -2.21115, -2.89175, -0.00313341, -7.15542, -12.2497, 12.2586, 2.21115, -8.58513e-12, -12.2656, -4.88498e-15, 2.89175, -2.89626, -2.21115, 8.5687e-12, 2.89313, 2.21115, 12.2497, 0.00313341}, {0, 4.44089e-16, 2.34313, 1.78885, 2.33948, -2.34059, -1.78885, 6.92763e-12, -0.00253498, 0, 7.01844, 0, -2.21115, -2.89175, -0.00313341, 0, -2.89175, 2.89626, 2.21115, -8.56337e-12, -2.89313, 0, 2.89175, -12.2688, -9.36656, -9.35791, 12.2555, 9.36656, 2.89175, 0.0132733}, {5.21741, 5.22554, 3.98943, -2.33948, 0, 0, 1.54072, 1.54312, -0.61076, 2.53789, 0.198723, 1.94057, 14.3994, 2.15304, 1.64373, 0.987318, -1.90741, 0.754941, -5.91764, -5.92686, 4.84171, -11.1389, 1.11252, -8.51722, -0.245252, -0.245635, -2.39867, -5.04144, -2.15304, -1.64373}, {-1.73914, -1.74185, -1.32981, 7.01844, 0, 0, 1.54072, 1.54312, -0.61076, 2.53789, 0.198723, 1.94057, 11.998, 9.12042, 6.96297, -5.17557, -8.0799, 3.19798, 0.245252, 0.245635, 2.39867, -0.987318, 1.90741, -0.754941, -10.3968, -1.04052, -10.1609, -5.04144, -2.15304, -1.64373}, {-1.73914, -1.74185, -1.32981, -2.33948, 0, 0, -4.62217, -4.62937, 1.83228, 2.53789, 0.198723, 1.94057, 5.04144, 2.15304, 1.64373, 10.3452, -1.90741, 0.754941, 7.20179, 7.21302, 7.71791, -0.987318, 1.90741, -0.754941, -0.245252, -0.245635, -2.39867, -15.193, -2.94793, -9.40601}, {-1.73914, -1.74185, -1.32981, -2.33948, 0, 0, 1.54072, 1.54312, -0.61076, -7.61368, -0.596168, -5.82171, 5.04144, 2.15304, 1.64373, 0.987318, -1.90741, 0.754941, 0.245252, 0.245635, 2.39867, 5.96922, 8.87479, 4.5643, 9.11266, -0.245635, -2.39867, -11.2043, -8.32553, 0.799305}, {10.9417, 1.1195, -1.12048, -2.16738e-15, -8.61236e-16, 1.60567, 1.79007, 1.78742, -1.78898, 1.85717, -1.41425, -0.190182, 4.50824, 0.46126, -8.86905, -2.21265, -2.20937, 0.226585, -4.86469, -8.89778, 8.90555, -5.21604, 7.86637, 0.534145, -2.29559, 1.74811, -1.74964, -4.50824, -0.46126, 2.44638}, {-3.64724, -0.373167, 0.373493, -8.02431e-17, 3.82867e-15, -4.817, 1.79007, 1.78742, -1.78898, 1.85717, -1.41425, -0.190182, 19.0972, 1.95393, -3.94035, -9.37293, -9.35904, 7.3825, 2.29559, -1.74811, 1.74964, 2.21265, 2.20937, -0.226585, -9.72428, 7.40511, -0.988907, -4.50824, -0.46126, 2.44638}, {-3.64724, -0.373167, 0.373493, 2.96117e-15, -2.25495e-15, 1.60567, -5.37021, -5.36225, 5.36694, 1.85717, -1.41425, -0.190182, 4.50824, 0.46126, -2.44638, -2.21265, -2.20937, -6.19609, 16.8846, -0.25544, 0.255663, 2.21265, 2.20937, -0.226585, -2.29559, 1.74811, -1.74964, -11.9369, 5.19574, 3.20711}, {-3.64724, -0.373167, 0.373493, -7.40292e-16, 5.63738e-16, 1.60567, 1.79007, 1.78742, -1.78898, -5.57152, 4.24275, 0.570547, 4.50824, 0.46126, -2.44638, -2.21265, -2.20937, 0.226585, 2.29559, -1.74811, 1.74964, 16.8016, 3.70204, -1.72056, -2.29559, 1.74811, -8.17231, -11.6685, -7.61093, 9.60229}, {1.83228, 4.62937, -4.62937, 0, 0, -1.60567, 1.94057, -0.198723, 0.198723, -1.32981, 1.74185, -0.136178, 0.754941, 1.90741, 6.49998, -2.39867, 0.245635, 1.73908, -9.40601, 2.94793, -2.94793, 7.71791, -7.21302, -1.19437, 1.64373, -2.15304, 2.15304, -0.754941, -1.90741, -0.0773091}, {-0.61076, -1.54312, 1.54312, 0, 0, 4.817, 1.94057, -0.198723, 0.198723, -1.32981, 1.74185, -0.136178, 3.19798, 8.0799, -6.09519, -10.1609, 1.04052, 0.94419, -1.64373, 2.15304, -2.15304, 2.39867, -0.245635, -1.73908, 6.96297, -9.12042, 2.69775, -0.754941, -1.90741, -0.0773091}, {-0.61076, -1.54312, 1.54312, 0, 0, -1.60567, -5.82171, 0.596168, -0.596168, -1.32981, 1.74185, -0.136178, 0.754941, 1.90741, 0.0773091, -2.39867, 0.245635, 8.16175, 0.799305, 8.32553, -8.32553, 2.39867, -0.245635, -1.73908, 1.64373, -2.15304, 2.15304, 4.5643, -8.87479, 0.467403}, {-0.61076, -1.54312, 1.54312, 0, 0, -1.60567, 1.94057, -0.198723, 0.198723, 3.98943, -5.22554, 0.408534, 0.754941, 1.90741, 0.0773091, -2.39867, 0.245635, 1.73908, -1.64373, 2.15304, -2.15304, 4.84171, 5.92686, -7.91157, 1.64373, -2.15304, 8.57571, -8.51722, -1.11252, -0.872199}, {-1.12374, 4.33994, -1.71772, 0.422512, 1.58777e-12, -2.01922, 0.258935, 1.44665, 1.44665, -1.05603, 0, 0, -2.6753, 1.78815, 9.86504, -0.842315, -1.78815, 0.707741, -1.81881, -5.78659, -8.28248, 5.06642, 1.78815, -0.707741, 0.783066, -1.96259e-12, 2.4959, 0.985258, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, -1.26754, -4.76439e-12, 6.05767, 0.258935, 1.44665, 1.44665, -1.05603, 0, 0, -2.48357, 7.57474, -0.502145, -1.87805, -7.57474, -5.07885, -0.783066, 1.9634e-12, -2.4959, 0.842315, 1.78815, -0.707741, 5.00717, -1.96304e-12, 2.4959, 0.985258, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, 0.422512, 1.58777e-12, -2.01922, -0.776805, -4.33994, -4.33994, -1.05603, 0, 0, -0.985258, 1.78815, 1.78815, -2.53236, -1.78815, 8.78463, -2.28138, 5.78659, -4.7862, 0.842315, 1.78815, -0.707741, 0.783066, -1.96259e-12, 2.4959, 5.20936, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, 0.422512, 1.58813e-12, -2.01922, 0.258935, 1.44665, 1.44665, 3.16808, 0, 0, -0.985258, 1.78815, 1.78815, -0.842315, -1.78815, 0.707741, -0.783066, 1.9634e-12, -2.4959, -0.656, 7.57474, -2.99804, -0.906981, -8.31556e-12, 10.5728, -0.0504823, -7.57474, -7.57474}, {-4.08784, 4.08784, -5.36656, 0, 3.15147, 0, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -14.817, -2.21115, 3.89543, -3.89543, 0, 14.817, 1.68428, -2.21115, -11.0508, 11.0508, 7.15542, -2.21115, -1.68428, 2.21115, 1.68428, 2.21115, 2.21115}, {1.36261, -1.36261, 1.78885, -1.15954e-14, -9.45441, 4.1986e-15, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -7.13474, 3.23931, -9.36656, 16.5013, -3.89543, 1.72992e-15, 2.21115, 1.68428, -2.21115, -3.89543, 3.89543, -2.17401e-15, -9.36656, 5.47113, 9.36656, 1.68428, 2.21115, 2.21115}, {1.36261, -1.36261, 1.78885, 0, 3.15147, 0, 9.45441, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -2.21115, -2.21115, 3.89543, -16.5013, 0, -3.23931, 7.13474, -9.36656, -3.89543, 3.89543, -4.44089e-16, -2.21115, -1.68428, 2.21115, -5.47113, 9.36656, 9.36656}, {1.36261, -1.36261, 1.78885, 0, 3.15147, 0, -3.15147, 0, 0, -5.36656, 5.36656, 5.36656, -1.68428, -2.21115, -2.21115, 3.89543, -3.89543, 0, 2.21115, 1.68428, -2.21115, -9.34589, 9.34589, -7.15542, -2.21115, -14.2902, 2.21115, 14.2902, 2.21115, 2.21115}, {1.11747, -3.79023, -1.1121, -0.361676, -1.4194, 0.363688, 1.52298, 0.102889, 0.820003, -0.788811, 0.0531033, -1.55439, 2.35418, 5.87043, -2.3625, -1.43545, 1.6273, -1.46312, -7.51399, -2.1004, -4.7518, 4.59069, -1.83971, 7.68068, 1.42208, 1.68884, 1.47179, -0.907478, -0.192817, 0.907751}, {-0.372489, 1.26341, 0.370699, 1.08503, 4.25821, -1.09106, 1.52298, 0.102889, 0.820003, -0.788811, 0.0531033, -1.55439, 2.39743, -4.86083, -2.39055, -7.52735, 1.21575, -4.74314, -1.42208, -1.68884, -1.47179, 1.43545, -1.6273, 1.46312, 4.57732, 1.47643, 7.68935, -0.907478, -0.192817, 0.907751}, {-0.372489, 1.26341, 0.370699, -0.361676, -1.4194, 0.363688, -4.56893, -0.308667, -2.46001, -0.788811, 0.0531033, -1.55439, 0.907478, 0.192817, -0.907751, 0.0112586, 7.30492, -2.91787, 0.0678761, -6.74249, -2.95458, 1.43545, -1.6273, 1.46312, 1.42208, 1.68884, 1.47179, 2.24777, -0.40523, 7.12531}, {-0.372489, 1.26341, 0.370699, -0.361676, -1.4194, 0.363688, 1.52298, 0.102889, 0.820003, 2.36643, -0.15931, 4.66317, 0.907478, 0.192817, -0.907751, -1.43545, 1.6273, -1.46312, -1.42208, -1.68884, -1.47179, 2.9254, -6.68095, -0.0196727, 2.86879, 7.36645, 0.0170383, -6.99938, -0.604373, -2.37226}, {4.44089e-15, -4.05009, 8.88178e-16, -0.572575, -0.625677, 1.44665, 2.01922, -0.706554, 1.38558e-12, -1.44665, -0.0177991, -1.44665, 2.99804, 1.60736, -7.57474, -1.78815, 1.64673, -1.78815, -10.5728, 2.03083, -7.25442e-12, 7.57474, -1.57553, 7.57474, 2.4959, 0.79538, 1.71219e-12, -0.707741, 0.895349, 1.78815}, {-4.44089e-16, 1.35003, -2.22045e-15, 1.71772, 1.87703, -4.33994, 2.01922, -0.706554, 1.3879e-12, -1.44665, -0.0177991, -1.44665, 0.707741, -6.29547, -1.78815, -9.86504, 4.47294, -1.78815, -2.4959, -0.79538, -1.71263e-12, 1.78815, -1.64673, 1.78815, 8.28248, 0.866577, 5.78659, -0.707741, 0.895349, 1.78815}, {8.88178e-16, 1.35003, 6.66134e-16, -0.572575, -0.625677, 1.44665, -6.05767, 2.11966, -4.15591e-12, -1.44665, -0.0177991, -1.44665, 0.707741, -0.895349, -1.78815, 0.502145, 4.14944, -7.57474, -2.4959, -6.1955, -1.71596e-12, 1.78815, -1.64673, 1.78815, 2.4959, 0.79538, 1.7133e-12, 5.07885, 0.966546, 7.57474}, {4.44089e-16, 1.35003, 0, -0.572575, -0.625677, 1.44665, 2.01922, -0.706554, 1.38489e-12, 4.33994, 0.0533972, 4.33994, 0.707741, -0.895349, -1.78815, -1.78815, 1.64673, -1.78815, -2.4959, -0.79538, -1.71174e-12, 1.78815, -7.04685, 1.78815, 4.7862, 3.29809, -5.78659, -8.78463, 3.72156, 1.78815}, {1.70622, 4.31352, 1.19704, 8.51907e-16, 7.76069e-16, 1.08709, -1.45048, 1.43784, -0.312525, 2.01922, -1.65855e-12, -0.375548, 0.702999, 1.77727, -5.19885, 1.7929, -1.77727, -0.95741, 8.29783, -5.75136, 2.12961, -9.86978, 1.77727, 2.4596, -2.4959, 2.04913e-12, -0.879509, -0.702999, -1.77727, 0.850505}, {-0.568738, -1.43784, -0.399013, -2.80914e-15, 1.1641e-15, -3.26126, -1.45048, 1.43784, -0.312525, 2.01922, -1.65923e-12, -0.375548, 2.97795, 7.52863, 0.745546, 7.59483, -7.52863, 0.292691, 2.4959, -2.05105e-12, 0.879509, -1.7929, 1.77727, 0.95741, -10.5728, 8.68834e-12, 0.622683, -0.702999, -1.77727, 0.850505}, {-0.568738, -1.43784, -0.399013, 0, 0, 1.08709, 4.35145, -4.31352, 0.937576, 2.01922, -1.65685e-12, -0.375548, 0.702999, 1.77727, -0.850505, 1.7929, -1.77727, -5.30575, 4.77085, 5.75136, 2.47556, -1.7929, 1.77727, 0.95741, -2.4959, 2.04797e-12, -0.879509, -8.77989, -1.77727, 2.3527}, {-0.568738, -1.43784, -0.399013, 0, 0, 1.08709, -1.45048, 1.43784, -0.312525, -6.05767, 4.97324e-12, 1.12664, 0.702999, 1.77727, -0.850505, 1.7929, -1.77727, -0.95741, 2.4959, -2.04873e-12, 0.879509, 0.482057, 7.52863, 2.55346, -2.4959, 2.04909e-12, -5.22785, 5.09894, -7.52863, 2.10061}, {-2.41029, -2.40672, -2.40819, -0.80343, -0.802238, 0.80294, 1.63555, -1.63555, 0.0313083, -1.63555, 1.63555, -1.63698, 3.21372, 3.20895, -5.19647, -1.02855, 3.01327, -1.03119, -9.55693, 7.57221, -1.15616, 7.57074, -9.55546, 7.57909, 3.01474, -1.03003, 1.03093, 8.88178e-15, 5.77316e-15, 1.98471}, {0.80343, 0.802238, 0.802728, 2.41029, 2.40672, -2.40882, 1.63555, -1.63555, 0.0313083, -1.63555, 1.63555, -1.63698, -3.21372, -3.20895, -5.19563, -7.57074, 9.55546, -1.15642, -3.01474, 1.03003, -1.03093, 1.02855, -3.01327, 1.03119, 9.55693, -7.57221, 7.57883, 8.43769e-15, 7.54952e-15, 1.98471}, {0.80343, 0.802238, 0.802728, -0.80343, -0.802238, 0.80294, -4.90664, 4.90664, -0.0939249, -1.63555, 1.63555, -1.63698, -8.88178e-15, -7.54952e-15, -1.98471, 2.18516, 6.22222, -4.24295, -6.22846, -2.17893, -4.24184, 1.02855, -3.01327, 1.03119, 3.01474, -1.03003, 1.03093, 6.54219, -6.54219, 8.53262}, {0.80343, 0.802238, 0.802728, -0.80343, -0.802238, 0.80294, 1.63555, -1.63555, 0.0313083, 4.90664, -4.90664, 4.91093, -7.54952e-15, -8.43769e-15, -1.98471, -1.02855, 3.01327, -1.03119, -3.01474, 1.03003, -1.03093, -2.18516, -6.22222, -2.17973, 6.22846, 2.17893, -2.18083, -6.54219, 6.54219, 1.85948}, {-5.48006e-11, 5.36656, 0.00342441, 0, 0, -2.34462, 2.34313, 0, 0, -2.34313, 1.78885, 2.34576, -2.25788e-11, 2.21115, 12.278, -2.89626, 0, 2.89811, -12.2688, 2.21115, 0.00141093, 12.2688, -7.15542, -12.2812, 2.89626, -2.21115, -0.00141093, 2.25788e-11, -2.21115, -2.89952}, {1.2113e-11, -1.78885, -0.00114147, 0, 0, 7.03386, 2.34313, -1.04056e-15, -1.3645e-15, -2.34313, 1.78885, 2.34576, -6.34248e-11, 9.36656, 2.90409, -12.2688, 5.44843e-15, 2.89811, -2.89626, 2.21115, 0.00141093, 2.89626, -8.4211e-16, -2.89811, 12.2688, -9.36656, -9.38446, 1.49729e-11, -2.21115, -2.89952}, {1.2109e-11, -1.78885, -0.00114147, 0, 0, -2.34462, -7.02938, 0, 0, -2.34313, 1.78885, 2.34576, -1.49676e-11, 2.21115, 2.89952, -2.89626, 0, 12.2766, -2.89626, 9.36656, 0.00597681, 2.89626, 4.44089e-16, -2.89811, 2.89626, -2.21115, -0.00141093, 9.3725, -9.36656, -12.2826}, {1.21134e-11, -1.78885, -0.00114147, 0, 0, -2.34462, 2.34313, 0, 0, 7.02938, -5.36656, -7.03729, -1.49729e-11, 2.21115, 2.89952, -2.89626, 0, 2.89811, -2.89626, 2.21115, 0.00141093, 2.89626, 7.15542, -2.89354, 2.89626, -2.21115, 9.37707, -9.3725, -2.21115, -2.89952}, {-2.3518, -6.05767, -5.91704e-12, -0.0281756, -0.572575, -1.44665, -1.05603, 0, 0, 0.300269, -1.44665, 1.44665, -0.821464, 0.502145, 7.57474, 1.34015, 0.707741, 1.78815, 4.56043, -2.4959, -2.43827e-12, -2.54122, 5.07885, -7.57474, -0.336326, 2.4959, 2.43827e-12, 0.934166, 1.78815, -1.78815}, {0.783932, 2.01922, 1.9722e-12, 0.0845268, 1.71772, 4.33994, -1.05603, 0, 0, 0.300269, -1.44665, 1.44665, -4.06989, -9.86504, 1.78815, 5.56425, 0.707741, 1.78815, 0.336326, -2.4959, -2.43761e-12, -1.34015, -0.707741, -1.78815, -1.5374, 8.28248, -5.78659, 0.934166, 1.78815, -1.78815}, {0.783932, 2.01922, 1.97353e-12, -0.0281756, -0.572575, -1.44665, 3.16808, 0, 0, 0.300269, -1.44665, 1.44665, -0.934166, -1.78815, 1.78815, 1.45285, 2.99804, 7.57474, -2.7994, -10.5728, -1.03331e-11, -1.34015, -0.707741, -1.78815, -0.336326, 2.4959, 2.43938e-12, -0.266911, 7.57474, -7.57474}, {0.783932, 2.01922, 1.97287e-12, -0.0281756, -0.572575, -1.44665, -1.05603, 0, 0, -0.900808, 4.33994, -4.33994, -0.934166, -1.78815, 1.78815, 1.34015, 0.707741, 1.78815, 0.336326, -2.4959, -2.43872e-12, -4.47587, -8.78463, -1.78815, -0.223624, 4.7862, 5.78659, 5.15827, 1.78815, -1.78815}, {-2.45207, 5.12164, 2.36493, 0.0510009, -0.6557, 1.65667, -1.08957, 0.431245, -1.08957, 0.22121, 1.93167, 0.22121, -1.27735, 5.54352, -7.70003, 1.28374, 0.277442, -0.700975, 4.69474, -0.147797, 6.67946, -2.16858, -8.00412, -0.183865, -0.336471, -1.57718, -2.32119, 1.07335, -2.92072, 1.07335}, {0.817357, -1.70721, -0.788311, -0.153003, 1.9671, -4.97001, -1.08957, 0.431245, -1.08957, 0.22121, 1.93167, 0.22121, -4.34278, 9.74957, 2.07989, 5.64201, -1.44754, 3.6573, 0.336471, 1.57718, 2.32119, -1.28374, -0.277442, 0.700975, -1.22131, -9.30386, -3.20603, 1.07335, -2.92072, 1.07335}, {0.817357, -1.70721, -0.788311, 0.0510009, -0.6557, 1.65667, 3.2687, -1.29374, 3.2687, 0.22121, 1.93167, 0.22121, -1.07335, 2.92072, -1.07335, 1.07974, 2.90024, -7.32765, -2.93296, 8.40603, 5.47443, -1.28374, -0.277442, 0.700975, -0.336471, -1.57718, -2.32119, 0.18851, -10.6474, 0.18851}, {0.817357, -1.70721, -0.788311, 0.0510009, -0.6557, 1.65667, -1.08957, 0.431245, -1.08957, -0.66363, -5.795, -0.66363, -1.07335, 2.92072, -1.07335, 1.28374, 0.277442, -0.700975, 0.336471, 1.57718, 2.32119, -4.55317, 6.55141, 3.85422, -0.540475, 1.04562, -8.94786, 5.43162, -4.6457, 5.43162}, {-4.62937, -1.83228, -4.62937, 0.198723, -1.94057, 2.54185, 0, 0, -2.34313, -1.74185, 1.32981, -1.74185, -2.94793, 9.40601, -15.2167, -0.245635, 2.39867, -0.245635, -1.90741, -0.754941, 10.3614, 7.21302, -7.71791, 7.21302, 1.90741, 0.754941, -0.988857, 2.15304, -1.64373, 5.0493}, {1.54312, 0.61076, 1.54312, -0.596168, 5.82171, -7.62554, 0, 0, -2.34313, -1.74185, 1.32981, -1.74185, -8.32553, -0.799305, -11.2218, -0.245635, 2.39867, 9.12687, -1.90741, -0.754941, 0.988857, 0.245635, -2.39867, 0.245635, 8.87479, -4.5643, 5.97853, 2.15304, -1.64373, 5.0493}, {1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 2.54185, 0, 0, 7.02938, -1.74185, 1.32981, -1.74185, -2.15304, 1.64373, -5.0493, -1.04052, 10.1609, -10.413, -8.0799, -3.19798, -5.18364, 0.245635, -2.39867, 0.245635, 1.90741, 0.754941, -0.988857, 9.12042, -6.96297, 12.0167}, {1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 2.54185, 0, 0, -2.34313, 5.22554, -3.98943, 5.22554, -2.15304, 1.64373, -5.0493, -0.245635, 2.39867, -0.245635, -1.90741, -0.754941, 0.988857, -5.92686, -4.84171, -5.92686, 1.11252, 8.51722, -11.1562, 2.15304, -1.64373, 14.4218}, {3.9353, 3.03575, -0.94776, 1.31177, -0.633999, -0.948528, 0, 0.442478, 1.49023, 0, 1.20344, -0.85762, -5.24706, 4.57046, 4.57606, -1.62143, 0.236733, -0.669578, 1.62143, -1.06605, -8.19343, 1.62143, -5.05048, 4.10006, -1.62143, -0.703864, 2.23252, 0, -2.03446, -0.781946}, {-1.31177, -1.01192, 0.31592, -3.9353, 1.902, 2.84558, 0, 0.442478, 1.49023, 0, 1.20344, -0.85762, 5.24706, 6.08213, -0.481733, -1.62143, -1.53318, -6.63049, 1.62143, 0.703864, -2.23252, 1.62143, -0.236733, 0.669578, -1.62143, -5.51761, 5.663, 0, -2.03446, -0.781946}, {-1.31177, -1.01192, 0.31592, 1.31177, -0.633999, -0.948528, 0, -1.32743, -4.47068, 0, 1.20344, -0.85762, 3.2565e-16, 2.03446, 0.781946, -6.86849, 2.77273, 3.12453, 6.86849, 4.75153, -3.4962, 1.62143, -0.236733, 0.669578, -1.62143, -0.703864, 2.23252, 0, -6.84821, 2.64853}, {-1.31177, -1.01192, 0.31592, 1.31177, -0.633999, -0.948528, 0, 0.442478, 1.49023, 0, -3.61031, 2.57286, 3.2565e-16, 2.03446, 0.781946, -1.62143, 0.236733, -0.669578, 1.62143, 0.703864, -2.23252, 6.86849, 3.81093, -0.594102, -6.86849, 1.83213, 6.02663, 0, -3.80438, -6.74286}, {8.88178e-16, -9.65337e-16, 5.41667, 1.44665, 1.44665, 1.40715, 0.572575, -1.44665, 1.02216, -2.01922, -1.9703e-12, -0.623753, -7.57474, -7.57474, -5.13614, -2.4959, -2.43516e-12, -3.00279, -2.99804, 7.57474, -3.1203, 10.5728, 1.03164e-11, 5.4978, 0.707741, -1.78815, -0.968332, 1.78815, 1.78815, -0.492457}, {-4.44089e-16, -2.99727e-18, -1.80556, -4.33994, -4.33994, -4.22145, 0.572575, -1.44665, 1.02216, -2.01922, -1.97286e-12, -0.623753, -1.78815, -1.78815, 7.71468, -4.7862, 5.78659, -7.09142, -0.707741, 1.78815, 0.968332, 2.4959, 2.43872e-12, 3.00279, 8.78463, -1.78815, 1.52668, 1.78815, 1.78815, -0.492457}, {0, 1.65544e-16, -1.80556, 1.44665, 1.44665, 1.40715, -1.71772, 4.33994, -3.06648, -2.01922, -1.97103e-12, -0.623753, -1.78815, -1.78815, 0.492457, -8.28248, -5.78659, -8.63139, -0.707741, 1.78815, 8.19056, 2.4959, 2.43605e-12, 3.00279, 0.707741, -1.78815, -0.968332, 9.86504, 1.78815, 2.00255}, {0, 7.512e-17, -1.80556, 1.44665, 1.44665, 1.40715, 0.572575, -1.44665, 1.02216, 6.05767, 5.91749e-12, 1.87126, -1.78815, -1.78815, 0.492457, -2.4959, -2.43805e-12, -3.00279, -0.707741, 1.78815, 0.968332, 2.4959, 2.43775e-12, 10.225, -5.07885, -7.57474, -6.59693, -0.502145, 7.57474, -4.58109}, {4.36745, -2.27082, -4.32425, 1.62046e-12, 0.53318, -2.01922, 0, -1.33263, 0, 1.45582, 0.0425099, 0.577805, 1.79949, -3.72739, 8.79109, -2.00299e-12, 0.988174, 2.4959, 1.79949, 6.04211, -1.78169, -5.82327, -1.15821, -4.80711, -1.79949, -0.711591, 1.78169, -1.79949, 1.59467, -0.714206}, {-1.45582, 0.756939, 1.44142, -4.85808e-12, -1.59954, 6.05767, 0, -1.33263, 0, 1.45582, 0.0425099, 0.577805, 7.62276, -4.62243, -5.05146, -2.00164e-12, 6.31869, 2.4959, 1.79949, 0.711591, -1.78169, 2.002e-12, -0.988174, -2.4959, -7.62276, -0.881631, -0.529529, -1.79949, 1.59467, -0.714206}, {-1.45582, 0.756939, 1.44142, 1.61717e-12, 0.53318, -2.01922, 0, 3.99789, 0, 1.45582, 0.0425099, 0.577805, 1.79949, -1.59467, 0.714206, -8.46762e-12, -1.14454, 10.5728, 7.62276, -2.31617, -7.54736, 1.9993e-12, -0.988174, -2.4959, -1.79949, -0.711591, 1.78169, -7.62276, 1.42464, -3.02542}, {-1.45582, 0.756939, 1.44142, 1.61827e-12, 0.53318, -2.01922, 0, -1.33263, 0, -4.36745, -0.12753, -1.73341, 1.79949, -1.59467, 0.714206, -2.00029e-12, 0.988174, 2.4959, 1.79949, 0.711591, -1.78169, 5.82327, -4.01593, -8.26156, -1.79949, -2.84431, 9.85858, -1.79949, 6.92519, -0.714206}, {-3.26389, 1.55026, 1.55311, -0.994319, -0.995188, -0.994319, -0.203724, 1.40177, -0.203724, 0.110078, 0.110174, 1.71575, 3.86152, 5.84961, 5.84624, 1.48086, -0.502558, 1.48086, -0.278087, -6.701, 1.70663, -1.92117, 0.0618612, -8.34385, 1.09298, 1.09394, -0.891733, 0.115752, -1.86886, -1.86896}, {1.08796, -0.516753, -0.517703, 2.98296, 2.98556, 2.98296, -0.203724, 1.40177, -0.203724, 0.110078, 0.110174, 1.71575, -4.46761, 3.93587, 3.93978, 2.29576, -6.10962, 2.29576, -1.09298, -1.09394, 0.891733, -1.48086, 0.502558, -1.48086, 0.65267, 0.65324, -7.75472, 0.115752, -1.86886, -1.86896}, {1.08796, -0.516753, -0.517703, -0.994319, -0.995188, -0.994319, 0.611171, -4.2053, 0.611171, 0.110078, 0.110174, 1.71575, -0.115752, 1.86886, 1.86896, 5.45814, 3.47819, 5.45814, -5.44484, 0.973073, 2.96255, -1.48086, 0.502558, -1.48086, 1.09298, 1.09394, -0.891733, -0.32456, -2.30956, -8.73195}, {1.08796, -0.516753, -0.517703, -0.994319, -0.995188, -0.994319, -0.203724, 1.40177, -0.203724, -0.330234, -0.330523, -5.14724, -0.115752, 1.86886, 1.86896, 1.48086, -0.502558, 1.48086, -1.09298, -1.09394, 0.891733, -5.83272, 2.56957, 0.589952, 5.07026, 5.07469, 3.08554, 0.930647, -7.47593, -1.05407}, {5.37021, -5.36225, 5.37163, 3.64724, -0.373167, 0.376681, -1.85717, -1.41425, -0.191806, 0, 0, 1.60567, -16.8846, -0.25544, 0.240906, -2.21265, 2.20937, -0.228519, 11.9369, 5.19574, 3.21754, 2.21265, -2.20937, -6.19415, -4.50824, 0.46126, -2.45032, 2.29559, 1.74811, -1.74763}, {-1.79007, 1.78742, -1.79054, -10.9417, 1.1195, -1.13004, -1.85717, -1.41425, -0.191806, 7.40292e-16, 5.63738e-16, 1.60567, 4.86469, -8.89778, 8.9098, 5.21604, 7.86637, 0.538704, 4.50824, -0.46126, 2.45032, 2.21265, -2.20937, 0.228519, -4.50824, 0.46126, -8.87299, 2.29559, 1.74811, -1.74763}, {-1.79007, 1.78742, -1.79054, 3.64724, -0.373167, 0.376681, 5.57152, 4.24275, 0.575417, 0, 0, 1.60567, -2.29559, -1.74811, 1.74763, -16.8016, 3.70204, -1.73524, 11.6685, -7.61093, 9.61249, 2.21265, -2.20937, 0.228519, -4.50824, 0.46126, -2.45032, 2.29559, 1.74811, -8.1703}, {-1.79007, 1.78742, -1.79054, 3.64724, -0.373167, 0.376681, -1.85717, -1.41425, -0.191806, 0, 0, -4.817, -2.29559, -1.74811, 1.74763, -2.21265, 2.20937, -0.228519, 4.50824, -0.46126, 2.45032, 9.37293, -9.35904, 7.39069, -19.0972, 1.95393, -3.95704, 9.72428, 7.40511, -0.980408}, {-3.03198, 1.78237, 1.1993, 0.5032, 0.50364, 1.82018, -0.838801, -0.839534, 0.331788, -0.67506, 0.930018, -1.7522, -3.88404, -1.90272, -9.03645, 0.414826, 0.415188, -2.65998, 3.14277, 5.13024, -1.24312, 2.28541, -4.13526, 9.66879, 0.212431, -1.7721, -0.084027, 1.87124, -0.111844, 1.75573}, {1.01066, -0.594124, -0.399767, -1.5096, -1.51092, -5.46054, -0.838801, -0.839534, 0.331788, -0.67506, 0.930018, -1.7522, -5.91388, 2.48834, -0.156659, 3.77003, 3.77333, -3.98713, -0.212431, 1.7721, 0.084027, -0.414826, -0.415188, 2.65998, 2.91267, -5.49217, 6.92478, 1.87124, -0.111844, 1.75573}, {1.01066, -0.594124, -0.399767, 0.5032, 0.50364, 1.82018, 2.5164, 2.5186, -0.995364, -0.67506, 0.930018, -1.7522, -1.87124, 0.111844, -1.75573, -1.59797, -1.59937, -9.9407, -4.25508, 4.14859, 1.6831, -0.414826, -0.415188, 2.65998, 0.212431, -1.7721, -0.084027, 4.57148, -3.83192, 8.76454}, {1.01066, -0.594124, -0.399767, 0.5032, 0.50364, 1.82018, -0.838801, -0.839534, 0.331788, 2.02518, -2.79005, 5.25661, -1.87124, 0.111844, -1.75573, 0.414826, 0.415188, -2.65998, -0.212431, 1.7721, 0.084027, -4.45747, 1.96131, 4.25905, -1.80037, -3.78666, -7.36475, 5.22644, 3.24629, 0.428576}, {-4.62937, 1.83228, -4.62937, 0.198723, 1.94057, 2.54185, -1.74185, -1.32981, -1.74185, 0, 0, -2.34313, -2.94793, -9.40601, -15.2167, 1.90741, -0.754941, -0.988857, 7.21302, 7.71791, 7.21302, -1.90741, 0.754941, 10.3614, -0.245635, -2.39867, -0.245635, 2.15304, 1.64373, 5.0493}, {1.54312, -0.61076, 1.54312, -0.596168, -5.82171, -7.62554, -1.74185, -1.32981, -1.74185, 0, 0, -2.34313, -8.32553, 0.799305, -11.2218, 8.87479, 4.5643, 5.97853, 0.245635, 2.39867, 0.245635, -1.90741, 0.754941, 0.988857, -0.245635, -2.39867, 9.12687, 2.15304, 1.64373, 5.0493}, {1.54312, -0.61076, 1.54312, 0.198723, 1.94057, 2.54185, 5.22554, 3.98943, 5.22554, 0, 0, -2.34313, -2.15304, -1.64373, -5.0493, 1.11252, -8.51722, -11.1562, -5.92686, 4.84171, -5.92686, -1.90741, 0.754941, 0.988857, -0.245635, -2.39867, -0.245635, 2.15304, 1.64373, 14.4218}, {1.54312, -0.61076, 1.54312, 0.198723, 1.94057, 2.54185, -1.74185, -1.32981, -1.74185, 0, 0, 7.02938, -2.15304, -1.64373, -5.0493, 1.90741, -0.754941, -0.988857, 0.245635, 2.39867, 0.245635, -8.0799, 3.19798, -5.18364, -1.04052, -10.1609, -10.413, 9.12042, 6.96297, 12.0167}, {-4.33994, 0.458772, -1.71772, 0, 1.39654, 0, -1.44665, -0.27723, 1.44665, 1.76979e-12, -0.966385, -2.01922, -1.78815, -7.12335, -0.707741, 1.78815, -1.38354, -1.78815, 5.78659, 1.64062, -8.28248, -1.78815, 5.24908, 9.86504, -2.18758e-12, -0.531699, 2.4959, 1.78815, 1.53719, 0.707741}, {1.44665, -0.152924, 0.572575, 1.50464e-15, -4.18962, 4.79586e-15, -1.44665, -0.27723, 1.44665, 1.77122e-12, -0.966385, -2.01922, -7.57474, -0.925496, -2.99804, 7.57474, -0.274623, -7.57474, 2.18837e-12, 0.531699, -2.4959, -1.78815, 1.38354, 1.78815, -9.27361e-12, 3.33384, 10.5728, 1.78815, 1.53719, 0.707741}, {1.44665, -0.152924, 0.572575, 2.45632e-27, 1.39654, -2.80022e-15, 4.33994, 0.831689, -4.33994, 1.77124e-12, -0.966385, -2.01922, -1.78815, -1.53719, -0.707741, 1.78815, -6.9697, -1.78815, -5.78659, 1.1434, -4.7862, -1.78815, 1.38354, 1.78815, -2.18937e-12, -0.531699, 2.4959, 1.78815, 5.40273, 8.78463}, {1.44665, -0.152924, 0.572575, 0, 1.39654, 0, -1.44665, -0.27723, 1.44665, -5.31262e-12, 2.89915, 6.05767, -1.78815, -1.53719, -0.707741, 1.78815, -1.38354, -1.78815, 2.18856e-12, 0.531699, -2.4959, -7.57474, 1.99524, -0.502145, -2.18892e-12, -6.11785, 2.4959, 7.57474, 2.64611, -5.07885}, {3.99411, 0.408657, -5.22602, 1.94285, 0.198782, -0.198956, -0.611477, 1.5417, -1.54305, 0, -1.60427, 0, -8.52722, -0.872462, -1.11149, -1.64567, -2.15136, 2.15324, 4.8474, -7.90408, 5.92628, 1.64567, 8.56842, -2.15324, -2.40149, 1.73727, 0.245923, 0.755828, 0.0773324, 1.90731}, {-1.33137, -0.136219, 1.74201, -5.82855, -0.596347, 0.596868, -0.611477, 1.5417, -1.54305, 0, -1.60427, 0, 4.56966, 0.467544, -8.87534, 0.800244, -8.31817, 8.32544, 2.40149, -1.73727, -0.245923, 1.64567, 2.15136, -2.15324, -2.40149, 8.15434, 0.245923, 0.755828, 0.0773324, 1.90731}, {-1.33137, -0.136219, 1.74201, 1.94285, 0.198782, -0.198956, 1.83443, -4.62511, 4.62915, 0, -1.60427, 0, -0.755828, -0.0773324, -1.90731, -9.41706, -2.94649, 2.94906, 7.72698, -1.1924, -7.21395, 1.64567, 2.15136, -2.15324, -2.40149, 1.73727, 0.245923, 0.755828, 6.4944, 1.90731}, {-1.33137, -0.136219, 1.74201, 1.94285, 0.198782, -0.198956, -0.611477, 1.5417, -1.54305, 0, 4.8128, 0, -0.755828, -0.0773324, -1.90731, -1.64567, -2.15136, 2.15324, 2.40149, -1.73727, -0.245923, 6.97115, 2.69623, -9.12126, -10.1729, 0.942144, 1.04175, 3.20174, -6.08948, 8.07952}, {1.7133, -2.45292, -4.3293, -1.44292, 0.0459567, -1.45561, 0, -1.33263, 0, 2.01402, 0.469033, 0.0125109, 8.26116, -1.25129, 5.83791, 1.78355, 1.59041, 1.79923, 0.70592, 5.96708, -1.78377, -9.83965, -3.46655, -1.84928, -0.70592, -0.636563, 1.78377, -2.48947, 1.06746, -0.0154644}, {-0.571101, 0.817639, 1.4431, 4.32877, -0.13787, 4.36683, 0, -1.33263, 0, 2.01402, 0.469033, 0.0125109, 4.77387, -4.33802, -5.75693, 1.78355, 6.92093, 1.79923, 0.70592, 0.636563, -1.78377, -1.78355, -1.59041, -1.79923, -8.76202, -2.5127, 1.73373, -2.48947, 1.06746, -0.0154644}, {-0.571101, 0.817639, 1.4431, -1.44292, 0.0459567, -1.45561, 0, 3.99789, 0, 2.01402, 0.469033, 0.0125109, 2.48947, -1.06746, 0.0154644, 7.55524, 1.40659, 7.62167, 2.99032, -2.63399, -7.55617, -1.78355, -1.59041, -1.79923, -0.70592, -0.636563, 1.78377, -10.5456, -0.808671, -0.0655081}, {-0.571101, 0.817639, 1.4431, -1.44292, 0.0459567, -1.45561, 0, -1.33263, 0, -6.04207, -1.4071, -0.0375328, 2.48947, -1.06746, 0.0154644, 1.78355, 1.59041, 1.79923, 0.70592, 0.636563, -1.78377, 0.500853, -4.86097, -7.57163, 5.06577, -0.82039, 7.60621, -2.48947, 6.39798, -0.0154644}, {7.61576, -5.82053, 0.598329, -1.54462, -0.610276, -1.54223, 1.74008, -1.3299, 1.74168, 2.34313, 0, 0, 11.2256, 0.797254, 8.32176, -0.241602, 2.39819, -0.246525, -5.97333, 4.56526, -8.87301, -9.1309, -2.39819, 0.246525, -0.987004, 0.754342, 1.9063, -5.04712, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, 4.63387, 1.83083, 4.6267, 1.74008, -1.3299, 1.74168, 2.34313, 7.73589e-16, -1.01311e-15, 15.2015, -9.40456, 2.9506, -7.20193, 7.7178, -7.21323, 0.987004, -0.754342, -1.9063, 0.241602, -2.39819, 0.246525, -10.3595, 0.754342, 1.9063, -5.04712, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, -1.54462, -0.610276, -1.54223, -5.22025, 3.9897, -5.22503, 2.34313, 0, 0, 5.04712, -1.64385, 2.15283, 5.93689, 4.83929, 5.92241, 11.1413, -8.51505, -1.10853, 0.241602, -2.39819, 0.246525, -0.987004, 0.754342, 1.9063, -14.4196, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, -1.54462, -0.610276, -1.54223, 1.74008, -1.3299, 1.74168, -7.02938, 0, 0, 5.04712, -1.64385, 2.15283, -0.241602, 2.39819, -0.246525, 0.987004, -0.754342, -1.9063, 10.3959, -10.1589, 1.0443, 5.19149, 3.19544, 8.07523, -12.0075, 6.96345, -9.11953}, {2.66454e-15, -8.88178e-15, -7.0244, 0.00253498, 1.78885, -0.00126659, -2.34566, -1.78885, -2.3402, 2.34313, 0, 0, -0.0132733, -9.36656, -2.88758, 2.89626, 3.10862e-15, 2.89421, 12.282, 9.36656, 9.35923, -12.2688, -3.10862e-15, -2.89421, -2.8994, -2.21115, 0.00156559, 0.00313341, 2.21115, 2.89265}, {-4.44089e-16, -2.81691e-15, 2.34147, -0.00760494, -5.36656, 0.00379978, -2.34566, -1.78885, -2.3402, 2.34313, 1.04056e-15, 1.36127e-15, -0.00313341, -2.21115, -12.2585, 12.2789, 7.15542, 12.255, 2.8994, 2.21115, -0.00156559, -2.89626, 2.22045e-15, -2.89421, -12.2719, -2.21115, 0.00156559, 0.00313341, 2.21115, 2.89265}, {-1.33227e-15, -1.9984e-15, 2.34147, 0.00253498, 1.78885, -0.00126659, 7.03698, 5.36656, 7.0206, 2.34313, 0, 0, -0.00313341, -2.21115, -2.89265, 2.88612, -7.15542, 2.89928, 2.8994, 2.21115, -9.36743, -2.89626, 2.66454e-15, -2.89421, -2.8994, -2.21115, 0.00156559, -9.36937, 2.21115, 2.89265}, {4.44089e-16, 0, 2.34147, 0.00253498, 1.78885, -0.00126659, -2.34566, -1.78885, -2.3402, -7.02938, 0, 0, -0.00313341, -2.21115, -2.89265, 2.89626, 0, 2.89421, 2.8994, 2.21115, -0.00156559, -2.89626, 0, -12.2601, -2.90954, -9.36656, 0.00663197, 9.38578, 9.36656, 12.2534}, {3.98943, -5.22554, 5.22554, -0.61076, -1.54312, 1.54312, 0, 2.34313, 0, 1.94057, -2.54185, 0.198723, 4.84171, 5.92686, -5.92686, 0.754941, -0.988857, -1.90741, 1.64373, -14.4218, 2.15304, -8.51722, 11.1562, 1.11252, -1.64373, 5.0493, -2.15304, -2.39867, 0.245635, -0.245635}, {-1.32981, 1.74185, -1.74185, 1.83228, 4.62937, -4.62937, -1.12881e-15, 2.34313, -1.15595e-16, 1.94057, -2.54185, 0.198723, 7.71791, -7.21302, 7.21302, 0.754941, -10.3614, -1.90741, 1.64373, -5.0493, 2.15304, -0.754941, 0.988857, 1.90741, -9.40601, 15.2167, -2.94793, -2.39867, 0.245635, -0.245635}, {-1.32981, 1.74185, -1.74185, -0.61076, -1.54312, 1.54312, 0, -7.02938, 0, 1.94057, -2.54185, 0.198723, 2.39867, -0.245635, 0.245635, 3.19798, 5.18364, -8.0799, 6.96297, -12.0167, 9.12042, -0.754941, 0.988857, 1.90741, -1.64373, 5.0493, -2.15304, -10.1609, 10.413, -1.04052}, {-1.32981, 1.74185, -1.74185, -0.61076, -1.54312, 1.54312, 0, 2.34313, 0, -5.82171, 7.62554, -0.596168, 2.39867, -0.245635, 0.245635, 0.754941, -0.988857, -1.90741, 1.64373, -5.0493, 2.15304, 4.5643, -5.97853, 8.87479, 0.799305, 11.2218, -8.32553, -2.39867, -9.12687, -0.245635}, {9.45441, 0, -1.77636e-15, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, 1.36261, -1.78885, -1.36261, 3.89543, 0, -16.5013, -2.21115, -2.21115, -1.68428, -5.47113, -9.36656, 9.36656, -3.23931, 9.36656, 7.13474, -1.68428, 2.21115, -2.21115, -3.89543, 0, 3.89543}, {-3.15147, 2.22045e-16, 2.22045e-16, 1.00042e-15, 8.3972e-15, -9.45441, 1.78885, 1.78885, -1.78885, 1.36261, -1.78885, -1.36261, 16.5013, 3.55271e-15, -3.89543, -9.36656, -9.36656, 5.47113, 1.68428, -2.21115, 2.21115, 2.21115, 2.21115, 1.68428, -7.13474, 9.36656, 3.23931, -3.89543, -3.10862e-15, 3.89543}, {-3.15147, 4.44089e-16, 4.44089e-16, 0, 0, 3.15147, -5.36656, -5.36656, 5.36656, 1.36261, -1.78885, -1.36261, 3.89543, -4.44089e-16, -3.89543, -2.21115, -2.21115, -14.2902, 14.2902, -2.21115, 2.21115, 2.21115, 2.21115, 1.68428, -1.68428, 2.21115, -2.21115, -9.34589, 7.15542, 9.34589}, {-3.15147, 0, 2.22045e-16, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, -4.08784, 5.36656, 4.08784, 3.89543, 0, -3.89543, -2.21115, -2.21115, -1.68428, 1.68428, -2.21115, 2.21115, 14.817, 2.21115, 1.68428, -1.68428, 2.21115, -14.817, -11.0508, -7.15542, 11.0508}, {0.908154, -0.908154, 3.90885, -0.830764, 0.830764, 0.830764, 1.29079, 0.314875, 0.314875, -0.157311, -1.44836, 0.157311, 4.72412, -4.72412, -2.7394, -0.568628, -1.41609, -1.41609, -6.3845, -2.02289, -0.0381727, 1.19787, 7.20951, 0.786843, 1.22133, 0.763387, -1.22133, -1.40106, 1.40106, -0.583654}, {-0.302718, 0.302718, -1.30295, 2.49229, -2.49229, -2.49229, 1.29079, 0.314875, 0.314875, -0.157311, -1.44836, 0.157311, 2.61193, -2.61193, 5.79545, -5.7318, -2.67559, -2.67559, -1.22133, -0.763387, 1.22133, 0.568628, 1.41609, 1.41609, 1.85057, 6.55681, -1.85057, -1.40106, 1.40106, -0.583654}, {-0.302718, 0.302718, -1.30295, -0.830764, 0.830764, 0.830764, -3.87238, -0.944625, -0.944625, -0.157311, -1.44836, 0.157311, 1.40106, -1.40106, 0.583654, 2.75443, -4.73914, -4.73914, -0.0104551, -1.97426, 6.43313, 0.568628, 1.41609, 1.41609, 1.22133, 0.763387, -1.22133, -0.771816, 7.19449, -1.2129}, {-0.302718, 0.302718, -1.30295, -0.830764, 0.830764, 0.830764, 1.29079, 0.314875, 0.314875, 0.471934, 4.34507, -0.471934, 1.40106, -1.40106, 0.583654, -0.568628, -1.41609, -1.41609, -1.22133, -0.763387, 1.22133, 1.7795, 0.205215, 6.62789, 4.54438, -2.55967, -4.54438, -6.56423, 0.14156, -1.84315}, {-2.30283, -5.06257, 2.51418, -1.077, -0.426271, -1.077, 0.0318939, 0.648138, 1.63756, 0.277498, -1.90939, 0.277498, 4.69044, 0.146092, 6.67515, 1.29182, -0.274242, -0.692891, -1.11582, -5.47959, -7.53849, -2.40182, 7.9118, -0.417103, 0.988241, 2.88704, 0.988241, -0.38243, 1.55899, -2.36714}, {0.767609, 1.68752, -0.838059, 3.23101, 1.27881, 3.23101, 0.0318939, 0.648138, 1.63756, 0.277498, -1.90939, 0.277498, -2.68801, -8.30908, 5.71938, 1.16425, -2.86679, -7.24314, -0.988241, -2.88704, -0.988241, -1.29182, 0.274242, 0.692891, -0.121753, 10.5246, -0.121753, -0.38243, 1.55899, -2.36714}, {0.767609, 1.68752, -0.838059, -1.077, -0.426271, -1.077, -0.0956818, -1.94441, -4.91269, 0.277498, -1.90939, 0.277498, 0.38243, -1.55899, 2.36714, 5.59983, 1.43084, 3.61512, -4.05868, -9.63713, 2.36399, -1.29182, 0.274242, 0.692891, 0.988241, 2.88704, 0.988241, -1.49242, 9.19655, -3.47714}, {0.767609, 1.68752, -0.838059, -1.077, -0.426271, -1.077, 0.0318939, 0.648138, 1.63756, -0.832495, 5.72817, -0.832495, 0.38243, -1.55899, 2.36714, 1.29182, -0.274242, -0.692891, -0.988241, -2.88704, -0.988241, -4.36226, -6.47585, 4.04513, 5.29625, 4.59212, 5.29625, -0.510006, -1.03356, -8.91739}, {-4.7272, -4.7272, -4.7272, -1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 6.30294, -10.1984, 6.30294, 3.89543, 1.32738e-12, -1.3276e-12, 6.30294, 6.30294, -10.1984, -10.1984, 6.30294, 6.30294, 2.96874e-13, 3.04201e-13, 3.89543, 1.65046e-12, 3.89543, 1.64713e-12}, {1.57573, 1.57573, 1.57573, 4.7272, -4.7272, 4.7272, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -6.30294, -2.96874e-13, -3.01537e-13, -3.89543, -3.89543, -1.32644e-12, 1.32544e-12, -6.30294, 6.30294, 10.1984, 1.64713e-12, 3.89543, 1.65001e-12}, {1.57573, 1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 4.7272, 4.7272, -4.7272, 1.57573, -1.57573, -1.57573, -1.64602e-12, -3.89543, -1.64313e-12, 10.1984, -6.30294, 6.30294, -6.30294, -6.30294, -10.1984, -3.89543, -1.32733e-12, 1.32721e-12, 2.99982e-13, 3.06422e-13, 3.89543, -6.30294, 10.1984, 6.30294}, {1.57573, 1.57573, 1.57573, -1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -4.7272, 4.7272, 4.7272, -1.64313e-12, -3.89543, -1.64913e-12, 3.89543, 1.32672e-12, -1.32694e-12, -3.00648e-13, -2.97318e-13, -3.89543, -10.1984, -6.30294, -6.30294, 6.30294, -6.30294, 10.1984, 6.30294, 10.1984, -6.30294}, {-1.56775, 5.44381, 3.24545, 1.20899, 0.479095, 1.20825, -1.50445, -0.59618, 0.101437, -0.227124, 1.93169, -0.227868, -6.97629, -0.265605, -4.98928, 0.365209, 0.144724, -1.61886, 7.23144, 5.36461, 0.80607, 0.543287, -7.87147, 2.53034, -1.21365, -2.97989, -1.21182, 2.14034, -1.65078, 0.156278}, {0.522584, -1.8146, -1.08182, -3.62696, -1.43729, -3.62475, -1.50445, -0.59618, 0.101437, -0.227124, 1.93169, -0.227868, -4.23068, 8.90919, 4.171, 6.383, 2.52944, -2.02461, 1.21365, 2.97989, 1.21182, -0.365209, -0.144724, 1.61886, -0.305154, -10.7066, -0.300344, 2.14034, -1.65078, 0.156278}, {0.522584, -1.8146, -1.08182, 1.20899, 0.479095, 1.20825, 4.51334, 1.78854, -0.304311, -0.227124, 1.93169, -0.227868, -2.14034, 1.65078, -0.156278, -4.47074, -1.77166, -6.45186, -0.876686, 10.2383, 5.53909, -0.365209, -0.144724, 1.61886, -1.21365, -2.97989, -1.21182, 3.04884, -9.37752, 1.06775}, {0.522584, -1.8146, -1.08182, 1.20899, 0.479095, 1.20825, -1.50445, -0.59618, 0.101437, 0.681372, -5.79506, 0.683605, -2.14034, 1.65078, -0.156278, 0.365209, 0.144724, -1.61886, 1.21365, 2.97989, 1.21182, -2.45554, 7.11368, 5.94614, -6.0496, -4.89627, -6.04482, 8.15813, 0.733943, -0.24947}, {0.31567, 3.31084, -3.29586, 0.708828, -0.490803, -1.01172, 0.848249, 1.25814, 0.0940198, -1.45185, 0.336273, -0.18092, -3.58141, 3.93402, 3.93947, -1.92465, -0.948485, 1.13434, -4.31143, -5.22358, -1.85026, 7.73207, -0.396608, -0.41066, 0.91843, 0.191009, 1.47418, 0.746096, -1.97081, 0.107415}, {-0.105223, -1.10361, 1.09862, -2.12648, 1.47241, 3.03516, 0.848249, 1.25814, 0.0940198, -1.45185, 0.336273, -0.18092, -0.325203, 6.38527, -4.5019, -5.31765, -5.98106, 0.758261, -0.91843, -0.191009, -1.47418, 1.92465, 0.948485, -1.13434, 6.72585, -1.15408, 2.19787, 0.746096, -1.97081, 0.107415}, {-0.105223, -1.10361, 1.09862, 0.708828, -0.490803, -1.01172, -2.54475, -3.77443, -0.282059, -1.45185, 0.336273, -0.18092, -0.746096, 1.97081, -0.107415, -4.75996, 1.01473, 5.18122, -0.497537, 4.22345, -5.86867, 1.92465, 0.948485, -1.13434, 0.91843, 0.191009, 1.47418, 6.55351, -3.3159, 0.831095}, {-0.105223, -1.10361, 1.09862, 0.708828, -0.490803, -1.01172, 0.848249, 1.25814, 0.0940198, 4.35556, -1.00882, 0.54276, -0.746096, 1.97081, -0.107415, -1.92465, -0.948485, 1.13434, -0.91843, -0.191009, -1.47418, 2.34555, 5.36294, -5.52882, -1.91688, 2.15422, 5.52107, -2.6469, -7.00338, -0.268664}, {2.3172, 0.917451, -2.318, 1.00416, 1.78176, 0.599951, -0.431249, 0.464989, -1.17482, 0.199489, -1.94094, -0.197793, -4.30311, -8.95143, -4.09645, -0.708156, -2.77714, 0.710583, 3.21279, -2.0567, 5.1964, -0.0898, 10.5409, 0.0805874, -1.48779, 0.196748, -0.497096, 0.286472, 1.82437, 1.69665}, {-0.772399, -0.305817, 0.772666, -3.01248, -5.34529, -1.79985, -0.431249, 0.464989, -1.17482, 0.199489, -1.94094, -0.197793, 2.80312, -0.601104, -4.78731, 1.01684, -4.6371, 5.40988, 1.48779, -0.196748, 0.497096, 0.708156, 2.77714, -0.710583, -2.28575, 7.96049, 0.294074, 0.286472, 1.82437, 1.69665}, {-0.772399, -0.305817, 0.772666, 1.00416, 1.78176, 0.599951, 1.29375, -1.39497, 3.52447, 0.199489, -1.94094, -0.197793, -0.286472, -1.82437, -1.69665, -4.72479, -9.9042, -1.68922, 4.57739, 1.02652, -2.59357, 0.708156, 2.77714, -0.710583, -1.48779, 0.196748, -0.497096, -0.511484, 9.58812, 2.48782}, {-0.772399, -0.305817, 0.772666, 1.00416, 1.78176, 0.599951, -0.431249, 0.464989, -1.17482, -0.598467, 5.82281, 0.593378, -0.286472, -1.82437, -1.69665, -0.708156, -2.77714, 0.710583, 1.48779, -0.196748, 0.497096, 3.79775, 4.00041, -3.80125, -5.50443, -6.93031, -2.8969, 2.01147, -0.0355852, 6.39595}, {-9.63611, -0.184458, -9.63611, -0.833808, -0.834046, -2.43948, -1.57551, 1.57551, -1.57551, -0.802719, -0.802949, 0.802949, 0.39558, 4.29112, 8.80297, 2.97808, -0.916498, 4.96279, 4.27918, -8.32547, 4.27918, 0.232798, 4.12829, -8.17459, 2.02286, 2.02344, 2.02286, 2.93965, -0.954937, 0.954937}, {3.21204, 0.0614861, 3.21204, 2.50142, 2.50214, 7.31843, -1.57551, 1.57551, -1.57551, -0.802719, -0.802949, 0.802949, -15.7878, 0.708993, -13.8031, 9.28012, -7.21853, 11.2648, -2.02286, -2.02344, -2.02286, -2.97808, 0.916498, -4.96279, 5.23374, 5.23523, -1.18894, 2.93965, -0.954937, 0.954937}, {3.21204, 0.0614861, 3.21204, -0.833808, -0.834046, -2.43948, 4.72653, -4.72653, 4.72653, -0.802719, -0.802949, 0.802949, -2.93965, 0.954937, -0.954937, 6.31331, 2.41969, 14.7207, -14.871, -2.26938, -14.871, -2.97808, 0.916498, -4.96279, 2.02286, 2.02344, 2.02286, 6.15053, 2.25686, -2.25686}, {3.21204, 0.0614861, 3.21204, -0.833808, -0.834046, -2.43948, -1.57551, 1.57551, -1.57551, 2.40816, 2.40885, -2.40885, -2.93965, 0.954937, -0.954937, 2.97808, -0.916498, 4.96279, -2.02286, -2.02344, -2.02286, -15.8262, 0.670554, -17.8109, 5.35809, 5.35962, 11.7808, 9.24169, -7.25697, 7.25697}, {1.77636e-15, 3.55271e-15, -3.26126, 1.4431, -0.571101, 0.0717263, 0.0125109, 2.01402, -0.807596, -1.45561, -1.44292, -0.351216, -7.55617, 2.99032, -1.71928, -1.79923, -1.78355, 0.909586, -0.0655081, -10.5456, 2.88492, 7.62167, 7.55524, 0.495278, 0.0154644, 2.48947, 0.345468, 1.78377, -0.70592, 1.43237}, {-2.22045e-16, 6.66134e-16, 1.08709, -4.3293, 1.7133, -0.215179, 0.0125109, 2.01402, -0.807596, -1.45561, -1.44292, -0.351216, -1.78377, 0.70592, -5.78072, -1.84928, -9.83965, 4.13997, -0.0154644, -2.48947, -0.345468, 1.79923, 1.78355, -0.909586, 5.83791, 8.26116, 1.75033, 1.78377, -0.70592, 1.43237}, {-6.66134e-16, -2.22045e-16, 1.08709, 1.4431, -0.571101, 0.0717263, -0.0375328, -6.04207, 2.42279, -1.45561, -1.44292, -0.351216, -1.78377, 0.70592, -1.43237, -7.57163, 0.500853, 0.622681, -0.0154644, -2.48947, -4.69381, 1.79923, 1.78355, -0.909586, 0.0154644, 2.48947, 0.345468, 7.60621, 5.06577, 2.83723}, {-2.22045e-16, 4.44089e-16, 1.08709, 1.4431, -0.571101, 0.0717263, 0.0125109, 2.01402, -0.807596, 4.36683, 4.32877, 1.05365, -1.78377, 0.70592, -1.43237, -1.79923, -1.78355, 0.909586, -0.0154644, -2.48947, -0.345468, 1.79923, 1.78355, -5.25793, -5.75693, 4.77387, 0.0585632, 1.73373, -8.76202, 4.66276}, {4.62915, 1.83443, 4.62633, 1.74201, -1.33137, 0.13686, 3.96359e-17, -3.87053e-16, 1.60497, -0.198956, 1.94285, -0.199718, -7.21395, 7.72698, 1.18954, -2.15324, 1.64567, -2.15302, 1.90731, 0.755828, -6.49756, 2.94906, -9.41706, 2.95189, -1.90731, -0.755828, 0.0776963, 0.245923, -2.40149, -1.73698}, {-1.54305, -0.611477, -1.54211, -5.22602, 3.99411, -0.41058, 1.18908e-16, -1.16116e-15, 1.60497, -0.198956, 1.94285, -0.199718, 5.92628, 4.8474, 7.90542, -2.15324, 1.64567, -8.57288, 1.90731, 0.755828, -0.0776963, 2.15324, -1.64567, 2.15302, -1.11149, -8.52722, 0.876567, 0.245923, -2.40149, -1.73698}, {-1.54305, -0.611477, -1.54211, 1.74201, -1.33137, 0.13686, 0, 0, -4.8149, -0.198956, 1.94285, -0.199718, -0.245923, 2.40149, 1.73698, -9.12126, 6.97115, -2.70046, 8.07952, 3.20174, 6.09074, 2.15324, -1.64567, 2.15302, -1.90731, -0.755828, 0.0776963, 1.04175, -10.1729, -0.938112}, {-1.54305, -0.611477, -1.54211, 1.74201, -1.33137, 0.13686, -1.18908e-16, 1.16116e-15, 1.60497, 0.596868, -5.82855, 0.599153, -0.245923, 2.40149, 1.73698, -2.15324, 1.64567, -2.15302, 1.90731, 0.755828, -0.0776963, 8.32544, 0.800244, 8.32145, -8.87534, 4.56966, -0.469744, 0.245923, -2.40149, -8.15685}, {4.35065, -1.72407, 1.44786, 0, 0, 1.17684, 1.43763, 1.45199, 0.197849, 0.0125895, -2.02668, -0.892072, 1.79257, -0.710355, -5.56548, -1.77701, -1.79476, -1.69921, -5.73495, -8.31307, -0.439401, 1.72665, 9.90148, 5.2675, -0.0155615, 2.50511, -0.351997, -1.79257, 0.710355, 0.858106}, {-1.45022, 0.57469, -0.482621, -1.29313e-15, 4.05633e-15, -3.53053, 1.43763, 1.45199, 0.197849, 0.0125895, -2.02668, -0.892072, 7.59343, -3.00911, 1.07238, -7.52752, -7.60272, -2.49061, 0.0155615, -2.50511, 0.351997, 1.77701, 1.79476, 1.69921, -0.0659197, 10.6118, 3.21629, -1.79257, 0.710355, 0.858106}, {-1.45022, 0.57469, -0.482621, 0, 0, 1.17684, -4.31288, -4.35597, -0.593548, 0.0125895, -2.02668, -0.892072, 1.79257, -0.710355, -0.858106, -1.77701, -1.79476, -6.40659, 5.81643, -4.80387, 2.28248, 1.77701, 1.79476, 1.69921, -0.0155615, 2.50511, -0.351997, -1.84292, 8.81707, 4.42639}, {-1.45022, 0.57469, -0.482621, 0, 0, 1.17684, 1.43763, 1.45199, 0.197849, -0.0377686, 6.08004, 2.67622, 1.79257, -0.710355, -0.858106, -1.77701, -1.79476, -1.69921, 0.0155615, -2.50511, 0.351997, 7.57787, -0.504, 3.6297, -0.0155615, 2.50511, -5.05937, -7.54308, -5.09761, 0.0667081}, {2.31688, 0.916898, -2.31818, 0.572147, 2.2454, -0.575329, -1.46447, -2.59853, -0.874972, 1.66462, 0.658766, 0.677573, -2.04119, -11.3793, 2.05732, 1.10297, 0.436497, 1.79267, 8.62268, 13.9839, 3.62627, -7.76145, -3.07156, -4.50296, -2.76479, -3.58975, -0.126381, -0.247396, 2.39768, 0.243998}, {-0.772295, -0.305633, 0.772728, -1.71644, -6.7362, 1.72599, -1.46447, -2.59853, -0.874972, 1.66462, 0.658766, 0.677573, 3.33658, -1.17515, -3.33491, 6.96086, 10.8306, 5.29256, 2.76479, 3.58975, 0.126381, -1.10297, -0.436497, -1.79267, -9.42327, -6.22481, -2.83667, -0.247396, 2.39768, 0.243998}, {-0.772295, -0.305633, 0.772728, 0.572147, 2.2454, -0.575329, 4.39341, 7.7956, 2.62492, 1.66462, 0.658766, 0.677573, 0.247396, -2.39768, -0.243998, -1.18562, -8.5451, 4.09399, 5.85397, 4.81228, -2.96453, -1.10297, -0.436497, -1.79267, -2.76479, -3.58975, -0.126381, -6.90587, -0.237381, -2.46629}, {-0.772295, -0.305633, 0.772728, 0.572147, 2.2454, -0.575329, -1.46447, -2.59853, -0.874972, -4.99386, -1.9763, -2.03272, 0.247396, -2.39768, -0.243998, 1.10297, 0.436497, 1.79267, 2.76479, 3.58975, 0.126381, 1.98621, 0.786034, -4.88358, -5.05338, -12.5713, 2.17494, 5.61049, 12.7918, 3.74389}, {-7.02177, -5.36656, 7.02938, 0.00253498, -1.78885, 1.2111e-11, -2.34313, 0, 0, 0, 0, 2.34313, -2.9064, 7.15542, 2.89626, 2.89313, 2.21115, -1.49701e-11, 9.37564, -2.21115, 2.89626, -2.89313, -2.21115, -9.3725, -0.00313341, 2.21115, -2.89626, 2.89626, 0, -2.89626}, {2.34059, 1.78885, -2.34313, -0.00760494, 5.36656, -5.47978e-11, -2.34313, 0, 0, 1.36297e-15, 0, 2.34313, -12.2586, -7.15542, 12.2688, 12.2656, 2.21115, -2.25779e-11, 0.00313341, -2.21115, 2.89626, -2.89313, -2.21115, 2.25785e-11, -0.00313341, 2.21115, -12.2688, 2.89626, 0, -2.89626}, {2.34059, 1.78885, -2.34313, 0.00253498, -1.78885, 1.21079e-11, 7.02938, 0, 0, 0, 0, 2.34313, -2.89626, -4.44089e-16, 2.89626, 2.88299, 9.36656, -6.33979e-11, -9.35923, -9.36656, 12.2688, -2.89313, -2.21115, 1.49668e-11, -0.00313341, 2.21115, -2.89626, 2.89626, 0, -12.2688}, {2.34059, 1.78885, -2.34313, 0.00253498, -1.78885, 1.2111e-11, -2.34313, 0, 0, 0, 0, -7.02938, -2.89626, -4.44089e-16, 2.89626, 2.89313, 2.21115, -1.49701e-11, 0.00313341, -2.21115, 2.89626, -12.2555, -9.36656, 9.3725, -0.0132733, 9.36656, -2.89626, 12.2688, 0, -2.89626}, {0.0377686, 6.08004, 3.1372, 4.64343e-16, 1.84009e-16, 1.28977, -1.43763, 1.45199, -0.146251, 1.45022, 0.57469, -0.0977806, 0.0155615, 2.50511, -5.4607, 1.77701, -1.79476, -1.41346, 7.54308, -5.09761, 2.05838, -7.57787, -0.504, 1.80458, -1.79257, -0.710355, -1.47337, -0.0155615, -2.50511, 0.301639}, {-0.0125895, -2.02668, -1.04573, -2.77397e-15, 8.42705e-16, -3.8693, -1.43763, 1.45199, -0.146251, 1.45022, 0.57469, -0.0977806, 0.0659197, 10.6118, 3.8813, 7.52752, -7.60272, -0.82846, 1.79257, 0.710355, 1.47337, -1.77701, 1.79476, 1.41346, -7.59343, -3.00911, -1.08225, -0.0155615, -2.50511, 0.301639}, {-0.0125895, -2.02668, -1.04573, 0, 0, 1.28977, 4.31288, -4.35597, 0.438752, 1.45022, 0.57469, -0.0977806, 0.0155615, 2.50511, -0.301639, 1.77701, -1.79476, -6.57252, 1.84292, 8.81707, 5.65631, -1.77701, 1.79476, 1.41346, -1.79257, -0.710355, -1.47337, -5.81643, -4.80387, 0.692761}, {-0.0125895, -2.02668, -1.04573, 4.64343e-16, 1.84009e-16, 1.28977, -1.43763, 1.45199, -0.146251, -4.35065, -1.72407, 0.293342, 0.0155615, 2.50511, -0.301639, 1.77701, -1.79476, -1.41346, 1.79257, 0.710355, 1.47337, -1.72665, 9.90148, 5.5964, -1.79257, -0.710355, -6.63244, 5.73495, -8.31307, 0.886641}, {-4.7272, -4.7272, 4.7272, 1.57573, -1.57573, 1.57573, -1.57596, -1.57551, -1.57551, -1.57551, 1.57551, 1.57551, -10.1984, 6.30294, -6.30294, 0.000278382, 3.89515, -0.000278382, 6.30412, 6.30176, 10.1972, 6.30176, -10.1972, -6.30176, -0.000278382, 0.000278382, -3.89515, 3.89543, -9.10383e-15, 9.10383e-15}, {1.57573, 1.57573, -1.57573, -4.7272, 4.7272, -4.7272, -1.57596, -1.57551, -1.57551, -1.57551, 1.57551, 1.57551, -10.1984, -6.30294, 6.30294, 6.30412, 10.1972, 6.30176, 0.000278382, -0.000278382, 3.89515, -0.000278382, -3.89515, 0.000278382, 6.30176, -6.30176, -10.1972, 3.89543, -9.10383e-15, 9.10383e-15}, {1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 1.57573, 4.72788, 4.72653, 4.72653, -1.57551, 1.57551, 1.57551, -3.89543, 2.66454e-15, -1.44329e-14, -6.30266, 10.1981, -6.30322, -6.30266, -6.30322, 10.1981, -0.000278382, -3.89515, 0.000278382, -0.000278382, 0.000278382, -3.89515, 10.1975, -6.30204, -6.30204}, {1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 1.57573, -1.57596, -1.57551, -1.57551, 4.72653, -4.72653, -4.72653, -3.89543, 1.02141e-14, -6.66134e-16, 0.000278382, 3.89515, -0.000278382, 0.000278382, -0.000278382, 3.89515, -6.30322, -10.1981, 6.30322, -6.30322, 6.30322, -10.1981, 10.1993, 6.30204, 6.30204}, {1.83228, 4.63528, 4.62937, 1.94057, -2.54509, -0.198723, -1.32981, 1.74407, 1.74185, 0, 2.34612, 0, -9.40601, 15.2361, 2.94793, -0.754941, 0.990119, -1.90741, 7.71791, -7.22223, -7.21302, 0.754941, -10.3746, 1.90741, -2.39867, 0.245948, 0.245635, 1.64373, -5.05575, -2.15304}, {-0.61076, -1.54509, -1.54312, -5.82171, 7.63528, 0.596168, -1.32981, 1.74407, 1.74185, 7.74523e-16, 2.34612, -1.01451e-15, 0.799305, 11.2361, 8.32553, 4.5643, -5.98616, -8.87479, 2.39867, -0.245948, -0.245635, 0.754941, -0.990119, 1.90741, -2.39867, -9.13852, 0.245635, 1.64373, -5.05575, -2.15304}, {-0.61076, -1.54509, -1.54312, 1.94057, -2.54509, -0.198723, 3.98943, -5.23221, -5.22554, 0, 2.34612, 0, -1.64373, 5.05575, 2.15304, -8.51722, 11.1705, -1.11252, 4.84171, 5.93443, 5.92686, 0.754941, -0.990119, 1.90741, -2.39867, 0.245948, 0.245635, 1.64373, -14.4402, -2.15304}, {-0.61076, -1.54509, -1.54312, 1.94057, -2.54509, -0.198723, -1.32981, 1.74407, 1.74185, 0, -7.03835, 0, -1.64373, 5.05575, 2.15304, -0.754941, 0.990119, -1.90741, 2.39867, -0.245948, -0.245635, 3.19798, 5.19026, 8.0799, -10.1609, 10.4263, 1.04052, 6.96297, -12.032, -9.12042}, {-1.42344, 3.96091, -1.43084, -1.98584, -0.354449, 0.357788, 0.9893, 0.397365, -1.35371, 0.52206, 1.27739, 0.518977, 9.81149, 3.4879, -2.46294, 1.23179, -0.0530468, 1.23103, -5.76653, -0.448647, 6.49858, -3.32003, -5.0565, -3.30694, 1.80933, -1.14081, -1.08374, -1.86814, -2.07011, 1.03179}, {0.474478, -1.3203, 0.476947, 5.95751, 1.06335, -1.07336, 0.9893, 0.397365, -1.35371, 0.52206, 1.27739, 0.518977, -0.029771, 7.35132, -2.93958, -2.72541, -1.64251, 6.64587, -1.80933, 1.14081, 1.08374, -1.23179, 0.0530468, -1.23103, -0.278909, -6.25036, -3.15965, -1.86814, -2.07011, 1.03179}, {0.474478, -1.3203, 0.476947, -1.98584, -0.354449, 0.357788, -2.9679, -1.1921, 4.06113, 0.52206, 1.27739, 0.518977, 1.86814, 2.07011, -1.03179, 9.17514, 1.36475, -0.200121, -3.70724, 6.42202, -0.824048, -1.23179, 0.0530468, -1.23103, 1.80933, -1.14081, -1.08374, -3.95638, -7.17965, -1.04412}, {0.474478, -1.3203, 0.476947, -1.98584, -0.354449, 0.357788, 0.9893, 0.397365, -1.35371, -1.56618, -3.83216, -1.55693, 1.86814, 2.07011, -1.03179, 1.23179, -0.0530468, 1.23103, -1.80933, 1.14081, 1.08374, -3.1297, 5.33426, -3.13882, 9.75268, 0.276984, -2.51489, -5.82534, -3.65957, 6.44663}, {5.36656, 5.36656, -5.36656, 1.41539, 1.41492, 1.85814, 0, 3.15102, 0, 0.373467, -2.77708, -3.64699, -5.19992, -5.19747, -11.9405, -1.74951, -5.64381, -2.29678, 2.21115, -14.2878, -2.21115, 0.255645, 16.7521, 16.8847, -2.21115, 1.68373, 2.21115, -0.461631, -0.462209, 4.50793}, {-1.78885, -1.78885, 1.78885, -4.24616, -4.24476, -5.57441, -2.92145e-16, 3.15102, 2.85286e-15, 0.373467, -2.77708, -3.64699, 7.61705, 7.61763, -11.6633, -1.74951, -18.2479, -2.29678, 2.21115, -1.68373, -2.21115, 1.74951, 5.64381, 2.29678, -3.70501, 12.7921, 16.7991, -0.461631, -0.462209, 4.50793}, {-1.78885, -1.78885, 1.78885, 1.41539, 1.41492, 1.85814, 0, -9.45305, 0, 0.373467, -2.77708, -3.64699, 0.461631, 0.462209, -4.50793, -7.41106, -11.3035, -9.72932, 9.36656, 5.47169, -9.36656, 1.74951, 5.64381, 2.29678, -2.21115, 1.68373, 2.21115, -1.9555, 10.6461, 19.0959}, {-1.78885, -1.78885, 1.78885, 1.41539, 1.41492, 1.85814, 0, 3.15102, 0, -1.1204, 8.33125, 10.941, 0.461631, 0.462209, -4.50793, -1.74951, -5.64381, -2.29678, 2.21115, -1.68373, -2.21115, 8.90493, 12.7992, -4.85864, -7.87269, -3.97595, -5.2214, -0.461631, -13.0663, 4.50793}, {-4.34476, -0.77549, 0.782793, -0.00873736, -1.40655, 0.564008, -1.44688, -0.0374651, -0.914786, 0.00736434, 1.18552, 0.611709, -1.74439, 7.04528, -2.63065, 1.79924, 1.7849, 0.433585, 5.78582, -0.123349, 5.11241, -1.8287, -6.52698, -2.88042, 0.00169715, 0.27321, -1.45327, 1.77934, -1.41907, 0.374623}, {1.44825, 0.258497, -0.260931, 0.0262121, 4.21965, -1.69202, -1.44688, -0.0374651, -0.914786, 0.00736434, 1.18552, 0.611709, -7.57235, 0.385087, 0.669101, 7.58676, 1.93476, 4.09273, -0.00169715, -0.27321, 1.45327, -1.79924, -1.7849, -0.433585, -0.0277602, -4.46887, -3.9001, 1.77934, -1.41907, 0.374623}, {1.44825, 0.258497, -0.260931, -0.00873736, -1.40655, 0.564008, 4.34064, 0.112395, 2.74436, 0.00736434, 1.18552, 0.611709, -1.77934, 1.41907, -0.374623, 1.83419, 7.4111, -1.82245, -5.79471, -1.3072, 2.49699, -1.79924, -1.7849, -0.433585, 0.00169715, 0.27321, -1.45327, 1.74988, -6.16115, -2.07221}, {1.44825, 0.258497, -0.260931, -0.00873736, -1.40655, 0.564008, -1.44688, -0.0374651, -0.914786, -0.022093, -3.55656, -1.83513, -1.77934, 1.41907, -0.374623, 1.79924, 1.7849, 0.433585, -0.00169715, -0.27321, 1.45327, -7.59225, -2.81889, 0.610139, 0.0366466, 5.89941, -3.7093, 7.56686, -1.26921, 4.03377}, {-4.817, -2.66454e-15, -5.32907e-15, -1.78885, -1.78885, 1.78885, 0.373353, 0.374783, -3.64588, -0.190167, 1.41407, 1.85702, 7.38185, 9.36656, -9.36656, 1.74966, 1.74789, 2.29541, -3.93962, -1.96239, 19.0901, -0.988987, -7.40418, -9.72349, 2.4462, 0.463257, -4.50655, -0.226431, -2.21115, 2.21115}, {1.60567, 4.44089e-16, 1.77636e-15, 5.36656, 5.36656, -5.36656, 0.373353, 0.374783, -3.64588, -0.190167, 1.41407, 1.85702, -6.19624, 2.21115, -2.21115, 0.256242, 0.248757, 16.8789, -2.4462, -0.463257, 4.50655, -1.74966, -1.74789, -2.29541, 3.20687, -5.19303, -11.9346, -0.226431, -2.21115, 2.21115}, {1.60567, 0, 4.44089e-16, -1.78885, -1.78885, 1.78885, -1.12006, -1.12435, 10.9376, -0.190167, 1.41407, 1.85702, 0.226431, 2.21115, -2.21115, 8.90507, 8.90331, -4.86001, -8.86888, -0.463257, 4.50655, -1.74966, -1.74789, -2.29541, 2.4462, 0.463257, -4.50655, 0.534237, -7.86743, -5.21694}, {1.60567, 2.22045e-16, 1.11022e-15, -1.78885, -1.78885, 1.78885, 0.373353, 0.374783, -3.64588, 0.570501, -4.24221, -5.57107, 0.226431, 2.21115, -2.21115, 1.74966, 1.74789, 2.29541, -2.4462, -0.463257, 4.50655, -8.17233, -1.74789, -2.29541, 9.60162, 7.61867, -11.662, -1.71984, -3.71028, 16.7947}, {-5.36225, -5.36694, -5.37021, 0, -1.60567, 0, -0.373167, -0.373493, -3.64724, -1.41425, 0.190182, 1.85717, -2.20937, 6.19609, -2.21265, 0.46126, 2.44638, 4.50824, -0.25544, -0.255663, 16.8846, 5.19574, -3.20711, -11.9369, 1.74811, 1.74964, -2.29559, 2.20937, 0.226585, 2.21265}, {1.78742, 1.78898, 1.79007, 0, 4.817, 0, -0.373167, -0.373493, -3.64724, -1.41425, 0.190182, 1.85717, -9.35904, -7.3825, -9.37293, 1.95393, 3.94035, 19.0972, -1.74811, -1.74964, 2.29559, -0.46126, -2.44638, -4.50824, 7.40511, 0.988907, -9.72428, 2.20937, 0.226585, 2.21265}, {1.78742, 1.78898, 1.79007, 0, -1.60567, 0, 1.1195, 1.12048, 10.9417, -1.41425, 0.190182, 1.85717, -2.20937, -0.226585, -2.21265, 0.46126, 8.86905, 4.50824, -8.89778, -8.90555, -4.86469, -0.46126, -2.44638, -4.50824, 1.74811, 1.74964, -2.29559, 7.86637, -0.534145, -5.21604}, {1.78742, 1.78898, 1.79007, 0, -1.60567, 0, -0.373167, -0.373493, -3.64724, 4.24275, -0.570547, -5.57152, -2.20937, -0.226585, -2.21265, 0.46126, 2.44638, 4.50824, -1.74811, -1.74964, 2.29559, -7.61093, -9.60229, -11.6685, 1.74811, 8.17231, -2.29559, 3.70204, 1.72056, 16.8016}, {-0.829936, -0.831314, 3.98569, 1.1323, 1.13131, 1.13131, 0.168871, -1.43624, 0.169424, -1.57782, 0.027827, 0.027827, -6.27076, -6.26615, -4.28143, -1.60834, 0.376916, -1.6078, -1.22617, 7.17775, 0.755077, 7.9196, -0.488224, 1.49649, 0.550688, -1.43277, -1.43277, 1.74155, 1.7409, -0.243816}, {0.276645, 0.277105, -1.32856, -3.3969, -3.39394, -3.39394, 0.168871, -1.43624, 0.169424, -1.57782, 0.027827, 0.027827, -2.84813, -2.84932, 5.55807, -2.28382, 6.12189, -2.2855, -0.550688, 1.43277, 1.43277, 1.60834, -0.376916, 1.6078, 6.86195, -1.54408, -1.54408, 1.74155, 1.7409, -0.243816}, {0.276645, 0.277105, -1.32856, 1.1323, 1.13131, 1.13131, -0.506612, 4.30873, -0.508273, -1.57782, 0.027827, 0.027827, -1.74155, -1.7409, 0.243816, -6.13754, -4.14833, -6.13305, -1.65727, 0.324356, 6.74703, 1.60834, -0.376916, 1.6078, 0.550688, -1.43277, -1.43277, 8.05282, 1.62959, -0.355124}, {0.276645, 0.277105, -1.32856, 1.1323, 1.13131, 1.13131, 0.168871, -1.43624, 0.169424, 4.73345, -0.0834809, -0.0834809, -1.74155, -1.7409, 0.243816, -1.60834, 0.376916, -1.6078, -0.550688, 1.43277, 1.43277, 0.501756, -1.48534, 6.92205, -3.97852, -5.95802, -5.95802, 1.06607, 7.48587, -0.921513}, {-8.33162, 1.1204, 10.941, -1.41498, -1.41539, 1.85814, -3.15057, 0, 0, 1.78834, 1.78885, 1.78885, 3.97613, 7.87269, -5.2214, 5.64333, 1.74951, -2.29678, 13.0638, 0.461631, 4.50793, -12.7967, -8.90493, -4.85864, -0.461499, -0.461631, -4.50793, 1.6838, -2.21115, -2.21115}, {2.77721, -0.373467, -3.64699, 4.24495, 4.24616, -5.57441, -3.15057, 0, 0, 1.78834, 1.78885, 1.78885, -12.7926, 3.70501, 16.7991, 18.2456, 1.74951, -2.29678, 0.461499, 0.461631, 4.50793, -5.64333, -1.74951, 2.29678, -7.61487, -7.61705, -11.6633, 1.6838, -2.21115, -2.21115}, {2.77721, -0.373467, -3.64699, -1.41498, -1.41539, 1.85814, 9.4517, 0, 0, 1.78834, 1.78885, 1.78885, -1.6838, 2.21115, 2.21115, 11.3033, 7.41106, -9.72932, -10.6473, 1.9555, 19.0959, -5.64333, -1.74951, 2.29678, -0.461499, -0.461631, -4.50793, -5.46957, -9.36656, -9.36656}, {2.77721, -0.373467, -3.64699, -1.41498, -1.41539, 1.85814, -3.15057, 0, 0, -5.36503, -5.36656, -5.36656, -1.6838, 2.21115, 2.21115, 5.64333, 1.74951, -2.29678, 0.461499, 0.461631, 4.50793, -16.7522, -0.255645, 16.8847, 5.19843, 5.19992, -11.9405, 14.2861, -2.21115, -2.21115}, {-3.98391, -5.22497, -0.407969, -1.83214e-15, -1.4677e-15, 1.60567, 0.61239, -1.54296, -1.54296, -1.94036, -0.198701, -0.198701, -1.64146, -2.15281, -8.57548, -0.756955, 1.9072, -0.0775154, -4.84797, 5.92622, 7.91093, 8.51839, -1.1124, 0.87232, 2.39842, 0.245608, -1.73911, 1.64146, 2.15281, 2.15281}, {1.32797, 1.74166, 0.13599, 3.05267e-15, -1.60751e-15, -4.817, 0.61239, -1.54296, -1.54296, -1.94036, -0.198701, -0.198701, -6.95334, -9.11944, -2.69677, -3.20651, 8.07903, 6.09431, -2.39842, -0.245608, 1.73911, 0.756955, -1.9072, 0.0775154, 10.1599, 1.04041, -0.944303, 1.64146, 2.15281, 2.15281}, {1.32797, 1.74166, 0.13599, 0, 0, 1.60567, -1.83717, 4.62887, 4.62887, -1.94036, -0.198701, -0.198701, -1.64146, -2.15281, -2.15281, -0.756955, 1.9072, -6.50019, -7.71029, -7.21224, 1.19515, 0.756955, -1.9072, 0.0775154, 2.39842, 0.245608, -1.73911, 9.4029, 2.94761, 2.94761}, {1.32797, 1.74166, 0.13599, 7.73451e-16, 7.92047e-17, 1.60567, 0.61239, -1.54296, -1.54296, 5.82108, 0.596103, 0.596103, -1.64146, -2.15281, -2.15281, -0.756955, 1.9072, -0.0775154, -2.39842, -0.245608, 1.73911, -4.55492, -8.87383, -0.466443, 2.39842, 0.245608, -8.16178, -0.808098, 8.32463, 8.32463}, {-1.77636e-15, 4.817, 8.88178e-16, -0.373167, -0.373493, 3.64724, -1.41425, 0.190182, -1.85717, 1.78742, 1.78898, -1.79007, 1.95393, 3.94035, -19.0972, 2.20937, 0.226585, -2.21265, 7.40511, 0.988907, 9.72428, -9.35904, -7.3825, 9.37293, -1.74811, -1.74964, -2.29559, -0.46126, -2.44638, 4.50824}, {-2.22045e-16, -1.60567, -2.22045e-16, 1.1195, 1.12048, -10.9417, -1.41425, 0.190182, -1.85717, 1.78742, 1.78898, -1.79007, 0.46126, 8.86905, -4.50824, 7.86637, -0.534145, 5.21604, 1.74811, 1.74964, 2.29559, -2.20937, -0.226585, 2.21265, -8.89778, -8.90555, 4.86469, -0.46126, -2.44638, 4.50824}, {2.22045e-16, -1.60567, 6.66134e-16, -0.373167, -0.373493, 3.64724, 4.24275, -0.570547, 5.57152, 1.78742, 1.78898, -1.79007, 0.46126, 2.44638, -4.50824, 3.70204, 1.72056, -16.8016, 1.74811, 8.17231, 2.29559, -2.20937, -0.226585, 2.21265, -1.74811, -1.74964, -2.29559, -7.61093, -9.60229, 11.6685}, {-2.22045e-16, -1.60567, 6.66134e-16, -0.373167, -0.373493, 3.64724, -1.41425, 0.190182, -1.85717, -5.36225, -5.36694, 5.37021, 0.46126, 2.44638, -4.50824, 2.20937, 0.226585, -2.21265, 1.74811, 1.74964, 2.29559, -2.20937, 6.19609, 2.21265, -0.25544, -0.255663, -16.8846, 5.19574, -3.20711, 11.9369}, {5.57441, 0.570843, -4.24616, 1.45374e-15, 1.60567, 1.48869e-16, -1.78885, -1.78885, -1.78885, 3.64699, 0.373467, 0.373467, 2.29678, -8.17219, -1.74951, 2.21115, 0.226431, 2.21115, 11.6633, 9.60176, 7.61705, -16.7991, -1.7203, -3.70501, -4.50793, -2.44635, -0.461631, -2.29678, 1.74951, 1.74951}, {-1.85814, -0.190281, 1.41539, -6.50039e-15, -4.817, -2.58579e-15, -1.78885, -1.78885, -1.78885, 3.64699, 0.373467, 0.373467, 9.72932, -0.988391, -7.41106, 9.36656, 7.38185, 9.36656, 4.50793, 2.44635, 0.461631, -2.21115, -0.226431, -2.21115, -19.0959, -3.94022, -1.9555, -2.29678, 1.74951, 1.74951}, {-1.85814, -0.190281, 1.41539, 0, 1.60567, 0, 5.36656, 5.36656, 5.36656, 3.64699, 0.373467, 0.373467, 2.29678, -1.74951, -1.74951, 2.21115, -6.19624, 2.21115, 11.9405, 3.20747, -5.19992, -2.21115, -0.226431, -2.21115, -4.50793, -2.44635, -0.461631, -16.8847, 0.255645, 0.255645}, {-1.85814, -0.190281, 1.41539, 1.45374e-15, 1.60567, 1.48869e-16, -1.78885, -1.78885, -1.78885, -10.941, -1.1204, -1.1204, 2.29678, -1.74951, -1.74951, 2.21115, 0.226431, 2.21115, 4.50793, 2.44635, 0.461631, 5.2214, 0.534693, -7.87269, -4.50793, -8.86902, -0.461631, 4.85864, 8.90493, 8.90493}, {0.596103, -0.596103, -5.82108, 1.74166, -0.13599, -1.32797, -1.54296, 1.54296, -0.61239, 0, -1.60567, 0, -8.87383, 0.466443, 4.55492, -0.245608, -1.73911, 2.39842, 8.32463, -8.32463, 0.808098, 0.245608, 8.16178, -2.39842, -2.15281, 2.15281, 1.64146, 1.9072, 0.0775154, 0.756955}, {-0.198701, 0.198701, 1.94036, -5.22497, 0.407969, 3.98391, -1.54296, 1.54296, -0.61239, 0, -1.60567, 0, -1.1124, -0.87232, -8.51839, 5.92622, -7.91093, 4.84797, 2.15281, -2.15281, -1.64146, 0.245608, 1.73911, -2.39842, -2.15281, 8.57548, 1.64146, 1.9072, 0.0775154, 0.756955}, {-0.198701, 0.198701, 1.94036, 1.74166, -0.13599, -1.32797, 4.62887, -4.62887, 1.83717, 0, -1.60567, 0, -1.9072, -0.0775154, -0.756955, -7.21224, -1.19515, 7.71029, 2.94761, -2.94761, -9.4029, 0.245608, 1.73911, -2.39842, -2.15281, 2.15281, 1.64146, 1.9072, 6.50019, 0.756955}, {-0.198701, 0.198701, 1.94036, 1.74166, -0.13599, -1.32797, -1.54296, 1.54296, -0.61239, 0, 4.817, 0, -1.9072, -0.0775154, -0.756955, -0.245608, -1.73911, 2.39842, 2.15281, -2.15281, -1.64146, 1.04041, 0.944303, -10.1599, -9.11944, 2.69677, 6.95334, 8.07903, -6.09431, 3.20651}, {1.77636e-15, 9.45441, 0, 1.36222, 1.36261, 1.78885, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -7.1327, -3.23931, -9.36656, 2.21051, -1.68428, -2.21115, 16.4966, 3.89543, 0, -9.36389, -5.47113, 9.36656, -3.89432, -3.89543, 0, 1.6838, -2.21115, 2.21115}, {-2.22045e-16, -3.15147, 0, -4.08667, -4.08784, -5.36656, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 14.817, -2.21115, 14.8128, -1.68428, -2.21115, 3.89432, 3.89543, 0, -2.21051, 1.68428, 2.21115, -11.0477, -11.0508, 7.15542, 1.6838, -2.21115, 2.21115}, {2.22045e-16, -3.15147, 0, 1.36222, 1.36261, 1.78885, 9.4517, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 2.21115, -2.21115, -3.23838, -7.13474, -9.36656, 3.89432, 16.5013, 0, -2.21051, 1.68428, 2.21115, -3.89432, -3.89543, 0, -5.46957, -9.36656, 9.36656}, {-2.22045e-16, -3.15147, 0, 1.36222, 1.36261, 1.78885, -3.15057, 0, 0, -5.36503, -5.36656, 5.36656, -1.6838, 2.21115, -2.21115, 2.21051, -1.68428, -2.21115, 3.89432, 3.89543, 0, -2.21051, 14.2902, 2.21115, -9.34321, -9.34589, -7.15542, 14.2861, -2.21115, 2.21115}, {-2.95778e-16, 8.88178e-16, 5.41667, 1.44665, -1.44665, -0.51339, -1.44665, -0.572575, 0.978606, 1.97314e-12, 2.01922, 1.34034, -7.57474, 7.57474, 4.91993, 2.43894e-12, 2.4959, -0.575039, 7.57474, 2.99804, -2.89226, -1.03315e-11, -10.5728, -4.78632, -1.78815, -0.707741, -1.02217, 1.78815, -1.78815, -2.86637}, {1.99359e-16, 4.44089e-16, -1.80556, -4.33994, 4.33994, 1.54017, -1.44665, -0.572575, 0.978606, 1.97222e-12, 2.01922, 1.34034, -1.78815, 1.78815, 10.0886, 5.78659, 4.7862, -4.48946, 1.78815, 0.707741, 1.02217, -2.43805e-12, -2.4959, 0.575039, -1.78815, -8.78463, -6.38352, 1.78815, -1.78815, -2.86637}, {8.21831e-17, -4.44089e-16, -1.80556, 1.44665, -1.44665, -0.51339, 4.33994, 1.71772, -2.93582, 1.97167e-12, 2.01922, 1.34034, -1.78815, 1.78815, 2.86637, -5.78659, 8.28248, 1.47852, 1.78815, 0.707741, 8.24439, -2.43716e-12, -2.4959, 0.575039, -1.78815, -0.707741, -1.02217, 1.78815, -9.86504, -8.22773}, {-1.03785e-17, 0, -1.80556, 1.44665, -1.44665, -0.51339, -1.44665, -0.572575, 0.978606, -5.91996e-12, -6.05767, -4.02102, -1.78815, 1.78815, 2.86637, 2.43916e-12, 2.4959, -0.575039, 1.78815, 0.707741, 1.02217, -2.43978e-12, -2.4959, 7.79726, -7.57474, 5.07885, 1.03139, 7.57474, 0.502145, -6.7808}, {-1.83228, -4.62937, -4.62777, -1.94057, 0.198723, 0.200419, 1.32981, -1.74185, -0.13734, 0, 0, -1.60567, 9.40601, -2.94793, -2.95615, 0.754941, 1.90741, -0.0779689, -7.71791, 7.21302, -1.18762, -0.754941, -1.90741, 6.50064, 2.39867, -0.245635, 1.73698, -1.64373, 2.15304, 2.15448}, {0.61076, 1.54312, 1.54259, 5.82171, -0.596168, -0.601256, 1.32981, -1.74185, -0.13734, 0, 0, -1.60567, -0.799305, -8.32553, -8.32484, -4.5643, 8.87479, 0.471392, -2.39867, 0.245635, -1.73698, -0.754941, -1.90741, 0.0779689, 2.39867, -0.245635, 8.15966, -1.64373, 2.15304, 2.15448}, {0.61076, 1.54312, 1.54259, -1.94057, 0.198723, 0.200419, -3.98943, 5.22554, 0.412021, 0, 0, -1.60567, 1.64373, -2.15304, -2.15448, 8.51722, 1.11252, -0.879643, -4.84171, -5.92686, -7.90734, -0.754941, -1.90741, 0.0779689, 2.39867, -0.245635, 1.73698, -1.64373, 2.15304, 8.57715}, {0.61076, 1.54312, 1.54259, -1.94057, 0.198723, 0.200419, 1.32981, -1.74185, -0.13734, 0, 0, 4.817, 1.64373, -2.15304, -2.15448, 0.754941, 1.90741, -0.0779689, -2.39867, 0.245635, -1.73698, -3.19798, -8.0799, -6.09239, 10.1609, -1.04052, 0.93531, -6.96297, 9.12042, 2.70384}, {-5.36656, 5.36656, -5.36656, 0, 0, -3.15147, -0.373467, 3.64699, 2.778, -1.41539, -1.85814, -1.41539, -2.21115, 2.21115, 14.2902, 0.461631, -4.50793, 0.461631, -0.255645, -16.8847, -16.7569, 5.19992, 11.9405, 5.19992, 1.74951, 2.29678, 5.64494, 2.21115, -2.21115, -1.68428}, {1.78885, -1.78885, 1.78885, 0, 0, 9.45441, -0.373467, 3.64699, 2.778, -1.41539, -1.85814, -1.41539, -9.36656, 9.36656, -5.47113, 1.9555, -19.0959, -10.6504, -1.74951, -2.29678, -5.64494, -0.461631, 4.50793, -0.461631, 7.41106, 9.72932, 11.3065, 2.21115, -2.21115, -1.68428}, {1.78885, -1.78885, 1.78885, 0, 0, -3.15147, 1.1204, -10.941, -8.334, -1.41539, -1.85814, -1.41539, -2.21115, 2.21115, 1.68428, 0.461631, -4.50793, 13.0675, -8.90493, 4.85864, -12.8004, -0.461631, 4.50793, -0.461631, 1.74951, 2.29678, 5.64494, 7.87269, 5.2214, 3.97726}, {1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -0.373467, 3.64699, 2.778, 4.24616, 5.57441, 4.24616, -2.21115, 2.21115, 1.68428, 0.461631, -4.50793, 0.461631, -1.74951, -2.29678, -5.64494, -7.61705, 11.6633, -7.61705, 1.74951, 2.29678, 18.2508, 3.70501, -16.7991, -12.7963}, {1.64026, -3.9353, -3.8467e-12, 0.194118, 0, -1.44665, -0.509273, -1.31177, -1.28236e-12, 0.861908, 0, 1.44665, -0.34059, -1.62143, 7.57474, 0.389553, 1.62143, 1.78815, 3.34241, 5.24706, 5.12945e-12, -3.83718, -1.62143, -7.57474, -1.30532, 0, 0, -0.435881, 1.62143, -1.78815}, {-0.546753, 1.31177, 1.28098e-12, -0.582353, 3.77031e-16, 4.33994, -0.509273, -1.31177, -1.28138e-12, 0.861908, 8.26902e-17, 1.44665, 2.62289, -6.86849, 1.78815, 2.42664, 6.86849, 1.78815, 1.30532, -3.78785e-16, 4.44089e-16, -0.389553, -1.62143, -1.78815, -4.75295, -2.77626e-16, -5.78659, -0.435881, 1.62143, -1.78815}, {-0.546753, 1.31177, 1.28164e-12, 0.194118, 0, -1.44665, 1.52782, 3.9353, 3.84623e-12, 0.861908, 0, 1.44665, 0.435881, -1.62143, 1.78815, -0.386918, 1.62143, 7.57474, 3.49233, -5.24706, -5.12657e-12, -0.389553, -1.62143, -1.78815, -1.30532, 0, -4.44089e-16, -3.88351, 1.62143, -7.57474}, {-0.546753, 1.31177, 1.28164e-12, 0.194118, 0, -1.44665, -0.509273, -1.31177, -1.28138e-12, -2.58572, 0, -4.33994, 0.435881, -1.62143, 1.78815, 0.389553, 1.62143, 1.78815, 1.30532, -3.2565e-16, -2.22045e-16, 1.79746, -6.86849, -1.78815, -2.08179, 0, 5.78659, 1.60121, 6.86849, -1.78815}, {0.831641, 5.95736e-16, -6.19774, -0.482067, 1.31177, -0.482067, -0.449021, -1.31177, -0.449021, 1.2083, 1.98579e-16, -1.13482, 2.86679, -6.86849, -0.0294728, 1.15089, 0, 1.15089, 2.69376, 6.86849, -0.202503, -5.98409, -7.94315e-16, 3.38841, -0.897675, -1.62143, 1.99859, -0.938522, 1.62143, 1.95774}, {-0.277214, -1.75113e-16, 2.06591, 1.4462, -3.9353, 1.4462, -0.449021, -1.31177, -0.449021, 1.2083, 3.97157e-16, -1.13482, 2.04738, -1.62143, -10.2214, 2.94697, 5.24706, 2.94697, 0.897675, 1.62143, -1.99859, -1.15089, -2.22045e-16, -1.15089, -5.73088, -1.62143, 6.53788, -0.938522, 1.62143, 1.95774}, {-0.277214, 7.58234e-17, 2.06591, -0.482067, 1.31177, -0.482067, 1.34706, 3.9353, 1.34706, 1.2083, -2.97868e-16, -1.13482, 0.938522, -1.62143, -1.95774, 3.07916, -5.24706, 3.07916, 2.00653, 1.62143, -10.2622, -1.15089, 4.44089e-16, -1.15089, -0.897675, -1.62143, 1.99859, -5.77173, 1.62143, 6.49704}, {-0.277214, 0, 2.06591, -0.482067, 1.31177, -0.482067, -0.449021, -1.31177, -0.449021, -3.6249, 0, 3.40447, 0.938522, -1.62143, -1.95774, 1.15089, 0, 1.15089, 0.897675, 1.62143, -1.99859, -0.0420334, 0, -9.41454, 1.03059, -6.86849, 3.92685, 0.857562, 6.86849, 3.75382}, {10.941, -1.1204, -8.334, 1.78885, -1.78885, 1.78885, 1.85814, 1.41539, -1.41539, 0, 0, -3.15147, -4.85864, 8.90493, -12.8004, -4.50793, 0.461631, -0.461631, -5.2214, -7.87269, 3.97726, 4.50793, -0.461631, 13.0675, -2.21115, 2.21115, 1.68428, -2.29678, -1.74951, 5.64494}, {-3.64699, 0.373467, 2.778, -5.36656, 5.36656, -5.36656, 1.85814, 1.41539, -1.41539, 0, 0, -3.15147, 16.8847, 0.255645, -16.7569, -11.9405, -5.19992, 5.19992, 2.21115, -2.21115, -1.68428, 4.50793, -0.461631, 0.461631, -2.21115, 2.21115, 14.2902, -2.29678, -1.74951, 5.64494}, {-3.64699, 0.373467, 2.778, 1.78885, -1.78885, 1.78885, -5.57441, -4.24616, 4.24616, 0, 0, -3.15147, 2.29678, 1.74951, -5.64494, -11.6633, 7.61705, -7.61705, 16.7991, -3.70501, -12.7963, 4.50793, -0.461631, 0.461631, -2.21115, 2.21115, 1.68428, -2.29678, -1.74951, 18.2508}, {-3.64699, 0.373467, 2.778, 1.78885, -1.78885, 1.78885, 1.85814, 1.41539, -1.41539, 0, 0, 9.45441, 2.29678, 1.74951, -5.64494, -4.50793, 0.461631, -0.461631, 2.21115, -2.21115, -1.68428, 19.0959, -1.9555, -10.6504, -9.36656, 9.36656, -5.47113, -9.72932, -7.41106, 11.3065}, {1.77636e-15, 0, 9.45441, 1.78885, 1.78885, 1.78885, 1.36261, -1.78885, 1.36261, -3.15147, 0, 0, -9.36656, -9.36656, -5.47113, -3.89543, 0, -3.89543, -7.13474, 9.36656, -3.23931, 16.5013, 0, 3.89543, 1.68428, -2.21115, -2.21115, 2.21115, 2.21115, -1.68428}, {0, 0, -3.15147, -5.36656, -5.36656, -5.36656, 1.36261, -1.78885, 1.36261, -3.15147, 0, 0, -2.21115, -2.21115, 14.2902, -9.34589, 7.15542, -9.34589, -1.68428, 2.21115, 2.21115, 3.89543, 0, 3.89543, 14.2902, -2.21115, -2.21115, 2.21115, 2.21115, -1.68428}, {4.44089e-16, 0, -3.15147, 1.78885, 1.78885, 1.78885, -4.08784, 5.36656, -4.08784, -3.15147, 0, 0, -2.21115, -2.21115, 1.68428, -11.0508, -7.15542, -11.0508, -1.68428, 2.21115, 14.817, 3.89543, 0, 3.89543, 1.68428, -2.21115, -2.21115, 14.817, 2.21115, -1.68428}, {0, 0, -3.15147, 1.78885, 1.78885, 1.78885, 1.36261, -1.78885, 1.36261, 9.45441, 0, 0, -2.21115, -2.21115, 1.68428, -3.89543, 0, -3.89543, -1.68428, 2.21115, 2.21115, 3.89543, 0, 16.5013, -5.47113, -9.36656, -9.36656, -3.23931, 9.36656, -7.13474}, {5.22884, -3.98763, -5.22319, 0.200328, -1.9397, -2.54071, 8.97324e-16, 3.55112e-16, 2.34313, 1.54262, 0.610485, -1.54348, 1.10547, 8.51339, 11.1512, -0.24762, 2.3976, 0.244222, 2.1544, -1.643, -14.4208, -5.92285, -4.83954, 5.92971, -2.1544, 1.643, 5.04833, -1.90678, -0.754601, -0.988412}, {-1.74295, 1.32921, 1.74106, -0.600985, 5.81909, 7.62212, 0, 0, 2.34313, 1.54262, 0.610485, -1.54348, 8.87857, -4.56224, -5.97584, -0.24762, 2.3976, -9.12828, 2.1544, -1.643, -5.04833, 0.24762, -2.3976, -0.244222, -8.32487, -0.798945, 11.2223, -1.90678, -0.754601, -0.988412}, {-1.74295, 1.32921, 1.74106, 0.200328, -1.9397, -2.54071, 0, 0, -7.02938, 1.54262, 0.610485, -1.54348, 1.90678, 0.754601, 0.988412, -1.04893, 10.1564, 10.407, 9.12619, -6.95984, -12.0126, 0.24762, -2.3976, -0.244222, -2.1544, 1.643, 5.04833, -8.07725, -3.19654, 5.18552}, {-1.74295, 1.32921, 1.74106, 0.200328, -1.9397, -2.54071, 8.97324e-16, 3.55112e-16, 2.34313, -4.62785, -1.83146, 4.63045, 1.90678, 0.754601, 0.988412, -0.24762, 2.3976, 0.244222, 2.1544, -1.643, -5.04833, 7.21941, -7.71444, -7.20847, -2.95571, 9.40178, 15.2112, -1.90678, -0.754601, -10.3609}, {0.403167, 4.33994, -4.33994, 1.56712, -1.12319e-15, 3.41061e-16, -0.345916, 1.4404, 0.569981, -1.08682, 0.00624416, -2.01663, -8.03944, 1.78815, -1.78815, -1.50949, -1.78044, -0.704535, 1.97736, -5.75389, -4.77261, 5.85676, 1.75546, 8.77105, -0.59369, -0.00771821, 2.49269, 1.77095, -1.78815, 1.78815}, {-0.134389, -1.44665, 1.44665, -4.70136, 1.67385e-15, 3.01891e-15, -0.345916, 1.4404, 0.569981, -1.08682, 0.00624416, -2.01663, -1.2334, 7.57474, -7.57474, -0.125826, -7.54205, -2.98446, 0.59369, 0.00771821, -2.49269, 1.50949, 1.78044, 0.704535, 3.75357, -0.0326948, 10.5592, 1.77095, -1.78815, 1.78815}, {-0.134389, -1.44665, 1.44665, 1.56712, 0, 0, 1.03775, -4.32121, -1.70994, -1.08682, 0.00624416, -2.01663, -1.77095, 1.78815, -1.78815, -7.77798, -1.78044, -0.704535, 1.13125, 5.79431, -8.27928, 1.50949, 1.78044, 0.704535, -0.59369, -0.00771821, 2.49269, 6.11822, -1.81313, 9.85467}, {-0.134389, -1.44665, 1.44665, 1.56712, -2.42925e-18, 7.84555e-16, -0.345916, 1.4404, 0.569981, 3.26045, -0.0187325, 6.04988, -1.77095, 1.78815, -1.78815, -1.50949, -1.78044, -0.704535, 0.59369, 0.00771821, -2.49269, 2.04705, 7.56702, -5.08205, -6.86218, -0.00771821, 2.49269, 3.15462, -7.54977, -0.491769}, {-7.02938, 5.36656, -7.02938, -2.34313, 0, 0, 0, 0, -2.34313, 1.02097e-11, 1.78885, 1.02102e-11, 9.3725, 2.21115, -2.89626, 2.89626, 0, 2.89626, -2.89626, 2.21115, 9.3725, -2.89626, -7.15542, -2.89626, 2.89626, -2.21115, -1.26205e-11, -1.26199e-11, -2.21115, 2.89626}, {2.34313, -1.78885, 2.34313, 7.02938, 0, 0, 0, 0, -2.34313, 1.02086e-11, 1.78885, 1.02066e-11, -9.3725, 9.36656, -12.2688, 2.89626, 0, 12.2688, -2.89626, 2.21115, 1.26154e-11, -2.89626, 4.44089e-16, -2.89626, 2.89626, -9.36656, -5.34422e-11, -1.26186e-11, -2.21115, 2.89626}, {2.34313, -1.78885, 2.34313, -2.34313, 0, 0, 0, 0, 7.02938, 1.0206e-11, 1.78885, 1.02081e-11, 1.26148e-11, 2.21115, -2.89626, 12.2688, 0, 2.89626, -12.2688, 9.36656, -9.3725, -2.89626, 4.44089e-16, -2.89626, 2.89626, -2.21115, -1.26179e-11, -5.34395e-11, -9.36656, 2.89626}, {2.34313, -1.78885, 2.34313, -2.34313, 0, 0, 0, 0, -2.34313, -3.06361e-11, -5.36656, -3.06329e-11, 1.26222e-11, 2.21115, -2.89626, 2.89626, 0, 2.89626, -2.89626, 2.21115, 1.26209e-11, -12.2688, 7.15542, -12.2688, 12.2688, -2.21115, -1.26215e-11, -1.26228e-11, -2.21115, 12.2688}, {7.02938, 0, 8.88974e-16, 2.34566, -1.78885, -2.34313, -1.47457e-18, 1.04056e-15, 2.34313, -0.00253498, 1.78885, -1.02102e-11, -9.38578, 9.36656, 12.2688, -2.8994, 2.21115, -1.26206e-11, 2.89626, -4.88498e-15, -12.2688, 2.90954, -9.36656, 5.34614e-11, -2.89626, 8.88178e-16, 2.89626, 0.00313341, -2.21115, -2.89626}, {-2.34313, 0, 7.14229e-17, -7.03698, 5.36656, 7.02938, 0, 0, 2.34313, -0.00253498, 1.78885, -1.02097e-11, 9.36937, 2.21115, 2.89626, -2.8994, 2.21115, -9.3725, 2.89626, 0, -2.89626, 2.8994, -2.21115, 1.26197e-11, -2.88612, -7.15542, 2.89626, 0.00313341, -2.21115, -2.89626}, {-2.34313, 0, -3.09288e-16, 2.34566, -1.78885, -2.34313, 0, 0, -7.02938, -0.00253498, 1.78885, -1.02071e-11, -0.00313341, 2.21115, 2.89626, -12.282, 9.36656, 9.3725, 12.2688, 0, -2.89626, 2.8994, -2.21115, 1.2617e-11, -2.89626, 0, 2.89626, 0.0132733, -9.36656, -2.89626}, {-2.34313, -2.22045e-16, 6.36673e-16, 2.34566, -1.78885, -2.34313, -1.47457e-18, 1.04056e-15, 2.34313, 0.00760494, -5.36656, 3.06361e-11, -0.00313341, 2.21115, 2.89626, -2.8994, 2.21115, -1.26219e-11, 2.89626, -1.33227e-15, -2.89626, 12.2719, -2.21115, 1.26202e-11, -12.2789, 7.15542, 12.2688, 0.00313341, -2.21115, -12.2688}, {5.3029, -0.485897, 0.486322, 0.215713, 1.38996, 0.214498, 0.501223, -0.501223, -1.10401, 1.0507, -1.0507, 1.05162, 1.05543, -7.4781, -0.922752, -0.886182, -1.09853, 1.09949, -0.439523, 2.42424, 5.98103, -3.31661, 5.30132, -5.30596, -1.56537, -0.419345, -1.565, -1.91828, 1.91828, 0.0647586}, {-1.76763, 0.161966, -0.162107, -0.647139, -4.16987, -0.643495, 0.501223, -0.501223, -1.10401, 1.0507, -1.0507, 1.05162, 8.98882, -2.56614, 0.583671, -2.89107, 0.90636, 5.51552, 1.56537, 0.419345, 1.565, 0.886182, 1.09853, -1.09949, -5.76816, 3.78345, -5.77147, -1.91828, 1.91828, 0.0647586}, {-1.76763, 0.161966, -0.162107, 0.215713, 1.38996, 0.214498, -1.50367, 1.50367, 3.31202, 1.0507, -1.0507, 1.05162, 1.91828, -1.91828, -0.0647586, -1.74903, -6.65835, 0.2415, 8.63591, -0.228518, 2.21343, 0.886182, 1.09853, -1.09949, -1.56537, -0.419345, -1.565, -6.12107, 6.12107, -4.14171}, {-1.76763, 0.161966, -0.162107, 0.215713, 1.38996, 0.214498, 0.501223, -0.501223, -1.10401, -3.15209, 3.15209, -3.15485, 1.91828, -1.91828, -0.0647586, -0.886182, -1.09853, 1.09949, 1.56537, 0.419345, 1.565, 7.95672, 0.45067, -0.451064, -2.42822, -5.97917, -2.423, -3.92317, 3.92317, 4.48079}, {1.71308, 4.3282, 0.488804, 0.642112, 1.62234, -1.62234, 2.1437, 0.314496, -0.314496, -2.21478, -0.4941, 2.09977, -2.65632, -6.71135, 8.69607, -3.44345, -2.39406, 2.39406, -10.5187, 0.136594, 1.84812, 12.3026, 4.37046, -10.7931, 1.94393, -1.39458, -0.590137, 0.0878675, 0.222003, -2.20672}, {-0.571026, -1.44273, -0.162935, -1.92634, -4.86701, 4.86701, 2.1437, 0.314496, -0.314496, -2.21478, -0.4941, 2.09977, 2.19624, 5.54893, 2.85846, -12.0182, -3.65204, 3.65204, -1.94393, 1.39458, 0.590137, 3.44345, 2.39406, -2.39406, 10.8031, 0.581823, -8.98921, 0.0878675, 0.222003, -2.20672}, {-0.571026, -1.44273, -0.162935, 0.642112, 1.62234, -1.62234, -6.43109, -0.943488, 0.943488, -2.21478, -0.4941, 2.09977, -0.0878675, -0.222003, 2.20672, -6.0119, -8.88341, 8.88341, 0.340174, 7.16551, 1.24188, 3.44345, 2.39406, -2.39406, 1.94393, -1.39458, -0.590137, 8.947, 2.1984, -10.6058}, {-0.571026, -1.44273, -0.162935, 0.642112, 1.62234, -1.62234, 2.1437, 0.314496, -0.314496, 6.64435, 1.4823, -6.2993, -0.0878675, -0.222003, 2.20672, -3.44345, -2.39406, 2.39406, -1.94393, 1.39458, 0.590137, 5.72755, 8.16499, -1.74232, -0.624519, -7.88393, 5.89921, -8.48692, -1.03598, -0.948734}, {-4.62937, 4.62937, 1.83228, 0.198723, -0.198723, 1.94057, -1.74185, 0.136178, -1.32981, 0, 1.60567, 0, -2.94793, 2.94793, -9.40601, 1.90741, 0.0773091, -0.754941, 7.21302, 1.19437, 7.71791, -1.90741, -6.49998, 0.754941, -0.245635, -1.73908, -2.39867, 2.15304, -2.15304, 1.64373}, {1.54312, -1.54312, -0.61076, -0.596168, 0.596168, -5.82171, -1.74185, 0.136178, -1.32981, 6.94322e-16, 1.60567, 5.30079e-16, -8.32553, 8.32553, 0.799305, 8.87479, -0.467403, 4.5643, 0.245635, 1.73908, 2.39867, -1.90741, -0.0773091, 0.754941, -0.245635, -8.16175, -2.39867, 2.15304, -2.15304, 1.64373}, {1.54312, -1.54312, -0.61076, 0.198723, -0.198723, 1.94057, 5.22554, -0.408534, 3.98943, 0, 1.60567, 0, -2.15304, 2.15304, -1.64373, 1.11252, 0.872199, -8.51722, -5.92686, 7.91157, 4.84171, -1.90741, -0.0773091, 0.754941, -0.245635, -1.73908, -2.39867, 2.15304, -8.57571, 1.64373}, {1.54312, -1.54312, -0.61076, 0.198723, -0.198723, 1.94057, -1.74185, 0.136178, -1.32981, 0, -4.817, 0, -2.15304, 2.15304, -1.64373, 1.90741, 0.0773091, -0.754941, 0.245635, 1.73908, 2.39867, -8.0799, 6.09519, 3.19798, -1.04052, -0.94419, -10.1609, 9.12042, -2.69775, 6.96297}, {-1.38621, -1.33227e-15, 3.9353, 1.09414, 1.31177, 1.31177, 0.173581, -1.31177, 0, -1.72979, 0, 0, -6.30013, -6.86849, -5.24706, -1.56699, 4.44089e-16, -1.62143, -1.48003, 6.86849, 1.62143, 8.48614, -4.44089e-16, 1.62143, 0.785706, -1.62143, -1.62143, 1.92358, 1.62143, 0}, {0.462069, -5.96084e-17, -1.31177, -3.28242, -3.9353, -3.9353, 0.173581, -1.31177, 0, -1.72979, 2.81653e-16, 0, -3.77185, -1.62143, 5.24706, -2.26131, 5.24706, -1.62143, -0.785706, 1.62143, 1.62143, 1.56699, -2.22045e-16, 1.62143, 7.70486, -1.62143, -1.62143, 1.92358, 1.62143, 0}, {0.462069, -8.88178e-16, -1.31177, 1.09414, 1.31177, 1.31177, -0.520744, 3.9353, 0, -1.72979, 0, 0, -1.92358, -1.62143, 3.2565e-16, -5.94354, -5.24706, -6.86849, -2.63398, 1.62143, 6.86849, 1.56699, 1.11022e-15, 1.62143, 0.785706, -1.62143, -1.62143, 8.84273, 1.62143, 0}, {0.462069, 0, -1.31177, 1.09414, 1.31177, 1.31177, 0.173581, -1.31177, 0, 5.18937, 0, 0, -1.92358, -1.62143, 3.2565e-16, -1.56699, 0, -1.62143, -0.785706, 1.62143, 1.62143, -0.281287, 0, 6.86849, -3.59085, -6.86849, -6.86849, 1.22925, 6.86849, 0}, {-3.84404e-12, -3.9353, 2.80446, 1.44665, 0, 0.44688, -1.28111e-12, -1.31177, -0.870737, -1.44665, 0, 1.35868, -7.57474, -1.62143, -1.18439, -1.78815, 1.62143, 0.523916, 5.12412e-12, 5.24706, 5.71474, 7.57474, -1.62143, -5.95862, 2.22045e-16, 0, -2.23179, 1.78815, 1.62143, -0.603126}, {1.2812e-12, 1.31177, -0.934819, -4.33994, -8.15796e-16, -1.34064, -1.28111e-12, -1.31177, -0.870737, -1.44665, -1.24937e-16, 1.35868, -1.78815, -6.86849, 4.3424, -1.78815, 6.86849, 4.00686, 0, -1.43955e-16, 2.23179, 1.78815, -1.62143, -0.523916, 5.78659, 3.18053e-16, -7.66649, 1.78815, 1.62143, -0.603126}, {1.28053e-12, 1.31177, -0.934819, 1.44665, 0, 0.44688, 3.84227e-12, 3.9353, 2.61221, -1.44665, 0, 1.35868, -1.78815, -1.62143, 0.603126, -7.57474, 1.62143, -1.2636, -5.12124e-12, -5.24706, 5.97107, 1.78815, -1.62143, -0.523916, -4.44089e-16, 0, -2.23179, 7.57474, 1.62143, -6.03783}, {1.28098e-12, 1.31177, -0.934819, 1.44665, 0, 0.44688, -1.281e-12, -1.31177, -0.870737, 4.33994, 0, -4.07603, -1.78815, -1.62143, 0.603126, -1.78815, 1.62143, 0.523916, 0, -3.2565e-16, 2.23179, 1.78815, -6.86849, 3.21536, -5.78659, 0, -4.01931, 1.78815, 6.86849, 2.87982}, {5.36291, -5.36619, -5.37088, 3.64451, -0.373213, -0.376399, -1.85687, 0.190152, -1.41389, 0, -1.60567, 0, -16.8733, -0.256821, -0.242074, -2.20964, 0.226277, 2.21292, 11.9323, -3.20664, 5.19032, 2.20964, 6.1964, -2.21292, -4.50486, 2.44603, 0.465254, 2.29522, 1.74967, 1.74767}, {-1.78764, 1.78873, 1.79029, -10.9335, 1.11964, 1.1292, -1.85687, 0.190152, -1.41389, 0, -1.60567, 0, 4.85533, -8.90459, -8.90884, 5.21784, -0.53433, 7.8685, 4.50486, -2.44603, -0.465254, 2.20964, -0.226277, -2.21292, -4.50486, 8.8687, 0.465254, 2.29522, 1.74967, 1.74767}, {-1.78764, 1.78873, 1.79029, 3.64451, -0.373213, -0.376399, 5.57061, -0.570455, 4.24168, 0, -1.60567, 0, -2.29522, -1.74967, -1.74767, -16.7877, 1.71913, 3.71852, 11.6554, -9.60095, -7.62642, 2.20964, -0.226277, -2.21292, -4.50486, 2.44603, 0.465254, 2.29522, 8.17235, 1.74767}, {-1.78764, 1.78873, 1.79029, 3.64451, -0.373213, -0.376399, -1.85687, 0.190152, -1.41389, 0, 4.817, 0, -2.29522, -1.74967, -1.74767, -2.20964, 0.226277, 2.21292, 4.50486, -2.44603, -0.465254, 9.36019, -7.3812, -9.37409, -19.0829, 3.93889, 1.97085, 9.72271, 0.989068, 7.40324}, {-4.90664, -4.91093, -4.90664, 0.802238, -0.802728, -0.80343, -1.63555, -0.0313083, -1.63555, -0.802238, -0.80294, 0.80343, -6.22222, 2.17973, 2.18516, 1.03003, 1.03093, 3.01474, 6.54219, -1.85948, 6.54219, 2.17893, 2.18083, -6.22846, -3.78586e-14, 1.98471, 3.79696e-14, 3.01327, 1.03119, 1.02855}, {1.63555, 1.63698, 1.63555, -2.40672, 2.40819, 2.41029, -1.63555, -0.0313083, -1.63555, -0.802238, -0.80294, 0.80343, -9.55546, -7.57909, -7.57074, 7.57221, 1.15616, 9.55693, 3.71925e-14, -1.98471, -3.81917e-14, -1.03003, -1.03093, -3.01474, 3.20895, 5.19647, -3.21372, 3.01327, 1.03119, 1.02855}, {1.63555, 1.63698, 1.63555, 0.802238, -0.802728, -0.80343, 4.90664, 0.0939249, 4.90664, -0.802238, -0.80294, 0.80343, -3.01327, -1.03119, -1.02855, -2.17893, 4.24184, 6.22846, -6.54219, -8.53262, -6.54219, -1.03003, -1.03093, -3.01474, -3.78586e-14, 1.98471, 3.80806e-14, 6.22222, 4.24295, -2.18516}, {1.63555, 1.63698, 1.63555, 0.802238, -0.802728, -0.80343, -1.63555, -0.0313083, -1.63555, 2.40672, 2.40882, -2.41029, -3.01327, -1.03119, -1.02855, 1.03003, 1.03093, 3.01474, 3.73035e-14, -1.98471, -3.83027e-14, -7.57221, -7.57883, -9.55693, -3.20895, 5.19563, 3.21372, 9.55546, 1.15642, 7.57074}, {0.433524, 4.35281, -4.30748, -1.58383, 1.03002, -2.49725, 0.961132, -0.582294, -1.46836, 0.767201, 1.00321, 2.52978, 8.47164, -3.5998, 11.301, 0.769691, -0.553419, 4.90175, -4.85393, 4.84239, 5.91364, -3.83849, -3.45943, -15.0209, 1.0094, -2.51321, -0.0402101, -2.13634, -0.520284, -1.31199}, {-0.144508, -1.45094, 1.43583, 4.75148, -3.09006, 7.49174, 0.961132, -0.582294, -1.46836, 0.767201, 1.00321, 2.52978, 2.71437, 6.32404, -4.43132, -3.07484, 1.77576, 10.7752, -1.0094, 2.51321, 0.0402101, -0.769691, 0.553419, -4.90175, -2.0594, -6.52607, -10.1593, -2.13634, -0.520284, -1.31199}, {-0.144508, -1.45094, 1.43583, -1.58383, 1.03002, -2.49725, -2.8834, 1.74688, 4.40507, 0.767201, 1.00321, 2.52978, 2.13634, 0.520284, 1.31199, 7.10499, -4.6735, 14.8907, -0.431372, 8.31697, -5.70309, -0.769691, 0.553419, -4.90175, 1.0094, -2.51321, -0.0402101, -5.20514, -4.53314, -11.4311}, {-0.144508, -1.45094, 1.43583, -1.58383, 1.03002, -2.49725, 0.961132, -0.582294, -1.46836, -2.3016, -3.00964, -7.58933, 2.13634, 0.520284, 1.31199, 0.769691, -0.553419, 4.90175, -1.0094, 2.51321, 0.0402101, -0.191659, 6.35717, -10.6451, 7.3447, -6.63329, 9.94877, -5.98087, 1.80889, 4.56144}, {-5.22554, 3.98943, -3.78662, 0, 0, -1.80556, -0.198723, 1.94057, 0.386742, -1.54312, -0.61076, 0.156608, -2.15304, 1.64373, 7.89384, 0.245635, -2.39867, 1.75375, -1.11252, -8.51722, -3.58518, 5.92686, 4.84171, -2.38018, 1.90741, 0.754941, 2.03821, 2.15304, -1.64373, -0.671617}, {1.74185, -1.32981, 1.26221, 0, 0, 5.41667, -0.198723, 1.94057, 0.386742, -1.54312, -0.61076, 0.156608, -9.12042, 6.96297, -4.37721, 1.04052, -10.1609, 0.206785, -1.90741, -0.754941, -2.03821, -0.245635, 2.39867, -1.75375, 8.0799, 3.19798, 1.41178, 2.15304, -1.64373, -0.671617}, {1.74185, -1.32981, 1.26221, 0, 0, -1.80556, 0.596168, -5.82171, -1.16022, -1.54312, -0.61076, 0.156608, -2.15304, 1.64373, 0.671617, 0.245635, -2.39867, 8.97597, -8.87479, 4.5643, -7.08704, -0.245635, 2.39867, -1.75375, 1.90741, 0.754941, 2.03821, 8.32553, 0.799305, -1.29805}, {1.74185, -1.32981, 1.26221, 0, 0, -1.80556, -0.198723, 1.94057, 0.386742, 4.62937, 1.83228, -0.469823, -2.15304, 1.64373, 0.671617, 0.245635, -2.39867, 1.75375, -1.90741, -0.754941, -2.03821, -7.21302, 7.71791, -6.80258, 1.90741, 0.754941, 9.26043, 2.94793, -9.40601, -2.21858}, {2.47366, -6.0686, -0.0191747, -0.141226, -1.44665, 1.44665, 1.40644, 1.00594e-16, 2.53667e-16, -0.440661, -0.57622, -1.45304, 1.75867, 5.07434, -7.58264, -1.56389, 1.78815, -1.78815, -6.34501, -2.5004, -0.0079004, 3.32653, 0.516725, 7.60031, 0.719252, 2.5004, 0.0079004, -1.19377, 0.712247, 1.79605}, {-0.824552, 2.02287, 0.00639156, 0.423679, 4.33994, -4.33994, 1.40644, 3.01783e-16, 7.61e-16, -0.440661, -0.57622, -1.45304, 4.49197, -8.80371, -1.82162, -7.18964, 1.78815, -1.78815, -0.719252, -2.5004, -0.0079004, 1.56389, -1.78815, 1.78815, 2.48189, 4.80528, 5.82005, -1.19377, 0.712247, 1.79605}, {-0.824552, 2.02287, 0.00639156, -0.141226, -1.44665, 1.44665, -4.21932, 0, 0, -0.440661, -0.57622, -1.45304, 1.19377, -0.712247, -1.79605, -0.998983, 7.57474, -7.57474, 2.57896, -10.5919, -0.0334666, 1.56389, -1.78815, 1.78815, 0.719252, 2.5004, 0.0079004, 0.568875, 3.01713, 7.60821}, {-0.824552, 2.02287, 0.00639156, -0.141226, -1.44665, 1.44665, 1.40644, -3.01783e-16, -7.61e-16, 1.32198, 1.72866, 4.35912, 1.19377, -0.712247, -1.79605, -1.56389, 1.78815, -1.78815, -0.719252, -2.5004, -0.0079004, 4.8621, -9.87962, 1.76259, 1.28416, 8.28699, -5.77869, -6.81952, 0.712247, 1.79605}, {-5.82171, -0.596168, -7.61729, 0, 0, -2.34313, -0.61076, 1.54312, 1.54399, -1.32981, -1.74185, -1.73996, -2.39867, -0.245635, 9.13027, 0.754941, -1.90741, 0.987787, 0.799305, -8.32553, -11.2229, 4.5643, 8.87479, 5.97206, 1.64373, 2.15304, 5.04697, 2.39867, 0.245635, 0.242235}, {1.94057, 0.198723, 2.5391, 0, 0, 7.02938, -0.61076, 1.54312, 1.54399, -1.32981, -1.74185, -1.73996, -10.1609, -1.04052, -10.3986, 3.19798, -8.0799, -5.18817, -1.64373, -2.15304, -5.04697, -0.754941, 1.90741, -0.987787, 6.96297, 9.12042, 12.0068, 2.39867, 0.245635, 0.242235}, {1.94057, 0.198723, 2.5391, 0, 0, -2.34313, 1.83228, -4.62937, -4.63197, -1.32981, -1.74185, -1.73996, -2.39867, -0.245635, -0.242235, 0.754941, -1.90741, 10.3603, -9.40601, -2.94793, -15.2034, -0.754941, 1.90741, -0.987787, 1.64373, 2.15304, 5.04697, 7.71791, 7.21302, 7.20208}, {1.94057, 0.198723, 2.5391, 0, 0, -2.34313, -0.61076, 1.54312, 1.54399, 3.98943, 5.22554, 5.21989, -2.39867, -0.245635, -0.242235, 0.754941, -1.90741, 0.987787, -1.64373, -2.15304, -5.04697, -8.51722, 1.11252, -11.1442, 1.64373, 2.15304, 14.4195, 4.84171, -5.92686, -5.93372}, {7.02938, 8.88178e-16, -8.88178e-16, 1.54312, -1.54312, -0.61076, 2.54185, -0.198723, 1.94057, -1.74185, 1.74185, -1.32981, -5.18364, 8.0799, 3.19798, -5.0493, 2.15304, -1.64373, -10.413, 1.04052, -10.1609, 12.0167, -9.12042, 6.96297, 0.245635, -0.245635, 2.39867, -0.988857, -1.90741, -0.754941}, {-2.34313, 0, -4.44089e-16, -4.62937, 4.62937, 1.83228, 2.54185, -0.198723, 1.94057, -1.74185, 1.74185, -1.32981, 10.3614, 1.90741, 0.754941, -15.2167, 2.94793, -9.40601, -0.245635, 0.245635, -2.39867, 5.0493, -2.15304, 1.64373, 7.21302, -7.21302, 7.71791, -0.988857, -1.90741, -0.754941}, {-2.34313, 2.22045e-16, 0, 1.54312, -1.54312, -0.61076, -7.62554, 0.596168, -5.82171, -1.74185, 1.74185, -1.32981, 0.988857, 1.90741, 0.754941, -11.2218, 8.32553, 0.799305, 9.12687, 0.245635, -2.39867, 5.0493, -2.15304, 1.64373, 0.245635, -0.245635, 2.39867, 5.97853, -8.87479, 4.5643}, {-2.34313, 0, -2.22045e-16, 1.54312, -1.54312, -0.61076, 2.54185, -0.198723, 1.94057, 5.22554, -5.22554, 3.98943, 0.988857, 1.90741, 0.754941, -5.0493, 2.15304, -1.64373, -0.245635, 0.245635, -2.39867, 14.4218, -2.15304, 1.64373, -5.92686, 5.92686, 4.84171, -11.1562, -1.11252, -8.51722}, {9.45441, 8.88178e-16, 0, -1.41486, -1.85814, 1.41539, 2.77696, 3.64699, 0.373467, 1.78937, -1.78885, -1.78885, 11.3037, 9.72932, -7.41106, -1.68365, -2.21115, -2.21115, -10.6449, -19.0959, -1.9555, -5.47381, 9.36656, 9.36656, -0.46292, 4.50793, 0.461631, -5.64429, -2.29678, 1.74951}, {-3.15147, 8.88178e-16, 4.44089e-16, 4.24457, 5.57441, -4.24616, 2.77696, 3.64699, 0.373467, 1.78937, -1.78885, -1.78885, 18.2502, 2.29678, -1.74951, -12.7915, -16.7991, -3.70501, 0.46292, -4.50793, -0.461631, 1.68365, 2.21115, 2.21115, -7.62038, 11.6633, 7.61705, -5.64429, -2.29678, 1.74951}, {-3.15147, 4.44089e-16, 2.22045e-16, -1.41486, -1.85814, 1.41539, -8.33088, -10.941, -1.1204, 1.78937, -1.78885, -1.78885, 5.64429, 2.29678, -1.74951, 3.97577, 5.2214, -7.87269, 13.0688, -4.50793, -0.461631, 1.68365, 2.21115, 2.21115, -0.46292, 4.50793, 0.461631, -12.8018, 4.85864, 8.90493}, {-3.15147, -2.22045e-16, 0, -1.41486, -1.85814, 1.41539, 2.77696, 3.64699, 0.373467, -5.3681, 5.36656, 5.36656, 5.64429, 2.29678, -1.74951, -1.68365, -2.21115, -2.21115, 0.46292, -4.50793, -0.461631, 14.2895, 2.21115, 2.21115, 5.1965, 11.9405, -5.19992, -16.7521, -16.8847, 0.255645}, {-1.04981, -4.33994, -1.71772, -1.16436, 0, 0, 0.183612, -1.44665, 1.44665, 0.630806, -1.58777e-12, -2.01922, 5.6641, -1.78815, -0.707741, 1.21227, 1.78815, -1.78815, -1.39395, 5.78659, -8.28248, -3.73549, -1.78815, 9.86504, 0.659504, 1.96259e-12, 2.4959, -1.00668, 1.78815, 0.707741}, {0.349938, 1.44665, 0.572575, 3.49307, 0, 0, 0.183612, -1.44665, 1.44665, 0.630806, -1.5874e-12, -2.01922, -0.393077, -7.57474, -2.99804, 0.47782, 7.57474, -7.57474, -0.659504, -1.9625e-12, -2.4959, -1.21227, -1.78815, 1.78815, -1.86372, 8.31176e-12, 10.5728, -1.00668, 1.78815, 0.707741}, {0.349938, 1.44665, 0.572575, -1.16436, 0, 0, -0.550835, 4.33994, -4.33994, 0.630806, -1.58632e-12, -2.01922, 1.00668, -1.78815, -0.707741, 5.86969, 1.78815, -1.78815, -2.05926, -5.78659, -4.7862, -1.21227, -1.78815, 1.78815, 0.659504, 1.9608e-12, 2.4959, -3.5299, 1.78815, 8.78463}, {0.349938, 1.44665, 0.572575, -1.16436, 0, 0, 0.183612, -1.44665, 1.44665, -1.89242, 4.76004e-12, 6.05767, 1.00668, -1.78815, -0.707741, 1.21227, 1.78815, -1.78815, -0.659504, -1.9616e-12, -2.4959, -2.61202, -7.57474, -0.502145, 5.31693, 1.96124e-12, 2.4959, -1.74112, 7.57474, -5.07885}, {-5.36656, 5.36656, -5.36656, 1.85814, -0.190281, -1.41539, 0, 1.60567, 0, -3.64699, 0.373467, -0.373467, -11.9405, 3.20747, 5.19992, -2.29678, -1.74951, 1.74951, -2.21115, -6.19624, -2.21115, 16.8847, 0.255645, -0.255645, 2.21115, -0.226431, 2.21115, 4.50793, -2.44635, 0.461631}, {1.78885, -1.78885, 1.78885, -5.57441, 0.570843, 4.24616, 1.45374e-15, 1.60567, 1.48869e-16, -3.64699, 0.373467, -0.373467, -11.6633, 9.60176, -7.61705, -2.29678, -8.17219, 1.74951, -2.21115, 0.226431, -2.21115, 2.29678, 1.74951, -1.74951, 16.7991, -1.7203, 3.70501, 4.50793, -2.44635, 0.461631}, {1.78885, -1.78885, 1.78885, 1.85814, -0.190281, -1.41539, 0, -4.817, 0, -3.64699, 0.373467, -0.373467, -4.50793, 2.44635, -0.461631, -9.72932, -0.988391, 7.41106, -9.36656, 7.38185, -9.36656, 2.29678, 1.74951, -1.74951, 2.21115, -0.226431, 2.21115, 19.0959, -3.94022, 1.9555}, {1.78885, -1.78885, 1.78885, 1.85814, -0.190281, -1.41539, 0, 1.60567, 0, 10.941, -1.1204, 1.1204, -4.50793, 2.44635, -0.461631, -2.29678, -1.74951, 1.74951, -2.21115, 0.226431, -2.21115, -4.85864, 8.90493, -8.90493, -5.2214, 0.534693, 7.87269, 4.50793, -8.86902, 0.461631}, {-2.3518, -6.05767, 5.91882e-12, 0.531029, -0.572575, 1.44665, -0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -3.7495, 0.502145, -7.57474, -0.336326, 2.4959, -2.43872e-12, 0.386809, 5.07885, 7.57474, 4.56043, -2.4959, 2.43872e-12, 0.648932, 0.707741, -1.78815, 1.62538, 1.78815, 1.78815}, {0.783932, 2.01922, -1.97264e-12, -1.59309, 1.71772, -4.33994, -0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -4.76111, -9.86504, -1.78815, 0.699414, 8.28248, 5.78659, -0.648932, -0.707741, 1.78815, 0.336326, -2.4959, 2.43827e-12, 4.87303, 0.707741, -1.78815, 1.62538, 1.78815, 1.78815}, {0.783932, 2.01922, -1.9722e-12, 0.531029, -0.572575, 1.44665, 0.776805, 4.33994, 4.33994, -1.05603, 0, 0, -1.62538, -1.78815, -1.78815, -2.46044, 4.7862, -5.78659, -3.78466, -8.78463, 1.78815, 0.336326, -2.4959, 2.43783e-12, 0.648932, 0.707741, -1.78815, 5.84948, 1.78815, 1.78815}, {0.783932, 2.01922, -1.97309e-12, 0.531029, -0.572575, 1.44665, -0.258935, -1.44665, -1.44665, 3.16808, 0, 0, -1.62538, -1.78815, -1.78815, -0.336326, 2.4959, -2.43894e-12, -0.648932, -0.707741, 1.78815, -2.7994, -10.5728, 1.03313e-11, -1.47518, 2.99804, -7.57474, 2.66112, 7.57474, 7.57474}, {-5.36656, -5.36656, -5.36656, 2.778, -3.64699, -0.373467, -1.41539, 1.85814, -1.41539, -3.15147, 0, 0, -16.7569, 16.8847, -0.255645, -1.68428, 2.21115, 2.21115, 5.19992, -11.9405, 5.19992, 14.2902, -2.21115, -2.21115, 0.461631, 4.50793, 0.461631, 5.64494, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, -8.334, 10.941, 1.1204, -1.41539, 1.85814, -1.41539, -3.15147, 0, 0, -12.8004, -4.85864, -8.90493, 3.97726, -5.2214, 7.87269, -0.461631, -4.50793, -0.461631, 1.68428, -2.21115, -2.21115, 13.0675, 4.50793, 0.461631, 5.64494, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 2.778, -3.64699, -0.373467, 4.24616, -5.57441, 4.24616, -3.15147, 0, 0, -5.64494, 2.29678, -1.74951, -12.7963, 16.7991, 3.70501, -7.61705, -11.6633, -7.61705, 1.68428, -2.21115, -2.21115, 0.461631, 4.50793, 0.461631, 18.2508, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 2.778, -3.64699, -0.373467, -1.41539, 1.85814, -1.41539, 9.45441, 0, 0, -5.64494, 2.29678, -1.74951, -1.68428, 2.21115, 2.21115, -0.461631, -4.50793, -0.461631, -5.47113, -9.36656, -9.36656, -10.6504, 19.0959, 1.9555, 11.3065, -9.72932, 7.41106}, {0.408534, -3.98943, 5.22554, 1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 0.198723, -1.60567, 0, 0, -7.91157, -4.84171, -5.92686, -2.15304, 1.64373, -2.15304, -0.872199, 8.51722, 1.11252, 8.57571, -1.64373, 2.15304, 0.0773091, -0.754941, -1.90741, 1.73908, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, -4.62937, -1.83228, -4.62937, 0.198723, -1.94057, 0.198723, -1.60567, 0, 0, -1.19437, -7.71791, 7.21302, -2.94793, 9.40601, -2.94793, -0.0773091, 0.754941, 1.90741, 2.15304, -1.64373, 2.15304, 6.49998, -0.754941, -1.90741, 1.73908, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, 1.54312, 0.61076, 1.54312, -0.596168, 5.82171, -0.596168, -1.60567, 0, 0, -1.73908, -2.39867, 0.245635, -8.32553, -0.799305, -8.32553, 0.467403, -4.5643, 8.87479, 2.15304, -1.64373, 2.15304, 0.0773091, -0.754941, -1.90741, 8.16175, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, 1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 0.198723, 4.817, 0, 0, -1.73908, -2.39867, 0.245635, -2.15304, 1.64373, -2.15304, -0.0773091, 0.754941, 1.90741, 2.69775, -6.96297, 9.12042, -6.09519, -3.19798, -8.0799, 0.94419, 10.1609, -1.04052}, {-1.29949, 3.9353, 2.21079, 1.70046, 1.31177, -0.409533, -0.573592, 0, 1.62837, -1.56004, 0, -0.481907, -9.43917, -5.24706, 3.05524, -1.39289, -1.62143, -1.50656, 2.46795, 1.62143, -7.61536, 7.63304, 1.62143, 3.43419, -0.173579, -1.62143, 1.10188, 2.63731, 0, -1.4171}, {0.433164, -1.31177, -0.736929, -5.10139, -3.9353, 1.2286, -0.573592, 0, 1.62837, -1.56004, 0, -0.481907, -4.36997, 5.24706, 4.36482, 0.901477, -1.62143, -8.02004, 0.173579, 1.62143, -1.10188, 1.39289, 1.62143, 1.50656, 6.06657, -1.62143, 3.02951, 2.63731, 0, -1.4171}, {0.433164, -1.31177, -0.736929, 1.70046, 1.31177, -0.409533, 1.72078, 0, -4.88511, -1.56004, 0, -0.481907, -2.63731, 3.2565e-16, 1.4171, -8.19475, -6.86849, 0.131566, -1.55908, 6.86849, 1.84584, 1.39289, 1.62143, 1.50656, -0.173579, -1.62143, 1.10188, 8.87746, 0, 0.510523}, {0.433164, -1.31177, -0.736929, 1.70046, 1.31177, -0.409533, -0.573592, 0, 1.62837, 4.68011, 0, 1.44572, -2.63731, 3.2565e-16, 1.4171, -1.39289, -1.62143, -1.50656, 0.173579, 1.62143, -1.10188, -0.339765, 6.86849, 4.45428, -6.97544, -6.86849, 2.74001, 4.93168, 0, -7.93058}, {10.941, 1.1204, -5.07489, 1.78885, 1.78885, -0.204309, 0, 0, -2.39759, 1.85814, -1.41539, 0.910268, -4.85864, -8.90493, -1.02119, -2.21115, -2.21115, 3.21612, 4.50793, 0.461631, 10.463, -5.2214, 7.87269, -6.8572, -4.50793, -0.461631, -0.872613, -2.29678, 1.74951, 1.83843}, {-3.64699, -0.373467, 1.69163, -5.36656, -5.36656, 0.612928, 0, 0, -2.39759, 1.85814, -1.41539, 0.910268, 16.8847, -0.255645, -8.60495, -2.21115, -2.21115, 12.8065, 4.50793, 0.461631, 0.872613, 2.21115, 2.21115, -3.21612, -11.9405, 5.19992, -4.51368, -2.29678, 1.74951, 1.83843}, {-3.64699, -0.373467, 1.69163, 1.78885, 1.78885, -0.204309, 0, 0, 7.19277, 1.85814, -1.41539, 0.910268, 2.29678, -1.74951, -1.83843, -9.36656, -9.36656, 4.03336, 19.0959, 1.9555, -5.89391, 2.21115, 2.21115, -3.21612, -4.50793, -0.461631, -0.872613, -9.72932, 7.41106, -1.80264}, {-3.64699, -0.373467, 1.69163, 1.78885, 1.78885, -0.204309, 0, 0, -2.39759, -5.57441, 4.24616, -2.7308, 2.29678, -1.74951, -1.83843, -2.21115, -2.21115, 3.21612, 4.50793, 0.461631, 0.872613, 16.7991, 3.70501, -9.98265, -11.6633, -7.61705, -0.0553752, -2.29678, 1.74951, 11.4288}, {-5.36656, 5.36656, -5.36656, 3.86512e-15, 3.15147, 1.39953e-15, -3.15147, 0, 0, 1.36261, -1.36261, -1.78885, -2.21115, -14.2902, -2.21115, 3.89543, -3.89543, -1.72992e-15, 14.2902, 2.21115, -2.21115, -9.34589, 9.34589, 7.15542, -1.68428, -2.21115, 2.21115, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, -1.0595e-14, -9.45441, 4.1986e-15, -3.15147, 0, 0, 1.36261, -1.36261, -1.78885, -9.36656, 5.47113, -9.36656, 16.5013, -3.89543, 1.72992e-15, 1.68428, 2.21115, -2.21115, -3.89543, 3.89543, -2.17401e-15, -7.13474, 3.23931, 9.36656, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 9.45441, 0, 0, 1.36261, -1.36261, -1.78885, -2.21115, -1.68428, -2.21115, 3.89543, -16.5013, 0, -5.47113, 9.36656, -9.36656, -3.89543, 3.89543, -4.44089e-16, -1.68428, -2.21115, 2.21115, -3.23931, 7.13474, 9.36656}, {1.78885, -1.78885, 1.78885, -1.06606e-15, 3.15147, 1.39953e-15, -3.15147, 0, 0, -4.08784, 4.08784, 5.36656, -2.21115, -1.68428, -2.21115, 3.89543, -3.89543, -1.72992e-15, 1.68428, 2.21115, -2.21115, -11.0508, 11.0508, -7.15542, -1.68428, -14.817, 2.21115, 14.817, 1.68428, 2.21115}, {-3.13871, 2.39624, 3.14224, -1.3586, 1.03722, -0.984492, 1.05172, 0.985921, 1.29286, -0.739357, -1.22439, 0.739047, 5.8205, -4.44365, 6.44954, 0.379324, -2.50074, -0.381162, -6.8001, -4.17504, -5.47482, 2.5781, 7.39832, -2.57503, 2.59322, 0.231359, 0.303387, -0.386102, 0.294769, -2.51157}, {1.04624, -0.798747, -1.04741, 4.0758, -3.11166, 2.95348, 1.05172, 0.985921, 1.29286, -0.739357, -1.22439, 0.739047, -3.79884, 2.90022, 6.70123, -3.82756, -6.44442, -5.5526, -2.59322, -0.231359, -0.303387, -0.379324, 2.50074, 0.381162, 5.55064, 5.12894, -2.6528, -0.386102, 0.294769, -2.51157}, {1.04624, -0.798747, -1.04741, -1.3586, 1.03722, -0.984492, -3.15516, -2.95776, -3.87858, -0.739357, -1.22439, 0.739047, 0.386102, -0.294769, 2.51157, 5.81372, -6.64962, 3.55681, -6.77816, 2.96363, 3.88627, -0.379324, 2.50074, 0.381162, 2.59322, 0.231359, 0.303387, 2.57132, 5.19235, -5.46776}, {1.04624, -0.798747, -1.04741, -1.3586, 1.03722, -0.984492, 1.05172, 0.985921, 1.29286, 2.21807, 3.67318, -2.21714, 0.386102, -0.294769, 2.51157, 0.379324, -2.50074, -0.381162, -2.59322, -0.231359, -0.303387, -4.56427, 5.69573, 4.57082, 8.02762, -3.91752, 4.24135, -4.59298, -3.64891, -7.68301}, {3.49307, 0, -5.19009e-16, 0.460877, 0.572575, 1.44665, -0.183612, 1.44665, -1.44665, 0.88709, -2.01922, 1.97395e-12, -0.973962, -2.99804, -7.57474, -0.342719, -2.4959, 2.44027e-12, 2.40063, -7.57474, 7.57474, -3.20564, 10.5728, -1.03361e-11, -1.66618, 1.78815, -1.78815, -0.869547, 0.707741, 1.78815}, {-1.16436, 0, 2.63061e-17, -1.38263, -1.71772, -4.33994, -0.183612, 1.44665, -1.44665, 0.88709, -2.01922, 1.97018e-12, 5.52697, -0.707741, -1.78815, 0.391727, -8.28248, 5.78659, 1.66618, -1.78815, 1.78815, 0.342719, 2.4959, -2.43516e-12, -5.21454, 9.86504, -1.78815, -0.869547, 0.707741, 1.78815}, {-1.16436, 0, 1.0874e-16, 0.460877, 0.572575, 1.44665, 0.550835, -4.33994, 4.33994, 0.88709, -2.01922, 1.97254e-12, 0.869547, -0.707741, -1.78815, -2.18623, -4.7862, -5.78659, 6.3236, -1.78815, 1.78815, 0.342719, 2.4959, -2.43827e-12, -1.66618, 1.78815, -1.78815, -4.41791, 8.78463, 1.78815}, {-1.16436, 0, 2.47018e-16, 0.460877, 0.572575, 1.44665, -0.183612, 1.44665, -1.44665, -2.66127, 6.05767, -5.92185e-12, 0.869547, -0.707741, -1.78815, -0.342719, -2.4959, 2.44027e-12, 1.66618, -1.78815, 1.78815, 5.00014, 2.4959, -2.44081e-12, -3.50969, -0.502145, -7.57474, -0.135101, -5.07885, 7.57474}, {-4.817, 1.77636e-15, 1.9984e-15, -1.78885, 1.78885, -1.78885, -0.190167, 1.85702, 1.41407, 0.373353, -3.64588, 0.374783, 7.38185, -9.36656, 9.36656, 2.4462, -4.50655, 0.463257, -0.988987, -9.72349, -7.40418, -3.93962, 19.0901, -1.96239, 1.74966, 2.29541, 1.74789, -0.226431, 2.21115, -2.21115}, {1.60567, -4.44089e-16, -1.55431e-15, 5.36656, -5.36656, 5.36656, -0.190167, 1.85702, 1.41407, 0.373353, -3.64588, 0.374783, -6.19624, -2.21115, 2.21115, 3.20687, -11.9346, -5.19303, -1.74966, -2.29541, -1.74789, -2.4462, 4.50655, -0.463257, 0.256242, 16.8789, 0.248757, -0.226431, 2.21115, -2.21115}, {1.60567, 8.88178e-16, 0, -1.78885, 1.78885, -1.78885, 0.570501, -5.57107, -4.24221, 0.373353, -3.64588, 0.374783, 0.226431, -2.21115, 2.21115, 9.60162, -11.662, 7.61867, -8.17233, -2.29541, -1.74789, -2.4462, 4.50655, -0.463257, 1.74966, 2.29541, 1.74789, -1.71984, 16.7947, -3.71028}, {1.60567, -3.10862e-15, 1.11022e-16, -1.78885, 1.78885, -1.78885, -0.190167, 1.85702, 1.41407, -1.12006, 10.9376, -1.12435, 0.226431, -2.21115, 2.21115, 2.4462, -4.50655, 0.463257, -1.74966, -2.29541, -1.74789, -8.86888, 4.50655, -0.463257, 8.90507, -4.86001, 8.90331, 0.534237, -5.21694, -7.86743}, {-9.76996e-15, 1.33227e-14, -7.02938, 1.78885, -6.92972e-12, 0.00253498, -1.78885, 2.33948, -2.34566, 0, -2.33948, 0, -9.36656, 3.62896e-11, -2.90954, 3.9968e-15, -2.89175, 2.89626, 9.36656, -12.2497, 9.38578, -3.9968e-15, 12.2497, -2.89626, -2.21115, 2.89175, -0.00313341, 2.21115, -8.57092e-12, 2.8994}, {-1.9984e-15, 8.88178e-16, 2.34313, -5.36656, 2.07891e-11, -0.00760494, -1.78885, 2.33948, -2.34566, 0, -2.33948, 0, -2.21115, 8.55849e-12, -12.2719, 7.15542, -12.2497, 12.2789, 2.21115, -2.89175, 0.00313341, 2.66454e-15, 2.89175, -2.89626, -2.21115, 12.2497, -0.00313341, 2.21115, -8.56426e-12, 2.8994}, {4.21885e-15, -1.77636e-15, 2.34313, 1.78885, -6.9266e-12, 0.00253498, 5.36656, -7.01844, 7.03698, 0, -2.33948, 0, -2.21115, 8.56382e-12, -2.8994, -7.15542, -2.89175, 2.88612, 2.21115, -2.89175, -9.36937, -5.32907e-15, 2.89175, -2.89626, -2.21115, 2.89175, -0.00313341, 2.21115, 9.35791, 2.8994}, {0, 0, 2.34313, 1.78885, -6.92763e-12, 0.00253498, -1.78885, 2.33948, -2.34566, 0, 7.01844, 0, -2.21115, 8.56293e-12, -2.8994, 0, -2.89175, 2.89626, 2.21115, -2.89175, 0.00313341, 0, 2.89175, -12.2688, -9.36656, 2.89175, -0.0132733, 9.36656, -9.35791, 12.282}, {-2.1843e-11, 2.07647e-11, 5.36656, -2.34313, 0, 0, 0, 2.34313, 0, 2.34313, -2.34313, 1.78885, 12.2688, 8.55538e-12, 2.21115, 2.89626, -2.89626, 0, -8.99991e-12, -12.2688, 2.21115, -12.2688, 12.2688, -7.15542, 8.99991e-12, 2.89626, -2.21115, -2.89626, -8.55538e-12, -2.21115}, {7.27862e-12, -6.92069e-12, -1.78885, 7.02938, 0, 0, -1.36297e-15, 2.34313, -1.04056e-15, 2.34313, -2.34313, 1.78885, 2.89626, 3.62377e-11, 9.36656, 2.89626, -12.2688, 5.44843e-15, -8.99503e-12, -2.89626, 2.21115, -2.89626, 2.89626, -8.4211e-16, -9.3725, 12.2688, -9.36656, -2.89626, -8.55449e-12, -2.21115}, {7.2804e-12, -6.91935e-12, -1.78885, -2.34313, 0, 0, 0, -7.02938, 0, 2.34313, -2.34313, 1.78885, 2.89626, 8.55271e-12, 2.21115, 12.2688, -2.89626, 0, -3.81206e-11, -2.89626, 9.36656, -2.89626, 2.89626, 4.44089e-16, 8.99902e-12, 2.89626, -2.21115, -12.2688, 9.3725, -9.36656}, {7.27596e-12, -6.91802e-12, -1.78885, -2.34313, 0, 0, 0, 2.34313, 0, -7.02938, 7.02938, -5.36656, 2.89626, 8.55138e-12, 2.21115, 2.89626, -2.89626, 0, -8.99325e-12, -2.89626, 2.21115, -2.89626, 2.89626, 7.15542, 9.3725, 2.89626, -2.21115, -2.89626, -9.3725, -2.21115}, {6.33782, 3.11659, -8.32035, 1.25748, 1.89399, 2.48645, -0.601124, 0.601124, -3.34812, 1.45625, -1.45625, -1.91178, -3.97294, -8.63294, -16.4474, -0.811303, -3.08413, 1.06509, 5.75885, -1.86342, 14.1028, -5.01369, 8.90912, 6.58202, -3.35435, -0.541075, -0.71033, -1.05699, 1.05699, 6.50159}, {-2.11261, -1.03886, 2.77345, -3.77244, -5.68196, -7.45934, -0.601124, 0.601124, -3.34812, 1.45625, -1.45625, -1.91178, 9.50741, 3.09846, -17.5954, 1.59319, -5.48862, 14.4576, 3.35435, 0.541075, 0.71033, 0.811303, 3.08413, -1.06509, -9.17934, 5.28392, 6.93678, -1.05699, 1.05699, 6.50159}, {-2.11261, -1.03886, 2.77345, 1.25748, 1.89399, 2.48645, 1.80337, -1.80337, 10.0444, 1.45625, -1.45625, -1.91178, 1.05699, -1.05699, -6.50159, -5.84123, -10.6601, -8.8807, 11.8048, 4.69653, -10.3835, 0.811303, 3.08413, -1.06509, -3.35435, -0.541075, -0.71033, -6.88198, 6.88198, 14.1487}, {-2.11261, -1.03886, 2.77345, 1.25748, 1.89399, 2.48645, -0.601124, 0.601124, -3.34812, -4.36874, 4.36874, 5.73533, 1.05699, -1.05699, -6.50159, -0.811303, -3.08413, 1.06509, 3.35435, 0.541075, 0.71033, 9.26172, 7.23958, -12.1589, -8.38428, -8.11702, -10.6561, 1.34751, -1.34751, 19.8941}, {-4.24616, -5.57441, -4.24476, 0.373467, -3.64699, -2.77708, -1.78885, 1.78885, -1.78885, 0, 0, 3.15102, -3.70501, 16.7991, 12.7921, 1.74951, 2.29678, 5.64381, 7.61705, -11.6633, 7.61763, -1.74951, -2.29678, -18.2479, -0.461631, 4.50793, -0.462209, 2.21115, -2.21115, -1.68373}, {1.41539, 1.85814, 1.41492, -1.1204, 10.941, 8.33125, -1.78885, 1.78885, -1.78885, 1.39933e-15, -1.39933e-15, 3.15102, -7.87269, -5.2214, -3.97595, 8.90493, -4.85864, 12.7992, 0.461631, -4.50793, 0.462209, -1.74951, -2.29678, -5.64381, -0.461631, 4.50793, -13.0663, 2.21115, -2.21115, -1.68373}, {1.41539, 1.85814, 1.41492, 0.373467, -3.64699, -2.77708, 5.36656, -5.36656, 5.36656, 0, 0, 3.15102, -2.21115, 2.21115, 1.68373, 0.255645, 16.8847, 16.7521, -5.19992, -11.9405, -5.19747, -1.74951, -2.29678, -5.64381, -0.461631, 4.50793, -0.462209, 2.21115, -2.21115, -14.2878}, {1.41539, 1.85814, 1.41492, 0.373467, -3.64699, -2.77708, -1.78885, 1.78885, -1.78885, 0, 0, -9.45305, -2.21115, 2.21115, 1.68373, 1.74951, 2.29678, 5.64381, 0.461631, -4.50793, 0.462209, -7.41106, -9.72932, -11.3035, -1.9555, 19.0959, 10.6461, 9.36656, -9.36656, 5.47169}, {2.81917, 4.24616, 5.57441, -1.67083, -0.373467, 3.64699, 0.18745, 1.78885, -1.78885, 2.4231, 0, 0, 9.91012, 3.70501, -16.7991, 1.83355, -1.74951, -2.29678, 0.18006, -7.61705, 11.6633, -11.526, 1.74951, 2.29678, -0.929861, 0.461631, -4.50793, -3.22682, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, 5.01248, 1.1204, -10.941, 0.18745, 1.78885, -1.78885, 2.4231, -1.07607e-15, 1.07607e-15, 6.98571, 7.87269, 5.2214, 1.08375, -8.90493, 4.85864, 0.929861, -0.461631, 4.50793, -1.83355, 1.74951, 2.29678, -10.6223, 0.461631, -4.50793, -3.22682, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, -1.67083, -0.373467, 3.64699, -0.56235, -5.36656, 5.36656, 2.4231, 0, 0, 3.22682, 2.21115, -2.21115, 8.51686, -0.255645, -16.8847, 4.68875, 5.19992, 11.9405, -1.83355, 1.74951, 2.29678, -0.929861, 0.461631, -4.50793, -12.9192, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, -1.67083, -0.373467, 3.64699, 0.18745, 1.78885, -1.78885, -7.2693, 0, 0, 3.22682, 2.21115, -2.21115, 1.83355, -1.74951, -2.29678, 0.929861, -0.461631, 4.50793, 1.92534, 7.41106, 9.72932, 5.75345, 1.9555, -19.0959, -3.97662, -9.36656, 9.36656}, {-3.55271e-15, -7.99361e-15, -9.45441, -3.15147, 0, 0, 1.78937, -1.78885, -1.78885, 1.3621, 1.78885, -1.36261, 16.5013, -3.55271e-15, -3.89543, 1.68365, 2.21115, 2.21115, -9.36924, 9.36656, 5.47113, -7.13206, -9.36656, 3.23931, 2.21178, -2.21115, 1.68428, -3.89543, 3.55271e-15, 3.89543}, {-2.22045e-16, 2.88658e-15, 3.15147, 9.45441, 0, 0, 1.78937, -1.78885, -1.78885, 1.3621, 1.78885, -1.36261, 3.89543, -1.42109e-14, -16.5013, -5.47381, 9.36656, 9.36656, -2.21178, 2.21115, -1.68428, -1.68365, -2.21115, -2.21115, -3.23663, -9.36656, 7.13474, -3.89543, 3.55271e-15, 3.89543}, {2.22045e-16, 0, 3.15147, -3.15147, 0, 0, -5.3681, 5.36656, 5.36656, 1.3621, 1.78885, -1.36261, 3.89543, 0, -3.89543, 14.2895, 2.21115, 2.21115, -2.21178, 2.21115, -14.2902, -1.68365, -2.21115, -2.21115, 2.21178, -2.21115, 1.68428, -9.34384, -7.15542, 9.34589}, {8.88178e-16, 1.55431e-15, 3.15147, -3.15147, 0, 0, 1.78937, -1.78885, -1.78885, -4.08631, -5.36656, 4.08784, 3.89543, -2.22045e-15, -3.89543, 1.68365, 2.21115, 2.21115, -2.21178, 2.21115, -1.68428, -1.68365, -2.21115, -14.817, 14.8177, -2.21115, 1.68428, -11.0529, 7.15542, 11.0508}, {-5.22583, 5.22504, 3.98456, 2.34612, 2.92755e-15, 1.19114e-15, -2.54361, 0.198607, 1.93944, -1.54445, 1.54307, -0.611252, -14.4376, 2.15284, 1.64173, 0.244118, -0.245492, -2.39728, 11.1654, 1.11292, -8.51331, 5.93368, -5.9268, 4.84229, -0.990917, -1.90734, 0.755549, 5.05312, -2.15284, -1.64173}, {1.74194, -1.74168, -1.32819, -7.03835, -2.34918e-15, 4.45681e-15, -2.54361, 0.198607, 1.93944, -1.54445, 1.54307, -0.611252, -12.0209, 9.11956, 6.95448, 10.4186, -1.03992, -10.155, 0.990917, 1.90734, -0.755549, -0.244118, 0.245492, 2.39728, 5.18688, -8.07964, 3.20056, 5.05312, -2.15284, -1.64173}, {1.74194, -1.74168, -1.32819, 2.34612, 0, 0, 7.63084, -0.595821, -5.81832, -1.54445, 1.54307, -0.611252, -5.05312, 2.15284, 1.64173, -9.14035, -0.245492, -2.39728, -5.97686, 8.87406, 4.5572, -0.244118, 0.245492, 2.39728, -0.990917, -1.90734, 0.755549, 11.2309, -8.32513, 0.803277}, {1.74194, -1.74168, -1.32819, 2.34612, -8.98735e-16, 3.56012e-16, -2.54361, 0.198607, 1.93944, 4.63335, -4.62922, 1.83376, -5.05312, 2.15284, 1.64173, 0.244118, -0.245492, -2.39728, 0.990917, 1.90734, -0.755549, -7.21189, 7.21221, 7.71003, -10.3754, -1.90734, 0.755549, 15.2276, -2.94726, -9.39949}, {-9.45441, 1.33227e-14, -1.06581e-14, -1.78937, -1.78885, -1.78885, -1.3621, 1.78885, -1.36261, 0, 0, 3.15147, 5.47381, 9.36656, 9.36656, 3.89543, -5.32907e-15, 3.89543, 3.23663, -9.36656, 7.13474, -3.89543, 5.32907e-15, -16.5013, 2.21178, 2.21115, -1.68428, 1.68365, -2.21115, -2.21115}, {3.15147, 2.7318e-15, 0, 5.3681, 5.36656, 5.36656, -1.3621, 1.78885, -1.36261, 1.06566e-15, -1.39953e-15, 3.15147, -14.2895, 2.21115, 2.21115, 9.34384, -7.15542, 9.34589, -2.21178, -2.21115, 1.68428, -3.89543, -1.33227e-15, -3.89543, 2.21178, 2.21115, -14.2902, 1.68365, -2.21115, -2.21115}, {3.15147, 0, 2.22045e-15, -1.78937, -1.78885, -1.78885, 4.08631, -5.36656, 4.08784, 0, 0, 3.15147, -1.68365, 2.21115, 2.21115, 11.0529, 7.15542, 11.0508, -14.8177, -2.21115, 1.68428, -3.89543, 0, -3.89543, 2.21178, 2.21115, -1.68428, 1.68365, -2.21115, -14.817}, {3.15147, 0, 0, -1.78937, -1.78885, -1.78885, -1.3621, 1.78885, -1.36261, 0, 0, -9.45441, -1.68365, 2.21115, 2.21115, 3.89543, 0, 3.89543, -2.21178, -2.21115, 1.68428, -16.5013, 0, -3.89543, 9.36924, 9.36656, 5.47113, 7.13206, -9.36656, 3.23931}, {-7.03835, 0, -2.66454e-15, -2.34612, 2.34348, -1.78885, -1.03933e-11, 0.00114147, 1.78885, 0, -2.34462, 0, 9.38447, -12.2706, 9.36656, 2.89996, -2.89811, 1.33227e-15, -2.89996, -0.00597681, -9.36656, -2.89996, 12.2766, -1.33227e-15, 2.89996, 0.00141093, 2.21115, 1.28469e-11, 2.8967, -2.21115}, {2.34612, -3.9968e-15, 0, 7.03835, -7.03044, 5.36656, -1.03933e-11, 0.00114147, 1.78885, 0, -2.34462, 0, -9.38447, -2.8967, 2.21115, 2.89996, -2.90268, -7.15542, -2.89996, -0.00141093, -2.21115, -2.89996, 2.89811, 0, 2.89996, 9.37989, 2.21115, 1.28469e-11, 2.8967, -2.21115}, {2.34612, -1.77636e-15, 0, -2.34612, 2.34348, -1.78885, 3.11847e-11, -0.00342441, -5.36656, 0, -2.34462, 0, -1.28494e-11, -2.8967, 2.21115, 12.2844, -12.272, 7.15542, -12.2844, -0.00141093, -2.21115, -2.89996, 2.89811, 0, 2.89996, 0.00141093, 2.21115, 1.28488e-11, 12.2752, -2.21115}, {2.34612, 2.66454e-15, 0, -2.34612, 2.34348, -1.78885, -1.03918e-11, 0.00114147, 1.78885, 0, 7.03386, 0, -1.28455e-11, -2.8967, 2.21115, 2.89996, -2.89811, 0, -2.89996, -0.00141093, -2.21115, -12.2844, 2.89811, 0, 12.2844, -9.37251, 9.36656, 5.4412e-11, 2.89213, -9.36656}, {-4.44089e-16, 0, 5.41667, 2.01922, -1.97048e-12, 0.623753, -1.44665, -1.44665, 0.584061, -0.572575, 1.44665, 0.597742, -10.5728, 1.03177e-11, -1.03422, -0.707741, 1.78815, -1.49294, 7.57474, 7.57474, -0.826394, 2.99804, -7.57474, -0.898027, -1.78815, -1.78815, -1.50985, 2.4959, -2.43583e-12, -1.46079}, {-1.11022e-16, 2.22045e-16, -1.80556, -6.05767, 5.9153e-12, -1.87126, -1.44665, -1.44665, 0.584061, -0.572575, 1.44665, 0.597742, -2.4959, 2.43716e-12, 8.68301, 5.07885, 7.57474, -3.82918, 1.78815, 1.78815, 1.50985, 0.707741, -1.78815, 1.49294, 0.502145, -7.57474, -3.90082, 2.4959, -2.43716e-12, -1.46079}, {1.11022e-16, 0, -1.80556, 2.01922, -1.97103e-12, 0.623753, 4.33994, 4.33994, -1.75218, -0.572575, 1.44665, 0.597742, -2.4959, 2.43627e-12, 1.46079, -8.78463, 1.78815, -3.98795, 1.78815, 1.78815, 8.73207, 0.707741, -1.78815, 1.49294, -1.78815, -1.78815, -1.50985, 4.7862, -5.78659, -3.85176}, {-1.11022e-16, 2.22045e-16, -1.80556, 2.01922, -1.97085e-12, 0.623753, -1.44665, -1.44665, 0.584061, 1.71772, -4.33994, -1.79323, -2.4959, 2.43583e-12, 1.46079, -0.707741, 1.78815, -1.49294, 1.78815, 1.78815, 1.50985, 0.707741, -1.78815, 8.71516, -9.86504, -1.78815, -4.00486, 8.28248, 5.78659, -3.79703}, {8.56414, 1.25642, -1.25642, 2.63957, -0.971716, -0.633952, 1.54777, 0.0578944, 1.54777, -1.33263, 1.33263, -1.33263, -10.2923, 5.60564, 2.80174, -5.17584, 1.12955, -1.12955, -4.57563, 0.214536, -8.62192, 10.5064, -6.46006, 6.46006, -1.61547, -0.446113, 2.43083, -0.265934, -1.71878, -0.265934}, {-2.85471, -0.418807, 0.418807, -7.91871, 2.91515, 1.90186, 1.54777, 0.0578944, 1.54777, -1.33263, 1.33263, -1.33263, 11.6848, 3.39401, -1.4093, -11.3669, 0.897968, -7.32064, 1.61547, 0.446113, -2.43083, 5.17584, -1.12955, 1.12955, 3.71505, -5.77663, 7.76134, -0.265934, -1.71878, -0.265934}, {-2.85471, -0.418807, 0.418807, 2.63957, -0.971716, -0.633952, -4.64332, -0.173683, -4.64332, -1.33263, 1.33263, -1.33263, 0.265934, 1.71878, 0.265934, -15.7341, 5.01641, 1.40626, 13.0343, 2.12134, -4.10606, 5.17584, -1.12955, 1.12955, -1.61547, -0.446113, 2.43083, 5.06458, -7.0493, 5.06458}, {-2.85471, -0.418807, 0.418807, 2.63957, -0.971716, -0.633952, 1.54777, 0.0578944, 1.54777, 3.99789, -3.99789, 3.99789, 0.265934, 1.71878, 0.265934, -5.17584, 1.12955, -1.12955, 1.61547, 0.446113, -2.43083, 16.5947, 0.545684, -0.545684, -12.1737, 3.44075, 4.96664, -6.45703, -1.95036, -6.45703}, {-0.339403, 0.339403, -5.15641, -0.164984, -1.44068, -0.164984, 1.07377, 0.531894, -0.531894, -1.02192, 1.02192, -1.02192, 0.724024, 7.68336, -1.26069, -1.12333, 1.12333, 0.861388, -5.7622, -2.64519, 0.660475, 5.21103, -5.21103, 3.22631, 1.4671, 0.517615, 1.4671, -0.0640894, -1.92063, 1.92063}, {0.113134, -0.113134, 1.7188, 0.494951, 4.32205, 0.494951, 1.07377, 0.531894, -0.531894, -1.02192, 1.02192, -1.02192, -0.388448, 2.37316, -8.79583, -5.41842, -1.00425, 2.98896, -1.4671, -0.517615, -1.4671, 1.12333, -1.12333, -0.861388, 5.5548, -3.57008, 5.5548, -0.0640894, -1.92063, 1.92063}, {0.113134, -0.113134, 1.7188, -0.164984, -1.44068, -0.164984, -3.22132, -1.59568, 1.59568, -1.02192, 1.02192, -1.02192, 0.0640894, 1.92063, -1.92063, -0.463392, 6.88606, 1.52132, -1.91964, -0.0650781, -8.34231, 1.12333, -1.12333, -0.861388, 1.4671, 0.517615, 1.4671, 4.02361, -6.00832, 6.00832}, {0.113134, -0.113134, 1.7188, -0.164984, -1.44068, -0.164984, 1.07377, 0.531894, -0.531894, 3.06577, -3.06577, 3.06577, 0.0640894, 1.92063, -1.92063, -1.12333, 1.12333, 0.861388, -1.4671, -0.517615, -1.4671, 0.67079, -0.67079, -7.7366, 2.12703, 6.28035, 2.12703, -4.35919, -4.0482, 4.0482}, {-1.94182, 3.40923, 1.10711, 0.155006, 1.62575, -1.6184, 0.710689, -0.184627, 1.53026, -1.51297, -0.304717, 0.45717, -1.6117, -7.10787, 8.93018, -1.07006, -1.78133, 0.108939, -4.52129, 2.3714, -7.5564, 7.12193, 3.0002, -1.93762, 1.67853, -1.63289, 1.43535, 0.991672, 0.604862, -2.4566}, {0.647273, -1.13641, -0.369036, -0.465018, -4.87726, 4.85519, 0.710689, -0.184627, 1.53026, -1.51297, -0.304717, 0.45717, -3.58076, 3.94077, 3.93275, -3.91281, -1.04282, -6.01211, -1.67853, 1.63289, -1.43535, 1.07006, 1.78133, -0.108939, 7.73041, -0.414023, -0.393324, 0.991672, 0.604862, -2.4566}, {0.647273, -1.13641, -0.369036, 0.155006, 1.62575, -1.6184, -2.13207, 0.553881, -4.59079, -1.51297, -0.304717, 0.45717, -0.991672, -0.604862, 2.4566, -1.69008, -8.28434, 6.58252, -4.26763, 6.17852, 0.0407896, 1.07006, 1.78133, -0.108939, 1.67853, -1.63289, 1.43535, 7.04355, 1.82373, -4.28528}, {0.647273, -1.13641, -0.369036, 0.155006, 1.62575, -1.6184, 0.710689, -0.184627, 1.53026, 4.53891, 0.91415, -1.37151, -0.991672, -0.604862, 2.4566, -1.07006, -1.78133, 0.108939, -1.67853, 1.63289, -1.43535, -1.51903, 6.32696, 1.36721, 1.05851, -8.1359, 7.90894, -1.85108, 1.34337, -8.57765}, {-5.53886e-11, 0.00342441, 5.36656, 2.34612, 1.36758e-15, 3.12566e-15, 0, -2.34462, 0, -2.34612, 2.34576, 1.78885, -12.2844, 0.00141093, 2.21115, -2.89996, 2.89811, -3.86352e-15, -2.28213e-11, 12.278, 2.21115, 12.2844, -12.2812, -7.15542, 2.28213e-11, -2.89952, -2.21115, 2.89996, -0.00141093, -2.21115}, {1.22999e-11, -0.00114147, -1.78885, -7.03835, -8.19548e-15, -3.12566e-15, 0, -2.34462, 0, -2.34612, 2.34576, 1.78885, -2.89996, 0.00597681, 9.36656, -2.89996, 12.2766, -1.28784e-15, -1.52034e-11, 2.89952, 2.21115, 2.89996, -2.89811, 1.73193e-15, 9.38447, -12.2826, -9.36656, 2.89996, -0.00141093, -2.21115}, {1.22964e-11, -0.00114147, -1.78885, 2.34612, 0, 0, 0, 7.03386, 0, -2.34612, 2.34576, 1.78885, -2.89996, 0.00141093, 2.21115, -12.2844, 2.89811, 0, -6.43876e-11, 2.90409, 9.36656, 2.89996, -2.89811, 4.44089e-16, 1.51994e-11, -2.89952, -2.21115, 12.2844, -9.38446, -9.36656}, {1.22991e-11, -0.00114147, -1.78885, 2.34612, -1.36625e-15, -1.04189e-15, 0, -2.34462, 0, 7.03835, -7.03729, -5.36656, -2.89996, 0.00141093, 2.21115, -2.89996, 2.89811, 1.28784e-15, -1.52025e-11, 2.89952, 2.21115, 2.89996, -2.89354, 7.15542, -9.38447, -2.89952, -2.21115, 2.89996, 9.37707, -2.21115}, {-4.82547e-12, 4.93775, 1.89782, -1.17597e-12, 1.20344, -0.85762, 1.44665, -0.256711, 0.444168, -1.44665, 0.69919, 1.04606, 4.16911e-12, -4.26682, 5.2725, -1.78815, -1.17022, 0.511055, -7.57474, 3.37862, -1.54375, 7.57474, -1.62654, -4.69529, 1.78815, -2.35178, -0.232925, 5.34683e-13, -0.546933, -1.84202}, {1.60938e-12, -1.64592, -0.632608, 3.52988e-12, -3.61031, 2.57286, 1.44665, -0.256711, 0.444168, -1.44665, 0.69919, 1.04606, -6.97309e-12, 7.13059, 4.37245, -7.57474, -0.143371, -1.26562, -1.78815, 2.35178, 0.232925, 1.78815, 1.17022, -0.511055, 7.57474, -5.14853, -4.41716, 5.34905e-13, -0.546933, -1.84202}, {1.60738e-12, -1.64592, -0.632608, -1.17532e-12, 1.20344, -0.85762, -4.33994, 0.770134, -1.3325, -1.44665, 0.69919, 1.04606, -5.34239e-13, 0.546933, 1.84202, -1.78815, -5.98397, 3.94153, -1.78815, 8.93544, 2.76336, 1.78815, 1.17022, -0.511055, 1.78815, -2.35178, -0.232925, 5.78659, -3.34369, -6.02626}, {1.60805e-12, -1.64592, -0.632608, -1.17575e-12, 1.20344, -0.85762, 1.44665, -0.256711, 0.444168, 4.33994, -2.09757, -3.13818, -5.34461e-13, 0.546933, 1.84202, -1.78815, -1.17022, 0.511055, -1.78815, 2.35178, 0.232925, 1.78815, 7.75388, 2.01938, 1.78815, -7.16552, 3.19755, -5.78659, 0.479913, -3.61869}, {3.67809, 0.0745323, 3.75892, 1.30596, 0.948366, 0.152693, 0.0437324, -1.35943, 0.016287, -0.123659, 0.435911, 1.08399, -5.32262, -4.935, 0.74925, -1.66831, 0.508107, -0.20887, 1.28647, 7.14879, 1.46348, 2.16294, -2.25175, -4.1271, -1.4614, -1.71106, -1.52863, 0.0987948, 1.14154, -1.36002}, {-1.22603, -0.0248441, -1.25297, -3.91787, -2.8451, -0.458078, 0.0437324, -1.35943, 0.016287, -0.123659, 0.435911, 1.08399, 4.80532, -1.04216, 6.37191, -1.84323, 5.94584, -0.274019, 1.4614, 1.71106, 1.52863, 1.66831, -0.508107, 0.20887, -0.966762, -3.4547, -5.8646, 0.0987948, 1.14154, -1.36002}, {-1.22603, -0.0248441, -1.25297, 1.30596, 0.948366, 0.152693, -0.131197, 4.0783, -0.0488611, -0.123659, 0.435911, 1.08399, -0.0987948, -1.14154, 1.36002, -6.89213, -3.28536, -0.819641, 6.36551, 1.81044, 6.54052, 1.66831, -0.508107, 0.20887, -1.4614, -1.71106, -1.52863, 0.593431, -0.602108, -5.69599}, {-1.22603, -0.0248441, -1.25297, 1.30596, 0.948366, 0.152693, 0.0437324, -1.35943, 0.016287, 0.370977, -1.30773, -3.25198, -0.0987948, -1.14154, 1.36002, -1.66831, 0.508107, -0.20887, 1.4614, 1.71106, 1.52863, 6.57242, -0.40873, 5.22076, -6.68522, -5.50453, -2.1394, -0.0761347, 6.57927, -1.42517}, {5.37088, 5.36291, 5.36619, 1.99086e-15, 6.84977e-16, 1.60567, 0.376399, 3.64451, 0.373213, 1.41389, -1.85687, -0.190152, 2.21292, 2.20964, -6.1964, -0.465254, -4.50486, -2.44603, 0.242074, -16.8733, 0.256821, -5.19032, 11.9323, 3.20664, -1.74767, 2.29522, -1.74967, -2.21292, -2.20964, -0.226277}, {-1.79029, -1.78764, -1.78873, -1.24068e-15, 6.57876e-15, -4.817, 0.376399, 3.64451, 0.373213, 1.41389, -1.85687, -0.190152, 9.37409, 9.36019, 7.3812, -1.97085, -19.0829, -3.93889, 1.74767, -2.29522, 1.74967, 0.465254, 4.50486, 2.44603, -7.40324, 9.72271, -0.989068, -2.21292, -2.20964, -0.226277}, {-1.79029, -1.78764, -1.78873, 0, 0, 1.60567, -1.1292, -10.9335, -1.11964, 1.41389, -1.85687, -0.190152, 2.21292, 2.20964, 0.226277, -0.465254, -4.50486, -8.8687, 8.90884, 4.85533, 8.90459, 0.465254, 4.50486, 2.44603, -1.74767, 2.29522, -1.74967, -7.8685, 5.21784, 0.53433}, {-1.79029, -1.78764, -1.78873, -5.63596e-16, 7.40172e-16, 1.60567, 0.376399, 3.64451, 0.373213, -4.24168, 5.57061, 0.570455, 2.21292, 2.20964, 0.226277, -0.465254, -4.50486, -2.44603, 1.74767, -2.29522, 1.74967, 7.62642, 11.6554, 9.60095, -1.74767, 2.29522, -8.17235, -3.71852, -16.7877, -1.71913}, {1.24345e-14, 1.33227e-14, -9.45441, 0, -3.15057, 0, 1.78885, 1.78834, -1.78885, -1.78885, 1.36222, -1.36261, 4.88498e-15, 16.4966, -3.89543, -2.21115, 1.6838, 2.21115, -9.36656, -9.36389, 5.47113, 9.36656, -7.1327, 3.23931, 2.21115, 2.21051, 1.68428, -4.88498e-15, -3.89432, 3.89543}, {1.11022e-15, 3.77476e-15, 3.15147, 0, 9.4517, 0, 1.78885, 1.78834, -1.78885, -1.78885, 1.36222, -1.36261, -5.32907e-15, 3.89432, -16.5013, -9.36656, -5.46957, 9.36656, -2.21115, -2.21051, -1.68428, 2.21115, -1.6838, -2.21115, 9.36656, -3.23838, 7.13474, 1.33227e-15, -3.89432, 3.89543}, {-1.11022e-15, -8.65974e-15, 3.15147, 0, -3.15057, 0, -5.36656, -5.36503, 5.36656, -1.78885, 1.36222, -1.36261, 1.33227e-15, 3.89432, -3.89543, -2.21115, 14.2861, 2.21115, -2.21115, -2.21051, -14.2902, 2.21115, -1.6838, -2.21115, 2.21115, 2.21051, 1.68428, 7.15542, -9.34321, 9.34589}, {0, 2.22045e-16, 3.15147, 0, -3.15057, 0, 1.78885, 1.78834, -1.78885, 5.36656, -4.08667, 4.08784, 0, 3.89432, -3.89543, -2.21115, 1.6838, 2.21115, -2.21115, -2.21051, -1.68428, 2.21115, -1.6838, -14.817, 2.21115, 14.8128, 1.68428, -7.15542, -11.0477, 11.0508}, {-5.91616e-12, 6.05767, -4.31695, 0, 0, -1.80556, 1.44665, 0.572575, -0.146817, -1.44665, 1.44665, 0.51339, -2.43761e-12, 2.4959, 7.67533, -1.78815, -0.707741, 2.41326, -7.57474, -0.502145, -1.00994, 7.57474, -5.07885, -4.46683, 1.78815, -1.78815, 1.5972, 2.43761e-12, -2.4959, -0.45311}, {1.97087e-12, -2.01922, 1.43898, 0, 0, 5.41667, 1.44665, 0.572575, -0.146817, -1.44665, 1.44665, 0.51339, -1.03197e-11, 10.5728, -5.30282, -7.57474, -2.99804, 3.00053, -1.78815, 1.78815, -1.5972, 1.78815, 0.707741, -2.41326, 7.57474, -7.57474, -0.456356, 2.43605e-12, -2.4959, -0.45311}, {1.97242e-12, -2.01922, 1.43898, 0, 0, -1.80556, -4.33994, -1.71772, 0.44045, -1.44665, 1.44665, 0.51339, -2.43783e-12, 2.4959, 0.45311, -1.78815, -0.707741, 9.63549, -1.78815, 9.86504, -7.35313, 1.78815, 0.707741, -2.41326, 1.78815, -1.78815, 1.5972, 5.78659, -8.28248, -2.50667}, {1.97198e-12, -2.01922, 1.43898, 0, 0, -1.80556, 1.44665, 0.572575, -0.146817, 4.33994, -4.33994, -1.54017, -2.43761e-12, 2.4959, 0.45311, -1.78815, -0.707741, 2.41326, -1.78815, 1.78815, -1.5972, 1.78815, 8.78463, -8.16919, 1.78815, -1.78815, 8.81943, -5.78659, -4.7862, 0.134156}, {-4.33994, -4.33994, 1.75218, -1.97211e-12, -2.01922, 1.43898, 0, 0, -1.80556, -1.44665, 0.572575, 0.950635, -1.78815, 8.78463, -6.81267, 2.43766e-12, 2.4959, 0.45311, -1.78815, -1.78815, 10.176, 5.78659, -4.7862, -4.25565, 1.78815, 1.78815, -2.95373, 1.78815, -0.707741, 1.05674}, {1.44665, 1.44665, -0.584061, 5.92068e-12, 6.05767, -4.31695, 0, 0, -1.80556, -1.44665, 0.572575, 0.950635, -7.57474, -5.07885, 1.2795, 2.43945e-12, 2.4959, 7.67533, -1.78815, -1.78815, 2.95373, -2.43981e-12, -2.4959, -0.45311, 7.57474, -0.502145, -6.75627, 1.78815, -0.707741, 1.05674}, {1.44665, 1.44665, -0.584061, -1.97247e-12, -2.01922, 1.43898, 0, 0, 5.41667, -1.44665, 0.572575, 0.950635, -1.78815, 0.707741, -1.05674, 1.0328e-11, 10.5728, -5.30282, -7.57474, -7.57474, 5.28997, -2.43847e-12, -2.4959, -0.45311, 1.78815, 1.78815, -2.95373, 7.57474, -2.99804, -2.7458}, {1.44665, 1.44665, -0.584061, -1.97283e-12, -2.01922, 1.43898, 0, 0, -1.80556, 4.33994, -1.71772, -2.8519, -1.78815, 0.707741, -1.05674, 2.43856e-12, 2.4959, 0.45311, -1.78815, -1.78815, 2.95373, -5.78659, -8.28248, 1.88313, 1.78815, 9.86504, -8.70966, 1.78815, -0.707741, 8.27896}, {1.71772, 0.356094, 4.33994, 2.01922, -0.477594, 1.7444e-12, -1.44665, -0.786183, 1.44665, 0, 1.38248, 0, -9.86504, 2.64743, 1.78815, -0.707741, 1.56212, -1.78815, 8.28248, 4.26323, -5.78659, 0.707741, -7.09202, 1.78815, -2.4959, -1.11849, -2.1562e-12, 1.78815, -0.737058, -1.78815}, {-0.572575, -0.118698, -1.44665, -6.05767, 1.43278, -5.23264e-12, -1.44665, -0.786183, 1.44665, 4.96495e-16, 1.38248, -4.96495e-16, 0.502145, 1.21185, 7.57474, 5.07885, 4.70685, -7.57474, 2.4959, 1.11849, 2.15571e-12, 0.707741, -1.56212, 1.78815, -2.4959, -6.6484, -2.15337e-12, 1.78815, -0.737058, -1.78815}, {-0.572575, -0.118698, -1.44665, 2.01922, -0.477594, 1.7444e-12, 4.33994, 2.35855, -4.33994, 0, 1.38248, 0, -1.78815, 0.737058, 1.78815, -8.78463, 3.47249, -1.78815, 4.7862, 1.59329, 5.78659, 0.707741, -1.56212, 1.78815, -2.4959, -1.11849, -2.1562e-12, 1.78815, -6.26696, -1.78815}, {-0.572575, -0.118698, -1.44665, 2.01922, -0.477594, 1.74332e-12, -1.44665, -0.786183, 1.44665, 0, -4.14743, 0, -1.78815, 0.737058, 1.78815, -0.707741, 1.56212, -1.78815, 2.4959, 1.11849, 2.15522e-12, 2.99804, -1.08732, 7.57474, -10.5728, 0.791882, -9.12813e-12, 7.57474, 2.40768, -7.57474}, {-3.82778, -1.72626, -1.72406, -1.39459, 0.310766, 0.31037, -0.00684175, -1.71025, 0.635056, 0.125505, 0.824062, -1.52011, 5.72503, -2.33845, -2.33547, 1.73226, 1.72986, -1.16861, -1.54131, 8.24373, -4.03555, -2.23428, -5.02611, 7.24907, 1.56867, -1.40273, 1.49533, -0.146676, 1.09539, 1.09399}, {1.27593, 0.575422, 0.574688, 4.18377, -0.932299, -0.93111, -0.00684175, -1.71025, 0.635056, 0.125505, 0.824062, -1.52011, -4.95703, -3.39708, -3.39274, 1.75963, 8.57086, -3.70884, -1.56867, 1.40273, -1.49533, -1.73226, -1.72986, 1.16861, 1.06665, -4.69898, 7.57578, -0.146676, 1.09539, 1.09399}, {1.27593, 0.575422, 0.574688, -1.39459, 0.310766, 0.31037, 0.0205252, 5.13075, -1.90517, 0.125505, 0.824062, -1.52011, 0.146676, -1.09539, -1.09399, 7.31062, 0.486792, -2.41009, -6.67238, -0.898961, -3.79408, -1.73226, -1.72986, 1.16861, 1.56867, -1.40273, 1.49533, -0.648696, -2.20086, 7.17445}, {1.27593, 0.575422, 0.574688, -1.39459, 0.310766, 0.31037, -0.00684175, -1.71025, 0.635056, -0.376515, -2.47219, 4.56034, 0.146676, -1.09539, -1.09399, 1.73226, 1.72986, -1.16861, -1.56867, 1.40273, -1.49533, -6.83597, -4.03154, -1.13014, 7.14703, -2.64579, 0.253846, -0.119309, 7.93639, -1.44623}, {4.08784, 5.36656, -4.08784, 3.15147, -2.79907e-15, -3.33475e-16, -1.78885, 1.78885, 1.78885, 0, 0, -3.15147, -14.817, 2.21115, -1.68428, -1.68428, -2.21115, -2.21115, 11.0508, -7.15542, -11.0508, 1.68428, 2.21115, 14.817, -3.89543, 3.45984e-15, 3.89543, 2.21115, -2.21115, 1.68428}, {-1.36261, -1.78885, 1.36261, -9.45441, 4.1986e-15, 1.15954e-14, -1.78885, 1.78885, 1.78885, 0, 0, -3.15147, 3.23931, 9.36656, -7.13474, 5.47113, -9.36656, -9.36656, 3.89543, -1.28583e-15, -3.89543, 1.68428, 2.21115, 2.21115, -3.89543, 1.72992e-15, 16.5013, 2.21115, -2.21115, 1.68428}, {-1.36261, -1.78885, 1.36261, 3.15147, 0, 0, 5.36656, -5.36656, -5.36656, 0, 0, -3.15147, -2.21115, 2.21115, -1.68428, -14.2902, -2.21115, -2.21115, 9.34589, 7.15542, -9.34589, 1.68428, 2.21115, 2.21115, -3.89543, 0, 3.89543, 2.21115, -2.21115, 14.2902}, {-1.36261, -1.78885, 1.36261, 3.15147, 0, 2.46559e-15, -1.78885, 1.78885, 1.78885, 0, 0, 9.45441, -2.21115, 2.21115, -1.68428, -1.68428, -2.21115, -2.21115, 3.89543, 4.44089e-16, -3.89543, 7.13474, 9.36656, -3.23931, -16.5013, 0, 3.89543, 9.36656, -9.36656, -5.47113}, {1.73341, -4.36745, 1.08767, 0, 0, 1.17684, 2.01922, 1.68048e-12, -0.615915, -1.44142, -1.45582, -0.198371, 0.714206, -1.79949, -5.71389, -2.4959, -2.07719e-12, -0.693346, -9.85858, -1.79949, 3.67312, 8.26156, 5.82327, 1.48683, 1.78169, 1.79949, -1.20946, -0.714206, 1.79949, 1.00651}, {-0.577805, 1.45582, -0.362558, 2.02028e-15, 3.82793e-15, -3.53053, 2.01922, 1.68206e-12, -0.615915, -1.44142, -1.45582, -0.198371, 3.02542, -7.62276, 0.443719, -10.5728, -8.8058e-12, 1.77031, -1.78169, -1.79949, 1.20946, 2.4959, 2.0772e-12, 0.693346, 7.54736, 7.62276, -0.415974, -0.714206, 1.79949, 1.00651}, {-0.577805, 1.45582, -0.362558, 0, 0, 1.17684, -6.05767, -5.04417e-12, 1.84774, -1.44142, -1.45582, -0.198371, 0.714206, -1.79949, -1.00651, -2.4959, -2.07831e-12, -5.40072, 0.529529, -7.62276, 2.65969, 2.4959, 2.07795e-12, 0.693346, 1.78169, 1.79949, -1.20946, 5.05146, 7.62276, 1.8}, {-0.577805, 1.45582, -0.362558, 0, 0, 1.17684, 2.01922, 1.68121e-12, -0.615915, 4.32425, 4.36745, 0.595113, 0.714206, -1.79949, -1.00651, -2.4959, -2.07809e-12, -0.693346, -1.78169, -1.79949, 1.20946, 4.80711, -5.82327, 2.14358, 1.78169, 1.79949, -5.91683, -8.79109, 1.79949, 3.47017}, {-4.91714, 2.88338, 1.92681, -0.336451, -0.850591, 0.85104, -1.79955, 0.555362, -0.55742, 0.496952, 1.25636, 0.348649, -0.264293, 5.64177, -3.66222, 2.64024, 0.364922, -0.362934, 7.39658, -1.7199, 3.71258, -4.62805, -5.39034, -1.03166, -0.198389, -0.501553, -1.4829, 1.6101, -2.23941, 0.258056}, {1.63905, -0.961127, -0.642269, 1.00935, 2.55177, -2.55312, -1.79955, 0.555362, -0.55742, 0.496952, 1.25636, 0.348649, -8.16629, 6.08391, 2.31102, 9.83843, -1.85653, 1.86675, 0.198389, 0.501553, 1.4829, -2.64024, -0.364922, 0.362934, -2.1862, -5.52697, -2.87749, 1.6101, -2.23941, 0.258056}, {1.63905, -0.961127, -0.642269, -0.336451, -0.850591, 0.85104, 5.39864, -1.66609, 1.67226, 0.496952, 1.25636, 0.348649, -1.6101, 2.23941, -0.258056, 3.98605, 3.76729, -3.76709, -6.3578, 4.34606, 4.05197, -2.64024, -0.364922, 0.362934, -0.198389, -0.501553, -1.4829, -0.377708, -7.26483, -1.13654}, {1.63905, -0.961127, -0.642269, -0.336451, -0.850591, 0.85104, -1.79955, 0.555362, -0.55742, -1.49085, -3.76907, -1.04595, -1.6101, 2.23941, -0.258056, 2.64024, 0.364922, -0.362934, 0.198389, 0.501553, 1.4829, -9.19643, 3.47958, 2.93201, 1.14742, 2.90081, -4.88706, 8.80829, -4.46086, 2.48774}, {10.941, -4.49288, 1.1204, 1.85814, 0.691786, -1.41539, 0, -2.17235, 0, 1.78885, -0.0170635, 1.78885, -5.2214, -5.47341, 7.87269, -2.29678, 1.83008, 1.74951, 4.50793, 9.5234, 0.461631, -4.85864, -1.76182, -8.90493, -4.50793, -0.834003, -0.461631, -2.21115, 2.70626, -2.21115}, {-3.64699, 1.49763, -0.373467, -5.57441, -2.07536, 4.24616, 0, -2.17235, 0, 1.78885, -0.0170635, 1.78885, 16.7991, -8.69677, 3.70501, -2.29678, 10.5195, 1.74951, 4.50793, 0.834003, 0.461631, 2.29678, -1.83008, -1.74951, -11.6633, -0.76575, -7.61705, -2.21115, 2.70626, -2.21115}, {-3.64699, 1.49763, -0.373467, 1.85814, 0.691786, -1.41539, 0, 6.51705, 0, 1.78885, -0.0170635, 1.78885, 2.21115, -2.70626, 2.21115, -9.72932, -0.937068, 7.41106, 19.0959, -5.15651, 1.9555, 2.29678, -1.83008, -1.74951, -4.50793, -0.834003, -0.461631, -9.36656, 2.77452, -9.36656}, {-3.64699, 1.49763, -0.373467, 1.85814, 0.691786, -1.41539, 0, -2.17235, 0, -5.36656, 0.0511904, -5.36656, 2.21115, -2.70626, 2.21115, -2.29678, 1.83008, 1.74951, 4.50793, 0.834003, 0.461631, 16.8847, -7.82059, -0.255645, -11.9405, -3.60115, 5.19992, -2.21115, 11.3957, -2.21115}, {-4.62937, 1.83228, -4.62937, -1.60567, 0, 0, -0.136178, -1.32981, -1.74185, 0.198723, 1.94057, 0.198723, 6.49998, 0.754941, -1.90741, 2.15304, 1.64373, 2.15304, -1.19437, 7.71791, 7.21302, -2.94793, -9.40601, -2.94793, 1.73908, -2.39867, -0.245635, -0.0773091, -0.754941, 1.90741}, {1.54312, -0.61076, 1.54312, 4.817, 0, 0, -0.136178, -1.32981, -1.74185, 0.198723, 1.94057, 0.198723, -6.09519, 3.19798, -8.0799, 2.69775, 6.96297, 9.12042, -1.73908, 2.39867, 0.245635, -2.15304, -1.64373, -2.15304, 0.94419, -10.1609, -1.04052, -0.0773091, -0.754941, 1.90741}, {1.54312, -0.61076, 1.54312, -1.60567, 0, 0, 0.408534, 3.98943, 5.22554, 0.198723, 1.94057, 0.198723, 0.0773091, 0.754941, -1.90741, 8.57571, 1.64373, 2.15304, -7.91157, 4.84171, -5.92686, -2.15304, -1.64373, -2.15304, 1.73908, -2.39867, -0.245635, -0.872199, -8.51722, 1.11252}, {1.54312, -0.61076, 1.54312, -1.60567, 0, 0, -0.136178, -1.32981, -1.74185, -0.596168, -5.82171, -0.596168, 0.0773091, 0.754941, -1.90741, 2.15304, 1.64373, 2.15304, -1.73908, 2.39867, 0.245635, -8.32553, 0.799305, -8.32553, 8.16175, -2.39867, -0.245635, 0.467403, 4.5643, 8.87479}, {-5.36656, 4.08784, -4.08784, 0, 3.15147, 0, -1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -2.21115, -14.817, -1.68428, 2.21115, -1.68428, -2.21115, 7.15542, 11.0508, -11.0508, -2.21115, 1.68428, 14.817, 0, -3.89543, 3.89543, 2.21115, 2.21115, 1.68428}, {1.78885, -1.36261, 1.36261, -4.1986e-15, -9.45441, 1.15954e-14, -1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -9.36656, 3.23931, -7.13474, 9.36656, 5.47113, -9.36656, 1.28583e-15, 3.89543, -3.89543, -2.21115, 1.68428, 2.21115, -1.72992e-15, -3.89543, 16.5013, 2.21115, 2.21115, 1.68428}, {1.78885, -1.36261, 1.36261, 0, 3.15147, -9.86237e-15, 5.36656, 5.36656, -5.36656, 0, 0, -3.15147, -2.21115, -2.21115, -1.68428, 2.21115, -14.2902, -2.21115, -7.15542, 9.34589, -9.34589, -2.21115, 1.68428, 2.21115, 0, -3.89543, 3.89543, 2.21115, 2.21115, 14.2902}, {1.78885, -1.36261, 1.36261, 0, 3.15147, 0, -1.78885, -1.78885, 1.78885, 0, 0, 9.45441, -2.21115, -2.21115, -1.68428, 2.21115, -1.68428, -2.21115, -4.44089e-16, 3.89543, -3.89543, -9.36656, 7.13474, -3.23931, 0, -16.5013, 3.89543, 9.36656, 9.36656, -5.47113}, {-14.3647, 4.91028, -4.91028, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.63676, 1.63676, -1.63676, 2.33207, -6.2275, -10.2738, 3.89543, -3.193e-13, -3.19522e-13, 2.33207, 10.2738, 6.2275, 2.65162, -6.54704, 6.54704, 3.97086, -3.97086, 0.0754334, 3.97086, -0.0754334, 3.97086}, {4.78823, -1.63676, 1.63676, 4.7272, -4.7272, -4.7272, -1.57573, -1.57573, -1.57573, -1.63676, 1.63676, -1.63676, -23.1238, 6.62248, -10.5179, 10.1984, 6.30294, 6.30294, -3.97086, 3.97086, -0.0754334, -3.89543, 3.18818e-13, 3.18006e-13, 10.5179, -10.5179, 6.62248, 3.97086, -0.0754334, 3.97086}, {4.78823, -1.63676, 1.63676, -1.57573, 1.57573, 1.57573, 4.7272, 4.7272, 4.7272, -1.63676, 1.63676, -1.63676, -3.97086, 0.0754334, -3.97086, 10.1984, -6.30294, -6.30294, -23.1238, 10.5179, -6.62248, -3.89543, 3.21483e-13, 3.20892e-13, 3.97086, -3.97086, 0.0754334, 10.5179, -6.62248, 10.5179}, {4.78823, -1.63676, 1.63676, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 4.91028, -4.91028, 4.91028, -3.97086, 0.0754334, -3.97086, 3.89543, -3.19522e-13, -3.19078e-13, -3.97086, 3.97086, -0.0754334, -23.0483, 6.54704, -6.54704, 10.2738, -10.2738, -6.2275, 10.2738, 6.2275, 10.2738}, {0, -4.817, 7.10543e-15, -1.41539, -0.190281, -1.85814, -0.373467, 0.373467, 3.64699, 1.78885, -1.78885, -1.78885, 7.41106, -0.988391, 9.72932, 2.21115, -0.226431, -2.21115, 1.9555, -3.94022, -19.0959, -9.36656, 7.38185, 9.36656, -0.461631, 2.44635, 4.50793, -1.74951, 1.74951, -2.29678}, {-1.11022e-15, 1.60567, -1.55431e-15, 4.24616, 0.570843, 5.57441, -0.373467, 0.373467, 3.64699, 1.78885, -1.78885, -1.78885, 1.74951, -8.17219, 2.29678, 3.70501, -1.7203, -16.7991, 0.461631, -2.44635, -4.50793, -2.21115, 0.226431, 2.21115, -7.61705, 9.60176, 11.6633, -1.74951, 1.74951, -2.29678}, {-8.88178e-16, 1.60567, 1.11022e-15, -1.41539, -0.190281, -1.85814, 1.1204, -1.1204, -10.941, 1.78885, -1.78885, -1.78885, 1.74951, -1.74951, 2.29678, 7.87269, 0.534693, 5.2214, 0.461631, -8.86902, -4.50793, -2.21115, 0.226431, 2.21115, -0.461631, 2.44635, 4.50793, -8.90493, 8.90493, 4.85864}, {1.55431e-15, 1.60567, -4.44089e-16, -1.41539, -0.190281, -1.85814, -0.373467, 0.373467, 3.64699, -5.36656, 5.36656, 5.36656, 1.74951, -1.74951, 2.29678, 2.21115, -0.226431, -2.21115, 0.461631, -2.44635, -4.50793, -2.21115, -6.19624, 2.21115, 5.19992, 3.20747, 11.9405, -0.255645, 0.255645, -16.8847}, {-2.60507, 7.08874, -2.60507, -1.19276, 2.49131, 1.15037, -1.08957, 0.431245, -1.08957, 1.41397, -0.55964, -0.929159, 5.172, -10.1239, -7.09676, 2.82111, -3.61247, -0.0751544, 4.6317, 0.662693, 4.6317, -8.47697, 5.85103, 3.79179, -0.273431, -2.38767, -0.273431, -0.400978, 0.158705, 2.49528}, {0.868358, -2.36291, 0.868358, 3.57827, -7.47392, -3.45111, -1.08957, 0.431245, -1.08957, 1.41397, -0.55964, -0.929159, -3.07245, 9.29295, -5.96872, 7.17938, -5.33745, 4.28312, 0.273431, 2.38767, 0.273431, -2.82111, 3.61247, 0.0751544, -5.9293, -0.149113, 3.44321, -0.400978, 0.158705, 2.49528}, {0.868358, -2.36291, 0.868358, -1.19276, 2.49131, 1.15037, 3.2687, -1.29374, 3.2687, 1.41397, -0.55964, -0.929159, 0.400978, -0.158705, -2.49528, 7.59213, -13.5777, -4.67663, -3.2, 11.8393, -3.2, -2.82111, 3.61247, 0.0751544, -0.273431, -2.38767, -0.273431, -6.05684, 2.39726, 6.21192}, {0.868358, -2.36291, 0.868358, -1.19276, 2.49131, 1.15037, -1.08957, 0.431245, -1.08957, -4.2419, 1.67892, 2.78748, 0.400978, -0.158705, -2.49528, 2.82111, -3.61247, -0.0751544, 0.273431, 2.38767, 0.273431, -6.29454, 13.0641, -3.39828, 4.49759, -12.3529, -4.87491, 3.95729, -1.56628, 6.85356}, {0.133606, -1.71772, 4.33994, 0.841626, -2.01922, -1.9732e-12, -1.05603, 0, 0, 0.258935, 1.44665, 1.44665, -4.35176, 9.86504, 1.78815, 0.265013, 2.4959, 2.43901e-12, 5.58447, -0.707741, 1.78815, -1.30075, -8.28248, -5.78659, -1.36037, 0.707741, -1.78815, 0.985258, -1.78815, -1.78815}, {-0.0445353, 0.572575, -1.44665, -2.52488, 6.05767, 5.92285e-12, -1.05603, 0, 0, 0.258935, 1.44665, 1.44665, -0.807116, -0.502145, 7.57474, 4.48912, 2.4959, 2.44035e-12, 1.36037, -0.707741, 1.78815, -0.265013, -2.4959, -2.43999e-12, -2.39611, -5.07885, -7.57474, 0.985258, -1.78815, -1.78815}, {-0.0445353, 0.572575, -1.44665, 0.841626, -2.01922, -1.97392e-12, 3.16808, 0, 0, 0.258935, 1.44665, 1.44665, -0.985258, 1.78815, 1.78815, -3.10149, 10.5728, 1.03356e-11, 1.53851, -2.99804, 7.57474, -0.265013, -2.4959, -2.43954e-12, -1.36037, 0.707741, -1.78815, -0.0504837, -7.57474, -7.57474}, {-0.0445353, 0.572575, -1.44665, 0.841626, -2.01922, -1.97247e-12, -1.05603, 0, 0, -0.776806, -4.33994, -4.33994, -0.985258, 1.78815, 1.78815, 0.265013, 2.4959, 2.43811e-12, 1.36037, -0.707741, 1.78815, -0.0868717, -4.7862, 5.78659, -4.72687, 8.78463, -1.78815, 5.20936, -1.78815, -1.78815}, {-8.334, -1.1204, -10.941, -1.41539, 1.41539, -1.85814, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, 3.97726, -7.87269, 5.2214, 5.64494, -1.74951, 2.29678, 13.0675, -0.461631, -4.50793, -12.8004, 8.90493, 4.85864, -0.461631, 0.461631, 4.50793, 1.68428, 2.21115, 2.21115}, {2.778, 0.373467, 3.64699, 4.24616, -4.24616, 5.57441, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -12.7963, -3.70501, -16.7991, 18.2508, -1.74951, 2.29678, 0.461631, -0.461631, -4.50793, -5.64494, 1.74951, -2.29678, -7.61705, 7.61705, 11.6633, 1.68428, 2.21115, 2.21115}, {2.778, 0.373467, 3.64699, -1.41539, 1.41539, -1.85814, 9.45441, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -2.21115, -2.21115, 11.3065, -7.41106, 9.72932, -10.6504, -1.9555, -19.0959, -5.64494, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, -5.47113, 9.36656, 9.36656}, {2.778, 0.373467, 3.64699, -1.41539, 1.41539, -1.85814, -3.15147, 0, 0, -5.36656, 5.36656, 5.36656, -1.68428, -2.21115, -2.21115, 5.64494, -1.74951, 2.29678, 0.461631, -0.461631, -4.50793, -16.7569, 0.255645, -16.8847, 5.19992, -5.19992, 11.9405, 14.2902, 2.21115, 2.21115}, {1.01058, 2.55106, -2.5536, -2.38953, 1.40121, 0.936349, 0.591368, -0.846655, -1.49431, 2.13502, 0.295801, -0.293237, 12.9281, -6.28572, -5.95493, 2.22265, -0.685462, 0.68968, -2.68006, 5.48424, 6.77218, -10.7627, -0.497743, 0.483267, 0.314591, -2.09762, -0.794931, -3.37, 0.680893, 2.20953}, {-0.336859, -0.850352, 0.8512, 7.1686, -4.20362, -2.80905, 0.591368, -0.846655, -1.49431, 2.13502, 0.295801, -0.293237, 4.71744, 2.72051, -5.61433, -0.142821, 2.70116, 6.66693, -0.314591, 2.09762, 0.794931, -2.22265, 0.685462, -0.68968, -8.2255, -3.28082, 0.378017, -3.37, 0.680893, 2.20953}, {-0.336859, -0.850352, 0.8512, -2.38953, 1.40121, 0.936349, -1.77411, 2.53997, 4.48294, 2.13502, 0.295801, -0.293237, 3.37, -0.680893, -2.20953, 11.7808, -6.29028, -3.05572, 1.03285, 5.49902, -2.60987, -2.22265, 0.685462, -0.68968, 0.314591, -2.09762, -0.794931, -11.9101, -0.502312, 3.38248}, {-0.336859, -0.850352, 0.8512, -2.38953, 1.40121, 0.936349, 0.591368, -0.846655, -1.49431, -6.40507, -0.887404, 0.879711, 3.37, -0.680893, -2.20953, 2.22265, -0.685462, 0.68968, -0.314591, 2.09762, 0.794931, -0.875216, 4.08687, -4.09448, 9.87272, -7.70244, -4.54033, -5.73548, 4.06751, 8.18678}, {8.88178e-16, 9.4517, 0, 1.85814, -1.41498, 1.41539, -3.64699, 2.77721, 0.373467, 1.78885, 1.78834, -1.78885, -9.72932, 11.3033, -7.41106, 2.21115, -1.6838, -2.21115, 19.0959, -10.6473, -1.9555, -9.36656, -5.46957, 9.36656, -4.50793, -0.461499, 0.461631, 2.29678, -5.64333, 1.74951}, {-2.22045e-16, -3.15057, -2.22045e-16, -5.57441, 4.24495, -4.24616, -3.64699, 2.77721, 0.373467, 1.78885, 1.78834, -1.78885, -2.29678, 18.2456, -1.74951, 16.7991, -12.7926, -3.70501, 4.50793, 0.461499, -0.461631, -2.21115, 1.6838, 2.21115, -11.6633, -7.61487, 7.61705, 2.29678, -5.64333, 1.74951}, {8.88178e-16, -3.15057, 2.22045e-16, 1.85814, -1.41498, 1.41539, 10.941, -8.33162, -1.1204, 1.78885, 1.78834, -1.78885, -2.29678, 5.64333, -1.74951, -5.2214, 3.97613, -7.87269, 4.50793, 13.0638, -0.461631, -2.21115, 1.6838, 2.21115, -4.50793, -0.461499, 0.461631, -4.85864, -12.7967, 8.90493}, {2.22045e-16, -3.15057, 6.66134e-16, 1.85814, -1.41498, 1.41539, -3.64699, 2.77721, 0.373467, -5.36656, -5.36503, 5.36656, -2.29678, 5.64333, -1.74951, 2.21115, -1.6838, -2.21115, 4.50793, 0.461499, -0.461631, -2.21115, 14.2861, 2.21115, -11.9405, 5.19843, -5.19992, 16.8847, -16.7522, 0.255645}, {-3.98943, -5.23221, -5.22554, -1.94057, -2.54509, -0.198723, 0.61076, -1.54509, -1.54312, 0, 2.34612, 0, 8.51722, 11.1705, -1.11252, 1.64373, 5.05575, 2.15304, -4.84171, 5.93443, 5.92686, -1.64373, -14.4402, -2.15304, 2.39867, 0.245948, 0.245635, -0.754941, -0.990119, 1.90741}, {1.32981, 1.74407, 1.74185, 5.82171, 7.63528, 0.596168, 0.61076, -1.54509, -1.54312, -3.55726e-16, 2.34612, 8.98764e-16, -4.5643, -5.98616, -8.87479, -0.799305, 11.2361, 8.32553, -2.39867, -0.245948, -0.245635, -1.64373, -5.05575, -2.15304, 2.39867, -9.13852, 0.245635, -0.754941, -0.990119, 1.90741}, {1.32981, 1.74407, 1.74185, -1.94057, -2.54509, -0.198723, -1.83228, 4.63528, 4.62937, 0, 2.34612, 0, 0.754941, 0.990119, -1.90741, 9.40601, 15.2361, 2.94793, -7.71791, -7.22223, -7.21302, -1.64373, -5.05575, -2.15304, 2.39867, 0.245948, 0.245635, -0.754941, -10.3746, 1.90741}, {1.32981, 1.74407, 1.74185, -1.94057, -2.54509, -0.198723, 0.61076, -1.54509, -1.54312, 0, -7.03835, 0, 0.754941, 0.990119, -1.90741, 1.64373, 5.05575, 2.15304, -2.39867, -0.245948, -0.245635, -6.96297, -12.032, -9.12042, 10.1609, 10.4263, 1.04052, -3.19798, 5.19026, 8.0799}, {0, -8.88178e-15, -7.02938, -1.78885, -2.34612, -2.34313, 1.78885, 6.94391e-12, 7.11845e-12, 0, 2.34612, 0, 9.36656, 12.2844, 9.3725, 0, 2.89996, 2.89626, -9.36656, -3.63625e-11, -2.89626, 0, -12.2844, -2.89626, 2.21115, 8.58691e-12, 2.89626, -2.21115, -2.89996, -8.79889e-12}, {-9.56516e-16, 1.33227e-15, 2.34313, 5.36656, 7.03835, 7.02938, 1.78885, 6.94391e-12, 7.11845e-12, -1.04189e-15, 2.34612, -4.14601e-27, 2.21115, 2.89996, -9.3725, -7.15542, 2.89996, 2.89626, -2.21115, -8.58469e-12, -2.89626, 2.66454e-15, -2.89996, -2.89626, 2.21115, -9.38447, 2.89626, -2.21115, -2.89996, -8.79889e-12}, {0, -4.44089e-16, 2.34313, -1.78885, -2.34612, -2.34313, -5.36656, -2.08419e-11, -2.13616e-11, 0, 2.34612, 0, 2.21115, 2.89996, 8.80088e-12, 7.15542, 12.2844, 12.2688, -2.21115, -8.58691e-12, -12.2688, 0, -2.89996, -2.89626, 2.21115, 8.58691e-12, 2.89626, -2.21115, -12.2844, -8.80146e-12}, {0, 8.88178e-16, 2.34313, -1.78885, -2.34612, -2.34313, 1.78885, 6.94234e-12, 7.11741e-12, 0, -7.03835, 0, 2.21115, 2.89996, 8.79702e-12, 0, 2.89996, 2.89626, -2.21115, -8.58291e-12, -2.89626, 0, -2.89996, -12.2688, 9.36656, 9.38447, 12.2688, -9.36656, -2.89996, -3.72672e-11}, {-0.596168, 7.62554, 5.82171, -1.74185, 1.74185, 1.32981, 0, 2.34313, 0, 1.54312, -1.54312, 0.61076, 8.87479, -5.97853, -4.5643, 2.15304, -5.0493, -1.64373, -0.245635, -9.12687, 2.39867, -8.32553, 11.2218, -0.799305, 0.245635, -0.245635, -2.39867, -1.90741, -0.988857, -0.754941}, {0.198723, -2.54185, -1.94057, 5.22554, -5.22554, -3.98943, -8.97618e-16, 2.34313, -3.55272e-16, 1.54312, -1.54312, 0.61076, 1.11252, 11.1562, 8.51722, 2.15304, -14.4218, -1.64373, -0.245635, 0.245635, 2.39867, -2.15304, 5.0493, 1.64373, -5.92686, 5.92686, -4.84171, -1.90741, -0.988857, -0.754941}, {0.198723, -2.54185, -1.94057, -1.74185, 1.74185, 1.32981, 0, -7.02938, 0, 1.54312, -1.54312, 0.61076, 1.90741, 0.988857, 0.754941, 9.12042, -12.0167, -6.96297, -1.04052, 10.413, 10.1609, -2.15304, 5.0493, 1.64373, 0.245635, -0.245635, -2.39867, -8.0799, 5.18364, -3.19798}, {0.198723, -2.54185, -1.94057, -1.74185, 1.74185, 1.32981, 0, 2.34313, 0, -4.62937, 4.62937, -1.83228, 1.90741, 0.988857, 0.754941, 2.15304, -5.0493, -1.64373, -0.245635, 0.245635, 2.39867, -2.94793, 15.2167, 9.40601, 7.21302, -7.21302, -7.71791, -1.90741, -10.3614, -0.754941}, {4.7272, -4.7272, -4.7272, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 1.57573, -6.30294, -10.1984, 6.30294, 1.80456e-12, 1.805e-12, 3.89543, 10.1984, 6.30294, 6.30294, -6.30294, 6.30294, -10.1984, -3.89543, 3.19078e-13, 3.19078e-13, -2.14295e-12, 3.89543, 2.13674e-12}, {-1.57573, 1.57573, 1.57573, -4.7272, -4.7272, 4.7272, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 1.57573, 6.30294, -10.1984, -6.30294, 6.30294, 6.30294, 10.1984, 3.89543, -3.193e-13, -3.193e-13, -1.80505e-12, -1.80561e-12, -3.89543, -10.1984, 6.30294, -6.30294, -2.1394e-12, 3.89543, 2.13962e-12}, {-1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -1.57573, 4.7272, 4.7272, 4.7272, 1.57573, -1.57573, 1.57573, 2.14007e-12, -3.89543, -2.14007e-12, -6.30294, -6.30294, 10.1984, 10.1984, -6.30294, -6.30294, -1.80394e-12, -1.80428e-12, -3.89543, -3.89543, 3.20188e-13, 3.193e-13, -6.30294, 10.1984, -6.30294}, {-1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.57573, -4.7272, 4.7272, -4.7272, 2.1354e-12, -3.89543, -2.14473e-12, 1.80456e-12, 1.80456e-12, 3.89543, 3.89543, -3.19522e-13, -3.19522e-13, 6.30294, -6.30294, -10.1984, -10.1984, -6.30294, 6.30294, 6.30294, 10.1984, 6.30294}, {4.817, -8.88178e-16, 2.22045e-16, -0.136178, 1.74185, 1.32981, 0.198723, -0.198723, -1.94057, 1.54312, -1.54312, 0.61076, 2.69775, -9.12042, -6.96297, -0.0773091, -1.90741, 0.754941, 0.94419, 1.04052, 10.1609, -6.09519, 8.0799, -3.19798, -1.73908, -0.245635, -2.39867, -2.15304, 2.15304, 1.64373}, {-1.60567, 0, 2.22045e-16, 0.408534, -5.22554, -3.98943, 0.198723, -0.198723, -1.94057, 1.54312, -1.54312, 0.61076, 8.57571, -2.15304, -1.64373, -0.872199, -1.11252, 8.51722, 1.73908, 0.245635, 2.39867, 0.0773091, 1.90741, -0.754941, -7.91157, 5.92686, -4.84171, -2.15304, 2.15304, 1.64373}, {-1.60567, 0, 2.22045e-16, -0.136178, 1.74185, 1.32981, -0.596168, 0.596168, 5.82171, 1.54312, -1.54312, 0.61076, 2.15304, -2.15304, -1.64373, 0.467403, -8.87479, -4.5643, 8.16175, 0.245635, 2.39867, 0.0773091, 1.90741, -0.754941, -1.73908, -0.245635, -2.39867, -8.32553, 8.32553, -0.799305}, {-1.60567, -2.22045e-16, -2.22045e-16, -0.136178, 1.74185, 1.32981, 0.198723, -0.198723, -1.94057, -4.62937, 4.62937, -1.83228, 2.15304, -2.15304, -1.64373, -0.0773091, -1.90741, 0.754941, 1.73908, 0.245635, 2.39867, 6.49998, 1.90741, -0.754941, -1.19437, -7.21302, -7.71791, -2.94793, 2.94793, 9.40601}, {7.01844, 8.88178e-16, 0, 2.33948, 2.34313, 1.78885, 7.30061e-12, 6.91762e-12, -1.78885, 0, -2.34313, 0, -9.35791, -12.2688, -9.36656, -2.89175, -2.89626, 0, 2.89175, -3.62204e-11, 9.36656, 2.89175, 12.2688, 0, -2.89175, 8.55005e-12, -2.21115, -9.02405e-12, 2.89626, 2.21115}, {-2.33948, 0, 0, -7.01844, -7.02938, -5.36656, 7.30269e-12, 6.91918e-12, -1.78885, 0, -2.34313, 0, 9.35791, -2.89626, -2.21115, -2.89175, -2.89626, 7.15542, 2.89175, -8.55271e-12, 2.21115, 2.89175, 2.89626, 0, -2.89175, 9.3725, -2.21115, -9.02662e-12, 2.89626, 2.21115}, {-2.33948, 4.44089e-16, 2.22045e-16, 2.33948, 2.34313, 1.78885, -2.19003e-11, -2.07607e-11, 5.36656, 0, -2.34313, 0, 9.02399e-12, -2.89626, -2.21115, -12.2497, -12.2688, -7.15542, 12.2497, -8.55493e-12, 2.21115, 2.89175, 2.89626, -4.44089e-16, -2.89175, 8.55405e-12, -2.21115, -9.02341e-12, 12.2688, 2.21115}, {-2.33948, 4.44089e-16, 0, 2.33948, 2.34313, 1.78885, 7.30373e-12, 6.92178e-12, -1.78885, 0, 7.02938, 0, 9.02849e-12, -2.89626, -2.21115, -2.89175, -2.89626, 0, 2.89175, -8.55627e-12, 2.21115, 12.2497, 2.89626, 0, -12.2497, -9.3725, -9.36656, -3.82428e-11, 2.89626, 9.36656}, {-1.82966, -4.6256, 4.62804, 1.3308, -1.74043, 0.137442, -1.94068, 0.198561, -0.20043, 0, 0, 1.60567, -7.722, 7.20714, 1.1872, 0.75386, 1.90585, 0.0778573, 9.40768, -2.94553, 2.95632, -0.75386, -1.90585, -6.50053, -1.64495, 2.15129, -2.1546, 2.39881, -0.245434, -1.73697}, {0.609885, 1.54187, -1.54268, -3.99239, 5.22128, -0.412327, -1.94068, 0.198561, -0.20043, 7.7358e-16, -7.91487e-17, 1.60567, -4.83836, -5.92203, 7.90769, 8.51658, 1.11161, 0.879578, 1.64495, -2.15129, 2.1546, -0.75386, -1.90585, -0.0778573, -1.64495, 2.15129, -8.57728, 2.39881, -0.245434, -1.73697}, {0.609885, 1.54187, -1.54268, 1.3308, -1.74043, 0.137442, 5.82204, -0.595682, 0.601291, 0, 0, 1.60567, -2.39881, 0.245434, 1.73697, -4.56932, 8.86756, -0.471912, -0.794587, -8.31875, 8.32532, -0.75386, -1.90585, -0.0778573, -1.64495, 2.15129, -2.1546, 2.39881, -0.245434, -8.15964}, {0.609885, 1.54187, -1.54268, 1.3308, -1.74043, 0.137442, -1.94068, 0.198561, -0.20043, 0, 0, -4.817, -2.39881, 0.245434, 1.73697, 0.75386, 1.90585, 0.0778573, 1.64495, -2.15129, 2.1546, -3.1934, -8.07331, 6.09286, -6.96814, 9.11299, -2.70437, 10.1615, -1.03968, -0.935249}, {-4.24457, 5.57441, -4.24616, -1.78937, -1.78885, -1.78885, 3.15147, -2.85327e-15, -2.92187e-16, -2.77696, 3.64699, 0.373467, 7.62038, 11.6633, 7.61705, -1.68365, 2.21115, 2.21115, -18.2502, 2.29678, -1.74951, 12.7915, -16.7991, -3.70501, 5.64429, -2.29678, 1.74951, -0.46292, -4.50793, -0.461631}, {1.41486, -1.85814, 1.41539, 5.3681, 5.36656, 5.36656, 3.15147, 5.70654e-15, 5.84374e-16, -2.77696, 3.64699, 0.373467, -5.1965, 11.9405, -5.19992, -14.2895, 2.21115, 2.21115, -5.64429, 2.29678, -1.74951, 1.68365, -2.21115, -2.21115, 16.7521, -16.8847, 0.255645, -0.46292, -4.50793, -0.461631}, {1.41486, -1.85814, 1.41539, -1.78937, -1.78885, -1.78885, -9.45441, 0, 0, -2.77696, 3.64699, 0.373467, 0.46292, 4.50793, 0.461631, 5.47381, 9.36656, 9.36656, -11.3037, 9.72932, -7.41106, 1.68365, -2.21115, -2.21115, 5.64429, -2.29678, 1.74951, 10.6449, -19.0959, -1.9555}, {1.41486, -1.85814, 1.41539, -1.78937, -1.78885, -1.78885, 3.15147, 2.85327e-15, 2.92187e-16, 8.33088, -10.941, -1.1204, 0.46292, 4.50793, 0.461631, -1.68365, 2.21115, 2.21115, -5.64429, 2.29678, -1.74951, -3.97577, 5.2214, -7.87269, 12.8018, 4.85864, 8.90493, -13.0688, -4.50793, -0.461631}, {-4.72788, -4.72653, -4.72653, 1.57551, -1.57551, -1.57551, -1.57551, 1.57551, -1.57596, -1.57596, -1.57551, 1.57596, -10.1975, 6.30204, 6.30204, -4.83169e-13, -4.92273e-13, 3.89543, 6.30148, -10.1969, 6.30439, 6.30384, 6.30204, -10.1993, 0.000556765, 3.89487, -0.000556765, 3.89543, -1.82077e-12, -1.81766e-12}, {1.57596, 1.57551, 1.57551, -4.72653, 4.72653, 4.72653, -1.57551, 1.57551, -1.57596, -1.57596, -1.57551, 1.57596, -10.1993, -6.30204, -6.30204, 6.30204, -6.30204, 10.1993, -0.000556765, -3.89487, 0.000556765, 4.86997e-13, 4.81002e-13, -3.89543, 6.30439, 10.1969, -6.30439, 3.89543, -1.81322e-12, -1.80744e-12}, {1.57596, 1.57551, 1.57551, 1.57551, -1.57551, -1.57551, 4.72653, -4.72653, 4.72788, -1.57596, -1.57551, 1.57596, -3.89543, 1.8201e-12, 1.81388e-12, -6.30204, 6.30204, 10.1975, -6.30439, -10.1969, -6.30148, 4.87441e-13, 4.99209e-13, -3.89543, 0.000556765, 3.89487, -0.000556765, 10.1993, 6.30204, -6.30384}, {1.57596, 1.57551, 1.57551, 1.57551, -1.57551, -1.57551, -1.57551, 1.57551, -1.57596, 4.72788, 4.72653, -4.72788, -3.89543, 1.81255e-12, 1.81877e-12, -4.87832e-13, -4.87388e-13, 3.89543, -0.000556765, -3.89487, 0.000556765, -6.30384, -6.30204, -10.1975, -6.30148, 10.1969, 6.30148, 10.1975, -6.30204, 6.30384}, {5.36656, -5.36656, -5.3681, 3.64699, -0.373467, 2.77696, 0, 0, -3.15147, -1.85814, -1.41539, -1.41486, -16.8847, -0.255645, -16.7521, -4.50793, 0.461631, 0.46292, 2.21115, -2.21115, 14.2895, 11.9405, 5.19992, 5.1965, -2.21115, 2.21115, -1.68365, 2.29678, 1.74951, 5.64429}, {-1.78885, 1.78885, 1.78937, -10.941, 1.1204, -8.33088, 0, 0, -3.15147, -1.85814, -1.41539, -1.41486, 4.85864, -8.90493, -12.8018, -4.50793, 0.461631, 13.0688, 2.21115, -2.21115, 1.68365, 4.50793, -0.461631, -0.46292, 5.2214, 7.87269, 3.97577, 2.29678, 1.74951, 5.64429}, {-1.78885, 1.78885, 1.78937, 3.64699, -0.373467, 2.77696, 0, 0, 9.45441, -1.85814, -1.41539, -1.41486, -2.29678, -1.74951, -5.64429, -19.0959, 1.9555, -10.6449, 9.36656, -9.36656, -5.47381, 4.50793, -0.461631, -0.46292, -2.21115, 2.21115, -1.68365, 9.72932, 7.41106, 11.3037}, {-1.78885, 1.78885, 1.78937, 3.64699, -0.373467, 2.77696, 0, 0, -3.15147, 5.57441, 4.24616, 4.24457, -2.29678, -1.74951, -5.64429, -4.50793, 0.461631, 0.46292, 2.21115, -2.21115, 1.68365, 11.6633, -7.61705, -7.62038, -16.7991, 3.70501, -12.7915, 2.29678, 1.74951, 18.2502}, {-0.570843, 5.57441, 4.24616, -0.373467, 3.64699, -0.373467, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, 1.7203, -16.7991, 3.70501, -1.74951, -2.29678, -1.74951, -9.60176, 11.6633, -7.61705, 8.17219, 2.29678, 1.74951, 2.44635, -4.50793, 0.461631, -0.226431, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, 1.1204, -10.941, 1.1204, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, -0.534693, 5.2214, 7.87269, -8.90493, 4.85864, -8.90493, -2.44635, 4.50793, -0.461631, 1.74951, 2.29678, 1.74951, 8.86902, -4.50793, 0.461631, -0.226431, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, -0.373467, 3.64699, -0.373467, -5.36656, 5.36656, -5.36656, -1.60567, 0, 0, 0.226431, -2.21115, 2.21115, -0.255645, -16.8847, -0.255645, -3.20747, 11.9405, 5.19992, 1.74951, 2.29678, 1.74951, 2.44635, -4.50793, 0.461631, 6.19624, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, -0.373467, 3.64699, -0.373467, 1.78885, -1.78885, 1.78885, 4.817, 0, 0, 0.226431, -2.21115, 2.21115, -1.74951, -2.29678, -1.74951, -2.44635, 4.50793, -0.461631, 0.988391, 9.72932, 7.41106, 3.94022, -19.0959, 1.9555, -7.38185, 9.36656, -9.36656}, {-2.4085, 2.4085, -2.4085, 0.802834, 0.802834, -0.802834, 0.0313083, 1.63555, 1.63555, -1.63698, -1.63555, -1.63555, -5.19605, -3.21134, 3.21134, -1.03106, -3.014, -1.02929, -1.15629, -7.57148, -9.55619, 7.57896, 9.55619, 7.57148, 1.03106, 1.02929, 3.014, 1.98471, -8.43769e-15, 6.21725e-15}, {0.802834, -0.802834, 0.802834, -2.4085, -2.4085, 2.4085, 0.0313083, 1.63555, 1.63555, -1.63698, -1.63555, -1.63555, -5.19605, 3.21134, -3.21134, -1.15629, -9.55619, -7.57148, -1.03106, -1.02929, -3.014, 1.03106, 3.014, 1.02929, 7.57896, 7.57148, 9.55619, 1.98471, -7.54952e-15, 7.10543e-15}, {0.802834, -0.802834, 0.802834, 0.802834, 0.802834, -0.802834, -0.0939249, -4.90664, -4.90664, -1.63698, -1.63555, -1.63555, -1.98471, 7.10543e-15, -6.66134e-15, -4.24239, -6.22534, 2.18205, -4.24239, 2.18205, -6.22534, 1.03106, 3.014, 1.02929, 1.03106, 1.02929, 3.014, 8.53262, 6.54219, 6.54219}, {0.802834, -0.802834, 0.802834, 0.802834, 0.802834, -0.802834, 0.0313083, 1.63555, 1.63555, 4.91093, 4.90664, 4.90664, -1.98471, 6.21725e-15, -6.66134e-15, -1.03106, -3.014, -1.02929, -1.03106, -1.02929, -3.014, -2.18028, 6.22534, -2.18205, -2.18028, -2.18205, 6.22534, 1.85948, -6.54219, -6.54219}, {5.36656, 5.36656, -5.36656, 0, 0, -3.15147, 3.15147, -1.39953e-15, -1.06606e-15, -1.36261, 1.78885, 1.36261, 2.21115, 2.21115, 14.2902, -3.89543, 1.72992e-15, 3.89543, -14.2902, 2.21115, -2.21115, 9.34589, -7.15542, -9.34589, 1.68428, -2.21115, 2.21115, -2.21115, -2.21115, -1.68428}, {-1.78885, -1.78885, 1.78885, 0, 0, 9.45441, 3.15147, 2.79907e-15, 2.13212e-15, -1.36261, 1.78885, 1.36261, 9.36656, 9.36656, -5.47113, -16.5013, -1.46561e-14, 3.89543, -1.68428, 2.21115, -2.21115, 3.89543, 3.90393e-15, -3.89543, 7.13474, -9.36656, -3.23931, -2.21115, -2.21115, -1.68428}, {-1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -9.45441, 0, 0, -1.36261, 1.78885, 1.36261, 2.21115, 2.21115, 1.68428, -3.89543, 0, 16.5013, 5.47113, 9.36656, -9.36656, 3.89543, 4.44089e-16, -3.89543, 1.68428, -2.21115, 2.21115, 3.23931, -9.36656, -7.13474}, {-1.78885, -1.78885, 1.78885, 0, 0, -3.15147, 3.15147, 1.39953e-15, 1.06606e-15, 4.08784, -5.36656, -4.08784, 2.21115, 2.21115, 1.68428, -3.89543, -1.72992e-15, 3.89543, -1.68428, 2.21115, -2.21115, 11.0508, 7.15542, -11.0508, 1.68428, -2.21115, 14.817, -14.817, -2.21115, -1.68428}, {1.55756, -1.55231, 6.66925, 0.74491, 1.59978, -0.633715, 1.29557, -1.29442, 0.512752, -1.52129, -0.822804, 2.34405, -3.25865, -9.01615, 6.06606, -2.52217, -0.377453, 0.149519, -6.14194, 6.13806, 0.0630791, 8.60734, 3.66867, -9.52571, 0.95966, -0.960396, -2.11409, 0.279008, 2.61703, -3.5312}, {-0.519188, 0.517438, -2.22308, -2.23473, -4.79934, 1.90115, 1.29557, -1.29442, 0.512752, -1.52129, -0.822804, 2.34405, 1.79774, -4.68678, 12.4235, -7.70445, 4.80021, -1.90149, -0.95966, 0.960396, 2.11409, 2.52217, 0.377453, -0.149519, 7.04482, 2.33082, -11.4903, 0.279008, 2.61703, -3.5312}, {-0.519188, 0.517438, -2.22308, 0.74491, 1.59978, -0.633715, -3.88671, 3.88325, -1.53826, -1.52129, -0.822804, 2.34405, -0.279008, -2.61703, 3.5312, -5.50181, -6.77658, 2.68438, 1.11709, -1.10936, 11.0064, 2.52217, 0.377453, -0.149519, 0.95966, -0.960396, -2.11409, 6.36417, 5.90824, -12.9074}, {-0.519188, 0.517438, -2.22308, 0.74491, 1.59978, -0.633715, 1.29557, -1.29442, 0.512752, 4.56387, 2.46841, -7.03214, -0.279008, -2.61703, 3.5312, -2.52217, -0.377453, 0.149519, -0.95966, 0.960396, 2.11409, 4.59892, -1.6923, 8.74282, -2.01998, -7.35952, 0.420775, -4.90327, 7.79469, -5.58221}, {-3.62807, -1.43344, -3.62246, -0.761007, 2.64249, 1.57539, -0.983272, -2.40589, -0.977465, 0.534922, -0.714416, -1.80541, 2.48984, -14.4269, -9.74136, 2.15605, -0.292457, -0.73907, 3.65363, 12.0068, 3.62554, -4.29574, 3.15012, 7.96069, 0.279456, -2.38324, 0.28432, 0.554191, 3.85691, 3.43982}, {1.20936, 0.477813, 1.20749, 2.28302, -7.92748, -4.72616, -0.983272, -2.40589, -0.977465, 0.534922, -0.714416, -1.80541, -5.39162, -5.76816, -8.26976, 6.08913, 9.33111, 3.17079, -0.279456, 2.38324, -0.28432, -2.15605, 0.292457, 0.73907, -1.86023, 0.474427, 7.50594, 0.554191, 3.85691, 3.43982}, {1.20936, 0.477813, 1.20749, -0.761007, 2.64249, 1.57539, 2.94982, 7.21767, 2.9324, 0.534922, -0.714416, -1.80541, -0.554191, -3.85691, -3.43982, 5.20007, -10.8624, -7.04061, -5.11688, 0.471983, -5.11426, -2.15605, 0.292457, 0.73907, 0.279456, -2.38324, 0.28432, -1.5855, 6.71457, 10.6614}, {1.20936, 0.477813, 1.20749, -0.761007, 2.64249, 1.57539, -0.983272, -2.40589, -0.977465, -1.60477, 2.14325, 5.41622, -0.554191, -3.85691, -3.43982, 2.15605, -0.292457, -0.73907, -0.279456, 2.38324, -0.28432, -6.99347, -1.6188, -4.09087, 3.32348, -12.9532, -6.01722, 4.48728, 13.4805, 7.34968}, {5.81909, -7.61025, 0.600985, 0.610485, 1.54108, -1.54262, 0, -2.33948, 0, 1.32921, -1.73835, 1.74295, -0.798945, -11.2048, 8.32487, -0.754601, 0.986874, 1.90678, 2.3976, 9.11407, 0.24762, -4.56224, 5.96654, -8.87857, -2.3976, 0.243842, -0.24762, -1.643, 5.04048, -2.1544}, {-1.9397, 2.53675, -0.200328, -1.83146, -4.62324, 4.62785, 0, -2.33948, 0, 1.32921, -1.73835, 1.74295, 9.40178, -15.1875, 2.95571, -0.754601, 10.3448, 1.90678, 2.3976, -0.243842, 0.24762, 0.754601, -0.986874, -1.90678, -7.71444, 7.19725, -7.21941, -1.643, 5.04048, -2.1544}, {-1.9397, 2.53675, -0.200328, 0.610485, 1.54108, -1.54262, 0, 7.01844, 0, 1.32921, -1.73835, 1.74295, 1.643, -5.04048, 2.1544, -3.19654, -5.17745, 8.07725, 10.1564, -10.3908, 1.04893, 0.754601, -0.986874, -1.90678, -2.3976, 0.243842, -0.24762, -6.95984, 11.9939, -9.12619}, {-1.9397, 2.53675, -0.200328, 0.610485, 1.54108, -1.54262, 0, -2.33948, 0, -3.98763, 5.21506, -5.22884, 1.643, -5.04048, 2.1544, -0.754601, 0.986874, 1.90678, 2.3976, -0.243842, 0.24762, 8.51339, -11.1339, -1.10547, -4.83954, -5.92048, 5.92285, -1.643, 14.3984, -2.1544}, {4.33994, -4.33994, -1.54017, 0, 0, -1.80556, -0.572575, -1.44665, 0.668413, 2.01922, 1.97175e-12, 0.623753, 1.78815, -1.78815, 8.81943, 0.707741, 1.78815, 1.40559, 4.7862, 5.78659, -4.13444, -8.78463, -1.78815, -3.9006, -2.4959, -2.43721e-12, 1.46079, -1.78815, 1.78815, -1.5972}, {-1.44665, 1.44665, 0.51339, 0, 0, 5.41667, -0.572575, -1.44665, 0.668413, 2.01922, 1.97138e-12, 0.623753, 7.57474, -7.57474, -0.456355, 2.99804, 7.57474, -1.26807, 2.4959, 2.43641e-12, -1.46079, -0.707741, -1.78815, -1.40559, -10.5728, -1.03223e-11, -1.03422, -1.78815, 1.78815, -1.5972}, {-1.44665, 1.44665, 0.51339, 0, 0, -1.80556, 1.71772, 4.33994, -2.00524, 2.01922, 1.97175e-12, 0.623753, 1.78815, -1.78815, 1.5972, 0.707741, 1.78815, 8.62781, 8.28248, -5.78659, -3.51435, -0.707741, -1.78815, -1.40559, -2.4959, -2.43721e-12, 1.46079, -9.86504, 1.78815, -4.09222}, {-1.44665, 1.44665, 0.51339, 0, 0, -1.80556, -0.572575, -1.44665, 0.668413, -6.05767, -5.91959e-12, -1.87126, 1.78815, -1.78815, 1.5972, 0.707741, 1.78815, 1.40559, 2.4959, 2.43865e-12, -1.46079, 5.07885, -7.57474, -3.45914, -2.4959, -2.43901e-12, 8.68301, 0.502145, 7.57474, -4.27086}, {5.36656, 5.36656, 5.36656, 0.373467, 0.373467, 3.64699, 1.41048e-15, 1.60567, -1.85169e-15, 1.41539, -0.190281, -1.85814, 0.255645, 0.255645, -16.8847, -0.461631, -2.44635, -4.50793, 2.21115, -6.19624, 2.21115, -5.19992, 3.20747, 11.9405, -2.21115, -0.226431, -2.21115, -1.74951, -1.74951, 2.29678}, {-1.78885, -1.78885, -1.78885, -1.1204, -1.1204, -10.941, 8.46287e-16, 1.60567, -1.11101e-15, 1.41539, -0.190281, -1.85814, 8.90493, 8.90493, 4.85864, -0.461631, -8.86902, -4.50793, 2.21115, 0.226431, 2.21115, 0.461631, 2.44635, 4.50793, -7.87269, 0.534693, 5.2214, -1.74951, -1.74951, 2.29678}, {-1.78885, -1.78885, -1.78885, 0.373467, 0.373467, 3.64699, 0, -4.817, 0, 1.41539, -0.190281, -1.85814, 1.74951, 1.74951, -2.29678, -1.9555, -3.94022, -19.0959, 9.36656, 7.38185, 9.36656, 0.461631, 2.44635, 4.50793, -2.21115, -0.226431, -2.21115, -7.41106, -0.988391, 9.72932}, {-1.78885, -1.78885, -1.78885, 0.373467, 0.373467, 3.64699, 2.82096e-16, 1.60567, -3.70338e-16, -4.24616, 0.570843, 5.57441, 1.74951, 1.74951, -2.29678, -0.461631, -2.44635, -4.50793, 2.21115, 0.226431, 2.21115, 7.61705, 9.60176, 11.6633, -3.70501, -1.7203, -16.7991, -1.74951, -8.17219, 2.29678}, {-4.24616, -4.24616, 5.57441, 3.15147, 2.92187e-16, 2.85327e-15, -1.78885, -1.78885, -1.78885, -2.778, 0.373467, 3.64699, -18.2508, -1.74951, 2.29678, -1.68428, 2.21115, 2.21115, 7.61705, 7.61705, 11.6633, 12.7963, -3.70501, -16.7991, -0.461631, -0.461631, -4.50793, 5.64494, 1.74951, -2.29678}, {1.41539, 1.41539, -1.85814, -9.45441, -5.07516e-15, -1.27584e-14, -1.78885, -1.78885, -1.78885, -2.778, 0.373467, 3.64699, -11.3065, -7.41106, 9.72932, 5.47113, 9.36656, 9.36656, 0.461631, 0.461631, 4.50793, 1.68428, -2.21115, -2.21115, 10.6504, -1.9555, -19.0959, 5.64494, 1.74951, -2.29678}, {1.41539, 1.41539, -1.85814, 3.15147, 0, 0, 5.36656, 5.36656, 5.36656, -2.778, 0.373467, 3.64699, -5.64494, -1.74951, 2.29678, -14.2902, 2.21115, 2.21115, -5.19992, -5.19992, 11.9405, 1.68428, -2.21115, -2.21115, -0.461631, -0.461631, -4.50793, 16.7569, 0.255645, -16.8847}, {1.41539, 1.41539, -1.85814, 3.15147, 2.92187e-16, 2.85327e-15, -1.78885, -1.78885, -1.78885, 8.334, -1.1204, -10.941, -5.64494, -1.74951, 2.29678, -1.68428, 2.21115, 2.21115, 0.461631, 0.461631, 4.50793, -3.97726, -7.87269, 5.2214, -13.0675, -0.461631, -4.50793, 12.8004, 8.90493, 4.85864}, {0.972456, 0.972456, -8.84811, 1.4362, 1.4362, 1.4362, -1.66806, -0.0623937, -1.66806, 0.556017, -1.04965, -2.71751, -7.11935, -7.11935, -11.1656, 0.286601, -1.69811, 0.286601, 9.13476, 0.727372, 5.08846, -2.51067, 5.89672, 10.5834, -2.46251, -0.477797, 1.58378, 1.37456, 1.37456, 5.42086}, {-0.324152, -0.324152, 2.94937, -4.30859, -4.30859, -4.30859, -1.66806, -0.0623937, -1.66806, 0.556017, -1.04965, -2.71751, -0.0779551, -0.0779551, -17.2183, 6.95885, -1.44854, 6.95885, 2.46251, 0.477797, -1.58378, -0.286601, 1.69811, -0.286601, -4.68658, 3.72081, 12.4538, 1.37456, 1.37456, 5.42086}, {-0.324152, -0.324152, 2.94937, 1.4362, 1.4362, 1.4362, 5.00419, 0.187181, 5.00419, 0.556017, -1.04965, -2.71751, -1.37456, -1.37456, -5.42086, -5.45818, -7.4429, -5.45818, 3.75912, 1.7744, -13.3813, -0.286601, 1.69811, -0.286601, -2.46251, -0.477797, 1.58378, -0.849506, 5.57317, 16.2909}, {-0.324152, -0.324152, 2.94937, 1.4362, 1.4362, 1.4362, -1.66806, -0.0623937, -1.66806, -1.66805, 3.14895, 8.15252, -1.37456, -1.37456, -5.42086, 0.286601, -1.69811, 0.286601, 2.46251, 0.477797, -1.58378, 1.01001, 2.99472, -12.0841, -8.2073, -6.22258, -4.161, 8.04681, 1.62414, 12.0931}, {3.33613, 3.33613, 13.1567, 1.4362, 1.4362, 1.4362, 0.767151, -2.38432, -2.38432, -1.0913, 2.06017, 5.33369, -6.14546, -6.14546, -2.09916, -2.72349, 1.17194, 1.17194, -2.64229, 13.859, 17.9053, 7.0887, -9.4126, -22.5067, -0.426311, -4.32174, -8.36804, 0.400674, 0.400674, -3.64562}, {-1.11204, -1.11204, -4.38557, -4.30859, -4.30859, -4.30859, 0.767151, -2.38432, -2.38432, -1.0913, 2.06017, 5.33369, 4.0475, 4.0475, 21.1879, -5.79209, 10.7092, 10.7092, 0.426311, 4.32174, 8.36804, 2.72349, -1.17194, -1.17194, 3.9389, -12.5624, -29.7028, 0.400674, 0.400674, -3.64562}, {-1.11204, -1.11204, -4.38557, 1.4362, 1.4362, 1.4362, -2.30145, 7.15295, 7.15295, -1.0913, 2.06017, 5.33369, -0.400674, -0.400674, 3.64562, -8.46827, -4.57284, -4.57284, 4.87449, 8.76992, 25.9103, 2.72349, -1.17194, -1.17194, -0.426311, -4.32174, -8.36804, 4.76589, -7.83999, -24.9804}, {-1.11204, -1.11204, -4.38557, 1.4362, 1.4362, 1.4362, 0.767151, -2.38432, -2.38432, 3.27391, -6.1805, -16.0011, -0.400674, -0.400674, 3.64562, -2.72349, 1.17194, 1.17194, 0.426311, 4.32174, 8.36804, 7.17167, 3.27624, 16.3703, -6.1711, -10.0665, -14.1128, -2.66793, 9.93794, 5.89165}, {-6.6428, 1.48026, 1.47837, 0.647646, 0.70771, -1.63632, -0.372676, 0.942791, 0.941589, -2.48924, -1.15708, 1.18752, -6.1281, -3.09572, 9.177, -0.339882, -2.04013, 0.858732, -0.785628, -4.32662, -4.3211, 10.2968, 6.66845, -5.60881, 2.27633, 0.555453, 0.554744, 3.53752, 0.264876, -2.63172}, {2.21427, -0.493421, -0.492791, -1.94294, -2.12313, 4.90895, -0.372676, 0.942791, 0.941589, -2.48924, -1.15708, 1.18752, -12.3946, 1.70881, 4.60289, 1.15082, -5.8113, -2.90762, -2.27633, -0.555453, -0.554744, 0.339882, 2.04013, -0.858732, 12.2333, 5.18378, -4.19534, 3.53752, 0.264876, -2.63172}, {2.21427, -0.493421, -0.492791, 0.647646, 0.70771, -1.63632, 1.11803, -2.82837, -2.82477, -2.48924, -1.15708, 1.18752, -3.53752, -0.264876, 2.63172, -2.93046, -4.87097, 7.404, -11.1334, 1.41823, 1.41642, 0.339882, 2.04013, -0.858732, 2.27633, 0.555453, 0.554744, 13.4945, 4.8932, -7.38181}, {2.21427, -0.493421, -0.492791, 0.647646, 0.70771, -1.63632, -0.372676, 0.942791, 0.941589, 7.46771, 3.47124, -3.56256, -3.53752, -0.264876, 2.63172, -0.339882, -2.04013, 0.858732, -2.27633, -0.555453, -0.554744, -8.51718, 4.01381, 1.11243, -0.314251, -2.27539, 7.10002, 5.02822, -3.50629, -6.39808}, {1.12186, -2.82659, -2.82659, -1.84098, -0.449088, -0.449088, 0.510215, -1.28552, 0.320147, 1.70472, 0.792411, -0.813257, 10.1017, 1.18683, 1.18683, 1.64492, 2.14409, 0.15938, -2.20929, 5.56645, -2.84093, -8.4638, -5.31374, 3.09365, 0.16843, -0.424371, 1.56034, -2.73781, 0.609518, 0.609518}, {-0.373952, 0.942198, 0.942198, 5.52295, 1.34726, 1.34726, 0.510215, -1.28552, 0.320147, 1.70472, 0.792411, -0.813257, 4.23362, -4.37831, -4.37831, -0.395942, 7.28618, -1.12121, -0.16843, 0.424371, -1.56034, -1.64492, -2.14409, -0.15938, -6.65045, -3.59401, 4.81337, -2.73781, 0.609518, 0.609518}, {-0.373952, 0.942198, 0.942198, -1.84098, -0.449088, -0.449088, -1.53064, 3.85656, -0.960441, 1.70472, 0.792411, -0.813257, 2.73781, -0.609518, -0.609518, 9.00885, 3.94045, 1.95573, 1.32738, -3.34442, -5.32914, -1.64492, -2.14409, -0.15938, 0.16843, -0.424371, 1.56034, -9.55669, -2.56013, 3.86255}, {-0.373952, 0.942198, 0.942198, -1.84098, -0.449088, -0.449088, 0.510215, -1.28552, 0.320147, -5.11416, -2.37723, 2.43977, 2.73781, -0.609518, -0.609518, 1.64492, 2.14409, 0.15938, -0.16843, 0.424371, -1.56034, -0.149109, -5.91289, -3.92817, 7.53236, 1.37198, 3.3567, -4.77867, 5.7516, -0.67107}, {0.461366, -4.35523, -1.72378, -0.132927, -0.133043, -2.07188, -0.954792, -0.955627, -0.378232, 1.24151, -0.363075, 1.87552, 0.886107, -1.09783, 10.1383, 1.34449, 1.34567, 3.0285, 5.18945, 3.20927, 1.27021, -6.31053, 0.10663, -10.5306, -1.37028, 0.613236, 0.242715, -0.3544, 1.63001, -1.85075}, {-0.153789, 1.45174, 0.574593, 0.39878, 0.399129, 6.21564, -0.954792, -0.955627, -0.378232, 1.24151, -0.363075, 1.87552, 0.969555, -7.43698, -0.447622, 5.16366, 5.16818, 4.54143, 1.37028, -0.613236, -0.242715, -1.34449, -1.34567, -3.0285, -6.33631, 2.06554, -7.25936, -0.3544, 1.63001, -1.85075}, {-0.153789, 1.45174, 0.574593, -0.132927, -0.133043, -2.07188, 2.86438, 2.86688, 1.1347, 1.24151, -0.363075, 1.87552, 0.3544, -1.63001, 1.85075, 1.8762, 1.87784, 11.316, 1.98544, -6.42021, -2.54109, -1.34449, -1.34567, -3.0285, -1.37028, 0.613236, 0.242715, -5.32043, 3.08231, -9.35282}, {-0.153789, 1.45174, 0.574593, -0.132927, -0.133043, -2.07188, -0.954792, -0.955627, -0.378232, -3.72452, 1.08923, -5.62656, 0.3544, -1.63001, 1.85075, 1.34449, 1.34567, 3.0285, 1.37028, -0.613236, -0.242715, -0.72934, -7.15265, -5.32687, -0.838575, 1.14541, 8.53023, 3.46477, 5.45251, -0.337821}, {4.44089e-16, 7.02938, 0, 1.54187, 1.54427, 0.609885, -1.74043, -1.74314, 1.3308, 0.198561, 2.542, -1.94068, -8.07331, -5.18964, -3.1934, 0.245434, 0.245817, -2.39881, 9.11299, 12.0235, -6.96814, -1.03968, -10.4138, 10.1615, -2.15129, -5.0509, 1.64495, 1.90585, -0.987441, 0.75386}, {3.05311e-16, -2.34313, -2.22045e-16, -4.6256, -4.63281, -1.82966, -1.74043, -1.74314, 1.3308, 0.198561, 2.542, -1.94068, -1.90585, 10.3599, -0.75386, 7.20714, 7.21837, -7.722, 2.15129, 5.0509, -1.64495, -0.245434, -0.245817, 2.39881, -2.94553, -15.2189, 9.40768, 1.90585, -0.987441, 0.75386}, {-3.60822e-16, -2.34313, -2.22045e-16, 1.54187, 1.54427, 0.609885, 5.22128, 5.22942, -3.99239, 0.198561, 2.542, -1.94068, -1.90585, 0.987441, -0.75386, -5.92203, -5.93126, -4.83836, 2.15129, 14.4234, -1.64495, -0.245434, -0.245817, 2.39881, -2.15129, -5.0509, 1.64495, 1.11161, -11.1554, 8.51658}, {-5.55112e-17, -2.34313, 0, 1.54187, 1.54427, 0.609885, -1.74043, -1.74314, 1.3308, -0.595682, -7.62599, 5.82204, -1.90585, 0.987441, -0.75386, 0.245434, 0.245817, -2.39881, 2.15129, 5.0509, -1.64495, -0.245434, 9.12668, 2.39881, -8.31875, -11.228, -0.794587, 8.86756, 5.98512, -4.56932}, {4.8128, 0, 0, 1.54178, 1.54312, 0.61076, 0.198549, 0.198723, -1.94057, -0.136059, -1.74185, 1.32981, -6.08986, -8.0799, -3.19798, -2.15116, -2.15304, 1.64373, 0.943366, -1.04052, 10.1609, 2.6954, 9.12042, -6.96297, -1.73756, 0.245635, -2.39867, -0.0772416, 1.90741, 0.754941}, {-1.60427, 0, 0, -4.62533, -4.62937, -1.83228, 0.198549, 0.198723, -1.94057, -0.136059, -1.74185, 1.32981, 6.49431, -1.90741, -0.754941, -2.94536, -2.94793, 9.40601, 1.73756, -0.245635, 2.39867, 2.15116, 2.15304, -1.64373, -1.19332, 7.21302, -7.71791, -0.0772416, 1.90741, 0.754941}, {-1.60427, 2.22045e-16, -2.22045e-16, 1.54178, 1.54312, 0.61076, -0.595647, -0.596168, 5.82171, -0.136059, -1.74185, 1.32981, 0.0772416, -1.90741, -0.754941, -8.31826, -8.32553, -0.799305, 8.15463, -0.245635, 2.39867, 2.15116, 2.15304, -1.64373, -1.73756, 0.245635, -2.39867, 0.466995, 8.87479, -4.5643}, {-1.60427, 0, -2.22045e-16, 1.54178, 1.54312, 0.61076, 0.198549, 0.198723, -1.94057, 0.408178, 5.22554, -3.98943, 0.0772416, -1.90741, -0.754941, -2.15116, -2.15304, 1.64373, 1.73756, -0.245635, 2.39867, 8.56822, 2.15304, -1.64373, -7.90467, -5.92686, -4.84171, -0.871438, 1.11252, 8.51722}, {4.91028, -4.91028, -4.91028, -1.57573, -1.57573, 1.57573, 1.57573, 1.57573, 1.57573, 1.63676, -1.63676, -4.78823, 10.2738, 6.2275, -10.2738, -3.02869e-13, -3.06644e-13, -3.89543, -6.2275, -10.2738, -10.2738, -6.54704, 6.54704, 23.0483, -0.0754334, 3.97086, 3.97086, -3.97086, 0.0754334, 3.97086}, {-1.63676, 1.63676, 1.63676, 4.7272, 4.7272, -4.7272, 1.57573, 1.57573, 1.57573, 1.63676, -1.63676, -4.78823, 10.5179, -6.62248, -10.5179, -6.30294, -6.30294, -10.1984, 0.0754334, -3.97086, -3.97086, 3.01943e-13, 3.04683e-13, 3.89543, -6.62248, 10.5179, 23.1238, -3.97086, 0.0754334, 3.97086}, {-1.63676, 1.63676, 1.63676, -1.57573, -1.57573, 1.57573, -4.7272, -4.7272, -4.7272, 1.63676, -1.63676, -4.78823, 3.97086, -0.0754334, -3.97086, 6.30294, 6.30294, -10.1984, 6.62248, -10.5179, -10.5179, 3.00389e-13, 2.99798e-13, 3.89543, -0.0754334, 3.97086, 3.97086, -10.5179, 6.62248, 23.1238}, {-1.63676, 1.63676, 1.63676, -1.57573, -1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -4.91028, 4.91028, 14.3647, 3.97086, -0.0754334, -3.97086, -2.96652e-13, -3.00426e-13, -3.89543, 0.0754334, -3.97086, -3.97086, 6.54704, -6.54704, -2.65162, 6.2275, 10.2738, -2.33207, -10.2738, -6.2275, -2.33207}, {4.24616, -5.57441, -4.24616, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, -0.373467, -3.64699, -2.778, 1.74951, -2.29678, -18.2508, -2.21115, -2.21115, -1.68428, -7.61705, -11.6633, 7.61705, 3.70501, 16.7991, 12.7963, 0.461631, 4.50793, -0.461631, -1.74951, 2.29678, 5.64494}, {-1.41539, 1.85814, 1.41539, 5.07516e-15, 1.27584e-14, -9.45441, 1.78885, 1.78885, -1.78885, -0.373467, -3.64699, -2.778, 7.41106, -9.72932, -11.3065, -9.36656, -9.36656, 5.47113, -0.461631, -4.50793, 0.461631, 2.21115, 2.21115, 1.68428, 1.9555, 19.0959, 10.6504, -1.74951, 2.29678, 5.64494}, {-1.41539, 1.85814, 1.41539, 0, 0, 3.15147, -5.36656, -5.36656, 5.36656, -0.373467, -3.64699, -2.778, 1.74951, -2.29678, -5.64494, -2.21115, -2.21115, -14.2902, 5.19992, -11.9405, -5.19992, 2.21115, 2.21115, 1.68428, 0.461631, 4.50793, -0.461631, -0.255645, 16.8847, 16.7569}, {-1.41539, 1.85814, 1.41539, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, 1.1204, 10.941, 8.334, 1.74951, -2.29678, -5.64494, -2.21115, -2.21115, -1.68428, -0.461631, -4.50793, 0.461631, 7.87269, -5.2214, -3.97726, 0.461631, 4.50793, -13.0675, -8.90493, -4.85864, 12.8004}, {-5.36656, -5.36656, 5.36656, -0.373467, -3.64699, 0.373467, -1.60567, 0, 0, 0.190281, 1.85814, 1.41539, -0.255645, 16.8847, 0.255645, 2.44635, 4.50793, -0.461631, 6.19624, -2.21115, 2.21115, -3.20747, -11.9405, -5.19992, 0.226431, 2.21115, -2.21115, 1.74951, -2.29678, -1.74951}, {1.78885, 1.78885, -1.78885, 1.1204, 10.941, -1.1204, -1.60567, 0, 0, 0.190281, 1.85814, 1.41539, -8.90493, -4.85864, 8.90493, 8.86902, 4.50793, -0.461631, -0.226431, -2.21115, 2.21115, -2.44635, -4.50793, 0.461631, -0.534693, -5.2214, -7.87269, 1.74951, -2.29678, -1.74951}, {1.78885, 1.78885, -1.78885, -0.373467, -3.64699, 0.373467, 4.817, 0, 0, 0.190281, 1.85814, 1.41539, -1.74951, 2.29678, 1.74951, 3.94022, 19.0959, -1.9555, -7.38185, -9.36656, 9.36656, -2.44635, -4.50793, 0.461631, 0.226431, 2.21115, -2.21115, 0.988391, -9.72932, -7.41106}, {1.78885, 1.78885, -1.78885, -0.373467, -3.64699, 0.373467, -1.60567, 0, 0, -0.570843, -5.57441, -4.24616, -1.74951, 2.29678, 1.74951, 2.44635, 4.50793, -0.461631, -0.226431, -2.21115, 2.21115, -9.60176, -11.6633, 7.61705, 1.7203, 16.7991, -3.70501, 8.17219, -2.29678, -1.74951}, {-1.80799, -0.0150891, -4.77555, -0.827431, 1.45271, 0.471751, -0.860099, -1.45095, 0.0849431, 1.08487, -0.00678866, -2.14855, 3.58755, -7.6127, -4.43776, 2.0859, -0.00217419, -0.688112, 3.7586, 7.59105, -2.4124, -6.42536, 0.0293288, 9.28229, -0.318207, -1.78726, 2.07263, -0.277826, 1.80186, 2.55075}, {0.602665, 0.0050297, 1.59185, 2.48229, -4.35813, -1.41525, -0.860099, -1.45095, 0.0849431, 1.08487, -0.00678866, -2.14855, -2.13283, -1.82198, -8.91816, 5.5263, 5.80162, -1.02788, 0.318207, 1.78726, -2.07263, -2.0859, 0.00217419, 0.688112, -4.65767, -1.7601, 10.6668, -0.277826, 1.80186, 2.55075}, {0.602665, 0.0050297, 1.59185, -0.827431, 1.45271, 0.471751, 2.5803, 4.35285, -0.254829, 1.08487, -0.00678866, -2.14855, 0.277826, -1.80186, -2.55075, 5.39562, -5.81301, -2.57512, -2.09245, 1.76714, -8.44004, -2.0859, 0.00217419, 0.688112, -0.318207, -1.78726, 2.07263, -4.61729, 1.82902, 11.1449}, {0.602665, 0.0050297, 1.59185, -0.827431, 1.45271, 0.471751, -0.860099, -1.45095, 0.0849431, -3.2546, 0.020366, 6.44564, 0.277826, -1.80186, -2.55075, 2.0859, -0.00217419, -0.688112, 0.318207, 1.78726, -2.07263, -4.49656, -0.0179446, -5.67929, 2.99152, -7.59809, 0.185628, 3.16257, 7.60566, 2.21098}, {1.57878, 4.35912, 1.72866, 0.141226, 1.44665, -1.44665, 1.40644, -1.11582e-18, -3.53145e-16, -1.02141, 0.00639156, 2.02287, -0.0889792, -5.77869, 8.28699, -1.91302, -1.78815, 1.78815, -6.71372, 1.79605, 0.712247, 5.99864, 1.76259, -9.87962, 1.08796, -1.79605, -0.712247, -0.475926, -0.0079004, -2.5004}, {-0.526258, -1.45304, -0.57622, -0.423679, -4.33994, 4.33994, 1.40644, -3.34745e-18, -1.05944e-15, -1.02141, 0.00639156, 2.02287, 2.58096, 5.82005, 4.80528, -7.53877, -1.78815, 1.78815, -1.08796, 1.79605, 0.712247, 1.91302, 1.78815, -1.78815, 5.17359, -1.82162, -8.80371, -0.475926, -0.0079004, -2.5004}, {-0.526258, -1.45304, -0.57622, 0.141226, 1.44665, -1.44665, -4.21932, 0, 0, -1.02141, 0.00639156, 2.02287, 0.475926, 0.0079004, 2.5004, -2.47792, -7.57474, 7.57474, 1.01707, 7.60821, 3.01713, 1.91302, 1.78815, -1.78815, 1.08796, -1.79605, -0.712247, 3.6097, -0.0334666, -10.5919}, {-0.526258, -1.45304, -0.57622, 0.141226, 1.44665, -1.44665, 1.40644, 3.34745e-18, 1.05944e-15, 3.06422, -0.0191747, -6.0686, 0.475926, 0.0079004, 2.5004, -1.91302, -1.78815, 1.78815, -1.08796, 1.79605, 0.712247, 4.01805, 7.60031, 0.516725, 0.523057, -7.58264, 5.07434, -6.10168, -0.0079004, -2.5004}, {10.941, -1.1204, -1.1204, 1.78885, -1.78885, -1.78885, -3.70338e-16, -2.82096e-16, 1.60567, 1.85814, 1.41539, -0.190281, -4.85864, 8.90493, 8.90493, -2.21115, 2.21115, 0.226431, 4.50793, -0.461631, -8.86902, -5.2214, -7.87269, 0.534693, -4.50793, 0.461631, 2.44635, -2.29678, -1.74951, -1.74951}, {-3.64699, 0.373467, 0.373467, -5.36656, 5.36656, 5.36656, -1.11101e-15, -8.46287e-16, 1.60567, 1.85814, 1.41539, -0.190281, 16.8847, 0.255645, 0.255645, -2.21115, 2.21115, -6.19624, 4.50793, -0.461631, -2.44635, 2.21115, -2.21115, -0.226431, -11.9405, -5.19992, 3.20747, -2.29678, -1.74951, -1.74951}, {-3.64699, 0.373467, 0.373467, 1.78885, -1.78885, -1.78885, 0, 0, -4.817, 1.85814, 1.41539, -0.190281, 2.29678, 1.74951, 1.74951, -9.36656, 9.36656, 7.38185, 19.0959, -1.9555, -3.94022, 2.21115, -2.21115, -0.226431, -4.50793, 0.461631, 2.44635, -9.72932, -7.41106, -0.988391}, {-3.64699, 0.373467, 0.373467, 1.78885, -1.78885, -1.78885, 1.11101e-15, 8.46287e-16, 1.60567, -5.57441, -4.24616, 0.570843, 2.29678, 1.74951, 1.74951, -2.21115, 2.21115, 0.226431, 4.50793, -0.461631, -2.44635, 16.7991, -3.70501, -1.7203, -11.6633, 7.61705, 9.60176, -2.29678, -1.74951, -8.17219}, {-5.57441, -4.24616, -4.24616, 1.78885, -1.78885, -1.78885, 2.85327e-15, 3.15147, -2.92187e-16, -3.64699, -2.778, 0.373467, -11.6633, 7.61705, 7.61705, -2.21115, -1.68428, 2.21115, -2.29678, -18.2508, -1.74951, 16.7991, 12.7963, -3.70501, 2.29678, 5.64494, 1.74951, 4.50793, -0.461631, -0.461631}, {1.85814, 1.41539, 1.41539, -5.36656, 5.36656, 5.36656, -5.70654e-15, 3.15147, 5.84374e-16, -3.64699, -2.778, 0.373467, -11.9405, -5.19992, -5.19992, -2.21115, -14.2902, 2.21115, -2.29678, -5.64494, -1.74951, 2.21115, 1.68428, -2.21115, 16.8847, 16.7569, 0.255645, 4.50793, -0.461631, -0.461631}, {1.85814, 1.41539, 1.41539, 1.78885, -1.78885, -1.78885, 0, -9.45441, 0, -3.64699, -2.778, 0.373467, -4.50793, 0.461631, 0.461631, -9.36656, 5.47113, 9.36656, -9.72932, -11.3065, -7.41106, 2.21115, 1.68428, -2.21115, 2.29678, 5.64494, 1.74951, 19.0959, 10.6504, -1.9555}, {1.85814, 1.41539, 1.41539, 1.78885, -1.78885, -1.78885, -2.85327e-15, 3.15147, 2.92187e-16, 10.941, 8.334, -1.1204, -4.50793, 0.461631, 0.461631, -2.21115, -1.68428, 2.21115, -2.29678, -5.64494, -1.74951, -5.2214, -3.97726, -7.87269, -4.85864, 12.8004, 8.90493, 4.50793, -13.0675, -0.461631}, {0.184458, 9.63611, 9.63611, 0.802834, -0.802834, 0.802834, -1.57551, 1.57551, 1.57551, 0.834161, 2.43936, 0.833693, -4.12769, 8.17399, -0.233398, 0.955079, -0.955079, -2.93979, 8.32547, -4.27918, -4.27918, -4.29172, -8.80237, -0.394979, -2.02344, -2.02286, -2.02286, 0.916356, -4.96265, -2.97794}, {-0.0614861, -3.21204, -3.21204, -2.4085, 2.4085, -2.4085, -1.57551, 1.57551, 1.57551, 0.834161, 2.43936, 0.833693, -0.670412, 17.8108, 15.8261, 7.25711, -7.25711, -9.24183, 2.02344, 2.02286, 2.02286, -0.955079, 0.955079, 2.93979, -5.36008, -11.7803, -5.35763, 0.916356, -4.96265, -2.97794}, {-0.0614861, -3.21204, -3.21204, 0.802834, -0.802834, 0.802834, 4.72653, -4.72653, -4.72653, 0.834161, 2.43936, 0.833693, -0.916356, 4.96265, 2.97794, -2.25626, 2.25626, -6.15113, 2.26938, 14.871, 14.871, -0.955079, 0.955079, 2.93979, -2.02344, -2.02286, -2.02286, -2.42029, -14.7201, -6.31271}, {-0.0614861, -3.21204, -3.21204, 0.802834, -0.802834, 0.802834, -1.57551, 1.57551, 1.57551, -2.50248, -7.31808, -2.50108, -0.916356, 4.96265, 2.97794, 0.955079, -0.955079, -2.93979, 2.02344, 2.02286, 2.02286, -0.709135, 13.8032, 15.7879, -5.23477, 1.18848, -5.23419, 7.21839, -11.2647, -9.27997}, {4.72653, -4.72653, -4.72653, 1.637, 1.63653, 1.63653, 1.57573, 1.57573, -1.57573, -1.63722, -4.78777, -1.6363, -6.62398, -10.5164, -10.5164, -3.97115, -3.97057, -0.0751443, -6.30322, -10.1981, 6.30322, 10.52, 23.1217, 6.62035, 0.000278382, 3.89515, -0.000278382, 0.076001, 3.9703, 3.9703}, {-1.57551, 1.57551, 1.57551, -4.91099, -4.90958, -4.90958, 1.57573, 1.57573, -1.57573, -1.63722, -4.78777, -1.6363, 6.22604, -10.2723, -10.2723, -10.2741, -10.2735, 6.22779, -0.000278382, -3.89515, 0.000278382, 3.97115, 3.97057, 0.0751443, 6.54916, 23.0462, 6.54493, 0.076001, 3.9703, 3.9703}, {-1.57551, 1.57551, 1.57551, 1.637, 1.63653, 1.63653, -4.7272, -4.7272, 4.7272, -1.63722, -4.78777, -1.6363, -0.076001, -3.9703, -3.9703, -10.5191, -10.5167, -6.62125, 6.30176, -10.1972, -6.30176, 3.97115, 3.97057, 0.0751443, 0.000278382, 3.89515, -0.000278382, 6.62488, 23.1214, 10.5155}, {-1.57551, 1.57551, 1.57551, 1.637, 1.63653, 1.63653, 1.57573, 1.57573, -1.57573, 4.91166, 14.3633, 4.90891, -0.076001, -3.9703, -3.9703, -3.97115, -3.97057, -0.0751443, -0.000278382, -3.89515, 0.000278382, 10.2732, -2.33146, -6.22689, -6.5477, -2.65096, -6.54639, -6.22694, -2.33264, 10.2732}, {2.2538, -2.2568, -6.95596, 1.0326, -1.0322, -0.409331, 0.623613, 1.72184, 0.682817, -0.904944, -1.44191, -2.59214, -4.47814, 4.47482, -0.722725, -2.04719, -0.852443, -0.338046, -2.33666, -9.94553, -6.44129, 5.66697, 6.62007, 10.7066, -0.157789, 3.05817, 3.71002, 0.347745, -0.346017, 2.36005}, {-0.751267, 0.752267, 2.31865, -3.09779, 3.0966, 1.22799, 0.623613, 1.72184, 0.682817, -0.904944, -1.44191, -2.59214, 2.65732, -2.66305, -11.6347, -4.54164, -7.73981, -3.06931, 0.157789, -3.05817, -3.71002, 2.04719, 0.852443, 0.338046, 3.46199, 8.8258, 14.0786, 0.347745, -0.346017, 2.36005}, {-0.751267, 0.752267, 2.31865, 1.0326, -1.0322, -0.409331, -1.87084, -5.16552, -2.04845, -0.904944, -1.44191, -2.59214, -0.347745, 0.346017, -2.36005, -6.17758, 3.27636, 1.29928, 3.16286, -6.06723, -12.9846, 2.04719, 0.852443, 0.338046, -0.157789, 3.05817, 3.71002, 3.96752, 5.42161, 12.7286}, {-0.751267, 0.752267, 2.31865, 1.0326, -1.0322, -0.409331, 0.623613, 1.72184, 0.682817, 2.71483, 4.32572, 7.77641, -0.347745, 0.346017, -2.36005, -2.04719, -0.852443, -0.338046, 0.157789, -3.05817, -3.71002, 5.05226, -2.15663, -8.93656, -4.28818, 7.18697, 5.34735, -2.14671, -7.23338, -0.371216}, {4.6308, -4.62902, -1.83569, 1.74378, -1.74182, 1.32959, 2.34612, 3.47392e-16, -3.39235e-15, -2.5463, 0.198817, -1.94149, -7.22258, 7.21305, -7.71818, -5.0554, 2.15301, -1.64347, -10.3764, -1.90726, -0.756347, 15.2406, -2.94828, 9.40942, 0.991964, 1.90726, 0.756347, 0.24744, -0.245751, 2.39981}, {-1.5436, 1.54301, 0.611898, -5.23135, 5.22547, -3.98877, 2.34612, -2.31594e-16, 2.26157e-15, -2.5463, 0.198817, -1.94149, 5.92697, -5.92628, -4.8474, -14.4399, 2.15301, -1.64347, -0.991964, -1.90726, -0.756347, 5.0554, -2.15301, 1.64347, 11.1772, 1.11199, 8.5223, 0.24744, -0.245751, 2.39981}, {-1.5436, 1.54301, 0.611898, 1.74378, -1.74182, 1.32959, -7.03835, 0, 0, -2.5463, 0.198817, -1.94149, -0.24744, 0.245751, -2.39981, -12.0305, 9.12031, -6.96183, 5.18244, -8.07929, -3.20394, 5.0554, -2.15301, 1.64347, 0.991964, 1.90726, 0.756347, 10.4326, -1.04102, 10.1658}, {-1.5436, 1.54301, 0.611898, 1.74378, -1.74182, 1.32959, 2.34612, 1.15797e-16, -1.13078e-15, 7.6389, -0.59645, 5.82447, -0.24744, 0.245751, -2.39981, -5.0554, 2.15301, -1.64347, -0.991964, -1.90726, -0.756347, 11.2298, -8.32504, -0.804126, -5.98318, 8.87456, -4.56202, -9.13703, -0.245751, 2.39981}, {7.47016e-18, 3.62803, 8.88178e-16, -1.45582, 0.0794645, -1.44142, 1.45582, 0.249439, -0.577805, -1.62092e-12, 0.88044, 2.01922, 7.62276, 1.07875, 7.54736, -2.00373e-12, -0.406547, 2.4959, -7.62276, 0.188753, 3.02542, 8.48742e-12, -3.11521, -10.5728, 1.79949, -1.18651, -0.714206, -1.79949, -1.39661, -1.78169}, {-1.75097e-16, -1.20934, 0, 4.36745, -0.238394, 4.32425, 1.45582, 0.249439, -0.577805, -1.62031e-12, 0.88044, 2.01922, 1.79949, 6.23398, 1.78169, -5.82327, -1.4043, 4.80711, -1.79949, 1.18651, 0.714206, 2.00284e-12, 0.406547, -2.4959, 1.79949, -4.70827, -8.79109, -1.79949, -1.39661, -1.78169}, {-7.62205e-17, -1.20934, 0, -1.45582, 0.0794645, -1.44142, -4.36745, -0.748316, 1.73341, -1.61907e-12, 0.88044, 2.01922, 1.79949, 1.39661, 1.78169, 5.82327, -0.724405, 8.26156, -1.79949, 6.02388, 0.714206, 2.00151e-12, 0.406547, -2.4959, 1.79949, -1.18651, -0.714206, -1.79949, -4.91837, -9.85858}, {-1.9973e-16, -1.20934, 4.44089e-16, -1.45582, 0.0794645, -1.44142, 1.45582, 0.249439, -0.577805, 4.86018e-12, -2.64132, -6.05767, 1.79949, 1.39661, 1.78169, -2.00262e-12, -0.406547, 2.4959, -1.79949, 1.18651, 0.714206, 2.00364e-12, 5.24392, -2.4959, 7.62276, -1.50437, 5.05146, -7.62276, -2.39436, 0.529529}, {4.15997e-12, 1.3684, -5.1823, 1.45582, 0.310608, -0.437518, -1.45582, 0.975521, 0.61362, 1.52817e-12, -0.829997, -1.90353, -7.62276, -1.06255, 0.155649, 1.74971e-13, -1.58974, -0.217674, 7.62276, -4.54408, -5.34818, -6.28766e-12, 4.90973, 7.83181, -1.79949, 0.642, 2.8937, 1.79949, -0.179878, 1.59442}, {-1.3859e-12, -0.456132, 1.72743, -4.36745, -0.931824, 1.31255, -1.45582, 0.975521, 0.61362, 1.52713e-12, -0.829997, -1.90353, -1.79949, 2.00441, -8.50415, 5.82327, -5.49183, -2.67215, 1.79949, -0.642, -2.8937, -1.74749e-13, 1.58974, 0.217674, -1.79949, 3.96199, 10.5078, 1.79949, -0.179878, 1.59442}, {-1.38592e-12, -0.456132, 1.72743, 1.45582, 0.310608, -0.437518, 4.36745, -2.92656, -1.84086, 1.52736e-12, -0.829997, -1.90353, -1.79949, 0.179878, -1.59442, -5.82327, -2.83217, 1.5324, 1.79949, 1.18253, -9.80343, -1.74749e-13, 1.58974, 0.217674, -1.79949, 0.642, 2.8937, 1.79949, 3.14011, 9.20856}, {-1.38453e-12, -0.456132, 1.72743, 1.45582, 0.310608, -0.437518, -1.45582, 0.975521, 0.61362, -4.57858e-12, 2.48999, 5.7106, -1.79949, 0.179878, -1.59442, 1.75193e-13, -1.58974, -0.217674, 1.79949, -0.642, -2.8937, 5.36315e-12, 3.41427, -6.69206, -7.62276, -0.600431, 4.64377, 7.62276, -4.08196, -0.860057}, {3.89774, -2.39084, -3.90175, -1.08034, -0.824783, -1.26412, 1.27484, -0.81558, 1.06845, 1.10475, 0.843417, -1.10491, 7.26269, 3.33354, 5.01139, -0.240416, 2.0276, 0.241863, -5.06919, 3.28535, -7.20207, -4.17857, -5.40127, 4.17779, -0.0301684, -0.023032, 2.92828, -2.94133, -0.0344082, 0.0450763}, {-1.29925, 0.796947, 1.30058, 3.24102, 2.47435, 3.79235, 1.27484, -0.81558, 1.06845, 1.10475, 0.843417, -1.10491, 8.13832, -3.15338, -5.24742, -5.33978, 5.28992, -4.03192, 0.0301684, 0.023032, -2.92828, 0.240416, -2.0276, -0.241863, -4.44916, -3.3967, 7.34794, -2.94133, -0.0344082, 0.0450763}, {-1.29925, 0.796947, 1.30058, -1.08034, -0.824783, -1.26412, -3.82452, 2.44674, -3.20534, 1.10475, 0.843417, -1.10491, 2.94133, 0.0344082, -0.0450763, 4.08094, 5.32673, 5.29833, 5.22716, -3.16475, -8.13062, 0.240416, -2.0276, -0.241863, -0.0301684, -0.023032, 2.92828, -7.36032, -3.40808, 4.46473}, {-1.29925, 0.796947, 1.30058, -1.08034, -0.824783, -1.26412, 1.27484, -0.81558, 1.06845, -3.31424, -2.53025, 3.31474, 2.94133, 0.0344082, -0.0450763, -0.240416, 2.0276, 0.241863, 0.0301684, 0.023032, -2.92828, 5.43741, -5.21539, -5.4442, 4.29119, 3.2761, 7.98475, -8.04069, 3.22791, -4.22871}, {-7.02938, 0, 7.99361e-15, 0, 0, -2.34462, -1.02079e-11, 1.78885, 0.00114147, -2.34313, -1.78885, 2.34348, -2.89626, 0, 12.2766, 1.26176e-11, -2.21115, 2.8967, -2.89626, -9.36656, -0.00597681, 9.3725, 9.36656, -12.2706, 2.89626, 2.21115, 0.00141093, 2.89626, 0, -2.89811}, {2.34313, 0, 4.44089e-15, 0, 0, 7.03386, -1.02099e-11, 1.78885, 0.00114147, -2.34313, -1.78885, 2.34348, -12.2688, 0, 2.89811, 5.346e-11, -9.36656, 2.89213, -2.89626, -2.21115, -0.00141093, -1.26208e-11, 2.21115, -2.8967, 12.2688, 9.36656, -9.37251, 2.89626, 0, -2.89811}, {2.34313, -4.21885e-15, 2.22045e-15, 0, 0, -2.34462, 3.06361e-11, -5.36656, -0.00342441, -2.34313, -1.78885, 2.34348, -2.89626, 5.32907e-15, 2.89811, 1.26228e-11, -2.21115, 12.2752, -12.2688, -2.21115, -0.00141093, -1.26233e-11, 2.21115, -2.8967, 2.89626, 2.21115, 0.00141093, 12.2688, 7.15542, -12.272}, {2.34313, 3.10862e-15, -3.9968e-15, 0, 0, -2.34462, -1.0211e-11, 1.78885, 0.00114147, 7.02938, 5.36656, -7.03044, -2.89626, -3.55271e-15, 2.89811, 1.26215e-11, -2.21115, 2.8967, -2.89626, -2.21115, -0.00141093, -9.3725, 2.21115, -2.8967, 2.89626, 2.21115, 9.37989, 2.89626, -7.15542, -2.90268}, {-4.72653, 4.72653, 4.72653, -0.802949, -0.802719, 0.802949, -3.21204, 3.21204, -0.0614861, 2.43948, -0.833808, 0.834046, 2.25686, 6.15053, -2.25686, 4.96279, -2.97808, -0.916498, 14.871, -14.871, 2.26938, -14.7207, 6.31331, -2.41969, -2.02286, 2.02286, -2.02344, 0.954937, -2.93965, -0.954937}, {1.57551, -1.57551, -1.57551, 2.40885, 2.40816, -2.40885, -3.21204, 3.21204, -0.0614861, 2.43948, -0.833808, 0.834046, -7.25697, 9.24169, 7.25697, 17.8109, -15.8262, -0.670554, 2.02286, -2.02286, 2.02344, -4.96279, 2.97808, 0.916498, -11.7808, 5.35809, -5.35962, 0.954937, -2.93965, -0.954937}, {1.57551, -1.57551, -1.57551, -0.802949, -0.802719, 0.802949, 9.63611, -9.63611, 0.184458, 2.43948, -0.833808, 0.834046, -0.954937, 2.93965, 0.954937, 8.17459, 0.232798, -4.12829, -4.27918, 4.27918, 8.32547, -4.96279, 2.97808, 0.916498, -2.02286, 2.02286, -2.02344, -8.80297, 0.39558, -4.29112}, {1.57551, -1.57551, -1.57551, -0.802949, -0.802719, 0.802949, -3.21204, 3.21204, -0.0614861, -7.31843, 2.50142, -2.50214, -0.954937, 2.93965, 0.954937, 4.96279, -2.97808, -0.916498, 2.02286, -2.02286, 2.02344, -11.2648, 9.28012, 7.21853, 1.18894, 5.23374, -5.23523, 13.8031, -15.7878, -0.708993}, {-4.72653, 4.72653, 4.72653, 1.57596, 1.57551, 1.57551, 1.63653, -1.63653, 1.637, -4.788, 1.63653, -1.637, -10.1993, -6.30204, -6.30204, -3.97085, 0.0754226, -3.97087, -10.5164, 10.5164, -6.62398, 23.1228, -6.62153, 10.5189, 3.9703, -3.9703, 0.076001, 3.89543, -1.81144e-12, -1.80922e-12}, {1.57551, -1.57551, -1.57551, -4.72788, -4.72653, -4.72653, 1.63653, -1.63653, 1.637, -4.788, 1.63653, -1.637, -10.1975, 6.30204, 6.30204, -10.517, 6.62153, -10.5189, -3.9703, 3.9703, -0.076001, 3.97085, -0.0754226, 3.97087, 23.1223, -10.5164, 6.62398, 3.89543, -1.81766e-12, -1.81499e-12}, {1.57551, -1.57551, -1.57551, 1.57596, 1.57551, 1.57551, -4.90958, 4.90958, -4.91099, -4.788, 1.63653, -1.637, -3.89543, 1.81677e-12, 1.81988e-12, -10.2747, -6.22661, -10.2729, -10.2723, 10.2723, 6.22604, 3.97085, -0.0754226, 3.97087, 3.9703, -3.9703, 0.076001, 23.0474, -6.54611, 6.54798}, {1.57551, -1.57551, -1.57551, 1.57596, 1.57551, 1.57551, 1.63653, -1.63653, 1.637, 14.364, -4.90958, 4.91099, -3.89543, 1.81632e-12, 1.81677e-12, -3.97085, 0.0754226, -3.97087, -3.9703, 3.9703, -0.076001, -2.33118, 6.22661, 10.2729, -2.33354, -10.2723, -6.22604, -2.65068, 6.54611, -6.54798}, {-1.1204, 1.1204, 10.941, 0, -1.60567, 0, -1.78885, 1.78885, 1.78885, 1.41539, 0.190281, 1.85814, -0.461631, 8.86902, 4.50793, 2.21115, -0.226431, -2.21115, 8.90493, -8.90493, -4.85864, -7.87269, -0.534693, -5.2214, -1.74951, 1.74951, -2.29678, 0.461631, -2.44635, -4.50793}, {0.373467, -0.373467, -3.64699, 0, 4.817, 0, -1.78885, 1.78885, 1.78885, 1.41539, 0.190281, 1.85814, -1.9555, 3.94022, 19.0959, 9.36656, -7.38185, -9.36656, 1.74951, -1.74951, 2.29678, -2.21115, 0.226431, 2.21115, -7.41106, 0.988391, -9.72932, 0.461631, -2.44635, -4.50793}, {0.373467, -0.373467, -3.64699, 0, -1.60567, 0, 5.36656, -5.36656, -5.36656, 1.41539, 0.190281, 1.85814, -0.461631, 2.44635, 4.50793, 2.21115, 6.19624, -2.21115, 0.255645, -0.255645, 16.8847, -2.21115, 0.226431, 2.21115, -1.74951, 1.74951, -2.29678, -5.19992, -3.20747, -11.9405}, {0.373467, -0.373467, -3.64699, 0, -1.60567, 0, -1.78885, 1.78885, 1.78885, -4.24616, -0.570843, -5.57441, -0.461631, 2.44635, 4.50793, 2.21115, -0.226431, -2.21115, 1.74951, -1.74951, 2.29678, -3.70501, 1.7203, 16.7991, -1.74951, 8.17219, -2.29678, 7.61705, -9.60176, -11.6633}, {-9.45441, 1.33227e-15, 1.59872e-14, -1.78885, 1.78885, 1.78885, 1.41539, -1.41539, 1.85814, -2.778, -0.373467, -3.64699, 5.47113, -9.36656, -9.36656, 0.461631, -0.461631, -4.50793, -11.3065, 7.41106, -9.72932, 10.6504, 1.9555, 19.0959, 5.64494, -1.74951, 2.29678, 1.68428, 2.21115, 2.21115}, {3.15147, -1.88738e-15, -7.10543e-15, 5.36656, -5.36656, -5.36656, 1.41539, -1.41539, 1.85814, -2.778, -0.373467, -3.64699, -14.2902, -2.21115, -2.21115, -5.19992, 5.19992, -11.9405, -5.64494, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, 16.7569, -0.255645, 16.8847, 1.68428, 2.21115, 2.21115}, {3.15147, 2.55351e-15, -3.10862e-15, -1.78885, 1.78885, 1.78885, -4.24616, 4.24616, -5.57441, -2.778, -0.373467, -3.64699, -1.68428, -2.21115, -2.21115, 7.61705, -7.61705, -11.6633, -18.2508, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, 5.64494, -1.74951, 2.29678, 12.7963, 3.70501, 16.7991}, {3.15147, 6.10623e-16, 3.9968e-15, -1.78885, 1.78885, 1.78885, 1.41539, -1.41539, 1.85814, 8.334, 1.1204, 10.941, -1.68428, -2.21115, -2.21115, 0.461631, -0.461631, -4.50793, -5.64494, 1.74951, -2.29678, -13.0675, 0.461631, 4.50793, 12.8004, -8.90493, -4.85864, -3.97726, 7.87269, -5.2214}, {0.889469, 0.890856, -5.70584, -0.741046, -0.742202, -0.293121, 1.30296, -1.03813, 0.515387, -0.265426, 2.07729, -2.12421, 4.24665, 4.25327, -0.816132, -0.694566, 2.20061, -0.274736, -6.45592, 5.80278, -5.04953, 1.75627, -10.5098, 8.77158, 1.24407, -1.65026, 2.98799, -1.28247, -1.28446, 1.98862}, {-0.29649, -0.296952, 1.90195, 2.22314, 2.2266, 0.879363, 1.30296, -1.03813, 0.515387, -0.265426, 2.07729, -2.12421, 2.46842, 2.47227, -9.5964, -5.90641, 6.35314, -2.33628, -1.24407, 1.65026, -2.98799, 0.694566, -2.20061, 0.274736, 2.30577, -9.9594, 11.4848, -1.28247, -1.28446, 1.98862}, {-0.29649, -0.296952, 1.90195, -0.741046, -0.742202, -0.293121, -3.90889, 3.1144, -1.54616, -0.265426, 2.07729, -2.12421, 1.28247, 1.28446, -1.98862, 2.26962, 5.16942, 0.897749, -0.0581089, 2.83806, -10.5958, 0.694566, -2.20061, 0.274736, 1.24407, -1.65026, 2.98799, -0.220762, -9.59361, 10.4855}, {-0.29649, -0.296952, 1.90195, -0.741046, -0.742202, -0.293121, 1.30296, -1.03813, 0.515387, 0.796277, -6.23186, 6.37263, 1.28247, 1.28446, -1.98862, -0.694566, 2.20061, -0.274736, -1.24407, 1.65026, -2.98799, 1.88052, -1.01281, -7.33305, 4.20825, 1.31855, 4.16047, -6.49431, 2.86807, -0.0729313}, {1.60243, -4.68893, 4.44089e-16, 1.23856, -0.534131, 1.50236e-16, -0.868329, 0.25394, -1.31177, 0.163908, -1.28279, 1.31177, -5.82496, 0.864798, -6.66134e-16, -0.457635, 0.346335, 1.62143, 5.20686, -3.26159, 6.86849, -0.197999, 4.78481, -6.86849, -1.73355, 2.24583, -1.62143, 0.870711, 1.27173, 0}, {-0.534143, 1.56298, -2.22045e-16, -3.71569, 1.60239, -6.76061e-16, -0.868329, 0.25394, -1.31177, 0.163908, -1.28279, 1.31177, 1.26586, -7.52364, 8.88178e-16, 3.01568, -0.669425, 6.86849, 1.73355, -2.24583, 1.62143, 0.457635, -0.346335, -1.62143, -2.38918, 7.37698, -6.86849, 0.870711, 1.27173, 0}, {-0.534143, 1.56298, 2.22045e-16, 1.23856, -0.534131, -3.00472e-16, 2.60499, -0.76182, 3.9353, 0.163908, -1.28279, 1.31177, -0.870711, -1.27173, 0, -5.41189, 2.48286, 1.62143, 3.87012, -8.49775, 1.62143, 0.457635, -0.346335, -1.62143, -1.73355, 2.24583, -1.62143, 0.215077, 6.40287, -5.24706}, {-0.534143, 1.56298, 0, 1.23856, -0.534131, 4.50708e-16, -0.868329, 0.25394, -1.31177, -0.491725, 3.84836, -3.9353, -0.870711, -1.27173, -4.44089e-16, -0.457635, 0.346335, 1.62143, 1.73355, -2.24583, 1.62143, 2.59421, -6.59825, -1.62143, -6.6878, 4.38236, -1.62143, 4.34403, 0.255965, 5.24706}, {3.16808, 2.71157e-16, -8.88178e-16, -0.300269, 1.44665, -1.44665, 0.153249, -1.44665, -0.572575, 1.20305, -1.58738e-12, 2.01922, 2.87755, -7.57474, 7.57474, 0.181727, -1.96199e-12, 2.4959, 0.502898, 7.57474, 2.99804, -4.99391, 8.31151e-12, -10.5728, -1.11589, -1.78815, -0.707741, -1.67647, 1.78815, -1.78815}, {-1.05603, 1.56152e-17, 0, 0.900808, -4.33994, 4.33994, 0.153249, -1.44665, -0.572575, 1.20305, -1.58652e-12, 2.01922, 5.90057, -1.78815, 1.78815, -0.431268, 5.78659, 4.7862, 1.11589, 1.78815, 0.707741, -0.181727, 1.9611e-12, -2.4959, -5.92808, -1.78815, -8.78463, -1.67647, 1.78815, -1.78815}, {-1.05603, -4.03605e-17, 0, -0.300269, 1.44665, -1.44665, -0.459746, 4.33994, 1.71772, 1.20305, -1.58802e-12, 2.01922, 1.67647, -1.78815, 1.78815, 1.3828, -5.78659, 8.28248, 5.34, 1.78815, 0.707741, -0.181727, 1.96287e-12, -2.4959, -1.11589, -1.78815, -0.707741, -6.48866, 1.78815, -9.86504}, {-1.05603, -1.63709e-17, 4.44089e-16, -0.300269, 1.44665, -1.44665, 0.153249, -1.44665, -0.572575, -3.60914, 4.76214e-12, -6.05767, 1.67647, -1.78815, 1.78815, 0.181727, -1.96221e-12, 2.4959, 1.11589, 1.78815, 0.707741, 4.04237, 1.96294e-12, -2.4959, 0.0851836, -7.57474, 5.07885, -2.28947, 7.57474, 0.502145}, {-1.48316, 4.33994, 1.33227e-15, 0.561638, 1.44665, 4.17162e-16, -0.27448, -1.03171e-12, 1.31177, -0.781545, 1.03171e-12, -1.31177, -3.55187, -5.78659, -1.77636e-15, -0.354947, -1.78815, -1.62143, 0.8261, 1.78815, -6.86849, 3.48113, 1.78815, 6.86849, 0.27182, -1.78815, 1.62143, 1.30532, 0, 0}, {0.494387, -1.44665, 2.22045e-16, -1.68492, -4.33994, 8.34324e-16, -0.27448, -1.03124e-12, 1.31177, -0.781545, 1.03124e-12, -1.31177, -3.28287, 5.78659, -8.88178e-16, 0.742973, -1.78815, -6.86849, -0.27182, 1.78815, -1.62143, 0.354947, 1.78815, 1.62143, 3.398, -1.78815, 6.86849, 1.30532, 0, 0}, {0.494387, -1.44665, -2.22045e-16, 0.561638, 1.44665, 2.78108e-16, 0.82344, 3.09443e-12, -3.9353, -0.781545, 1.03148e-12, -1.31177, -1.30532, 3.59135e-16, 0, -2.6015, -7.57474, -1.62143, -2.24937, 7.57474, -1.62143, 0.354947, 1.78815, 1.62143, 0.27182, -1.78815, 1.62143, 4.4315, -4.1259e-12, 5.24706}, {0.494387, -1.44665, 2.22045e-16, 0.561638, 1.44665, -2.78108e-16, -0.27448, -1.03171e-12, 1.31177, 2.34464, -3.09513e-12, 3.9353, -1.30532, 3.59135e-16, 0, -0.354947, -1.78815, -1.62143, -0.27182, 1.78815, -1.62143, -1.6226, 7.57474, 1.62143, -1.97473, -7.57474, 1.62143, 2.40324, 4.12684e-12, -5.24706}, {4.33994, 0.162335, 4.33994, 0, 1.38248, 0, 1.44665, 0.246581, -0.572575, -1.76997e-12, -1.57494, 2.01922, 1.78815, -7.17185, 1.78815, -1.78815, -2.01362, 0.707741, -5.78659, -1.22423, 4.7862, 1.78815, 8.3134, -8.78463, 2.1878e-12, 0.237905, -2.4959, -1.78815, 1.64195, -1.78815}, {-1.44665, -0.0541117, -1.44665, -1.48949e-15, -4.14743, -5.64752e-15, 1.44665, 0.246581, -0.572575, -1.77017e-12, -1.57494, 2.01922, 7.57474, -1.4255, 7.57474, -7.57474, -2.99995, 2.99804, -2.18708e-12, -0.237905, 2.4959, 1.78815, 2.01362, -0.707741, 9.26812e-12, 6.53768, -10.5728, -1.78815, 1.64195, -1.78815}, {-1.44665, -0.0541117, -1.44665, -2.42885e-27, 1.38248, 2.77202e-15, -4.33994, -0.739742, 1.71772, -1.76924e-12, -1.57494, 2.01922, 1.78815, -1.64195, 1.78815, -1.78815, -7.54353, 0.707741, 5.78659, -0.021458, 8.28248, 1.78815, 2.01362, -0.707741, 2.1869e-12, 0.237905, -2.4959, -1.78815, 7.94173, -9.86504}, {-1.44665, -0.0541117, -1.44665, 0, 1.38248, 0, 1.44665, 0.246581, -0.572575, 5.31045e-12, 4.72483, -6.05767, 1.78815, -1.64195, 1.78815, -1.78815, -2.01362, 0.707741, -2.18766e-12, -0.237905, 2.4959, 7.57474, 2.23007, 5.07885, 2.18802e-12, -5.292, -2.4959, -7.57474, 0.655625, 0.502145}, {-4.33994, 1.02197, -0.540949, -9.62561e-13, 0.52571, 1.09845, -1.44665, -1.05053, -0.169142, 9.72352e-13, 0.86548, -1.10962, -1.78815, -2.33158, -5.97445, 1.78815, 0.648718, -1.14869, 5.78659, 5.92175, 0.662758, -1.78815, -4.11064, 5.58719, -1.2103e-14, -1.71961, 0.0138116, 1.78815, 0.22874, 1.58064}, {1.44665, -0.340656, 0.180316, 2.88884e-12, -1.57713, -3.29535, -1.44665, -1.05053, -0.169142, 9.72241e-13, 0.86548, -1.10962, -7.57474, 1.13389, -2.30191, 7.57474, 4.85086, -0.472119, 1.11288e-14, 1.71961, -0.0138116, -1.78815, -0.648718, 1.14869, -3.90045e-12, -5.18153, 4.45231, 1.78815, 0.22874, 1.58064}, {1.44665, -0.340656, 0.180316, -9.63744e-13, 0.52571, 1.09845, 4.33994, 3.1516, 0.507427, 9.73548e-13, 0.86548, -1.10962, -1.78815, -0.22874, -1.58064, 1.78815, -1.45412, -5.54249, -5.78659, 3.08223, -0.735077, -1.78815, -0.648718, 1.14869, -1.21179e-14, -1.71961, 0.0138116, 1.78815, -3.23318, 6.01914}, {1.44665, -0.340656, 0.180316, -9.6335e-13, 0.52571, 1.09845, -1.44665, -1.05053, -0.169142, -2.91945e-12, -2.59644, 3.32887, -1.78815, -0.22874, -1.58064, 1.78815, 0.648718, -1.14869, 1.17538e-14, 1.71961, -0.0138116, -7.57474, 0.713906, 0.427423, 3.84129e-12, -3.82245, -4.37999, 7.57474, 4.43088, 2.25721}, {-4.74899, 4.74899, 3.61742, 0.497745, -0.497745, 2.77232, -2.29648, -0.854984, 1.74929, 0.215741, 2.93573, -3.3158, -4.56292, 4.56292, -13.0256, 2.22336, 1.67207, -5.58902, 10.0679, 6.43345, -7.66893, -3.08633, -13.415, 18.8522, -0.881918, -3.01351, 0.671778, 2.57194, -2.57194, 1.93632}, {1.583, -1.583, -1.20581, -1.49324, 1.49324, -8.31697, -2.29648, -0.854984, 1.74929, 0.215741, 2.93573, -3.3158, -8.90393, 8.90393, 2.88691, 11.4093, 5.092, -12.5862, 0.881918, 3.01351, -0.671778, -2.22336, -1.67207, 5.58902, -1.74488, -14.7564, 13.935, 2.57194, -2.57194, 1.93632}, {1.583, -1.583, -1.20581, 0.497745, -0.497745, 2.77232, 6.88945, 2.56495, -5.24786, 0.215741, 2.93573, -3.3158, -2.57194, 2.57194, -1.93632, 0.232383, 3.66305, -16.6783, -5.45007, 9.3455, 4.15145, -2.22336, -1.67207, 5.58902, -0.881918, -3.01351, 0.671778, 1.70898, -14.3148, 15.1995}, {1.583, -1.583, -1.20581, 0.497745, -0.497745, 2.77232, -2.29648, -0.854984, 1.74929, -0.647223, -8.80718, 9.94741, -2.57194, 2.57194, -1.93632, 2.22336, 1.67207, -5.58902, 0.881918, 3.01351, -0.671778, -8.55536, 4.65993, 10.4123, -2.8729, -1.02253, -10.4175, 11.7579, 0.847997, -5.06083}, {6.34574, -4.8337, 3.10867, 0.725317, 2.59898, -0.725317, 1.60925, -1.2258, -1.60925, -0.219319, -2.98441, 3.37079, -1.18322, -15.6, 5.07865, -2.88568, -1.69734, 2.88568, -5.81154, 4.42679, 9.70697, 3.76295, 13.635, -16.3688, -0.625449, 0.47642, -3.26998, -1.71805, 5.20411, -2.17738}, {-2.11525, 1.61123, -1.03622, -2.17595, -7.79693, 2.17595, 1.60925, -1.2258, -1.60925, -0.219319, -2.98441, 3.37079, 10.179, -11.649, 6.32227, -9.32267, 3.20588, 9.32267, 0.625449, -0.47642, 3.26998, 2.88568, 1.69734, -2.88568, 0.251825, 12.4141, -16.7531, -1.71805, 5.20411, -2.17738}, {-2.11525, 1.61123, -1.03622, 0.725317, 2.59898, -0.725317, -4.82774, 3.67741, 4.82774, -0.219319, -2.98441, 3.37079, 1.71805, -5.20411, 2.17738, -5.78695, -12.0932, 5.78695, 9.08643, -6.92136, 7.41487, 2.88568, 1.69734, -2.88568, -0.625449, 0.47642, -3.26998, -0.840773, 17.1417, -15.6605}, {-2.11525, 1.61123, -1.03622, 0.725317, 2.59898, -0.725317, 1.60925, -1.2258, -1.60925, 0.657956, 8.95322, -10.1124, 1.71805, -5.20411, 2.17738, -2.88568, -1.69734, 2.88568, 0.625449, -0.47642, 3.26998, 11.3467, -4.7476, 1.25921, -3.52672, -9.91949, -0.36871, -8.15504, 10.1073, 4.25961}, {-5.36656, 5.36656, -5.36656, -1.78885, 1.78885, 1.36261, 0, -3.15147, 0, 0, 3.15147, -3.15147, 7.15542, -7.15542, -9.34589, 2.21115, 1.68428, -1.68428, -2.21115, 18.7124, -2.21115, -2.21115, -14.2902, 14.2902, 2.21115, -6.10657, 2.21115, 0, 3.63087e-12, 3.89543}, {1.78885, -1.78885, 1.78885, 5.36656, -5.36656, -4.08784, 0, -3.15147, 0, 0, 3.15147, -3.15147, -7.15542, 7.15542, -11.0508, 2.21115, 14.2902, -1.68428, -2.21115, 6.10657, -2.21115, -2.21115, -1.68428, 1.68428, 2.21115, -18.7124, 14.817, 0, 3.63087e-12, 3.89543}, {1.78885, -1.78885, 1.78885, -1.78885, 1.78885, 1.36261, 0, 9.45441, 0, 0, 3.15147, -3.15147, -4.44089e-16, -3.63354e-12, -3.89543, 9.36656, -5.47113, -7.13474, -9.36656, 13.262, -9.36656, -2.21115, -1.68428, 1.68428, 2.21115, -6.10657, 2.21115, 0, -12.6059, 16.5013}, {1.78885, -1.78885, 1.78885, -1.78885, 1.78885, 1.36261, 0, -3.15147, 0, 0, -9.45441, 9.45441, -4.44089e-16, -3.62865e-12, -3.89543, 2.21115, 1.68428, -1.68428, -2.21115, 6.10657, -2.21115, -9.36656, 5.47113, -5.47113, 9.36656, -13.262, -3.23931, 0, 12.6059, 3.89543}, {0, -1.77636e-15, 9.45441, -1.78885, 1.36261, 1.78885, 1.78885, 1.78885, -1.78885, 0, -3.15147, 3.15147, 9.36656, -7.13474, -5.47113, 0, -3.89543, -3.6291e-12, -9.36656, -9.36656, 13.262, 0, 16.5013, -12.6059, 2.21115, 2.21115, -6.10657, -2.21115, 1.68428, -1.68428}, {3.08199e-16, 0, -3.15147, 5.36656, -4.08784, -5.36656, 1.78885, 1.78885, -1.78885, -3.08199e-16, -3.15147, 3.15147, 2.21115, -1.68428, 14.2902, -7.15542, -11.0508, 7.15542, -2.21115, -2.21115, 6.10657, -7.65114e-32, 3.89543, 3.62544e-12, 2.21115, 14.817, -18.7124, -2.21115, 1.68428, -1.68428}, {-3.08199e-16, 8.88178e-16, -3.15147, -1.78885, 1.36261, 1.78885, -5.36656, -5.36656, 5.36656, 3.08199e-16, -3.15147, 3.15147, 2.21115, -1.68428, 1.68428, 7.15542, -9.34589, -7.15542, -2.21115, -2.21115, 18.7124, 7.65114e-32, 3.89543, 3.62633e-12, 2.21115, 2.21115, -6.10657, -2.21115, 14.2902, -14.2902}, {-3.08199e-16, 0, -3.15147, -1.78885, 1.36261, 1.78885, 1.78885, 1.78885, -1.78885, -9.24597e-16, 9.45441, -9.45441, 2.21115, -1.68428, 1.68428, 0, -3.89543, -3.62776e-12, -2.21115, -2.21115, 6.10657, 1.2328e-15, 3.89543, 12.6059, 9.36656, -3.23931, -13.262, -9.36656, -5.47113, 5.47113}, {1.6947, 4.26991, -0.547096, 2.00519, -0.0353642, -0.0353642, 0.45376, 1.14328, 1.14328, -1.89405, 0.315388, -1.29028, -9.80104, 1.94447, -0.0402465, -3.03942, -1.36946, -1.36946, -1.67766, -4.22699, -6.2117, 10.6156, 0.107907, 6.53058, -0.137376, -0.346128, 1.63859, 1.78029, -1.80301, 0.181703}, {-0.5649, -1.4233, 0.182365, -6.01556, 0.106093, 0.106093, 0.45376, 1.14328, 1.14328, -1.89405, 0.315388, -1.29028, 0.479306, 7.49622, -0.911165, -4.85446, -5.94257, -5.94257, 0.137376, 0.346128, -1.63859, 3.03942, 1.36946, 1.36946, 7.43881, -1.60768, 6.79971, 1.78029, -1.80301, 0.181703}, {-0.5649, -1.4233, 0.182365, 2.00519, -0.0353642, -0.0353642, -1.36128, -3.42984, -3.42984, -1.89405, 0.315388, -1.29028, -1.78029, 1.80301, -0.181703, -11.0602, -1.228, -1.228, 2.39697, 6.03934, -2.36805, 3.03942, 1.36946, 1.36946, -0.137376, -0.346128, 1.63859, 9.35648, -3.06456, 5.34282}, {-0.5649, -1.4233, 0.182365, 2.00519, -0.0353642, -0.0353642, 0.45376, 1.14328, 1.14328, 5.68214, -0.946164, 3.87084, -1.78029, 1.80301, -0.181703, -3.03942, -1.36946, -1.36946, 0.137376, 0.346128, -1.63859, 5.29902, 7.06267, 0.639997, -8.15812, -0.204671, 1.78004, -0.0347482, -6.37613, -4.39141}, {-1.35612, -3.4307, -3.42632, -0.759405, 0.424983, -1.91868, -2.45728, -1.10819, -1.10678, 2.76464, -0.460356, 1.88336, 3.41754, -3.63876, 8.63464, 3.97604, 0.844494, 3.73968, 12.3077, 4.38905, 4.38345, -15.0346, 0.996929, -11.2731, -2.47861, 0.0437235, 0.0436678, -0.379924, 1.93883, -0.959903}, {0.45204, 1.14357, 1.14211, 2.27821, -1.27495, 5.75605, -2.45728, -1.10819, -1.10678, 2.76464, -0.460356, 1.88336, -1.42823, -6.51309, -3.60853, 13.8052, 5.27726, 8.1668, 2.47861, -0.0437235, -0.0436678, -3.97604, -0.844494, -3.73968, -13.5372, 1.88515, -7.48976, -0.379924, 1.93883, -0.959903}, {0.45204, 1.14357, 1.14211, -0.759405, 0.424983, -1.91868, 7.37184, 3.32458, 3.32034, 2.76464, -0.460356, 1.88336, 0.379924, -1.93883, 0.959903, 7.01366, -0.855437, 11.4144, 0.670454, -4.61799, -4.6121, -3.97604, -0.844494, -3.73968, -2.47861, 0.0437235, 0.0436678, -11.4385, 3.78026, -8.49333}, {0.45204, 1.14357, 1.14211, -0.759405, 0.424983, -1.91868, -2.45728, -1.10819, -1.10678, -8.29393, 1.38107, -5.65007, 0.379924, -1.93883, 0.959903, 3.97604, 0.844494, 3.73968, 2.47861, -0.0437235, -0.0436678, -5.7842, -5.41876, -8.30811, 0.559007, -1.65621, 7.71841, 9.44919, 6.3716, 3.46721}, {-2.4085, -2.4085, 2.4085, 1.63676, -1.63676, 1.63676, -0.802834, -0.802834, -0.802834, -1.63676, 1.63676, -0.0310931, -9.56255, 7.57784, -7.57784, -1.03079, 3.01551, -1.03079, 3.21134, 3.21134, 5.19605, 7.57784, -9.56255, 1.15516, 3.73035e-14, 3.64153e-14, -1.98471, 3.01551, -1.03079, 1.03079}, {0.802834, 0.802834, -0.802834, -4.91028, 4.91028, -4.91028, -0.802834, -0.802834, -0.802834, -1.63676, 1.63676, -0.0310931, -6.22684, -2.18055, 2.18055, 2.18055, 6.22684, 2.18055, -3.73035e-14, -3.68594e-14, 1.98471, 1.03079, -3.01551, 1.03079, 6.54704, -6.54704, -1.86034, 3.01551, -1.03079, 1.03079}, {0.802834, 0.802834, -0.802834, 1.63676, -1.63676, 1.63676, 2.4085, 2.4085, 2.4085, -1.63676, 1.63676, -0.0310931, -3.01551, 1.03079, -1.03079, -7.57784, 9.56255, -7.57784, -3.21134, -3.21134, 5.19605, 1.03079, -3.01551, 1.03079, 3.77476e-14, 3.68594e-14, -1.98471, 9.56255, -7.57784, 1.15516}, {0.802834, 0.802834, -0.802834, 1.63676, -1.63676, 1.63676, -0.802834, -0.802834, -0.802834, 4.91028, -4.91028, 0.0932794, -3.01551, 1.03079, -1.03079, -1.03079, 3.01551, -1.03079, -3.68594e-14, -3.68594e-14, 1.98471, -2.18055, -6.22684, 4.24213, -6.54704, 6.54704, -8.53176, 6.22684, 2.18055, 4.24213}, {-2.4085, -2.4085, 2.4085, -2.4396, 0.833927, -0.833927, -1.57573, 1.57573, 1.57573, 3.2125, -3.2125, 0.0610269, 11.7815, -5.35886, 5.35886, 4.96322, -2.97851, -0.916924, 7.25829, -9.24301, -7.25829, -17.8132, 15.8285, 0.672816, -0.955357, 2.94007, 0.955357, -2.02315, 2.02315, -2.02315}, {0.802834, 0.802834, -0.802834, 7.31879, -2.50178, 2.50178, -1.57573, 1.57573, 1.57573, 3.2125, -3.2125, 0.0610269, -1.18819, -5.23448, 5.23448, 11.2662, -9.28144, -7.21986, 0.955357, -2.94007, -0.955357, -4.96322, 2.97851, 0.916924, -13.8053, 15.7901, 0.71125, -2.02315, 2.02315, -2.02315}, {0.802834, 0.802834, -0.802834, -2.4396, 0.833927, -0.833927, 4.7272, -4.7272, -4.7272, 3.2125, -3.2125, 0.0610269, 2.02315, -2.02315, 2.02315, 14.7216, -6.31421, 2.41878, -2.25598, -6.15141, 2.25598, -4.96322, 2.97851, 0.916924, -0.955357, 2.94007, 0.955357, -14.8731, 14.8731, -2.26726}, {0.802834, 0.802834, -0.802834, -2.4396, 0.833927, -0.833927, -1.57573, 1.57573, 1.57573, -9.63749, 9.63749, -0.183081, 2.02315, -2.02315, 2.02315, 4.96322, -2.97851, -0.916924, 0.955357, -2.94007, -0.955357, -8.17456, -0.232831, 4.12826, 8.80302, -0.395637, 4.29107, 4.27979, -4.27979, -8.32609}, {-8.88178e-16, 0, 4.817, 3.64699, 0.373467, -0.373467, -1.78885, -1.78885, 1.78885, -1.85814, 1.41539, 0.190281, -19.0959, -1.9555, 3.94022, -2.29678, 1.74951, -1.74951, 9.36656, 9.36656, -7.38185, 9.72932, -7.41106, 0.988391, -2.21115, -2.21115, 0.226431, 4.50793, 0.461631, -2.44635}, {2.22045e-16, -4.44089e-16, -1.60567, -10.941, -1.1204, 1.1204, -1.78885, -1.78885, 1.78885, -1.85814, 1.41539, 0.190281, -4.50793, -0.461631, 8.86902, 4.85864, 8.90493, -8.90493, 2.21115, 2.21115, -0.226431, 2.29678, -1.74951, 1.74951, 5.2214, -7.87269, -0.534693, 4.50793, 0.461631, -2.44635}, {-6.66134e-16, -4.44089e-16, -1.60567, 3.64699, 0.373467, -0.373467, 5.36656, 5.36656, -5.36656, -1.85814, 1.41539, 0.190281, -4.50793, -0.461631, 2.44635, -16.8847, 0.255645, -0.255645, 2.21115, 2.21115, 6.19624, 2.29678, -1.74951, 1.74951, -2.21115, -2.21115, 0.226431, 11.9405, -5.19992, -3.20747}, {-6.66134e-16, 0, -1.60567, 3.64699, 0.373467, -0.373467, -1.78885, -1.78885, 1.78885, 5.57441, -4.24616, -0.570843, -4.50793, -0.461631, 2.44635, -2.29678, 1.74951, -1.74951, 2.21115, 2.21115, -0.226431, 2.29678, -1.74951, 8.17219, -16.7991, -3.70501, 1.7203, 11.6633, 7.61705, -9.60176}, {5.57441, -4.24616, 4.24616, -1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 3.64699, -2.778, -0.373467, 11.6633, 7.61705, -7.61705, 2.21115, -1.68428, -2.21115, 2.29678, -18.2508, 1.74951, -16.7991, 12.7963, 3.70501, -2.29678, 5.64494, -1.74951, -4.50793, -0.461631, 0.461631}, {-1.85814, 1.41539, -1.41539, 5.36656, 5.36656, -5.36656, -2.85327e-15, 3.15147, 2.92187e-16, 3.64699, -2.778, -0.373467, 11.9405, -5.19992, 5.19992, 2.21115, -14.2902, -2.21115, 2.29678, -5.64494, 1.74951, -2.21115, 1.68428, 2.21115, -16.8847, 16.7569, -0.255645, -4.50793, -0.461631, 0.461631}, {-1.85814, 1.41539, -1.41539, -1.78885, -1.78885, 1.78885, 0, -9.45441, 0, 3.64699, -2.778, -0.373467, 4.50793, 0.461631, -0.461631, 9.36656, 5.47113, -9.36656, 9.72932, -11.3065, 7.41106, -2.21115, 1.68428, 2.21115, -2.29678, 5.64494, -1.74951, -19.0959, 10.6504, 1.9555}, {-1.85814, 1.41539, -1.41539, -1.78885, -1.78885, 1.78885, 0, 3.15147, 0, -10.941, 8.334, 1.1204, 4.50793, 0.461631, -0.461631, 2.21115, -1.68428, -2.21115, 2.29678, -5.64494, 1.74951, 5.2214, -3.97726, 7.87269, 4.85864, 12.8004, -8.90493, -4.50793, -13.0675, 0.461631}, {5.61089, -1.12882, 1.12882, -0.730647, 0.497098, 1.84603, 0.431092, 1.08918, -1.08918, 2.16985, -1.96255, -0.380575, 6.13753, -3.06794, -9.20083, 0.370271, -1.96075, -0.935513, 0.0545869, -6.16812, 6.16812, -9.04968, 9.81095, 2.45781, -1.77895, 1.8114, -1.8114, -3.21494, 1.07954, 1.81672}, {-1.8703, 0.376272, -0.376272, 2.19194, -1.49129, -5.53808, 0.431092, 1.08918, -1.08918, 2.16985, -1.96255, -0.380575, 10.6961, -2.58463, -0.311631, -1.3541, -6.31747, 3.42121, 1.77895, -1.8114, 1.8114, -0.370271, 1.96075, 0.935513, -10.4584, 9.6616, -0.289101, -3.21494, 1.07954, 1.81672}, {-1.8703, 0.376272, -0.376272, -0.730647, 0.497098, 1.84603, -1.29328, -3.26754, 3.26754, 2.16985, -1.96255, -0.380575, 3.21494, -1.07954, -1.81672, 3.29286, -3.94914, -8.31962, 9.26014, -3.31649, 3.31649, -0.370271, 1.96075, 0.935513, -1.77895, 1.8114, -1.8114, -11.8943, 8.92975, 3.33902}, {-1.8703, 0.376272, -0.376272, -0.730647, 0.497098, 1.84603, 0.431092, 1.08918, -1.08918, -6.50955, 5.88765, 1.14172, 3.21494, -1.07954, -1.81672, 0.370271, -1.96075, -0.935513, 1.77895, -1.8114, 1.8114, 7.11091, 0.455662, 2.4406, 1.14364, -0.176994, -9.19551, -4.93931, -3.27718, 6.17344}, {-3.9353, -0.877932, 3.73093, -2.19842e-16, -0.163745, 1.71788, -5.85173e-16, -1.31534, -0.704307, -1.31177, 1.18644, 0.230073, -1.62143, 0.495654, -7.45769, 9.95053e-16, 1.82825, -1.25284, -1.62143, 6.52549, 5.22503, 5.24706, -6.57403, 0.33255, 1.62143, -1.26412, -2.4078, 1.62143, 0.159328, 0.586185}, {1.31177, 0.292644, -1.24364, 2.59599e-16, 0.491236, -5.15363, 4.85681e-16, -1.31534, -0.704307, -1.31177, 1.18644, 0.230073, -6.86849, -1.3299, 4.38839, -2.4361e-15, 7.08962, 1.56438, -1.62143, 1.26412, 2.4078, 1.67724e-16, -1.82825, 1.25284, 6.86849, -6.0099, -3.32809, 1.62143, 0.159328, 0.586185}, {1.31177, 0.292644, -1.24364, 0, -0.163745, 1.71788, 0, 3.94603, 2.11292, -1.31177, 1.18644, 0.230073, -1.62143, -0.159328, -0.586185, 0, 2.48323, -8.12435, -6.86849, 0.0935482, 7.38238, -3.2565e-16, -1.82825, 1.25284, 1.62143, -1.26412, -2.4078, 6.86849, -4.58645, -0.334108}, {1.31177, 0.292644, -1.24364, -2.66619e-17, -0.163745, 1.71788, -2.14171e-16, -1.31534, -0.704307, 3.9353, -3.55933, -0.690219, -1.62143, -0.159328, -0.586185, 2.97685e-16, 1.82825, -1.25284, -1.62143, 1.26412, 2.4078, -5.24706, -2.99883, 6.22742, 1.62143, -0.609143, -9.27931, 1.62143, 5.4207, 3.40341}, {6.05767, -1.43278, 5.23226e-12, 0, 1.38248, 0, 0.572575, -0.389553, -1.44665, 1.44665, -1.47052, 1.44665, 2.4959, -7.82907, 2.15583e-12, -0.707741, -1.22732, 1.78815, -0.502145, 1.44939, 7.57474, -5.07885, 7.10939, -7.57474, -1.78815, 0.108825, -1.78815, -2.4959, 2.29917, -2.15583e-12}, {-2.01922, 0.477594, -1.74416e-12, -5.05799e-15, -4.14743, -2.97897e-15, 0.572575, -0.389553, -1.44665, 1.44665, -1.47052, 1.44665, 10.5728, -4.20955, 9.13047e-12, -2.99804, 0.330893, 7.57474, 1.78815, -0.108825, 1.78815, 0.707741, 1.22732, -1.78815, -7.57474, 5.99089, -7.57474, -2.4959, 2.29917, -2.15472e-12}, {-2.01922, 0.477594, -1.74438e-12, 1.98598e-15, 1.38248, 1.98598e-15, -1.71772, 1.16866, 4.33994, 1.44665, -1.47052, 1.44665, 2.4959, -2.29917, 2.15383e-12, -0.707741, -6.75722, 1.78815, 9.86504, -2.0192, 1.78815, 0.707741, 1.22732, -1.78815, -1.78815, 0.108825, -1.78815, -8.28248, 8.18124, -5.78659}, {-2.01922, 0.477594, -1.74438e-12, 0, 1.38248, 0, 0.572575, -0.389553, -1.44665, -4.33994, 4.41155, -4.33994, 2.4959, -2.29917, 2.15628e-12, -0.707741, -1.22732, 1.78815, 1.78815, -0.108825, 1.78815, 8.78463, -0.683057, -1.78815, -1.78815, -5.42108, -1.78815, -4.7862, 3.85739, 5.78659}, {-1.33227e-15, -0.577407, 6.05767, 1.31177, 0.0490665, 1.31177, 7.62271e-16, -1.57494, 2.01922, -1.31177, 1.33341, -1.31177, -6.86849, -0.49482, -4.3726, -1.62143, 1.88609, -4.11733, -4.66294e-15, 8.00861, -8.07689, 6.86849, -7.21973, 9.36439, 1.55431e-15, -1.70883, 1.33227e-15, 1.62143, 0.298554, -0.874465}, {-2.22045e-16, 0.192469, -2.01922, -3.9353, -0.147199, -3.9353, 5.0818e-16, -1.57494, 2.01922, -1.31177, 1.33341, -1.31177, -1.62143, -1.06843, 8.95135, -1.62143, 8.18587, -12.1942, -2.22045e-16, 1.70883, 1.11022e-15, 1.62143, -1.88609, 4.11733, 5.24706, -7.04247, 5.24706, 1.62143, 0.298554, -0.874465}, {0, 0.192469, -2.01922, 1.31177, 0.0490665, 1.31177, 7.62271e-16, 4.72483, -6.05767, -1.31177, 1.33341, -1.31177, -1.62143, -0.298554, 0.874465, -6.86849, 1.68982, -9.36439, 0, 0.938958, 8.07689, 1.62143, -1.88609, 4.11733, -4.44089e-16, -1.70883, -4.44089e-16, 6.86849, -5.03508, 4.3726}, {-2.22045e-16, 0.192469, -2.01922, 1.31177, 0.0490665, 1.31177, 1.52454e-15, -1.57494, 2.01922, 3.9353, -4.00023, 3.9353, -1.62143, -0.298554, 0.874465, -1.62143, 1.88609, -4.11733, -1.55431e-15, 1.70883, -1.55431e-15, 1.62143, -2.65597, 12.1942, -5.24706, -1.9051, -5.24706, 1.62143, 6.59833, -8.95135}, {5.62183, 1.10117, 1.0932, -0.543248, 1.37255, -0.969804, 0.418614, -1.05765, -1.05825, 1.99858, 0.0521603, 2.39245, 5.16081, -6.73306, 5.52839, 0.154056, -0.389233, 2.50681, 0.12443, 5.99166, 5.99148, -8.14837, 0.180592, -12.0766, -1.79889, -1.76104, -1.75849, -2.98781, 1.24286, -1.64917}, {-1.87394, -0.367057, -0.364401, 1.62974, -4.11765, 2.90941, 0.418614, -1.05765, -1.05825, 1.99858, 0.0521603, 2.39245, 10.4836, 0.225367, 3.10677, -1.5204, 3.84139, 6.7398, 1.79889, 1.76104, 1.75849, -0.154056, 0.389233, -2.50681, -9.79319, -1.96968, -11.3283, -2.98781, 1.24286, -1.64917}, {-1.87394, -0.367057, -0.364401, -0.543248, 1.37255, -0.969804, -1.25584, 3.17296, 3.17474, 1.99858, 0.0521603, 2.39245, 2.98781, -1.24286, 1.64917, 2.32705, -5.87944, 6.38603, 9.29466, 3.22927, 3.2161, -0.154056, 0.389233, -2.50681, -1.79889, -1.76104, -1.75849, -10.9821, 1.03422, -11.219}, {-1.87394, -0.367057, -0.364401, -0.543248, 1.37255, -0.969804, 0.418614, -1.05765, -1.05825, -5.99573, -0.156481, -7.17736, 2.98781, -1.24286, 1.64917, 0.154056, -0.389233, 2.50681, 1.79889, 1.76104, 1.75849, 7.34172, 1.85746, -1.04921, 0.374107, -7.25124, 2.12073, -4.66227, 5.47348, 2.58382}, {1.30457, 0.988495, -4.07489, 1.69843, -1.02425, 0.473793, -0.0497917, 1.38543, -0.379098, -1.21378, -0.0316781, -1.45299, -8.35558, 5.77034, -4.15976, -2.03783, -0.446439, -0.117049, 0.798227, -6.84692, 0.306038, 6.89295, 0.573151, 5.92901, -0.59906, 1.3052, 1.21036, 1.56186, -1.67333, 2.26459}, {-0.434858, -0.329498, 1.3583, -5.09529, 3.07276, -1.42138, -0.0497917, 1.38543, -0.379098, -1.21378, -0.0316781, -1.45299, 0.17757, 2.99132, -7.69777, -1.83866, -5.98816, 1.39934, 0.59906, -1.3052, -1.21036, 2.03783, 0.446439, 0.117049, 4.25606, 1.43192, 7.02232, 1.56186, -1.67333, 2.26459}, {-0.434858, -0.329498, 1.3583, 1.69843, -1.02425, 0.473793, 0.149375, -4.15629, 1.1373, -1.21378, -0.0316781, -1.45299, -1.56186, 1.67333, -2.26459, -8.83155, 3.65057, -2.01222, 2.33849, 0.0127912, -6.64354, 2.03783, 0.446439, 0.117049, -0.59906, 1.3052, 1.21036, 6.41699, -1.54662, 8.07655}, {-0.434858, -0.329498, 1.3583, 1.69843, -1.02425, 0.473793, -0.0497917, 1.38543, -0.379098, 3.64134, 0.0950343, 4.35897, -1.56186, 1.67333, -2.26459, -2.03783, -0.446439, -0.117049, 0.59906, -1.3052, -1.21036, 3.77726, 1.76443, -5.31614, -7.39278, 5.40222, -0.684818, 1.76103, -7.21505, 3.78098}, {-3.43097, 1.35687, -3.43142, 0.931473, 0.558277, -1.41184, -0.847096, 2.35716, -0.851503, -1.22803, -2.46315, 1.11954, -6.29089, -2.36411, 5.97866, -0.104296, -3.60368, 2.79764, 3.02181, -11.7832, 3.0447, 5.01642, 13.4563, -7.27579, 0.366568, 2.35455, 0.361307, 2.565, 0.131007, -0.331307}, {1.14366, -0.45229, 1.14381, -2.79442, -1.67483, 4.23552, -0.847096, 2.35716, -0.851503, -1.22803, -2.46315, 1.11954, -7.13962, 1.67815, -4.24392, 3.28409, -13.0323, 6.20366, -0.366568, -2.35455, -0.361307, 0.104296, 3.60368, -2.79764, 5.2787, 12.2071, -4.11684, 2.565, 0.131007, -0.331307}, {1.14366, -0.45229, 1.14381, 0.931473, 0.558277, -1.41184, 2.54129, -7.07148, 2.55451, -1.22803, -2.46315, 1.11954, -2.565, -0.131007, 0.331307, -3.83019, -5.83679, 8.445, -4.94119, -0.545391, -4.93653, 0.104296, 3.60368, -2.79764, 0.366568, 2.35455, 0.361307, 7.47713, 9.9836, -4.80945}, {1.14366, -0.45229, 1.14381, 0.931473, 0.558277, -1.41184, -0.847096, 2.35716, -0.851503, 3.6841, 7.38945, -3.35861, -2.565, -0.131007, 0.331307, -0.104296, -3.60368, 2.79764, -0.366568, -2.35455, -0.361307, -4.47033, 5.41284, -7.37287, -3.35932, 0.121443, 6.00866, 5.95338, -9.29764, 3.0747}, {5.0671, -2.00529, 0.25185, -0.295203, -1.90215, -0.29354, 1.14353, -0.452546, 1.14392, 0.840709, 1.68627, -0.766433, 3.63346, 9.13356, 1.64076, -1.04859, 2.91057, -1.05113, -3.89983, 1.54334, -5.88589, -2.31425, -9.65564, 4.11686, -0.674283, 0.266845, 1.3102, -2.45265, -1.52496, -0.466604}, {-1.68903, 0.668429, -0.0839499, 0.885608, 5.70645, 0.880621, 1.14353, -0.452546, 1.14392, 0.840709, 1.68627, -0.766433, 9.20879, -1.14875, 0.802403, -5.6227, 4.72075, -5.62682, 0.674283, -0.266845, -1.3102, 1.04859, -2.91057, 1.05113, -4.03712, -6.47823, 4.37593, -2.45265, -1.52496, -0.466604}, {-1.68903, 0.668429, -0.0839499, -0.295203, -1.90215, -0.29354, -3.43058, 1.35764, -3.43177, 0.840709, 1.68627, -0.766433, 2.45265, 1.52496, 0.466604, 0.132224, 10.5192, 0.123031, 7.43042, -2.94056, -0.974399, 1.04859, -2.91057, 1.05113, -0.674283, 0.266845, 1.3102, -5.81549, -8.27004, 2.59913}, {-1.68903, 0.668429, -0.0839499, -0.295203, -1.90215, -0.29354, 1.14353, -0.452546, 1.14392, -2.52213, -5.0588, 2.2993, 2.45265, 1.52496, 0.466604, -1.04859, 2.91057, -1.05113, 0.674283, -0.266845, -1.3102, 7.80472, -5.58428, 1.38693, 0.506528, 7.87545, 2.48436, -7.02676, 0.285222, -5.04229}, {-7.02938, 6.21725e-15, 4.44089e-16, -1.54298, 0.610212, -1.54318, 1.7461, 1.33161, 1.74203, -2.54625, -1.94182, -0.198851, 5.18286, -3.19511, 8.08019, -0.25107, -2.40023, -0.245794, -12.0389, -6.97241, -9.12139, 10.4361, 10.1675, 1.0412, 5.05456, 1.64596, 2.15327, 0.989039, 0.754264, -1.90748}, {2.34313, -1.77636e-15, -1.22125e-15, 4.62893, -1.83064, 4.62954, 1.7461, 1.33161, 1.74203, -2.54625, -1.94182, -0.198851, -10.3615, -0.754264, 1.90748, -7.23545, -7.72668, -7.21392, -5.05456, -1.64596, -2.15327, 0.25107, 2.40023, 0.245794, 15.2395, 9.41326, 2.94867, 0.989039, 0.754264, -1.90748}, {2.34313, 0, 1.38778e-16, -1.54298, 0.610212, -1.54318, -5.23829, -3.99484, -5.22609, -2.54625, -1.94182, -0.198851, -0.989039, -0.754264, 1.90748, 5.92083, -4.84108, 5.92693, -14.4271, -1.64596, -2.15327, 0.25107, 2.40023, 0.245794, 5.05456, 1.64596, 2.15327, 11.174, 8.52156, -1.11207}, {2.34313, -1.11022e-15, -3.05311e-16, -1.54298, 0.610212, -1.54318, 1.7461, 1.33161, 1.74203, 7.63874, 5.82547, 0.596554, -0.989039, -0.754264, 1.90748, -0.25107, -2.40023, -0.245794, -5.05456, -1.64596, -2.15327, -9.12143, 2.40023, 0.245794, 11.2265, -0.794885, 8.32599, -5.99534, -4.57219, -8.8756}, {2.66454e-15, 3.55271e-15, -4.817, -1.54262, 0.610485, -1.54315, -0.200328, -1.9397, -0.198633, 1.74295, 1.32921, 0.136117, 8.07725, -3.19654, 6.09533, 2.1544, 1.643, 2.15296, 1.04893, 10.1564, -0.944658, -9.12619, -6.95984, -2.69743, -0.24762, -2.3976, 1.73919, -1.90678, 0.754601, 0.0772744}, {1.55431e-15, 8.88178e-16, 1.60567, 4.62785, -1.83146, 4.62946, -0.200328, -1.9397, -0.198633, 1.74295, 1.32921, 0.136117, 1.90678, -0.754601, -6.49995, 2.95571, 9.40178, 2.9475, 0.24762, 2.3976, -1.73919, -2.1544, -1.643, -2.15296, -7.21941, -7.71444, 1.19472, -1.90678, 0.754601, 0.0772744}, {2.22045e-16, 2.22045e-16, 1.60567, -1.54262, 0.610485, -1.54315, 0.600985, 5.81909, 0.5959, 1.74295, 1.32921, 0.136117, 1.90678, -0.754601, -0.0772744, 8.32487, -0.798945, 8.32557, 0.24762, 2.3976, -8.16186, -2.1544, -1.643, -2.15296, -0.24762, -2.3976, 1.73919, -8.87857, -4.56224, -0.467193}, {-1.33227e-15, -1.11022e-15, 1.60567, -1.54262, 0.610485, -1.54315, -0.200328, -1.9397, -0.198633, -5.22884, -3.98763, -0.408351, 1.90678, -0.754601, -0.0772744, 2.1544, 1.643, 2.15296, 0.24762, 2.3976, -1.73919, -2.1544, -1.643, -8.57564, 5.92285, -4.83954, 7.9118, -1.10547, 8.51339, 0.871807}, {5.74294, 0.795668, -0.78877, 0.30138, -0.761926, 0.76354, -0.6496, 1.64227, 0.697377, 2.26253, -0.61512, -1.72384, 0.788176, 4.31733, -4.32294, 0.430423, -1.08816, -1.80579, 5.76757, -8.2712, -3.9765, -9.48055, 3.54864, 8.70115, -3.16917, 1.70212, 1.187, -1.9937, -1.26962, 1.26878}, {-1.91431, -0.265223, 0.262923, -0.904139, 2.28578, -2.29062, -0.6496, 1.64227, 0.697377, 2.26253, -0.61512, -1.72384, 9.65095, 2.33052, -2.32047, 3.02882, -7.65724, -4.5953, 3.16917, -1.70212, -1.187, -0.430423, 1.08816, 1.80579, -12.2193, 4.1626, 8.08236, -1.9937, -1.26962, 1.26878}, {-1.91431, -0.265223, 0.262923, 0.30138, -0.761926, 0.76354, 1.9488, -4.9268, -2.09213, 2.26253, -0.61512, -1.72384, 1.9937, 1.26962, -1.26878, -0.775096, 1.95954, -4.85995, 10.8264, -0.641232, -2.23869, -0.430423, 1.08816, 1.80579, -3.16917, 1.70212, 1.187, -11.0438, 1.19086, 8.16414}, {-1.91431, -0.265223, 0.262923, 0.30138, -0.761926, 0.76354, -0.6496, 1.64227, 0.697377, -6.7876, 1.84536, 5.17152, 1.9937, 1.26962, -1.26878, 0.430423, -1.08816, -1.80579, 3.16917, -1.70212, -1.187, 7.22683, 2.14905, 0.7541, -4.37469, 4.74982, -1.86717, 0.604703, -7.8387, -1.52073}, {1.33227e-15, 6.00487, 0.829413, -3.96116e-16, 2.00162, -0.810615, 1.31177, 1.30033, 0.316508, -1.31177, -1.30033, 0.770578, 2.66454e-15, -8.00649, 4.58617, -1.62143, -4.08144, 0.61075, -6.86849, -4.33448, -1.31552, 6.86849, 9.28277, -3.69306, 1.62143, -0.866843, 0.0494889, -1.11022e-15, -6.66134e-16, -1.34371}, {4.44089e-16, -2.00162, -0.276471, -2.97087e-15, -6.00487, 2.43185, 1.31177, 1.30033, 0.316508, -1.31177, -1.30033, 0.770578, -2.66454e-15, 8.00649, 2.4496, -6.86849, -9.28277, -0.655284, -1.62143, 0.866843, -0.0494889, 1.62143, 4.08144, -0.61075, 6.86849, 4.33448, -3.03282, 1.55431e-15, 1.33227e-15, -1.34371}, {-2.22045e-16, -2.00162, -0.276471, 1.38641e-15, 2.00162, -0.810615, -3.9353, -3.901, -0.949525, -1.31177, -1.30033, 0.770578, -1.33227e-15, -1.11022e-15, 1.34371, -1.62143, -12.0879, 3.85321, -1.62143, 8.87333, 1.0564, 1.62143, 4.08144, -0.61075, 1.62143, -0.866843, 0.0494889, 5.24706, 5.20133, -4.42602}, {-6.66134e-16, -2.00162, -0.276471, -1.18835e-15, 2.00162, -0.810615, 1.31177, 1.30033, 0.316508, 3.9353, 3.901, -2.31173, 2.22045e-15, 2.66454e-15, 1.34371, -1.62143, -4.08144, 0.61075, -1.62143, 0.866843, -0.0494889, 1.62143, 12.0879, 0.495134, 1.62143, -8.87333, 3.29195, -5.24706, -5.20133, -2.60975}, {-1.70622, 4.31352, 1.8317, 8.44721e-17, 1.1641e-15, 1.08709, -2.01922, 1.65815e-12, 0.375548, 1.45048, 1.43784, -0.852066, -0.702999, 1.77727, -4.93735, 2.4959, -2.05102e-12, -1.80792, 9.86978, 1.77727, -1.21169, -8.29783, -5.75136, 5.21618, -1.7929, -1.77727, -0.290501, 0.702999, -1.77727, 0.589009}, {0.568738, -1.43784, -0.610568, -2.80914e-15, -1.1641e-15, -3.26126, -2.01922, 1.65896e-12, 0.375548, 1.45048, 1.43784, -0.852066, -2.97795, 7.52863, 1.85326, 10.5728, -8.68691e-12, -3.31011, 1.7929, 1.77727, 0.290501, -2.4959, 2.05143e-12, 1.80792, -7.59483, -7.52863, 3.11776, 0.702999, -1.77727, 0.589009}, {0.568738, -1.43784, -0.610568, 0, 0, 1.08709, 6.05767, -4.97324e-12, -1.12664, 1.45048, 1.43784, -0.852066, -0.702999, 1.77727, -0.589009, 2.4959, -2.04909e-12, -6.15626, -0.482057, 7.52863, 2.73277, -2.4959, 2.04944e-12, 1.80792, -1.7929, -1.77727, -0.290501, -5.09894, -7.52863, 3.99727}, {0.568738, -1.43784, -0.610568, 0, 0, 1.08709, -2.01922, 1.6563e-12, 0.375548, -4.35145, -4.31352, 2.5562, -0.702999, 1.77727, -0.589009, 2.4959, -2.04731e-12, -1.80792, 1.7929, 1.77727, 0.290501, -4.77085, 5.75136, 4.25019, -1.7929, -1.77727, -4.63885, 8.77989, -1.77727, -0.913184}, {1.27077, -1.27077, -5.5547, 1.35703, 0.9861, 0.537103, -0.781872, 0.781872, -0.309461, -0.151563, -2.19156, -2.07921, -6.58189, -5.68687, -5.10097, -0.710928, -2.18533, -0.281381, 4.61752, -4.61752, -0.668306, 1.31718, 10.9516, 8.59822, -1.49003, 1.49003, 1.90615, 1.15379, 1.74247, 2.95256}, {-0.42359, 0.42359, 1.85157, -4.07108, -2.9583, -1.61131, -0.781872, 0.781872, -0.309461, -0.151563, -2.19156, -2.07921, 0.540572, -3.43683, -10.3588, 2.41656, -5.31282, 0.956461, 1.49003, -1.49003, -1.90615, 0.710928, 2.18533, 0.281381, -0.883782, 10.2563, 10.223, 1.15379, 1.74247, 2.95256}, {-0.42359, 0.42359, 1.85157, 1.35703, 0.9861, 0.537103, 2.34562, -2.34562, 0.928382, -0.151563, -2.19156, -2.07921, -1.15379, -1.74247, -2.95256, -6.13903, -6.12973, -2.42979, 3.18439, -3.18439, -9.31242, 0.710928, 2.18533, 0.281381, -1.49003, 1.49003, 1.90615, 1.76004, 10.5087, 11.2694}, {-0.42359, 0.42359, 1.85157, 1.35703, 0.9861, 0.537103, -0.781872, 0.781872, -0.309461, 0.454689, 6.57469, 6.23763, -1.15379, -1.74247, -2.95256, -0.710928, -2.18533, -0.281381, 1.49003, -1.49003, -1.90615, 2.40529, 0.490973, -7.12489, -6.91814, -2.45437, -0.242264, 4.28128, -1.38502, 4.1904}, {2.56157, 0.777047, 3.89096, 1.32901, 0.581011, 0.152782, -0.565397, -1.62691, -0.0938093, 0.0902443, 1.30491, 1.23801, -5.90336, -2.72205, 0.803187, -0.943878, 1.2928, -0.0728941, 4.01589, 8.83876, 2.09436, 0.5829, -6.51244, -4.87916, -1.7543, -2.33113, -1.71912, 0.587321, 0.398009, -1.41431}, {-0.853857, -0.259016, -1.29699, -3.98703, -1.74303, -0.458346, -0.565397, -1.62691, -0.0938093, 0.0902443, 1.30491, 1.23801, 2.82811, 0.638054, 6.60226, 1.31771, 7.80043, 0.302343, 1.7543, 2.33113, 1.71912, 0.943878, -1.2928, 0.0728941, -2.11527, -7.55078, -6.67117, 0.587321, 0.398009, -1.41431}, {-0.853857, -0.259016, -1.29699, 1.32901, 0.581011, 0.152782, 1.69619, 4.88072, 0.281428, 0.0902443, 1.30491, 1.23801, -0.587321, -0.398009, 1.41431, -6.25992, -1.03125, -0.684022, 5.16973, 3.36719, 6.90706, 0.943878, -1.2928, 0.0728941, -1.7543, -2.33113, -1.71912, 0.226344, -4.82164, -6.36637}, {-0.853857, -0.259016, -1.29699, 1.32901, 0.581011, 0.152782, -0.565397, -1.62691, -0.0938093, -0.270733, -3.91473, -3.71404, -0.587321, -0.398009, 1.41431, -0.943878, 1.2928, -0.0728941, 1.7543, 2.33113, 1.71912, 4.35931, -0.256736, 5.26084, -7.07034, -4.65518, -2.33025, 2.84891, 6.90564, -1.03908}, {4.07496e-12, -2.19419, -6.05767, 4.84843e-16, 1.35003, -1.83833e-15, -1.44665, -1.05122, -0.572575, 1.44665, -1.0302, -1.44665, 1.67644e-12, -7.97291, -2.4959, 1.78815, -0.369344, 0.707741, 7.57474, 4.60023, 0.502145, -7.57474, 4.49015, 5.07885, -1.78815, -0.395328, 1.78815, -1.67844e-12, 2.57279, 2.4959}, {-1.3598e-12, 0.731398, 2.01922, -2.90906e-15, -4.05009, 4.93928e-15, -1.44665, -1.05122, -0.572575, 1.44665, -1.0302, -1.44665, 7.11964e-12, -5.49838, -10.5728, 7.57474, 3.83556, 2.99804, 1.78815, 0.395328, -1.78815, -1.78815, 0.369344, -0.707741, -7.57474, 3.72548, 7.57474, -1.67977e-12, 2.57279, 2.4959}, {-1.36091e-12, 0.731398, 2.01922, 0, 1.35003, 0, 4.33994, 3.15367, 1.71772, 1.44665, -1.0302, -1.44665, 1.68221e-12, -2.57279, -2.4959, 1.78815, -5.76946, 0.707741, 1.78815, -2.53026, -9.86504, -1.78815, 0.369344, -0.707741, -1.78815, -0.395328, 1.78815, -5.78659, 6.6936, 8.28248}, {-1.36047e-12, 0.731398, 2.01922, -4.84843e-16, 1.35003, 4.84843e-16, -1.44665, -1.05122, -0.572575, -4.33994, 3.09061, 4.33994, 1.68221e-12, -2.57279, -2.4959, 1.78815, -0.369344, 0.707741, 1.78815, 0.395328, -1.78815, -1.78815, -2.55625, -8.78463, -1.78815, -5.79545, 1.78815, 5.78659, 6.77769, 4.7862}, {5.43308, 2.37521, 0.624583, 1.07522, 0.584331, -1.07522, 1.83687, -0.576694, 0.182353, -1.10106, 0.784101, 1.10106, -3.39138, -2.08096, 5.88727, -3.59954, -0.00943971, 1.10365, -7.37942, 3.99825, -0.697471, 8.00379, -3.12696, -5.50789, 0.0319413, -1.69148, -0.0319413, -0.909507, -0.256369, -1.58639}, {-1.81103, -0.791738, -0.208194, -3.22566, -1.75299, 3.22566, 1.83687, -0.576694, 0.182353, -1.10106, 0.784101, 1.10106, 8.15362, 3.42332, 2.41917, -10.947, 2.29734, 0.374233, -0.0319413, 1.69148, 0.0319413, 3.59954, 0.00943971, -1.10365, 4.43619, -4.82788, -4.43619, -0.909507, -0.256369, -1.58639}, {-1.81103, -0.791738, -0.208194, 1.07522, 0.584331, -1.07522, -5.51061, 1.73008, -0.547059, -1.10106, 0.784101, 1.10106, 0.909507, 0.256369, 1.58639, -7.90043, -2.34676, 5.40453, 7.21217, 4.85843, 0.864718, 3.59954, 0.00943971, -1.10365, 0.0319413, -1.69148, -0.0319413, 3.49474, -3.39277, -5.99064}, {-1.81103, -0.791738, -0.208194, 1.07522, 0.584331, -1.07522, 1.83687, -0.576694, 0.182353, 3.30319, -2.3523, -3.30319, 0.909507, 0.256369, 1.58639, -3.59954, -0.00943971, 1.10365, -0.0319413, 1.69148, 0.0319413, 10.8437, 3.17639, -0.270869, -4.26894, -4.0288, 4.26894, -8.25698, 2.05041, -2.3158}, {1.1204, -1.1204, 10.941, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, 0.190281, 1.41539, 1.85814, -8.90493, 8.90493, -4.85864, -0.226431, 2.21115, -2.21115, 8.86902, -0.461631, 4.50793, -0.534693, -7.87269, -5.2214, -2.44635, 0.461631, -4.50793, 1.74951, -1.74951, -2.29678}, {-0.373467, 0.373467, -3.64699, -5.36656, 5.36656, -5.36656, -1.60567, 0, 0, 0.190281, 1.41539, 1.85814, -0.255645, 0.255645, 16.8847, 6.19624, 2.21115, -2.21115, 2.44635, -0.461631, 4.50793, 0.226431, -2.21115, 2.21115, -3.20747, -5.19992, -11.9405, 1.74951, -1.74951, -2.29678}, {-0.373467, 0.373467, -3.64699, 1.78885, -1.78885, 1.78885, 4.817, 0, 0, 0.190281, 1.41539, 1.85814, -1.74951, 1.74951, 2.29678, -7.38185, 9.36656, -9.36656, 3.94022, -1.9555, 19.0959, 0.226431, -2.21115, 2.21115, -2.44635, 0.461631, -4.50793, 0.988391, -7.41106, -9.72932}, {-0.373467, 0.373467, -3.64699, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, -0.570843, -4.24616, -5.57441, -1.74951, 1.74951, 2.29678, -0.226431, 2.21115, -2.21115, 2.44635, -0.461631, 4.50793, 1.7203, -3.70501, 16.7991, -9.60176, 7.61705, -11.6633, 8.17219, -1.74951, -2.29678}, {4.24616, -4.24616, -5.57441, 1.78885, -1.78885, 1.78885, 2.92187e-16, 3.15147, 2.85327e-15, -0.373467, -2.778, -3.64699, -7.61705, 7.61705, -11.6633, -2.21115, -1.68428, -2.21115, 1.74951, -18.2508, -2.29678, 3.70501, 12.7963, 16.7991, -1.74951, 5.64494, 2.29678, 0.461631, -0.461631, 4.50793}, {-1.41539, 1.41539, 1.85814, -5.36656, 5.36656, -5.36656, -5.84374e-16, 3.15147, -5.70654e-15, -0.373467, -2.778, -3.64699, 5.19992, -5.19992, -11.9405, -2.21115, -14.2902, -2.21115, 1.74951, -5.64494, -2.29678, 2.21115, 1.68428, 2.21115, -0.255645, 16.7569, 16.8847, 0.461631, -0.461631, 4.50793}, {-1.41539, 1.41539, 1.85814, 1.78885, -1.78885, 1.78885, 0, -9.45441, 0, -0.373467, -2.778, -3.64699, -0.461631, 0.461631, -4.50793, -9.36656, 5.47113, -9.36656, 7.41106, -11.3065, -9.72932, 2.21115, 1.68428, 2.21115, -1.74951, 5.64494, 2.29678, 1.9555, 10.6504, 19.0959}, {-1.41539, 1.41539, 1.85814, 1.78885, -1.78885, 1.78885, -2.92187e-16, 3.15147, -2.85327e-15, 1.1204, 8.334, 10.941, -0.461631, 0.461631, -4.50793, -2.21115, -1.68428, -2.21115, 1.74951, -5.64494, -2.29678, 7.87269, -3.97726, -5.2214, -8.90493, 12.8004, -4.85864, 0.461631, -13.0675, 4.50793}, {-4.91028, 4.91028, 4.91028, -0.802834, -0.802834, 0.802834, -0.802834, 0.802834, -0.802834, -0.0310931, 1.63676, 1.63676, 2.18055, 6.22684, -2.18055, 1.98471, -5.77316e-15, 5.88418e-15, 2.18055, -2.18055, 6.22684, -1.86034, -6.54704, -6.54704, 1.03079, -1.03079, -3.01551, 1.03079, -3.01551, -1.03079}, {1.63676, -1.63676, -1.63676, 2.4085, 2.4085, -2.4085, -0.802834, 0.802834, -0.802834, -0.0310931, 1.63676, 1.63676, -7.57784, 9.56255, 7.57784, 5.19605, -3.21134, 3.21134, -1.03079, 1.03079, 3.01551, -1.98471, 6.51256e-15, -5.03376e-15, 1.15516, -7.57784, -9.56255, 1.03079, -3.01551, -1.03079}, {1.63676, -1.63676, -1.63676, -0.802834, -0.802834, 0.802834, 2.4085, -2.4085, 2.4085, -0.0310931, 1.63676, 1.63676, -1.03079, 3.01551, 1.03079, 5.19605, 3.21134, -3.21134, -7.57784, 7.57784, 9.56255, -1.98471, 6.51256e-15, -5.58887e-15, 1.03079, -1.03079, -3.01551, 1.15516, -9.56255, -7.57784}, {1.63676, -1.63676, -1.63676, -0.802834, -0.802834, 0.802834, -0.802834, 0.802834, -0.802834, 0.0932794, -4.91028, -4.91028, -1.03079, 3.01551, 1.03079, 1.98471, -5.55112e-15, 5.66214e-15, -1.03079, 1.03079, 3.01551, -8.53176, 6.54704, 6.54704, 4.24213, 2.18055, -6.22684, 4.24213, -6.22684, 2.18055}, {2.4085, -2.4085, 2.4085, -0.833927, 0.833927, 2.4396, 1.57573, 1.57573, 1.57573, 0.0610269, -3.2125, -3.2125, 5.35886, -5.35886, -11.7815, -0.916924, -2.97851, -4.96322, -7.25829, -9.24301, -7.25829, 0.672816, 15.8285, 17.8132, 0.955357, 2.94007, 0.955357, -2.02315, 2.02315, 2.02315}, {-0.802834, 0.802834, -0.802834, 2.50178, -2.50178, -7.31879, 1.57573, 1.57573, 1.57573, 0.0610269, -3.2125, -3.2125, 5.23448, -5.23448, 1.18819, -7.21986, -9.28144, -11.2662, -0.955357, -2.94007, -0.955357, 0.916924, 2.97851, 4.96322, 0.71125, 15.7901, 13.8053, -2.02315, 2.02315, 2.02315}, {-0.802834, 0.802834, -0.802834, -0.833927, 0.833927, 2.4396, -4.7272, -4.7272, -4.7272, 0.0610269, -3.2125, -3.2125, 2.02315, -2.02315, -2.02315, 2.41878, -6.31421, -14.7216, 2.25598, -6.15141, 2.25598, 0.916924, 2.97851, 4.96322, 0.955357, 2.94007, 0.955357, -2.26726, 14.8731, 14.8731}, {-0.802834, 0.802834, -0.802834, -0.833927, 0.833927, 2.4396, 1.57573, 1.57573, 1.57573, -0.183081, 9.63749, 9.63749, 2.02315, -2.02315, -2.02315, -0.916924, -2.97851, -4.96322, -0.955357, -2.94007, -0.955357, 4.12826, -0.232831, 8.17456, 4.29107, -0.395637, -8.80302, -8.32609, -4.27979, -4.27979}, {4.10689, -1.43706, 2.8235e-12, 0.16503, -0.581747, -1.44665, -0.119439, -0.784236, 1.44665, 1.32337, 0.886963, 9.09785e-13, 0.828026, 2.45397, 7.57474, -0.0563528, 1.68845, -3.88578e-14, 2.31753, 3.51421, -7.57474, -5.23714, -5.2363, -3.60028e-12, -1.83977, -0.377268, 1.78815, -1.48814, -0.126978, -1.78815}, {-1.36896, 0.47902, -9.395e-13, -0.495089, 1.74524, 4.33994, -0.119439, -0.784236, 1.44665, 1.32337, 0.886963, 9.08857e-13, 6.964, -1.7891, 1.78815, 0.421405, 4.82539, -5.78659, 1.83977, 0.377268, -1.78815, 0.0563528, -1.68845, 3.79696e-14, -7.13326, -3.92512, 1.78815, -1.48814, -0.126978, -1.78815}, {-1.36896, 0.47902, -9.39941e-13, 0.16503, -0.581747, -1.44665, 0.358318, 2.35271, -4.33994, 1.32337, 0.886963, 9.07744e-13, 1.48814, 0.126978, 1.78815, -0.716472, 4.01544, 5.78659, 7.31562, -1.53881, -1.78815, 0.0563528, -1.68845, 3.9968e-14, -1.83977, -0.377268, 1.78815, -6.78164, -3.67483, -1.78815}, {-1.36896, 0.47902, -9.38462e-13, 0.16503, -0.581747, -1.44665, -0.119439, -0.784236, 1.44665, -3.97012, -2.66089, -2.72546e-12, 1.48814, 0.126978, 1.78815, -0.0563528, 1.68845, -3.70814e-14, 1.83977, 0.377268, -1.78815, 5.53221, -3.60453, 3.79027e-12, -2.49989, 1.94972, 7.57474, -1.01039, 3.00996, -7.57474}, {-1.71772, 0.961283, -4.33994, 1.44665, 0.27723, -1.44665, 0, 1.39654, 0, -2.01922, -1.35334, -1.38544e-12, -8.28248, -1.05552, 5.78659, -1.78815, -2.06889, 1.78815, -0.707741, -6.9163, -1.78815, 9.86504, 7.48225, -1.78815, 0.707741, 1.33015, 1.78815, 2.4959, -0.0533958, 1.7125e-12}, {0.572575, -0.320428, 1.44665, -4.33994, -0.831689, 4.33994, 7.00055e-16, 1.39654, 4.80579e-28, -2.01922, -1.35334, -1.38617e-12, -4.7862, 1.33511, -5.78659, -1.78815, -7.65505, 1.78815, -0.707741, -1.33015, -1.78815, 1.78815, 2.06889, -1.78815, 8.78463, 6.74351, 1.78815, 2.4959, -0.0533958, 1.7134e-12}, {0.572575, -0.320428, 1.44665, 1.44665, 0.27723, -1.44665, 4.20033e-15, -4.18962, 2.88423e-27, -2.01922, -1.35334, -1.38653e-12, -2.4959, 0.0533958, -1.71421e-12, -7.57474, -3.17781, 7.57474, -2.99804, -0.0484352, -7.57474, 1.78815, 2.06889, -1.78815, 0.707741, 1.33015, 1.78815, 10.5728, 5.35997, 7.25997e-12}, {0.572575, -0.320428, 1.44665, 1.44665, 0.27723, -1.44665, 0, 1.39654, 0, 6.05767, 4.06002, 4.16395e-12, -2.4959, 0.0533958, -1.716e-12, -1.78815, -2.06889, 1.78815, -0.707741, -1.33015, -1.78815, -0.502145, 3.3506, -7.57474, -5.07885, 0.221228, 7.57474, 2.4959, -5.63955, 1.71564e-12}, {-4.35597, 0.237767, -4.31288, 0, -1.20934, 0, 0.57469, 0.297534, -1.45022, -2.02668, 0.991065, 0.0125895, -1.79476, 6.43017, -1.77701, -0.710355, 1.12706, 1.79257, -4.80387, -1.45994, 5.81643, 8.81707, -5.09132, -1.84292, 2.50511, 0.269807, -0.0155615, 1.79476, -1.5928, 1.77701}, {1.45199, -0.0792556, 1.43763, 0, 3.62803, 0, 0.57469, 0.297534, -1.45022, -2.02668, 0.991065, 0.0125895, -7.60272, 1.90982, -7.52752, -3.00911, -0.0630793, 7.59343, -2.50511, -0.269807, 0.0155615, 0.710355, -1.12706, -1.79257, 10.6118, -3.69445, -0.0659197, 1.79476, -1.5928, 1.77701}, {1.45199, -0.0792556, 1.43763, 0, -1.20934, 0, -1.72407, -0.892603, 4.35065, -2.02668, 0.991065, 0.0125895, -1.79476, 1.5928, -1.77701, -0.710355, 5.96443, 1.79257, -8.31307, 0.047215, -5.73495, 0.710355, -1.12706, -1.79257, 2.50511, 0.269807, -0.0155615, 9.90148, -5.55705, 1.72665}, {1.45199, -0.0792556, 1.43763, 0, -1.20934, 0, 0.57469, 0.297534, -1.45022, 6.08004, -2.97319, -0.0377686, -1.79476, 1.5928, -1.77701, -0.710355, 1.12706, 1.79257, -2.50511, -0.269807, 0.0155615, -5.09761, -0.810036, -7.54308, 2.50511, 5.10718, -0.0155615, -0.504, -2.78293, 7.57787}, {-1.3922, -1.05489, 4.34859, -1.6823, -0.386683, 0.0104503, -0.635567, 0.941579, 1.4506, 1.8538, -0.906526, -0.0115156, 8.23503, 1.59006, 1.737, 2.86504, -0.685889, -1.80595, 2.75426, -5.36481, -5.8037, -10.2803, 4.31199, 1.85201, -0.211987, 1.59849, 0.00131684, -1.50582, -0.0433277, -1.7788}, {0.464066, 0.35163, -1.44953, 5.0469, 1.16005, -0.0313509, -0.635567, 0.941579, 1.4506, 1.8538, -0.906526, -0.0115156, -0.350444, -1.36319, 7.57692, 5.40731, -4.4522, -7.60833, 0.211987, -1.59849, -0.00131684, -2.86504, 0.685889, 1.80595, -7.6272, 5.2246, 0.0473794, -1.50582, -0.0433277, -1.7788}, {0.464066, 0.35163, -1.44953, -1.6823, -0.386683, 0.0104503, 1.9067, -2.82474, -4.35179, 1.8538, -0.906526, -0.0115156, 1.50582, 0.0433277, 1.7788, 9.59425, 0.860843, -1.84775, -1.64428, -3.00501, 5.7968, -2.86504, 0.685889, 1.80595, -0.211987, 1.59849, 0.00131684, -8.92103, 3.58278, -1.73274}, {0.464066, 0.35163, -1.44953, -1.6823, -0.386683, 0.0104503, -0.635567, 0.941579, 1.4506, -5.56141, 2.71958, 0.0345469, 1.50582, 0.0433277, 1.7788, 2.86504, -0.685889, -1.80595, 0.211987, -1.59849, -0.00131684, -4.72131, -0.720632, 7.60407, 6.51722, 3.14523, -0.0404844, 1.03645, -3.80964, -7.58118}, {-4.91028, -4.91028, 4.91028, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, -1.63676, -1.63676, 4.78823, -10.2738, 6.2275, 10.2738, 3.77476e-15, -3.10862e-15, 3.89543, 6.2275, -10.2738, 10.2738, 6.54704, 6.54704, -23.0483, 0.0754334, 3.97086, -3.97086, 3.97086, 0.0754334, -3.97086}, {1.63676, 1.63676, -1.63676, -4.7272, 4.7272, 4.7272, -1.57573, 1.57573, -1.57573, -1.63676, -1.63676, 4.78823, -10.5179, -6.62248, 10.5179, 6.30294, -6.30294, 10.1984, -0.0754334, -3.97086, 3.97086, -3.07087e-15, 3.59047e-15, -3.89543, 6.62248, 10.5179, -23.1238, 3.97086, 0.0754334, -3.97086}, {1.63676, 1.63676, -1.63676, 1.57573, -1.57573, -1.57573, 4.7272, -4.7272, 4.7272, -1.63676, -1.63676, 4.78823, -3.97086, -0.0754334, 3.97086, -6.30294, 6.30294, 10.1984, -6.62248, -10.5179, 10.5179, -1.51655e-15, 1.81411e-15, -3.89543, 0.0754334, 3.97086, -3.97086, 10.5179, 6.62248, -23.1238}, {1.63676, 1.63676, -1.63676, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 4.91028, 4.91028, -14.3647, -3.97086, -0.0754334, 3.97086, 3.10862e-15, -2.44249e-15, 3.89543, -0.0754334, -3.97086, 3.97086, -6.54704, -6.54704, 2.65162, -6.2275, 10.2738, 2.33207, 10.2738, -6.2275, 2.33207}, {-1.37636, -1.37636, -5.42796, -2.30348, 0.847989, 0.553233, 1.22922, -1.92224, -0.562043, 0.615468, 0.615468, -1.80051, 11.4941, -5.00722, -5.1332, 1.32785, 1.32785, 0.0108901, -7.00339, 9.49791, 0.706454, -3.78972, -3.78972, 7.19114, 2.0865, -1.80893, 1.54172, -2.28016, 1.61526, 2.92027}, {0.458787, 0.458787, 1.80932, 6.91044, -2.54397, -1.6597, 1.22922, -1.92224, -0.562043, 0.615468, 0.615468, -1.80051, 0.445015, -3.45041, -10.1575, -3.58904, 9.01683, 2.25906, -2.0865, 1.80893, -1.54172, -1.32785, -1.32785, -0.0108901, -0.375375, -4.2708, 8.74375, -2.28016, 1.61526, 2.92027}, {0.458787, 0.458787, 1.80932, -2.30348, 0.847989, 0.553233, -3.68767, 5.76673, 1.68613, 0.615468, 0.615468, -1.80051, 2.28016, -1.61526, -2.92027, 10.5418, -2.0641, -2.20204, -3.92165, -0.0262169, -8.77899, -1.32785, -1.32785, -0.0108901, 2.0865, -1.80893, 1.54172, -4.74204, -0.846607, 10.1223}, {0.458787, 0.458787, 1.80932, -2.30348, 0.847989, 0.553233, 1.22922, -1.92224, -0.562043, -1.8464, -1.8464, 5.40152, 2.28016, -1.61526, -2.92027, 1.32785, 1.32785, 0.0108901, -2.0865, 1.80893, -1.54172, -3.163, -3.163, -7.24816, 11.3004, -5.20089, -0.671213, -7.19706, 9.30424, 5.16845}, {5.36656, -5.36656, -5.36656, 1.41539, 1.85814, -1.41539, 0, 0, -3.15147, 0.373467, -3.64699, 2.778, -5.19992, -11.9405, 5.19992, -1.74951, -2.29678, 5.64494, 2.21115, -2.21115, 14.2902, 0.255645, 16.8847, -16.7569, -2.21115, 2.21115, -1.68428, -0.461631, 4.50793, 0.461631}, {-1.78885, 1.78885, 1.78885, -4.24616, -5.57441, 4.24616, 0, 0, -3.15147, 0.373467, -3.64699, 2.778, 7.61705, -11.6633, -7.61705, -1.74951, -2.29678, 18.2508, 2.21115, -2.21115, 1.68428, 1.74951, 2.29678, -5.64494, -3.70501, 16.7991, -12.7963, -0.461631, 4.50793, 0.461631}, {-1.78885, 1.78885, 1.78885, 1.41539, 1.85814, -1.41539, 0, 0, 9.45441, 0.373467, -3.64699, 2.778, 0.461631, -4.50793, -0.461631, -7.41106, -9.72932, 11.3065, 9.36656, -9.36656, -5.47113, 1.74951, 2.29678, -5.64494, -2.21115, 2.21115, -1.68428, -1.9555, 19.0959, -10.6504}, {-1.78885, 1.78885, 1.78885, 1.41539, 1.85814, -1.41539, 0, 0, -3.15147, -1.1204, 10.941, -8.334, 0.461631, -4.50793, -0.461631, -1.74951, -2.29678, 5.64494, 2.21115, -2.21115, 1.68428, 8.90493, -4.85864, -12.8004, -7.87269, -5.2214, 3.97726, -0.461631, 4.50793, 13.0675}, {5.73547, -8.96906, -2.62245, 0.335815, -3.2793, -0.653542, 1.76841, -1.58918, 1.21052, -0.192397, 1.8788, -1.43113, 0.604796, 13.4752, 2.34148, -2.60096, 6.01778, -0.688458, -6.89635, 4.62559, -7.41885, 3.37055, -13.533, 6.41296, -0.177274, 1.73112, 2.57679, -1.94806, -0.357987, 0.272688}, {-1.91182, 2.98969, 0.874151, -1.00744, 9.83791, 1.96063, 1.76841, -1.58918, 1.21052, -0.192397, 1.8788, -1.43113, 9.59535, -11.6008, -3.76929, -9.67459, 12.3745, -5.53052, 0.177274, -1.73112, -2.57679, 2.60096, -6.01778, 0.688458, 0.592313, -5.78406, 8.30129, -1.94806, -0.357987, 0.272688}, {-1.91182, 2.98969, 0.874151, 0.335815, -3.2793, -0.653542, -5.30522, 4.76754, -3.63155, -0.192397, 1.8788, -1.43113, 1.94806, 0.357987, -0.272688, -3.94422, 19.135, 1.92571, 7.82457, -13.6899, -6.07339, 2.60096, -6.01778, 0.688458, -0.177274, 1.73112, 2.57679, -1.17847, -7.87317, 5.99719}, {-1.91182, 2.98969, 0.874151, 0.335815, -3.2793, -0.653542, 1.76841, -1.58918, 1.21052, 0.57719, -5.63639, 4.29338, 1.94806, 0.357987, -0.272688, -2.60096, 6.01778, -0.688458, 0.177274, -1.73112, -2.57679, 10.2483, -17.9765, -2.80815, -1.52053, 14.8483, 5.19096, -9.02168, 5.99873, -4.56938}, {-0.906892, 2.28653, -2.28852, -1.55284, 0.422175, 1.18312, -0.363916, -0.686733, -0.918335, 1.61446, 1.02673, -1.02763, 7.75714, -1.26844, -7.13784, 2.36925, 0.327011, -0.327296, 1.53183, 4.53788, 3.86554, -8.8271, -4.43394, 4.43781, -0.0761652, -1.79095, -0.192201, -1.54576, -0.420263, 2.40534}, {0.302297, -0.762175, 0.762841, 4.65853, -1.26653, -3.54937, -0.363916, -0.686733, -0.918335, 1.61446, 1.02673, -1.02763, 0.336571, 3.46896, -5.45671, 3.82491, 3.07394, 3.34604, 0.0761652, 1.79095, 0.192201, -2.36925, -0.327011, 0.327296, -6.53402, -5.89788, 3.91832, -1.54576, -0.420263, 2.40534}, {0.302297, -0.762175, 0.762841, -1.55284, 0.422175, 1.18312, 1.09175, 2.0602, 2.75501, 1.61446, 1.02673, -1.02763, 1.54576, 0.420263, -2.40534, 8.58063, -1.36169, -5.05979, -1.13302, 4.83965, -2.85916, -2.36925, -0.327011, 0.327296, -0.0761652, -1.79095, -0.192201, -8.00362, -4.52719, 6.51586}, {0.302297, -0.762175, 0.762841, -1.55284, 0.422175, 1.18312, -0.363916, -0.686733, -0.918335, -4.84339, -3.0802, 3.08289, 1.54576, 0.420263, -2.40534, 2.36925, 0.327011, -0.327296, 0.0761652, 1.79095, 0.192201, -3.57844, 2.72169, -2.72407, 6.13521, -3.47965, -4.9247, -0.0900956, 2.32667, 6.07869}, {-3.9353, 0.360586, -0.360901, -2.42845e-16, -0.455297, -1.14997, 2.03858e-16, 1.40972, 0.194715, -1.31177, -0.834228, 0.834958, -1.62143, 2.53253, 5.87264, 4.81904e-17, -1.17973, 1.18076, -1.62143, -7.23282, -1.16824, 5.24706, 4.51665, -4.52059, 1.62143, 1.59394, 0.389381, 1.62143, -0.711347, -1.27275}, {1.31177, -0.120195, 0.1203, 7.28534e-16, 1.36589, 3.44992, 2.03858e-16, 1.40972, 0.194715, -1.31177, -0.834228, 0.834958, -6.86849, 1.19213, 0.791545, -7.67241e-16, -6.81861, 0.401902, -1.62143, -1.59394, -0.389381, -3.73841e-16, 1.17973, -1.18076, 6.86849, 4.93085, -2.95045, 1.62143, -0.711347, -1.27275}, {1.31177, -0.120195, 0.1203, 7.41337e-17, -0.455297, -1.14997, 6.88614e-16, -4.22916, -0.584146, -1.31177, -0.834228, 0.834958, -1.62143, 0.711347, 1.27275, -1.04445e-16, 0.641455, 5.78066, -6.86849, -1.11316, -0.870582, -5.1774e-16, 1.17973, -1.18076, 1.62143, 1.59394, 0.389381, 6.86849, 2.62557, -4.61258}, {1.31177, -0.120195, 0.1203, -1.68711e-16, -0.455297, -1.14997, -2.56799e-17, 1.40972, 0.194715, 3.9353, 2.50269, -2.50487, -1.62143, 0.711347, 1.27275, 2.4028e-16, -1.17973, 1.18076, -1.62143, -1.59394, -0.389381, -5.24706, 1.66051, -1.66196, 1.62143, 3.41513, 4.98927, 1.62143, -6.35023, -2.05161}, {3.9353, -3.83942e-12, 1.21564, 0, -1.44665, 1.03094, 0, 1.44665, 0.774615, 1.31177, -1.27981e-12, -1.40034, 1.62143, 7.57474, -4.89721, 0, 0, -2.23179, 1.62143, -7.57474, -3.55506, -5.24706, 5.11922e-12, 7.83316, -1.62143, 1.78815, 0.456604, -1.62143, -1.78815, 0.773441}, {-1.31177, 1.28052e-12, -0.405214, 3.53326e-15, 4.33994, -3.09282, 1.17775e-15, 1.44665, 0.774615, 1.31177, -1.28052e-12, -1.40034, 6.86849, 1.78815, 0.847415, -4.71101e-15, -5.78659, -5.33025, 1.62143, -1.78815, -0.456604, 3.2565e-16, -3.17893e-28, 2.23179, -6.86849, 1.78815, 6.05797, -1.62143, -1.78815, 0.773441}, {-1.31177, 1.28099e-12, -0.405214, -9.42202e-16, -1.44665, 1.03094, -2.82661e-15, -4.33994, -2.32384, 1.31177, -1.28099e-12, -1.40034, 1.62143, 1.78815, -0.773441, 3.76881e-15, 5.78659, -6.35555, 6.86849, -1.78815, 1.16425, 3.2565e-16, -3.18011e-28, 2.23179, -1.62143, 1.78815, 0.456604, -6.86849, -1.78815, 6.37481}, {-1.31177, 1.27957e-12, -0.405214, 0, -1.44665, 1.03094, 0, 1.44665, 0.774615, -3.9353, 3.83871e-12, 4.20103, 1.62143, 1.78815, -0.773441, 0, 0, -2.23179, 1.62143, -1.78815, -0.456604, 5.24706, -5.11827e-12, 3.85265, -1.62143, 7.57474, -3.66716, -1.62143, -7.57474, -2.32502}, {-1.71772, -4.33994, -0.49013, 1.44665, -1.44665, -0.51339, 0, 0, -1.80556, -2.01922, 1.97175e-12, 2.15557, -8.28248, 5.78659, 2.4862, -1.78815, 1.78815, 2.86637, -0.707741, -1.78815, 9.25207, 9.86504, -1.78815, -11.4887, 0.707741, 1.78815, -2.02984, 2.4959, -2.43721e-12, -0.432641}, {0.572575, 1.44665, 0.163377, -4.33994, 4.33994, 1.54017, 0, 0, -1.80556, -2.01922, 1.97102e-12, 2.15557, -4.7862, -5.78659, -0.220866, -1.78815, 1.78815, 10.0886, -0.707741, -1.78815, 2.02984, 1.78815, -1.78815, -2.86637, 8.78463, 1.78815, -10.6521, 2.4959, -2.43632e-12, -0.432641}, {0.572575, 1.44665, 0.163377, 1.44665, -1.44665, -0.51339, 0, 0, 5.41667, -2.01922, 1.97175e-12, 2.15557, -2.4959, 2.43685e-12, 0.432641, -7.57474, 7.57474, 4.91994, -2.99804, -7.57474, 1.37634, 1.78815, -1.78815, -2.86637, 0.707741, 1.78815, -2.02984, 10.5728, -1.03242e-11, -9.05492}, {0.572575, 1.44665, 0.163377, 1.44665, -1.44665, -0.51339, 0, 0, -1.80556, 6.05767, -5.91306e-12, -6.46671, -2.4959, 2.43596e-12, 0.432641, -1.78815, 1.78815, 2.86637, -0.707741, -1.78815, 2.02984, -0.502145, -7.57474, -3.51988, -5.07885, 7.57474, 0.0237159, 2.4959, -2.43632e-12, 6.78958}, {5.80677, 0.989763, -2.29829, 1.66654, 1.66654, -0.659606, 0.232016, 0.232016, -2.11105, 0.0370362, -1.56863, 2.00456, -6.33358, -8.31829, 2.5068, -2.34674, -2.34674, 3.42472, 1.17767, -0.807048, 10.1067, 2.1986, 8.62127, -11.443, -2.10573, -0.121017, -1.66246, -0.332567, 1.65215, 0.131628}, {-1.93559, -0.329921, 0.766095, -4.99961, -4.99961, 1.97882, 0.232016, 0.232016, -2.11105, 0.0370362, -1.56863, 2.00456, 8.07492, -0.332464, -3.19601, -3.2748, -3.2748, 11.8689, 2.10573, 0.121017, 1.66246, 2.34674, 2.34674, -3.42472, -2.25388, 6.15351, -9.68071, -0.332567, 1.65215, 0.131628}, {-1.93559, -0.329921, 0.766095, 1.66654, 1.66654, -0.659606, -0.696049, -0.696049, 6.33316, 0.0370362, -1.56863, 2.00456, 0.332567, -1.65215, -0.131628, -9.01289, -9.01289, 6.06315, 9.84809, 1.4407, -1.40192, 2.34674, 2.34674, -3.42472, -2.10573, -0.121017, -1.66246, -0.480712, 7.92668, -7.88662}, {-1.93559, -0.329921, 0.766095, 1.66654, 1.66654, -0.659606, 0.232016, 0.232016, -2.11105, -0.111109, 4.7059, -6.01369, 0.332567, -1.65215, -0.131628, -2.34674, -2.34674, 3.42472, 2.10573, 0.121017, 1.66246, 10.0891, 3.66642, -6.4891, -8.77188, -6.78716, 0.975965, -1.26063, 0.724083, 8.57584}, {-7.02938, -6.32827e-15, -4.44089e-15, 1.74421, 1.74203, 1.33161, -1.54384, -1.54318, 0.610212, -2.54349, -0.198851, -1.94182, -12.0291, -9.12139, -6.97241, -0.247668, -0.245794, -2.40023, 5.18739, 8.08019, -3.19511, 10.4216, 1.0412, 10.1675, 0.98797, -1.90748, 0.754264, 5.05222, 2.15327, 1.64596}, {2.34313, -1.05471e-15, -8.88178e-16, -5.23263, -5.22609, -3.99484, -1.54384, -1.54318, 0.610212, -2.54349, -0.198851, -1.94182, -14.4247, -2.15327, -1.64596, 5.92769, 5.92693, -4.84108, -0.98797, 1.90748, -0.754264, 0.247668, 0.245794, 2.40023, 11.1619, -1.11207, 8.52156, 5.05222, 2.15327, 1.64596}, {2.34313, 2.33147e-15, 1.77636e-15, 1.74421, 1.74203, 1.33161, 4.63152, 4.62954, -1.83064, -2.54349, -0.198851, -1.94182, -5.05222, -2.15327, -1.64596, -7.2245, -7.21392, -7.72668, -10.3605, 1.90748, -0.754264, 0.247668, 0.245794, 2.40023, 0.98797, -1.90748, 0.754264, 15.2262, 2.94867, 9.41326}, {2.34313, -2.77556e-16, -8.88178e-16, 1.74421, 1.74203, 1.33161, -1.54384, -1.54318, 0.610212, 7.63048, 0.596554, 5.82547, -5.05222, -2.15327, -1.64596, -0.247668, -0.245794, -2.40023, -0.98797, 1.90748, -0.754264, -9.12483, 0.245794, 2.40023, -5.98886, -8.8756, -4.57219, 11.2276, 8.32599, -0.794885}, {4.62937, 4.62937, -1.83228, 1.92454e-15, 1.60567, 4.31655e-17, -0.198723, -0.198723, -1.94057, 1.74185, 0.136178, 1.32981, 1.90741, -6.49998, -0.754941, 0.245635, -1.73908, 2.39867, 2.94793, 2.94793, 9.40601, -7.21302, 1.19437, -7.71791, -2.15304, -2.15304, -1.64373, -1.90741, 0.0773091, 0.754941}, {-1.54312, -1.54312, 0.61076, -2.32061e-15, -4.817, -3.91084e-15, -0.198723, -0.198723, -1.94057, 1.74185, 0.136178, 1.32981, 8.0799, 6.09519, -3.19798, 1.04052, -0.94419, 10.1609, 2.15304, 2.15304, 1.64373, -0.245635, 1.73908, -2.39867, -9.12042, -2.69775, -6.96297, -1.90741, 0.0773091, 0.754941}, {-1.54312, -1.54312, 0.61076, 0, 1.60567, 0, 0.596168, 0.596168, 5.82171, 1.74185, 0.136178, 1.32981, 1.90741, -0.0773091, -0.754941, 0.245635, -8.16175, 2.39867, 8.32553, 8.32553, -0.799305, -0.245635, 1.73908, -2.39867, -2.15304, -2.15304, -1.64373, -8.87479, -0.467403, -4.5643}, {-1.54312, -1.54312, 0.61076, -6.94322e-16, 1.60567, -5.30079e-16, -0.198723, -0.198723, -1.94057, -5.22554, -0.408534, -3.98943, 1.90741, -0.0773091, -0.754941, 0.245635, -1.73908, 2.39867, 2.15304, 2.15304, 1.64373, 5.92686, 7.91157, -4.84171, -2.15304, -8.57571, -1.64373, -1.11252, 0.872199, 8.51722}, {-8.88178e-16, 3.03985e-15, -3.8693, 1.44142, -1.45582, 0.146636, 0.577805, 1.45582, -0.186531, -2.01922, -1.68031e-12, -1.24987, -7.54736, 7.62276, -2.36203, -2.4959, -2.07812e-12, 0.0493134, -3.02542, -7.62276, -0.617546, 10.5728, 8.79935e-12, 4.95017, 0.714206, 1.79949, 1.36367, 1.78169, -1.79949, 1.77549}, {0, -1.49289e-16, 1.28977, -4.32425, 4.36745, -0.439908, 0.577805, 1.45582, -0.186531, -2.01922, -1.67873e-12, -1.24987, -1.78169, 1.79949, -6.93455, -4.80711, -5.82327, 0.795439, -0.714206, -1.79949, -1.36367, 2.4959, 2.07523e-12, -0.0493134, 8.79109, 1.79949, 6.36315, 1.78169, -1.79949, 1.77549}, {8.88178e-16, 3.43166e-16, 1.28977, 1.44142, -1.45582, 0.146636, -1.73341, -4.36745, 0.559594, -2.01922, -1.68189e-12, -1.24987, -1.78169, 1.79949, -1.77549, -8.26156, 5.82327, -0.537231, -0.714206, -1.79949, -6.52273, 2.4959, 2.07834e-12, -0.0493134, 0.714206, 1.79949, 1.36367, 9.85858, -1.79949, 6.77497}, {0, 1.48625e-17, 1.28977, 1.44142, -1.45582, 0.146636, 0.577805, 1.45582, -0.186531, 6.05767, 5.03935e-12, 3.74961, -1.78169, 1.79949, -1.77549, -2.4959, -2.07634e-12, 0.0493134, -0.714206, -1.79949, -1.36367, 2.4959, 2.0765e-12, -5.20838, -5.05146, 7.62276, 0.777128, -0.529529, -7.62276, 2.52162}, {-0.0174717, -4.36745, 1.62174, 0.116385, -1.45582, -0.673541, -1.39583, -1.1623e-12, 0.425765, 1.27362, 1.06054e-12, 0.788355, -0.616596, 5.82327, 4.1949, 1.58148, 1.79949, 0.306268, 7.30147, -1.79949, -1.56114, -6.67598, -1.79949, -3.45969, -1.71815, 1.79949, -0.141919, 0.151058, 1.25785e-13, -1.50074}, {0.0058239, 1.45582, -0.54058, -0.349154, 4.36745, 2.02062, -1.39583, -1.1623e-12, 0.425765, 1.27362, 1.06054e-12, 0.788355, -0.174354, -5.82327, 3.66305, 7.16481, 1.79949, -1.39679, 1.71815, -1.79949, 0.141919, -1.58148, -1.79949, -0.306268, -6.81264, 1.79949, -3.29534, 0.151058, 1.25785e-13, -1.50074}, {0.0058239, 1.45582, -0.54058, 0.116385, -1.45582, -0.673541, 4.1875, 3.48841e-12, -1.27729, 1.27362, 1.061e-12, 0.788355, -0.151058, -1.26201e-13, 1.50074, 1.11595, 7.62276, 3.00043, 1.69485, -7.62276, 2.30424, -1.58148, -1.79949, -0.306268, -1.71815, 1.79949, -0.141919, -4.94344, -4.11815e-12, -4.65416}, {0.0058239, 1.45582, -0.54058, 0.116385, -1.45582, -0.673541, -1.39583, -1.16331e-12, 0.425765, -3.82087, -3.18437e-12, -2.36507, -0.151058, -1.26255e-13, 1.50074, 1.58148, 1.79949, 0.306268, 1.71815, -1.79949, 0.141919, -1.60478, -7.62276, 1.85605, -2.18368, 7.62276, 2.55224, 5.73439, 4.77913e-12, -3.20379}, {0.776806, 4.33994, 4.33994, -1.05603, 0, 0, 0.111915, 1.44665, -0.572575, 1.20305, 1.58813e-12, 2.01922, 5.84948, 1.78815, 1.78815, 1.16698, -1.78815, 0.707741, -0.265932, -5.78659, 4.7862, -5.97917, 1.78815, -8.78463, -0.181727, -1.96304e-12, -2.4959, -1.62538, -1.78815, -1.78815}, {-0.258935, -1.44665, -1.44665, 3.16808, 0, 0, 0.111915, 1.44665, -0.572575, 1.20305, 1.58704e-12, 2.01922, 2.66112, 7.57474, 7.57474, 0.719326, -7.57474, 2.99804, 0.181727, 1.96205e-12, 2.4959, -1.16698, 1.78815, -0.707741, -4.99391, -8.30986e-12, -10.5728, -1.62538, -1.78815, -1.78815}, {-0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -0.335745, -4.33994, 1.71772, 1.20305, 1.58813e-12, 2.01922, 1.62538, 1.78815, 1.78815, 5.39109, -1.78815, 0.707741, 1.21747, 5.78659, 8.28248, -1.16698, 1.78815, -0.707741, -0.181727, -1.96304e-12, -2.4959, -6.43757, -1.78815, -9.86504}, {-0.258935, -1.44665, -1.44665, -1.05603, 0, 0, 0.111915, 1.44665, -0.572575, -3.60914, -4.76221e-12, -6.05767, 1.62538, 1.78815, 1.78815, 1.16698, -1.78815, 0.707741, 0.181727, 1.9625e-12, 2.4959, -0.131244, 7.57474, 5.07885, 4.04237, -1.96214e-12, -2.4959, -2.07304, -7.57474, 0.502145}, {-1.50826, -4.33994, -0.250246, -0.36325, 9.14735e-13, 1.16277, 0.624341, -1.44665, 0.0358648, -0.763842, -1.00857e-12, -1.28205, 1.28057, -1.78815, -6.19146, -0.322725, 1.78815, -1.4816, -3.89052, 5.78659, -0.290898, 3.37809, -1.78815, 6.6098, 1.39316, 1.15988e-13, 0.147438, 0.172433, 1.78815, 1.54037}, {0.502752, 1.44665, 0.0834153, 1.08975, -2.74233e-12, -3.48831, 0.624341, -1.44665, 0.0358648, -0.763842, -1.00788e-12, -1.28205, -2.18344, -7.57474, -1.87403, -2.82009, 7.57474, -1.62505, -1.39316, -1.16267e-13, -0.147438, 0.322725, -1.78815, 1.4816, 4.44853, 4.14743e-12, 5.27564, 0.172433, 1.78815, 1.54037}, {0.502752, 1.44665, 0.0834153, -0.36325, 9.139e-13, 1.16277, -1.87302, 4.33994, -0.107594, -0.763842, -1.00765e-12, -1.28205, -0.172433, -1.78815, -1.54037, 1.13028, 1.78815, -6.13268, -3.40417, -5.78659, -0.4811, 0.322725, -1.78815, 1.4816, 1.39316, 1.15882e-13, 0.147438, 3.2278, 1.78815, 6.66858}, {0.502752, 1.44665, 0.0834153, -0.36325, 9.14526e-13, 1.16277, 0.624341, -1.44665, 0.0358648, 2.29153, 3.02502e-12, 3.84615, -0.172433, -1.78815, -1.54037, -0.322725, 1.78815, -1.4816, -1.39316, -1.1632e-13, -0.147438, -1.68828, -7.57474, 1.14793, 2.84616, -3.54214e-12, -4.50365, -2.32493, 7.57474, 1.39691}, {-5.2764, 2.09092, -1.75594, -0.883363, 0.350058, 0.882867, 0.674903, -2.28914, -0.671659, -1.55034, 2.63606, -0.796523, 2.45135, -0.971419, -5.34624, 0.257671, 2.39684, -0.261068, -5.70783, 12.8476, 2.79336, 5.94368, -12.9411, 3.44716, 3.00822, -3.69104, -0.106727, 1.0821, -0.428812, 1.81477}, {1.7588, -0.696974, 0.585315, 2.65009, -1.05017, -2.6486, 0.674903, -2.28914, -0.671659, -1.55034, 2.63606, -0.796523, -8.11729, 3.21671, -4.15603, -2.44194, 11.5534, 2.42557, -3.00822, 3.69104, 0.106727, -0.257671, -2.39684, 0.261068, 9.20957, -14.2353, 3.07936, 1.0821, -0.428812, 1.81477}, {1.7588, -0.696974, 0.585315, -0.883363, 0.350058, 0.882867, -2.02471, 6.86742, 2.01498, -1.55034, 2.63606, -0.796523, -1.0821, 0.428812, -1.81477, 3.79112, 0.996607, -3.79254, -10.0434, 6.47894, -2.23453, -0.257671, -2.39684, 0.261068, 3.00822, -3.69104, -0.106727, 7.28345, -10.973, 5.00086}, {1.7588, -0.696974, 0.585315, -0.883363, 0.350058, 0.882867, 0.674903, -2.28914, -0.671659, 4.65101, -7.90817, 2.38957, -1.0821, 0.428812, -1.81477, 0.257671, 2.39684, -0.261068, -3.00822, 3.69104, 0.106727, -7.29286, 0.391057, -2.08019, 6.54167, -5.09127, -3.6382, -1.61751, 8.72775, 4.50141}, {-0.630826, -5.80799, 0.630826, -0.387946, -0.481968, -1.21772, -0.883035, 0.3495, 0.883035, 1.06071, -1.80353, 0.544962, 1.7714, 0.130593, 6.63599, 1.57102, 0.163739, 0.413696, 4.36372, -4.22303, -4.36372, -5.81384, 7.05038, -2.59355, -0.831577, 2.82503, 0.831577, -0.219612, 1.79728, -1.7651}, {0.210275, 1.936, -0.210275, 1.16384, 1.4459, 3.65317, -0.883035, 0.3495, 0.883035, 1.06071, -1.80353, 0.544962, -0.621489, -9.54126, 2.6062, 5.10316, -1.23426, -3.11845, 0.831577, -2.82503, -0.831577, -1.57102, -0.163739, -0.413696, -5.0744, 10.0391, -1.34827, -0.219612, 1.79728, -1.7651}, {0.210275, 1.936, -0.210275, -0.387946, -0.481968, -1.21772, 2.64911, -1.0485, -2.64911, 1.06071, -1.80353, 0.544962, 0.219612, -1.79728, 1.7651, 3.1228, 2.09161, 5.28459, -0.00952469, -10.569, 0.00952469, -1.57102, -0.163739, -0.413696, -0.831577, 2.82503, 0.831577, -4.46243, 9.01139, -3.94495}, {0.210275, 1.936, -0.210275, -0.387946, -0.481968, -1.21772, -0.883035, 0.3495, 0.883035, -3.18212, 5.41059, -1.63489, 0.219612, -1.79728, 1.7651, 1.57102, 0.163739, 0.413696, 0.831577, -2.82503, -0.831577, -2.41212, -7.90772, 0.427406, 0.720206, 4.7529, 5.70247, 3.31253, 0.399276, -5.29724}, {-4.62915, 1.83443, 4.62655, 1.15731e-16, 1.13013e-15, 2.34313, -1.74201, -1.33137, 1.74389, 0.198956, 1.94285, -2.54483, -1.90731, 0.755828, -10.3625, 2.15324, 1.64567, -5.05183, 7.21395, 7.72698, -7.2249, -2.94906, -9.41706, 15.2312, -0.245923, -2.40149, 0.249326, 1.90731, -0.755828, 0.990019}, {1.54305, -0.611477, -1.54218, -3.38711e-15, -5.71373e-15, -7.02938, -1.74201, -1.33137, 1.74389, 0.198956, 1.94285, -2.54483, -8.07952, 3.20174, 5.17872, 9.12126, 6.97115, -12.0274, 0.245923, 2.40149, -0.249326, -2.15324, -1.64567, 5.05183, -1.04175, -10.1729, 10.4287, 1.90731, -0.755828, 0.990019}, {1.54305, -0.611477, -1.54218, 0, 0, 2.34313, 5.22602, 3.99411, -5.23168, 0.198956, 1.94285, -2.54483, -1.90731, 0.755828, -0.990019, 2.15324, 1.64567, -14.4243, -5.92628, 4.8474, 5.91941, -2.15324, -1.64567, 5.05183, -0.245923, -2.40149, 0.249326, 1.11149, -8.52722, 11.1694}, {1.54305, -0.611477, -1.54218, 1.15731e-16, 1.13013e-15, 2.34313, -1.74201, -1.33137, 1.74389, -0.596868, -5.82855, 7.6345, -1.90731, 0.755828, -0.990019, 2.15324, 1.64567, -5.05183, 0.245923, 2.40149, -0.249326, -8.32544, 0.800244, 11.2206, -0.245923, -2.40149, -9.12318, 8.87534, 4.56966, -5.98555}, {-4.62937, 1.83228, 4.62937, -1.60567, 0, 0, 0.198723, 1.94057, -0.198723, -0.136178, -1.32981, 1.74185, 6.49998, 0.754941, 1.90741, 1.73908, -2.39867, 0.245635, -2.94793, -9.40601, 2.94793, -1.19437, 7.71791, -7.21302, 2.15304, 1.64373, -2.15304, -0.0773091, -0.754941, -1.90741}, {1.54312, -0.61076, -1.54312, 4.817, 0, 0, 0.198723, 1.94057, -0.198723, -0.136178, -1.32981, 1.74185, -6.09519, 3.19798, 8.0799, 0.94419, -10.1609, 1.04052, -2.15304, -1.64373, 2.15304, -1.73908, 2.39867, -0.245635, 2.69775, 6.96297, -9.12042, -0.0773091, -0.754941, -1.90741}, {1.54312, -0.61076, -1.54312, -1.60567, 0, 0, -0.596168, -5.82171, 0.596168, -0.136178, -1.32981, 1.74185, 0.0773091, 0.754941, 1.90741, 8.16175, -2.39867, 0.245635, -8.32553, 0.799305, 8.32553, -1.73908, 2.39867, -0.245635, 2.15304, 1.64373, -2.15304, 0.467403, 4.5643, -8.87479}, {1.54312, -0.61076, -1.54312, -1.60567, 0, 0, 0.198723, 1.94057, -0.198723, 0.408534, 3.98943, -5.22554, 0.0773091, 0.754941, 1.90741, 1.73908, -2.39867, 0.245635, -2.15304, -1.64373, 2.15304, -7.91157, 4.84171, 5.92686, 8.57571, 1.64373, -2.15304, -0.872199, -8.51722, -1.11252}, {3.22749, -4.51945, -2.90569, 1.79579, -0.140217, 1.36925, 0.607375, 0.135762, -1.32575, -1.32734, -1.50203, -1.01206, -8.0731, -1.12793, -8.36668, -2.97048, 0.00550629, -0.0537701, -1.85046, -2.57298, 5.74449, 8.27985, 6.00261, 4.10202, -0.57904, 2.02993, -0.441503, 0.889927, 1.6888, 2.88969}, {-1.07583, 1.50648, 0.968563, -5.38738, 0.42065, -4.10774, 0.607375, 0.135762, -1.32575, -1.32734, -1.50203, -1.01206, 3.41339, -7.71473, -6.76394, -5.39998, -0.537542, 5.24921, 0.57904, -2.02993, 0.441503, 2.97048, -0.00550629, 0.0537701, 4.73032, 8.03804, 3.60675, 0.889927, 1.6888, 2.88969}, {-1.07583, 1.50648, 0.968563, 1.79579, -0.140217, 1.36925, -1.82213, -0.407286, 3.97724, -1.32734, -1.50203, -1.01206, -0.889927, -1.6888, -2.88969, -10.1537, 0.566373, -5.53076, 4.88236, -8.05586, -3.43275, 2.97048, -0.00550629, 0.0537701, -0.57904, 2.02993, -0.441503, 6.19929, 7.69691, 6.93795}, {-1.07583, 1.50648, 0.968563, 1.79579, -0.140217, 1.36925, 0.607375, 0.135762, -1.32575, 3.98202, 4.50609, 3.03619, -0.889927, -1.6888, -2.88969, -2.97048, 0.00550629, -0.0537701, 0.57904, -2.02993, 0.441503, 7.2738, -6.03144, -3.82048, -7.76222, 2.59079, -5.91849, -1.53958, 1.14575, 8.19268}, {0.596103, 2.3292, 5.82108, 0, -2.17235, 0, -1.54296, 0.977878, 0.61239, 1.74166, 1.97087, 1.32797, 0.245608, 12.3343, 2.39842, 1.9072, 1.47645, -0.756955, 8.32463, -4.16055, -0.808098, -8.87383, -9.35994, -4.55492, -2.15281, 0.249041, -1.64146, -0.245608, -3.64486, -2.39842}, {-0.198701, -0.7764, -1.94036, 0, 6.51705, 0, -1.54296, 0.977878, 0.61239, 1.74166, 1.97087, 1.32797, 1.04041, 6.75045, 10.1599, 8.07903, -2.43506, -3.20651, 2.15281, -0.249041, 1.64146, -1.9072, -1.47645, 0.756955, -9.11944, -7.63445, -6.95334, -0.245608, -3.64486, -2.39842}, {-0.198701, -0.7764, -1.94036, 0, -2.17235, 0, 4.62887, -2.93363, -1.83717, 1.74166, 1.97087, 1.32797, 0.245608, 3.64486, 2.39842, 1.9072, 10.1659, -0.756955, 2.94761, 2.85656, 9.4029, -1.9072, -1.47645, 0.756955, -2.15281, 0.249041, -1.64146, -7.21224, -11.5283, -7.71029}, {-0.198701, -0.7764, -1.94036, 0, -2.17235, 0, -1.54296, 0.977878, 0.61239, -5.22497, -5.91262, -3.98391, 0.245608, 3.64486, 2.39842, 1.9072, 1.47645, -0.756955, 2.15281, -0.249041, 1.64146, -1.1124, 1.62915, 8.51839, -2.15281, 8.93844, -1.64146, 5.92622, -7.55637, -4.84797}, {-2.37946, -3.79135, -6.81576, 0.894391, -1.25242, -0.805215, 0.086206, 0.865556, -0.85654, -1.77375, -0.876923, -0.610165, -5.66348, 4.99561, 1.40791, -1.21208, 0.478185, 2.05404, -1.43177, -6.09423, 1.67666, 8.30708, 3.02951, 0.386615, 1.08695, 2.63201, 1.74951, 2.08592, 0.0140506, 1.81295}, {0.793153, 1.26378, 2.27192, -2.68317, 3.75725, 2.41565, 0.086206, 0.865556, -0.85654, -1.77375, -0.876923, -0.610165, -5.25853, -5.06918, -10.9006, -1.55691, -2.98404, 5.4802, -1.08695, -2.63201, -1.74951, 1.21208, -0.478185, -2.05404, 8.18195, 6.1397, 4.19016, 2.08592, 0.0140506, 1.81295}, {0.793153, 1.26378, 2.27192, 0.894391, -1.25242, -0.805215, -0.258618, -2.59667, 2.56962, -1.77375, -0.876923, -0.610165, -2.08592, -0.0140506, -1.81295, -4.78965, 5.48785, 5.2749, -4.25956, -7.68714, -10.8372, 1.21208, -0.478185, -2.05404, 1.08695, 2.63201, 1.74951, 9.18092, 3.52174, 4.25361}, {0.793153, 1.26378, 2.27192, 0.894391, -1.25242, -0.805215, 0.086206, 0.865556, -0.85654, 5.32125, 2.63077, 1.83049, -2.08592, -0.0140506, -1.81295, -1.21208, 0.478185, 2.05404, -1.08695, -2.63201, -1.74951, -1.96053, -5.53332, -11.1417, -2.49062, 7.64167, 4.97037, 1.74109, -3.44817, 5.23911}, {4.58783, -0.200634, 4.23679, 1.50209, -0.951977, -0.596169, -2.69821, -0.462309, 1.0709, 2.7254, 1.34741, 0.937529, -5.97475, 4.90195, 4.86723, 1.47849, 1.74815, -0.586802, 16.0183, 2.33802, -3.86166, -12.3801, -7.13778, -3.16331, -5.22546, -0.48878, -0.421944, -0.0336074, -1.09404, -2.48256}, {-1.52928, 0.0668781, -1.41226, -4.50626, 2.85593, 1.78851, -2.69821, -0.462309, 1.0709, 2.7254, 1.34741, 0.937529, 6.15072, 0.82653, 8.1316, 12.2713, 3.59739, -4.87041, 5.22546, 0.48878, 0.421944, -1.47849, -1.74815, 0.586802, -16.1271, -5.87841, -4.17206, -0.0336074, -1.09404, -2.48256}, {-1.52928, 0.0668781, -1.41226, 1.50209, -0.951977, -0.596169, 8.09463, 1.38693, -3.21271, 2.7254, 1.34741, 0.937529, 0.0336074, 1.09404, 2.48256, -4.52987, 5.55606, 1.79787, 11.3426, 0.221267, 6.07099, -1.47849, -1.74815, 0.586802, -5.22546, -0.48878, -0.421944, -10.9352, -6.48367, -6.23267}, {-1.52928, 0.0668781, -1.41226, 1.50209, -0.951977, -0.596169, -2.69821, -0.462309, 1.0709, -8.1762, -4.04222, -2.81259, 0.0336074, 1.09404, 2.48256, 1.47849, 1.74815, -0.586802, 5.22546, 0.48878, 0.421944, 4.63862, -2.01567, 6.23585, -11.2338, 3.31913, 1.96273, 10.7592, 0.755194, -6.76616}, {1.83443, -2.90588, -4.62915, 0, -2.17235, 0, 1.94285, -0.797826, 0.198956, -1.33137, 2.00155, -1.74201, 0.755828, 10.1773, -1.90731, -2.40149, 3.67134, -0.245923, -9.41706, 2.98018, -2.94906, 7.72698, -11.6775, 7.21395, 1.64567, 0.211121, 2.15324, -0.755828, -1.48788, 1.90731}, {-0.611477, 0.968627, 1.54305, 0, 6.51705, 0, 1.94285, -0.797826, 0.198956, -1.33137, 2.00155, -1.74201, 3.20174, -2.38662, -8.07952, -10.1729, 6.86264, -1.04175, -1.64567, -0.211121, -2.15324, 2.40149, -3.67134, 0.245923, 6.97115, -7.79508, 9.12126, -0.755828, -1.48788, 1.90731}, {-0.611477, 0.968627, 1.54305, 0, -2.17235, 0, -5.82855, 2.39348, -0.596868, -1.33137, 2.00155, -1.74201, 0.755828, 1.48788, -1.90731, -2.40149, 12.3607, -0.245923, 0.800244, -4.08563, -8.32544, 2.40149, -3.67134, 0.245923, 1.64567, 0.211121, 2.15324, 4.56966, -9.49408, 8.87534}, {-0.611477, 0.968627, 1.54305, 0, -2.17235, 0, 1.94285, -0.797826, 0.198956, 3.99411, -6.00465, 5.22602, 0.755828, 1.48788, -1.90731, -2.40149, 3.67134, -0.245923, -1.64567, -0.211121, -2.15324, 4.8474, -7.54585, -5.92628, 1.64567, 8.90052, 2.15324, -8.52722, 1.70342, 1.11149}, {-3.96631, -0.406167, 1.83974, -1.35283, -0.138536, -1.77009, -0.9692, 1.50642, 1.075, 0.999931, -1.50327, 1.30834, 5.44932, 0.558033, 10.0263, 2.87019, -1.6908, 0.859181, 3.44059, -8.05506, -4.87073, -6.86992, 7.70388, -6.09254, 0.436211, 2.02938, 0.570751, -0.0379859, -0.00388992, -2.94596}, {1.3221, 0.135389, -0.613248, 4.0585, 0.415608, 5.31026, -0.9692, 1.50642, 1.075, 0.999931, -1.50327, 1.30834, -5.25042, -0.537666, 5.39896, 6.74699, -7.71647, -3.4408, -0.436211, -2.02938, -0.570751, -2.87019, 1.6908, -0.859181, -3.56351, 8.04247, -4.66261, -0.0379859, -0.00388992, -2.94596}, {1.3221, 0.135389, -0.613248, -1.35283, -0.138536, -1.77009, 2.9076, -4.51925, -3.22499, 0.999931, -1.50327, 1.30834, 0.0379859, 0.00388992, 2.94596, 8.28152, -1.13665, 7.93953, -5.72462, -2.57094, 1.88224, -2.87019, 1.6908, -0.859181, 0.436211, 2.02938, 0.570751, -4.03771, 6.00919, -8.17932}, {1.3221, 0.135389, -0.613248, -1.35283, -0.138536, -1.77009, -0.9692, 1.50642, 1.075, -2.99979, 4.50981, -3.92502, 0.0379859, 0.00388992, 2.94596, 2.87019, -1.6908, 0.859181, -0.436211, -2.02938, -0.570751, -8.1586, 1.14924, 1.59381, 5.84754, 2.58353, 7.6511, 3.83881, -6.02956, -7.24594}, {3.10069, 1.60532, -7.82452, 0.575383, -0.91145, -1.45197, 1.48006, -0.0647255, 1.36681, -1.02187, 1.51128, -2.52301, -1.73519, 5.43384, 4.37871, -2.54066, 1.20662, 0.105263, -6.47211, 1.00034, -10.3806, 6.62816, -7.25175, 9.9868, 0.551894, -0.741434, 4.91335, -0.566342, -1.78804, 1.42915}, {-1.03356, -0.535107, 2.60817, -1.72615, 2.73435, 4.3559, 1.48006, -0.0647255, 1.36681, -1.02187, 1.51128, -2.52301, 4.7006, 3.92847, -11.8619, -8.46088, 1.46552, -5.36196, -0.551894, 0.741434, -4.91335, 2.54066, -1.20662, -0.105263, 4.63939, -6.78657, 15.0054, -0.566342, -1.78804, 1.42915}, {-1.03356, -0.535107, 2.60817, 0.575383, -0.91145, -1.45197, -4.44017, 0.194177, -4.10042, -1.02187, 1.51128, -2.52301, 0.566342, 1.78804, -1.42915, -4.84219, 4.85242, 5.91313, 3.58236, 2.88186, -15.346, 2.54066, -1.20662, -0.105263, 0.551894, -0.741434, 4.91335, 3.52116, -7.83317, 11.5212}, {-1.03356, -0.535107, 2.60817, 0.575383, -0.91145, -1.45197, 1.48006, -0.0647255, 1.36681, 3.06562, -4.53385, 7.56904, 0.566342, 1.78804, -1.42915, -2.54066, 1.20662, 0.105263, -0.551894, 0.741434, -4.91335, 6.67491, 0.933809, -10.538, -1.74964, 2.90437, 10.7212, -6.48656, -1.52914, -4.03807}, {-2.63316, -2.47826, 0.36108, 0.802811, -1.2478, -0.890444, -2.35614, 1.42089, -0.657266, 0.675604, -0.999172, 1.66807, -5.2885, 5.51247, 4.8112, 1.92002, -0.213947, 1.91307, 11.252, -8.46096, 3.59026, -4.62243, 4.21063, -8.58536, -1.82742, 2.77741, -0.961199, 2.07725, -0.52127, -1.24942}, {0.877721, 0.826085, -0.12036, -2.40843, 3.7434, 2.67133, -2.35614, 1.42089, -0.657266, 0.675604, -0.999172, 1.66807, -5.58814, -2.78307, 1.73086, 11.3446, -5.8975, 4.54214, 1.82742, -2.77741, 0.961199, -1.92002, 0.213947, -1.91307, -4.52984, 6.7741, -7.63348, 2.07725, -0.52127, -1.24942}, {0.877721, 0.826085, -0.12036, 0.802811, -1.2478, -0.890444, 7.06841, -4.26266, 1.9718, 0.675604, -0.999172, 1.66807, -2.07725, 0.52127, 1.24942, -1.29123, 4.77726, 5.47485, -1.68346, -6.08175, 1.44264, -1.92002, 0.213947, -1.91307, -1.82742, 2.77741, -0.961199, -0.625163, 3.47542, -7.9217}, {0.877721, 0.826085, -0.12036, 0.802811, -1.2478, -0.890444, -2.35614, 1.42089, -0.657266, -2.02681, 2.99752, -5.00421, -2.07725, 0.52127, 1.24942, 1.92002, -0.213947, 1.91307, 1.82742, -2.77741, 0.961199, -5.4309, -3.09039, -1.43164, -5.03867, 7.76862, 2.60058, 11.5018, -6.20482, 1.37964}, {-0.815557, 4.36562, -0.135176, -1.95424, 0.460185, -0.243585, -0.0205487, 0.870319, -1.11219, 1.70294, 0.124702, 1.31071, 9.89652, -0.610825, 1.21973, 2.44098, -1.64459, 1.67583, -0.228434, -2.75832, 5.76778, -9.25274, 1.14578, -6.91867, 0.310628, -0.722961, -1.31904, -2.07955, -1.22991, -0.245392}, {0.271852, -1.45521, 0.0450587, 5.86273, -1.38055, 0.730756, -0.0205487, 0.870319, -1.11219, 1.70294, 0.124702, 1.31071, 0.99214, 7.05074, 0.0651576, 2.52317, -5.12587, 6.12457, -0.310628, 0.722961, 1.31904, -2.44098, 1.64459, -1.67583, -6.50113, -1.22177, -6.56189, -2.07955, -1.22991, -0.245392}, {0.271852, -1.45521, 0.0450587, -1.95424, 0.460185, -0.243585, 0.0616461, -2.61096, 3.33656, 1.70294, 0.124702, 1.31071, 2.07955, 1.22991, 0.245392, 10.258, -3.48533, 2.65017, -1.39804, 6.54379, 1.13881, -2.44098, 1.64459, -1.67583, 0.310628, -0.722961, -1.31904, -8.89131, -1.72872, -5.48824}, {0.271852, -1.45521, 0.0450587, -1.95424, 0.460185, -0.243585, -0.0205487, 0.870319, -1.11219, -5.10882, -0.374107, -3.93214, 2.07955, 1.22991, 0.245392, 2.44098, -1.64459, 1.67583, -0.310628, 0.722961, 1.31904, -3.52839, 7.46542, -1.85606, 8.1276, -2.5637, -0.344701, -1.99736, -4.71119, 4.20335}, {-2.82343, -2.82223, 1.11598, 0.652804, 0.651093, 1.763, 0.935946, -1.40658, 0.556196, -2.52989, -0.185258, -1.9472, -4.58144, -4.57199, -8.77136, -1.9638, 0.933829, -2.86668, -6.064, 6.20211, -2.45247, 12.0834, -0.192795, 10.6555, 2.32021, -0.575803, 0.227687, 1.97023, 1.96762, 1.71938}, {0.941145, 0.940742, -0.371993, -1.95841, -1.95328, -5.28899, 0.935946, -1.40658, 0.556196, -2.52989, -0.185258, -1.9472, -5.73481, -5.73058, -0.231403, -5.70759, 6.56014, -5.09146, -2.32021, 0.575803, -0.227687, 1.9638, -0.933829, 2.86668, 12.4398, 0.165231, 8.01649, 1.97023, 1.96762, 1.71938}, {0.941145, 0.940742, -0.371993, 0.652804, 0.651093, 1.763, -2.80784, 4.21973, -1.66859, -2.52989, -0.185258, -1.9472, -1.97023, -1.96762, -1.71938, -4.57502, -1.67054, -9.91867, -6.08479, -3.18716, 1.26029, 1.9638, -0.933829, 2.86668, 2.32021, -0.575803, 0.227687, 12.0898, 2.70865, 9.50817}, {0.941145, 0.940742, -0.371993, 0.652804, 0.651093, 1.763, 0.935946, -1.40658, 0.556196, 7.58968, 0.555775, 5.8416, -1.97023, -1.96762, -1.71938, -1.9638, 0.933829, -2.86668, -2.32021, 0.575803, -0.227687, -1.80078, -4.6968, 4.35465, -0.291002, -3.18018, -6.8243, -1.77356, 7.59392, -0.505409}, {4.38876, 6.50951, 0.486449, -0.364196, 1.94951, -0.0603643, 0.336809, -1.04259, -1.05295, 1.49031, 1.26291, 1.27547, 3.71522, -7.52572, 0.5165, 0.0338521, -1.12102, 1.37614, 0.0447138, 8.14114, 5.71377, -5.99508, -3.93064, -6.47801, -1.39195, -3.97078, -1.50195, -2.25844, -0.272335, -0.275043}, {-1.46292, -2.16984, -0.16215, 1.09259, -5.84854, 0.181093, 0.336809, -1.04259, -1.05295, 1.49031, 1.26291, 1.27547, 8.11012, 8.95169, 0.923642, -1.31338, 3.04934, 5.58796, 1.39195, 3.97078, 1.50195, -0.0338521, 1.12102, -1.37614, -7.35318, -9.02244, -6.60383, -2.25844, -0.272335, -0.275043}, {-1.46292, -2.16984, -0.16215, -0.364196, 1.94951, -0.0603643, -1.01043, 3.12777, 3.15886, 1.49031, 1.26291, 1.27547, 2.25844, 0.272335, 0.275043, 1.49064, -8.91908, 1.6176, 7.24363, 12.6501, 2.15055, -0.0338521, 1.12102, -1.37614, -1.39195, -3.97078, -1.50195, -8.21966, -5.32399, -5.37692}, {-1.46292, -2.16984, -0.16215, -0.364196, 1.94951, -0.0603643, 0.336809, -1.04259, -1.05295, -4.47092, -3.78874, -3.82641, 2.25844, 0.272335, 0.275043, 0.0338521, -1.12102, 1.37614, 1.39195, 3.97078, 1.50195, 5.81783, 9.80037, -0.727539, 0.0648337, -11.7688, -1.26049, -3.60567, 3.89803, 3.93678}, {-4.70136, 0, -1.77636e-15, -0.960805, 1.44394, -0.570969, 1.09021, -0.00626368, 2.02293, -1.69653, -1.43767, -1.45196, 3.09377, -7.56055, 2.98963, -0.159958, -1.77706, -1.79473, -7.6455, 0.0327971, -10.5922, 6.94608, 7.52775, 7.60258, 3.28465, -0.00774234, 2.50048, 0.749448, 1.7848, -0.705756}, {1.56712, -2.22045e-16, 1.11022e-15, 2.88242, -4.33181, 1.71291, 1.09021, -0.00626368, 2.02293, -1.69653, -1.43767, -1.45196, -7.01793, -1.7848, 0.705756, -4.52081, -1.75201, -9.88646, -3.28465, 0.00774234, -2.50048, 0.159958, 1.77706, 1.79473, 10.0708, 5.74295, 8.30834, 0.749448, 1.7848, -0.705756}, {1.56712, -8.88178e-16, -8.88178e-16, -0.960805, 1.44394, -0.570969, -3.27064, 0.018791, -6.0688, -1.69653, -1.43767, -1.45196, -0.749448, -1.7848, 0.705756, 3.68326, -7.5528, 0.489149, -9.55313, 0.00774234, -2.50048, 0.159958, 1.77706, 1.79473, 3.28465, -0.00774234, 2.50048, 7.53557, 7.53549, 5.1021}, {1.56712, 0, 0, -0.960805, 1.44394, -0.570969, 1.09021, -0.00626368, 2.02293, 5.08959, 4.31302, 4.35589, -0.749448, -1.7848, 0.705756, -0.159958, -1.77706, -1.79473, -3.28465, 0.00774234, -2.50048, -6.10853, 1.77706, 1.79473, 7.12787, -5.78349, 4.78436, -3.61141, 1.80986, -8.79749}}
+ + values : {{-3.9353, -4.55601, 0.673815, 0, -1.32529, -0.181463, -1.31177, -0.0269554, -1.36103, 0, -0.166427, 1.7671, -1.62143, 5.06211, 1.22778, 1.62143, 1.67146, 1.90663, 5.24706, -1.73604, 7.40408, -1.62143, -1.00576, -8.97503, 0, 1.84386, -1.95995, 1.62143, 0.239033, -0.501928}, {1.31177, 1.51867, -0.224605, 4.12325e-16, 3.97586, 0.54439, -1.31177, -0.0269554, -1.36103, 2.74179e-16, -0.166427, 1.7671, -6.86849, -6.31371, 1.40035, 6.86849, 1.77928, 7.35076, -1.56634e-16, -1.84386, 1.95995, -1.62143, -1.67146, -1.90663, -1.26573e-15, 2.50957, -9.02835, 1.62143, 0.239033, -0.501928}, {1.31177, 1.51867, -0.224605, 0, -1.32529, -0.181463, 3.9353, 0.0808662, 4.08309, 0, -0.166427, 1.7671, -1.62143, -0.239033, 0.501928, 1.62143, 6.97261, 2.63248, -5.24706, -7.91853, 2.85837, -1.62143, -1.67146, -1.90663, 0, 1.84386, -1.95995, 1.62143, 0.90474, -7.57033}, {1.31177, 1.51867, -0.224605, 0, -1.32529, -0.181463, -1.31177, -0.0269554, -1.36103, 0, 0.49928, -5.3013, -1.62143, -0.239033, 0.501928, 1.62143, 1.67146, 1.90663, -3.2565e-16, -1.84386, 1.95995, -6.86849, -7.74614, -1.00821, 0, 7.14501, -1.2341, 6.86849, 0.346855, 4.9422}, {4.62937, -1.83228, -3.04567, 1.74185, 1.32981, 2.03815, 0, 0, -2.39759, -0.198723, -1.94057, -0.655786, -7.21302, -7.71791, -11.9268, -2.15304, -1.64373, 0.444288, 1.90741, -0.754941, 11.2991, 2.94793, 9.40601, 2.17885, -1.90741, 0.754941, -1.7087, 0.245635, 2.39867, 3.77418}, {-1.54312, 0.61076, 1.01522, -5.22554, -3.98943, -6.11446, 0, 0, -2.39759, -0.198723, -1.94057, -0.655786, 5.92686, -4.84171, -7.83507, -2.15304, -1.64373, 10.0346, 1.90741, -0.754941, 1.7087, 2.15304, 1.64373, -0.444288, -1.11252, 8.51722, 0.914444, 0.245635, 2.39867, 3.77418}, {-1.54312, 0.61076, 1.01522, 1.74185, 1.32981, 2.03815, 0, 0, 7.19277, -0.198723, -1.94057, -0.655786, -0.245635, -2.39867, -3.77418, -9.12042, -6.96297, -7.70832, 8.0799, -3.19798, -2.35219, 2.15304, 1.64373, -0.444288, -1.90741, 0.754941, -1.7087, 1.04052, 10.1609, 6.39732}, {-1.54312, 0.61076, 1.01522, 1.74185, 1.32981, 2.03815, 0, 0, -2.39759, 0.596168, 5.82171, 1.96736, -0.245635, -2.39867, -3.77418, -2.15304, -1.64373, 0.444288, 1.90741, -0.754941, 1.7087, 8.32553, -0.799305, -4.50518, -8.87479, -4.5643, -9.86131, 0.245635, 2.39867, 13.3645}, {0.513102, -3.87755, -4.44089e-16, 0.57474, -0.851464, -1.31177, -1.67772, -0.393466, -9.15774e-16, 1.27402, -0.0475867, 1.31177, -2.79797, 2.86069, 6.86849, 1.36336, 1.53882, 1.62143, 8.99608, 0.462577, 4.44089e-15, -6.45943, -1.34847, -6.86849, -2.28519, 1.11129, -8.88178e-16, 0.499008, 0.545171, -1.62143}, {-0.171034, 1.29252, -2.22045e-16, -1.72422, 2.55439, 3.9353, -1.67772, -0.393466, -8.14021e-16, 1.27402, -0.0475867, 1.31177, 0.185129, -5.71524, 1.62143, 8.07425, 3.11268, 1.62143, 2.28519, -1.11129, 1.33227e-15, -1.36336, -1.53882, -1.62143, -7.38126, 1.30164, -5.24706, 0.499008, 0.545171, -1.62143}, {-0.171034, 1.29252, 4.44089e-16, 0.57474, -0.851464, -1.31177, 5.03317, 1.1804, 1.22103e-15, 1.27402, -0.0475867, 1.31177, -0.499008, -0.545171, 1.62143, -0.935598, 4.94468, 6.86849, 2.96933, -6.28136, -1.77636e-15, -1.36336, -1.53882, -1.62143, -2.28519, 1.11129, 0, -4.59706, 0.735518, -6.86849}, {-0.171034, 1.29252, 0, 0.57474, -0.851464, -1.31177, -1.67772, -0.393466, 5.5964e-16, -3.82205, 0.14276, -3.9353, -0.499008, -0.545171, 1.62143, 1.36336, 1.53882, 1.62143, 2.28519, -1.11129, -8.88178e-16, -0.679225, -6.70889, -1.62143, -4.58415, 4.51715, 5.24706, 7.2099, 2.11904, -1.62143}, {3.99239, 5.22128, -5.22376, -4.19346e-16, -1.90927e-15, 2.34313, -0.609885, 1.54187, -1.54513, 1.94068, 0.198561, -2.53925, 1.64495, 2.15129, -14.4211, 0.75386, -1.90585, -0.986372, 4.83836, -5.92203, 5.93812, -8.51658, 1.11161, 11.1434, -2.39881, -0.245434, 0.242418, -1.64495, -2.15129, 5.04857}, {-1.3308, -1.74043, 1.74125, -4.45091e-15, 2.34416e-15, -7.02938, -0.609885, 1.54187, -1.54513, 1.94068, 0.198561, -2.53925, 6.96814, 9.11299, -12.0136, 3.1934, -8.07331, 5.19416, 2.39881, 0.245434, -0.242418, -0.75386, 1.90585, 0.986372, -10.1615, -1.03968, 10.3994, -1.64495, -2.15129, 5.04857}, {-1.3308, -1.74043, 1.74125, 0, 0, 2.34313, 1.82966, -4.6256, 4.6354, 1.94068, 0.198561, -2.53925, 1.64495, 2.15129, -5.04857, 0.75386, -1.90585, -10.3589, 7.722, 7.20714, -7.20743, -0.75386, 1.90585, 0.986372, -2.39881, -0.245434, 0.242418, -9.40768, -2.94553, 15.2056}, {-1.3308, -1.74043, 1.74125, -1.12887e-15, -1.155e-16, 2.34313, -0.609885, 1.54187, -1.54513, -5.82204, -0.595682, 7.61774, 1.64495, 2.15129, -5.04857, 0.75386, -1.90585, -0.986372, 2.39881, 0.245434, -0.242418, 4.56932, 8.86756, -5.97864, -2.39881, -0.245434, -9.13008, 0.794587, -8.31875, 11.2291}, {5.36656, -5.36656, -5.3681, 1.78885, 1.36261, 1.3621, 0, 0, -3.15147, 0, -3.15147, 0, -7.15542, -9.34589, -9.34384, -2.21115, -1.68428, 2.21178, 2.21115, -2.21115, 14.2895, 2.21115, 14.2902, -2.21178, -2.21115, 2.21115, -1.68365, 0, 3.89543, 3.89543}, {-1.78885, 1.78885, 1.78937, -5.36656, -4.08784, -4.08631, 0, 0, -3.15147, 0, -3.15147, 0, 7.15542, -11.0508, -11.0529, -2.21115, -1.68428, 14.8177, 2.21115, -2.21115, 1.68365, 2.21115, 1.68428, -2.21178, -2.21115, 14.817, -1.68365, 0, 3.89543, 3.89543}, {-1.78885, 1.78885, 1.78937, 1.78885, 1.36261, 1.3621, 0, 0, 9.45441, 0, -3.15147, 0, 4.44089e-16, -3.89543, -3.89543, -9.36656, -7.13474, -3.23663, 9.36656, -9.36656, -5.47381, 2.21115, 1.68428, -2.21178, -2.21115, 2.21115, -1.68365, 0, 16.5013, 3.89543}, {-1.78885, 1.78885, 1.78937, 1.78885, 1.36261, 1.3621, 0, 0, -3.15147, 0, 9.45441, 0, 4.44089e-16, -3.89543, -3.89543, -2.21115, -1.68428, 2.21178, 2.21115, -2.21115, 1.68365, 9.36656, -5.47113, -9.36924, -9.36656, -3.23931, -7.13206, 0, 3.89543, 16.5013}, {-4.72653, -4.72788, -4.72653, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, -1.57551, -1.57596, 1.57596, -10.1969, 6.30148, 6.30439, -1.73195e-14, 1.73195e-14, 3.89543, 6.30204, -10.1975, 6.30204, 6.30204, 6.30384, -10.1993, 2.1394e-12, 3.89543, -2.14051e-12, 3.89487, 0.000556765, -0.000556765}, {1.57551, 1.57596, 1.57551, -4.72653, 4.72653, 4.72788, -1.57551, 1.57551, -1.57551, -1.57551, -1.57596, 1.57596, -10.1969, -6.30439, -6.30148, 6.30204, -6.30204, 10.1975, -2.13851e-12, -3.89543, 2.13829e-12, 1.42638e-14, -1.48241e-14, -3.89543, 6.30204, 10.1993, -6.30384, 3.89487, 0.000556765, -0.000556765}, {1.57551, 1.57596, 1.57551, 1.57551, -1.57551, -1.57596, 4.72653, -4.72653, 4.72653, -1.57551, -1.57596, 1.57596, -3.89487, -0.000556765, 0.000556765, -6.30204, 6.30204, 10.1993, -6.30204, -10.1993, -6.30204, 1.62622e-14, -1.70446e-14, -3.89543, 2.13984e-12, 3.89543, -2.14007e-12, 10.1969, 6.30439, -6.30439}, {1.57551, 1.57596, 1.57551, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, 4.72653, 4.72788, -4.72788, -3.89487, -0.000556765, 0.000556765, -1.73195e-14, 1.70974e-14, 3.89543, -2.14206e-12, -3.89543, 2.14162e-12, -6.30204, -6.30384, -10.1975, -6.30204, 10.1975, 6.30384, 10.1969, -6.30148, 6.30148}, {3.23101, 1.27881, 3.23101, -1.12016, -2.46258, 1.22297, 0.799503, 2.33566, 0.799503, 1.39766, 0.553185, -0.945467, 7.19648, 13.4211, -5.07228, 0.396353, 0.156874, -2.49991, -2.85501, -11.7028, -2.85501, -5.98699, -2.36962, 6.28178, -0.343007, 2.36014, -0.343007, -2.71584, -3.57081, 0.180421}, {-1.077, -0.426271, -1.077, 3.36048, 7.38773, -3.6689, 0.799503, 2.33566, 0.799503, 1.39766, 0.553185, -0.945467, 7.02385, 5.2759, 4.12759, -2.80166, -9.18577, -5.69792, 0.343007, -2.36014, 0.343007, -0.396353, -0.156874, 2.49991, -5.93364, 0.147394, 3.43886, -2.71584, -3.57081, 0.180421}, {-1.077, -0.426271, -1.077, -1.12016, -2.46258, 1.22297, -2.39851, -7.00698, -2.39851, 1.39766, 0.553185, -0.945467, 2.71584, 3.57081, -0.180421, 4.87699, 10.0072, -7.39177, 4.65101, -0.65505, 4.65101, -0.396353, -0.156874, 2.49991, -0.343007, 2.36014, -0.343007, -8.30647, -5.78355, 3.96229}, {-1.077, -0.426271, -1.077, -1.12016, -2.46258, 1.22297, 0.799503, 2.33566, 0.799503, -4.19298, -1.65956, 2.8364, 2.71584, 3.57081, -0.180421, 0.396353, 0.156874, -2.49991, 0.343007, -2.36014, 0.343007, 3.91165, 1.54821, 6.80792, 4.13763, 12.2104, -5.23487, -5.91385, -12.9135, -3.01759}, {-3.9353, 2.63698, 1.65871, 7.60332e-17, 1.28613, 0.176102, -3.18404e-16, -0.456132, 1.72743, -1.31177, 0.0489967, -1.35063, -1.62143, -5.64776, -0.238656, 2.99587e-16, -1.02593, -2.3529, -1.62143, 3.47483, -8.36153, 5.24706, 0.829946, 7.75543, 1.62143, -1.65031, 1.4518, 1.62143, 0.503247, -0.465751}, {1.31177, -0.878994, -0.552902, 8.56342e-16, -3.85839, -0.528305, 3.92674e-16, -0.456132, 1.72743, -1.31177, 0.0489967, -1.35063, -6.86849, 3.01273, 2.67736, -1.70324e-15, 0.798596, -9.26263, -1.62143, 1.65031, -1.4518, -1.93111e-16, 1.02593, 2.3529, 6.86849, -1.84629, 6.85433, 1.62143, 0.503247, -0.465751}, {1.31177, -0.878994, -0.552902, -5.33523e-16, 1.28613, 0.176102, 2.92961e-15, 1.3684, -5.1823, -1.31177, 0.0489967, -1.35063, -1.62143, -0.503247, 0.465751, 4.00063e-15, -6.17045, -3.0573, -6.86849, 5.16628, 0.75981, -2.19219e-15, 1.02593, 2.3529, 1.62143, -1.65031, 1.4518, 6.86849, 0.30726, 4.93678}, {1.31177, -0.878994, -0.552902, 7.60332e-17, 1.28613, 0.176102, -3.18404e-16, -0.456132, 1.72743, 3.9353, -0.14699, 4.0519, -1.62143, -0.503247, 0.465751, 2.99587e-16, -1.02593, -2.3529, -1.62143, 1.65031, -1.4518, -5.24706, 4.54191, 4.56451, 1.62143, -6.79482, 0.747392, 1.62143, 2.32778, -7.37548}, {0.56235, 5.36656, -5.36656, -1.24953, 3.64699, -0.373467, -0.986118, -1.85814, -1.41539, 2.4231, 0, 0, 6.77433, -16.8847, -0.255645, 2.76341, -2.21115, 2.21115, 5.39508, 11.9405, 5.19992, -12.4558, 2.21115, -2.21115, -1.45061, -4.50793, 0.461631, -1.77621, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, 3.74859, -10.941, 1.1204, -0.986118, -1.85814, -1.41539, 2.4231, 1.11775e-15, 8.51416e-16, 2.52601, 4.85864, -8.90493, 6.70789, 5.2214, 7.87269, 1.45061, 4.50793, -0.461631, -2.76341, 2.21115, -2.21115, -11.143, -4.50793, 0.461631, -1.77621, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, -1.24953, 3.64699, -0.373467, 2.95835, 5.57441, 4.24616, 2.4231, 0, 0, 1.77621, -2.29678, -1.74951, 7.76154, -16.7991, 3.70501, 2.20041, 11.6633, -7.61705, -2.76341, 2.21115, -2.21115, -1.45061, -4.50793, 0.461631, -11.4686, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, -1.24953, 3.64699, -0.373467, -0.986118, -1.85814, -1.41539, -7.2693, 0, 0, 1.77621, -2.29678, -1.74951, 2.76341, -2.21115, 2.21115, 1.45061, 4.50793, -0.461631, -2.01361, 9.36656, -9.36656, 3.54752, -19.0959, 1.9555, 2.16826, 9.72932, 7.41106}, {4.72585, 4.7272, 4.7272, -1.63629, -1.63676, 1.63676, -1.57573, 1.57528, 1.57528, 4.78731, 1.63721, -1.63631, 10.5149, 10.5179, -6.62248, 3.97028, 0.0759901, -3.97031, 10.1978, -6.30058, -6.30058, -23.1195, -6.62484, 10.5155, -3.89487, -0.000556685, -0.000556685, -3.96973, -3.97086, 0.0754336}, {-1.57528, -1.57573, -1.57573, 4.90888, 4.91028, -4.91028, -1.57573, 1.57528, 1.57528, 4.78731, 1.63721, -1.63631, 10.2709, 10.2738, 6.2275, 10.2732, -6.22515, -10.2714, 3.89487, 0.000556685, 0.000556685, -3.97028, -0.0759901, 3.97031, -23.0441, -6.5494, 6.54469, -3.96973, -3.97086, 0.0754336}, {-1.57528, -1.57573, -1.57573, -1.63629, -1.63676, 1.63676, 4.7272, -4.72585, -4.72585, 4.78731, 1.63721, -1.63631, 3.96973, 3.97086, -0.0754336, 10.5155, 6.62303, -10.5174, 10.196, 6.30349, 6.30349, -3.97028, -0.0759901, 3.97031, -3.89487, -0.000556685, -0.000556685, -23.119, -10.5197, 6.62068}, {-1.57528, -1.57573, -1.57573, -1.63629, -1.63676, 1.63676, -1.57573, 1.57528, 1.57528, -14.3619, -4.91163, 4.90893, 3.96973, 3.97086, -0.0754336, 3.97028, 0.0759901, -3.97031, 3.89487, 0.000556685, 0.000556685, 2.33085, 6.22695, 10.2732, 2.6503, 6.54649, -6.5476, 2.33321, -10.272, -6.2257}, {-2.40635, 2.40855, -2.40993, -1.57388, -1.57525, -1.57621, 3.20871, 3.21151, -0.0600473, -2.43695, -0.833412, 0.832954, 7.24946, 9.24051, 7.26022, -2.02076, -2.02253, 2.02253, -17.7925, -15.8233, -0.678532, 11.7686, 5.35618, -5.35435, 4.95766, 2.97727, 0.918721, -0.953948, -2.9395, -0.955365}, {0.802117, -0.80285, 0.803308, 4.72163, 4.72576, 4.72864, 3.20871, 3.21151, -0.0600473, -2.43695, -0.833412, 0.832954, -2.25452, 6.1509, -2.25787, -14.8556, -14.8686, 2.26272, -4.95766, -2.97727, -0.918721, 2.02076, 2.02253, -2.02253, 14.7055, 6.31092, -2.41309, -0.953948, -2.9395, -0.955365}, {0.802117, -0.80285, 0.803308, -1.57388, -1.57525, -1.57621, -9.62613, -9.63454, 0.180142, -2.43695, -0.833412, 0.832954, 0.953948, 2.9395, 0.955365, 4.27475, 4.27848, 8.32739, -8.16613, 0.234124, -4.13196, 2.02076, 2.02253, -2.02253, 4.95766, 2.97727, 0.918721, 8.79385, 0.394151, -4.28718}, {0.802117, -0.80285, 0.803308, -1.57388, -1.57525, -1.57621, 3.20871, 3.21151, -0.0600473, 7.31085, 2.50024, -2.49886, 0.953948, 2.9395, 0.955365, -2.02076, -2.02253, 2.02253, -4.95766, -2.97727, -0.918721, -1.18771, 5.23393, -5.23576, 11.2532, 9.27829, 7.22358, -13.7888, -15.7856, -0.715176}, {5.36291, -5.36781, 5.37088, 0, -3.15057, 0, -1.85687, -1.41402, 1.41389, 3.64451, 2.77532, 0.376399, 2.20964, 14.2849, 2.21292, 2.29522, 5.64214, -1.74767, 11.9323, 5.19225, -5.19032, -16.8733, -16.7434, 0.242074, -4.50486, 0.463834, -0.465254, -2.20964, -1.68266, -2.21292}, {-1.78764, 1.78927, -1.79029, 0, 9.4517, 0, -1.85687, -1.41402, 1.41389, 3.64451, 2.77532, 0.376399, 9.36019, -5.47442, 9.37409, 9.72271, 11.2982, -7.40324, 4.50486, -0.463834, 0.465254, -2.29522, -5.64214, 1.74767, -19.0829, -10.6374, -1.97085, -2.20964, -1.68266, -2.21292}, {-1.78764, 1.78927, -1.79029, 0, -3.15057, 0, 5.57061, 4.24206, -4.24168, 3.64451, 2.77532, 0.376399, 2.20964, 1.68266, 2.21292, 2.29522, 18.2444, -1.74767, 11.6554, -7.62091, 7.62642, -2.29522, -5.64214, 1.74767, -4.50486, 0.463834, -0.465254, -16.7877, -12.7839, -3.71852}, {-1.78764, 1.78927, -1.79029, 0, -3.15057, 0, -1.85687, -1.41402, 1.41389, -10.9335, -8.32596, -1.1292, 2.20964, 1.68266, 2.21292, 2.29522, 5.64214, -1.74767, 4.50486, -0.463834, 0.465254, 4.85533, -12.7992, 8.90884, -4.50486, 13.0661, -0.465254, 5.21784, 3.97342, -7.8685}, {-3.12618, -1.69082, 4.8169, -0.776768, 0.776768, 1.71093, 1.29482, -1.29482, 0.513906, -1.56011, -0.0455553, -0.619199, 2.77915, -4.76387, -6.97386, -0.640348, 0.640348, -2.75005, -8.06782, 6.08311, -0.706171, 6.8808, -0.458127, 5.22684, 2.88854, -0.903828, -1.34945, 0.32792, 1.6568, 0.130149}, {1.04206, 0.563608, -1.60563, 2.3303, -2.3303, -5.13278, 1.29482, -1.29482, 0.513906, -1.56011, -0.0455553, -0.619199, -4.49616, -3.91123, 6.29239, -5.81963, 5.81963, -4.80567, -2.88854, 0.903828, 1.34945, 0.640348, -0.640348, 2.75005, 9.12899, -0.721607, 1.12734, 0.32792, 1.6568, 0.130149}, {1.04206, 0.563608, -1.60563, -0.776768, 0.776768, 1.71093, -3.88446, 3.88446, -1.54172, -1.56011, -0.0455553, -0.619199, -0.32792, -1.6568, -0.130149, 2.46672, -2.46672, -9.59376, -7.05678, -1.3506, 7.77199, 0.640348, -0.640348, 2.75005, 2.88854, -0.903828, -1.34945, 6.56837, 1.83902, 2.60694}, {1.04206, 0.563608, -1.60563, -0.776768, 0.776768, 1.71093, 1.29482, -1.29482, 0.513906, 4.68034, 0.136666, 1.8576, -0.32792, -1.6568, -0.130149, -0.640348, 0.640348, -2.75005, -2.88854, 0.903828, 1.34945, -3.52789, -2.89478, 9.17259, 5.99561, -4.0109, -8.19316, -4.85136, 6.83608, -1.92547}, {0, 4.18682, -1.69558, 0, 0.106442, -1.13019, 1.31177, 1.47434, 0.246037, -1.31177, -0.185178, 0.318964, 0, 1.16773, 5.21915, -1.62143, -1.95396, 1.09288, -6.86849, -5.9947, -1.98688, 6.86849, 2.69467, -2.36873, 1.62143, 0.0973232, 1.00273, 0, -1.5935, -0.69838}, {6.66134e-16, -1.39561, 0.565192, -4.14281e-16, -0.319327, 3.39058, 1.31177, 1.47434, 0.246037, -1.31177, -0.185178, 0.318964, -3.55271e-15, 7.17592, -1.56239, -6.86849, -7.85133, 0.108727, -1.62143, -0.0973232, -1.00273, 1.62143, 1.95396, -1.09288, 6.86849, 0.838037, -0.273122, 1.11022e-15, -1.5935, -0.69838}, {4.44089e-16, -1.39561, 0.565192, -3.97019e-16, 0.106442, -1.13019, -3.9353, -4.42303, -0.738112, -1.31177, -0.185178, 0.318964, -2.22045e-16, 1.5935, 0.69838, -1.62143, -2.37973, 5.61365, -1.62143, 5.48511, -3.2635, 1.62143, 1.95396, -1.09288, 1.62143, 0.0973232, 1.00273, 5.24706, -0.852781, -1.97424}, {-2.22045e-16, -1.39561, 0.565192, 3.45234e-17, 0.106442, -1.13019, 1.31177, 1.47434, 0.246037, 3.9353, 0.555535, -0.956892, 2.22045e-16, 1.5935, 0.69838, -1.62143, -1.95396, 1.09288, -1.62143, -0.0973232, -1.00273, 1.62143, 7.53639, -3.35364, 1.62143, -0.328446, 5.52351, -5.24706, -7.49087, -1.68253}, {3.02999, -1.83569, -4.62902, -2.0783, 1.32959, -1.74182, 0.665193, -1.94149, 0.198817, 2.4231, 0, 0, 12.1305, -7.71818, 7.21305, 1.74669, 0.756347, 1.90726, -2.23457, 9.40942, -2.94828, -11.4391, -0.756347, -1.90726, -0.4262, -1.64347, 2.15301, -3.81734, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, 6.23489, -3.98877, 5.22547, 0.665193, -1.94149, 0.198817, 2.4231, 1.16789e-15, -1.19597e-16, 7.85732, -4.8474, -5.92628, -0.91408, 8.5223, 1.11199, 0.4262, 1.64347, -2.15301, -1.74669, -0.756347, -1.90726, -10.1186, -1.64347, 2.15301, -3.81734, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, -2.0783, 1.32959, -1.74182, -1.99558, 5.82447, -0.59645, 2.4231, 0, 0, 3.81734, -2.39981, 0.245751, 10.0599, -4.56202, 8.87456, 4.46618, -0.804126, -8.32504, -1.74669, -0.756347, -1.90726, -0.4262, -1.64347, 2.15301, -13.5097, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, -2.0783, 1.32959, -1.74182, 0.665193, -1.94149, 0.198817, -7.2693, 0, 0, 3.81734, -2.39981, 0.245751, 1.74669, 0.756347, 1.90726, 0.4262, 1.64347, -2.15301, 2.29329, -3.20394, -8.07929, 7.88699, -6.96183, 9.12031, -6.47811, 10.1658, -1.04102}, {-1.1204, -10.941, -3.69733, -1.78885, -1.78885, 0.204309, 1.41539, -1.85814, 0.960835, 0, 0, -2.39759, 8.90493, 4.85864, -2.59316, 0.461631, 4.50793, -1.4402, -7.87269, 5.2214, -6.55438, -0.461631, -4.50793, 11.0306, 2.21115, 2.21115, 2.71104, -1.74951, 2.29678, 1.77593}, {0.373467, 3.64699, 1.23244, 5.36656, 5.36656, -0.612928, 1.41539, -1.85814, 0.960835, 0, 0, -2.39759, 0.255645, -16.8847, -6.70571, -5.19992, 11.9405, -5.28354, -2.21115, -2.21115, -2.71104, -0.461631, -4.50793, 1.4402, 2.21115, 2.21115, 12.3014, -1.74951, 2.29678, 1.77593}, {0.373467, 3.64699, 1.23244, -1.78885, -1.78885, 0.204309, -4.24616, 5.57441, -2.88251, 0, 0, -2.39759, 1.74951, -2.29678, -1.77593, 7.61705, 11.6633, -2.25744, -3.70501, -16.7991, -7.64082, -0.461631, -4.50793, 1.4402, 2.21115, 2.21115, 2.71104, -1.74951, 2.29678, 11.3663}, {0.373467, 3.64699, 1.23244, -1.78885, -1.78885, 0.204309, 1.41539, -1.85814, 0.960835, 0, 0, 7.19277, 1.74951, -2.29678, -1.77593, 0.461631, 4.50793, -1.4402, -2.21115, -2.21115, -2.71104, -1.9555, -19.0959, -3.48958, 9.36656, 9.36656, 1.89381, -7.41106, 9.72932, -2.06741}, {3.67635, 0.128375, 3.75827, 1.3465, -0.311871, 0.167791, -0.0738998, -1.11087, 1.10252, -0.0471455, 1.46553, -0.0175582, -5.53561, 1.68587, 0.669927, -1.57302, 1.7586, -1.5702, 1.90169, 5.86948, -4.2244, 1.7616, -7.62073, 1.64043, -1.60609, -1.426, -0.185698, 0.14962, -0.438387, -1.34109}, {-1.22545, -0.0427917, -1.25276, -4.03949, 0.935613, -0.503374, -0.0738998, -1.11087, 1.10252, -0.0471455, 1.46553, -0.0175582, 4.75218, 0.609554, 6.35212, -1.27742, 6.20208, -5.98029, 1.60609, 1.426, 0.185698, 1.57302, -1.7586, 1.5702, -1.4175, -7.28813, -0.115465, 0.14962, -0.438387, -1.34109}, {-1.22545, -0.0427917, -1.25276, 1.3465, -0.311871, 0.167791, 0.221699, 3.33261, -3.30757, -0.0471455, 1.46553, -0.0175582, -0.14962, 0.438387, 1.34109, -6.959, 3.00609, -2.24136, 6.50789, 1.59717, 5.19673, 1.57302, -1.7586, 1.5702, -1.60609, -1.426, -0.185698, 0.338202, -6.30052, -1.27086}, {-1.22545, -0.0427917, -1.25276, 1.3465, -0.311871, 0.167791, -0.0738998, -1.11087, 1.10252, 0.141437, -4.3966, 0.0526746, -0.14962, 0.438387, 1.34109, -1.57302, 1.7586, -1.5702, 1.60609, 1.426, 0.185698, 6.47482, -1.58744, 6.58122, -6.99207, -0.17852, -0.856863, 0.445219, 4.00509, -5.75119}, {3.98391, -5.22497, -0.407969, -0.61239, -1.54296, -1.54296, -3.86726e-16, 3.96024e-17, 1.60567, 1.94036, -0.198701, -0.198701, 4.84797, 5.92622, 7.91093, 0.756955, 1.9072, -0.0775154, 1.64146, -2.15281, -8.57548, -8.51839, -1.1124, 0.87232, -1.64146, 2.15281, 2.15281, -2.39842, 0.245608, -1.73911}, {-1.32797, 1.74166, 0.13599, 1.83717, 4.62887, 4.62887, -1.16018e-15, 1.18807e-16, 1.60567, 1.94036, -0.198701, -0.198701, 7.71029, -7.21224, 1.19515, 0.756955, 1.9072, -6.50019, 1.64146, -2.15281, -2.15281, -0.756955, -1.9072, 0.0775154, -9.4029, 2.94761, 2.94761, -2.39842, 0.245608, -1.73911}, {-1.32797, 1.74166, 0.13599, -0.61239, -1.54296, -1.54296, 0, 0, -4.817, 1.94036, -0.198701, -0.198701, 2.39842, -0.245608, 1.73911, 3.20651, 8.07903, 6.09431, 6.95334, -9.11944, -2.69677, -0.756955, -1.9072, 0.0775154, -1.64146, 2.15281, 2.15281, -10.1599, 1.04041, -0.944303}, {-1.32797, 1.74166, 0.13599, -0.61239, -1.54296, -1.54296, 1.16018e-15, -1.18807e-16, 1.60567, -5.82108, 0.596103, 0.596103, 2.39842, -0.245608, 1.73911, 0.756955, 1.9072, -0.0775154, 1.64146, -2.15281, -2.15281, 4.55492, -8.87383, -0.466443, 0.808098, 8.32463, 8.32463, -2.39842, 0.245608, -8.16178}, {4.24495, 4.24616, 5.57441, 2.77721, -0.373467, 3.64699, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -12.7926, 3.70501, -16.7991, 0.461499, 0.461631, -4.50793, 18.2456, 1.74951, 2.29678, -7.61487, -7.61705, 11.6633, -5.64333, -1.74951, -2.29678, 1.6838, -2.21115, 2.21115}, {-1.41498, -1.41539, -1.85814, -8.33162, 1.1204, -10.941, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, 3.97613, 7.87269, 5.2214, 13.0638, 0.461631, -4.50793, 5.64333, 1.74951, 2.29678, -0.461499, -0.461631, 4.50793, -12.7967, -8.90493, 4.85864, 1.6838, -2.21115, 2.21115}, {-1.41498, -1.41539, -1.85814, 2.77721, -0.373467, 3.64699, 9.4517, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 2.21115, -2.21115, -10.6473, 1.9555, -19.0959, 11.3033, 7.41106, 9.72932, -0.461499, -0.461631, 4.50793, -5.64333, -1.74951, -2.29678, -5.46957, -9.36656, 9.36656}, {-1.41498, -1.41539, -1.85814, 2.77721, -0.373467, 3.64699, -3.15057, 0, 0, -5.36503, -5.36656, 5.36656, -1.6838, 2.21115, -2.21115, 0.461499, 0.461631, -4.50793, 5.64333, 1.74951, 2.29678, 5.19843, 5.19992, 11.9405, -16.7522, -0.255645, -16.8847, 14.2861, -2.21115, 2.21115}, {-5.69487, -2.66454e-15, -2.22045e-16, -0.76309, -0.00636856, -2.01559, -0.460311, 1.45577, 1.44144, -0.67489, -1.4494, 0.574147, 1.64917, 0.0333462, 10.5538, 1.51221, -1.79156, 0.709685, 0.063805, -7.62252, -7.54749, 1.18735, 7.58918, -3.00627, 1.77744, 1.79943, 1.78172, 1.40319, -0.00787198, -2.49141}, {1.89829, -1.55431e-15, 3.33067e-16, 2.28927, 0.0191057, 6.04677, -0.460311, 1.45577, 1.44144, -0.67489, -1.4494, 0.574147, -8.99635, 0.00787198, 2.49141, 3.35345, -7.61465, -5.05609, -1.77744, -1.79943, -1.78172, -1.51221, 1.79156, -0.709685, 4.477, 7.59705, -0.514866, 1.40319, -0.00787198, -2.49141}, {1.89829, -1.9984e-15, -1.22125e-15, -0.76309, -0.00636856, -2.01559, 1.38093, -4.36732, -4.32433, -0.67489, -1.4494, 0.574147, -1.40319, 0.00787198, 2.49141, 4.56457, -1.76609, 8.77205, -9.3706, -1.79943, -1.78172, -1.51221, 1.79156, -0.709685, 1.77744, 1.79943, 1.78172, 4.10275, 5.78974, -4.78799}, {1.89829, 1.33227e-15, -5.55112e-16, -0.76309, -0.00636856, -2.01559, -0.460311, 1.45577, 1.44144, 2.02467, 4.34821, -1.72244, -1.40319, 0.00787198, 2.49141, 1.51221, -1.79156, 0.709685, -1.77744, -1.79943, -1.78172, -9.10537, 1.79156, -0.709685, 4.8298, 1.82491, 9.84408, 3.24443, -5.83096, -8.25718}, {-1.1204, -4.37783, -10.941, 1.41539, 0.69601, -1.85814, -1.78885, 0.0170635, -1.78885, 0, -2.17235, 0, -7.87269, -5.44812, 5.2214, 0.461631, -0.881407, 4.50793, 8.90493, -1.89311, 4.85864, -0.461631, 9.57081, -4.50793, -1.74951, 1.82486, 2.29678, 2.21115, 2.66408, 2.21115}, {0.373467, 1.45928, 3.64699, -4.24616, -2.08803, 5.57441, -1.78885, 0.0170635, -1.78885, 0, -2.17235, 0, -3.70501, -8.50119, -16.7991, 7.61705, -0.949661, 11.6633, 1.74951, -1.82486, -2.29678, -0.461631, 0.881407, -4.50793, -1.74951, 10.5143, 2.29678, 2.21115, 2.66408, 2.21115}, {0.373467, 1.45928, 3.64699, 1.41539, 0.69601, -1.85814, 5.36656, -0.0511904, 5.36656, 0, -2.17235, 0, -2.21115, -2.66408, -2.21115, -5.19992, -3.66545, 11.9405, 0.255645, -7.66197, -16.8847, -0.461631, 0.881407, -4.50793, -1.74951, 1.82486, 2.29678, 2.21115, 11.3535, 2.21115}, {0.373467, 1.45928, 3.64699, 1.41539, 0.69601, -1.85814, -1.78885, 0.0170635, -1.78885, 0, 6.51705, 0, -2.21115, -2.66408, -2.21115, 0.461631, -0.881407, 4.50793, 1.74951, -1.82486, -2.29678, -1.9555, -4.9557, -19.0959, -7.41106, -0.959181, 9.72932, 9.36656, 2.59583, 9.36656}, {-4.15743, -0.83732, 1.25624, -1.32462, -1.53355, 0.226806, 0.107516, 1.61619, -1.60405, -0.168703, -0.361739, 1.79599, 5.22286, 7.6848, -0.669975, 1.50443, -0.10214, 1.70236, -2.27592, -8.80746, 8.91649, -0.829614, 1.5491, -8.88631, 1.84585, 2.34271, -2.50031, 0.0756322, -1.55058, -0.237251}, {1.38581, 0.279107, -0.418747, 3.97387, 4.60066, -0.680419, 0.107516, 1.61619, -1.60405, -0.168703, -0.361739, 1.79599, -5.61888, 0.434156, 1.91224, 1.07436, -6.56689, 8.11854, -1.84585, -2.34271, 2.50031, -1.50443, 0.10214, -1.70236, 2.52067, 3.78967, -9.68425, 0.0756322, -1.55058, -0.237251}, {1.38581, 0.279107, -0.418747, -1.32462, -1.53355, 0.226806, -0.322547, -4.84856, 4.81214, -0.168703, -0.361739, 1.79599, -0.0756322, 1.55058, 0.237251, 6.80292, 6.03208, 0.795135, -7.3891, -3.45914, 4.1753, -1.50443, 0.10214, -1.70236, 1.84585, 2.34271, -2.50031, 0.750446, -0.103625, -7.4212}, {1.38581, 0.279107, -0.418747, -1.32462, -1.53355, 0.226806, 0.107516, 1.61619, -1.60405, 0.50611, 1.08522, -5.38796, -0.0756322, 1.55058, 0.237251, 1.50443, -0.10214, 1.70236, -1.84585, -2.34271, 2.50031, -7.04767, -1.01429, -0.0273746, 7.14434, 8.47693, -3.40753, -0.354431, -8.01533, 6.17893}, {-9.45441, -1.42109e-14, 0, -1.78885, -1.78885, 1.78885, -1.36261, -1.36216, -1.78885, 0, 3.15102, 0, 5.47113, 9.36656, -9.36656, 3.89543, 3.89487, 0, 3.23931, 7.13238, 9.36656, -3.89543, -16.4989, 0, 2.21115, -1.68373, -2.21115, 1.68428, -2.21115, 2.21115}, {3.15147, 5.77316e-15, -1.39933e-15, 5.36656, 5.36656, -5.36656, -1.36261, -1.36216, -1.78885, 1.06591e-15, 3.15102, 1.39933e-15, -14.2902, 2.21115, -2.21115, 9.34589, 9.34353, 7.15542, -2.21115, 1.68373, 2.21115, -3.89543, -3.89487, 3.47389e-31, 2.21115, -14.2878, -2.21115, 1.68428, -2.21115, 2.21115}, {3.15147, 1.77636e-15, 2.66454e-15, -1.78885, -1.78885, 1.78885, 4.08784, 4.08649, 5.36656, 0, 3.15102, 0, -1.68428, 2.21115, -2.21115, 11.0508, 11.0503, -7.15542, -14.817, 1.68373, 2.21115, -3.89543, -3.89487, -3.55271e-15, 2.21115, -1.68373, -2.21115, 1.68428, -14.8152, 2.21115}, {3.15147, -2.66454e-15, 0, -1.78885, -1.78885, 1.78885, -1.36261, -1.36216, -1.78885, 0, -9.45305, 0, -1.68428, 2.21115, -2.21115, 3.89543, 3.89487, 0, -2.21115, 1.68373, 2.21115, -16.5013, -3.89487, 0, 9.36656, 5.47169, -9.36656, 7.13474, 3.23751, 9.36656}, {1.36235e-15, 1.07667, 3.62612, 1.31177, 0.0458057, 1.34099, -1.31177, -1.15409, -0.162924, 1.0026e-17, 1.46718, 0.0306378, -6.86849, 0.20377, -5.52749, -6.66134e-16, 1.36992, -1.45618, 6.86849, 6.48653, 2.34713, 6.2603e-16, -7.23863, 1.33362, -1.62143, -1.87015, -1.69543, 1.62143, -0.386993, 0.163515}, {-7.28501e-17, -0.358889, -1.20871, -3.9353, -0.137417, -4.02298, -1.31177, -1.15409, -0.162924, 1.18307e-15, 1.46718, 0.0306378, -1.62143, 1.82255, 4.67132, 5.24706, 5.9863, -0.804479, 1.62143, 1.87015, 1.69543, -1.55431e-15, -1.36992, 1.45618, -1.62143, -7.73886, -1.81798, 1.62143, -0.386993, 0.163515}, {5.92827e-17, -0.358889, -1.20871, 1.31177, 0.0458057, 1.34099, 3.9353, 3.46228, 0.488772, -9.47461e-16, 1.46718, 0.0306378, -1.62143, 0.386993, -0.163515, -5.24706, 1.1867, -6.82015, 1.62143, 3.30571, 6.53026, 1.11022e-15, -1.36992, 1.45618, -1.62143, -1.87015, -1.69543, 1.62143, -6.25571, 0.0409633}, {0, -0.358889, -1.20871, 1.31177, 0.0458057, 1.34099, -1.31177, -1.15409, -0.162924, 0, -4.40153, -0.0919135, -1.62143, 0.386993, -0.163515, 0, 1.36992, -1.45618, 1.62143, 1.87015, 1.69543, 0, 0.0656375, 6.29101, -6.86849, -2.05337, -7.05941, 6.86849, 4.22939, 0.815211}, {1.26288e-15, -3.55271e-15, -3.26126, -1.4431, -0.571101, -0.587405, 1.45561, -1.44292, 0.31363, -0.0125109, 2.01402, -0.813311, 7.55617, 2.99032, 1.73198, -0.0154644, 2.48947, 0.338405, -7.62167, 7.55524, -2.9859, 0.0655081, -10.5456, 2.91484, 1.79923, -1.78355, 1.73138, -1.78377, -0.70592, 0.61764}, {9.0726e-16, -4.44089e-16, 1.08709, 4.3293, 1.7133, 1.76222, 1.45561, -1.44292, 0.31363, -0.0125109, 2.01402, -0.813311, 1.78377, 0.70592, -4.96598, -5.83791, 8.26116, -0.916114, -1.79923, 1.78355, -1.73138, 0.0154644, -2.48947, -0.338405, 1.84928, -9.83965, 4.98462, -1.78377, -0.70592, 0.61764}, {4.59702e-16, 8.88178e-16, 1.08709, -1.4431, -0.571101, -0.587405, -4.36683, 4.32877, -0.940889, -0.0125109, 2.01402, -0.813311, 1.78377, 0.70592, -0.61764, 5.75693, 4.77387, 2.68803, -1.79923, 1.78355, -6.07972, 0.0154644, -2.48947, -0.338405, 1.79923, -1.78355, 1.73138, -1.73373, -8.76202, 3.87088}, {0, -4.44089e-16, 1.08709, -1.4431, -0.571101, -0.587405, 1.45561, -1.44292, 0.31363, 0.0375328, -6.04207, 2.43993, 1.78377, 0.70592, -0.61764, -0.0154644, 2.48947, 0.338405, -1.79923, 1.78355, -1.73138, 0.0154644, -2.48947, -4.68675, 7.57163, 0.500853, 4.081, -7.60621, 5.06577, -0.63688}, {2.18368e-11, -2.07612e-11, -5.36656, -2.34313, 0, 0, 2.34313, -2.34313, -1.78885, 0, 2.34313, 0, 12.2688, -8.55449e-12, -2.21115, -8.99725e-12, 2.89626, 2.21115, -12.2688, 12.2688, 7.15542, 8.99725e-12, -12.2688, -2.21115, 2.89626, -2.89626, 0, -2.89626, 8.55449e-12, 2.21115}, {-7.27948e-12, 6.92291e-12, 1.78885, 7.02938, 0, 0, 2.34313, -2.34313, -1.78885, -1.36297e-15, 2.34313, 1.04056e-15, 2.89626, -3.62483e-11, -9.36656, -9.3725, 12.2688, 9.36656, -2.89626, 2.89626, 8.4211e-16, 8.99947e-12, -2.89626, -2.21115, 2.89626, -12.2688, -5.44843e-15, -2.89626, 8.55715e-12, 2.21115}, {-7.27773e-12, 6.92024e-12, 1.78885, -2.34313, 0, 0, -7.02938, 7.02938, 5.36656, 0, 2.34313, 0, 2.89626, -8.55405e-12, -2.21115, 9.3725, 2.89626, 2.21115, -2.89626, 2.89626, -7.15542, 8.99636e-12, -2.89626, -2.21115, 2.89626, -2.89626, 0, -2.89626, -9.3725, 2.21115}, {-7.27951e-12, 6.9198e-12, 1.78885, -2.34313, 0, 0, 2.34313, -2.34313, -1.78885, 0, -7.02938, 0, 2.89626, -8.55316e-12, -2.21115, -8.99814e-12, 2.89626, 2.21115, -2.89626, 2.89626, -4.44089e-16, 3.81171e-11, -2.89626, -9.36656, 12.2688, -2.89626, 0, -12.2688, 9.3725, 9.36656}, {0, -2.67212e-17, 7.02938, 0, -2.34313, 0, -1.78885, 2.34313, 2.34566, 1.78885, 1.02081e-11, -0.00253498, 0, 12.2688, 2.89626, 2.21115, 1.26184e-11, -2.8994, 9.36656, -12.2688, -9.38578, -9.36656, -5.34508e-11, 2.90954, -2.21115, 2.89626, 0.00313341, 0, -2.89626, -2.89626}, {0, 3.72666e-16, -2.34313, 0, 7.02938, 0, -1.78885, 2.34313, 2.34566, 1.78885, 1.02097e-11, -0.00253498, 0, 2.89626, 12.2688, 9.36656, -9.3725, -12.282, 2.21115, -2.89626, -0.00313341, -2.21115, -1.26201e-11, 2.8994, -9.36656, 2.89626, 0.0132733, 0, -2.89626, -2.89626}, {0, -1.47432e-16, -2.34313, 0, -2.34313, 0, 5.36656, -7.02938, -7.03698, 1.78885, 1.02102e-11, -0.00253498, 0, 2.89626, 2.89626, 2.21115, 9.3725, -2.8994, 2.21115, -2.89626, 9.36937, -2.21115, -1.26201e-11, 2.8994, -2.21115, 2.89626, 0.00313341, -7.15542, -2.89626, -2.88612}, {-2.22045e-16, -3.98999e-17, -2.34313, 0, -2.34313, 0, -1.78885, 2.34313, 2.34566, -5.36656, -3.06329e-11, 0.00760494, 4.44089e-16, 2.89626, 2.89626, 2.21115, 1.26215e-11, -2.8994, 2.21115, -2.89626, -0.00313341, -2.21115, -1.26209e-11, 12.2719, -2.21115, 12.2688, 0.00313341, 7.15542, -12.2688, -12.2789}, {3.55271e-15, -9.45441, -2.66454e-14, 1.78885, -1.78885, -1.78885, -1.78885, -1.36261, -1.36261, 0, 0, 3.15147, -9.36656, 5.47113, 9.36656, -1.77636e-15, 3.89543, 3.89543, 9.36656, 3.23931, 7.13474, 1.77636e-15, -3.89543, -16.5013, -2.21115, 2.21115, -1.68428, 2.21115, 1.68428, -2.21115}, {3.76824e-16, 3.15147, -2.22045e-15, -5.36656, 5.36656, 5.36656, -1.78885, -1.36261, -1.36261, 1.39953e-15, 1.06606e-15, 3.15147, -2.21115, -14.2902, 2.21115, 7.15542, 9.34589, 9.34589, 2.21115, -2.21115, 1.68428, -2.22045e-15, -3.89543, -3.89543, -2.21115, 2.21115, -14.2902, 2.21115, 1.68428, -2.21115}, {0, 3.15147, -7.10543e-15, 1.78885, -1.78885, -1.78885, 5.36656, 4.08784, 4.08784, 0, 0, 3.15147, -2.21115, -1.68428, 2.21115, -7.15542, 11.0508, 11.0508, 2.21115, -14.817, 1.68428, 0, -3.89543, -3.89543, -2.21115, 2.21115, -1.68428, 2.21115, 1.68428, -14.817}, {-5.55112e-15, 3.15147, 4.44089e-16, 1.78885, -1.78885, -1.78885, -1.78885, -1.36261, -1.36261, 0, 0, -9.45441, -2.21115, -1.68428, 2.21115, -7.10543e-15, 3.89543, 3.89543, 2.21115, -2.21115, 1.68428, 3.01981e-14, -16.5013, -3.89543, -9.36656, 9.36656, 5.47113, 9.36656, 7.13474, 3.23931}, {-5.36656, 7.03835, 7.02938, -1.78885, -6.94208e-12, -7.11741e-12, 0, 2.34612, 2.72942e-15, 0, 0, 2.34313, 7.15542, 2.89996, 2.89626, 2.21115, -2.89996, 8.79423e-12, -2.21115, -9.38447, 2.89626, -2.21115, 2.89996, -9.3725, 2.21115, 8.58089e-12, -2.89626, 0, -2.89996, -2.89626}, {1.78885, -2.34612, -2.34313, 5.36656, 2.08278e-11, 2.13522e-11, 0, 2.34612, 1.36471e-15, 0, -1.36471e-15, 2.34313, -7.15542, 12.2844, 12.2688, 2.21115, -12.2844, 8.79045e-12, -2.21115, -8.58264e-12, 2.89626, -2.21115, 2.89996, -8.79533e-12, 2.21115, 8.58868e-12, -12.2688, 0, -2.89996, -2.89626}, {1.78885, -2.34612, -2.34313, -1.78885, -6.94417e-12, -7.11741e-12, 0, -7.03835, 0, 0, 0, 2.34313, -4.44089e-16, 2.89996, 2.89626, 9.36656, -2.89996, 3.72672e-11, -9.36656, 9.38447, 12.2688, -2.21115, 2.89996, -8.79702e-12, 2.21115, 8.58346e-12, -2.89626, 0, -2.89996, -12.2688}, {1.78885, -2.34612, -2.34313, -1.78885, -6.94104e-12, -7.11845e-12, 0, 2.34612, 2.72942e-15, 0, 0, -7.02938, -4.44089e-16, 2.89996, 2.89626, 2.21115, -2.89996, 8.79551e-12, -2.21115, -8.57902e-12, 2.89626, -9.36656, 12.2844, 9.3725, 9.36656, 3.63438e-11, -2.89626, 0, -12.2844, -2.89626}, {5.36656, -5.36656, 5.36656, 3.15147, 0, 0, -1.36261, -1.78885, -1.36216, 0, 0, 3.15102, -14.2902, -2.21115, 2.21115, -2.21115, 2.21115, 1.68373, 9.34589, 7.15542, 9.34353, 2.21115, -2.21115, -14.2878, -3.89543, 0, -3.89487, 1.68428, 2.21115, -2.21115}, {-1.78885, 1.78885, -1.78885, -9.45441, -4.1986e-15, -1.05928e-14, -1.36261, -1.78885, -1.36216, 1.06591e-15, 1.39933e-15, 3.15102, 5.47113, -9.36656, 9.36656, 3.23931, 9.36656, 7.13238, 3.89543, 3.0155e-15, 3.89487, 2.21115, -2.21115, -1.68373, -3.89543, -9.05692e-15, -16.4989, 1.68428, 2.21115, -2.21115}, {-1.78885, 1.78885, -1.78885, 3.15147, 0, 0, 4.08784, 5.36656, 4.08649, 0, 0, 3.15102, -1.68428, -2.21115, 2.21115, -14.817, 2.21115, 1.68373, 11.0508, -7.15542, 11.0503, 2.21115, -2.21115, -1.68373, -3.89543, 0, -3.89487, 1.68428, 2.21115, -14.8152}, {-1.78885, 1.78885, -1.78885, 3.15147, 0, 0, -1.36261, -1.78885, -1.36216, 0, 0, -9.45305, -1.68428, -2.21115, 2.21115, -2.21115, 2.21115, 1.68373, 3.89543, -4.44089e-16, 3.89487, 9.36656, -9.36656, 5.47169, -16.5013, 0, -3.89487, 7.13474, 9.36656, 3.23751}, {3.37408, 4.04519, 4.04519, 1.73606, 1.52739, 0.215622, 1.28983, 0.0265046, 1.33827, -1.90119, -0.205494, -0.205494, -7.69991, -6.33079, 0.5377, -3.7402, -1.92072, -1.92072, -5.36342, 1.52793, -5.34056, 11.345, 2.74269, 2.74269, 0.204116, -1.63395, -0.0125188, 0.755686, 0.221243, -1.40019}, {-1.12469, -1.3484, -1.3484, -5.20817, -4.58216, -0.646866, 1.28983, 0.0265046, 1.33827, -1.90119, -0.205494, -0.205494, 3.74309, 5.17235, 6.79378, -8.89951, -2.02673, -7.27379, -0.204116, 1.63395, 0.0125188, 3.7402, 1.92072, 1.92072, 7.80888, -0.811974, 0.809457, 0.755686, 0.221243, -1.40019}, {-1.12469, -1.3484, -1.3484, 1.73606, 1.52739, 0.215622, -3.86948, -0.0795138, -4.01481, -1.90119, -0.205494, -0.205494, -0.755686, -0.221243, 1.40019, -10.6844, -8.03027, -2.7832, 4.29466, 7.02754, 5.40611, 3.7402, 1.92072, 1.92072, 0.204116, -1.63395, -0.0125188, 8.36045, 1.04322, -0.578212}, {-1.12469, -1.3484, -1.3484, 1.73606, 1.52739, 0.215622, 1.28983, 0.0265046, 1.33827, 5.70357, 0.616482, 0.616482, -0.755686, -0.221243, 1.40019, -3.7402, -1.92072, -1.92072, -0.204116, 1.63395, 0.0125188, 8.23897, 7.31431, 7.31431, -6.74011, -7.7435, -0.875007, -4.40362, 0.115225, -6.75327}, {7.02938, 7.0206, 5.36656, -2.72401e-15, 2.34147, -1.03982e-15, 2.34313, 0, 0, -1.04066e-11, -0.00126659, 1.78885, 2.89626, -9.36743, 2.21115, -2.89626, -2.89421, 1.28529e-15, -9.3725, 2.89265, 2.21115, 2.89626, 2.89928, -7.15542, 1.28666e-11, -2.89265, -2.21115, -2.89626, 0.00156559, -2.21115}, {-2.34313, -2.3402, -1.78885, 4.08602e-15, -7.0244, -3.11946e-15, 2.34313, 7.36763e-19, -1.04056e-15, -1.0403e-11, -0.00126659, 1.78885, 12.2688, 9.35923, 9.36656, -12.2688, -2.89421, 4.16314e-15, -1.28599e-11, 2.89265, 2.21115, 2.89626, 2.89421, 4.43179e-16, 5.44723e-11, -2.88758, -9.36656, -2.89626, 0.00156559, -2.21115}, {-2.34313, -2.3402, -1.78885, -2.41965e-26, 2.34147, 4.15928e-15, -7.02938, 0, 0, -1.04066e-11, -0.00126659, 1.78885, 2.89626, -0.00156559, 2.21115, -2.89626, -12.2601, -2.17783e-14, 9.3725, 12.2534, 9.36656, 2.89626, 2.89421, 5.58524e-15, 1.28633e-11, -2.89265, -2.21115, -2.89626, 0.00663197, -9.36656}, {-2.34313, -2.3402, -1.78885, 6.05094e-27, 2.34147, -1.03982e-15, 2.34313, 0, 0, 3.12292e-11, 0.00379978, -5.36656, 2.89626, -0.00156559, 2.21115, -2.89626, -2.89421, 1.28529e-15, -1.28666e-11, 2.89265, 2.21115, 12.2688, 12.255, 7.15542, 1.28671e-11, -12.2585, -2.21115, -12.2688, 0.00156559, -2.21115}, {-3.69587, -1.12113, -5.61393, -0.115297, -1.49037, 0.58988, -0.136463, 0.136463, -2.07323, -0.980196, 0.980196, -0.387956, -0.919078, 7.34175, -5.40172, 0.311194, 1.67352, 1.83353, -0.80825, -1.17646, 8.54253, 3.60959, -5.59431, -0.281701, 1.3541, 0.630611, -0.249592, 1.38027, -1.38027, 3.0422}, {1.23196, 0.373711, 1.87131, 0.345892, 4.47111, -1.76964, -0.136463, 0.136463, -2.07323, -0.980196, 0.980196, -0.387956, -6.30809, -0.114578, -10.5274, 0.857047, 1.12767, 10.1265, -1.3541, -0.630611, 0.249592, -0.311194, -1.67352, -1.83353, 5.27489, -3.29017, 1.30223, 1.38027, -1.38027, 3.0422}, {1.23196, 0.373711, 1.87131, -0.115297, -1.49037, 0.58988, 0.40939, -0.40939, 6.2197, -0.980196, 0.980196, -0.387956, -1.38027, 1.38027, -3.0422, 0.772383, 7.635, -0.525997, -6.28193, -2.12546, -7.23564, -0.311194, -1.67352, -1.83353, 1.3541, 0.630611, -0.249592, 5.30105, -5.30105, 4.59402}, {1.23196, 0.373711, 1.87131, -0.115297, -1.49037, 0.58988, -0.136463, 0.136463, -2.07323, 2.94059, -2.94059, 1.16387, -1.38027, 1.38027, -3.0422, 0.311194, 1.67352, 1.83353, -1.3541, -0.630611, 0.249592, -5.23902, -3.16837, -9.31876, 1.81529, 6.59209, -2.60911, 1.92612, -1.92612, 11.3351}, {5.57441, -4.24616, -4.24616, 3.64699, 0.373467, -2.778, -1.78885, -1.78885, -1.78885, 0, 0, 3.15147, -16.7991, -3.70501, 12.7963, -2.29678, 1.74951, 5.64494, 11.6633, 7.61705, 7.61705, 2.29678, -1.74951, -18.2508, -4.50793, -0.461631, -0.461631, 2.21115, 2.21115, -1.68428}, {-1.85814, 1.41539, 1.41539, -10.941, -1.1204, 8.334, -1.78885, -1.78885, -1.78885, 1.39953e-15, 1.39953e-15, 3.15147, 5.2214, -7.87269, -3.97726, 4.85864, 8.90493, 12.8004, 4.50793, 0.461631, 0.461631, 2.29678, -1.74951, -5.64494, -4.50793, -0.461631, -13.0675, 2.21115, 2.21115, -1.68428}, {-1.85814, 1.41539, 1.41539, 3.64699, 0.373467, -2.778, 5.36656, 5.36656, 5.36656, 0, 0, 3.15147, -2.21115, -2.21115, 1.68428, -16.8847, 0.255645, 16.7569, 11.9405, -5.19992, -5.19992, 2.29678, -1.74951, -5.64494, -4.50793, -0.461631, -0.461631, 2.21115, 2.21115, -14.2902}, {-1.85814, 1.41539, 1.41539, 3.64699, 0.373467, -2.778, -1.78885, -1.78885, -1.78885, 0, 0, -9.45441, -2.21115, -2.21115, 1.68428, -2.29678, 1.74951, 5.64494, 4.50793, 0.461631, 0.461631, 9.72932, -7.41106, -11.3065, -19.0959, -1.9555, 10.6504, 9.36656, 9.36656, 5.47113}, {0.00760494, 5.36656, -0.00379978, 1.35906e-15, -2.07964e-15, 2.34147, -2.34059, 1.78885, -2.34273, 2.34313, 0, 0, 0.00313341, 2.21115, -12.2616, 2.89313, -2.21115, 0.00156559, 12.2586, -7.15542, 12.2651, -12.2656, 2.21115, -0.00156559, -2.89626, 2.57058e-15, -2.89421, -0.00313341, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, -8.16761e-15, 3.11946e-15, -7.0244, -2.34059, 1.78885, -2.34273, 2.34313, -1.04056e-15, 1.36274e-15, 0.0132733, 9.36656, -2.90084, 12.2555, -9.36656, 9.3725, 2.89626, -2.1274e-15, 2.89421, -2.89313, 2.21115, -0.00156559, -12.2688, 6.73371e-15, -2.89421, -0.00313341, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, 5.44802e-15, 0, 2.34147, 7.02177, -5.36656, 7.0282, 2.34313, 0, 0, 0.00313341, 2.21115, -2.89578, 2.89313, -2.21115, -9.3643, 2.9064, 7.15542, 2.88915, -2.89313, 2.21115, -0.00156559, -2.89626, 0, -2.89421, -9.37564, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, -1.36201e-15, 0, 2.34147, -2.34059, 1.78885, -2.34273, -7.02938, 0, 0, 0.00313341, 2.21115, -2.89578, 2.89313, -2.21115, 0.00156559, 2.89626, 4.44089e-16, 2.89421, -2.88299, 9.36656, -0.00663197, -2.89626, 0, -12.2601, 9.35923, -9.36656, 12.2667}, {-2.0499, 2.05263, 6.32666, 0.872781, 1.47234, -0.0861955, 0.376973, -0.375702, 1.61414, -1.93305, -0.412429, 0.580942, -5.41454, -6.86355, 3.05805, -1.54478, -1.35552, -1.88864, -2.81846, 2.81293, -5.84502, 9.277, 3.00524, -0.435124, 1.31057, -1.31012, -0.61154, 1.92342, 0.974184, -2.71327}, {0.683301, -0.68421, -2.10889, -2.61834, -4.41703, 0.258586, 0.376973, -0.375702, 1.61414, -1.93305, -0.412429, 0.580942, -4.65662, 1.76266, 11.1488, -3.05267, 0.147289, -8.34521, -1.31057, 1.31012, 0.61154, 1.54478, 1.35552, 1.88864, 9.04279, 0.339593, -2.93531, 1.92342, 0.974184, -2.71327}, {0.683301, -0.68421, -2.10889, 0.872781, 1.47234, -0.0861955, -1.13092, 1.12711, -4.84242, -1.93305, -0.412429, 0.580942, -1.92342, -0.974184, 2.71327, -5.0359, -7.24489, -1.54386, -4.04377, 4.04697, 9.04709, 1.54478, 1.35552, 1.88864, 1.31057, -1.31012, -0.61154, 9.65564, 2.6239, -5.03704}, {0.683301, -0.68421, -2.10889, 0.872781, 1.47234, -0.0861955, 0.376973, -0.375702, 1.61414, 5.79916, 1.23729, -1.74283, -1.92342, -0.974184, 2.71327, -1.54478, -1.35552, -1.88864, -1.31057, 1.31012, 0.61154, -1.18842, 4.09236, 10.3242, -2.18055, -7.19949, -0.266758, 0.41553, 2.47699, -9.16983}, {3.84226, 4.31846, 0.720662, 0.104325, 0.223697, -1.11063, 1.27099, 0.0329107, 0.803582, -0.0945646, 1.18288, 0.547265, 1.03685, 0.608011, 6.11224, -1.69999, -0.317185, 0.379527, -5.07191, 1.60698, -3.91068, 2.07825, -4.41433, -2.56859, -0.0120645, -1.73863, 0.696352, -1.45415, -1.5028, -1.66974}, {-1.28075, -1.43949, -0.240221, -0.312975, -0.671092, 3.33188, 1.27099, 0.0329107, 0.803582, -0.0945646, 1.18288, 0.547265, 6.57716, 7.26075, 2.63062, -6.78396, -0.448828, -2.8348, 0.0120645, 1.73863, -0.696352, 1.69999, 0.317185, -0.379527, 0.366194, -6.47014, -1.49271, -1.45415, -1.5028, -1.66974}, {-1.28075, -1.43949, -0.240221, 0.104325, 0.223697, -1.11063, -3.81298, -0.0987322, -2.41075, -0.0945646, 1.18288, 0.547265, 1.45415, 1.5028, 1.66974, -2.11729, -1.21197, 4.82203, 5.13508, 7.49658, 0.26453, 1.69999, 0.317185, -0.379527, -0.0120645, -1.73863, 0.696352, -1.07589, -6.23432, -3.8588}, {-1.28075, -1.43949, -0.240221, 0.104325, 0.223697, -1.11063, 1.27099, 0.0329107, 0.803582, 0.283694, -3.54864, -1.64179, 1.45415, 1.5028, 1.66974, -1.69999, -0.317185, 0.379527, 0.0120645, 1.73863, -0.696352, 6.823, 6.07514, 0.581356, -0.429365, -2.63341, 5.13886, -6.53812, -1.63444, -4.88406}, {6.08004, 1.41594, 0.0377686, 0.57469, 1.08447, 1.45022, 1.45199, 0.720135, -1.43763, 0, -1.33263, 0, -0.504, -5.09498, -7.57787, -2.50511, -2.23062, -0.0155615, -5.09761, -3.18728, 7.54308, 2.50511, 7.56114, 0.0155615, -0.710355, 0.306735, -1.79257, -1.79476, 0.757084, 1.77701}, {-2.02668, -0.471981, -0.0125895, -1.72407, -3.25342, -4.35065, 1.45199, 0.720135, -1.43763, 0, -1.33263, 0, 9.90148, 1.13084, -1.72665, -8.31307, -5.11116, 5.73495, 0.710355, -0.306735, 1.79257, 2.50511, 2.23062, 0.0155615, -0.710355, 5.63725, -1.79257, -1.79476, 0.757084, 1.77701}, {-2.02668, -0.471981, -0.0125895, 0.57469, 1.08447, 1.45022, -4.35597, -2.1604, 4.31288, 0, -1.33263, 0, 1.79476, -0.757084, -1.77701, -4.80387, -6.56852, -5.81643, 8.81707, 1.58119, 1.84292, 2.50511, 2.23062, 0.0155615, -0.710355, 0.306735, -1.79257, -1.79476, 6.0876, 1.77701}, {-2.02668, -0.471981, -0.0125895, 0.57469, 1.08447, 1.45022, 1.45199, 0.720135, -1.43763, 0, 3.99789, 0, 1.79476, -0.757084, -1.77701, -2.50511, -2.23062, -0.0155615, 0.710355, -0.306735, 1.79257, 10.6118, 4.11854, 0.0659197, -3.00911, -4.03116, -7.59343, -7.60272, -2.12346, 7.52752}, {-1.37732, 4.35589, 4.31302, -1.40475, 2.02293, -0.00626368, 1.89829, -6.72683e-16, 1.70116e-15, -0.952649, -0.570969, 1.44394, 6.78788, -8.79749, 1.80986, -0.610051, -2.50048, 0.00774234, -10.5071, 1.79473, 1.77706, 4.42065, 4.78436, -5.78349, 2.9139, -1.79473, -1.77706, -1.16888, 0.705756, -1.7848}, {0.459107, -1.45196, -1.43767, 4.21425, -6.0688, 0.018791, 1.89829, -4.0361e-16, 1.0207e-15, -0.952649, -0.570969, 1.44394, -0.66755, 5.1021, 7.53549, -8.20322, -2.50048, 0.00774234, -2.9139, 1.79473, 1.77706, 0.610051, 2.50048, -0.00774234, 6.7245, 0.489149, -7.5528, -1.16888, 0.705756, -1.7848}, {0.459107, -1.45196, -1.43767, -1.40475, 2.02293, -0.00626368, -5.69487, 0, 0, -0.952649, -0.570969, 1.44394, 1.16888, -0.705756, 1.7848, 5.00895, -10.5922, 0.0327971, -4.75033, 7.60258, 7.52775, 0.610051, 2.50048, -0.00774234, 2.9139, -1.79473, -1.77706, 2.64172, 2.98963, -7.56055}, {0.459107, -1.45196, -1.43767, -1.40475, 2.02293, -0.00626368, 1.89829, -1.34537e-16, 3.40233e-16, 2.85795, 1.71291, -4.33181, 1.16888, -0.705756, 1.7848, -0.610051, -2.50048, 0.00774234, -2.9139, 1.79473, 1.77706, -1.22638, 8.30834, 5.74295, 8.5329, -9.88646, -1.75201, -8.76204, 0.705756, -1.7848}, {-5.36656, -5.36656, -5.36656, -0.373467, -3.64699, -0.373467, 0, 0, -1.60567, -1.41539, 1.85814, 0.190281, -0.255645, 16.8847, -0.255645, 0.461631, 4.50793, 2.44635, -2.21115, -2.21115, 6.19624, 5.19992, -11.9405, -3.20747, 2.21115, 2.21115, 0.226431, 1.74951, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 1.1204, 10.941, 1.1204, 0, 0, -1.60567, -1.41539, 1.85814, 0.190281, -8.90493, -4.85864, -8.90493, 0.461631, 4.50793, 8.86902, -2.21115, -2.21115, -0.226431, -0.461631, -4.50793, -2.44635, 7.87269, -5.2214, -0.534693, 1.74951, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, -0.373467, -3.64699, -0.373467, 0, 0, 4.817, -1.41539, 1.85814, 0.190281, -1.74951, 2.29678, -1.74951, 1.9555, 19.0959, 3.94022, -9.36656, -9.36656, -7.38185, -0.461631, -4.50793, -2.44635, 2.21115, 2.21115, 0.226431, 7.41106, -9.72932, 0.988391}, {1.78885, 1.78885, 1.78885, -0.373467, -3.64699, -0.373467, 0, 0, -1.60567, 4.24616, -5.57441, -0.570843, -1.74951, 2.29678, -1.74951, 0.461631, 4.50793, 2.44635, -2.21115, -2.21115, -0.226431, -7.61705, -11.6633, -9.60176, 3.70501, 16.7991, 1.7203, 1.74951, -2.29678, 8.17219}, {-7.99361e-15, -9.45441, 7.10543e-15, 1.78885, -1.36261, -1.36261, -1.78885, -1.78885, -1.78885, 0, 0, 3.15147, -9.36656, 3.23931, 7.13474, 3.55271e-15, 3.89543, 3.89543, 9.36656, 5.47113, 9.36656, -3.55271e-15, -3.89543, -16.5013, -2.21115, 1.68428, -2.21115, 2.21115, 2.21115, -1.68428}, {1.48705e-15, 3.15147, -8.88178e-16, -5.36656, 4.08784, 4.08784, -1.78885, -1.78885, -1.78885, 1.39953e-15, 1.39953e-15, 3.15147, -2.21115, -14.817, 1.68428, 7.15542, 11.0508, 11.0508, 2.21115, -1.68428, 2.21115, -3.55271e-15, -3.89543, -3.89543, -2.21115, 1.68428, -14.817, 2.21115, 2.21115, -1.68428}, {2.88658e-15, 3.15147, -2.22045e-15, 1.78885, -1.36261, -1.36261, 5.36656, 5.36656, 5.36656, 0, 0, 3.15147, -2.21115, -2.21115, 1.68428, -7.15542, 9.34589, 9.34589, 2.21115, -14.2902, 2.21115, -3.55271e-15, -3.89543, -3.89543, -2.21115, 1.68428, -2.21115, 2.21115, 2.21115, -14.2902}, {0, 3.15147, 2.22045e-15, 1.78885, -1.36261, -1.36261, -1.78885, -1.78885, -1.78885, 0, 0, -9.45441, -2.21115, -2.21115, 1.68428, 0, 3.89543, 3.89543, 2.21115, -1.68428, 2.21115, 0, -16.5013, -3.89543, -9.36656, 7.13474, 3.23931, 9.36656, 9.36656, 5.47113}, {3.05492, -2.11527, -4.36034, 0.668117, -1.63909, -0.00517894, 0.911433, 1.21439, 0.00383706, -0.561241, -0.2804, -1.4521, -2.23961, 7.71083, -1.76944, -1.95243, 0.524948, 0.00165865, -3.51362, -7.23019, -1.81665, 4.1974, 0.59665, 5.80676, -0.132105, 2.37262, 1.8013, -0.43286, -1.15448, 1.79016}, {-1.01831, 0.705091, 1.45345, -2.00435, 4.91726, 0.0155368, 0.911433, 1.21439, 0.00383706, -0.561241, -0.2804, -1.4521, 4.50609, -1.66588, -7.60394, -5.59816, -4.33263, -0.0136896, 0.132105, -2.37262, -1.8013, 1.95243, -0.524948, -0.00165865, 2.11286, 3.49421, 7.60972, -0.43286, -1.15448, 1.79016}, {-1.01831, 0.705091, 1.45345, 0.668117, -1.63909, -0.00517894, -2.7343, -3.64318, -0.0115112, -0.561241, -0.2804, -1.4521, 0.43286, 1.15448, -1.79016, -4.6249, 7.08129, 0.0223744, 4.20534, -5.19298, -7.61508, 1.95243, -0.524948, -0.00165865, -0.132105, 2.37262, 1.8013, 1.81211, -0.0328828, 7.59857}, {-1.01831, 0.705091, 1.45345, 0.668117, -1.63909, -0.00517894, 0.911433, 1.21439, 0.00383706, 1.68372, 0.841199, 4.35631, 0.43286, 1.15448, -1.79016, -1.95243, 0.524948, 0.00165865, 0.132105, -2.37262, -1.8013, 6.02566, -3.34531, -5.81544, -2.80457, 8.92896, 1.82202, -4.07859, -6.01206, 1.77481}, {5.82171, 7.62554, -0.596168, 1.32981, 1.74185, -1.74185, 0.61076, -1.54312, 1.54312, 0, 2.34313, 0, -4.5643, -5.97853, 8.87479, -2.39867, -0.245635, 0.245635, -0.799305, 11.2218, -8.32553, 2.39867, -9.12687, -0.245635, -1.64373, -5.0493, 2.15304, -0.754941, -0.988857, -1.90741}, {-1.94057, -2.54185, 0.198723, -3.98943, -5.22554, 5.22554, 0.61076, -1.54312, 1.54312, -3.55272e-16, 2.34313, -8.97618e-16, 8.51722, 11.1562, 1.11252, -4.84171, 5.92686, -5.92686, 1.64373, 5.0493, -2.15304, 2.39867, 0.245635, -0.245635, -1.64373, -14.4218, 2.15304, -0.754941, -0.988857, -1.90741}, {-1.94057, -2.54185, 0.198723, 1.32981, 1.74185, -1.74185, -1.83228, 4.62937, -4.62937, 0, 2.34313, 0, 0.754941, 0.988857, 1.90741, -7.71791, -7.21302, 7.21302, 9.40601, 15.2167, -2.94793, 2.39867, 0.245635, -0.245635, -1.64373, -5.0493, 2.15304, -0.754941, -10.3614, -1.90741}, {-1.94057, -2.54185, 0.198723, 1.32981, 1.74185, -1.74185, 0.61076, -1.54312, 1.54312, 0, -7.02938, 0, 0.754941, 0.988857, 1.90741, -2.39867, -0.245635, 0.245635, 1.64373, 5.0493, -2.15304, 10.1609, 10.413, -1.04052, -6.96297, -12.0167, 9.12042, -3.19798, 5.18364, -8.0799}, {5.81909, -7.62212, -0.600985, 0, -2.34313, 0, 0.610485, 1.54348, 1.54262, 1.32921, -1.74106, -1.74295, 2.3976, 9.12828, -0.24762, -0.754601, 0.988412, -1.90678, -0.798945, -11.2223, -8.32487, -4.56224, 5.97584, 8.87857, -1.643, 5.04833, 2.1544, -2.3976, 0.244222, 0.24762}, {-1.9397, 2.54071, 0.200328, 0, 7.02938, 0, 0.610485, 1.54348, 1.54262, 1.32921, -1.74106, -1.74295, 10.1564, -10.407, -1.04893, -3.19654, -5.18552, -8.07725, 1.643, -5.04833, -2.1544, 0.754601, -0.988412, 1.90678, -6.95984, 12.0126, 9.12619, -2.3976, 0.244222, 0.24762}, {-1.9397, 2.54071, 0.200328, 0, -2.34313, 0, -1.83146, -4.63045, -4.62785, 1.32921, -1.74106, -1.74295, 2.3976, -0.244222, -0.24762, -0.754601, 10.3609, -1.90678, 9.40178, -15.2112, -2.95571, 0.754601, -0.988412, 1.90678, -1.643, 5.04833, 2.1544, -7.71444, 7.20847, 7.21941}, {-1.9397, 2.54071, 0.200328, 0, -2.34313, 0, 0.610485, 1.54348, 1.54262, -3.98763, 5.22319, 5.22884, 2.3976, -0.244222, -0.24762, -0.754601, 0.988412, -1.90678, 1.643, -5.04833, -2.1544, 8.51339, -11.1512, 1.10547, -1.643, 14.4208, 2.1544, -4.83954, -5.92971, -5.92285}, {8.88178e-16, -4.44089e-16, 4.817, 1.32981, 1.74185, -0.136178, 0.61076, -1.54312, 1.54312, -1.94057, -0.198723, 0.198723, -6.96297, -9.12042, 2.69775, -2.39867, -0.245635, -1.73908, -3.19798, 8.0799, -6.09519, 10.1609, 1.04052, 0.94419, 0.754941, -1.90741, -0.0773091, 1.64373, 2.15304, -2.15304}, {4.44089e-16, -8.32667e-17, -1.60567, -3.98943, -5.22554, 0.408534, 0.61076, -1.54312, 1.54312, -1.94057, -0.198723, 0.198723, -1.64373, -2.15304, 8.57571, -4.84171, 5.92686, -7.91157, -0.754941, 1.90741, 0.0773091, 2.39867, 0.245635, 1.73908, 8.51722, -1.11252, -0.872199, 1.64373, 2.15304, -2.15304}, {0, -3.05311e-16, -1.60567, 1.32981, 1.74185, -0.136178, -1.83228, 4.62937, -4.62937, -1.94057, -0.198723, 0.198723, -1.64373, -2.15304, 2.15304, -7.71791, -7.21302, -1.19437, -0.754941, 1.90741, 6.49998, 2.39867, 0.245635, 1.73908, 0.754941, -1.90741, -0.0773091, 9.40601, 2.94793, -2.94793}, {-6.66134e-16, -1.94289e-16, -1.60567, 1.32981, 1.74185, -0.136178, 0.61076, -1.54312, 1.54312, 5.82171, 0.596168, -0.596168, -1.64373, -2.15304, 2.15304, -2.39867, -0.245635, -1.73908, -0.754941, 1.90741, 0.0773091, 2.39867, 0.245635, 8.16175, -4.5643, -8.87479, 0.467403, -0.799305, 8.32553, -8.32553}, {-1.28888, 1.28888, -5.54754, -0.937563, 0.937563, 0.371082, -0.607159, -0.998509, -1.77891, 1.1151, 0.490571, -0.441349, 4.3781, -4.3781, -4.22872, 1.90938, 0.0753332, 1.74017, 2.64808, 5.7593, 7.02879, -6.36977, -2.03762, 0.0252242, -0.219445, -1.76527, 0.0868549, -0.627846, 0.627846, 2.74439}, {0.429625, -0.429625, 1.84918, 2.81269, -2.81269, -1.11325, -0.607159, -0.998509, -1.77891, 1.1151, 0.490571, -0.441349, -1.09065, 1.09065, -10.1411, 4.33802, 4.06937, 8.85582, 0.219445, 1.76527, -0.0868549, -1.90938, -0.0753332, -1.74017, -4.67983, -3.72755, 1.85225, -0.627846, 0.627846, 2.74439}, {0.429625, -0.429625, 1.84918, -0.937563, 0.937563, 0.371082, 1.82148, 2.99553, 5.33673, 1.1151, 0.490571, -0.441349, 0.627846, -0.627846, -2.74439, 5.65963, -3.67492, 0.255844, -1.49906, 3.48377, -7.48357, -1.90938, -0.0753332, -1.74017, -0.219445, -1.76527, 0.0868549, -5.08823, -1.33444, 4.50979}, {0.429625, -0.429625, 1.84918, -0.937563, 0.937563, 0.371082, -0.607159, -0.998509, -1.77891, -3.34529, -1.47171, 1.32405, 0.627846, -0.627846, -2.74439, 1.90938, 0.0753332, 1.74017, 0.219445, 1.76527, -0.0868549, -3.62788, 1.64317, -9.13689, 3.53081, -5.51552, -1.39747, 1.80079, 4.62188, 9.86004}, {-4.9045, -4.90878, 4.90879, 0.803078, -0.801888, 0.80329, -1.63483, -1.63626, 0.030594, -0.803078, 0.801888, 0.802378, -6.22574, 2.17621, -2.18355, 1.0281, 3.01372, -1.03074, 6.53933, 6.54504, 1.86234, 2.18421, -6.22127, -2.17877, 7.60503e-14, -7.58282e-14, -1.98471, 3.01342, 1.03134, -1.02961}, {1.63483, 1.63626, -1.63626, -2.40924, 2.40566, -2.40987, -1.63483, -1.63626, 0.030594, -0.803078, 0.801888, 0.802378, -9.55275, -7.57638, 7.57466, 7.56743, 9.55876, -1.15311, -7.62723e-14, 7.68274e-14, 1.98471, -1.0281, -3.01372, 1.03074, 3.21231, -3.20755, -5.19423, 3.01342, 1.03134, -1.02961}, {1.63483, 1.63626, -1.63626, 0.803078, -0.801888, 0.80329, 4.9045, 4.90878, -0.0917819, -0.803078, 0.801888, 0.802378, -3.01342, -1.03134, 1.02961, -2.18421, 6.22127, -4.2439, -6.53933, -6.54504, 8.52976, -1.0281, -3.01372, 1.03074, 7.52731e-14, -7.53841e-14, -1.98471, 6.22574, -2.17621, -4.23912}, {1.63483, 1.63626, -1.63626, 0.803078, -0.801888, 0.80329, -1.63483, -1.63626, 0.030594, 2.40924, -2.40566, -2.40713, -3.01342, -1.03134, 1.02961, 1.0281, 3.01372, -1.03074, -7.52731e-14, 7.43849e-14, 1.98471, -7.56743, -9.55876, 7.57579, -3.21231, 3.20755, -5.19788, 9.55275, 7.57638, -1.15199}, {0.412021, -3.98943, -5.22554, -1.60567, 0, 0, 0.200419, -1.94057, -0.198723, 1.54259, 0.61076, -1.54312, 8.57715, -1.64373, -2.15304, 1.73698, 2.39867, 0.245635, -0.879643, 8.51722, -1.11252, -7.90734, -4.84171, 5.92686, 0.0779689, -0.754941, 1.90741, -2.15448, 1.64373, 2.15304}, {-0.13734, 1.32981, 1.74185, 4.817, 0, 0, 0.200419, -1.94057, -0.198723, 1.54259, 0.61076, -1.54312, 2.70384, -6.96297, -9.12042, 0.93531, 10.1609, 1.04052, -0.0779689, 0.754941, -1.90741, -1.73698, -2.39867, -0.245635, -6.09239, -3.19798, 8.0799, -2.15448, 1.64373, 2.15304}, {-0.13734, 1.32981, 1.74185, -1.60567, 0, 0, -0.601256, 5.82171, 0.596168, 1.54259, 0.61076, -1.54312, 2.15448, -1.64373, -2.15304, 8.15966, 2.39867, 0.245635, 0.471392, -4.5643, -8.87479, -1.73698, -2.39867, -0.245635, 0.0779689, -0.754941, 1.90741, -8.32484, -0.799305, 8.32553}, {-0.13734, 1.32981, 1.74185, -1.60567, 0, 0, 0.200419, -1.94057, -0.198723, -4.62777, -1.83228, 4.62937, 2.15448, -1.64373, -2.15304, 1.73698, 2.39867, 0.245635, -0.0779689, 0.754941, -1.90741, -1.18762, -7.71791, -7.21302, 6.50064, -0.754941, 1.90741, -2.95615, 9.40601, 2.94793}, {-2.2024, 0.148267, -4.33994, -0.546238, -1.40698, 1.37428e-12, 0.372712, 0.180326, -1.44665, -0.560609, 1.27608, -1.24642e-12, 1.9527, 7.42813, -1.78815, 0.21449, 1.51623, 1.78815, -2.85899, -0.883108, 5.78659, 2.02795, -6.62053, -1.78815, 1.36814, 0.161805, -1.58045e-13, 0.232253, -1.80021, 1.78815}, {0.734135, -0.0494224, 1.44665, 1.63871, 4.22094, -4.12207e-12, 0.372712, 0.180326, -1.44665, -0.560609, 1.27608, -1.24619e-12, -3.16879, 1.9979, -7.57474, -1.27636, 0.794924, 7.57474, -1.36814, -0.161805, 1.57656e-13, -0.21449, -1.51623, -1.78815, 3.61057, -4.9425, 4.82673e-12, 0.232253, -1.80021, 1.78815}, {0.734135, -0.0494224, 1.44665, -0.546238, -1.40698, 1.37428e-12, -1.11814, -0.540977, 4.33994, -0.560609, 1.27608, -1.24642e-12, -0.232253, 1.80021, -1.78815, 2.39944, 7.14414, 1.78815, -4.30468, 0.0358845, -5.78659, -0.21449, -1.51623, -1.78815, 1.36814, 0.161805, -1.58045e-13, 2.47469, -6.90451, 1.78815}, {0.734135, -0.0494224, 1.44665, -0.546238, -1.40698, 1.3744e-12, 0.372712, 0.180326, -1.44665, 1.68183, -3.82823, 3.73959e-12, -0.232253, 1.80021, -1.78815, 0.21449, 1.51623, 1.78815, -1.36814, -0.161805, 1.577e-13, -3.15103, -1.31854, -7.57474, 3.55309, 5.78972, -5.65567e-12, -1.25859, -2.52151, 7.57474}, {0, 9.4517, 0, -1.78885, 1.78834, -1.78937, 1.78885, 1.36222, -1.3621, 0, 0, 3.15147, 9.36656, -5.46957, 9.36924, 0, -3.89432, 3.89543, -9.36656, -3.23838, 7.13206, 0, 3.89432, -16.5013, 2.21115, -2.21051, -1.68365, -2.21115, -1.6838, -2.21178}, {-1.54779e-16, -3.15057, 0, 5.36656, -5.36503, 5.3681, 1.78885, 1.36222, -1.3621, -1.39953e-15, -1.06575e-15, 3.15147, 2.21115, 14.2861, 2.21178, -7.15542, -9.34321, 9.34384, -2.21115, 2.21051, 1.68365, 1.77636e-15, 3.89432, -3.89543, 2.21115, -2.21051, -14.2895, -2.21115, -1.6838, -2.21178}, {0, -3.15057, -4.44089e-16, -1.78885, 1.78834, -1.78937, -5.36656, -4.08667, 4.08631, 0, 0, 3.15147, 2.21115, 1.6838, 2.21178, 7.15542, -11.0477, 11.0529, -2.21115, 14.8128, 1.68365, 0, 3.89432, -3.89543, 2.21115, -2.21051, -1.68365, -2.21115, -1.6838, -14.8177}, {0, -3.15057, 0, -1.78885, 1.78834, -1.78937, 1.78885, 1.36222, -1.3621, 0, 0, -9.45441, 2.21115, 1.6838, 2.21178, 0, -3.89432, 3.89543, -2.21115, 2.21051, 1.68365, 0, 16.4966, -3.89543, 9.36656, -9.36389, 5.47381, -9.36656, -7.1327, 3.23663}, {-0.595682, -0.596202, -5.82204, 0, -1.60567, 0, 1.54187, 1.54321, -0.609885, -1.74043, -0.136279, -1.3308, -0.245434, 8.16174, -2.39881, -1.90585, 0.0771985, 0.75386, -8.31875, -8.32602, 0.794587, 8.86756, 0.467918, 4.56932, 2.15129, 2.15317, 1.64495, 0.245434, -1.73907, 2.39881}, {0.198561, 0.198734, 1.94068, 0, 4.817, 0, 1.54187, 1.54321, -0.609885, -1.74043, -0.136279, -1.3308, -1.03968, 0.94413, -10.1615, -8.07331, -6.09565, 3.1934, -2.15129, -2.15317, -1.64495, 1.90585, -0.0771985, -0.75386, 9.11299, 2.69828, 6.96814, 0.245434, -1.73907, 2.39881}, {0.198561, 0.198734, 1.94068, 0, -1.60567, 0, -4.6256, -4.62964, 1.82966, -1.74043, -0.136279, -1.3308, -0.245434, 1.73907, -2.39881, -1.90585, 6.49987, 0.75386, -2.94553, -2.9481, -9.40768, 1.90585, -0.0771985, -0.75386, 2.15129, 2.15317, 1.64495, 7.20714, -1.19395, 7.722}, {0.198561, 0.198734, 1.94068, 0, -1.60567, 0, 1.54187, 1.54321, -0.609885, 5.22128, 0.408838, 3.99239, -0.245434, 1.73907, -2.39881, -1.90585, 0.0771985, 0.75386, -2.15129, -2.15317, -1.64495, 1.11161, -0.872135, -8.51658, 2.15129, 8.57584, 1.64495, -5.92203, -7.91192, 4.83836}, {-1.34911, 3.4086, 1.4084, 1.74422, 0.694821, 0.910847, -1.68823, -0.836265, 0.836265, -0.505685, 1.27764, -1.27764, -9.68869, -2.23371, -4.18896, -0.0691986, 0.174835, -2.15955, 8.28384, 5.78316, -3.79845, 2.09194, -5.28541, 7.27013, -1.53091, -2.4381, 0.453387, 2.71183, -0.545574, 0.545574}, {0.449702, -1.1362, -0.469468, -5.23265, -2.08446, -2.73254, -1.68823, -0.836265, 0.836265, -0.505685, 1.27764, -1.27764, -4.51064, 5.09037, 1.3323, 6.68373, 3.5199, -5.50461, 1.53091, 2.4381, -0.453387, 0.0691986, -0.174835, 2.15955, 0.49183, -7.54868, 5.56396, 2.71183, -0.545574, 0.545574}, {0.449702, -1.1362, -0.469468, 1.74422, 0.694821, 0.910847, 5.0647, 2.5088, -2.5088, -0.505685, 1.27764, -1.27764, -2.71183, 0.545574, -0.545574, -7.04606, -2.60445, -5.80294, -0.267898, 6.9829, 1.42448, 0.0691986, -0.174835, 2.15955, -1.53091, -2.4381, 0.453387, 4.73457, -5.65615, 5.65615}, {0.449702, -1.1362, -0.469468, 1.74422, 0.694821, 0.910847, -1.68823, -0.836265, 0.836265, 1.51705, -3.83293, 3.83293, -2.71183, 0.545574, -0.545574, -0.0691986, 0.174835, -2.15955, 1.53091, 2.4381, -0.453387, -1.72961, 4.36997, 4.03742, -8.50777, -5.21739, -3.19, 9.46476, 2.79949, -2.79949}, {-6.58175, 1.32414, -1.32414, -0.505685, 1.27764, -1.27764, 0.857073, 0.177676, 2.16545, -2.54531, -1.01394, -1.32918, -0.0640323, -6.14426, 6.14426, -0.43434, -1.79887, -1.09739, -7.19952, -0.384749, -11.884, 10.6156, 5.85464, 6.41412, 3.77123, -0.325955, 3.22222, 2.08677, 1.03368, -1.03368}, {2.19392, -0.441379, 0.441379, 1.51705, -3.83293, 3.83293, 0.857073, 0.177676, 2.16545, -2.54531, -1.01394, -1.32918, -10.8624, 0.731834, -0.731834, -3.86263, -2.50958, -9.75919, -3.77123, 0.325955, -3.22222, 0.43434, 1.79887, 1.09739, 13.9525, 3.72981, 8.53895, 2.08677, 1.03368, -1.03368}, {2.19392, -0.441379, 0.441379, -0.505685, 1.27764, -1.27764, -2.57122, -0.533028, -6.49635, -2.54531, -1.01394, -1.32918, -2.08677, -1.03368, 1.03368, 1.5884, -6.90945, 4.01319, -12.5469, 2.09147, -4.98773, 0.43434, 1.79887, 1.09739, 3.77123, -0.325955, 3.22222, 12.268, 5.08945, 4.28305}, {2.19392, -0.441379, 0.441379, -0.505685, 1.27764, -1.27764, 0.857073, 0.177676, 2.16545, 7.63592, 3.04182, 3.98755, -2.08677, -1.03368, 1.03368, -0.43434, -1.79887, -1.09739, -3.77123, 0.325955, -3.22222, -8.34133, 3.56439, -0.668128, 5.79397, -5.43653, 8.33279, -1.34152, 0.322977, -9.69548}, {5.63148, -7.39306, 3.82293, -0.845027, -3.02792, 0.845027, 1.29407, 2.43841, 1.8574, 1.42811, -1.87484, -1.42811, 6.74491, 12.8083, -2.84948, -0.55505, 0.728676, -3.34038, -4.45555, -15.8138, -8.15032, -5.15741, 6.7707, 9.05284, -0.720736, 6.06015, 0.720736, -3.36481, -0.696607, -0.530622}, {-1.87716, 2.46435, -1.27431, 2.53508, 9.08376, -2.53508, 1.29407, 2.43841, 1.8574, 1.42811, -1.87484, -1.42811, 10.8734, -9.16081, 5.62786, -5.73134, -9.02497, -10.77, 0.720736, -6.06015, -0.720736, 0.55505, -0.728676, 3.34038, -6.43319, 13.5595, 6.43319, -3.36481, -0.696607, -0.530622}, {-1.87716, 2.46435, -1.27431, -0.845027, -3.02792, 0.845027, -3.88221, -7.31523, -5.57219, 1.42811, -1.87484, -1.42811, 3.36481, 0.696607, 0.530622, 2.82506, 12.8404, -6.72049, 8.22937, -15.9176, 4.3765, 0.55505, -0.728676, 3.34038, -0.720736, 6.06015, 0.720736, -9.07726, 6.80277, 5.18184}, {-1.87716, 2.46435, -1.27431, -0.845027, -3.02792, 0.845027, 1.29407, 2.43841, 1.8574, -4.28434, 5.62453, 4.28434, 3.36481, 0.696607, 0.530622, -0.55505, 0.728676, -3.34038, 0.720736, -6.06015, -0.720736, 8.06369, -10.5861, 8.43762, 2.65937, 18.1718, -2.65937, -8.54109, -10.4502, -7.96021}, {0, 9.45441, 0, 1.78834, 1.78885, 1.78885, -3.15057, 0, 0, 1.36222, 1.36261, -1.78885, -9.36389, -5.47113, -9.36656, 1.6838, -2.21115, -2.21115, 16.4966, 3.89543, -4.44089e-16, -7.1327, -3.23931, 9.36656, -3.89432, -3.89543, 4.44089e-16, 2.21051, -1.68428, 2.21115}, {2.22045e-16, -3.15147, 2.22045e-16, -5.36503, -5.36656, -5.36656, -3.15057, 0, 0, 1.36222, 1.36261, -1.78885, -2.21051, 14.2902, -2.21115, 14.2861, -2.21115, -2.21115, 3.89432, 3.89543, -4.44089e-16, -1.6838, 2.21115, 2.21115, -9.34321, -9.34589, 7.15542, 2.21051, -1.68428, 2.21115}, {-8.88178e-16, -3.15147, 0, 1.78834, 1.78885, 1.78885, 9.4517, 0, 0, 1.36222, 1.36261, -1.78885, -2.21051, 1.68428, -2.21115, -5.46957, -9.36656, -9.36656, 3.89432, 16.5013, 0, -1.6838, 2.21115, 2.21115, -3.89432, -3.89543, 0, -3.23838, -7.13474, 9.36656}, {4.44089e-16, -3.15147, -2.22045e-16, 1.78834, 1.78885, 1.78885, -3.15057, 0, 0, -4.08667, -4.08784, 5.36656, -2.21051, 1.68428, -2.21115, 1.6838, -2.21115, -2.21115, 3.89432, 3.89543, 0, -1.6838, 14.817, 2.21115, -11.0477, -11.0508, -7.15542, 14.8128, -1.68428, 2.21115}, {-5.36656, 5.36656, -5.36656, 2.79907e-15, 3.15147, 3.33475e-16, -1.78885, -1.36261, 1.36261, 0, 0, -3.15147, -2.21115, -14.2902, -2.21115, 2.21115, -2.21115, -1.68428, 7.15542, 9.34589, -9.34589, -2.21115, 2.21115, 14.2902, -3.45984e-15, -3.89543, 3.89543, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, -4.1986e-15, -9.45441, 1.0595e-14, -1.78885, -1.36261, 1.36261, 0, 0, -3.15147, -9.36656, 5.47113, -9.36656, 9.36656, 3.23931, -7.13474, 1.28583e-15, 3.89543, -3.89543, -2.21115, 2.21115, 1.68428, -1.72992e-15, -3.89543, 16.5013, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 5.36656, 4.08784, -4.08784, 0, 0, -3.15147, -2.21115, -1.68428, -2.21115, 2.21115, -14.817, -1.68428, -7.15542, 11.0508, -11.0508, -2.21115, 2.21115, 1.68428, 0, -3.89543, 3.89543, 2.21115, 1.68428, 14.817}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 2.46559e-15, -1.78885, -1.36261, 1.36261, 0, 0, 9.45441, -2.21115, -1.68428, -2.21115, 2.21115, -2.21115, -1.68428, -4.44089e-16, 3.89543, -3.89543, -9.36656, 9.36656, -5.47113, 0, -16.5013, 3.89543, 9.36656, 7.13474, -3.23931}, {7.01844, 1.17551e-15, 0, 2.33948, 2.34313, -1.78885, 0, -2.34313, 0, -7.30165e-12, -6.9197e-12, 1.78885, -9.35791, -12.2688, 9.36656, -2.89175, -8.55405e-12, 2.21115, 2.89175, 12.2688, 0, 2.89175, 3.62329e-11, -9.36656, -2.89175, -2.89626, 0, 9.02534e-12, 2.89626, -2.21115}, {-2.33948, -1.95894e-17, 0, -7.01844, -7.02938, 5.36656, 0, -2.34313, 0, -7.30373e-12, -6.92022e-12, 1.78885, 9.35791, -2.89626, 2.21115, -2.89175, 9.3725, 2.21115, 2.89175, 2.89626, 0, 2.89175, 8.5536e-12, -2.21115, -2.89175, -2.89626, -7.15542, 9.02791e-12, 2.89626, -2.21115}, {-2.33948, 1.32789e-16, -4.44089e-16, 2.33948, 2.34313, -1.78885, 0, 7.02938, 0, -7.30321e-12, -6.92126e-12, 1.78885, -9.02668e-12, -2.89626, 2.21115, -12.2497, -9.3725, 9.36656, 12.2497, 2.89626, 1.77636e-15, 2.89175, 8.55493e-12, -2.21115, -2.89175, -2.89626, -4.44089e-16, 3.82401e-11, 2.89626, -9.36656}, {-2.33948, -8.31579e-16, -4.44089e-16, 2.33948, 2.34313, -1.78885, 0, -2.34313, 0, 2.19143e-11, 2.07622e-11, -5.36656, -9.02861e-12, -2.89626, 2.21115, -2.89175, -8.55538e-12, 2.21115, 2.89175, 2.89626, 4.44089e-16, 12.2497, 8.55648e-12, -2.21115, -12.2497, -12.2688, 7.15542, 9.02919e-12, 12.2688, -2.21115}, {-1.00651, -1.00808, 6.45666, -0.481765, 1.86061, -0.736419, 0.984821, -1.35677, 2.55622, -0.83856, -0.839867, 0.332415, 2.10785, -10.1576, 6.51623, -0.62181, -0.62278, -2.2494, -5.57129, 6.68879, -10.7243, 3.97605, 3.98225, 0.919744, 1.63201, -1.26171, 0.499377, -0.180789, 2.71519, -3.57055}, {0.335504, 0.336027, -2.15222, 1.4453, -5.58183, 2.20926, 0.984821, -1.35677, 2.55622, -0.83856, -0.839867, 0.332415, -1.16123, -4.0593, 12.1794, -4.56109, 4.8043, -12.4743, -1.63201, 1.26171, -0.499377, 0.62181, 0.62278, 2.2494, 4.98625, 2.09776, -0.830282, -0.180789, 2.71519, -3.57055}, {0.335504, 0.336027, -2.15222, -0.481765, 1.86061, -0.736419, -2.95446, 4.07031, -7.66867, -0.83856, -0.839867, 0.332415, 0.180789, -2.71519, 3.57055, 1.30525, -8.06522, 0.696272, -2.97403, -0.0824032, 8.1095, 0.62181, 0.62278, 2.2494, 1.63201, -1.26171, 0.499377, 3.17345, 6.07466, -4.90021}, {0.335504, 0.336027, -2.15222, -0.481765, 1.86061, -0.736419, 0.984821, -1.35677, 2.55622, 2.51568, 2.5196, -0.997244, 0.180789, -2.71519, 3.57055, -0.62181, -0.62278, -2.2494, -1.63201, 1.26171, -0.499377, -0.720207, -0.72133, 10.8583, 3.55907, -8.70414, 3.44505, -4.12007, 8.14227, -13.7954}, {5.36656, -5.48024e-11, 5.58682e-11, 1.78885, -2.34313, 2.34313, 0, 2.34313, 0, 0, 0, -2.34313, -7.15542, 12.2688, -12.2688, -2.21115, 2.25797e-11, -2.89626, 2.21115, -12.2688, 2.30194e-11, 2.21115, -2.25797e-11, 12.2688, -2.21115, 2.89626, -2.30194e-11, 0, -2.89626, 2.89626}, {-1.78885, 1.21112e-11, -1.24669e-11, -5.36656, 7.02938, -7.02938, 0, 2.34313, 1.36297e-15, 0, 0, -2.34313, 7.15542, 2.89626, -2.89626, -2.21115, -9.3725, -2.89626, 2.21115, -2.89626, 1.54086e-11, 2.21115, -1.49702e-11, 2.89626, -2.21115, 2.89626, 9.3725, 0, -2.89626, 2.89626}, {-1.78885, 1.21094e-11, -1.24669e-11, 1.78885, -2.34313, 2.34313, 0, -7.02938, 0, 0, 0, -2.34313, 4.44089e-16, 2.89626, -2.89626, -9.36656, 9.3725, -12.2688, 9.36656, -2.89626, 6.52776e-11, 2.21115, -1.49685e-11, 2.89626, -2.21115, 2.89626, -1.54099e-11, 0, -2.89626, 12.2688}, {-1.78885, 1.21099e-11, -1.24638e-11, 1.78885, -2.34313, 2.34313, 0, 2.34313, 0, 0, 0, 7.02938, 4.44089e-16, 2.89626, -2.89626, -2.21115, 1.49689e-11, -2.89626, 2.21115, -2.89626, 1.54063e-11, 9.36656, -6.34088e-11, 2.89626, -9.36656, 12.2688, -9.3725, 0, -12.2688, 2.89626}, {5.09908, -2.42192, -2.42638, -0.488904, -1.23525, -1.23482, 1.75382, -0.670557, 0.933579, 0.434779, 1.0985, -0.507552, 4.66087, 5.46995, 5.46587, -1.56352, 2.3557, 0.372353, -7.08218, 2.51319, -5.888, -0.175592, -6.74968, 1.65786, 0.0669023, 0.169033, 2.15369, -2.70526, -0.528962, -0.526598}, {-1.69969, 0.807307, 0.808792, 1.46671, 3.70574, 3.70446, 1.75382, -0.670557, 0.933579, 0.434779, 1.0985, -0.507552, 9.50403, -2.70027, -2.70857, -8.5788, 5.03793, -3.36196, -0.0669023, -0.169033, -2.15369, 1.56352, -2.3557, -0.372353, -1.67221, -4.22495, 4.1839, -2.70526, -0.528962, -0.526598}, {-1.69969, 0.807307, 0.808792, -0.488904, -1.23525, -1.23482, -5.26146, 2.01167, -2.80074, 0.434779, 1.0985, -0.507552, 2.70526, 0.528962, 0.526598, 0.392092, 7.29669, 5.31163, 6.73188, -3.39826, -5.38886, 1.56352, -2.3557, -0.372353, 0.0669023, 0.169033, 2.15369, -4.44437, -4.92294, 1.50361}, {-1.69969, 0.807307, 0.808792, -0.488904, -1.23525, -1.23482, 1.75382, -0.670557, 0.933579, -1.30434, -3.29549, 1.52266, 2.70526, 0.528962, 0.526598, -1.56352, 2.3557, 0.372353, -0.0669023, -0.169033, -2.15369, 8.3623, -5.58493, -3.60752, 2.02252, 5.11002, 7.09296, -9.72053, 2.15326, -4.26091}, {-2.57735, 0.513092, -6.51263, -2.5578, 0.977952, -1.36155, -0.488614, -1.23536, -1.23466, 2.1873, 0.428435, 0.425336, 12.3309, -4.90922, 4.44581, 3.76558, 0.31817, 3.2091, 1.49649, 6.67982, 3.78144, -12.5148, -2.03191, -4.91044, 0.457966, -1.73839, 1.15722, -2.09969, 0.99741, 1.00039}, {0.859116, -0.171031, 2.17088, 7.67341, -2.93386, 4.08465, -0.488614, -1.23536, -1.23466, 2.1873, 0.428435, 0.425336, -1.33677, -0.313288, -9.6839, 5.72003, 5.2596, 8.14775, -0.457966, 1.73839, -1.15722, -3.76558, -0.31817, -3.2091, -8.29124, -3.45213, -0.54412, -2.09969, 0.99741, 1.00039}, {0.859116, -0.171031, 2.17088, -2.5578, 0.977952, -1.36155, 1.46584, 3.70607, 3.70399, 2.1873, 0.428435, 0.425336, 2.09969, -0.99741, -1.00039, 13.9968, -3.59364, 8.65529, -3.89443, 2.42251, -9.84073, -3.76558, -0.31817, -3.2091, 0.457966, -1.73839, 1.15722, -10.8489, -0.716331, -0.700957}, {0.859116, -0.171031, 2.17088, -2.5578, 0.977952, -1.36155, -0.488614, -1.23536, -1.23466, -6.5619, -1.28531, -1.27601, 2.09969, -0.99741, -1.00039, 3.76558, 0.31817, 3.2091, -0.457966, 1.73839, -1.15722, -7.20204, 0.365952, -11.8926, 10.6892, -5.6502, 6.60342, -0.145237, 5.93884, 5.93904}, {4.08784, 4.08784, -5.36656, -1.78885, -1.78885, -1.78885, 3.15147, 2.46559e-15, 0, 0, 3.15147, 0, 11.0508, 11.0508, 7.15542, -1.68428, 2.21115, 2.21115, -14.817, 1.68428, -2.21115, 1.68428, -14.817, -2.21115, 2.21115, -1.68428, 2.21115, -3.89543, -3.89543, 0}, {-1.36261, -1.36261, 1.78885, 5.36656, 5.36656, 5.36656, 3.15147, 0, 0, -2.46559e-15, 3.15147, 0, 9.34589, 9.34589, -7.15542, -14.2902, 2.21115, 2.21115, -2.21115, 1.68428, -2.21115, 1.68428, -2.21115, -2.21115, 2.21115, -14.2902, 2.21115, -3.89543, -3.89543, 0}, {-1.36261, -1.36261, 1.78885, -1.78885, -1.78885, -1.78885, -9.45441, 0, 0, 0, 3.15147, 0, 3.89543, 3.89543, -4.44089e-16, 5.47113, 9.36656, 9.36656, 3.23931, 7.13474, -9.36656, 1.68428, -2.21115, -2.21115, 2.21115, -1.68428, 2.21115, -3.89543, -16.5013, 0}, {-1.36261, -1.36261, 1.78885, -1.78885, -1.78885, -1.78885, 3.15147, 2.46559e-15, 0, 0, -9.45441, 0, 3.89543, 3.89543, -4.44089e-16, -1.68428, 2.21115, 2.21115, -2.21115, 1.68428, -2.21115, 7.13474, 3.23931, -9.36656, 9.36656, 5.47113, 9.36656, -16.5013, -3.89543, 0}, {-4.7272, 4.72585, -4.72855, -1.57528, -1.57573, -1.57573, 1.57528, 1.57573, -1.57573, -1.57573, 1.57528, 1.57528, 6.30058, 10.1978, 6.30238, 2.11209e-12, -2.11142e-12, 3.89543, -10.196, -6.30349, 6.30238, 6.30294, -6.30114, -10.1966, 3.89487, 0.000556685, 0.000556685, 0.000556685, -3.89487, 0.000556844}, {1.57573, -1.57528, 1.57618, 4.72585, 4.7272, 4.7272, 1.57528, 1.57573, -1.57573, -1.57573, 1.57528, 1.57528, -6.30349, 10.196, -6.3053, -6.30114, -6.30294, 10.1984, -3.89487, -0.000556685, -0.000556685, -2.11226e-12, 2.1147e-12, -3.89543, 10.1978, -6.30058, -6.30058, 0.000556685, -3.89487, 0.000556844}, {1.57573, -1.57528, 1.57618, -1.57528, -1.57573, -1.57573, -4.72585, -4.7272, 4.7272, -1.57573, 1.57528, 1.57528, -0.000556685, 3.89487, -0.000556844, 6.30114, 6.30294, 10.1984, -10.1978, 6.30058, -6.3053, -2.11559e-12, 2.1147e-12, -3.89543, 3.89487, 0.000556685, 0.000556685, 6.30349, -10.196, -6.30058}, {1.57573, -1.57528, 1.57618, -1.57528, -1.57573, -1.57573, 1.57528, 1.57573, -1.57573, 4.7272, -4.72585, -4.72585, -0.000556685, 3.89487, -0.000556844, 2.11831e-12, -2.1172e-12, 3.89543, -3.89487, -0.000556685, -0.000556685, -6.30294, 6.30114, -10.2002, 10.196, 6.30349, 6.30349, -6.30058, -10.1978, 6.30349}, {-5.22554, -0.410098, 3.98943, -1.54312, -1.54218, -0.61076, 3.95893e-17, 1.60497, -3.86599e-16, -0.198723, -0.199483, 1.94057, 5.92686, 7.906, 4.84171, 1.90741, -0.0776051, 0.754941, -2.15304, -8.57268, 1.64373, -1.11252, 0.875539, -8.51722, 2.15304, 2.15282, -1.64373, 0.245635, -1.73727, -2.39867}, {1.74185, 0.136699, -1.32981, 4.62937, 4.62655, 1.83228, 1.18768e-16, 1.60497, -1.1598e-15, -0.198723, -0.199483, 1.94057, -7.21302, 1.19047, 7.71791, 1.90741, -6.49747, 0.754941, -2.15304, -2.15282, 1.64373, -1.90741, 0.0776051, -0.754941, 2.94793, 2.95075, -9.40601, 0.245635, -1.73727, -2.39867}, {1.74185, 0.136699, -1.32981, -1.54312, -1.54218, -0.61076, 0, -4.8149, 0, -0.198723, -0.199483, 1.94057, -0.245635, 1.73727, 2.39867, 8.0799, 6.09113, 3.19798, -9.12042, -2.69962, 6.96297, -1.90741, 0.0776051, -0.754941, 2.15304, 2.15282, -1.64373, 1.04052, -0.939339, -10.1609}, {1.74185, 0.136699, -1.32981, -1.54312, -1.54218, -0.61076, -1.18768e-16, 1.60497, 1.1598e-15, 0.596168, 0.59845, -5.82171, -0.245635, 1.73727, 2.39867, 1.90741, -0.0776051, 0.754941, -2.15304, -2.15282, 1.64373, -8.87479, -0.469193, 4.5643, 8.32553, 8.32155, 0.799305, 0.245635, -8.15714, -2.39867}, {4.63127, 4.6267, 1.83083, -2.54134, -0.199443, 1.94018, 1.74197, 1.74168, -1.3299, 2.34313, 0, 0, 15.2148, 2.9506, -9.40456, 0.988073, -1.9063, -0.754342, -7.21287, -7.21323, 7.7178, -10.3606, 1.9063, 0.754342, 0.245001, 0.246525, -2.39819, -5.04945, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, 7.62401, 0.598329, -5.82053, 1.74197, 1.74168, -1.3299, 2.34313, -1.01311e-15, 7.73589e-16, 11.2245, 8.32176, 0.797254, -5.9798, -8.87301, 4.56526, -0.245001, -0.246525, 2.39819, -0.988073, 1.9063, 0.754342, -9.1275, 0.246525, -2.39819, -5.04945, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, -2.54134, -0.199443, 1.94018, -5.2259, -5.22503, 3.9897, 2.34313, 0, 0, 5.04945, 2.15283, -1.64385, 11.1534, -1.10853, -8.51505, 5.93003, 5.92241, 4.83929, -0.988073, 1.9063, 0.754342, 0.245001, 0.246525, -2.39819, -14.422, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, -2.54134, -0.199443, 1.94018, 1.74197, 1.74168, -1.3299, -7.02938, 0, 0, 5.04945, 2.15283, -1.64385, 0.988073, -1.9063, -0.754342, -0.245001, -0.246525, 2.39819, 5.18696, 8.07523, 3.19544, 10.4103, 1.0443, -10.1589, -12.0173, -9.11953, 6.96345}, {4.33994, 1.90929, -1.71772, 1.45453e-15, 1.35003, 1.01047e-16, 1.36e-12, -0.731398, -2.01922, 1.44665, 0.0177991, 1.44665, 1.78815, -6.28218, -0.707741, -1.68285e-12, -0.764672, 2.4959, 1.78815, 4.61632, 9.86504, -5.78659, 0.693475, -8.28248, -1.78815, -1.69073, -1.78815, -1.78815, 0.882056, 0.707741}, {-1.44665, -0.636431, 0.572575, -4.36359e-15, -4.05009, -2.33336e-15, 1.35855e-12, -0.731398, -2.01922, 1.44665, 0.0177991, 1.44665, 7.57474, 1.66367, -2.99804, -7.11526e-12, 2.16092, 10.5728, 1.78815, 1.69073, 1.78815, 1.68142e-12, 0.764672, -2.4959, -7.57474, -1.76193, -7.57474, -1.78815, 0.882056, 0.707741}, {-1.44665, -0.636431, 0.572575, 0, 1.35003, 0, -4.08128e-12, 2.19419, 6.05767, 1.44665, 0.0177991, 1.44665, 1.78815, -0.882056, -0.707741, -1.68158e-12, -6.16479, 2.4959, 7.57474, 4.23646, -0.502145, 1.68194e-12, 0.764672, -2.4959, -1.78815, -1.69073, -1.78815, -7.57474, 0.81086, -5.07885}, {-1.44665, -0.636431, 0.572575, -4.84843e-16, 1.35003, -4.84843e-16, 1.3596e-12, -0.731398, -2.01922, -4.33994, -0.0533972, -4.33994, 1.78815, -0.882056, -0.707741, -1.67996e-12, -0.764672, 2.4959, 1.78815, 1.69073, 1.78815, 5.78659, 3.3104, -4.7862, -1.78815, -7.09085, -1.78815, -1.78815, 3.80765, 8.78463}, {-3.79117, -3.78885, -1.50052, 0.577052, -1.02738, -1.79083, -1.45233, 0.153525, -0.574823, -0.388446, -0.389091, 1.86548, -4.58353, 3.81836, 8.75865, 1.0819, 1.08015, 2.92411, 6.04244, -2.36496, 2.39156, 0.471884, 0.476215, -10.386, -0.233129, 1.75086, -0.0922713, 2.27532, 0.291177, -1.59534}, {1.26372, 1.26295, 0.500174, -1.73116, 3.08215, 5.37248, -1.45233, 0.153525, -0.574823, -0.388446, -0.389091, 1.86548, -7.33021, -5.34298, -0.40536, 6.89121, 0.466052, 5.2234, 0.233129, -1.75086, 0.0922713, -1.0819, -1.08015, -2.92411, 1.32066, 3.30723, -7.55418, 2.27532, 0.291177, -1.59534}, {1.26372, 1.26295, 0.500174, 0.577052, -1.02738, -1.79083, 4.35698, -0.460574, 1.72447, -0.388446, -0.389091, 1.86548, -2.27532, -0.291177, 1.59534, -1.22631, 5.18969, 10.0874, -4.82176, -6.80267, -1.90843, -1.0819, -1.08015, -2.92411, -0.233129, 1.75086, -0.0922713, 3.82911, 1.84754, -9.05724}, {1.26372, 1.26295, 0.500174, 0.577052, -1.02738, -1.79083, -1.45233, 0.153525, -0.574823, 1.16534, 1.16727, -5.59643, -2.27532, -0.291177, 1.59534, 1.0819, 1.08015, 2.92411, 0.233129, -1.75086, 0.0922713, -6.13679, -6.13196, -4.9248, -2.54134, 5.8604, 7.07104, 8.08463, -0.322922, 0.703957}, {2.52504, -4.49559, -7.83624, 1.26389, 1.26265, 0.49964, -0.875592, -0.873298, -2.36467, 0.453379, -1.88788, -0.747051, -5.57746, -8.46358, -5.84486, -0.479968, -0.48126, 2.3053, 5.62503, 2.72036, 9.15287, -1.33355, 8.03278, 0.682901, -2.12267, 0.772832, 0.305817, 0.521884, 3.413, 3.8463}, {-0.841681, 1.49853, 2.61208, -3.79168, -3.78794, -1.49892, -0.875592, -0.873298, -2.36467, 0.453379, -1.88788, -0.747051, 2.84484, -9.40713, -14.2946, 3.0224, 3.01193, 11.764, 2.12267, -0.772832, -0.305817, 0.479968, 0.48126, -2.3053, -3.93618, 8.32435, 3.29402, 0.521884, 3.413, 3.8463}, {-0.841681, 1.49853, 2.61208, 1.26389, 1.26265, 0.49964, 2.62678, 2.61989, 7.09401, 0.453379, -1.88788, -0.747051, -0.521884, -3.413, -3.8463, -5.53554, -5.53184, 0.306743, 5.48939, -6.76696, -10.7541, 0.479968, 0.48126, -2.3053, -2.12267, 0.772832, 0.305817, -1.29163, 10.9645, 6.8345}, {-0.841681, 1.49853, 2.61208, 1.26389, 1.26265, 0.49964, -0.875592, -0.873298, -2.36467, -1.36014, 5.66364, 2.24115, -0.521884, -3.413, -3.8463, -0.479968, -0.48126, 2.3053, 2.12267, -0.772832, -0.305817, 3.84669, -5.51287, -12.7536, -7.17824, -4.27775, -1.69274, 4.02425, 6.90619, 13.305}, {5.37846, -0.954422, 1.65136, 0.482922, -1.73161, -0.484335, 0.65353, 0.326507, 1.69088, 0.656368, 1.08696, -0.656093, -0.312565, 8.67359, 3.21641, -1.40473, 1.7368, -1.49137, -1.20588, -2.10286, -8.17318, -1.22074, -6.08465, 4.11575, -1.40824, 0.796829, 1.40965, -1.61912, -1.74715, -1.27907}, {-1.79282, 0.318141, -0.550454, -1.44877, 5.19483, 1.45301, 0.65353, 0.326507, 1.69088, 0.656368, 1.08696, -0.656093, 8.7904, 0.474582, 3.48088, -4.01885, 0.430774, -8.2549, 1.40824, -0.796829, -1.40965, 1.40473, -1.7368, 1.49137, -4.03371, -3.55102, 4.03402, -1.61912, -1.74715, -1.27907}, {-1.79282, 0.318141, -0.550454, 0.482922, -1.73161, -0.484335, -1.96059, -0.979522, -5.07265, 0.656368, 1.08696, -0.656093, 1.61912, 1.74715, 1.27907, -3.33642, 8.66325, 0.445966, 8.57952, -2.06939, 0.792169, 1.40473, -1.7368, 1.49137, -1.40824, 0.796829, 1.40965, -4.24459, -6.095, 1.3453}, {-1.79282, 0.318141, -0.550454, 0.482922, -1.73161, -0.484335, 0.65353, 0.326507, 1.69088, -1.9691, -3.26089, 1.96828, 1.61912, 1.74715, 1.27907, -1.40473, 1.7368, -1.49137, 1.40824, -0.796829, -1.40965, 8.57601, -3.00937, 3.69319, -3.33993, 7.72327, 3.34699, -4.23324, -3.05317, -8.0426}, {-8.19974, -2.81226, -4.15773, 1.49846, -0.593081, -0.985836, -2.7214, 1.07711, -0.607179, -1.5103, -1.42145, 0.207104, -11.2245, 1.9467, 3.44883, 1.51164, -0.598298, 1.96907, 10.8709, -6.79856, 1.46615, 4.52957, 6.28411, -2.79749, 0.0146435, 2.4901, 0.962565, 5.23067, 0.425625, 0.494519}, {2.73325, 0.937419, 1.38591, -4.49537, 1.77924, 2.95751, -2.7214, 1.07711, -0.607179, -1.5103, -1.42145, 0.207104, -16.1637, -4.1753, -6.03816, 12.3972, -4.90676, 4.39779, -0.0146435, -2.4901, -0.962565, -1.51164, 0.598298, -1.96907, 6.05586, 8.17591, 0.134147, 5.23067, 0.425625, 0.494519}, {2.73325, 0.937419, 1.38591, 1.49846, -0.593081, -0.985836, 8.16419, -3.23134, 1.82154, -1.5103, -1.42145, 0.207104, -5.23067, -0.425625, -0.494519, -4.48219, 1.77402, 5.91242, -10.9476, -6.23977, -6.50621, -1.51164, 0.598298, -1.96907, 0.0146435, 2.4901, 0.962565, 11.2719, 6.11143, -0.333899}, {2.73325, 0.937419, 1.38591, 1.49846, -0.593081, -0.985836, -2.7214, 1.07711, -0.607179, 4.53091, 4.26436, -0.621313, -5.23067, -0.425625, -0.494519, 1.51164, -0.598298, 1.96907, -0.0146435, -2.4901, -0.962565, -12.4446, -3.15138, -7.51272, -5.97918, 4.86242, 4.90591, 16.1163, -3.88283, 2.92323}, {-8.88178e-16, -2.39835, -6.05767, -3.06161e-16, 0.53318, -2.01922, -1.31177, -0.650588, 1.29879, 1.31177, -0.68204, -1.29879, 1.33227e-15, -3.77994, 8.07689, 1.62143, 0.145125, 0.890503, 6.86849, 2.41835, -9.29645, -6.86849, 2.58304, 4.30465, -1.62143, 0.184002, 4.10129, 0, 1.64722, 0}, {-2.22045e-16, 0.799449, 2.01922, -9.18483e-16, -1.59954, 6.05767, -1.31177, -0.650588, 1.29879, 1.31177, -0.68204, -1.29879, 8.88178e-16, -4.84502, -8.07689, 6.86849, 2.74748, -4.30465, 1.62143, -0.184002, -4.10129, -1.62143, -0.145125, -0.890503, -6.86849, 2.91216, 9.29645, 0, 1.64722, 0}, {1.77636e-15, 0.799449, 2.01922, -2.08189e-15, 0.53318, -2.01922, 3.9353, 1.95177, -3.89637, 1.31177, -0.68204, -1.29879, 2.22045e-16, -1.64722, -6.66134e-16, 1.62143, -1.98759, 8.96739, 1.62143, -3.3818, -12.1782, -1.62143, -0.145125, -0.890503, -1.62143, 0.184002, 4.10129, -5.24706, 4.37538, 5.19516}, {-6.66134e-16, 0.799449, 2.01922, 1.04095e-15, 0.53318, -2.01922, -1.31177, -0.650588, 1.29879, -3.9353, 2.04612, 3.89637, -6.66134e-16, -1.64722, -2.22045e-16, 1.62143, 0.145125, 0.890503, 1.62143, -0.184002, -4.10129, -1.62143, -3.34292, -8.96739, -1.62143, -1.94872, 12.1782, 5.24706, 4.24957, -5.19516}, {1.77636e-15, 0, 9.45441, 1.36261, 1.78885, 1.36261, 1.78885, -1.78885, 1.78885, -3.15147, 0, 0, -7.13474, -9.36656, -3.23931, -3.89543, 0, -3.89543, -9.36656, 9.36656, -5.47113, 16.5013, 0, 3.89543, 2.21115, -2.21115, -1.68428, 1.68428, 2.21115, -2.21115}, {4.44089e-16, -4.44089e-16, -3.15147, -4.08784, -5.36656, -4.08784, 1.78885, -1.78885, 1.78885, -3.15147, 0, 0, -1.68428, -2.21115, 14.817, -11.0508, 7.15542, -11.0508, -2.21115, 2.21115, 1.68428, 3.89543, 8.88178e-16, 3.89543, 14.817, -2.21115, -1.68428, 1.68428, 2.21115, -2.21115}, {4.44089e-16, 4.44089e-16, -3.15147, 1.36261, 1.78885, 1.36261, -5.36656, 5.36656, -5.36656, -3.15147, 0, 0, -1.68428, -2.21115, 2.21115, -9.34589, -7.15542, -9.34589, -2.21115, 2.21115, 14.2902, 3.89543, -4.44089e-16, 3.89543, 2.21115, -2.21115, -1.68428, 14.2902, 2.21115, -2.21115}, {0, 2.22045e-16, -3.15147, 1.36261, 1.78885, 1.36261, 1.78885, -1.78885, 1.78885, 9.45441, 0, 0, -1.68428, -2.21115, 2.21115, -3.89543, 4.44089e-16, -3.89543, -2.21115, 2.21115, 1.68428, 3.89543, -1.77636e-15, 16.5013, -3.23931, -9.36656, -7.13474, -5.47113, 9.36656, -9.36656}, {-2.46108, 3.54412, -0.0109738, -0.670026, 0.174063, -1.44271, 0.904569, 1.43103, -0.00443094, -1.0549, -0.423716, 1.44348, 2.49428, 0.548851, 7.54959, -0.28991, -1.984, 1.78876, -5.7504, -6.03269, 0.0186792, 4.50952, 3.67886, -7.56268, 2.13213, 0.308587, -0.000955489, 0.185824, -1.2451, -1.77876}, {0.820361, -1.18137, 0.00365793, 2.01008, -0.52219, 4.32812, 0.904569, 1.43103, -0.00443094, -1.0549, -0.423716, 1.44348, -3.46727, 5.9706, 1.76413, -3.90819, -7.7081, 1.80648, -2.13213, -0.308587, 0.000955489, 0.28991, 1.984, -1.78876, 6.35174, 2.00345, -5.77487, 0.185824, -1.2451, -1.77876}, {0.820361, -1.18137, 0.00365793, -0.670026, 0.174063, -1.44271, -2.71371, -4.29308, 0.0132928, -1.0549, -0.423716, 1.44348, -0.185824, 1.2451, 1.77876, 2.39019, -2.68025, 7.55959, -5.41357, 4.41691, -0.0136762, 0.28991, 1.984, -1.78876, 2.13213, 0.308587, -0.000955489, 4.40544, 0.449758, -7.55268}, {0.820361, -1.18137, 0.00365793, -0.670026, 0.174063, -1.44271, 0.904569, 1.43103, -0.00443094, 3.16471, 1.27115, -4.33044, -0.185824, 1.2451, 1.77876, -0.28991, -1.984, 1.78876, -2.13213, -0.308587, 0.000955489, -2.99153, 6.7095, -1.80339, 4.81224, -0.387667, 5.76987, -3.43245, -6.96921, -1.76104}, {-4.81192, -4.81192, 0.736124, -0.501255, 1.51797, 0.85277, 0.0700522, -1.94917, 0.533356, -1.17277, -1.17277, -1.14075, 0.641985, -9.9308, -4.16186, 0.532996, 0.532996, -1.71335, -2.34942, 8.22336, -2.48939, 4.15809, 4.15809, 6.27635, 2.06921, -0.426686, 0.355964, 1.36304, 3.85893, 0.750782}, {1.60397, 1.60397, -0.245375, 1.50376, -4.5539, -2.55831, 0.0700522, -1.94917, 0.533356, -1.17277, -1.17277, -1.14075, -7.77893, -10.2748, 0.230717, 0.252787, 8.32967, -3.84677, -2.06921, 0.426686, -0.355964, -0.532996, -0.532996, 1.71335, 6.76029, 4.2644, 4.91897, 1.36304, 3.85893, 0.750782}, {1.60397, 1.60397, -0.245375, -0.501255, 1.51797, 0.85277, -0.210157, 5.84751, -1.60007, -1.17277, -1.17277, -1.14075, -1.36304, -3.85893, -0.750782, 2.53802, -5.53887, -5.12443, -8.4851, -5.98921, 0.625534, -0.532996, -0.532996, 1.71335, 2.06921, -0.426686, 0.355964, 6.05412, 8.55001, 5.31379}, {1.60397, 1.60397, -0.245375, -0.501255, 1.51797, 0.85277, 0.0700522, -1.94917, 0.533356, 3.51831, 3.51831, 3.42225, -1.36304, -3.85893, -0.750782, 0.532996, 0.532996, -1.71335, -2.06921, 0.426686, -0.355964, -6.94889, -6.94889, 2.69484, 4.07423, -6.49855, -3.05512, 1.08283, 11.6556, -1.38264}, {-4.7272, -4.7272, -4.7272, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 6.30294, 6.30294, -10.1984, -1.8181e-12, 3.89543, -1.80878e-12, -10.1984, 6.30294, 6.30294, 6.30294, -10.1984, 6.30294, 3.89543, -1.79678e-12, -1.79323e-12, 3.77476e-15, -3.77476e-15, 3.89543}, {1.57573, 1.57573, 1.57573, 4.7272, 4.7272, -4.7272, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, -6.30294, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -3.89543, 1.79323e-12, 1.80544e-12, 1.81771e-12, -3.89543, 1.82415e-12, 10.1984, -6.30294, 6.30294, 3.55271e-15, -3.55271e-15, 3.89543}, {1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 1.57573, -4.7272, 4.7272, 4.7272, -1.57573, 1.57573, -1.57573, -3.9968e-15, 3.10862e-15, -3.89543, 6.30294, 10.1984, -6.30294, -10.1984, -6.30294, -6.30294, 1.82792e-12, -3.89543, 1.81616e-12, 3.89543, -1.80234e-12, -1.79368e-12, 6.30294, -6.30294, 10.1984}, {1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 4.7272, -4.7272, 4.7272, -2.66454e-15, 1.33227e-15, -3.89543, -1.81033e-12, 3.89543, -1.81055e-12, -3.89543, 1.80367e-12, 1.80389e-12, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -6.30294, -6.30294, 6.30294, 10.1984}, {1.77636e-15, 8.88178e-16, 3.96048, -1.97452e-12, 2.01922, 0.776088, 1.44665, -0.572575, 0.322765, -1.44665, -1.44665, 0.221307, 1.03391e-11, -10.5728, -2.43184, -1.78815, -1.78815, -1.35826, -7.57474, 2.99804, -0.0582134, 7.57474, 7.57474, 0.47303, 1.78815, -0.707741, -1.23285, -2.44094e-12, 2.4959, -0.672511}, {2.22045e-16, 0, -1.32016, 5.92356e-12, -6.05767, -2.32827, 1.44665, -0.572575, 0.322765, -1.44665, -1.44665, 0.221307, 2.43894e-12, -2.4959, 5.95315, -7.57474, 0.502145, -2.64932, -1.78815, 0.707741, 1.23285, 1.78815, 1.78815, 1.35826, 7.57474, 5.07885, -2.11808, -2.44005e-12, 2.4959, -0.672511}, {4.44089e-16, 4.44089e-16, -1.32016, -1.97278e-12, 2.01922, 0.776088, -4.33994, 1.71772, -0.968296, -1.44665, -1.44665, 0.221307, 2.43805e-12, -2.4959, 0.672511, -1.78815, -9.86504, -4.46261, -1.78815, 0.707741, 6.51349, 1.78815, 1.78815, 1.35826, 1.78815, -0.707741, -1.23285, 5.78659, 8.28248, -1.55774}, {2.22045e-16, 2.22045e-16, -1.32016, -1.97211e-12, 2.01922, 0.776088, 1.44665, -0.572575, 0.322765, 4.33994, 4.33994, -0.663921, 2.43761e-12, -2.4959, 0.672511, -1.78815, -1.78815, -1.35826, -1.78815, 0.707741, 1.23285, 1.78815, 1.78815, 6.6389, 1.78815, -8.78463, -4.3372, -5.78659, 4.7862, -1.96357}, {-5.69487, 4.44089e-15, -2.66454e-15, -0.575562, 1.78885, 1.78885, 0.744968, -3.64699, -0.373467, -2.0677, 1.85814, -1.41539, 0.667265, -9.36656, -9.36656, -0.209397, 2.29678, -1.74951, -6.24712, 19.0959, 1.9555, 8.48018, -9.72932, 7.41106, 3.26725, -4.50793, -0.461631, 1.63498, 2.21115, 2.21115}, {1.89829, 2.66454e-15, -6.66134e-16, 1.72669, -5.36656, -5.36656, 0.744968, -3.64699, -0.373467, -2.0677, 1.85814, -1.41539, -9.22815, -2.21115, -2.21115, -3.18927, 16.8847, -0.255645, -3.26725, 4.50793, 0.461631, 0.209397, -2.29678, 1.74951, 11.538, -11.9405, 5.19992, 1.63498, 2.21115, 2.21115}, {1.89829, 3.55271e-15, 4.44089e-16, -0.575562, 1.78885, 1.78885, -2.2349, 10.941, 1.1204, -2.0677, 1.85814, -1.41539, -1.63498, -2.21115, -2.21115, 2.09285, -4.85864, -8.90493, -10.8604, 4.50793, 0.461631, 0.209397, -2.29678, 1.74951, 3.26725, -4.50793, -0.461631, 9.90577, -5.2214, 7.87269}, {1.89829, -2.66454e-15, 1.77636e-15, -0.575562, 1.78885, 1.78885, 0.744968, -3.64699, -0.373467, 6.20309, -5.57441, 4.24616, -1.63498, -2.21115, -2.21115, -0.209397, 2.29678, -1.74951, -3.26725, 4.50793, 0.461631, -7.38377, -2.29678, 1.74951, 5.5695, -11.6633, -7.61705, -1.34489, 16.7991, 3.70501}, {1.1885, -5.81832, -0.595821, 1.89829, -2.11601e-15, 5.39995e-16, -1.41683, -1.32819, -1.74168, -0.0852942, -0.611252, 1.54307, -9.44989, -2.39728, -0.245492, -0.59512, 1.64173, 2.15284, 7.9083, 4.5572, 8.87406, 0.936297, 0.803277, -8.32513, -2.24099, 0.755549, -1.90734, 1.85673, 2.39728, 0.245492}, {-0.396168, 1.93944, 0.198607, -5.69487, -1.01358e-15, -4.64389e-15, -1.41683, -1.32819, -1.74168, -0.0852942, -0.611252, 1.54307, -0.272056, -10.155, -1.03992, 5.0722, 6.95448, 9.11956, 2.24099, -0.755549, 1.90734, 0.59512, -1.64173, -2.15284, -1.89981, 3.20056, -8.07964, 1.85673, 2.39728, 0.245492}, {-0.396168, 1.93944, 0.198607, 1.89829, 0, 0, 4.25049, 3.98456, 5.22504, -0.0852942, -0.611252, 1.54307, -1.85673, -2.39728, -0.245492, -8.18828, 1.64173, 2.15284, 3.82566, -8.51331, 1.11292, 0.59512, -1.64173, -2.15284, -2.24099, 0.755549, -1.90734, 2.1979, 4.84229, -5.9268}, {-0.396168, 1.93944, 0.198607, 1.89829, 2.88057e-16, -7.27184e-16, -1.41683, -1.32819, -1.74168, 0.255883, 1.83376, -4.62922, -1.85673, -2.39728, -0.245492, -0.59512, 1.64173, 2.15284, 2.24099, -0.755549, 1.90734, 2.17979, -9.39949, -2.94726, -9.83415, 0.755549, -1.90734, 7.52404, 7.71003, 7.21221}, {-5.53939e-11, -0.00379978, 5.36656, -2.34313, -2.34273, 1.78885, -6.81003e-16, 2.34147, 0, 2.34313, 0, 0, 12.2688, 12.2651, -7.15542, 2.89626, 0.00156559, -2.21115, -2.28204e-11, -12.2616, 2.21115, -12.2688, -0.00156559, 2.21115, 2.28231e-11, 2.89578, -2.21115, -2.89626, -2.89421, 0}, {1.23088e-11, 0.00126659, -1.78885, 7.02938, 7.0282, -5.36656, -2.04301e-15, 2.34147, 0, 2.34313, -1.36201e-15, 0, 2.89626, 2.88915, 7.15542, 2.89626, -9.3643, -2.21115, -1.52118e-11, -2.89578, 2.21115, -2.89626, -0.00156559, 2.21115, -9.3725, 2.89578, -2.21115, -2.89626, -2.89421, 0}, {1.23057e-11, 0.00126659, -1.78885, -2.34313, -2.34273, 1.78885, 0, -7.0244, 0, 2.34313, 0, 0, 2.89626, 2.89421, 4.44089e-16, 12.2688, 9.3725, -9.36656, -6.44356e-11, -2.90084, 9.36656, -2.89626, -0.00156559, 2.21115, 1.52105e-11, 2.89578, -2.21115, -12.2688, -2.89421, 0}, {1.23084e-11, 0.00126659, -1.78885, -2.34313, -2.34273, 1.78885, 2.04301e-15, 2.34147, 0, -7.02938, 0, 0, 2.89626, 2.89421, 4.44089e-16, 2.89626, 0.00156559, -2.21115, -1.52163e-11, -2.89578, 2.21115, -2.89626, -0.00663197, 9.36656, 9.3725, 12.2667, -9.36656, -2.89626, -12.2601, 0}, {-7.02938, -5.36656, -7.02938, -1.21095e-11, -1.78885, -1.21105e-11, 0, 0, -2.34313, -2.34313, 0, 0, -2.89626, 7.15542, -2.89626, 1.49681e-11, 2.21115, 2.89626, -2.89626, -2.21115, 9.3725, 9.3725, -2.21115, -2.89626, 2.89626, 2.21115, 1.49694e-11, 2.89626, 0, 2.89626}, {2.34313, 1.78885, 2.34313, 5.47931e-11, 5.36656, 5.47978e-11, 0, 0, -2.34313, -2.34313, 0, 0, -12.2688, -7.15542, -12.2688, 2.2576e-11, 2.21115, 12.2688, -2.89626, -2.21115, -2.25785e-11, -2.25766e-11, -2.21115, -2.89626, 12.2688, 2.21115, 2.25779e-11, 2.89626, 0, 2.89626}, {2.34313, 1.78885, 2.34313, -1.21079e-11, -1.78885, -1.21105e-11, 0, 0, 7.02938, -2.34313, 0, 0, -2.89626, -4.44089e-16, -2.89626, 6.33979e-11, 9.36656, 2.89626, -12.2688, -9.36656, -9.3725, -1.49668e-11, -2.21115, -2.89626, 2.89626, 2.21115, 1.49694e-11, 12.2688, 0, 2.89626}, {2.34313, 1.78885, 2.34313, -1.21105e-11, -1.78885, -1.21079e-11, 0, 0, -2.34313, 7.02938, 0, 0, -2.89626, -4.44089e-16, -2.89626, 1.49694e-11, 2.21115, 2.89626, -2.89626, -2.21115, -1.49668e-11, -9.3725, -9.36656, -12.2688, 2.89626, 9.36656, 6.33979e-11, 2.89626, 0, 12.2688}, {6.00487, -2.5896, 0, 1.30033, -0.681296, -1.31177, -1.30033, -0.651333, 1.31177, 2.00162, 0.469428, 0, -4.33448, 2.50034, 6.86849, 0, 1.64722, 0, 9.28277, 2.34345, -6.86849, -8.00649, -3.52493, 0, -4.08144, 0.261882, 1.62143, -0.866843, 0.224847, -1.62143}, {-2.00162, 0.8632, -1.61346e-16, -3.901, 2.04389, 3.9353, -1.30033, -0.651333, 1.31177, 2.00162, 0.469428, -6.06985e-17, 8.87333, -3.67765, 1.62143, 5.20133, 4.25255, -5.24706, 4.08144, -0.261882, -1.62143, 5.28204e-17, -1.64722, 4.44089e-16, -12.0879, -1.61583, 1.62143, -0.866843, 0.224847, -1.62143}, {-2.00162, 0.8632, -1.00648e-16, 1.30033, -0.681296, -1.31177, 3.901, 1.954, -3.9353, 2.00162, 0.469428, -1.21397e-16, 0.866843, -0.224847, 1.62143, -5.20133, 4.3724, 5.24706, 12.0879, -3.71468, -1.62143, 4.9691e-16, -1.64722, 2.22045e-16, -4.08144, 0.261882, 1.62143, -8.87333, -1.65287, -1.62143}, {-2.00162, 0.8632, 0, 1.30033, -0.681296, -1.31177, -1.30033, -0.651333, 1.31177, -6.00487, -1.40829, 0, 0.866843, -0.224847, 1.62143, 0, 1.64722, 0, 4.08144, -0.261882, -1.62143, 8.00649, -5.10002, 0, -9.28277, 2.98706, 6.86849, 4.33448, 2.83018, -6.86849}, {-3.67855, 1.13524, -1.13945, -0.728854, -0.729491, 0.729491, -0.347691, -0.347995, -1.25767, -0.149637, 1.4559, 0.148365, 2.30068, 4.28741, -4.28915, 1.33068, 1.33185, 0.652868, 0.304891, 2.28987, 6.11578, -0.732135, -7.15545, -1.24633, 1.08587, -0.897892, -1.08509, 0.614731, -1.36945, 1.37118}, {1.22618, -0.378415, 0.379817, 2.18656, 2.18847, -2.18847, -0.347691, -0.347995, -1.25767, -0.149637, 1.4559, 0.148365, -5.51946, 2.8831, -2.89045, 2.72145, 2.72383, 5.68356, -1.08587, 0.897892, 1.08509, -1.33068, -1.33185, -0.652868, 1.68442, -6.72149, -1.67855, 0.614731, -1.36945, 1.37118}, {1.22618, -0.378415, 0.379817, -0.728854, -0.729491, 0.729491, 1.04307, 1.04399, 3.77302, -0.149637, 1.4559, 0.148365, -0.614731, 1.36945, -1.37118, 4.2461, 4.24981, -2.2651, -5.9906, 2.41155, -0.434178, -1.33068, -1.33185, -0.652868, 1.08587, -0.897892, -1.08509, 1.21328, -7.19305, 0.777722}, {1.22618, -0.378415, 0.379817, -0.728854, -0.729491, 0.729491, -0.347691, -0.347995, -1.25767, 0.448911, -4.3677, -0.445094, -0.614731, 1.36945, -1.37118, 1.33068, 1.33185, 0.652868, -1.08587, 0.897892, 1.08509, -6.23541, 0.181812, -2.17214, 4.00129, 2.02007, -4.00305, 2.0055, 0.0225343, 6.40187}, {-3.16808, 0, 5.09912e-16, -0.781545, 0, -1.31177, 0.234793, 1.31177, 1.31177, -0.509273, -1.31177, -1.26089e-16, 2.78691, 0, 6.86849, 0.675824, -1.62143, -2.22045e-16, -2.53471, -6.86849, -6.86849, 1.36127, 6.86849, 7.264e-16, 1.59554, 1.62143, 1.62143, 0.339276, 0, -1.62143}, {1.05603, 0, 6.58225e-17, 2.34464, 0, 3.9353, 0.234793, 1.31177, 1.31177, -0.509273, -1.31177, 3.78267e-16, -4.56338, 0, 1.62143, -0.263347, -6.86849, -5.24706, -1.59554, -1.62143, -1.62143, -0.675824, 1.62143, -4.44089e-16, 3.63263, 6.86849, 1.62143, 0.339276, 0, -1.62143}, {1.05603, -2.22045e-16, 6.02665e-17, -0.781545, 3.78267e-16, -1.31177, -0.704378, -3.9353, -3.9353, -0.509273, -1.31177, -5.04356e-16, -0.339276, -2.22045e-16, 1.62143, 3.80201, -1.62143, 5.24706, -5.81964, -1.62143, -1.62143, -0.675824, 1.62143, 4.44089e-16, 1.59554, 1.62143, 1.62143, 2.37637, 5.24706, -1.62143}, {1.05603, 0, 0, -0.781545, 0, -1.31177, 0.234793, 1.31177, 1.31177, 1.52782, 3.9353, 0, -0.339276, 0, 1.62143, 0.675824, -1.62143, 0, -1.59554, -1.62143, -1.62143, -4.89993, 1.62143, 0, 4.72172, 1.62143, 6.86849, -0.599895, -5.24706, -6.86849}, {-4.31352, 0.137385, -4.35145, -1.43784, 0.845244, 0.568738, 0, -1.33263, 0, 1.50855e-12, 0.53318, -2.01922, 5.75136, -4.36915, -4.77085, 1.77727, 0.602441, -0.702999, -1.77727, 7.03434, -1.7929, -1.77727, -2.73516, 8.77989, 1.77727, -1.70383, 1.7929, -1.86467e-12, 0.988174, 2.4959}, {1.43784, -0.0457949, 1.45048, 4.31352, -2.53573, -1.70622, 0, -1.33263, 0, 1.50567e-12, 0.53318, -2.01922, -5.75136, -0.804994, -8.29783, 1.77727, 5.93296, -0.702999, -1.77727, 1.70383, -1.7929, -1.77727, -0.602441, 0.702999, 1.77727, -3.83654, 9.86978, -1.86111e-12, 0.988174, 2.4959}, {1.43784, -0.0457949, 1.45048, -1.43784, 0.845244, 0.568738, 0, 3.99789, 0, 1.50891e-12, 0.53318, -2.01922, 1.86476e-12, -0.988174, -2.4959, 7.52863, -2.77854, -2.97795, -7.52863, 1.887, -7.59483, -1.77727, -0.602441, 0.702999, 1.77727, -1.70383, 1.7929, -7.90075e-12, -1.14454, 10.5728}, {1.43784, -0.0457949, 1.45048, -1.43784, 0.845244, 0.568738, 0, -1.33263, 0, -4.51484e-12, -1.59954, 6.05767, 1.85986e-12, -0.988174, -2.4959, 1.77727, 0.602441, -0.702999, -1.77727, 1.70383, -1.7929, -7.52863, -0.419261, -5.09894, 7.52863, -5.0848, -0.482057, -1.86021e-12, 6.31869, 2.4959}, {0, 7.02938, 1.2039e-15, 0, 0, -2.34313, 1.78885, 2.34313, 2.34059, -1.78885, -1.21095e-11, 0.00253498, 0, 2.89626, 12.2688, -2.21115, -2.89626, 0.00313341, -9.36656, -9.3725, -12.2555, 9.36656, 2.89626, -0.0132733, 2.21115, 1.49681e-11, 2.89313, 0, -2.89626, -2.89626}, {0, -2.34313, 2.70617e-16, 0, 0, 7.02938, 1.78885, 2.34313, 2.34059, -1.78885, -1.2111e-11, 0.00253498, 0, 12.2688, 2.89626, -9.36656, -12.2688, -9.35923, -2.21115, -1.49695e-11, -2.89313, 2.21115, 2.89626, -0.00313341, 9.36656, 6.34142e-11, 2.88299, 0, -2.89626, -2.89626}, {0, -2.34313, -2.48933e-16, 0, 0, -2.34313, -5.36656, -7.02938, -7.02177, -1.78885, -1.21116e-11, 0.00253498, 0, 2.89626, 2.89626, -2.21115, -2.89626, 9.37564, -2.21115, 9.3725, -2.89313, 2.21115, 2.89626, -0.00313341, 2.21115, 1.49707e-11, 2.89313, 7.15542, -2.89626, -2.9064}, {0, -2.34313, 8.76035e-17, 0, 0, -2.34313, 1.78885, 2.34313, 2.34059, 5.36656, 5.47978e-11, -0.00760494, 0, 2.89626, 2.89626, -2.21115, -2.89626, 0.00313341, -2.21115, -2.25774e-11, -2.89313, 2.21115, 12.2688, -0.00313341, 2.21115, 2.25779e-11, 12.2656, -7.15542, -12.2688, -12.2586}, {-3.23058, -0.349184, -0.349184, -0.223923, -1.25104, -1.25104, -0.552433, 1.28003, -0.0317341, -0.300503, -0.14539, 1.16638, -0.158596, 6.40664, 6.40664, 0.959628, -0.0358398, 1.58559, 1.56151, -6.8462, 0.0222906, 0.242385, 0.617398, -6.25109, 0.648226, 1.72608, 0.104646, 1.05429, -1.40249, -1.40249}, {1.07686, 0.116395, 0.116395, 0.671768, 3.75311, 3.75311, -0.552433, 1.28003, -0.0317341, -0.300503, -0.14539, 1.16638, -5.36172, 0.936916, 0.936916, 3.16936, -5.15596, 1.71253, -0.648226, -1.72608, -0.104646, -0.959628, 0.0358398, -1.58559, 1.85024, 2.30764, -4.56086, 1.05429, -1.40249, -1.40249}, {1.07686, 0.116395, 0.116395, -0.223923, -1.25104, -1.25104, 1.6573, -3.84009, 0.0952024, -0.300503, -0.14539, 1.16638, -1.05429, 1.40249, 1.40249, 1.85532, 4.96831, 6.58973, -4.95566, -2.19166, -0.570224, -0.959628, 0.0358398, -1.58559, 0.648226, 1.72608, 0.104646, 2.2563, -0.820936, -6.068}, {1.07686, 0.116395, 0.116395, -0.223923, -1.25104, -1.25104, -0.552433, 1.28003, -0.0317341, 0.90151, 0.436169, -3.49913, -1.05429, 1.40249, 1.40249, 0.959628, -0.0358398, 1.58559, -0.648226, -1.72608, -0.104646, -5.26706, -0.429738, -2.05117, 1.54392, 6.73022, 5.10879, 3.26402, -6.52262, -1.27556}, {5.36656, 7.02938, -7.02938, 0, 0, -2.34313, 1.78885, -1.02092e-11, 1.05679e-11, 0, 2.34313, 0, 2.21115, 2.89626, 9.3725, -2.21115, 1.26192e-11, 2.89626, -7.15542, 2.89626, -2.89626, 2.21115, -9.3725, -2.89626, 0, -2.89626, 2.89626, -2.21115, -2.89626, -1.30626e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, 7.02938, 1.78885, -1.02081e-11, 1.05669e-11, -1.04056e-15, 2.34313, -6.14662e-27, 9.36656, 12.2688, -9.3725, -9.36656, 5.34504e-11, 2.89626, -8.4211e-16, 2.89626, -2.89626, 2.21115, -1.26174e-11, -2.89626, 5.44843e-15, -12.2688, 2.89626, -2.21115, -2.89626, -1.30613e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, -2.34313, -5.36656, 3.06298e-11, -3.17084e-11, 0, 2.34313, 0, 2.21115, 2.89626, 1.3064e-11, -2.21115, 1.26202e-11, 12.2688, 7.15542, 12.2688, -12.2688, 2.21115, -1.26196e-11, -2.89626, 0, -2.89626, 2.89626, -2.21115, -12.2688, -1.30646e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, -2.34313, 1.78885, -1.02092e-11, 1.05658e-11, 0, -7.02938, 0, 2.21115, 2.89626, 1.30595e-11, -2.21115, 1.26192e-11, 2.89626, 4.44089e-16, 2.89626, -2.89626, 9.36656, 9.3725, -12.2688, 0, -2.89626, 12.2688, -9.36656, -2.89626, -5.53233e-11}, {0, 9.45441, 0, 3.15147, 1.39953e-15, -1.39953e-15, -1.36261, 1.36261, 1.78885, -1.78885, 1.78885, -1.78885, -16.5013, 3.89543, 7.54952e-15, -2.21115, -1.68428, -2.21115, 7.13474, -3.23931, -9.36656, 9.36656, -5.47113, 9.36656, -1.68428, -2.21115, 2.21115, 3.89543, -3.89543, -1.77636e-15}, {8.88178e-16, -3.15147, 2.22045e-16, -9.45441, -1.00042e-15, 8.3972e-15, -1.36261, 1.36261, 1.78885, -1.78885, 1.78885, -1.78885, -3.89543, 16.5013, 5.32907e-15, 3.23931, -7.13474, -9.36656, 1.68428, 2.21115, -2.21115, 2.21115, 1.68428, 2.21115, 5.47113, -9.36656, 9.36656, 3.89543, -3.89543, -3.55271e-15}, {4.44089e-16, -3.15147, 0, 3.15147, 0, 0, 4.08784, -4.08784, -5.36656, -1.78885, 1.78885, -1.78885, -3.89543, 3.89543, 0, -14.817, -1.68428, -2.21115, 1.68428, 14.817, -2.21115, 2.21115, 1.68428, 2.21115, -1.68428, -2.21115, 2.21115, 11.0508, -11.0508, 7.15542}, {6.66134e-16, -3.15147, -2.22045e-16, 3.15147, 1.39953e-15, -1.39953e-15, -1.36261, 1.36261, 1.78885, 5.36656, -5.36656, 5.36656, -3.89543, 3.89543, 1.77636e-15, -2.21115, -1.68428, -2.21115, 1.68428, 2.21115, -2.21115, 2.21115, 14.2902, 2.21115, -14.2902, -2.21115, 2.21115, 9.34589, -9.34589, -7.15542}, {4.32877, -2.26802, -4.36683, -0.571101, 0.113693, -1.4431, 0, -1.33263, 0, 2.01402, 0.462931, -0.0125109, 4.77387, -1.52978, 5.75693, 0.70592, 1.50669, 1.78377, 1.78355, 6.04326, -1.79923, -8.76202, -3.35841, -1.73373, -1.78355, -0.712746, 1.79923, -2.48947, 1.07501, 0.0154644}, {-1.44292, 0.756005, 1.45561, 1.7133, -0.34108, 4.3293, 0, -1.33263, 0, 2.01402, 0.462931, -0.0125109, 8.26116, -4.09903, -5.83791, 0.70592, 6.8372, 1.78377, 1.78355, 0.712746, -1.79923, -0.70592, -1.50669, -1.78377, -9.83965, -2.56447, 1.84928, -2.48947, 1.07501, 0.0154644}, {-1.44292, 0.756005, 1.45561, -0.571101, 0.113693, -1.4431, 0, 3.99789, 0, 2.01402, 0.462931, -0.0125109, 2.48947, -1.07501, -0.0154644, 2.99032, 1.05191, 7.55617, 7.55524, -2.31127, -7.62167, -0.70592, -1.50669, -1.78377, -1.78355, -0.712746, 1.79923, -10.5456, -0.776716, 0.0655081}, {-1.44292, 0.756005, 1.45561, -0.571101, 0.113693, -1.4431, 0, -1.33263, 0, -6.04207, -1.38879, 0.0375328, 2.48947, -1.07501, -0.0154644, 0.70592, 1.50669, 1.78377, 1.78355, 0.712746, -1.79923, 5.06577, -4.53071, -7.60621, 0.500853, -1.16752, 7.57163, -2.48947, 6.40552, 0.0154644}, {-4.70136, -8.88178e-16, -1.57513e-15, 0.134389, 1.44665, -1.44665, -0.426776, 0.569981, 1.4404, -1.27473, -2.01663, 0.00624416, -2.64074, -7.57474, 7.57474, 0.36141, -2.49269, 0.00771821, 0.297559, -2.98446, -7.54205, 4.73753, 10.5592, -0.0326948, 1.40954, 0.704535, 1.78044, 2.10318, 1.78815, -1.78815}, {1.56712, -8.88178e-16, 1.00961e-15, -0.403167, -4.33994, 4.33994, -0.426776, 0.569981, 1.4404, -1.27473, -2.01663, 0.00624416, -8.37167, -1.78815, 1.78815, 2.06851, -4.77261, -5.75389, -1.40954, -0.704535, -1.78044, -0.36141, 2.49269, -0.00771821, 6.50848, 8.77105, 1.75546, 2.10318, 1.78815, -1.78815}, {1.56712, -1.33227e-15, 1.05818e-16, 0.134389, 1.44665, -1.44665, 1.28033, -1.70994, -4.32121, -1.27473, -2.01663, 0.00624416, -2.10318, -1.78815, 1.78815, -0.176146, -8.27928, 5.79431, -7.67803, -0.704535, -1.78044, -0.36141, 2.49269, -0.00771821, 1.40954, 0.704535, 1.78044, 7.20212, 9.85467, -1.81313}, {1.56712, 0, 4.33681e-17, 0.134389, 1.44665, -1.44665, -0.426776, 0.569981, 1.4404, 3.8242, 6.04988, -0.0187325, -2.10318, -1.78815, 1.78815, 0.36141, -2.49269, 0.00771821, -1.40954, -0.704535, -1.78044, -6.6299, 2.49269, -0.00771821, 0.871989, -5.08205, 7.56702, 3.81029, -0.491769, -7.54977}, {-3.47256, 2.13004, 3.47613, -1.55533, -0.53343, -0.78864, -0.511744, 1.83496, 0.513241, 0.909554, -0.591516, 1.43411, 6.71303, 3.6707, 5.56162, 2.55504, -1.60878, 0.340411, 1.24875, -8.73034, -1.25512, -6.19326, 3.97484, -6.07685, 0.798222, 1.39051, -0.797844, -0.49172, -1.53698, -2.40706}, {1.15752, -0.710012, -1.15871, 4.66599, 1.60029, 2.36592, -0.511744, 1.83496, 0.513241, 0.909554, -0.591516, 1.43411, -4.13836, 4.37703, 7.0419, 4.60202, -8.94861, -1.71255, -0.798222, -1.39051, 0.797844, -2.55504, 1.60878, -0.340411, -2.83999, 3.75657, -6.53428, -0.49172, -1.53698, -2.40706}, {1.15752, -0.710012, -1.15871, -1.55533, -0.53343, -0.78864, 1.53523, -5.50487, -1.53972, 0.909554, -0.591516, 1.43411, 0.49172, 1.53698, 2.40706, 8.77636, 0.524942, 3.49497, -5.4283, 1.44954, 5.43269, -2.55504, 1.60878, -0.340411, 0.798222, 1.39051, -0.797844, -4.12993, 0.829086, -8.14349}, {1.15752, -0.710012, -1.15871, -1.55533, -0.53343, -0.78864, -0.511744, 1.83496, 0.513241, -2.72866, 1.77455, -4.30233, 0.49172, 1.53698, 2.40706, 2.55504, -1.60878, 0.340411, -0.798222, -1.39051, 0.797844, -7.18512, 4.44882, 4.29443, 7.01954, 3.52423, 2.35672, 1.55526, -8.87681, -4.46002}, {-0.0259854, 4.18315, -1.68926, -1.44604, -0.0976914, -0.778579, 1.44538, 0.20404, -0.351453, -0.00800116, 1.28804, 0.566947, 7.56086, 2.23507, 3.38068, 0.000816584, -0.131455, 1.3968, -7.57881, 0.655184, 1.14422, 0.031188, -5.02069, -3.66458, 1.79729, -1.47135, 0.261592, -1.7767, -1.84431, -0.266365}, {0.00866179, -1.39438, 0.563086, 4.33812, 0.293074, 2.33574, 1.44538, 0.20404, -0.351453, -0.00800116, 1.28804, 0.566947, 1.74205, 7.42184, -1.98598, -5.7807, -0.947617, 2.80261, -1.79729, 1.47135, -0.261592, -0.000816584, 0.131455, -1.3968, 1.8293, -6.62349, -2.0062, -1.7767, -1.84431, -0.266365}, {0.00866179, -1.39438, 0.563086, -1.44604, -0.0976914, -0.778579, -4.33614, -0.612121, 1.05436, -0.00800116, 1.28804, 0.566947, 1.7767, 1.84431, 0.266365, 5.78498, 0.259311, 4.51111, -1.83194, 7.04888, -2.51393, -0.000816584, 0.131455, -1.3968, 1.79729, -1.47135, 0.261592, -1.74469, -6.99645, -2.53415}, {0.00866179, -1.39438, 0.563086, -1.44604, -0.0976914, -0.778579, 1.44538, 0.20404, -0.351453, 0.0240035, -3.86411, -1.70084, 1.7767, 1.84431, 0.266365, 0.000816584, -0.131455, 1.3968, -1.79729, 1.47135, -0.261592, -0.0354637, 5.70899, -3.64914, 7.58145, -1.08058, 3.37591, -7.55822, -2.66047, 1.13945}, {5.36656, -5.36656, -5.36656, 3.15147, -4.93118e-15, 0, -1.36261, 1.36261, -1.78885, 0, -3.15147, 0, -14.2902, -2.21115, -2.21115, -2.21115, -1.68428, 2.21115, 9.34589, -9.34589, 7.15542, 2.21115, 14.2902, -2.21115, -3.89543, 3.89543, 0, 1.68428, 2.21115, 2.21115}, {-1.78885, 1.78885, 1.78885, -9.45441, 1.0595e-14, -4.1986e-15, -1.36261, 1.36261, -1.78885, 0, -3.15147, 0, 5.47113, -9.36656, -9.36656, 3.23931, -7.13474, 9.36656, 3.89543, -3.89543, 1.28583e-15, 2.21115, 1.68428, -2.21115, -3.89543, 16.5013, -1.72992e-15, 1.68428, 2.21115, 2.21115}, {-1.78885, 1.78885, 1.78885, 3.15147, 0, 0, 4.08784, -4.08784, 5.36656, 0, -3.15147, 0, -1.68428, -2.21115, -2.21115, -14.817, -1.68428, 2.21115, 11.0508, -11.0508, -7.15542, 2.21115, 1.68428, -2.21115, -3.89543, 3.89543, 0, 1.68428, 14.817, 2.21115}, {-1.78885, 1.78885, 1.78885, 3.15147, -4.93118e-15, 0, -1.36261, 1.36261, -1.78885, 0, 9.45441, 0, -1.68428, -2.21115, -2.21115, -2.21115, -1.68428, 2.21115, 3.89543, -3.89543, -4.44089e-16, 9.36656, -5.47113, -9.36656, -16.5013, 3.89543, 0, 7.13474, -3.23931, 9.36656}, {2.81269, -2.81269, -1.11325, -0.456393, -1.88673, -0.746758, 0.886018, 1.45711, 2.59594, 0.507938, -0.507938, -2.22026, 3.5486, 8.72017, 3.45139, -0.531046, 0.531046, -2.28571, -3.48036, -8.78841, -14.0512, -1.50071, 1.50071, 11.1668, -0.0637129, 2.95998, 3.66744, -1.72302, -1.17324, -0.464361}, {-0.937563, 0.937563, 0.371082, 1.36918, 5.6602, 2.24027, 0.886018, 1.45711, 2.59594, 0.507938, -0.507938, -2.22026, 5.47328, -2.57701, -1.01997, -4.07512, -5.29738, -12.6695, 0.0637129, -2.95998, -3.66744, 0.531046, -0.531046, 2.28571, -2.09546, 4.99173, 12.5485, -1.72302, -1.17324, -0.464361}, {-0.937563, 0.937563, 0.371082, -0.456393, -1.88673, -0.746758, -2.65805, -4.37132, -7.78781, 0.507938, -0.507938, -2.22026, 1.72302, 1.17324, 0.464361, 1.29453, 8.07798, 0.701322, 3.81396, -6.71023, -5.15177, 0.531046, -0.531046, 2.28571, -0.0637129, 2.95998, 3.66744, -3.75477, 0.858512, 8.41668}, {-0.937563, 0.937563, 0.371082, -0.456393, -1.88673, -0.746758, 0.886018, 1.45711, 2.59594, -1.52381, 1.52381, 6.66078, 1.72302, 1.17324, 0.464361, -0.531046, 0.531046, -2.28571, 0.0637129, -2.95998, -3.66744, 4.2813, -4.2813, 0.801382, 1.76186, 10.5069, 6.65447, -5.2671, -7.00167, -10.8481}, {8.88178e-16, 4.08096, 0.0852192, 2.97466e-16, 0.921902, -1.18196, 1.31177, 0.0265815, 1.34059, -1.31177, 0.411835, -0.130224, -1.11022e-15, -3.1457, 6.22395, -1.62143, -1.17239, -0.196078, -6.86849, 1.54226, -6.98432, 6.86849, -0.474951, 0.716974, 1.62143, -1.64859, 1.62195, 0, -0.541913, -1.4961}, {-2.22045e-16, -1.36032, -0.0284064, -4.46199e-16, -2.76571, 3.54589, 1.31177, 0.0265815, 1.34059, -1.31177, 0.411835, -0.130224, 8.88178e-16, 5.98319, 1.60972, -6.86849, -1.27872, -5.55845, -1.62143, 1.64859, -1.62195, 1.62143, 1.17239, 0.196078, 6.86849, -3.29593, 2.14285, 0, -0.541913, -1.4961}, {-1.33227e-15, -1.36032, -0.0284064, 4.46199e-16, 0.921902, -1.18196, -3.9353, -0.0797444, -4.02178, -1.31177, 0.411835, -0.130224, 1.11022e-15, 0.541913, 1.4961, -1.62143, -4.86, 4.53177, -1.62143, 7.08987, -1.50833, 1.62143, 1.17239, 0.196078, 1.62143, -1.64859, 1.62195, 5.24706, -2.18925, -0.975202}, {1.55431e-15, -1.36032, -0.0284064, -1.04113e-15, 0.921902, -1.18196, 1.31177, 0.0265815, 1.34059, 3.9353, -1.23551, 0.390672, -4.44089e-16, 0.541913, 1.4961, -1.62143, -1.17239, -0.196078, -1.62143, 1.64859, -1.62195, 1.62143, 6.61367, 0.309704, 1.62143, -5.3362, 6.3498, -5.24706, -0.648239, -6.85847}, {1.39697, -4.32433, -4.36732, 1.89829, -2.30844e-15, -1.37509e-15, 0.0801166, 0.574147, -1.4494, -1.51275, -2.01559, -0.00636856, -9.364, -1.78172, -1.79943, -2.44545, -0.709685, 1.79156, 0.156089, -4.78799, 5.78974, 8.49644, 8.77205, -1.76609, -0.476556, 2.49141, 0.00787198, 1.77083, 1.78172, 1.79943}, {-0.465658, 1.44144, 1.45577, -5.69487, 3.6613e-15, -2.04012e-15, 0.0801166, 0.574147, -1.4494, -1.51275, -2.01559, -0.00636856, 0.0918014, -7.54749, -7.62252, -2.76591, -3.00627, 7.58918, 0.476556, -2.49141, -0.00787198, 2.44545, 0.709685, -1.79156, 5.57444, 10.5538, 0.0333462, 1.77083, 1.78172, 1.79943}, {-0.465658, 1.44144, 1.45577, 1.89829, 0, 0, -0.24035, -1.72244, 4.34821, -1.51275, -2.01559, -0.00636856, -1.77083, -1.78172, -1.79943, -10.0386, -0.709685, 1.79156, 2.33919, -8.25718, -5.83096, 2.44545, 0.709685, -1.79156, -0.476556, 2.49141, 0.00787198, 7.82183, 9.84408, 1.82491}, {-0.465658, 1.44144, 1.45577, 1.89829, 9.49861e-16, 3.00123e-18, 0.0801166, 0.574147, -1.4494, 4.53825, 6.04677, 0.0191057, -1.77083, -1.78172, -1.79943, -2.44545, -0.709685, 1.79156, 0.476556, -2.49141, -0.00787198, 4.30808, -5.05609, -7.61465, -8.06972, 2.49141, 0.00787198, 1.45037, -0.514866, 7.59705}, {4.31352, -3.43679, 1.70622, 1.43784, 0.720211, -1.45048, 0, -1.33263, 0, -1.50621e-12, -0.53318, 2.01922, -5.75136, -5.18711, 8.29783, -1.77727, 0.75699, 1.7929, 1.77727, 5.5617, 0.702999, 1.77727, 1.37573, -9.86978, -1.77727, -0.231184, -0.702999, 1.86177e-12, 2.30627, -2.4959}, {-1.43784, 1.1456, -0.568738, -4.31352, -2.16063, 4.35145, 0, -1.33263, 0, -1.50909e-12, -0.53318, 2.01922, 5.75136, -6.88865, 4.77085, -1.77727, 6.08751, 1.7929, 1.77727, 0.231184, 0.702999, 1.77727, -0.75699, -1.7929, -1.77727, 1.90153, -8.77989, 1.86534e-12, 2.30627, -2.4959}, {-1.43784, 1.1456, -0.568738, 1.43784, 0.720211, -1.45048, 0, 3.99789, 0, -1.50945e-12, -0.53318, 2.01922, -1.86543e-12, -2.30627, 2.4959, -7.52863, -2.12386, 7.59483, 7.52863, -4.3512, 2.97795, 1.77727, -0.75699, -1.7929, -1.77727, -0.231184, -0.702999, 7.90358e-12, 4.43898, -10.5728}, {-1.43784, 1.1456, -0.568738, 1.43784, 0.720211, -1.45048, 0, -1.33263, 0, 4.52348e-12, 1.59954, -6.05767, -1.86342e-12, -2.30627, 2.4959, -1.77727, 0.75699, 1.7929, 1.77727, 0.231184, 0.702999, 7.52863, -5.33938, 0.482057, -7.52863, -3.11203, 5.09894, 1.86378e-12, 7.63678, -2.4959}, {-4.90958, -4.91099, -14.364, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, -1.63653, -1.637, -1.63653, -10.2723, 6.22604, 2.33354, -1.70974e-14, 1.68754e-14, 3.89543, 6.22661, -10.2729, 2.33118, 6.54611, 6.54798, 2.65068, 0.0754226, 3.97087, 3.97085, 3.9703, 0.076001, 3.9703}, {1.63653, 1.637, 4.788, -4.72653, 4.72653, 4.72788, -1.57551, 1.57551, -1.57551, -1.63653, -1.637, -1.63653, -10.5164, -6.62398, -23.1223, 6.30204, -6.30204, 10.1975, -0.0754226, -3.97087, -3.97085, 1.38046e-14, -1.50613e-14, -3.89543, 6.62153, 10.5189, 10.517, 3.9703, 0.076001, 3.9703}, {1.63653, 1.637, 4.788, 1.57551, -1.57551, -1.57596, 4.72653, -4.72653, 4.72653, -1.63653, -1.637, -1.63653, -3.9703, -0.076001, -3.9703, -6.30204, 6.30204, 10.1993, -6.62153, -10.5189, -23.1228, 1.64691e-14, -1.72818e-14, -3.89543, 0.0754226, 3.97087, 3.97085, 10.5164, 6.62398, 10.5164}, {1.63653, 1.637, 4.788, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, 4.90958, 4.91099, 4.90958, -3.9703, -0.076001, -3.9703, -1.70974e-14, 1.68754e-14, 3.89543, -0.0754226, -3.97087, -3.97085, -6.54611, -6.54798, -23.0474, -6.22661, 10.2729, 10.2747, 10.2723, -6.22604, 10.2723}, {1.1292, -10.9335, -1.11964, 0, 0, 1.60567, 1.79029, -1.78764, -1.78873, -1.41389, -1.85687, -0.190152, 0.465254, -4.50486, -8.8687, -2.21292, 2.20964, 0.226277, -8.90884, 4.85533, 8.90459, 7.8685, 5.21784, 0.53433, 1.74767, 2.29522, -1.74967, -0.465254, 4.50486, 2.44603}, {-0.376399, 3.64451, 0.373213, 3.83169e-15, 8.27924e-17, -4.817, 1.79029, -1.78764, -1.78873, -1.41389, -1.85687, -0.190152, 1.97085, -19.0829, -3.93889, -9.37409, 9.36019, 7.3812, -1.74767, -2.29522, 1.74967, 2.21292, -2.20964, -0.226277, 7.40324, 9.72271, -0.989068, -0.465254, 4.50486, 2.44603}, {-0.376399, 3.64451, 0.373213, -2.25438e-15, -2.96069e-15, 1.60567, -5.37088, 5.36291, 5.36619, -1.41389, -1.85687, -0.190152, 0.465254, -4.50486, -2.44603, -2.21292, 2.20964, -6.1964, -0.242074, -16.8733, 0.256821, 2.21292, -2.20964, -0.226277, 1.74767, 2.29522, -1.74967, 5.19032, 11.9323, 3.20664}, {-0.376399, 3.64451, 0.373213, 0, 0, 1.60567, 1.79029, -1.78764, -1.78873, 4.24168, 5.57061, 0.570455, 0.465254, -4.50486, -2.44603, -2.21292, 2.20964, 0.226277, -1.74767, -2.29522, 1.74967, 3.71852, -16.7877, -1.71913, 1.74767, 2.29522, -8.17235, -7.62642, 11.6554, 9.60095}, {-9.76996e-15, 8.88178e-16, -7.02938, 1.78885, 2.33948, -2.34059, -1.78885, 6.92504e-12, -0.00253498, 0, -2.33948, 0, -9.36656, -12.2497, 9.35923, 3.9968e-15, -2.89175, 2.89626, 9.36656, -3.62599e-11, -2.88299, -3.9968e-15, 12.2497, -2.89626, -2.21115, 8.55982e-12, 2.89313, 2.21115, 2.89175, 0.00313341}, {-2.22045e-15, -1.33227e-15, 2.34313, -5.36656, -7.01844, 7.02177, -1.78885, 6.92556e-12, -0.00253498, 0, -2.33948, 0, -2.21115, -2.89175, -9.37564, 7.15542, -2.89175, 2.9064, 2.21115, -8.55893e-12, -2.89313, 2.66454e-15, 2.89175, -2.89626, -2.21115, 9.35791, 2.89313, 2.21115, 2.89175, 0.00313341}, {4.21885e-15, 3.55271e-15, 2.34313, 1.78885, 2.33948, -2.34059, 5.36656, -2.0786e-11, 0.00760494, 0, -2.33948, 0, -2.21115, -2.89175, -0.00313341, -7.15542, -12.2497, 12.2586, 2.21115, -8.58513e-12, -12.2656, -5.32907e-15, 2.89175, -2.89626, -2.21115, 8.5687e-12, 2.89313, 2.21115, 12.2497, 0.00313341}, {0, -4.44089e-16, 2.34313, 1.78885, 2.33948, -2.34059, -1.78885, 6.92763e-12, -0.00253498, 0, 7.01844, 0, -2.21115, -2.89175, -0.00313341, 0, -2.89175, 2.89626, 2.21115, -8.56293e-12, -2.89313, 0, 2.89175, -12.2688, -9.36656, -9.35791, 12.2555, 9.36656, 2.89175, 0.0132733}, {5.21741, 5.22554, 3.98943, -2.33948, 0, 0, 1.54072, 1.54312, -0.61076, 2.53789, 0.198723, 1.94057, 14.3994, 2.15304, 1.64373, 0.987318, -1.90741, 0.754941, -5.91764, -5.92686, 4.84171, -11.1389, 1.11252, -8.51722, -0.245252, -0.245635, -2.39867, -5.04144, -2.15304, -1.64373}, {-1.73914, -1.74185, -1.32981, 7.01844, 0, 0, 1.54072, 1.54312, -0.61076, 2.53789, 0.198723, 1.94057, 11.998, 9.12042, 6.96297, -5.17557, -8.0799, 3.19798, 0.245252, 0.245635, 2.39867, -0.987318, 1.90741, -0.754941, -10.3968, -1.04052, -10.1609, -5.04144, -2.15304, -1.64373}, {-1.73914, -1.74185, -1.32981, -2.33948, 0, 0, -4.62217, -4.62937, 1.83228, 2.53789, 0.198723, 1.94057, 5.04144, 2.15304, 1.64373, 10.3452, -1.90741, 0.754941, 7.20179, 7.21302, 7.71791, -0.987318, 1.90741, -0.754941, -0.245252, -0.245635, -2.39867, -15.193, -2.94793, -9.40601}, {-1.73914, -1.74185, -1.32981, -2.33948, 0, 0, 1.54072, 1.54312, -0.61076, -7.61368, -0.596168, -5.82171, 5.04144, 2.15304, 1.64373, 0.987318, -1.90741, 0.754941, 0.245252, 0.245635, 2.39867, 5.96922, 8.87479, 4.5643, 9.11266, -0.245635, -2.39867, -11.2043, -8.32553, 0.799305}, {10.9417, 1.1195, -1.12048, -2.16738e-15, -8.61236e-16, 1.60567, 1.79007, 1.78742, -1.78898, 1.85717, -1.41425, -0.190182, 4.50824, 0.46126, -8.86905, -2.21265, -2.20937, 0.226585, -4.86469, -8.89778, 8.90555, -5.21604, 7.86637, 0.534145, -2.29559, 1.74811, -1.74964, -4.50824, -0.46126, 2.44638}, {-3.64724, -0.373167, 0.373493, -8.02431e-17, 3.82867e-15, -4.817, 1.79007, 1.78742, -1.78898, 1.85717, -1.41425, -0.190182, 19.0972, 1.95393, -3.94035, -9.37293, -9.35904, 7.3825, 2.29559, -1.74811, 1.74964, 2.21265, 2.20937, -0.226585, -9.72428, 7.40511, -0.988907, -4.50824, -0.46126, 2.44638}, {-3.64724, -0.373167, 0.373493, 2.96117e-15, -2.25495e-15, 1.60567, -5.37021, -5.36225, 5.36694, 1.85717, -1.41425, -0.190182, 4.50824, 0.46126, -2.44638, -2.21265, -2.20937, -6.19609, 16.8846, -0.25544, 0.255663, 2.21265, 2.20937, -0.226585, -2.29559, 1.74811, -1.74964, -11.9369, 5.19574, 3.20711}, {-3.64724, -0.373167, 0.373493, -7.40292e-16, 5.63738e-16, 1.60567, 1.79007, 1.78742, -1.78898, -5.57152, 4.24275, 0.570547, 4.50824, 0.46126, -2.44638, -2.21265, -2.20937, 0.226585, 2.29559, -1.74811, 1.74964, 16.8016, 3.70204, -1.72056, -2.29559, 1.74811, -8.17231, -11.6685, -7.61093, 9.60229}, {1.83228, 4.62937, -4.62937, 0, 0, -1.60567, 1.94057, -0.198723, 0.198723, -1.32981, 1.74185, -0.136178, 0.754941, 1.90741, 6.49998, -2.39867, 0.245635, 1.73908, -9.40601, 2.94793, -2.94793, 7.71791, -7.21302, -1.19437, 1.64373, -2.15304, 2.15304, -0.754941, -1.90741, -0.0773091}, {-0.61076, -1.54312, 1.54312, 0, 0, 4.817, 1.94057, -0.198723, 0.198723, -1.32981, 1.74185, -0.136178, 3.19798, 8.0799, -6.09519, -10.1609, 1.04052, 0.94419, -1.64373, 2.15304, -2.15304, 2.39867, -0.245635, -1.73908, 6.96297, -9.12042, 2.69775, -0.754941, -1.90741, -0.0773091}, {-0.61076, -1.54312, 1.54312, 0, 0, -1.60567, -5.82171, 0.596168, -0.596168, -1.32981, 1.74185, -0.136178, 0.754941, 1.90741, 0.0773091, -2.39867, 0.245635, 8.16175, 0.799305, 8.32553, -8.32553, 2.39867, -0.245635, -1.73908, 1.64373, -2.15304, 2.15304, 4.5643, -8.87479, 0.467403}, {-0.61076, -1.54312, 1.54312, 0, 0, -1.60567, 1.94057, -0.198723, 0.198723, 3.98943, -5.22554, 0.408534, 0.754941, 1.90741, 0.0773091, -2.39867, 0.245635, 1.73908, -1.64373, 2.15304, -2.15304, 4.84171, 5.92686, -7.91157, 1.64373, -2.15304, 8.57571, -8.51722, -1.11252, -0.872199}, {-1.12374, 4.33994, -1.71772, 0.422512, 1.58777e-12, -2.01922, 0.258935, 1.44665, 1.44665, -1.05603, 0, 0, -2.6753, 1.78815, 9.86504, -0.842315, -1.78815, 0.707741, -1.81881, -5.78659, -8.28248, 5.06642, 1.78815, -0.707741, 0.783066, -1.96259e-12, 2.4959, 0.985258, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, -1.26754, -4.76439e-12, 6.05767, 0.258935, 1.44665, 1.44665, -1.05603, 0, 0, -2.48357, 7.57474, -0.502145, -1.87805, -7.57474, -5.07885, -0.783066, 1.9634e-12, -2.4959, 0.842315, 1.78815, -0.707741, 5.00717, -1.96304e-12, 2.4959, 0.985258, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, 0.422512, 1.58777e-12, -2.01922, -0.776805, -4.33994, -4.33994, -1.05603, 0, 0, -0.985258, 1.78815, 1.78815, -2.53236, -1.78815, 8.78463, -2.28138, 5.78659, -4.7862, 0.842315, 1.78815, -0.707741, 0.783066, -1.96259e-12, 2.4959, 5.20936, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, 0.422512, 1.58813e-12, -2.01922, 0.258935, 1.44665, 1.44665, 3.16808, 0, 0, -0.985258, 1.78815, 1.78815, -0.842315, -1.78815, 0.707741, -0.783066, 1.9634e-12, -2.4959, -0.656, 7.57474, -2.99804, -0.906981, -8.31556e-12, 10.5728, -0.0504823, -7.57474, -7.57474}, {-4.08784, 4.08784, -5.36656, 0, 3.15147, 0, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -14.817, -2.21115, 3.89543, -3.89543, 0, 14.817, 1.68428, -2.21115, -11.0508, 11.0508, 7.15542, -2.21115, -1.68428, 2.21115, 1.68428, 2.21115, 2.21115}, {1.36261, -1.36261, 1.78885, -1.15954e-14, -9.45441, 4.1986e-15, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -7.13474, 3.23931, -9.36656, 16.5013, -3.89543, 1.72992e-15, 2.21115, 1.68428, -2.21115, -3.89543, 3.89543, -2.17401e-15, -9.36656, 5.47113, 9.36656, 1.68428, 2.21115, 2.21115}, {1.36261, -1.36261, 1.78885, 0, 3.15147, 0, 9.45441, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -2.21115, -2.21115, 3.89543, -16.5013, 0, -3.23931, 7.13474, -9.36656, -3.89543, 3.89543, -4.44089e-16, -2.21115, -1.68428, 2.21115, -5.47113, 9.36656, 9.36656}, {1.36261, -1.36261, 1.78885, 0, 3.15147, 0, -3.15147, 0, 0, -5.36656, 5.36656, 5.36656, -1.68428, -2.21115, -2.21115, 3.89543, -3.89543, 0, 2.21115, 1.68428, -2.21115, -9.34589, 9.34589, -7.15542, -2.21115, -14.2902, 2.21115, 14.2902, 2.21115, 2.21115}, {1.11747, -3.79023, -1.1121, -0.361676, -1.4194, 0.363688, 1.52298, 0.102889, 0.820003, -0.788811, 0.0531033, -1.55439, 2.35418, 5.87043, -2.3625, -1.43545, 1.6273, -1.46312, -7.51399, -2.1004, -4.7518, 4.59069, -1.83971, 7.68068, 1.42208, 1.68884, 1.47179, -0.907478, -0.192817, 0.907751}, {-0.372489, 1.26341, 0.370699, 1.08503, 4.25821, -1.09106, 1.52298, 0.102889, 0.820003, -0.788811, 0.0531033, -1.55439, 2.39743, -4.86083, -2.39055, -7.52735, 1.21575, -4.74314, -1.42208, -1.68884, -1.47179, 1.43545, -1.6273, 1.46312, 4.57732, 1.47643, 7.68935, -0.907478, -0.192817, 0.907751}, {-0.372489, 1.26341, 0.370699, -0.361676, -1.4194, 0.363688, -4.56893, -0.308667, -2.46001, -0.788811, 0.0531033, -1.55439, 0.907478, 0.192817, -0.907751, 0.0112586, 7.30492, -2.91787, 0.0678761, -6.74249, -2.95458, 1.43545, -1.6273, 1.46312, 1.42208, 1.68884, 1.47179, 2.24777, -0.40523, 7.12531}, {-0.372489, 1.26341, 0.370699, -0.361676, -1.4194, 0.363688, 1.52298, 0.102889, 0.820003, 2.36643, -0.15931, 4.66317, 0.907478, 0.192817, -0.907751, -1.43545, 1.6273, -1.46312, -1.42208, -1.68884, -1.47179, 2.9254, -6.68095, -0.0196727, 2.86879, 7.36645, 0.0170383, -6.99938, -0.604373, -2.37226}, {4.44089e-15, -4.05009, 8.88178e-16, -0.572575, -0.625677, 1.44665, 2.01922, -0.706554, 1.38558e-12, -1.44665, -0.0177991, -1.44665, 2.99804, 1.60736, -7.57474, -1.78815, 1.64673, -1.78815, -10.5728, 2.03083, -7.25442e-12, 7.57474, -1.57553, 7.57474, 2.4959, 0.79538, 1.71219e-12, -0.707741, 0.895349, 1.78815}, {-4.44089e-16, 1.35003, -2.22045e-15, 1.71772, 1.87703, -4.33994, 2.01922, -0.706554, 1.3879e-12, -1.44665, -0.0177991, -1.44665, 0.707741, -6.29547, -1.78815, -9.86504, 4.47294, -1.78815, -2.4959, -0.79538, -1.71263e-12, 1.78815, -1.64673, 1.78815, 8.28248, 0.866577, 5.78659, -0.707741, 0.895349, 1.78815}, {8.88178e-16, 1.35003, 6.66134e-16, -0.572575, -0.625677, 1.44665, -6.05767, 2.11966, -4.15591e-12, -1.44665, -0.0177991, -1.44665, 0.707741, -0.895349, -1.78815, 0.502145, 4.14944, -7.57474, -2.4959, -6.1955, -1.71596e-12, 1.78815, -1.64673, 1.78815, 2.4959, 0.79538, 1.7133e-12, 5.07885, 0.966546, 7.57474}, {2.22045e-16, 1.35003, 0, -0.572575, -0.625677, 1.44665, 2.01922, -0.706554, 1.38489e-12, 4.33994, 0.0533972, 4.33994, 0.707741, -0.895349, -1.78815, -1.78815, 1.64673, -1.78815, -2.4959, -0.79538, -1.71196e-12, 1.78815, -7.04685, 1.78815, 4.7862, 3.29809, -5.78659, -8.78463, 3.72156, 1.78815}, {1.70622, 4.31352, 1.19704, 8.51907e-16, 7.76069e-16, 1.08709, -1.45048, 1.43784, -0.312525, 2.01922, -1.65855e-12, -0.375548, 0.702999, 1.77727, -5.19885, 1.7929, -1.77727, -0.95741, 8.29783, -5.75136, 2.12961, -9.86978, 1.77727, 2.4596, -2.4959, 2.04913e-12, -0.879509, -0.702999, -1.77727, 0.850505}, {-0.568738, -1.43784, -0.399013, -2.80914e-15, 1.1641e-15, -3.26126, -1.45048, 1.43784, -0.312525, 2.01922, -1.65923e-12, -0.375548, 2.97795, 7.52863, 0.745546, 7.59483, -7.52863, 0.292691, 2.4959, -2.05105e-12, 0.879509, -1.7929, 1.77727, 0.95741, -10.5728, 8.68834e-12, 0.622683, -0.702999, -1.77727, 0.850505}, {-0.568738, -1.43784, -0.399013, 0, 0, 1.08709, 4.35145, -4.31352, 0.937576, 2.01922, -1.65685e-12, -0.375548, 0.702999, 1.77727, -0.850505, 1.7929, -1.77727, -5.30575, 4.77085, 5.75136, 2.47556, -1.7929, 1.77727, 0.95741, -2.4959, 2.04797e-12, -0.879509, -8.77989, -1.77727, 2.3527}, {-0.568738, -1.43784, -0.399013, 0, 0, 1.08709, -1.45048, 1.43784, -0.312525, -6.05767, 4.97324e-12, 1.12664, 0.702999, 1.77727, -0.850505, 1.7929, -1.77727, -0.95741, 2.4959, -2.04873e-12, 0.879509, 0.482057, 7.52863, 2.55346, -2.4959, 2.04909e-12, -5.22785, 5.09894, -7.52863, 2.10061}, {-2.41029, -2.40672, -2.40819, -0.80343, -0.802238, 0.80294, 1.63555, -1.63555, 0.0313083, -1.63555, 1.63555, -1.63698, 3.21372, 3.20895, -5.19647, -1.02855, 3.01327, -1.03119, -9.55693, 7.57221, -1.15616, 7.57074, -9.55546, 7.57909, 3.01474, -1.03003, 1.03093, 8.88178e-15, 5.77316e-15, 1.98471}, {0.80343, 0.802238, 0.802728, 2.41029, 2.40672, -2.40882, 1.63555, -1.63555, 0.0313083, -1.63555, 1.63555, -1.63698, -3.21372, -3.20895, -5.19563, -7.57074, 9.55546, -1.15642, -3.01474, 1.03003, -1.03093, 1.02855, -3.01327, 1.03119, 9.55693, -7.57221, 7.57883, 8.88178e-15, 7.54952e-15, 1.98471}, {0.80343, 0.802238, 0.802728, -0.80343, -0.802238, 0.80294, -4.90664, 4.90664, -0.0939249, -1.63555, 1.63555, -1.63698, -8.88178e-15, -7.54952e-15, -1.98471, 2.18516, 6.22222, -4.24295, -6.22846, -2.17893, -4.24184, 1.02855, -3.01327, 1.03119, 3.01474, -1.03003, 1.03093, 6.54219, -6.54219, 8.53262}, {0.80343, 0.802238, 0.802728, -0.80343, -0.802238, 0.80294, 1.63555, -1.63555, 0.0313083, 4.90664, -4.90664, 4.91093, -7.99361e-15, -8.43769e-15, -1.98471, -1.02855, 3.01327, -1.03119, -3.01474, 1.03003, -1.03093, -2.18516, -6.22222, -2.17973, 6.22846, 2.17893, -2.18083, -6.54219, 6.54219, 1.85948}, {-5.48006e-11, 5.36656, 0.00342441, 0, 0, -2.34462, 2.34313, 0, 0, -2.34313, 1.78885, 2.34576, -2.25788e-11, 2.21115, 12.278, -2.89626, 0, 2.89811, -12.2688, 2.21115, 0.00141093, 12.2688, -7.15542, -12.2812, 2.89626, -2.21115, -0.00141093, 2.25788e-11, -2.21115, -2.89952}, {1.2113e-11, -1.78885, -0.00114147, 0, 0, 7.03386, 2.34313, -1.04056e-15, -1.3645e-15, -2.34313, 1.78885, 2.34576, -6.34248e-11, 9.36656, 2.90409, -12.2688, 5.44843e-15, 2.89811, -2.89626, 2.21115, 0.00141093, 2.89626, -8.4211e-16, -2.89811, 12.2688, -9.36656, -9.38446, 1.49729e-11, -2.21115, -2.89952}, {1.2109e-11, -1.78885, -0.00114147, 0, 0, -2.34462, -7.02938, 0, 0, -2.34313, 1.78885, 2.34576, -1.49676e-11, 2.21115, 2.89952, -2.89626, 0, 12.2766, -2.89626, 9.36656, 0.00597681, 2.89626, 4.44089e-16, -2.89811, 2.89626, -2.21115, -0.00141093, 9.3725, -9.36656, -12.2826}, {1.21134e-11, -1.78885, -0.00114147, 0, 0, -2.34462, 2.34313, 0, 0, 7.02938, -5.36656, -7.03729, -1.49729e-11, 2.21115, 2.89952, -2.89626, 0, 2.89811, -2.89626, 2.21115, 0.00141093, 2.89626, 7.15542, -2.89354, 2.89626, -2.21115, 9.37707, -9.3725, -2.21115, -2.89952}, {-2.3518, -6.05767, -5.91704e-12, -0.0281756, -0.572575, -1.44665, -1.05603, 0, 0, 0.300269, -1.44665, 1.44665, -0.821464, 0.502145, 7.57474, 1.34015, 0.707741, 1.78815, 4.56043, -2.4959, -2.43827e-12, -2.54122, 5.07885, -7.57474, -0.336326, 2.4959, 2.43827e-12, 0.934166, 1.78815, -1.78815}, {0.783932, 2.01922, 1.9722e-12, 0.0845268, 1.71772, 4.33994, -1.05603, 0, 0, 0.300269, -1.44665, 1.44665, -4.06989, -9.86504, 1.78815, 5.56425, 0.707741, 1.78815, 0.336326, -2.4959, -2.43761e-12, -1.34015, -0.707741, -1.78815, -1.5374, 8.28248, -5.78659, 0.934166, 1.78815, -1.78815}, {0.783932, 2.01922, 1.97353e-12, -0.0281756, -0.572575, -1.44665, 3.16808, 0, 0, 0.300269, -1.44665, 1.44665, -0.934166, -1.78815, 1.78815, 1.45285, 2.99804, 7.57474, -2.7994, -10.5728, -1.03331e-11, -1.34015, -0.707741, -1.78815, -0.336326, 2.4959, 2.43938e-12, -0.266911, 7.57474, -7.57474}, {0.783932, 2.01922, 1.97287e-12, -0.0281756, -0.572575, -1.44665, -1.05603, 0, 0, -0.900808, 4.33994, -4.33994, -0.934166, -1.78815, 1.78815, 1.34015, 0.707741, 1.78815, 0.336326, -2.4959, -2.43872e-12, -4.47587, -8.78463, -1.78815, -0.223624, 4.7862, 5.78659, 5.15827, 1.78815, -1.78815}, {-2.45207, 5.12164, 2.36493, 0.0510009, -0.6557, 1.65667, -1.08957, 0.431245, -1.08957, 0.22121, 1.93167, 0.22121, -1.27735, 5.54352, -7.70003, 1.28374, 0.277442, -0.700975, 4.69474, -0.147797, 6.67946, -2.16858, -8.00412, -0.183865, -0.336471, -1.57718, -2.32119, 1.07335, -2.92072, 1.07335}, {0.817357, -1.70721, -0.788311, -0.153003, 1.9671, -4.97001, -1.08957, 0.431245, -1.08957, 0.22121, 1.93167, 0.22121, -4.34278, 9.74957, 2.07989, 5.64201, -1.44754, 3.6573, 0.336471, 1.57718, 2.32119, -1.28374, -0.277442, 0.700975, -1.22131, -9.30386, -3.20603, 1.07335, -2.92072, 1.07335}, {0.817357, -1.70721, -0.788311, 0.0510009, -0.6557, 1.65667, 3.2687, -1.29374, 3.2687, 0.22121, 1.93167, 0.22121, -1.07335, 2.92072, -1.07335, 1.07974, 2.90024, -7.32765, -2.93296, 8.40603, 5.47443, -1.28374, -0.277442, 0.700975, -0.336471, -1.57718, -2.32119, 0.18851, -10.6474, 0.18851}, {0.817357, -1.70721, -0.788311, 0.0510009, -0.6557, 1.65667, -1.08957, 0.431245, -1.08957, -0.66363, -5.795, -0.66363, -1.07335, 2.92072, -1.07335, 1.28374, 0.277442, -0.700975, 0.336471, 1.57718, 2.32119, -4.55317, 6.55141, 3.85422, -0.540475, 1.04562, -8.94786, 5.43162, -4.6457, 5.43162}, {-4.62937, -1.83228, -4.62937, 0.198723, -1.94057, 2.54185, 0, 0, -2.34313, -1.74185, 1.32981, -1.74185, -2.94793, 9.40601, -15.2167, -0.245635, 2.39867, -0.245635, -1.90741, -0.754941, 10.3614, 7.21302, -7.71791, 7.21302, 1.90741, 0.754941, -0.988857, 2.15304, -1.64373, 5.0493}, {1.54312, 0.61076, 1.54312, -0.596168, 5.82171, -7.62554, 0, 0, -2.34313, -1.74185, 1.32981, -1.74185, -8.32553, -0.799305, -11.2218, -0.245635, 2.39867, 9.12687, -1.90741, -0.754941, 0.988857, 0.245635, -2.39867, 0.245635, 8.87479, -4.5643, 5.97853, 2.15304, -1.64373, 5.0493}, {1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 2.54185, 0, 0, 7.02938, -1.74185, 1.32981, -1.74185, -2.15304, 1.64373, -5.0493, -1.04052, 10.1609, -10.413, -8.0799, -3.19798, -5.18364, 0.245635, -2.39867, 0.245635, 1.90741, 0.754941, -0.988857, 9.12042, -6.96297, 12.0167}, {1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 2.54185, 0, 0, -2.34313, 5.22554, -3.98943, 5.22554, -2.15304, 1.64373, -5.0493, -0.245635, 2.39867, -0.245635, -1.90741, -0.754941, 0.988857, -5.92686, -4.84171, -5.92686, 1.11252, 8.51722, -11.1562, 2.15304, -1.64373, 14.4218}, {3.9353, 3.03575, -0.94776, 1.31177, -0.633999, -0.948528, 0, 0.442478, 1.49023, 0, 1.20344, -0.85762, -5.24706, 4.57046, 4.57606, -1.62143, 0.236733, -0.669578, 1.62143, -1.06605, -8.19343, 1.62143, -5.05048, 4.10006, -1.62143, -0.703864, 2.23252, 0, -2.03446, -0.781946}, {-1.31177, -1.01192, 0.31592, -3.9353, 1.902, 2.84558, 0, 0.442478, 1.49023, 0, 1.20344, -0.85762, 5.24706, 6.08213, -0.481733, -1.62143, -1.53318, -6.63049, 1.62143, 0.703864, -2.23252, 1.62143, -0.236733, 0.669578, -1.62143, -5.51761, 5.663, 0, -2.03446, -0.781946}, {-1.31177, -1.01192, 0.31592, 1.31177, -0.633999, -0.948528, 0, -1.32743, -4.47068, 0, 1.20344, -0.85762, 3.2565e-16, 2.03446, 0.781946, -6.86849, 2.77273, 3.12453, 6.86849, 4.75153, -3.4962, 1.62143, -0.236733, 0.669578, -1.62143, -0.703864, 2.23252, 0, -6.84821, 2.64853}, {-1.31177, -1.01192, 0.31592, 1.31177, -0.633999, -0.948528, 0, 0.442478, 1.49023, 0, -3.61031, 2.57286, 3.2565e-16, 2.03446, 0.781946, -1.62143, 0.236733, -0.669578, 1.62143, 0.703864, -2.23252, 6.86849, 3.81093, -0.594102, -6.86849, 1.83213, 6.02663, 0, -3.80438, -6.74286}, {8.88178e-16, -9.65337e-16, 5.41667, 1.44665, 1.44665, 1.40715, 0.572575, -1.44665, 1.02216, -2.01922, -1.9703e-12, -0.623753, -7.57474, -7.57474, -5.13614, -2.4959, -2.43516e-12, -3.00279, -2.99804, 7.57474, -3.1203, 10.5728, 1.03164e-11, 5.4978, 0.707741, -1.78815, -0.968332, 1.78815, 1.78815, -0.492457}, {-4.44089e-16, -2.99727e-18, -1.80556, -4.33994, -4.33994, -4.22145, 0.572575, -1.44665, 1.02216, -2.01922, -1.97286e-12, -0.623753, -1.78815, -1.78815, 7.71468, -4.7862, 5.78659, -7.09142, -0.707741, 1.78815, 0.968332, 2.4959, 2.43872e-12, 3.00279, 8.78463, -1.78815, 1.52668, 1.78815, 1.78815, -0.492457}, {0, 1.65544e-16, -1.80556, 1.44665, 1.44665, 1.40715, -1.71772, 4.33994, -3.06648, -2.01922, -1.97103e-12, -0.623753, -1.78815, -1.78815, 0.492457, -8.28248, -5.78659, -8.63139, -0.707741, 1.78815, 8.19056, 2.4959, 2.43605e-12, 3.00279, 0.707741, -1.78815, -0.968332, 9.86504, 1.78815, 2.00255}, {0, 7.512e-17, -1.80556, 1.44665, 1.44665, 1.40715, 0.572575, -1.44665, 1.02216, 6.05767, 5.91749e-12, 1.87126, -1.78815, -1.78815, 0.492457, -2.4959, -2.43805e-12, -3.00279, -0.707741, 1.78815, 0.968332, 2.4959, 2.43775e-12, 10.225, -5.07885, -7.57474, -6.59693, -0.502145, 7.57474, -4.58109}, {4.36745, -2.27082, -4.32425, 1.62046e-12, 0.53318, -2.01922, 0, -1.33263, 0, 1.45582, 0.0425099, 0.577805, 1.79949, -3.72739, 8.79109, -2.00299e-12, 0.988174, 2.4959, 1.79949, 6.04211, -1.78169, -5.82327, -1.15821, -4.80711, -1.79949, -0.711591, 1.78169, -1.79949, 1.59467, -0.714206}, {-1.45582, 0.756939, 1.44142, -4.85808e-12, -1.59954, 6.05767, 0, -1.33263, 0, 1.45582, 0.0425099, 0.577805, 7.62276, -4.62243, -5.05146, -2.00164e-12, 6.31869, 2.4959, 1.79949, 0.711591, -1.78169, 2.002e-12, -0.988174, -2.4959, -7.62276, -0.881631, -0.529529, -1.79949, 1.59467, -0.714206}, {-1.45582, 0.756939, 1.44142, 1.61717e-12, 0.53318, -2.01922, 0, 3.99789, 0, 1.45582, 0.0425099, 0.577805, 1.79949, -1.59467, 0.714206, -8.46762e-12, -1.14454, 10.5728, 7.62276, -2.31617, -7.54736, 1.9993e-12, -0.988174, -2.4959, -1.79949, -0.711591, 1.78169, -7.62276, 1.42464, -3.02542}, {-1.45582, 0.756939, 1.44142, 1.61827e-12, 0.53318, -2.01922, 0, -1.33263, 0, -4.36745, -0.12753, -1.73341, 1.79949, -1.59467, 0.714206, -2.00029e-12, 0.988174, 2.4959, 1.79949, 0.711591, -1.78169, 5.82327, -4.01593, -8.26156, -1.79949, -2.84431, 9.85858, -1.79949, 6.92519, -0.714206}, {-3.26389, 1.55026, 1.55311, -0.994319, -0.995188, -0.994319, -0.203724, 1.40177, -0.203724, 0.110078, 0.110174, 1.71575, 3.86152, 5.84961, 5.84624, 1.48086, -0.502558, 1.48086, -0.278087, -6.701, 1.70663, -1.92117, 0.0618612, -8.34385, 1.09298, 1.09394, -0.891733, 0.115752, -1.86886, -1.86896}, {1.08796, -0.516753, -0.517703, 2.98296, 2.98556, 2.98296, -0.203724, 1.40177, -0.203724, 0.110078, 0.110174, 1.71575, -4.46761, 3.93587, 3.93978, 2.29576, -6.10962, 2.29576, -1.09298, -1.09394, 0.891733, -1.48086, 0.502558, -1.48086, 0.65267, 0.65324, -7.75472, 0.115752, -1.86886, -1.86896}, {1.08796, -0.516753, -0.517703, -0.994319, -0.995188, -0.994319, 0.611171, -4.2053, 0.611171, 0.110078, 0.110174, 1.71575, -0.115752, 1.86886, 1.86896, 5.45814, 3.47819, 5.45814, -5.44484, 0.973073, 2.96255, -1.48086, 0.502558, -1.48086, 1.09298, 1.09394, -0.891733, -0.32456, -2.30956, -8.73195}, {1.08796, -0.516753, -0.517703, -0.994319, -0.995188, -0.994319, -0.203724, 1.40177, -0.203724, -0.330234, -0.330523, -5.14724, -0.115752, 1.86886, 1.86896, 1.48086, -0.502558, 1.48086, -1.09298, -1.09394, 0.891733, -5.83272, 2.56957, 0.589952, 5.07026, 5.07469, 3.08554, 0.930647, -7.47593, -1.05407}, {5.37021, -5.36225, 5.37163, 3.64724, -0.373167, 0.376681, -1.85717, -1.41425, -0.191806, 0, 0, 1.60567, -16.8846, -0.25544, 0.240906, -2.21265, 2.20937, -0.228519, 11.9369, 5.19574, 3.21754, 2.21265, -2.20937, -6.19415, -4.50824, 0.46126, -2.45032, 2.29559, 1.74811, -1.74763}, {-1.79007, 1.78742, -1.79054, -10.9417, 1.1195, -1.13004, -1.85717, -1.41425, -0.191806, 7.40292e-16, 5.63738e-16, 1.60567, 4.86469, -8.89778, 8.9098, 5.21604, 7.86637, 0.538704, 4.50824, -0.46126, 2.45032, 2.21265, -2.20937, 0.228519, -4.50824, 0.46126, -8.87299, 2.29559, 1.74811, -1.74763}, {-1.79007, 1.78742, -1.79054, 3.64724, -0.373167, 0.376681, 5.57152, 4.24275, 0.575417, 0, 0, 1.60567, -2.29559, -1.74811, 1.74763, -16.8016, 3.70204, -1.73524, 11.6685, -7.61093, 9.61249, 2.21265, -2.20937, 0.228519, -4.50824, 0.46126, -2.45032, 2.29559, 1.74811, -8.1703}, {-1.79007, 1.78742, -1.79054, 3.64724, -0.373167, 0.376681, -1.85717, -1.41425, -0.191806, 0, 0, -4.817, -2.29559, -1.74811, 1.74763, -2.21265, 2.20937, -0.228519, 4.50824, -0.46126, 2.45032, 9.37293, -9.35904, 7.39069, -19.0972, 1.95393, -3.95704, 9.72428, 7.40511, -0.980408}, {-3.03198, 1.78237, 1.1993, 0.5032, 0.50364, 1.82018, -0.838801, -0.839534, 0.331788, -0.67506, 0.930018, -1.7522, -3.88404, -1.90272, -9.03645, 0.414826, 0.415188, -2.65998, 3.14277, 5.13024, -1.24312, 2.28541, -4.13526, 9.66879, 0.212431, -1.7721, -0.084027, 1.87124, -0.111844, 1.75573}, {1.01066, -0.594124, -0.399767, -1.5096, -1.51092, -5.46054, -0.838801, -0.839534, 0.331788, -0.67506, 0.930018, -1.7522, -5.91388, 2.48834, -0.156659, 3.77003, 3.77333, -3.98713, -0.212431, 1.7721, 0.084027, -0.414826, -0.415188, 2.65998, 2.91267, -5.49217, 6.92478, 1.87124, -0.111844, 1.75573}, {1.01066, -0.594124, -0.399767, 0.5032, 0.50364, 1.82018, 2.5164, 2.5186, -0.995364, -0.67506, 0.930018, -1.7522, -1.87124, 0.111844, -1.75573, -1.59797, -1.59937, -9.9407, -4.25508, 4.14859, 1.6831, -0.414826, -0.415188, 2.65998, 0.212431, -1.7721, -0.084027, 4.57148, -3.83192, 8.76454}, {1.01066, -0.594124, -0.399767, 0.5032, 0.50364, 1.82018, -0.838801, -0.839534, 0.331788, 2.02518, -2.79005, 5.25661, -1.87124, 0.111844, -1.75573, 0.414826, 0.415188, -2.65998, -0.212431, 1.7721, 0.084027, -4.45747, 1.96131, 4.25905, -1.80037, -3.78666, -7.36475, 5.22644, 3.24629, 0.428576}, {-4.62937, 1.83228, -4.62937, 0.198723, 1.94057, 2.54185, -1.74185, -1.32981, -1.74185, 0, 0, -2.34313, -2.94793, -9.40601, -15.2167, 1.90741, -0.754941, -0.988857, 7.21302, 7.71791, 7.21302, -1.90741, 0.754941, 10.3614, -0.245635, -2.39867, -0.245635, 2.15304, 1.64373, 5.0493}, {1.54312, -0.61076, 1.54312, -0.596168, -5.82171, -7.62554, -1.74185, -1.32981, -1.74185, 0, 0, -2.34313, -8.32553, 0.799305, -11.2218, 8.87479, 4.5643, 5.97853, 0.245635, 2.39867, 0.245635, -1.90741, 0.754941, 0.988857, -0.245635, -2.39867, 9.12687, 2.15304, 1.64373, 5.0493}, {1.54312, -0.61076, 1.54312, 0.198723, 1.94057, 2.54185, 5.22554, 3.98943, 5.22554, 0, 0, -2.34313, -2.15304, -1.64373, -5.0493, 1.11252, -8.51722, -11.1562, -5.92686, 4.84171, -5.92686, -1.90741, 0.754941, 0.988857, -0.245635, -2.39867, -0.245635, 2.15304, 1.64373, 14.4218}, {1.54312, -0.61076, 1.54312, 0.198723, 1.94057, 2.54185, -1.74185, -1.32981, -1.74185, 0, 0, 7.02938, -2.15304, -1.64373, -5.0493, 1.90741, -0.754941, -0.988857, 0.245635, 2.39867, 0.245635, -8.0799, 3.19798, -5.18364, -1.04052, -10.1609, -10.413, 9.12042, 6.96297, 12.0167}, {-4.33994, 0.458772, -1.71772, 0, 1.39654, 0, -1.44665, -0.27723, 1.44665, 1.76979e-12, -0.966385, -2.01922, -1.78815, -7.12335, -0.707741, 1.78815, -1.38354, -1.78815, 5.78659, 1.64062, -8.28248, -1.78815, 5.24908, 9.86504, -2.18758e-12, -0.531699, 2.4959, 1.78815, 1.53719, 0.707741}, {1.44665, -0.152924, 0.572575, 1.50464e-15, -4.18962, 4.79586e-15, -1.44665, -0.27723, 1.44665, 1.77122e-12, -0.966385, -2.01922, -7.57474, -0.925496, -2.99804, 7.57474, -0.274623, -7.57474, 2.18837e-12, 0.531699, -2.4959, -1.78815, 1.38354, 1.78815, -9.27361e-12, 3.33384, 10.5728, 1.78815, 1.53719, 0.707741}, {1.44665, -0.152924, 0.572575, 2.45632e-27, 1.39654, -2.80022e-15, 4.33994, 0.831689, -4.33994, 1.77124e-12, -0.966385, -2.01922, -1.78815, -1.53719, -0.707741, 1.78815, -6.9697, -1.78815, -5.78659, 1.1434, -4.7862, -1.78815, 1.38354, 1.78815, -2.18937e-12, -0.531699, 2.4959, 1.78815, 5.40273, 8.78463}, {1.44665, -0.152924, 0.572575, 0, 1.39654, 0, -1.44665, -0.27723, 1.44665, -5.31262e-12, 2.89915, 6.05767, -1.78815, -1.53719, -0.707741, 1.78815, -1.38354, -1.78815, 2.18856e-12, 0.531699, -2.4959, -7.57474, 1.99524, -0.502145, -2.18892e-12, -6.11785, 2.4959, 7.57474, 2.64611, -5.07885}, {3.99411, 0.408657, -5.22602, 1.94285, 0.198782, -0.198956, -0.611477, 1.5417, -1.54305, 0, -1.60427, 0, -8.52722, -0.872462, -1.11149, -1.64567, -2.15136, 2.15324, 4.8474, -7.90408, 5.92628, 1.64567, 8.56842, -2.15324, -2.40149, 1.73727, 0.245923, 0.755828, 0.0773324, 1.90731}, {-1.33137, -0.136219, 1.74201, -5.82855, -0.596347, 0.596868, -0.611477, 1.5417, -1.54305, 0, -1.60427, 0, 4.56966, 0.467544, -8.87534, 0.800244, -8.31817, 8.32544, 2.40149, -1.73727, -0.245923, 1.64567, 2.15136, -2.15324, -2.40149, 8.15434, 0.245923, 0.755828, 0.0773324, 1.90731}, {-1.33137, -0.136219, 1.74201, 1.94285, 0.198782, -0.198956, 1.83443, -4.62511, 4.62915, 0, -1.60427, 0, -0.755828, -0.0773324, -1.90731, -9.41706, -2.94649, 2.94906, 7.72698, -1.1924, -7.21395, 1.64567, 2.15136, -2.15324, -2.40149, 1.73727, 0.245923, 0.755828, 6.4944, 1.90731}, {-1.33137, -0.136219, 1.74201, 1.94285, 0.198782, -0.198956, -0.611477, 1.5417, -1.54305, 0, 4.8128, 0, -0.755828, -0.0773324, -1.90731, -1.64567, -2.15136, 2.15324, 2.40149, -1.73727, -0.245923, 6.97115, 2.69623, -9.12126, -10.1729, 0.942144, 1.04175, 3.20174, -6.08948, 8.07952}, {1.7133, -2.45292, -4.3293, -1.44292, 0.0459567, -1.45561, 0, -1.33263, 0, 2.01402, 0.469033, 0.0125109, 8.26116, -1.25129, 5.83791, 1.78355, 1.59041, 1.79923, 0.70592, 5.96708, -1.78377, -9.83965, -3.46655, -1.84928, -0.70592, -0.636563, 1.78377, -2.48947, 1.06746, -0.0154644}, {-0.571101, 0.817639, 1.4431, 4.32877, -0.13787, 4.36683, 0, -1.33263, 0, 2.01402, 0.469033, 0.0125109, 4.77387, -4.33802, -5.75693, 1.78355, 6.92093, 1.79923, 0.70592, 0.636563, -1.78377, -1.78355, -1.59041, -1.79923, -8.76202, -2.5127, 1.73373, -2.48947, 1.06746, -0.0154644}, {-0.571101, 0.817639, 1.4431, -1.44292, 0.0459567, -1.45561, 0, 3.99789, 0, 2.01402, 0.469033, 0.0125109, 2.48947, -1.06746, 0.0154644, 7.55524, 1.40659, 7.62167, 2.99032, -2.63399, -7.55617, -1.78355, -1.59041, -1.79923, -0.70592, -0.636563, 1.78377, -10.5456, -0.808671, -0.0655081}, {-0.571101, 0.817639, 1.4431, -1.44292, 0.0459567, -1.45561, 0, -1.33263, 0, -6.04207, -1.4071, -0.0375328, 2.48947, -1.06746, 0.0154644, 1.78355, 1.59041, 1.79923, 0.70592, 0.636563, -1.78377, 0.500853, -4.86097, -7.57163, 5.06577, -0.82039, 7.60621, -2.48947, 6.39798, -0.0154644}, {7.61576, -5.82053, 0.598329, -1.54462, -0.610276, -1.54223, 1.74008, -1.3299, 1.74168, 2.34313, 0, 0, 11.2256, 0.797254, 8.32176, -0.241602, 2.39819, -0.246525, -5.97333, 4.56526, -8.87301, -9.1309, -2.39819, 0.246525, -0.987004, 0.754342, 1.9063, -5.04712, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, 4.63387, 1.83083, 4.6267, 1.74008, -1.3299, 1.74168, 2.34313, 7.73589e-16, -1.01311e-15, 15.2015, -9.40456, 2.9506, -7.20193, 7.7178, -7.21323, 0.987004, -0.754342, -1.9063, 0.241602, -2.39819, 0.246525, -10.3595, 0.754342, 1.9063, -5.04712, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, -1.54462, -0.610276, -1.54223, -5.22025, 3.9897, -5.22503, 2.34313, 0, 0, 5.04712, -1.64385, 2.15283, 5.93689, 4.83929, 5.92241, 11.1413, -8.51505, -1.10853, 0.241602, -2.39819, 0.246525, -0.987004, 0.754342, 1.9063, -14.4196, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, -1.54462, -0.610276, -1.54223, 1.74008, -1.3299, 1.74168, -7.02938, 0, 0, 5.04712, -1.64385, 2.15283, -0.241602, 2.39819, -0.246525, 0.987004, -0.754342, -1.9063, 10.3959, -10.1589, 1.0443, 5.19149, 3.19544, 8.07523, -12.0075, 6.96345, -9.11953}, {2.66454e-15, -8.88178e-15, -7.0244, 0.00253498, 1.78885, -0.00126659, -2.34566, -1.78885, -2.3402, 2.34313, 0, 0, -0.0132733, -9.36656, -2.88758, 2.89626, 3.10862e-15, 2.89421, 12.282, 9.36656, 9.35923, -12.2688, -3.10862e-15, -2.89421, -2.8994, -2.21115, 0.00156559, 0.00313341, 2.21115, 2.89265}, {-4.44089e-16, -2.81691e-15, 2.34147, -0.00760494, -5.36656, 0.00379978, -2.34566, -1.78885, -2.3402, 2.34313, 1.04056e-15, 1.36127e-15, -0.00313341, -2.21115, -12.2585, 12.2789, 7.15542, 12.255, 2.8994, 2.21115, -0.00156559, -2.89626, 2.22045e-15, -2.89421, -12.2719, -2.21115, 0.00156559, 0.00313341, 2.21115, 2.89265}, {-8.88178e-16, -1.9984e-15, 2.34147, 0.00253498, 1.78885, -0.00126659, 7.03698, 5.36656, 7.0206, 2.34313, 0, 0, -0.00313341, -2.21115, -2.89265, 2.88612, -7.15542, 2.89928, 2.8994, 2.21115, -9.36743, -2.89626, 2.66454e-15, -2.89421, -2.8994, -2.21115, 0.00156559, -9.36937, 2.21115, 2.89265}, {4.44089e-16, 0, 2.34147, 0.00253498, 1.78885, -0.00126659, -2.34566, -1.78885, -2.3402, -7.02938, 0, 0, -0.00313341, -2.21115, -2.89265, 2.89626, 0, 2.89421, 2.8994, 2.21115, -0.00156559, -2.89626, 0, -12.2601, -2.90954, -9.36656, 0.00663197, 9.38578, 9.36656, 12.2534}, {3.98943, -5.22554, 5.22554, -0.61076, -1.54312, 1.54312, 0, 2.34313, 0, 1.94057, -2.54185, 0.198723, 4.84171, 5.92686, -5.92686, 0.754941, -0.988857, -1.90741, 1.64373, -14.4218, 2.15304, -8.51722, 11.1562, 1.11252, -1.64373, 5.0493, -2.15304, -2.39867, 0.245635, -0.245635}, {-1.32981, 1.74185, -1.74185, 1.83228, 4.62937, -4.62937, -1.12881e-15, 2.34313, -1.15595e-16, 1.94057, -2.54185, 0.198723, 7.71791, -7.21302, 7.21302, 0.754941, -10.3614, -1.90741, 1.64373, -5.0493, 2.15304, -0.754941, 0.988857, 1.90741, -9.40601, 15.2167, -2.94793, -2.39867, 0.245635, -0.245635}, {-1.32981, 1.74185, -1.74185, -0.61076, -1.54312, 1.54312, 0, -7.02938, 0, 1.94057, -2.54185, 0.198723, 2.39867, -0.245635, 0.245635, 3.19798, 5.18364, -8.0799, 6.96297, -12.0167, 9.12042, -0.754941, 0.988857, 1.90741, -1.64373, 5.0493, -2.15304, -10.1609, 10.413, -1.04052}, {-1.32981, 1.74185, -1.74185, -0.61076, -1.54312, 1.54312, 0, 2.34313, 0, -5.82171, 7.62554, -0.596168, 2.39867, -0.245635, 0.245635, 0.754941, -0.988857, -1.90741, 1.64373, -5.0493, 2.15304, 4.5643, -5.97853, 8.87479, 0.799305, 11.2218, -8.32553, -2.39867, -9.12687, -0.245635}, {9.45441, 0, -1.77636e-15, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, 1.36261, -1.78885, -1.36261, 3.89543, 0, -16.5013, -2.21115, -2.21115, -1.68428, -5.47113, -9.36656, 9.36656, -3.23931, 9.36656, 7.13474, -1.68428, 2.21115, -2.21115, -3.89543, 0, 3.89543}, {-3.15147, 2.22045e-16, 2.22045e-16, 1.00042e-15, 8.3972e-15, -9.45441, 1.78885, 1.78885, -1.78885, 1.36261, -1.78885, -1.36261, 16.5013, 5.32907e-15, -3.89543, -9.36656, -9.36656, 5.47113, 1.68428, -2.21115, 2.21115, 2.21115, 2.21115, 1.68428, -7.13474, 9.36656, 3.23931, -3.89543, -3.10862e-15, 3.89543}, {-3.15147, 4.44089e-16, 6.66134e-16, 0, 0, 3.15147, -5.36656, -5.36656, 5.36656, 1.36261, -1.78885, -1.36261, 3.89543, -8.88178e-16, -3.89543, -2.21115, -2.21115, -14.2902, 14.2902, -2.21115, 2.21115, 2.21115, 2.21115, 1.68428, -1.68428, 2.21115, -2.21115, -9.34589, 7.15542, 9.34589}, {-3.15147, 0, 2.22045e-16, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, -4.08784, 5.36656, 4.08784, 3.89543, 0, -3.89543, -2.21115, -2.21115, -1.68428, 1.68428, -2.21115, 2.21115, 14.817, 2.21115, 1.68428, -1.68428, 2.21115, -14.817, -11.0508, -7.15542, 11.0508}, {0.908154, -0.908154, 3.90885, -0.830764, 0.830764, 0.830764, 1.29079, 0.314875, 0.314875, -0.157311, -1.44836, 0.157311, 4.72412, -4.72412, -2.7394, -0.568628, -1.41609, -1.41609, -6.3845, -2.02289, -0.0381727, 1.19787, 7.20951, 0.786843, 1.22133, 0.763387, -1.22133, -1.40106, 1.40106, -0.583654}, {-0.302718, 0.302718, -1.30295, 2.49229, -2.49229, -2.49229, 1.29079, 0.314875, 0.314875, -0.157311, -1.44836, 0.157311, 2.61193, -2.61193, 5.79545, -5.7318, -2.67559, -2.67559, -1.22133, -0.763387, 1.22133, 0.568628, 1.41609, 1.41609, 1.85057, 6.55681, -1.85057, -1.40106, 1.40106, -0.583654}, {-0.302718, 0.302718, -1.30295, -0.830764, 0.830764, 0.830764, -3.87238, -0.944625, -0.944625, -0.157311, -1.44836, 0.157311, 1.40106, -1.40106, 0.583654, 2.75443, -4.73914, -4.73914, -0.0104551, -1.97426, 6.43313, 0.568628, 1.41609, 1.41609, 1.22133, 0.763387, -1.22133, -0.771816, 7.19449, -1.2129}, {-0.302718, 0.302718, -1.30295, -0.830764, 0.830764, 0.830764, 1.29079, 0.314875, 0.314875, 0.471934, 4.34507, -0.471934, 1.40106, -1.40106, 0.583654, -0.568628, -1.41609, -1.41609, -1.22133, -0.763387, 1.22133, 1.7795, 0.205215, 6.62789, 4.54438, -2.55967, -4.54438, -6.56423, 0.14156, -1.84315}, {-2.30283, -5.06257, 2.51418, -1.077, -0.426271, -1.077, 0.0318939, 0.648138, 1.63756, 0.277498, -1.90939, 0.277498, 4.69044, 0.146092, 6.67515, 1.29182, -0.274242, -0.692891, -1.11582, -5.47959, -7.53849, -2.40182, 7.9118, -0.417103, 0.988241, 2.88704, 0.988241, -0.38243, 1.55899, -2.36714}, {0.767609, 1.68752, -0.838059, 3.23101, 1.27881, 3.23101, 0.0318939, 0.648138, 1.63756, 0.277498, -1.90939, 0.277498, -2.68801, -8.30908, 5.71938, 1.16425, -2.86679, -7.24314, -0.988241, -2.88704, -0.988241, -1.29182, 0.274242, 0.692891, -0.121753, 10.5246, -0.121753, -0.38243, 1.55899, -2.36714}, {0.767609, 1.68752, -0.838059, -1.077, -0.426271, -1.077, -0.0956818, -1.94441, -4.91269, 0.277498, -1.90939, 0.277498, 0.38243, -1.55899, 2.36714, 5.59983, 1.43084, 3.61512, -4.05868, -9.63713, 2.36399, -1.29182, 0.274242, 0.692891, 0.988241, 2.88704, 0.988241, -1.49242, 9.19655, -3.47714}, {0.767609, 1.68752, -0.838059, -1.077, -0.426271, -1.077, 0.0318939, 0.648138, 1.63756, -0.832495, 5.72817, -0.832495, 0.38243, -1.55899, 2.36714, 1.29182, -0.274242, -0.692891, -0.988241, -2.88704, -0.988241, -4.36226, -6.47585, 4.04513, 5.29625, 4.59212, 5.29625, -0.510006, -1.03356, -8.91739}, {-4.7272, -4.7272, -4.7272, -1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 6.30294, -10.1984, 6.30294, 3.89543, 1.32716e-12, -1.3276e-12, 6.30294, 6.30294, -10.1984, -10.1984, 6.30294, 6.30294, 2.9643e-13, 3.03979e-13, 3.89543, 1.65001e-12, 3.89543, 1.64713e-12}, {1.57573, 1.57573, 1.57573, 4.7272, -4.7272, 4.7272, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -6.30294, -2.96874e-13, -3.01537e-13, -3.89543, -3.89543, -1.32644e-12, 1.32544e-12, -6.30294, 6.30294, 10.1984, 1.64713e-12, 3.89543, 1.65001e-12}, {1.57573, 1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 4.7272, 4.7272, -4.7272, 1.57573, -1.57573, -1.57573, -1.64579e-12, -3.89543, -1.64313e-12, 10.1984, -6.30294, 6.30294, -6.30294, -6.30294, -10.1984, -3.89543, -1.32711e-12, 1.32721e-12, 2.99982e-13, 3.06422e-13, 3.89543, -6.30294, 10.1984, 6.30294}, {1.57573, 1.57573, 1.57573, -1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -4.7272, 4.7272, 4.7272, -1.64313e-12, -3.89543, -1.64913e-12, 3.89543, 1.32694e-12, -1.32694e-12, -3.0087e-13, -2.9754e-13, -3.89543, -10.1984, -6.30294, -6.30294, 6.30294, -6.30294, 10.1984, 6.30294, 10.1984, -6.30294}, {-1.56775, 5.44381, 3.24545, 1.20899, 0.479095, 1.20825, -1.50445, -0.59618, 0.101437, -0.227124, 1.93169, -0.227868, -6.97629, -0.265605, -4.98928, 0.365209, 0.144724, -1.61886, 7.23144, 5.36461, 0.80607, 0.543287, -7.87147, 2.53034, -1.21365, -2.97989, -1.21182, 2.14034, -1.65078, 0.156278}, {0.522584, -1.8146, -1.08182, -3.62696, -1.43729, -3.62475, -1.50445, -0.59618, 0.101437, -0.227124, 1.93169, -0.227868, -4.23068, 8.90919, 4.171, 6.383, 2.52944, -2.02461, 1.21365, 2.97989, 1.21182, -0.365209, -0.144724, 1.61886, -0.305154, -10.7066, -0.300344, 2.14034, -1.65078, 0.156278}, {0.522584, -1.8146, -1.08182, 1.20899, 0.479095, 1.20825, 4.51334, 1.78854, -0.304311, -0.227124, 1.93169, -0.227868, -2.14034, 1.65078, -0.156278, -4.47074, -1.77166, -6.45186, -0.876686, 10.2383, 5.53909, -0.365209, -0.144724, 1.61886, -1.21365, -2.97989, -1.21182, 3.04884, -9.37752, 1.06775}, {0.522584, -1.8146, -1.08182, 1.20899, 0.479095, 1.20825, -1.50445, -0.59618, 0.101437, 0.681372, -5.79506, 0.683605, -2.14034, 1.65078, -0.156278, 0.365209, 0.144724, -1.61886, 1.21365, 2.97989, 1.21182, -2.45554, 7.11368, 5.94614, -6.0496, -4.89627, -6.04482, 8.15813, 0.733943, -0.24947}, {0.31567, 3.31084, -3.29586, 0.708828, -0.490803, -1.01172, 0.848249, 1.25814, 0.0940198, -1.45185, 0.336273, -0.18092, -3.58141, 3.93402, 3.93947, -1.92465, -0.948485, 1.13434, -4.31143, -5.22358, -1.85026, 7.73207, -0.396608, -0.41066, 0.91843, 0.191009, 1.47418, 0.746096, -1.97081, 0.107415}, {-0.105223, -1.10361, 1.09862, -2.12648, 1.47241, 3.03516, 0.848249, 1.25814, 0.0940198, -1.45185, 0.336273, -0.18092, -0.325203, 6.38527, -4.5019, -5.31765, -5.98106, 0.758261, -0.91843, -0.191009, -1.47418, 1.92465, 0.948485, -1.13434, 6.72585, -1.15408, 2.19787, 0.746096, -1.97081, 0.107415}, {-0.105223, -1.10361, 1.09862, 0.708828, -0.490803, -1.01172, -2.54475, -3.77443, -0.282059, -1.45185, 0.336273, -0.18092, -0.746096, 1.97081, -0.107415, -4.75996, 1.01473, 5.18122, -0.497537, 4.22345, -5.86867, 1.92465, 0.948485, -1.13434, 0.91843, 0.191009, 1.47418, 6.55351, -3.3159, 0.831095}, {-0.105223, -1.10361, 1.09862, 0.708828, -0.490803, -1.01172, 0.848249, 1.25814, 0.0940198, 4.35556, -1.00882, 0.54276, -0.746096, 1.97081, -0.107415, -1.92465, -0.948485, 1.13434, -0.91843, -0.191009, -1.47418, 2.34555, 5.36294, -5.52882, -1.91688, 2.15422, 5.52107, -2.6469, -7.00338, -0.268664}, {2.3172, 0.917451, -2.318, 1.00416, 1.78176, 0.599951, -0.431249, 0.464989, -1.17482, 0.199489, -1.94094, -0.197793, -4.30311, -8.95143, -4.09645, -0.708156, -2.77714, 0.710583, 3.21279, -2.0567, 5.1964, -0.0898, 10.5409, 0.0805874, -1.48779, 0.196748, -0.497096, 0.286472, 1.82437, 1.69665}, {-0.772399, -0.305817, 0.772666, -3.01248, -5.34529, -1.79985, -0.431249, 0.464989, -1.17482, 0.199489, -1.94094, -0.197793, 2.80312, -0.601104, -4.78731, 1.01684, -4.6371, 5.40988, 1.48779, -0.196748, 0.497096, 0.708156, 2.77714, -0.710583, -2.28575, 7.96049, 0.294074, 0.286472, 1.82437, 1.69665}, {-0.772399, -0.305817, 0.772666, 1.00416, 1.78176, 0.599951, 1.29375, -1.39497, 3.52447, 0.199489, -1.94094, -0.197793, -0.286472, -1.82437, -1.69665, -4.72479, -9.9042, -1.68922, 4.57739, 1.02652, -2.59357, 0.708156, 2.77714, -0.710583, -1.48779, 0.196748, -0.497096, -0.511484, 9.58812, 2.48782}, {-0.772399, -0.305817, 0.772666, 1.00416, 1.78176, 0.599951, -0.431249, 0.464989, -1.17482, -0.598467, 5.82281, 0.593378, -0.286472, -1.82437, -1.69665, -0.708156, -2.77714, 0.710583, 1.48779, -0.196748, 0.497096, 3.79775, 4.00041, -3.80125, -5.50443, -6.93031, -2.8969, 2.01147, -0.0355852, 6.39595}, {-9.63611, -0.184458, -9.63611, -0.833808, -0.834046, -2.43948, -1.57551, 1.57551, -1.57551, -0.802719, -0.802949, 0.802949, 0.39558, 4.29112, 8.80297, 2.97808, -0.916498, 4.96279, 4.27918, -8.32547, 4.27918, 0.232798, 4.12829, -8.17459, 2.02286, 2.02344, 2.02286, 2.93965, -0.954937, 0.954937}, {3.21204, 0.0614861, 3.21204, 2.50142, 2.50214, 7.31843, -1.57551, 1.57551, -1.57551, -0.802719, -0.802949, 0.802949, -15.7878, 0.708993, -13.8031, 9.28012, -7.21853, 11.2648, -2.02286, -2.02344, -2.02286, -2.97808, 0.916498, -4.96279, 5.23374, 5.23523, -1.18894, 2.93965, -0.954937, 0.954937}, {3.21204, 0.0614861, 3.21204, -0.833808, -0.834046, -2.43948, 4.72653, -4.72653, 4.72653, -0.802719, -0.802949, 0.802949, -2.93965, 0.954937, -0.954937, 6.31331, 2.41969, 14.7207, -14.871, -2.26938, -14.871, -2.97808, 0.916498, -4.96279, 2.02286, 2.02344, 2.02286, 6.15053, 2.25686, -2.25686}, {3.21204, 0.0614861, 3.21204, -0.833808, -0.834046, -2.43948, -1.57551, 1.57551, -1.57551, 2.40816, 2.40885, -2.40885, -2.93965, 0.954937, -0.954937, 2.97808, -0.916498, 4.96279, -2.02286, -2.02344, -2.02286, -15.8262, 0.670554, -17.8109, 5.35809, 5.35962, 11.7808, 9.24169, -7.25697, 7.25697}, {8.88178e-16, 4.44089e-15, -3.26126, 1.4431, -0.571101, 0.0717263, 0.0125109, 2.01402, -0.807596, -1.45561, -1.44292, -0.351216, -7.55617, 2.99032, -1.71928, -1.79923, -1.78355, 0.909586, -0.0655081, -10.5456, 2.88492, 7.62167, 7.55524, 0.495278, 0.0154644, 2.48947, 0.345468, 1.78377, -0.70592, 1.43237}, {-2.22045e-16, 6.66134e-16, 1.08709, -4.3293, 1.7133, -0.215179, 0.0125109, 2.01402, -0.807596, -1.45561, -1.44292, -0.351216, -1.78377, 0.70592, -5.78072, -1.84928, -9.83965, 4.13997, -0.0154644, -2.48947, -0.345468, 1.79923, 1.78355, -0.909586, 5.83791, 8.26116, 1.75033, 1.78377, -0.70592, 1.43237}, {-6.66134e-16, -2.22045e-16, 1.08709, 1.4431, -0.571101, 0.0717263, -0.0375328, -6.04207, 2.42279, -1.45561, -1.44292, -0.351216, -1.78377, 0.70592, -1.43237, -7.57163, 0.500853, 0.622681, -0.0154644, -2.48947, -4.69381, 1.79923, 1.78355, -0.909586, 0.0154644, 2.48947, 0.345468, 7.60621, 5.06577, 2.83723}, {0, 4.44089e-16, 1.08709, 1.4431, -0.571101, 0.0717263, 0.0125109, 2.01402, -0.807596, 4.36683, 4.32877, 1.05365, -1.78377, 0.70592, -1.43237, -1.79923, -1.78355, 0.909586, -0.0154644, -2.48947, -0.345468, 1.79923, 1.78355, -5.25793, -5.75693, 4.77387, 0.0585632, 1.73373, -8.76202, 4.66276}, {4.62915, 1.83443, 4.62633, 1.74201, -1.33137, 0.13686, 3.96359e-17, -3.87053e-16, 1.60497, -0.198956, 1.94285, -0.199718, -7.21395, 7.72698, 1.18954, -2.15324, 1.64567, -2.15302, 1.90731, 0.755828, -6.49756, 2.94906, -9.41706, 2.95189, -1.90731, -0.755828, 0.0776963, 0.245923, -2.40149, -1.73698}, {-1.54305, -0.611477, -1.54211, -5.22602, 3.99411, -0.41058, 1.18908e-16, -1.16116e-15, 1.60497, -0.198956, 1.94285, -0.199718, 5.92628, 4.8474, 7.90542, -2.15324, 1.64567, -8.57288, 1.90731, 0.755828, -0.0776963, 2.15324, -1.64567, 2.15302, -1.11149, -8.52722, 0.876567, 0.245923, -2.40149, -1.73698}, {-1.54305, -0.611477, -1.54211, 1.74201, -1.33137, 0.13686, 0, 0, -4.8149, -0.198956, 1.94285, -0.199718, -0.245923, 2.40149, 1.73698, -9.12126, 6.97115, -2.70046, 8.07952, 3.20174, 6.09074, 2.15324, -1.64567, 2.15302, -1.90731, -0.755828, 0.0776963, 1.04175, -10.1729, -0.938112}, {-1.54305, -0.611477, -1.54211, 1.74201, -1.33137, 0.13686, -1.18908e-16, 1.16116e-15, 1.60497, 0.596868, -5.82855, 0.599153, -0.245923, 2.40149, 1.73698, -2.15324, 1.64567, -2.15302, 1.90731, 0.755828, -0.0776963, 8.32544, 0.800244, 8.32145, -8.87534, 4.56966, -0.469744, 0.245923, -2.40149, -8.15685}, {4.35065, -1.72407, 1.44786, 0, 0, 1.17684, 1.43763, 1.45199, 0.197849, 0.0125895, -2.02668, -0.892072, 1.79257, -0.710355, -5.56548, -1.77701, -1.79476, -1.69921, -5.73495, -8.31307, -0.439401, 1.72665, 9.90148, 5.2675, -0.0155615, 2.50511, -0.351997, -1.79257, 0.710355, 0.858106}, {-1.45022, 0.57469, -0.482621, -1.29313e-15, 4.05633e-15, -3.53053, 1.43763, 1.45199, 0.197849, 0.0125895, -2.02668, -0.892072, 7.59343, -3.00911, 1.07238, -7.52752, -7.60272, -2.49061, 0.0155615, -2.50511, 0.351997, 1.77701, 1.79476, 1.69921, -0.0659197, 10.6118, 3.21629, -1.79257, 0.710355, 0.858106}, {-1.45022, 0.57469, -0.482621, 0, 0, 1.17684, -4.31288, -4.35597, -0.593548, 0.0125895, -2.02668, -0.892072, 1.79257, -0.710355, -0.858106, -1.77701, -1.79476, -6.40659, 5.81643, -4.80387, 2.28248, 1.77701, 1.79476, 1.69921, -0.0155615, 2.50511, -0.351997, -1.84292, 8.81707, 4.42639}, {-1.45022, 0.57469, -0.482621, 0, 0, 1.17684, 1.43763, 1.45199, 0.197849, -0.0377686, 6.08004, 2.67622, 1.79257, -0.710355, -0.858106, -1.77701, -1.79476, -1.69921, 0.0155615, -2.50511, 0.351997, 7.57787, -0.504, 3.6297, -0.0155615, 2.50511, -5.05937, -7.54308, -5.09761, 0.0667081}, {2.31688, 0.916898, -2.31818, 0.572147, 2.2454, -0.575329, -1.46447, -2.59853, -0.874972, 1.66462, 0.658766, 0.677573, -2.04119, -11.3793, 2.05732, 1.10297, 0.436497, 1.79267, 8.62268, 13.9839, 3.62627, -7.76145, -3.07156, -4.50296, -2.76479, -3.58975, -0.126381, -0.247396, 2.39768, 0.243998}, {-0.772295, -0.305633, 0.772728, -1.71644, -6.7362, 1.72599, -1.46447, -2.59853, -0.874972, 1.66462, 0.658766, 0.677573, 3.33658, -1.17515, -3.33491, 6.96086, 10.8306, 5.29256, 2.76479, 3.58975, 0.126381, -1.10297, -0.436497, -1.79267, -9.42327, -6.22481, -2.83667, -0.247396, 2.39768, 0.243998}, {-0.772295, -0.305633, 0.772728, 0.572147, 2.2454, -0.575329, 4.39341, 7.7956, 2.62492, 1.66462, 0.658766, 0.677573, 0.247396, -2.39768, -0.243998, -1.18562, -8.5451, 4.09399, 5.85397, 4.81228, -2.96453, -1.10297, -0.436497, -1.79267, -2.76479, -3.58975, -0.126381, -6.90587, -0.237381, -2.46629}, {-0.772295, -0.305633, 0.772728, 0.572147, 2.2454, -0.575329, -1.46447, -2.59853, -0.874972, -4.99386, -1.9763, -2.03272, 0.247396, -2.39768, -0.243998, 1.10297, 0.436497, 1.79267, 2.76479, 3.58975, 0.126381, 1.98621, 0.786034, -4.88358, -5.05338, -12.5713, 2.17494, 5.61049, 12.7918, 3.74389}, {-7.02177, -5.36656, 7.02938, 0.00253498, -1.78885, 1.2111e-11, -2.34313, 0, 0, 0, 0, 2.34313, -2.9064, 7.15542, 2.89626, 2.89313, 2.21115, -1.49701e-11, 9.37564, -2.21115, 2.89626, -2.89313, -2.21115, -9.3725, -0.00313341, 2.21115, -2.89626, 2.89626, 0, -2.89626}, {2.34059, 1.78885, -2.34313, -0.00760494, 5.36656, -5.47978e-11, -2.34313, 0, 0, 1.36297e-15, 0, 2.34313, -12.2586, -7.15542, 12.2688, 12.2656, 2.21115, -2.25779e-11, 0.00313341, -2.21115, 2.89626, -2.89313, -2.21115, 2.25785e-11, -0.00313341, 2.21115, -12.2688, 2.89626, 0, -2.89626}, {2.34059, 1.78885, -2.34313, 0.00253498, -1.78885, 1.21079e-11, 7.02938, 0, 0, 0, 0, 2.34313, -2.89626, -4.44089e-16, 2.89626, 2.88299, 9.36656, -6.33979e-11, -9.35923, -9.36656, 12.2688, -2.89313, -2.21115, 1.49668e-11, -0.00313341, 2.21115, -2.89626, 2.89626, 0, -12.2688}, {2.34059, 1.78885, -2.34313, 0.00253498, -1.78885, 1.2111e-11, -2.34313, 0, 0, 0, 0, -7.02938, -2.89626, -4.44089e-16, 2.89626, 2.89313, 2.21115, -1.49701e-11, 0.00313341, -2.21115, 2.89626, -12.2555, -9.36656, 9.3725, -0.0132733, 9.36656, -2.89626, 12.2688, 0, -2.89626}, {0.0377686, 6.08004, 3.1372, 4.64343e-16, 1.84009e-16, 1.28977, -1.43763, 1.45199, -0.146251, 1.45022, 0.57469, -0.0977806, 0.0155615, 2.50511, -5.4607, 1.77701, -1.79476, -1.41346, 7.54308, -5.09761, 2.05838, -7.57787, -0.504, 1.80458, -1.79257, -0.710355, -1.47337, -0.0155615, -2.50511, 0.301639}, {-0.0125895, -2.02668, -1.04573, -2.77397e-15, 8.42705e-16, -3.8693, -1.43763, 1.45199, -0.146251, 1.45022, 0.57469, -0.0977806, 0.0659197, 10.6118, 3.8813, 7.52752, -7.60272, -0.82846, 1.79257, 0.710355, 1.47337, -1.77701, 1.79476, 1.41346, -7.59343, -3.00911, -1.08225, -0.0155615, -2.50511, 0.301639}, {-0.0125895, -2.02668, -1.04573, 0, 0, 1.28977, 4.31288, -4.35597, 0.438752, 1.45022, 0.57469, -0.0977806, 0.0155615, 2.50511, -0.301639, 1.77701, -1.79476, -6.57252, 1.84292, 8.81707, 5.65631, -1.77701, 1.79476, 1.41346, -1.79257, -0.710355, -1.47337, -5.81643, -4.80387, 0.692761}, {-0.0125895, -2.02668, -1.04573, 4.64343e-16, 1.84009e-16, 1.28977, -1.43763, 1.45199, -0.146251, -4.35065, -1.72407, 0.293342, 0.0155615, 2.50511, -0.301639, 1.77701, -1.79476, -1.41346, 1.79257, 0.710355, 1.47337, -1.72665, 9.90148, 5.5964, -1.79257, -0.710355, -6.63244, 5.73495, -8.31307, 0.886641}, {-4.7272, -4.7272, 4.7272, 1.57573, -1.57573, 1.57573, -1.57596, -1.57551, -1.57551, -1.57551, 1.57551, 1.57551, -10.1984, 6.30294, -6.30294, 0.000278382, 3.89515, -0.000278382, 6.30412, 6.30176, 10.1972, 6.30176, -10.1972, -6.30176, -0.000278382, 0.000278382, -3.89515, 3.89543, -9.10383e-15, 9.10383e-15}, {1.57573, 1.57573, -1.57573, -4.7272, 4.7272, -4.7272, -1.57596, -1.57551, -1.57551, -1.57551, 1.57551, 1.57551, -10.1984, -6.30294, 6.30294, 6.30412, 10.1972, 6.30176, 0.000278382, -0.000278382, 3.89515, -0.000278382, -3.89515, 0.000278382, 6.30176, -6.30176, -10.1972, 3.89543, -9.10383e-15, 9.10383e-15}, {1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 1.57573, 4.72788, 4.72653, 4.72653, -1.57551, 1.57551, 1.57551, -3.89543, 2.66454e-15, -1.44329e-14, -6.30266, 10.1981, -6.30322, -6.30266, -6.30322, 10.1981, -0.000278382, -3.89515, 0.000278382, -0.000278382, 0.000278382, -3.89515, 10.1975, -6.30204, -6.30204}, {1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 1.57573, -1.57596, -1.57551, -1.57551, 4.72653, -4.72653, -4.72653, -3.89543, 1.02141e-14, -6.66134e-16, 0.000278382, 3.89515, -0.000278382, 0.000278382, -0.000278382, 3.89515, -6.30322, -10.1981, 6.30322, -6.30322, 6.30322, -10.1981, 10.1993, 6.30204, 6.30204}, {1.83228, 4.63528, 4.62937, 1.94057, -2.54509, -0.198723, -1.32981, 1.74407, 1.74185, 0, 2.34612, 0, -9.40601, 15.2361, 2.94793, -0.754941, 0.990119, -1.90741, 7.71791, -7.22223, -7.21302, 0.754941, -10.3746, 1.90741, -2.39867, 0.245948, 0.245635, 1.64373, -5.05575, -2.15304}, {-0.61076, -1.54509, -1.54312, -5.82171, 7.63528, 0.596168, -1.32981, 1.74407, 1.74185, 7.74523e-16, 2.34612, -1.01451e-15, 0.799305, 11.2361, 8.32553, 4.5643, -5.98616, -8.87479, 2.39867, -0.245948, -0.245635, 0.754941, -0.990119, 1.90741, -2.39867, -9.13852, 0.245635, 1.64373, -5.05575, -2.15304}, {-0.61076, -1.54509, -1.54312, 1.94057, -2.54509, -0.198723, 3.98943, -5.23221, -5.22554, 0, 2.34612, 0, -1.64373, 5.05575, 2.15304, -8.51722, 11.1705, -1.11252, 4.84171, 5.93443, 5.92686, 0.754941, -0.990119, 1.90741, -2.39867, 0.245948, 0.245635, 1.64373, -14.4402, -2.15304}, {-0.61076, -1.54509, -1.54312, 1.94057, -2.54509, -0.198723, -1.32981, 1.74407, 1.74185, 0, -7.03835, 0, -1.64373, 5.05575, 2.15304, -0.754941, 0.990119, -1.90741, 2.39867, -0.245948, -0.245635, 3.19798, 5.19026, 8.0799, -10.1609, 10.4263, 1.04052, 6.96297, -12.032, -9.12042}, {-1.42344, 3.96091, -1.43084, -1.98584, -0.354449, 0.357788, 0.9893, 0.397365, -1.35371, 0.52206, 1.27739, 0.518977, 9.81149, 3.4879, -2.46294, 1.23179, -0.0530468, 1.23103, -5.76653, -0.448647, 6.49858, -3.32003, -5.0565, -3.30694, 1.80933, -1.14081, -1.08374, -1.86814, -2.07011, 1.03179}, {0.474478, -1.3203, 0.476947, 5.95751, 1.06335, -1.07336, 0.9893, 0.397365, -1.35371, 0.52206, 1.27739, 0.518977, -0.029771, 7.35132, -2.93958, -2.72541, -1.64251, 6.64587, -1.80933, 1.14081, 1.08374, -1.23179, 0.0530468, -1.23103, -0.278909, -6.25036, -3.15965, -1.86814, -2.07011, 1.03179}, {0.474478, -1.3203, 0.476947, -1.98584, -0.354449, 0.357788, -2.9679, -1.1921, 4.06113, 0.52206, 1.27739, 0.518977, 1.86814, 2.07011, -1.03179, 9.17514, 1.36475, -0.200121, -3.70724, 6.42202, -0.824048, -1.23179, 0.0530468, -1.23103, 1.80933, -1.14081, -1.08374, -3.95638, -7.17965, -1.04412}, {0.474478, -1.3203, 0.476947, -1.98584, -0.354449, 0.357788, 0.9893, 0.397365, -1.35371, -1.56618, -3.83216, -1.55693, 1.86814, 2.07011, -1.03179, 1.23179, -0.0530468, 1.23103, -1.80933, 1.14081, 1.08374, -3.1297, 5.33426, -3.13882, 9.75268, 0.276984, -2.51489, -5.82534, -3.65957, 6.44663}, {5.36656, 5.36656, -5.36656, 1.41539, 1.41492, 1.85814, 0, 3.15102, 0, 0.373467, -2.77708, -3.64699, -5.19992, -5.19747, -11.9405, -1.74951, -5.64381, -2.29678, 2.21115, -14.2878, -2.21115, 0.255645, 16.7521, 16.8847, -2.21115, 1.68373, 2.21115, -0.461631, -0.462209, 4.50793}, {-1.78885, -1.78885, 1.78885, -4.24616, -4.24476, -5.57441, -2.92145e-16, 3.15102, 2.85286e-15, 0.373467, -2.77708, -3.64699, 7.61705, 7.61763, -11.6633, -1.74951, -18.2479, -2.29678, 2.21115, -1.68373, -2.21115, 1.74951, 5.64381, 2.29678, -3.70501, 12.7921, 16.7991, -0.461631, -0.462209, 4.50793}, {-1.78885, -1.78885, 1.78885, 1.41539, 1.41492, 1.85814, 0, -9.45305, 0, 0.373467, -2.77708, -3.64699, 0.461631, 0.462209, -4.50793, -7.41106, -11.3035, -9.72932, 9.36656, 5.47169, -9.36656, 1.74951, 5.64381, 2.29678, -2.21115, 1.68373, 2.21115, -1.9555, 10.6461, 19.0959}, {-1.78885, -1.78885, 1.78885, 1.41539, 1.41492, 1.85814, 0, 3.15102, 0, -1.1204, 8.33125, 10.941, 0.461631, 0.462209, -4.50793, -1.74951, -5.64381, -2.29678, 2.21115, -1.68373, -2.21115, 8.90493, 12.7992, -4.85864, -7.87269, -3.97595, -5.2214, -0.461631, -13.0663, 4.50793}, {-4.34476, -0.77549, 0.782793, -0.00873736, -1.40655, 0.564008, -1.44688, -0.0374651, -0.914786, 0.00736434, 1.18552, 0.611709, -1.74439, 7.04528, -2.63065, 1.79924, 1.7849, 0.433585, 5.78582, -0.123349, 5.11241, -1.8287, -6.52698, -2.88042, 0.00169715, 0.27321, -1.45327, 1.77934, -1.41907, 0.374623}, {1.44825, 0.258497, -0.260931, 0.0262121, 4.21965, -1.69202, -1.44688, -0.0374651, -0.914786, 0.00736434, 1.18552, 0.611709, -7.57235, 0.385087, 0.669101, 7.58676, 1.93476, 4.09273, -0.00169715, -0.27321, 1.45327, -1.79924, -1.7849, -0.433585, -0.0277602, -4.46887, -3.9001, 1.77934, -1.41907, 0.374623}, {1.44825, 0.258497, -0.260931, -0.00873736, -1.40655, 0.564008, 4.34064, 0.112395, 2.74436, 0.00736434, 1.18552, 0.611709, -1.77934, 1.41907, -0.374623, 1.83419, 7.4111, -1.82245, -5.79471, -1.3072, 2.49699, -1.79924, -1.7849, -0.433585, 0.00169715, 0.27321, -1.45327, 1.74988, -6.16115, -2.07221}, {1.44825, 0.258497, -0.260931, -0.00873736, -1.40655, 0.564008, -1.44688, -0.0374651, -0.914786, -0.022093, -3.55656, -1.83513, -1.77934, 1.41907, -0.374623, 1.79924, 1.7849, 0.433585, -0.00169715, -0.27321, 1.45327, -7.59225, -2.81889, 0.610139, 0.0366466, 5.89941, -3.7093, 7.56686, -1.26921, 4.03377}, {-4.817, -2.66454e-15, -5.32907e-15, -1.78885, -1.78885, 1.78885, 0.373353, 0.374783, -3.64588, -0.190167, 1.41407, 1.85702, 7.38185, 9.36656, -9.36656, 1.74966, 1.74789, 2.29541, -3.93962, -1.96239, 19.0901, -0.988987, -7.40418, -9.72349, 2.4462, 0.463257, -4.50655, -0.226431, -2.21115, 2.21115}, {1.60567, 6.66134e-16, 2.66454e-15, 5.36656, 5.36656, -5.36656, 0.373353, 0.374783, -3.64588, -0.190167, 1.41407, 1.85702, -6.19624, 2.21115, -2.21115, 0.256242, 0.248757, 16.8789, -2.4462, -0.463257, 4.50655, -1.74966, -1.74789, -2.29541, 3.20687, -5.19303, -11.9346, -0.226431, -2.21115, 2.21115}, {1.60567, 0, 0, -1.78885, -1.78885, 1.78885, -1.12006, -1.12435, 10.9376, -0.190167, 1.41407, 1.85702, 0.226431, 2.21115, -2.21115, 8.90507, 8.90331, -4.86001, -8.86888, -0.463257, 4.50655, -1.74966, -1.74789, -2.29541, 2.4462, 0.463257, -4.50655, 0.534237, -7.86743, -5.21694}, {1.60567, 2.22045e-16, 1.11022e-15, -1.78885, -1.78885, 1.78885, 0.373353, 0.374783, -3.64588, 0.570501, -4.24221, -5.57107, 0.226431, 2.21115, -2.21115, 1.74966, 1.74789, 2.29541, -2.4462, -0.463257, 4.50655, -8.17233, -1.74789, -2.29541, 9.60162, 7.61867, -11.662, -1.71984, -3.71028, 16.7947}, {-5.36225, -5.36694, -5.37021, 0, -1.60567, 0, -0.373167, -0.373493, -3.64724, -1.41425, 0.190182, 1.85717, -2.20937, 6.19609, -2.21265, 0.46126, 2.44638, 4.50824, -0.25544, -0.255663, 16.8846, 5.19574, -3.20711, -11.9369, 1.74811, 1.74964, -2.29559, 2.20937, 0.226585, 2.21265}, {1.78742, 1.78898, 1.79007, 0, 4.817, 0, -0.373167, -0.373493, -3.64724, -1.41425, 0.190182, 1.85717, -9.35904, -7.3825, -9.37293, 1.95393, 3.94035, 19.0972, -1.74811, -1.74964, 2.29559, -0.46126, -2.44638, -4.50824, 7.40511, 0.988907, -9.72428, 2.20937, 0.226585, 2.21265}, {1.78742, 1.78898, 1.79007, 0, -1.60567, 0, 1.1195, 1.12048, 10.9417, -1.41425, 0.190182, 1.85717, -2.20937, -0.226585, -2.21265, 0.46126, 8.86905, 4.50824, -8.89778, -8.90555, -4.86469, -0.46126, -2.44638, -4.50824, 1.74811, 1.74964, -2.29559, 7.86637, -0.534145, -5.21604}, {1.78742, 1.78898, 1.79007, 0, -1.60567, 0, -0.373167, -0.373493, -3.64724, 4.24275, -0.570547, -5.57152, -2.20937, -0.226585, -2.21265, 0.46126, 2.44638, 4.50824, -1.74811, -1.74964, 2.29559, -7.61093, -9.60229, -11.6685, 1.74811, 8.17231, -2.29559, 3.70204, 1.72056, 16.8016}, {-0.829936, -0.831314, 3.98569, 1.1323, 1.13131, 1.13131, 0.168871, -1.43624, 0.169424, -1.57782, 0.027827, 0.027827, -6.27076, -6.26615, -4.28143, -1.60834, 0.376916, -1.6078, -1.22617, 7.17775, 0.755077, 7.9196, -0.488224, 1.49649, 0.550688, -1.43277, -1.43277, 1.74155, 1.7409, -0.243816}, {0.276645, 0.277105, -1.32856, -3.3969, -3.39394, -3.39394, 0.168871, -1.43624, 0.169424, -1.57782, 0.027827, 0.027827, -2.84813, -2.84932, 5.55807, -2.28382, 6.12189, -2.2855, -0.550688, 1.43277, 1.43277, 1.60834, -0.376916, 1.6078, 6.86195, -1.54408, -1.54408, 1.74155, 1.7409, -0.243816}, {0.276645, 0.277105, -1.32856, 1.1323, 1.13131, 1.13131, -0.506612, 4.30873, -0.508273, -1.57782, 0.027827, 0.027827, -1.74155, -1.7409, 0.243816, -6.13754, -4.14833, -6.13305, -1.65727, 0.324356, 6.74703, 1.60834, -0.376916, 1.6078, 0.550688, -1.43277, -1.43277, 8.05282, 1.62959, -0.355124}, {0.276645, 0.277105, -1.32856, 1.1323, 1.13131, 1.13131, 0.168871, -1.43624, 0.169424, 4.73345, -0.0834809, -0.0834809, -1.74155, -1.7409, 0.243816, -1.60834, 0.376916, -1.6078, -0.550688, 1.43277, 1.43277, 0.501756, -1.48534, 6.92205, -3.97852, -5.95802, -5.95802, 1.06607, 7.48587, -0.921513}, {-8.33162, 1.1204, 10.941, -1.41498, -1.41539, 1.85814, -3.15057, 0, 0, 1.78834, 1.78885, 1.78885, 3.97613, 7.87269, -5.2214, 5.64333, 1.74951, -2.29678, 13.0638, 0.461631, 4.50793, -12.7967, -8.90493, -4.85864, -0.461499, -0.461631, -4.50793, 1.6838, -2.21115, -2.21115}, {2.77721, -0.373467, -3.64699, 4.24495, 4.24616, -5.57441, -3.15057, 0, 0, 1.78834, 1.78885, 1.78885, -12.7926, 3.70501, 16.7991, 18.2456, 1.74951, -2.29678, 0.461499, 0.461631, 4.50793, -5.64333, -1.74951, 2.29678, -7.61487, -7.61705, -11.6633, 1.6838, -2.21115, -2.21115}, {2.77721, -0.373467, -3.64699, -1.41498, -1.41539, 1.85814, 9.4517, 0, 0, 1.78834, 1.78885, 1.78885, -1.6838, 2.21115, 2.21115, 11.3033, 7.41106, -9.72932, -10.6473, 1.9555, 19.0959, -5.64333, -1.74951, 2.29678, -0.461499, -0.461631, -4.50793, -5.46957, -9.36656, -9.36656}, {2.77721, -0.373467, -3.64699, -1.41498, -1.41539, 1.85814, -3.15057, 0, 0, -5.36503, -5.36656, -5.36656, -1.6838, 2.21115, 2.21115, 5.64333, 1.74951, -2.29678, 0.461499, 0.461631, 4.50793, -16.7522, -0.255645, 16.8847, 5.19843, 5.19992, -11.9405, 14.2861, -2.21115, -2.21115}, {-3.98391, -5.22497, -0.407969, -1.83214e-15, -1.4677e-15, 1.60567, 0.61239, -1.54296, -1.54296, -1.94036, -0.198701, -0.198701, -1.64146, -2.15281, -8.57548, -0.756955, 1.9072, -0.0775154, -4.84797, 5.92622, 7.91093, 8.51839, -1.1124, 0.87232, 2.39842, 0.245608, -1.73911, 1.64146, 2.15281, 2.15281}, {1.32797, 1.74166, 0.13599, 3.05267e-15, -1.60751e-15, -4.817, 0.61239, -1.54296, -1.54296, -1.94036, -0.198701, -0.198701, -6.95334, -9.11944, -2.69677, -3.20651, 8.07903, 6.09431, -2.39842, -0.245608, 1.73911, 0.756955, -1.9072, 0.0775154, 10.1599, 1.04041, -0.944303, 1.64146, 2.15281, 2.15281}, {1.32797, 1.74166, 0.13599, 0, 0, 1.60567, -1.83717, 4.62887, 4.62887, -1.94036, -0.198701, -0.198701, -1.64146, -2.15281, -2.15281, -0.756955, 1.9072, -6.50019, -7.71029, -7.21224, 1.19515, 0.756955, -1.9072, 0.0775154, 2.39842, 0.245608, -1.73911, 9.4029, 2.94761, 2.94761}, {1.32797, 1.74166, 0.13599, 7.73451e-16, 7.92047e-17, 1.60567, 0.61239, -1.54296, -1.54296, 5.82108, 0.596103, 0.596103, -1.64146, -2.15281, -2.15281, -0.756955, 1.9072, -0.0775154, -2.39842, -0.245608, 1.73911, -4.55492, -8.87383, -0.466443, 2.39842, 0.245608, -8.16178, -0.808098, 8.32463, 8.32463}, {-1.77636e-15, 4.817, 8.88178e-16, -0.373167, -0.373493, 3.64724, -1.41425, 0.190182, -1.85717, 1.78742, 1.78898, -1.79007, 1.95393, 3.94035, -19.0972, 2.20937, 0.226585, -2.21265, 7.40511, 0.988907, 9.72428, -9.35904, -7.3825, 9.37293, -1.74811, -1.74964, -2.29559, -0.46126, -2.44638, 4.50824}, {0, -1.60567, 0, 1.1195, 1.12048, -10.9417, -1.41425, 0.190182, -1.85717, 1.78742, 1.78898, -1.79007, 0.46126, 8.86905, -4.50824, 7.86637, -0.534145, 5.21604, 1.74811, 1.74964, 2.29559, -2.20937, -0.226585, 2.21265, -8.89778, -8.90555, 4.86469, -0.46126, -2.44638, 4.50824}, {2.22045e-16, -1.60567, 6.66134e-16, -0.373167, -0.373493, 3.64724, 4.24275, -0.570547, 5.57152, 1.78742, 1.78898, -1.79007, 0.46126, 2.44638, -4.50824, 3.70204, 1.72056, -16.8016, 1.74811, 8.17231, 2.29559, -2.20937, -0.226585, 2.21265, -1.74811, -1.74964, -2.29559, -7.61093, -9.60229, 11.6685}, {-2.22045e-16, -1.60567, 6.66134e-16, -0.373167, -0.373493, 3.64724, -1.41425, 0.190182, -1.85717, -5.36225, -5.36694, 5.37021, 0.46126, 2.44638, -4.50824, 2.20937, 0.226585, -2.21265, 1.74811, 1.74964, 2.29559, -2.20937, 6.19609, 2.21265, -0.25544, -0.255663, -16.8846, 5.19574, -3.20711, 11.9369}, {5.57441, 0.570843, -4.24616, 1.45374e-15, 1.60567, 1.48869e-16, -1.78885, -1.78885, -1.78885, 3.64699, 0.373467, 0.373467, 2.29678, -8.17219, -1.74951, 2.21115, 0.226431, 2.21115, 11.6633, 9.60176, 7.61705, -16.7991, -1.7203, -3.70501, -4.50793, -2.44635, -0.461631, -2.29678, 1.74951, 1.74951}, {-1.85814, -0.190281, 1.41539, -6.50039e-15, -4.817, -2.58579e-15, -1.78885, -1.78885, -1.78885, 3.64699, 0.373467, 0.373467, 9.72932, -0.988391, -7.41106, 9.36656, 7.38185, 9.36656, 4.50793, 2.44635, 0.461631, -2.21115, -0.226431, -2.21115, -19.0959, -3.94022, -1.9555, -2.29678, 1.74951, 1.74951}, {-1.85814, -0.190281, 1.41539, 0, 1.60567, 0, 5.36656, 5.36656, 5.36656, 3.64699, 0.373467, 0.373467, 2.29678, -1.74951, -1.74951, 2.21115, -6.19624, 2.21115, 11.9405, 3.20747, -5.19992, -2.21115, -0.226431, -2.21115, -4.50793, -2.44635, -0.461631, -16.8847, 0.255645, 0.255645}, {-1.85814, -0.190281, 1.41539, 1.45374e-15, 1.60567, 1.48869e-16, -1.78885, -1.78885, -1.78885, -10.941, -1.1204, -1.1204, 2.29678, -1.74951, -1.74951, 2.21115, 0.226431, 2.21115, 4.50793, 2.44635, 0.461631, 5.2214, 0.534693, -7.87269, -4.50793, -8.86902, -0.461631, 4.85864, 8.90493, 8.90493}, {0.596103, -0.596103, -5.82108, 1.74166, -0.13599, -1.32797, -1.54296, 1.54296, -0.61239, 0, -1.60567, 0, -8.87383, 0.466443, 4.55492, -0.245608, -1.73911, 2.39842, 8.32463, -8.32463, 0.808098, 0.245608, 8.16178, -2.39842, -2.15281, 2.15281, 1.64146, 1.9072, 0.0775154, 0.756955}, {-0.198701, 0.198701, 1.94036, -5.22497, 0.407969, 3.98391, -1.54296, 1.54296, -0.61239, 0, -1.60567, 0, -1.1124, -0.87232, -8.51839, 5.92622, -7.91093, 4.84797, 2.15281, -2.15281, -1.64146, 0.245608, 1.73911, -2.39842, -2.15281, 8.57548, 1.64146, 1.9072, 0.0775154, 0.756955}, {-0.198701, 0.198701, 1.94036, 1.74166, -0.13599, -1.32797, 4.62887, -4.62887, 1.83717, 0, -1.60567, 0, -1.9072, -0.0775154, -0.756955, -7.21224, -1.19515, 7.71029, 2.94761, -2.94761, -9.4029, 0.245608, 1.73911, -2.39842, -2.15281, 2.15281, 1.64146, 1.9072, 6.50019, 0.756955}, {-0.198701, 0.198701, 1.94036, 1.74166, -0.13599, -1.32797, -1.54296, 1.54296, -0.61239, 0, 4.817, 0, -1.9072, -0.0775154, -0.756955, -0.245608, -1.73911, 2.39842, 2.15281, -2.15281, -1.64146, 1.04041, 0.944303, -10.1599, -9.11944, 2.69677, 6.95334, 8.07903, -6.09431, 3.20651}, {0, 9.45441, 0, 1.36222, 1.36261, 1.78885, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -7.1327, -3.23931, -9.36656, 2.21051, -1.68428, -2.21115, 16.4966, 3.89543, 0, -9.36389, -5.47113, 9.36656, -3.89432, -3.89543, 0, 1.6838, -2.21115, 2.21115}, {-2.22045e-16, -3.15147, 0, -4.08667, -4.08784, -5.36656, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 14.817, -2.21115, 14.8128, -1.68428, -2.21115, 3.89432, 3.89543, 0, -2.21051, 1.68428, 2.21115, -11.0477, -11.0508, 7.15542, 1.6838, -2.21115, 2.21115}, {2.22045e-16, -3.15147, 0, 1.36222, 1.36261, 1.78885, 9.4517, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 2.21115, -2.21115, -3.23838, -7.13474, -9.36656, 3.89432, 16.5013, 0, -2.21051, 1.68428, 2.21115, -3.89432, -3.89543, 0, -5.46957, -9.36656, 9.36656}, {-2.22045e-16, -3.15147, 0, 1.36222, 1.36261, 1.78885, -3.15057, 0, 0, -5.36503, -5.36656, 5.36656, -1.6838, 2.21115, -2.21115, 2.21051, -1.68428, -2.21115, 3.89432, 3.89543, 0, -2.21051, 14.2902, 2.21115, -9.34321, -9.34589, -7.15542, 14.2861, -2.21115, 2.21115}, {-2.95778e-16, 8.88178e-16, 5.41667, 1.44665, -1.44665, -0.51339, -1.44665, -0.572575, 0.978606, 1.97314e-12, 2.01922, 1.34034, -7.57474, 7.57474, 4.91993, 2.43894e-12, 2.4959, -0.575039, 7.57474, 2.99804, -2.89226, -1.03315e-11, -10.5728, -4.78632, -1.78815, -0.707741, -1.02217, 1.78815, -1.78815, -2.86637}, {1.99359e-16, 4.44089e-16, -1.80556, -4.33994, 4.33994, 1.54017, -1.44665, -0.572575, 0.978606, 1.97222e-12, 2.01922, 1.34034, -1.78815, 1.78815, 10.0886, 5.78659, 4.7862, -4.48946, 1.78815, 0.707741, 1.02217, -2.43805e-12, -2.4959, 0.575039, -1.78815, -8.78463, -6.38352, 1.78815, -1.78815, -2.86637}, {8.21831e-17, -4.44089e-16, -1.80556, 1.44665, -1.44665, -0.51339, 4.33994, 1.71772, -2.93582, 1.97167e-12, 2.01922, 1.34034, -1.78815, 1.78815, 2.86637, -5.78659, 8.28248, 1.47852, 1.78815, 0.707741, 8.24439, -2.43716e-12, -2.4959, 0.575039, -1.78815, -0.707741, -1.02217, 1.78815, -9.86504, -8.22773}, {-1.03785e-17, 0, -1.80556, 1.44665, -1.44665, -0.51339, -1.44665, -0.572575, 0.978606, -5.91996e-12, -6.05767, -4.02102, -1.78815, 1.78815, 2.86637, 2.43916e-12, 2.4959, -0.575039, 1.78815, 0.707741, 1.02217, -2.43978e-12, -2.4959, 7.79726, -7.57474, 5.07885, 1.03139, 7.57474, 0.502145, -6.7808}, {-1.83228, -4.62937, -4.62777, -1.94057, 0.198723, 0.200419, 1.32981, -1.74185, -0.13734, 0, 0, -1.60567, 9.40601, -2.94793, -2.95615, 0.754941, 1.90741, -0.0779689, -7.71791, 7.21302, -1.18762, -0.754941, -1.90741, 6.50064, 2.39867, -0.245635, 1.73698, -1.64373, 2.15304, 2.15448}, {0.61076, 1.54312, 1.54259, 5.82171, -0.596168, -0.601256, 1.32981, -1.74185, -0.13734, 0, 0, -1.60567, -0.799305, -8.32553, -8.32484, -4.5643, 8.87479, 0.471392, -2.39867, 0.245635, -1.73698, -0.754941, -1.90741, 0.0779689, 2.39867, -0.245635, 8.15966, -1.64373, 2.15304, 2.15448}, {0.61076, 1.54312, 1.54259, -1.94057, 0.198723, 0.200419, -3.98943, 5.22554, 0.412021, 0, 0, -1.60567, 1.64373, -2.15304, -2.15448, 8.51722, 1.11252, -0.879643, -4.84171, -5.92686, -7.90734, -0.754941, -1.90741, 0.0779689, 2.39867, -0.245635, 1.73698, -1.64373, 2.15304, 8.57715}, {0.61076, 1.54312, 1.54259, -1.94057, 0.198723, 0.200419, 1.32981, -1.74185, -0.13734, 0, 0, 4.817, 1.64373, -2.15304, -2.15448, 0.754941, 1.90741, -0.0779689, -2.39867, 0.245635, -1.73698, -3.19798, -8.0799, -6.09239, 10.1609, -1.04052, 0.93531, -6.96297, 9.12042, 2.70384}, {-5.36656, 5.36656, -5.36656, 0, 0, -3.15147, -0.373467, 3.64699, 2.778, -1.41539, -1.85814, -1.41539, -2.21115, 2.21115, 14.2902, 0.461631, -4.50793, 0.461631, -0.255645, -16.8847, -16.7569, 5.19992, 11.9405, 5.19992, 1.74951, 2.29678, 5.64494, 2.21115, -2.21115, -1.68428}, {1.78885, -1.78885, 1.78885, 0, 0, 9.45441, -0.373467, 3.64699, 2.778, -1.41539, -1.85814, -1.41539, -9.36656, 9.36656, -5.47113, 1.9555, -19.0959, -10.6504, -1.74951, -2.29678, -5.64494, -0.461631, 4.50793, -0.461631, 7.41106, 9.72932, 11.3065, 2.21115, -2.21115, -1.68428}, {1.78885, -1.78885, 1.78885, 0, 0, -3.15147, 1.1204, -10.941, -8.334, -1.41539, -1.85814, -1.41539, -2.21115, 2.21115, 1.68428, 0.461631, -4.50793, 13.0675, -8.90493, 4.85864, -12.8004, -0.461631, 4.50793, -0.461631, 1.74951, 2.29678, 5.64494, 7.87269, 5.2214, 3.97726}, {1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -0.373467, 3.64699, 2.778, 4.24616, 5.57441, 4.24616, -2.21115, 2.21115, 1.68428, 0.461631, -4.50793, 0.461631, -1.74951, -2.29678, -5.64494, -7.61705, 11.6633, -7.61705, 1.74951, 2.29678, 18.2508, 3.70501, -16.7991, -12.7963}, {1.64026, -3.9353, -3.8467e-12, 0.194118, 0, -1.44665, -0.509273, -1.31177, -1.28236e-12, 0.861908, 0, 1.44665, -0.34059, -1.62143, 7.57474, 0.389553, 1.62143, 1.78815, 3.34241, 5.24706, 5.12945e-12, -3.83718, -1.62143, -7.57474, -1.30532, 0, 0, -0.435881, 1.62143, -1.78815}, {-0.546753, 1.31177, 1.28098e-12, -0.582353, 3.77031e-16, 4.33994, -0.509273, -1.31177, -1.28138e-12, 0.861908, 8.26902e-17, 1.44665, 2.62289, -6.86849, 1.78815, 2.42664, 6.86849, 1.78815, 1.30532, -3.78785e-16, 4.44089e-16, -0.389553, -1.62143, -1.78815, -4.75295, -2.77626e-16, -5.78659, -0.435881, 1.62143, -1.78815}, {-0.546753, 1.31177, 1.28164e-12, 0.194118, 0, -1.44665, 1.52782, 3.9353, 3.84623e-12, 0.861908, 0, 1.44665, 0.435881, -1.62143, 1.78815, -0.386918, 1.62143, 7.57474, 3.49233, -5.24706, -5.12657e-12, -0.389553, -1.62143, -1.78815, -1.30532, 0, -4.44089e-16, -3.88351, 1.62143, -7.57474}, {-0.546753, 1.31177, 1.28164e-12, 0.194118, 0, -1.44665, -0.509273, -1.31177, -1.28138e-12, -2.58572, 0, -4.33994, 0.435881, -1.62143, 1.78815, 0.389553, 1.62143, 1.78815, 1.30532, -3.2565e-16, -2.22045e-16, 1.79746, -6.86849, -1.78815, -2.08179, 0, 5.78659, 1.60121, 6.86849, -1.78815}, {0.831641, 5.95736e-16, -6.19774, -0.482067, 1.31177, -0.482067, -0.449021, -1.31177, -0.449021, 1.2083, 1.98579e-16, -1.13482, 2.86679, -6.86849, -0.0294728, 1.15089, 0, 1.15089, 2.69376, 6.86849, -0.202503, -5.98409, -7.94315e-16, 3.38841, -0.897675, -1.62143, 1.99859, -0.938522, 1.62143, 1.95774}, {-0.277214, -1.75113e-16, 2.06591, 1.4462, -3.9353, 1.4462, -0.449021, -1.31177, -0.449021, 1.2083, 3.97157e-16, -1.13482, 2.04738, -1.62143, -10.2214, 2.94697, 5.24706, 2.94697, 0.897675, 1.62143, -1.99859, -1.15089, -2.22045e-16, -1.15089, -5.73088, -1.62143, 6.53788, -0.938522, 1.62143, 1.95774}, {-0.277214, 7.58234e-17, 2.06591, -0.482067, 1.31177, -0.482067, 1.34706, 3.9353, 1.34706, 1.2083, -2.97868e-16, -1.13482, 0.938522, -1.62143, -1.95774, 3.07916, -5.24706, 3.07916, 2.00653, 1.62143, -10.2622, -1.15089, 4.44089e-16, -1.15089, -0.897675, -1.62143, 1.99859, -5.77173, 1.62143, 6.49704}, {-0.277214, 0, 2.06591, -0.482067, 1.31177, -0.482067, -0.449021, -1.31177, -0.449021, -3.6249, 0, 3.40447, 0.938522, -1.62143, -1.95774, 1.15089, 0, 1.15089, 0.897675, 1.62143, -1.99859, -0.0420334, 0, -9.41454, 1.03059, -6.86849, 3.92685, 0.857562, 6.86849, 3.75382}, {10.941, -1.1204, -8.334, 1.78885, -1.78885, 1.78885, 1.85814, 1.41539, -1.41539, 0, 0, -3.15147, -4.85864, 8.90493, -12.8004, -4.50793, 0.461631, -0.461631, -5.2214, -7.87269, 3.97726, 4.50793, -0.461631, 13.0675, -2.21115, 2.21115, 1.68428, -2.29678, -1.74951, 5.64494}, {-3.64699, 0.373467, 2.778, -5.36656, 5.36656, -5.36656, 1.85814, 1.41539, -1.41539, 0, 0, -3.15147, 16.8847, 0.255645, -16.7569, -11.9405, -5.19992, 5.19992, 2.21115, -2.21115, -1.68428, 4.50793, -0.461631, 0.461631, -2.21115, 2.21115, 14.2902, -2.29678, -1.74951, 5.64494}, {-3.64699, 0.373467, 2.778, 1.78885, -1.78885, 1.78885, -5.57441, -4.24616, 4.24616, 0, 0, -3.15147, 2.29678, 1.74951, -5.64494, -11.6633, 7.61705, -7.61705, 16.7991, -3.70501, -12.7963, 4.50793, -0.461631, 0.461631, -2.21115, 2.21115, 1.68428, -2.29678, -1.74951, 18.2508}, {-3.64699, 0.373467, 2.778, 1.78885, -1.78885, 1.78885, 1.85814, 1.41539, -1.41539, 0, 0, 9.45441, 2.29678, 1.74951, -5.64494, -4.50793, 0.461631, -0.461631, 2.21115, -2.21115, -1.68428, 19.0959, -1.9555, -10.6504, -9.36656, 9.36656, -5.47113, -9.72932, -7.41106, 11.3065}, {1.77636e-15, 0, 9.45441, 1.78885, 1.78885, 1.78885, 1.36261, -1.78885, 1.36261, -3.15147, 0, 0, -9.36656, -9.36656, -5.47113, -3.89543, 0, -3.89543, -7.13474, 9.36656, -3.23931, 16.5013, 0, 3.89543, 1.68428, -2.21115, -2.21115, 2.21115, 2.21115, -1.68428}, {0, 0, -3.15147, -5.36656, -5.36656, -5.36656, 1.36261, -1.78885, 1.36261, -3.15147, 0, 0, -2.21115, -2.21115, 14.2902, -9.34589, 7.15542, -9.34589, -1.68428, 2.21115, 2.21115, 3.89543, 0, 3.89543, 14.2902, -2.21115, -2.21115, 2.21115, 2.21115, -1.68428}, {4.44089e-16, 0, -3.15147, 1.78885, 1.78885, 1.78885, -4.08784, 5.36656, -4.08784, -3.15147, 0, 0, -2.21115, -2.21115, 1.68428, -11.0508, -7.15542, -11.0508, -1.68428, 2.21115, 14.817, 3.89543, 0, 3.89543, 1.68428, -2.21115, -2.21115, 14.817, 2.21115, -1.68428}, {-4.44089e-16, 0, -3.15147, 1.78885, 1.78885, 1.78885, 1.36261, -1.78885, 1.36261, 9.45441, 0, 0, -2.21115, -2.21115, 1.68428, -3.89543, 0, -3.89543, -1.68428, 2.21115, 2.21115, 3.89543, 0, 16.5013, -5.47113, -9.36656, -9.36656, -3.23931, 9.36656, -7.13474}, {5.22884, -3.98763, -5.22319, 0.200328, -1.9397, -2.54071, 8.97324e-16, 3.55112e-16, 2.34313, 1.54262, 0.610485, -1.54348, 1.10547, 8.51339, 11.1512, -0.24762, 2.3976, 0.244222, 2.1544, -1.643, -14.4208, -5.92285, -4.83954, 5.92971, -2.1544, 1.643, 5.04833, -1.90678, -0.754601, -0.988412}, {-1.74295, 1.32921, 1.74106, -0.600985, 5.81909, 7.62212, 0, 0, 2.34313, 1.54262, 0.610485, -1.54348, 8.87857, -4.56224, -5.97584, -0.24762, 2.3976, -9.12828, 2.1544, -1.643, -5.04833, 0.24762, -2.3976, -0.244222, -8.32487, -0.798945, 11.2223, -1.90678, -0.754601, -0.988412}, {-1.74295, 1.32921, 1.74106, 0.200328, -1.9397, -2.54071, 0, 0, -7.02938, 1.54262, 0.610485, -1.54348, 1.90678, 0.754601, 0.988412, -1.04893, 10.1564, 10.407, 9.12619, -6.95984, -12.0126, 0.24762, -2.3976, -0.244222, -2.1544, 1.643, 5.04833, -8.07725, -3.19654, 5.18552}, {-1.74295, 1.32921, 1.74106, 0.200328, -1.9397, -2.54071, 8.97324e-16, 3.55112e-16, 2.34313, -4.62785, -1.83146, 4.63045, 1.90678, 0.754601, 0.988412, -0.24762, 2.3976, 0.244222, 2.1544, -1.643, -5.04833, 7.21941, -7.71444, -7.20847, -2.95571, 9.40178, 15.2112, -1.90678, -0.754601, -10.3609}, {0.403167, 4.33994, -4.33994, 1.56712, -1.12319e-15, 3.41061e-16, -0.345916, 1.4404, 0.569981, -1.08682, 0.00624416, -2.01663, -8.03944, 1.78815, -1.78815, -1.50949, -1.78044, -0.704535, 1.97736, -5.75389, -4.77261, 5.85676, 1.75546, 8.77105, -0.59369, -0.00771821, 2.49269, 1.77095, -1.78815, 1.78815}, {-0.134389, -1.44665, 1.44665, -4.70136, 1.67385e-15, 3.01891e-15, -0.345916, 1.4404, 0.569981, -1.08682, 0.00624416, -2.01663, -1.2334, 7.57474, -7.57474, -0.125826, -7.54205, -2.98446, 0.59369, 0.00771821, -2.49269, 1.50949, 1.78044, 0.704535, 3.75357, -0.0326948, 10.5592, 1.77095, -1.78815, 1.78815}, {-0.134389, -1.44665, 1.44665, 1.56712, 0, 0, 1.03775, -4.32121, -1.70994, -1.08682, 0.00624416, -2.01663, -1.77095, 1.78815, -1.78815, -7.77798, -1.78044, -0.704535, 1.13125, 5.79431, -8.27928, 1.50949, 1.78044, 0.704535, -0.59369, -0.00771821, 2.49269, 6.11822, -1.81313, 9.85467}, {-0.134389, -1.44665, 1.44665, 1.56712, -2.42925e-18, 7.84555e-16, -0.345916, 1.4404, 0.569981, 3.26045, -0.0187325, 6.04988, -1.77095, 1.78815, -1.78815, -1.50949, -1.78044, -0.704535, 0.59369, 0.00771821, -2.49269, 2.04705, 7.56702, -5.08205, -6.86218, -0.00771821, 2.49269, 3.15462, -7.54977, -0.491769}, {-7.02938, 5.36656, -7.02938, -2.34313, 0, 0, 0, 0, -2.34313, 1.02097e-11, 1.78885, 1.02102e-11, 9.3725, 2.21115, -2.89626, 2.89626, 0, 2.89626, -2.89626, 2.21115, 9.3725, -2.89626, -7.15542, -2.89626, 2.89626, -2.21115, -1.26205e-11, -1.26199e-11, -2.21115, 2.89626}, {2.34313, -1.78885, 2.34313, 7.02938, 0, 0, 0, 0, -2.34313, 1.02086e-11, 1.78885, 1.02066e-11, -9.3725, 9.36656, -12.2688, 2.89626, 0, 12.2688, -2.89626, 2.21115, 1.26154e-11, -2.89626, 4.44089e-16, -2.89626, 2.89626, -9.36656, -5.34422e-11, -1.26186e-11, -2.21115, 2.89626}, {2.34313, -1.78885, 2.34313, -2.34313, 0, 0, 0, 0, 7.02938, 1.0206e-11, 1.78885, 1.02081e-11, 1.26148e-11, 2.21115, -2.89626, 12.2688, 0, 2.89626, -12.2688, 9.36656, -9.3725, -2.89626, 4.44089e-16, -2.89626, 2.89626, -2.21115, -1.26179e-11, -5.34395e-11, -9.36656, 2.89626}, {2.34313, -1.78885, 2.34313, -2.34313, 0, 0, 0, 0, -2.34313, -3.06361e-11, -5.36656, -3.06329e-11, 1.26222e-11, 2.21115, -2.89626, 2.89626, 0, 2.89626, -2.89626, 2.21115, 1.26209e-11, -12.2688, 7.15542, -12.2688, 12.2688, -2.21115, -1.26215e-11, -1.26228e-11, -2.21115, 12.2688}, {7.02938, 0, 8.88974e-16, 2.34566, -1.78885, -2.34313, -1.47457e-18, 1.04056e-15, 2.34313, -0.00253498, 1.78885, -1.02102e-11, -9.38578, 9.36656, 12.2688, -2.8994, 2.21115, -1.26206e-11, 2.89626, -4.88498e-15, -12.2688, 2.90954, -9.36656, 5.34614e-11, -2.89626, 8.88178e-16, 2.89626, 0.00313341, -2.21115, -2.89626}, {-2.34313, 0, 7.14229e-17, -7.03698, 5.36656, 7.02938, 0, 0, 2.34313, -0.00253498, 1.78885, -1.02097e-11, 9.36937, 2.21115, 2.89626, -2.8994, 2.21115, -9.3725, 2.89626, 0, -2.89626, 2.8994, -2.21115, 1.26197e-11, -2.88612, -7.15542, 2.89626, 0.00313341, -2.21115, -2.89626}, {-2.34313, 0, -3.09288e-16, 2.34566, -1.78885, -2.34313, 0, 0, -7.02938, -0.00253498, 1.78885, -1.02071e-11, -0.00313341, 2.21115, 2.89626, -12.282, 9.36656, 9.3725, 12.2688, 0, -2.89626, 2.8994, -2.21115, 1.2617e-11, -2.89626, 0, 2.89626, 0.0132733, -9.36656, -2.89626}, {-2.34313, -2.22045e-16, 6.36673e-16, 2.34566, -1.78885, -2.34313, -1.47457e-18, 1.04056e-15, 2.34313, 0.00760494, -5.36656, 3.06361e-11, -0.00313341, 2.21115, 2.89626, -2.8994, 2.21115, -1.26219e-11, 2.89626, -1.33227e-15, -2.89626, 12.2719, -2.21115, 1.26202e-11, -12.2789, 7.15542, 12.2688, 0.00313341, -2.21115, -12.2688}, {5.3029, -0.485897, 0.486322, 0.215713, 1.38996, 0.214498, 0.501223, -0.501223, -1.10401, 1.0507, -1.0507, 1.05162, 1.05543, -7.4781, -0.922752, -0.886182, -1.09853, 1.09949, -0.439523, 2.42424, 5.98103, -3.31661, 5.30132, -5.30596, -1.56537, -0.419345, -1.565, -1.91828, 1.91828, 0.0647586}, {-1.76763, 0.161966, -0.162107, -0.647139, -4.16987, -0.643495, 0.501223, -0.501223, -1.10401, 1.0507, -1.0507, 1.05162, 8.98882, -2.56614, 0.583671, -2.89107, 0.90636, 5.51552, 1.56537, 0.419345, 1.565, 0.886182, 1.09853, -1.09949, -5.76816, 3.78345, -5.77147, -1.91828, 1.91828, 0.0647586}, {-1.76763, 0.161966, -0.162107, 0.215713, 1.38996, 0.214498, -1.50367, 1.50367, 3.31202, 1.0507, -1.0507, 1.05162, 1.91828, -1.91828, -0.0647586, -1.74903, -6.65835, 0.2415, 8.63591, -0.228518, 2.21343, 0.886182, 1.09853, -1.09949, -1.56537, -0.419345, -1.565, -6.12107, 6.12107, -4.14171}, {-1.76763, 0.161966, -0.162107, 0.215713, 1.38996, 0.214498, 0.501223, -0.501223, -1.10401, -3.15209, 3.15209, -3.15485, 1.91828, -1.91828, -0.0647586, -0.886182, -1.09853, 1.09949, 1.56537, 0.419345, 1.565, 7.95672, 0.45067, -0.451064, -2.42822, -5.97917, -2.423, -3.92317, 3.92317, 4.48079}, {1.71308, 4.3282, 0.488804, 0.642112, 1.62234, -1.62234, 2.1437, 0.314496, -0.314496, -2.21478, -0.4941, 2.09977, -2.65632, -6.71135, 8.69607, -3.44345, -2.39406, 2.39406, -10.5187, 0.136594, 1.84812, 12.3026, 4.37046, -10.7931, 1.94393, -1.39458, -0.590137, 0.0878675, 0.222003, -2.20672}, {-0.571026, -1.44273, -0.162935, -1.92634, -4.86701, 4.86701, 2.1437, 0.314496, -0.314496, -2.21478, -0.4941, 2.09977, 2.19624, 5.54893, 2.85846, -12.0182, -3.65204, 3.65204, -1.94393, 1.39458, 0.590137, 3.44345, 2.39406, -2.39406, 10.8031, 0.581823, -8.98921, 0.0878675, 0.222003, -2.20672}, {-0.571026, -1.44273, -0.162935, 0.642112, 1.62234, -1.62234, -6.43109, -0.943488, 0.943488, -2.21478, -0.4941, 2.09977, -0.0878675, -0.222003, 2.20672, -6.0119, -8.88341, 8.88341, 0.340174, 7.16551, 1.24188, 3.44345, 2.39406, -2.39406, 1.94393, -1.39458, -0.590137, 8.947, 2.1984, -10.6058}, {-0.571026, -1.44273, -0.162935, 0.642112, 1.62234, -1.62234, 2.1437, 0.314496, -0.314496, 6.64435, 1.4823, -6.2993, -0.0878675, -0.222003, 2.20672, -3.44345, -2.39406, 2.39406, -1.94393, 1.39458, 0.590137, 5.72755, 8.16499, -1.74232, -0.624519, -7.88393, 5.89921, -8.48692, -1.03598, -0.948734}, {-4.62937, 4.62937, 1.83228, 0.198723, -0.198723, 1.94057, -1.74185, 0.136178, -1.32981, 0, 1.60567, 0, -2.94793, 2.94793, -9.40601, 1.90741, 0.0773091, -0.754941, 7.21302, 1.19437, 7.71791, -1.90741, -6.49998, 0.754941, -0.245635, -1.73908, -2.39867, 2.15304, -2.15304, 1.64373}, {1.54312, -1.54312, -0.61076, -0.596168, 0.596168, -5.82171, -1.74185, 0.136178, -1.32981, 6.94322e-16, 1.60567, 5.30079e-16, -8.32553, 8.32553, 0.799305, 8.87479, -0.467403, 4.5643, 0.245635, 1.73908, 2.39867, -1.90741, -0.0773091, 0.754941, -0.245635, -8.16175, -2.39867, 2.15304, -2.15304, 1.64373}, {1.54312, -1.54312, -0.61076, 0.198723, -0.198723, 1.94057, 5.22554, -0.408534, 3.98943, 0, 1.60567, 0, -2.15304, 2.15304, -1.64373, 1.11252, 0.872199, -8.51722, -5.92686, 7.91157, 4.84171, -1.90741, -0.0773091, 0.754941, -0.245635, -1.73908, -2.39867, 2.15304, -8.57571, 1.64373}, {1.54312, -1.54312, -0.61076, 0.198723, -0.198723, 1.94057, -1.74185, 0.136178, -1.32981, 0, -4.817, 0, -2.15304, 2.15304, -1.64373, 1.90741, 0.0773091, -0.754941, 0.245635, 1.73908, 2.39867, -8.0799, 6.09519, 3.19798, -1.04052, -0.94419, -10.1609, 9.12042, -2.69775, 6.96297}, {-1.38621, -1.33227e-15, 3.9353, 1.09414, 1.31177, 1.31177, 0.173581, -1.31177, 0, -1.72979, 0, 0, -6.30013, -6.86849, -5.24706, -1.56699, 4.44089e-16, -1.62143, -1.48003, 6.86849, 1.62143, 8.48614, -4.44089e-16, 1.62143, 0.785706, -1.62143, -1.62143, 1.92358, 1.62143, 0}, {0.462069, -5.96084e-17, -1.31177, -3.28242, -3.9353, -3.9353, 0.173581, -1.31177, 0, -1.72979, 2.81653e-16, 0, -3.77185, -1.62143, 5.24706, -2.26131, 5.24706, -1.62143, -0.785706, 1.62143, 1.62143, 1.56699, -2.22045e-16, 1.62143, 7.70486, -1.62143, -1.62143, 1.92358, 1.62143, 0}, {0.462069, -8.88178e-16, -1.31177, 1.09414, 1.31177, 1.31177, -0.520744, 3.9353, 0, -1.72979, 0, 0, -1.92358, -1.62143, 3.2565e-16, -5.94354, -5.24706, -6.86849, -2.63398, 1.62143, 6.86849, 1.56699, 1.11022e-15, 1.62143, 0.785706, -1.62143, -1.62143, 8.84273, 1.62143, 0}, {0.462069, 0, -1.31177, 1.09414, 1.31177, 1.31177, 0.173581, -1.31177, 0, 5.18937, 0, 0, -1.92358, -1.62143, 3.2565e-16, -1.56699, 0, -1.62143, -0.785706, 1.62143, 1.62143, -0.281287, 0, 6.86849, -3.59085, -6.86849, -6.86849, 1.22925, 6.86849, 0}, {-3.84404e-12, -3.9353, 2.80446, 1.44665, 0, 0.44688, -1.28111e-12, -1.31177, -0.870737, -1.44665, 0, 1.35868, -7.57474, -1.62143, -1.18439, -1.78815, 1.62143, 0.523916, 5.12412e-12, 5.24706, 5.71474, 7.57474, -1.62143, -5.95862, 2.22045e-16, 0, -2.23179, 1.78815, 1.62143, -0.603126}, {1.2812e-12, 1.31177, -0.934819, -4.33994, -8.15796e-16, -1.34064, -1.28111e-12, -1.31177, -0.870737, -1.44665, -1.24937e-16, 1.35868, -1.78815, -6.86849, 4.3424, -1.78815, 6.86849, 4.00686, 0, -1.43955e-16, 2.23179, 1.78815, -1.62143, -0.523916, 5.78659, 3.18053e-16, -7.66649, 1.78815, 1.62143, -0.603126}, {1.28053e-12, 1.31177, -0.934819, 1.44665, 0, 0.44688, 3.84227e-12, 3.9353, 2.61221, -1.44665, 0, 1.35868, -1.78815, -1.62143, 0.603126, -7.57474, 1.62143, -1.2636, -5.12124e-12, -5.24706, 5.97107, 1.78815, -1.62143, -0.523916, -4.44089e-16, 0, -2.23179, 7.57474, 1.62143, -6.03783}, {1.28098e-12, 1.31177, -0.934819, 1.44665, 0, 0.44688, -1.281e-12, -1.31177, -0.870737, 4.33994, 0, -4.07603, -1.78815, -1.62143, 0.603126, -1.78815, 1.62143, 0.523916, 0, -3.2565e-16, 2.23179, 1.78815, -6.86849, 3.21536, -5.78659, 0, -4.01931, 1.78815, 6.86849, 2.87982}, {5.36291, -5.36619, -5.37088, 3.64451, -0.373213, -0.376399, -1.85687, 0.190152, -1.41389, 0, -1.60567, 0, -16.8733, -0.256821, -0.242074, -2.20964, 0.226277, 2.21292, 11.9323, -3.20664, 5.19032, 2.20964, 6.1964, -2.21292, -4.50486, 2.44603, 0.465254, 2.29522, 1.74967, 1.74767}, {-1.78764, 1.78873, 1.79029, -10.9335, 1.11964, 1.1292, -1.85687, 0.190152, -1.41389, 0, -1.60567, 0, 4.85533, -8.90459, -8.90884, 5.21784, -0.53433, 7.8685, 4.50486, -2.44603, -0.465254, 2.20964, -0.226277, -2.21292, -4.50486, 8.8687, 0.465254, 2.29522, 1.74967, 1.74767}, {-1.78764, 1.78873, 1.79029, 3.64451, -0.373213, -0.376399, 5.57061, -0.570455, 4.24168, 0, -1.60567, 0, -2.29522, -1.74967, -1.74767, -16.7877, 1.71913, 3.71852, 11.6554, -9.60095, -7.62642, 2.20964, -0.226277, -2.21292, -4.50486, 2.44603, 0.465254, 2.29522, 8.17235, 1.74767}, {-1.78764, 1.78873, 1.79029, 3.64451, -0.373213, -0.376399, -1.85687, 0.190152, -1.41389, 0, 4.817, 0, -2.29522, -1.74967, -1.74767, -2.20964, 0.226277, 2.21292, 4.50486, -2.44603, -0.465254, 9.36019, -7.3812, -9.37409, -19.0829, 3.93889, 1.97085, 9.72271, 0.989068, 7.40324}, {-4.90664, -4.91093, -4.90664, 0.802238, -0.802728, -0.80343, -1.63555, -0.0313083, -1.63555, -0.802238, -0.80294, 0.80343, -6.22222, 2.17973, 2.18516, 1.03003, 1.03093, 3.01474, 6.54219, -1.85948, 6.54219, 2.17893, 2.18083, -6.22846, -3.78586e-14, 1.98471, 3.79696e-14, 3.01327, 1.03119, 1.02855}, {1.63555, 1.63698, 1.63555, -2.40672, 2.40819, 2.41029, -1.63555, -0.0313083, -1.63555, -0.802238, -0.80294, 0.80343, -9.55546, -7.57909, -7.57074, 7.57221, 1.15616, 9.55693, 3.71925e-14, -1.98471, -3.81917e-14, -1.03003, -1.03093, -3.01474, 3.20895, 5.19647, -3.21372, 3.01327, 1.03119, 1.02855}, {1.63555, 1.63698, 1.63555, 0.802238, -0.802728, -0.80343, 4.90664, 0.0939249, 4.90664, -0.802238, -0.80294, 0.80343, -3.01327, -1.03119, -1.02855, -2.17893, 4.24184, 6.22846, -6.54219, -8.53262, -6.54219, -1.03003, -1.03093, -3.01474, -3.78586e-14, 1.98471, 3.80806e-14, 6.22222, 4.24295, -2.18516}, {1.63555, 1.63698, 1.63555, 0.802238, -0.802728, -0.80343, -1.63555, -0.0313083, -1.63555, 2.40672, 2.40882, -2.41029, -3.01327, -1.03119, -1.02855, 1.03003, 1.03093, 3.01474, 3.73035e-14, -1.98471, -3.83027e-14, -7.57221, -7.57883, -9.55693, -3.20895, 5.19563, 3.21372, 9.55546, 1.15642, 7.57074}, {0.433524, 4.35281, -4.30748, -1.58383, 1.03002, -2.49725, 0.961132, -0.582294, -1.46836, 0.767201, 1.00321, 2.52978, 8.47164, -3.5998, 11.301, 0.769691, -0.553419, 4.90175, -4.85393, 4.84239, 5.91364, -3.83849, -3.45943, -15.0209, 1.0094, -2.51321, -0.0402101, -2.13634, -0.520284, -1.31199}, {-0.144508, -1.45094, 1.43583, 4.75148, -3.09006, 7.49174, 0.961132, -0.582294, -1.46836, 0.767201, 1.00321, 2.52978, 2.71437, 6.32404, -4.43132, -3.07484, 1.77576, 10.7752, -1.0094, 2.51321, 0.0402101, -0.769691, 0.553419, -4.90175, -2.0594, -6.52607, -10.1593, -2.13634, -0.520284, -1.31199}, {-0.144508, -1.45094, 1.43583, -1.58383, 1.03002, -2.49725, -2.8834, 1.74688, 4.40507, 0.767201, 1.00321, 2.52978, 2.13634, 0.520284, 1.31199, 7.10499, -4.6735, 14.8907, -0.431372, 8.31697, -5.70309, -0.769691, 0.553419, -4.90175, 1.0094, -2.51321, -0.0402101, -5.20514, -4.53314, -11.4311}, {-0.144508, -1.45094, 1.43583, -1.58383, 1.03002, -2.49725, 0.961132, -0.582294, -1.46836, -2.3016, -3.00964, -7.58933, 2.13634, 0.520284, 1.31199, 0.769691, -0.553419, 4.90175, -1.0094, 2.51321, 0.0402101, -0.191659, 6.35717, -10.6451, 7.3447, -6.63329, 9.94877, -5.98087, 1.80889, 4.56144}, {-5.22554, 3.98943, -3.78662, 0, 0, -1.80556, -0.198723, 1.94057, 0.386742, -1.54312, -0.61076, 0.156608, -2.15304, 1.64373, 7.89384, 0.245635, -2.39867, 1.75375, -1.11252, -8.51722, -3.58518, 5.92686, 4.84171, -2.38018, 1.90741, 0.754941, 2.03821, 2.15304, -1.64373, -0.671617}, {1.74185, -1.32981, 1.26221, 0, 0, 5.41667, -0.198723, 1.94057, 0.386742, -1.54312, -0.61076, 0.156608, -9.12042, 6.96297, -4.37721, 1.04052, -10.1609, 0.206785, -1.90741, -0.754941, -2.03821, -0.245635, 2.39867, -1.75375, 8.0799, 3.19798, 1.41178, 2.15304, -1.64373, -0.671617}, {1.74185, -1.32981, 1.26221, 0, 0, -1.80556, 0.596168, -5.82171, -1.16022, -1.54312, -0.61076, 0.156608, -2.15304, 1.64373, 0.671617, 0.245635, -2.39867, 8.97597, -8.87479, 4.5643, -7.08704, -0.245635, 2.39867, -1.75375, 1.90741, 0.754941, 2.03821, 8.32553, 0.799305, -1.29805}, {1.74185, -1.32981, 1.26221, 0, 0, -1.80556, -0.198723, 1.94057, 0.386742, 4.62937, 1.83228, -0.469823, -2.15304, 1.64373, 0.671617, 0.245635, -2.39867, 1.75375, -1.90741, -0.754941, -2.03821, -7.21302, 7.71791, -6.80258, 1.90741, 0.754941, 9.26043, 2.94793, -9.40601, -2.21858}, {2.47366, -6.0686, -0.0191747, -0.141226, -1.44665, 1.44665, 1.40644, 1.00594e-16, 2.53667e-16, -0.440661, -0.57622, -1.45304, 1.75867, 5.07434, -7.58264, -1.56389, 1.78815, -1.78815, -6.34501, -2.5004, -0.0079004, 3.32653, 0.516725, 7.60031, 0.719252, 2.5004, 0.0079004, -1.19377, 0.712247, 1.79605}, {-0.824552, 2.02287, 0.00639156, 0.423679, 4.33994, -4.33994, 1.40644, 3.01783e-16, 7.61e-16, -0.440661, -0.57622, -1.45304, 4.49197, -8.80371, -1.82162, -7.18964, 1.78815, -1.78815, -0.719252, -2.5004, -0.0079004, 1.56389, -1.78815, 1.78815, 2.48189, 4.80528, 5.82005, -1.19377, 0.712247, 1.79605}, {-0.824552, 2.02287, 0.00639156, -0.141226, -1.44665, 1.44665, -4.21932, 0, 0, -0.440661, -0.57622, -1.45304, 1.19377, -0.712247, -1.79605, -0.998983, 7.57474, -7.57474, 2.57896, -10.5919, -0.0334666, 1.56389, -1.78815, 1.78815, 0.719252, 2.5004, 0.0079004, 0.568875, 3.01713, 7.60821}, {-0.824552, 2.02287, 0.00639156, -0.141226, -1.44665, 1.44665, 1.40644, -3.01783e-16, -7.61e-16, 1.32198, 1.72866, 4.35912, 1.19377, -0.712247, -1.79605, -1.56389, 1.78815, -1.78815, -0.719252, -2.5004, -0.0079004, 4.8621, -9.87962, 1.76259, 1.28416, 8.28699, -5.77869, -6.81952, 0.712247, 1.79605}, {-5.82171, -0.596168, -7.61729, 0, 0, -2.34313, -0.61076, 1.54312, 1.54399, -1.32981, -1.74185, -1.73996, -2.39867, -0.245635, 9.13027, 0.754941, -1.90741, 0.987787, 0.799305, -8.32553, -11.2229, 4.5643, 8.87479, 5.97206, 1.64373, 2.15304, 5.04697, 2.39867, 0.245635, 0.242235}, {1.94057, 0.198723, 2.5391, 0, 0, 7.02938, -0.61076, 1.54312, 1.54399, -1.32981, -1.74185, -1.73996, -10.1609, -1.04052, -10.3986, 3.19798, -8.0799, -5.18817, -1.64373, -2.15304, -5.04697, -0.754941, 1.90741, -0.987787, 6.96297, 9.12042, 12.0068, 2.39867, 0.245635, 0.242235}, {1.94057, 0.198723, 2.5391, 0, 0, -2.34313, 1.83228, -4.62937, -4.63197, -1.32981, -1.74185, -1.73996, -2.39867, -0.245635, -0.242235, 0.754941, -1.90741, 10.3603, -9.40601, -2.94793, -15.2034, -0.754941, 1.90741, -0.987787, 1.64373, 2.15304, 5.04697, 7.71791, 7.21302, 7.20208}, {1.94057, 0.198723, 2.5391, 0, 0, -2.34313, -0.61076, 1.54312, 1.54399, 3.98943, 5.22554, 5.21989, -2.39867, -0.245635, -0.242235, 0.754941, -1.90741, 0.987787, -1.64373, -2.15304, -5.04697, -8.51722, 1.11252, -11.1442, 1.64373, 2.15304, 14.4195, 4.84171, -5.92686, -5.93372}, {7.02938, 8.88178e-16, -1.33227e-15, 1.54312, -1.54312, -0.61076, 2.54185, -0.198723, 1.94057, -1.74185, 1.74185, -1.32981, -5.18364, 8.0799, 3.19798, -5.0493, 2.15304, -1.64373, -10.413, 1.04052, -10.1609, 12.0167, -9.12042, 6.96297, 0.245635, -0.245635, 2.39867, -0.988857, -1.90741, -0.754941}, {-2.34313, 0, 0, -4.62937, 4.62937, 1.83228, 2.54185, -0.198723, 1.94057, -1.74185, 1.74185, -1.32981, 10.3614, 1.90741, 0.754941, -15.2167, 2.94793, -9.40601, -0.245635, 0.245635, -2.39867, 5.0493, -2.15304, 1.64373, 7.21302, -7.21302, 7.71791, -0.988857, -1.90741, -0.754941}, {-2.34313, 2.22045e-16, 0, 1.54312, -1.54312, -0.61076, -7.62554, 0.596168, -5.82171, -1.74185, 1.74185, -1.32981, 0.988857, 1.90741, 0.754941, -11.2218, 8.32553, 0.799305, 9.12687, 0.245635, -2.39867, 5.0493, -2.15304, 1.64373, 0.245635, -0.245635, 2.39867, 5.97853, -8.87479, 4.5643}, {-2.34313, 0, -2.22045e-16, 1.54312, -1.54312, -0.61076, 2.54185, -0.198723, 1.94057, 5.22554, -5.22554, 3.98943, 0.988857, 1.90741, 0.754941, -5.0493, 2.15304, -1.64373, -0.245635, 0.245635, -2.39867, 14.4218, -2.15304, 1.64373, -5.92686, 5.92686, 4.84171, -11.1562, -1.11252, -8.51722}, {9.45441, 8.88178e-16, 0, -1.41486, -1.85814, 1.41539, 2.77696, 3.64699, 0.373467, 1.78937, -1.78885, -1.78885, 11.3037, 9.72932, -7.41106, -1.68365, -2.21115, -2.21115, -10.6449, -19.0959, -1.9555, -5.47381, 9.36656, 9.36656, -0.46292, 4.50793, 0.461631, -5.64429, -2.29678, 1.74951}, {-3.15147, 8.88178e-16, 4.44089e-16, 4.24457, 5.57441, -4.24616, 2.77696, 3.64699, 0.373467, 1.78937, -1.78885, -1.78885, 18.2502, 2.29678, -1.74951, -12.7915, -16.7991, -3.70501, 0.46292, -4.50793, -0.461631, 1.68365, 2.21115, 2.21115, -7.62038, 11.6633, 7.61705, -5.64429, -2.29678, 1.74951}, {-3.15147, 4.44089e-16, 2.22045e-16, -1.41486, -1.85814, 1.41539, -8.33088, -10.941, -1.1204, 1.78937, -1.78885, -1.78885, 5.64429, 2.29678, -1.74951, 3.97577, 5.2214, -7.87269, 13.0688, -4.50793, -0.461631, 1.68365, 2.21115, 2.21115, -0.46292, 4.50793, 0.461631, -12.8018, 4.85864, 8.90493}, {-3.15147, -2.22045e-16, 0, -1.41486, -1.85814, 1.41539, 2.77696, 3.64699, 0.373467, -5.3681, 5.36656, 5.36656, 5.64429, 2.29678, -1.74951, -1.68365, -2.21115, -2.21115, 0.46292, -4.50793, -0.461631, 14.2895, 2.21115, 2.21115, 5.1965, 11.9405, -5.19992, -16.7521, -16.8847, 0.255645}, {-1.04981, -4.33994, -1.71772, -1.16436, 0, 0, 0.183612, -1.44665, 1.44665, 0.630806, -1.58777e-12, -2.01922, 5.6641, -1.78815, -0.707741, 1.21227, 1.78815, -1.78815, -1.39395, 5.78659, -8.28248, -3.73549, -1.78815, 9.86504, 0.659504, 1.96259e-12, 2.4959, -1.00668, 1.78815, 0.707741}, {0.349938, 1.44665, 0.572575, 3.49307, 0, 0, 0.183612, -1.44665, 1.44665, 0.630806, -1.5874e-12, -2.01922, -0.393077, -7.57474, -2.99804, 0.47782, 7.57474, -7.57474, -0.659504, -1.9625e-12, -2.4959, -1.21227, -1.78815, 1.78815, -1.86372, 8.31176e-12, 10.5728, -1.00668, 1.78815, 0.707741}, {0.349938, 1.44665, 0.572575, -1.16436, 0, 0, -0.550835, 4.33994, -4.33994, 0.630806, -1.58632e-12, -2.01922, 1.00668, -1.78815, -0.707741, 5.86969, 1.78815, -1.78815, -2.05926, -5.78659, -4.7862, -1.21227, -1.78815, 1.78815, 0.659504, 1.9608e-12, 2.4959, -3.5299, 1.78815, 8.78463}, {0.349938, 1.44665, 0.572575, -1.16436, 0, 0, 0.183612, -1.44665, 1.44665, -1.89242, 4.76004e-12, 6.05767, 1.00668, -1.78815, -0.707741, 1.21227, 1.78815, -1.78815, -0.659504, -1.9616e-12, -2.4959, -2.61202, -7.57474, -0.502145, 5.31693, 1.96124e-12, 2.4959, -1.74112, 7.57474, -5.07885}, {-5.36656, 5.36656, -5.36656, 1.85814, -0.190281, -1.41539, 0, 1.60567, 0, -3.64699, 0.373467, -0.373467, -11.9405, 3.20747, 5.19992, -2.29678, -1.74951, 1.74951, -2.21115, -6.19624, -2.21115, 16.8847, 0.255645, -0.255645, 2.21115, -0.226431, 2.21115, 4.50793, -2.44635, 0.461631}, {1.78885, -1.78885, 1.78885, -5.57441, 0.570843, 4.24616, 1.45374e-15, 1.60567, 1.48869e-16, -3.64699, 0.373467, -0.373467, -11.6633, 9.60176, -7.61705, -2.29678, -8.17219, 1.74951, -2.21115, 0.226431, -2.21115, 2.29678, 1.74951, -1.74951, 16.7991, -1.7203, 3.70501, 4.50793, -2.44635, 0.461631}, {1.78885, -1.78885, 1.78885, 1.85814, -0.190281, -1.41539, 0, -4.817, 0, -3.64699, 0.373467, -0.373467, -4.50793, 2.44635, -0.461631, -9.72932, -0.988391, 7.41106, -9.36656, 7.38185, -9.36656, 2.29678, 1.74951, -1.74951, 2.21115, -0.226431, 2.21115, 19.0959, -3.94022, 1.9555}, {1.78885, -1.78885, 1.78885, 1.85814, -0.190281, -1.41539, 0, 1.60567, 0, 10.941, -1.1204, 1.1204, -4.50793, 2.44635, -0.461631, -2.29678, -1.74951, 1.74951, -2.21115, 0.226431, -2.21115, -4.85864, 8.90493, -8.90493, -5.2214, 0.534693, 7.87269, 4.50793, -8.86902, 0.461631}, {-2.3518, -6.05767, 5.91882e-12, 0.531029, -0.572575, 1.44665, -0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -3.7495, 0.502145, -7.57474, -0.336326, 2.4959, -2.43872e-12, 0.386809, 5.07885, 7.57474, 4.56043, -2.4959, 2.43872e-12, 0.648932, 0.707741, -1.78815, 1.62538, 1.78815, 1.78815}, {0.783932, 2.01922, -1.97264e-12, -1.59309, 1.71772, -4.33994, -0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -4.76111, -9.86504, -1.78815, 0.699414, 8.28248, 5.78659, -0.648932, -0.707741, 1.78815, 0.336326, -2.4959, 2.43827e-12, 4.87303, 0.707741, -1.78815, 1.62538, 1.78815, 1.78815}, {0.783932, 2.01922, -1.9722e-12, 0.531029, -0.572575, 1.44665, 0.776805, 4.33994, 4.33994, -1.05603, 0, 0, -1.62538, -1.78815, -1.78815, -2.46044, 4.7862, -5.78659, -3.78466, -8.78463, 1.78815, 0.336326, -2.4959, 2.43783e-12, 0.648932, 0.707741, -1.78815, 5.84948, 1.78815, 1.78815}, {0.783932, 2.01922, -1.97331e-12, 0.531029, -0.572575, 1.44665, -0.258935, -1.44665, -1.44665, 3.16808, 0, 0, -1.62538, -1.78815, -1.78815, -0.336326, 2.4959, -2.43894e-12, -0.648932, -0.707741, 1.78815, -2.7994, -10.5728, 1.03313e-11, -1.47518, 2.99804, -7.57474, 2.66112, 7.57474, 7.57474}, {-5.36656, -5.36656, -5.36656, 2.778, -3.64699, -0.373467, -1.41539, 1.85814, -1.41539, -3.15147, 0, 0, -16.7569, 16.8847, -0.255645, -1.68428, 2.21115, 2.21115, 5.19992, -11.9405, 5.19992, 14.2902, -2.21115, -2.21115, 0.461631, 4.50793, 0.461631, 5.64494, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, -8.334, 10.941, 1.1204, -1.41539, 1.85814, -1.41539, -3.15147, 0, 0, -12.8004, -4.85864, -8.90493, 3.97726, -5.2214, 7.87269, -0.461631, -4.50793, -0.461631, 1.68428, -2.21115, -2.21115, 13.0675, 4.50793, 0.461631, 5.64494, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 2.778, -3.64699, -0.373467, 4.24616, -5.57441, 4.24616, -3.15147, 0, 0, -5.64494, 2.29678, -1.74951, -12.7963, 16.7991, 3.70501, -7.61705, -11.6633, -7.61705, 1.68428, -2.21115, -2.21115, 0.461631, 4.50793, 0.461631, 18.2508, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 2.778, -3.64699, -0.373467, -1.41539, 1.85814, -1.41539, 9.45441, 0, 0, -5.64494, 2.29678, -1.74951, -1.68428, 2.21115, 2.21115, -0.461631, -4.50793, -0.461631, -5.47113, -9.36656, -9.36656, -10.6504, 19.0959, 1.9555, 11.3065, -9.72932, 7.41106}, {0.408534, -3.98943, 5.22554, 1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 0.198723, -1.60567, 0, 0, -7.91157, -4.84171, -5.92686, -2.15304, 1.64373, -2.15304, -0.872199, 8.51722, 1.11252, 8.57571, -1.64373, 2.15304, 0.0773091, -0.754941, -1.90741, 1.73908, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, -4.62937, -1.83228, -4.62937, 0.198723, -1.94057, 0.198723, -1.60567, 0, 0, -1.19437, -7.71791, 7.21302, -2.94793, 9.40601, -2.94793, -0.0773091, 0.754941, 1.90741, 2.15304, -1.64373, 2.15304, 6.49998, -0.754941, -1.90741, 1.73908, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, 1.54312, 0.61076, 1.54312, -0.596168, 5.82171, -0.596168, -1.60567, 0, 0, -1.73908, -2.39867, 0.245635, -8.32553, -0.799305, -8.32553, 0.467403, -4.5643, 8.87479, 2.15304, -1.64373, 2.15304, 0.0773091, -0.754941, -1.90741, 8.16175, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, 1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 0.198723, 4.817, 0, 0, -1.73908, -2.39867, 0.245635, -2.15304, 1.64373, -2.15304, -0.0773091, 0.754941, 1.90741, 2.69775, -6.96297, 9.12042, -6.09519, -3.19798, -8.0799, 0.94419, 10.1609, -1.04052}, {-1.29949, 3.9353, 2.21079, 1.70046, 1.31177, -0.409533, -0.573592, 0, 1.62837, -1.56004, 0, -0.481907, -9.43917, -5.24706, 3.05524, -1.39289, -1.62143, -1.50656, 2.46795, 1.62143, -7.61536, 7.63304, 1.62143, 3.43419, -0.173579, -1.62143, 1.10188, 2.63731, 0, -1.4171}, {0.433164, -1.31177, -0.736929, -5.10139, -3.9353, 1.2286, -0.573592, 0, 1.62837, -1.56004, 0, -0.481907, -4.36997, 5.24706, 4.36482, 0.901477, -1.62143, -8.02004, 0.173579, 1.62143, -1.10188, 1.39289, 1.62143, 1.50656, 6.06657, -1.62143, 3.02951, 2.63731, 0, -1.4171}, {0.433164, -1.31177, -0.736929, 1.70046, 1.31177, -0.409533, 1.72078, 0, -4.88511, -1.56004, 0, -0.481907, -2.63731, 3.2565e-16, 1.4171, -8.19475, -6.86849, 0.131566, -1.55908, 6.86849, 1.84584, 1.39289, 1.62143, 1.50656, -0.173579, -1.62143, 1.10188, 8.87746, 0, 0.510523}, {0.433164, -1.31177, -0.736929, 1.70046, 1.31177, -0.409533, -0.573592, 0, 1.62837, 4.68011, 0, 1.44572, -2.63731, 3.2565e-16, 1.4171, -1.39289, -1.62143, -1.50656, 0.173579, 1.62143, -1.10188, -0.339765, 6.86849, 4.45428, -6.97544, -6.86849, 2.74001, 4.93168, 0, -7.93058}, {10.941, 1.1204, -5.07489, 1.78885, 1.78885, -0.204309, 0, 0, -2.39759, 1.85814, -1.41539, 0.910268, -4.85864, -8.90493, -1.02119, -2.21115, -2.21115, 3.21612, 4.50793, 0.461631, 10.463, -5.2214, 7.87269, -6.8572, -4.50793, -0.461631, -0.872613, -2.29678, 1.74951, 1.83843}, {-3.64699, -0.373467, 1.69163, -5.36656, -5.36656, 0.612928, 0, 0, -2.39759, 1.85814, -1.41539, 0.910268, 16.8847, -0.255645, -8.60495, -2.21115, -2.21115, 12.8065, 4.50793, 0.461631, 0.872613, 2.21115, 2.21115, -3.21612, -11.9405, 5.19992, -4.51368, -2.29678, 1.74951, 1.83843}, {-3.64699, -0.373467, 1.69163, 1.78885, 1.78885, -0.204309, 0, 0, 7.19277, 1.85814, -1.41539, 0.910268, 2.29678, -1.74951, -1.83843, -9.36656, -9.36656, 4.03336, 19.0959, 1.9555, -5.89391, 2.21115, 2.21115, -3.21612, -4.50793, -0.461631, -0.872613, -9.72932, 7.41106, -1.80264}, {-3.64699, -0.373467, 1.69163, 1.78885, 1.78885, -0.204309, 0, 0, -2.39759, -5.57441, 4.24616, -2.7308, 2.29678, -1.74951, -1.83843, -2.21115, -2.21115, 3.21612, 4.50793, 0.461631, 0.872613, 16.7991, 3.70501, -9.98265, -11.6633, -7.61705, -0.0553752, -2.29678, 1.74951, 11.4288}, {-5.36656, 5.36656, -5.36656, 3.86512e-15, 3.15147, 1.39953e-15, -3.15147, 0, 0, 1.36261, -1.36261, -1.78885, -2.21115, -14.2902, -2.21115, 3.89543, -3.89543, -1.72992e-15, 14.2902, 2.21115, -2.21115, -9.34589, 9.34589, 7.15542, -1.68428, -2.21115, 2.21115, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, -1.0595e-14, -9.45441, 4.1986e-15, -3.15147, 0, 0, 1.36261, -1.36261, -1.78885, -9.36656, 5.47113, -9.36656, 16.5013, -3.89543, 1.72992e-15, 1.68428, 2.21115, -2.21115, -3.89543, 3.89543, -2.17401e-15, -7.13474, 3.23931, 9.36656, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 9.45441, 0, 0, 1.36261, -1.36261, -1.78885, -2.21115, -1.68428, -2.21115, 3.89543, -16.5013, 0, -5.47113, 9.36656, -9.36656, -3.89543, 3.89543, -4.44089e-16, -1.68428, -2.21115, 2.21115, -3.23931, 7.13474, 9.36656}, {1.78885, -1.78885, 1.78885, -1.06606e-15, 3.15147, 1.39953e-15, -3.15147, 0, 0, -4.08784, 4.08784, 5.36656, -2.21115, -1.68428, -2.21115, 3.89543, -3.89543, -1.72992e-15, 1.68428, 2.21115, -2.21115, -11.0508, 11.0508, -7.15542, -1.68428, -14.817, 2.21115, 14.817, 1.68428, 2.21115}, {-3.13871, 2.39624, 3.14224, -1.3586, 1.03722, -0.984492, 1.05172, 0.985921, 1.29286, -0.739357, -1.22439, 0.739047, 5.8205, -4.44365, 6.44954, 0.379324, -2.50074, -0.381162, -6.8001, -4.17504, -5.47482, 2.5781, 7.39832, -2.57503, 2.59322, 0.231359, 0.303387, -0.386102, 0.294769, -2.51157}, {1.04624, -0.798747, -1.04741, 4.0758, -3.11166, 2.95348, 1.05172, 0.985921, 1.29286, -0.739357, -1.22439, 0.739047, -3.79884, 2.90022, 6.70123, -3.82756, -6.44442, -5.5526, -2.59322, -0.231359, -0.303387, -0.379324, 2.50074, 0.381162, 5.55064, 5.12894, -2.6528, -0.386102, 0.294769, -2.51157}, {1.04624, -0.798747, -1.04741, -1.3586, 1.03722, -0.984492, -3.15516, -2.95776, -3.87858, -0.739357, -1.22439, 0.739047, 0.386102, -0.294769, 2.51157, 5.81372, -6.64962, 3.55681, -6.77816, 2.96363, 3.88627, -0.379324, 2.50074, 0.381162, 2.59322, 0.231359, 0.303387, 2.57132, 5.19235, -5.46776}, {1.04624, -0.798747, -1.04741, -1.3586, 1.03722, -0.984492, 1.05172, 0.985921, 1.29286, 2.21807, 3.67318, -2.21714, 0.386102, -0.294769, 2.51157, 0.379324, -2.50074, -0.381162, -2.59322, -0.231359, -0.303387, -4.56427, 5.69573, 4.57082, 8.02762, -3.91752, 4.24135, -4.59298, -3.64891, -7.68301}, {3.49307, 0, -5.19009e-16, 0.460877, 0.572575, 1.44665, -0.183612, 1.44665, -1.44665, 0.88709, -2.01922, 1.97395e-12, -0.973962, -2.99804, -7.57474, -0.342719, -2.4959, 2.44027e-12, 2.40063, -7.57474, 7.57474, -3.20564, 10.5728, -1.03361e-11, -1.66618, 1.78815, -1.78815, -0.869547, 0.707741, 1.78815}, {-1.16436, 0, 2.63061e-17, -1.38263, -1.71772, -4.33994, -0.183612, 1.44665, -1.44665, 0.88709, -2.01922, 1.97018e-12, 5.52697, -0.707741, -1.78815, 0.391727, -8.28248, 5.78659, 1.66618, -1.78815, 1.78815, 0.342719, 2.4959, -2.43516e-12, -5.21454, 9.86504, -1.78815, -0.869547, 0.707741, 1.78815}, {-1.16436, 0, 1.0874e-16, 0.460877, 0.572575, 1.44665, 0.550835, -4.33994, 4.33994, 0.88709, -2.01922, 1.97254e-12, 0.869547, -0.707741, -1.78815, -2.18623, -4.7862, -5.78659, 6.3236, -1.78815, 1.78815, 0.342719, 2.4959, -2.43827e-12, -1.66618, 1.78815, -1.78815, -4.41791, 8.78463, 1.78815}, {-1.16436, 0, 2.47018e-16, 0.460877, 0.572575, 1.44665, -0.183612, 1.44665, -1.44665, -2.66127, 6.05767, -5.92185e-12, 0.869547, -0.707741, -1.78815, -0.342719, -2.4959, 2.44005e-12, 1.66618, -1.78815, 1.78815, 5.00014, 2.4959, -2.44081e-12, -3.50969, -0.502145, -7.57474, -0.135101, -5.07885, 7.57474}, {-4.817, 1.77636e-15, 1.9984e-15, -1.78885, 1.78885, -1.78885, -0.190167, 1.85702, 1.41407, 0.373353, -3.64588, 0.374783, 7.38185, -9.36656, 9.36656, 2.4462, -4.50655, 0.463257, -0.988987, -9.72349, -7.40418, -3.93962, 19.0901, -1.96239, 1.74966, 2.29541, 1.74789, -0.226431, 2.21115, -2.21115}, {1.60567, -4.44089e-16, -1.55431e-15, 5.36656, -5.36656, 5.36656, -0.190167, 1.85702, 1.41407, 0.373353, -3.64588, 0.374783, -6.19624, -2.21115, 2.21115, 3.20687, -11.9346, -5.19303, -1.74966, -2.29541, -1.74789, -2.4462, 4.50655, -0.463257, 0.256242, 16.8789, 0.248757, -0.226431, 2.21115, -2.21115}, {1.60567, 8.88178e-16, 0, -1.78885, 1.78885, -1.78885, 0.570501, -5.57107, -4.24221, 0.373353, -3.64588, 0.374783, 0.226431, -2.21115, 2.21115, 9.60162, -11.662, 7.61867, -8.17233, -2.29541, -1.74789, -2.4462, 4.50655, -0.463257, 1.74966, 2.29541, 1.74789, -1.71984, 16.7947, -3.71028}, {1.60567, -3.10862e-15, 1.11022e-16, -1.78885, 1.78885, -1.78885, -0.190167, 1.85702, 1.41407, -1.12006, 10.9376, -1.12435, 0.226431, -2.21115, 2.21115, 2.4462, -4.50655, 0.463257, -1.74966, -2.29541, -1.74789, -8.86888, 4.50655, -0.463257, 8.90507, -4.86001, 8.90331, 0.534237, -5.21694, -7.86743}, {-9.76996e-15, 1.33227e-14, -7.02938, 1.78885, -6.92972e-12, 0.00253498, -1.78885, 2.33948, -2.34566, 0, -2.33948, 0, -9.36656, 3.62896e-11, -2.90954, 3.9968e-15, -2.89175, 2.89626, 9.36656, -12.2497, 9.38578, -3.9968e-15, 12.2497, -2.89626, -2.21115, 2.89175, -0.00313341, 2.21115, -8.57092e-12, 2.8994}, {-1.9984e-15, 8.88178e-16, 2.34313, -5.36656, 2.07891e-11, -0.00760494, -1.78885, 2.33948, -2.34566, 0, -2.33948, 0, -2.21115, 8.55849e-12, -12.2719, 7.15542, -12.2497, 12.2789, 2.21115, -2.89175, 0.00313341, 2.66454e-15, 2.89175, -2.89626, -2.21115, 12.2497, -0.00313341, 2.21115, -8.56426e-12, 2.8994}, {4.21885e-15, -1.77636e-15, 2.34313, 1.78885, -6.9266e-12, 0.00253498, 5.36656, -7.01844, 7.03698, 0, -2.33948, 0, -2.21115, 8.56382e-12, -2.8994, -7.15542, -2.89175, 2.88612, 2.21115, -2.89175, -9.36937, -5.32907e-15, 2.89175, -2.89626, -2.21115, 2.89175, -0.00313341, 2.21115, 9.35791, 2.8994}, {0, 0, 2.34313, 1.78885, -6.92763e-12, 0.00253498, -1.78885, 2.33948, -2.34566, 0, 7.01844, 0, -2.21115, 8.56293e-12, -2.8994, 0, -2.89175, 2.89626, 2.21115, -2.89175, 0.00313341, 0, 2.89175, -12.2688, -9.36656, 2.89175, -0.0132733, 9.36656, -9.35791, 12.282}, {-2.1843e-11, 2.07647e-11, 5.36656, -2.34313, 0, 0, 0, 2.34313, 0, 2.34313, -2.34313, 1.78885, 12.2688, 8.55538e-12, 2.21115, 2.89626, -2.89626, 0, -8.99991e-12, -12.2688, 2.21115, -12.2688, 12.2688, -7.15542, 8.99991e-12, 2.89626, -2.21115, -2.89626, -8.55538e-12, -2.21115}, {7.27862e-12, -6.92069e-12, -1.78885, 7.02938, 0, 0, -1.36297e-15, 2.34313, -1.04056e-15, 2.34313, -2.34313, 1.78885, 2.89626, 3.62377e-11, 9.36656, 2.89626, -12.2688, 5.44843e-15, -8.99503e-12, -2.89626, 2.21115, -2.89626, 2.89626, -8.4211e-16, -9.3725, 12.2688, -9.36656, -2.89626, -8.55449e-12, -2.21115}, {7.2804e-12, -6.91935e-12, -1.78885, -2.34313, 0, 0, 0, -7.02938, 0, 2.34313, -2.34313, 1.78885, 2.89626, 8.55271e-12, 2.21115, 12.2688, -2.89626, 0, -3.81206e-11, -2.89626, 9.36656, -2.89626, 2.89626, 4.44089e-16, 8.99902e-12, 2.89626, -2.21115, -12.2688, 9.3725, -9.36656}, {7.27596e-12, -6.91802e-12, -1.78885, -2.34313, 0, 0, 0, 2.34313, 0, -7.02938, 7.02938, -5.36656, 2.89626, 8.55138e-12, 2.21115, 2.89626, -2.89626, 0, -8.99325e-12, -2.89626, 2.21115, -2.89626, 2.89626, 7.15542, 9.3725, 2.89626, -2.21115, -2.89626, -9.3725, -2.21115}, {6.33782, 3.11659, -8.32035, 1.25748, 1.89399, 2.48645, -0.601124, 0.601124, -3.34812, 1.45625, -1.45625, -1.91178, -3.97294, -8.63294, -16.4474, -0.811303, -3.08413, 1.06509, 5.75885, -1.86342, 14.1028, -5.01369, 8.90912, 6.58202, -3.35435, -0.541075, -0.71033, -1.05699, 1.05699, 6.50159}, {-2.11261, -1.03886, 2.77345, -3.77244, -5.68196, -7.45934, -0.601124, 0.601124, -3.34812, 1.45625, -1.45625, -1.91178, 9.50741, 3.09846, -17.5954, 1.59319, -5.48862, 14.4576, 3.35435, 0.541075, 0.71033, 0.811303, 3.08413, -1.06509, -9.17934, 5.28392, 6.93678, -1.05699, 1.05699, 6.50159}, {-2.11261, -1.03886, 2.77345, 1.25748, 1.89399, 2.48645, 1.80337, -1.80337, 10.0444, 1.45625, -1.45625, -1.91178, 1.05699, -1.05699, -6.50159, -5.84123, -10.6601, -8.8807, 11.8048, 4.69653, -10.3835, 0.811303, 3.08413, -1.06509, -3.35435, -0.541075, -0.71033, -6.88198, 6.88198, 14.1487}, {-2.11261, -1.03886, 2.77345, 1.25748, 1.89399, 2.48645, -0.601124, 0.601124, -3.34812, -4.36874, 4.36874, 5.73533, 1.05699, -1.05699, -6.50159, -0.811303, -3.08413, 1.06509, 3.35435, 0.541075, 0.71033, 9.26172, 7.23958, -12.1589, -8.38428, -8.11702, -10.6561, 1.34751, -1.34751, 19.8941}, {-4.24616, -5.57441, -4.24476, 0.373467, -3.64699, -2.77708, -1.78885, 1.78885, -1.78885, 0, 0, 3.15102, -3.70501, 16.7991, 12.7921, 1.74951, 2.29678, 5.64381, 7.61705, -11.6633, 7.61763, -1.74951, -2.29678, -18.2479, -0.461631, 4.50793, -0.462209, 2.21115, -2.21115, -1.68373}, {1.41539, 1.85814, 1.41492, -1.1204, 10.941, 8.33125, -1.78885, 1.78885, -1.78885, 1.39933e-15, -1.39933e-15, 3.15102, -7.87269, -5.2214, -3.97595, 8.90493, -4.85864, 12.7992, 0.461631, -4.50793, 0.462209, -1.74951, -2.29678, -5.64381, -0.461631, 4.50793, -13.0663, 2.21115, -2.21115, -1.68373}, {1.41539, 1.85814, 1.41492, 0.373467, -3.64699, -2.77708, 5.36656, -5.36656, 5.36656, 0, 0, 3.15102, -2.21115, 2.21115, 1.68373, 0.255645, 16.8847, 16.7521, -5.19992, -11.9405, -5.19747, -1.74951, -2.29678, -5.64381, -0.461631, 4.50793, -0.462209, 2.21115, -2.21115, -14.2878}, {1.41539, 1.85814, 1.41492, 0.373467, -3.64699, -2.77708, -1.78885, 1.78885, -1.78885, 0, 0, -9.45305, -2.21115, 2.21115, 1.68373, 1.74951, 2.29678, 5.64381, 0.461631, -4.50793, 0.462209, -7.41106, -9.72932, -11.3035, -1.9555, 19.0959, 10.6461, 9.36656, -9.36656, 5.47169}, {2.81917, 4.24616, 5.57441, -1.67083, -0.373467, 3.64699, 0.18745, 1.78885, -1.78885, 2.4231, 0, 0, 9.91012, 3.70501, -16.7991, 1.83355, -1.74951, -2.29678, 0.18006, -7.61705, 11.6633, -11.526, 1.74951, 2.29678, -0.929861, 0.461631, -4.50793, -3.22682, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, 5.01248, 1.1204, -10.941, 0.18745, 1.78885, -1.78885, 2.4231, -1.07607e-15, 1.07607e-15, 6.98571, 7.87269, 5.2214, 1.08375, -8.90493, 4.85864, 0.929861, -0.461631, 4.50793, -1.83355, 1.74951, 2.29678, -10.6223, 0.461631, -4.50793, -3.22682, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, -1.67083, -0.373467, 3.64699, -0.56235, -5.36656, 5.36656, 2.4231, 0, 0, 3.22682, 2.21115, -2.21115, 8.51686, -0.255645, -16.8847, 4.68875, 5.19992, 11.9405, -1.83355, 1.74951, 2.29678, -0.929861, 0.461631, -4.50793, -12.9192, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, -1.67083, -0.373467, 3.64699, 0.18745, 1.78885, -1.78885, -7.2693, 0, 0, 3.22682, 2.21115, -2.21115, 1.83355, -1.74951, -2.29678, 0.929861, -0.461631, 4.50793, 1.92534, 7.41106, 9.72932, 5.75345, 1.9555, -19.0959, -3.97662, -9.36656, 9.36656}, {-3.55271e-15, -7.99361e-15, -9.45441, -3.15147, 0, 0, 1.78937, -1.78885, -1.78885, 1.3621, 1.78885, -1.36261, 16.5013, -3.55271e-15, -3.89543, 1.68365, 2.21115, 2.21115, -9.36924, 9.36656, 5.47113, -7.13206, -9.36656, 3.23931, 2.21178, -2.21115, 1.68428, -3.89543, 3.55271e-15, 3.89543}, {-2.22045e-16, 2.88658e-15, 3.15147, 9.45441, 0, 0, 1.78937, -1.78885, -1.78885, 1.3621, 1.78885, -1.36261, 3.89543, -1.42109e-14, -16.5013, -5.47381, 9.36656, 9.36656, -2.21178, 2.21115, -1.68428, -1.68365, -2.21115, -2.21115, -3.23663, -9.36656, 7.13474, -3.89543, 3.55271e-15, 3.89543}, {2.22045e-16, 0, 3.15147, -3.15147, 0, 0, -5.3681, 5.36656, 5.36656, 1.3621, 1.78885, -1.36261, 3.89543, 0, -3.89543, 14.2895, 2.21115, 2.21115, -2.21178, 2.21115, -14.2902, -1.68365, -2.21115, -2.21115, 2.21178, -2.21115, 1.68428, -9.34384, -7.15542, 9.34589}, {8.88178e-16, 1.55431e-15, 3.15147, -3.15147, 0, 0, 1.78937, -1.78885, -1.78885, -4.08631, -5.36656, 4.08784, 3.89543, -2.22045e-15, -3.89543, 1.68365, 2.21115, 2.21115, -2.21178, 2.21115, -1.68428, -1.68365, -2.21115, -14.817, 14.8177, -2.21115, 1.68428, -11.0529, 7.15542, 11.0508}, {-5.22583, 5.22504, 3.98456, 2.34612, 2.92755e-15, 1.19114e-15, -2.54361, 0.198607, 1.93944, -1.54445, 1.54307, -0.611252, -14.4376, 2.15284, 1.64173, 0.244118, -0.245492, -2.39728, 11.1654, 1.11292, -8.51331, 5.93368, -5.9268, 4.84229, -0.990917, -1.90734, 0.755549, 5.05312, -2.15284, -1.64173}, {1.74194, -1.74168, -1.32819, -7.03835, -2.34918e-15, 4.45681e-15, -2.54361, 0.198607, 1.93944, -1.54445, 1.54307, -0.611252, -12.0209, 9.11956, 6.95448, 10.4186, -1.03992, -10.155, 0.990917, 1.90734, -0.755549, -0.244118, 0.245492, 2.39728, 5.18688, -8.07964, 3.20056, 5.05312, -2.15284, -1.64173}, {1.74194, -1.74168, -1.32819, 2.34612, 0, 0, 7.63084, -0.595821, -5.81832, -1.54445, 1.54307, -0.611252, -5.05312, 2.15284, 1.64173, -9.14035, -0.245492, -2.39728, -5.97686, 8.87406, 4.5572, -0.244118, 0.245492, 2.39728, -0.990917, -1.90734, 0.755549, 11.2309, -8.32513, 0.803277}, {1.74194, -1.74168, -1.32819, 2.34612, -8.98735e-16, 3.56012e-16, -2.54361, 0.198607, 1.93944, 4.63335, -4.62922, 1.83376, -5.05312, 2.15284, 1.64173, 0.244118, -0.245492, -2.39728, 0.990917, 1.90734, -0.755549, -7.21189, 7.21221, 7.71003, -10.3754, -1.90734, 0.755549, 15.2276, -2.94726, -9.39949}, {-9.45441, 1.33227e-14, -1.06581e-14, -1.78937, -1.78885, -1.78885, -1.3621, 1.78885, -1.36261, 0, 0, 3.15147, 5.47381, 9.36656, 9.36656, 3.89543, -5.32907e-15, 3.89543, 3.23663, -9.36656, 7.13474, -3.89543, 5.32907e-15, -16.5013, 2.21178, 2.21115, -1.68428, 1.68365, -2.21115, -2.21115}, {3.15147, 2.7318e-15, 0, 5.3681, 5.36656, 5.36656, -1.3621, 1.78885, -1.36261, 1.06566e-15, -1.39953e-15, 3.15147, -14.2895, 2.21115, 2.21115, 9.34384, -7.15542, 9.34589, -2.21178, -2.21115, 1.68428, -3.89543, -1.33227e-15, -3.89543, 2.21178, 2.21115, -14.2902, 1.68365, -2.21115, -2.21115}, {3.15147, 0, 2.22045e-15, -1.78937, -1.78885, -1.78885, 4.08631, -5.36656, 4.08784, 0, 0, 3.15147, -1.68365, 2.21115, 2.21115, 11.0529, 7.15542, 11.0508, -14.8177, -2.21115, 1.68428, -3.89543, 0, -3.89543, 2.21178, 2.21115, -1.68428, 1.68365, -2.21115, -14.817}, {3.15147, 0, 0, -1.78937, -1.78885, -1.78885, -1.3621, 1.78885, -1.36261, 0, 0, -9.45441, -1.68365, 2.21115, 2.21115, 3.89543, 0, 3.89543, -2.21178, -2.21115, 1.68428, -16.5013, 0, -3.89543, 9.36924, 9.36656, 5.47113, 7.13206, -9.36656, 3.23931}, {-7.03835, 0, -2.66454e-15, -2.34612, 2.34348, -1.78885, -1.03933e-11, 0.00114147, 1.78885, 0, -2.34462, 0, 9.38447, -12.2706, 9.36656, 2.89996, -2.89811, 1.33227e-15, -2.89996, -0.00597681, -9.36656, -2.89996, 12.2766, -1.33227e-15, 2.89996, 0.00141093, 2.21115, 1.28469e-11, 2.8967, -2.21115}, {2.34612, -3.9968e-15, 0, 7.03835, -7.03044, 5.36656, -1.03933e-11, 0.00114147, 1.78885, 0, -2.34462, 0, -9.38447, -2.8967, 2.21115, 2.89996, -2.90268, -7.15542, -2.89996, -0.00141093, -2.21115, -2.89996, 2.89811, 0, 2.89996, 9.37989, 2.21115, 1.28469e-11, 2.8967, -2.21115}, {2.34612, -1.77636e-15, 0, -2.34612, 2.34348, -1.78885, 3.11847e-11, -0.00342441, -5.36656, 0, -2.34462, 0, -1.28494e-11, -2.8967, 2.21115, 12.2844, -12.272, 7.15542, -12.2844, -0.00141093, -2.21115, -2.89996, 2.89811, 0, 2.89996, 0.00141093, 2.21115, 1.28488e-11, 12.2752, -2.21115}, {2.34612, 2.66454e-15, 0, -2.34612, 2.34348, -1.78885, -1.03918e-11, 0.00114147, 1.78885, 0, 7.03386, 0, -1.28455e-11, -2.8967, 2.21115, 2.89996, -2.89811, 0, -2.89996, -0.00141093, -2.21115, -12.2844, 2.89811, 0, 12.2844, -9.37251, 9.36656, 5.4412e-11, 2.89213, -9.36656}, {-1.11022e-15, 0, 5.41667, 2.01922, -1.97048e-12, 0.623753, -1.44665, -1.44665, 0.584061, -0.572575, 1.44665, 0.597742, -10.5728, 1.03175e-11, -1.03422, -0.707741, 1.78815, -1.49294, 7.57474, 7.57474, -0.826394, 2.99804, -7.57474, -0.898027, -1.78815, -1.78815, -1.50985, 2.4959, -2.43561e-12, -1.46079}, {-1.11022e-16, 2.22045e-16, -1.80556, -6.05767, 5.9153e-12, -1.87126, -1.44665, -1.44665, 0.584061, -0.572575, 1.44665, 0.597742, -2.4959, 2.43716e-12, 8.68301, 5.07885, 7.57474, -3.82918, 1.78815, 1.78815, 1.50985, 0.707741, -1.78815, 1.49294, 0.502145, -7.57474, -3.90082, 2.4959, -2.43716e-12, -1.46079}, {0, 2.22045e-16, -1.80556, 2.01922, -1.97103e-12, 0.623753, 4.33994, 4.33994, -1.75218, -0.572575, 1.44665, 0.597742, -2.4959, 2.43627e-12, 1.46079, -8.78463, 1.78815, -3.98795, 1.78815, 1.78815, 8.73207, 0.707741, -1.78815, 1.49294, -1.78815, -1.78815, -1.50985, 4.7862, -5.78659, -3.85176}, {1.11022e-16, 2.22045e-16, -1.80556, 2.01922, -1.97085e-12, 0.623753, -1.44665, -1.44665, 0.584061, 1.71772, -4.33994, -1.79323, -2.4959, 2.43583e-12, 1.46079, -0.707741, 1.78815, -1.49294, 1.78815, 1.78815, 1.50985, 0.707741, -1.78815, 8.71516, -9.86504, -1.78815, -4.00486, 8.28248, 5.78659, -3.79703}, {8.56414, 1.25642, -1.25642, 2.63957, -0.971716, -0.633952, 1.54777, 0.0578944, 1.54777, -1.33263, 1.33263, -1.33263, -10.2923, 5.60564, 2.80174, -5.17584, 1.12955, -1.12955, -4.57563, 0.214536, -8.62192, 10.5064, -6.46006, 6.46006, -1.61547, -0.446113, 2.43083, -0.265934, -1.71878, -0.265934}, {-2.85471, -0.418807, 0.418807, -7.91871, 2.91515, 1.90186, 1.54777, 0.0578944, 1.54777, -1.33263, 1.33263, -1.33263, 11.6848, 3.39401, -1.4093, -11.3669, 0.897968, -7.32064, 1.61547, 0.446113, -2.43083, 5.17584, -1.12955, 1.12955, 3.71505, -5.77663, 7.76134, -0.265934, -1.71878, -0.265934}, {-2.85471, -0.418807, 0.418807, 2.63957, -0.971716, -0.633952, -4.64332, -0.173683, -4.64332, -1.33263, 1.33263, -1.33263, 0.265934, 1.71878, 0.265934, -15.7341, 5.01641, 1.40626, 13.0343, 2.12134, -4.10606, 5.17584, -1.12955, 1.12955, -1.61547, -0.446113, 2.43083, 5.06458, -7.0493, 5.06458}, {-2.85471, -0.418807, 0.418807, 2.63957, -0.971716, -0.633952, 1.54777, 0.0578944, 1.54777, 3.99789, -3.99789, 3.99789, 0.265934, 1.71878, 0.265934, -5.17584, 1.12955, -1.12955, 1.61547, 0.446113, -2.43083, 16.5947, 0.545684, -0.545684, -12.1737, 3.44075, 4.96664, -6.45703, -1.95036, -6.45703}, {-0.339403, 0.339403, -5.15641, -0.164984, -1.44068, -0.164984, 1.07377, 0.531894, -0.531894, -1.02192, 1.02192, -1.02192, 0.724024, 7.68336, -1.26069, -1.12333, 1.12333, 0.861388, -5.7622, -2.64519, 0.660475, 5.21103, -5.21103, 3.22631, 1.4671, 0.517615, 1.4671, -0.0640894, -1.92063, 1.92063}, {0.113134, -0.113134, 1.7188, 0.494951, 4.32205, 0.494951, 1.07377, 0.531894, -0.531894, -1.02192, 1.02192, -1.02192, -0.388448, 2.37316, -8.79583, -5.41842, -1.00425, 2.98896, -1.4671, -0.517615, -1.4671, 1.12333, -1.12333, -0.861388, 5.5548, -3.57008, 5.5548, -0.0640894, -1.92063, 1.92063}, {0.113134, -0.113134, 1.7188, -0.164984, -1.44068, -0.164984, -3.22132, -1.59568, 1.59568, -1.02192, 1.02192, -1.02192, 0.0640894, 1.92063, -1.92063, -0.463392, 6.88606, 1.52132, -1.91964, -0.0650781, -8.34231, 1.12333, -1.12333, -0.861388, 1.4671, 0.517615, 1.4671, 4.02361, -6.00832, 6.00832}, {0.113134, -0.113134, 1.7188, -0.164984, -1.44068, -0.164984, 1.07377, 0.531894, -0.531894, 3.06577, -3.06577, 3.06577, 0.0640894, 1.92063, -1.92063, -1.12333, 1.12333, 0.861388, -1.4671, -0.517615, -1.4671, 0.67079, -0.67079, -7.7366, 2.12703, 6.28035, 2.12703, -4.35919, -4.0482, 4.0482}, {-1.94182, 3.40923, 1.10711, 0.155006, 1.62575, -1.6184, 0.710689, -0.184627, 1.53026, -1.51297, -0.304717, 0.45717, -1.6117, -7.10787, 8.93018, -1.07006, -1.78133, 0.108939, -4.52129, 2.3714, -7.5564, 7.12193, 3.0002, -1.93762, 1.67853, -1.63289, 1.43535, 0.991672, 0.604862, -2.4566}, {0.647273, -1.13641, -0.369036, -0.465018, -4.87726, 4.85519, 0.710689, -0.184627, 1.53026, -1.51297, -0.304717, 0.45717, -3.58076, 3.94077, 3.93275, -3.91281, -1.04282, -6.01211, -1.67853, 1.63289, -1.43535, 1.07006, 1.78133, -0.108939, 7.73041, -0.414023, -0.393324, 0.991672, 0.604862, -2.4566}, {0.647273, -1.13641, -0.369036, 0.155006, 1.62575, -1.6184, -2.13207, 0.553881, -4.59079, -1.51297, -0.304717, 0.45717, -0.991672, -0.604862, 2.4566, -1.69008, -8.28434, 6.58252, -4.26763, 6.17852, 0.0407896, 1.07006, 1.78133, -0.108939, 1.67853, -1.63289, 1.43535, 7.04355, 1.82373, -4.28528}, {0.647273, -1.13641, -0.369036, 0.155006, 1.62575, -1.6184, 0.710689, -0.184627, 1.53026, 4.53891, 0.91415, -1.37151, -0.991672, -0.604862, 2.4566, -1.07006, -1.78133, 0.108939, -1.67853, 1.63289, -1.43535, -1.51903, 6.32696, 1.36721, 1.05851, -8.1359, 7.90894, -1.85108, 1.34337, -8.57765}, {-5.53886e-11, 0.00342441, 5.36656, 2.34612, 1.36758e-15, 3.12566e-15, 0, -2.34462, 0, -2.34612, 2.34576, 1.78885, -12.2844, 0.00141093, 2.21115, -2.89996, 2.89811, -3.86352e-15, -2.28213e-11, 12.278, 2.21115, 12.2844, -12.2812, -7.15542, 2.28213e-11, -2.89952, -2.21115, 2.89996, -0.00141093, -2.21115}, {1.22999e-11, -0.00114147, -1.78885, -7.03835, -8.19548e-15, -3.12566e-15, 0, -2.34462, 0, -2.34612, 2.34576, 1.78885, -2.89996, 0.00597681, 9.36656, -2.89996, 12.2766, -1.28784e-15, -1.52034e-11, 2.89952, 2.21115, 2.89996, -2.89811, 1.73193e-15, 9.38447, -12.2826, -9.36656, 2.89996, -0.00141093, -2.21115}, {1.22964e-11, -0.00114147, -1.78885, 2.34612, 0, 0, 0, 7.03386, 0, -2.34612, 2.34576, 1.78885, -2.89996, 0.00141093, 2.21115, -12.2844, 2.89811, 0, -6.43876e-11, 2.90409, 9.36656, 2.89996, -2.89811, 4.44089e-16, 1.51994e-11, -2.89952, -2.21115, 12.2844, -9.38446, -9.36656}, {1.22991e-11, -0.00114147, -1.78885, 2.34612, -1.36625e-15, -1.04189e-15, 0, -2.34462, 0, 7.03835, -7.03729, -5.36656, -2.89996, 0.00141093, 2.21115, -2.89996, 2.89811, 1.28784e-15, -1.52025e-11, 2.89952, 2.21115, 2.89996, -2.89354, 7.15542, -9.38447, -2.89952, -2.21115, 2.89996, 9.37707, -2.21115}, {-4.82547e-12, 4.93775, 1.89782, -1.17597e-12, 1.20344, -0.85762, 1.44665, -0.256711, 0.444168, -1.44665, 0.69919, 1.04606, 4.16933e-12, -4.26682, 5.2725, -1.78815, -1.17022, 0.511055, -7.57474, 3.37862, -1.54375, 7.57474, -1.62654, -4.69529, 1.78815, -2.35178, -0.232925, 5.34461e-13, -0.546933, -1.84202}, {1.60938e-12, -1.64592, -0.632608, 3.52988e-12, -3.61031, 2.57286, 1.44665, -0.256711, 0.444168, -1.44665, 0.69919, 1.04606, -6.97309e-12, 7.13059, 4.37245, -7.57474, -0.143371, -1.26562, -1.78815, 2.35178, 0.232925, 1.78815, 1.17022, -0.511055, 7.57474, -5.14853, -4.41716, 5.34905e-13, -0.546933, -1.84202}, {1.60738e-12, -1.64592, -0.632608, -1.17532e-12, 1.20344, -0.85762, -4.33994, 0.770134, -1.3325, -1.44665, 0.69919, 1.04606, -5.34239e-13, 0.546933, 1.84202, -1.78815, -5.98397, 3.94153, -1.78815, 8.93544, 2.76336, 1.78815, 1.17022, -0.511055, 1.78815, -2.35178, -0.232925, 5.78659, -3.34369, -6.02626}, {1.60805e-12, -1.64592, -0.632608, -1.17575e-12, 1.20344, -0.85762, 1.44665, -0.256711, 0.444168, 4.33994, -2.09757, -3.13818, -5.34461e-13, 0.546933, 1.84202, -1.78815, -1.17022, 0.511055, -1.78815, 2.35178, 0.232925, 1.78815, 7.75388, 2.01938, 1.78815, -7.16552, 3.19755, -5.78659, 0.479913, -3.61869}, {3.67809, 0.0745323, 3.75892, 1.30596, 0.948366, 0.152693, 0.0437324, -1.35943, 0.016287, -0.123659, 0.435911, 1.08399, -5.32262, -4.935, 0.74925, -1.66831, 0.508107, -0.20887, 1.28647, 7.14879, 1.46348, 2.16294, -2.25175, -4.1271, -1.4614, -1.71106, -1.52863, 0.0987948, 1.14154, -1.36002}, {-1.22603, -0.0248441, -1.25297, -3.91787, -2.8451, -0.458078, 0.0437324, -1.35943, 0.016287, -0.123659, 0.435911, 1.08399, 4.80532, -1.04216, 6.37191, -1.84323, 5.94584, -0.274019, 1.4614, 1.71106, 1.52863, 1.66831, -0.508107, 0.20887, -0.966762, -3.4547, -5.8646, 0.0987948, 1.14154, -1.36002}, {-1.22603, -0.0248441, -1.25297, 1.30596, 0.948366, 0.152693, -0.131197, 4.0783, -0.0488611, -0.123659, 0.435911, 1.08399, -0.0987948, -1.14154, 1.36002, -6.89213, -3.28536, -0.819641, 6.36551, 1.81044, 6.54052, 1.66831, -0.508107, 0.20887, -1.4614, -1.71106, -1.52863, 0.593431, -0.602108, -5.69599}, {-1.22603, -0.0248441, -1.25297, 1.30596, 0.948366, 0.152693, 0.0437324, -1.35943, 0.016287, 0.370977, -1.30773, -3.25198, -0.0987948, -1.14154, 1.36002, -1.66831, 0.508107, -0.20887, 1.4614, 1.71106, 1.52863, 6.57242, -0.40873, 5.22076, -6.68522, -5.50453, -2.1394, -0.0761347, 6.57927, -1.42517}, {5.37088, 5.36291, 5.36619, 1.99086e-15, 6.84977e-16, 1.60567, 0.376399, 3.64451, 0.373213, 1.41389, -1.85687, -0.190152, 2.21292, 2.20964, -6.1964, -0.465254, -4.50486, -2.44603, 0.242074, -16.8733, 0.256821, -5.19032, 11.9323, 3.20664, -1.74767, 2.29522, -1.74967, -2.21292, -2.20964, -0.226277}, {-1.79029, -1.78764, -1.78873, -1.24068e-15, 6.57876e-15, -4.817, 0.376399, 3.64451, 0.373213, 1.41389, -1.85687, -0.190152, 9.37409, 9.36019, 7.3812, -1.97085, -19.0829, -3.93889, 1.74767, -2.29522, 1.74967, 0.465254, 4.50486, 2.44603, -7.40324, 9.72271, -0.989068, -2.21292, -2.20964, -0.226277}, {-1.79029, -1.78764, -1.78873, 0, 0, 1.60567, -1.1292, -10.9335, -1.11964, 1.41389, -1.85687, -0.190152, 2.21292, 2.20964, 0.226277, -0.465254, -4.50486, -8.8687, 8.90884, 4.85533, 8.90459, 0.465254, 4.50486, 2.44603, -1.74767, 2.29522, -1.74967, -7.8685, 5.21784, 0.53433}, {-1.79029, -1.78764, -1.78873, -5.63596e-16, 7.40172e-16, 1.60567, 0.376399, 3.64451, 0.373213, -4.24168, 5.57061, 0.570455, 2.21292, 2.20964, 0.226277, -0.465254, -4.50486, -2.44603, 1.74767, -2.29522, 1.74967, 7.62642, 11.6554, 9.60095, -1.74767, 2.29522, -8.17235, -3.71852, -16.7877, -1.71913}, {1.24345e-14, 1.42109e-14, -9.45441, 0, -3.15057, 0, 1.78885, 1.78834, -1.78885, -1.78885, 1.36222, -1.36261, 4.88498e-15, 16.4966, -3.89543, -2.21115, 1.6838, 2.21115, -9.36656, -9.36389, 5.47113, 9.36656, -7.1327, 3.23931, 2.21115, 2.21051, 1.68428, -4.88498e-15, -3.89432, 3.89543}, {1.33227e-15, 3.33067e-15, 3.15147, 0, 9.4517, 0, 1.78885, 1.78834, -1.78885, -1.78885, 1.36222, -1.36261, -5.32907e-15, 3.89432, -16.5013, -9.36656, -5.46957, 9.36656, -2.21115, -2.21051, -1.68428, 2.21115, -1.6838, -2.21115, 9.36656, -3.23838, 7.13474, 1.33227e-15, -3.89432, 3.89543}, {-1.11022e-15, -8.43769e-15, 3.15147, 0, -3.15057, 0, -5.36656, -5.36503, 5.36656, -1.78885, 1.36222, -1.36261, 1.33227e-15, 3.89432, -3.89543, -2.21115, 14.2861, 2.21115, -2.21115, -2.21051, -14.2902, 2.21115, -1.6838, -2.21115, 2.21115, 2.21051, 1.68428, 7.15542, -9.34321, 9.34589}, {0, -2.22045e-16, 3.15147, 0, -3.15057, 0, 1.78885, 1.78834, -1.78885, 5.36656, -4.08667, 4.08784, 0, 3.89432, -3.89543, -2.21115, 1.6838, 2.21115, -2.21115, -2.21051, -1.68428, 2.21115, -1.6838, -14.817, 2.21115, 14.8128, 1.68428, -7.15542, -11.0477, 11.0508}, {-5.91616e-12, 6.05767, -4.31695, 0, 0, -1.80556, 1.44665, 0.572575, -0.146817, -1.44665, 1.44665, 0.51339, -2.43761e-12, 2.4959, 7.67533, -1.78815, -0.707741, 2.41326, -7.57474, -0.502145, -1.00994, 7.57474, -5.07885, -4.46683, 1.78815, -1.78815, 1.5972, 2.43761e-12, -2.4959, -0.45311}, {1.97087e-12, -2.01922, 1.43898, 0, 0, 5.41667, 1.44665, 0.572575, -0.146817, -1.44665, 1.44665, 0.51339, -1.03206e-11, 10.5728, -5.30282, -7.57474, -2.99804, 3.00053, -1.78815, 1.78815, -1.5972, 1.78815, 0.707741, -2.41326, 7.57474, -7.57474, -0.456356, 2.43627e-12, -2.4959, -0.45311}, {1.97242e-12, -2.01922, 1.43898, 0, 0, -1.80556, -4.33994, -1.71772, 0.44045, -1.44665, 1.44665, 0.51339, -2.43783e-12, 2.4959, 0.45311, -1.78815, -0.707741, 9.63549, -1.78815, 9.86504, -7.35313, 1.78815, 0.707741, -2.41326, 1.78815, -1.78815, 1.5972, 5.78659, -8.28248, -2.50667}, {1.97198e-12, -2.01922, 1.43898, 0, 0, -1.80556, 1.44665, 0.572575, -0.146817, 4.33994, -4.33994, -1.54017, -2.43761e-12, 2.4959, 0.45311, -1.78815, -0.707741, 2.41326, -1.78815, 1.78815, -1.5972, 1.78815, 8.78463, -8.16919, 1.78815, -1.78815, 8.81943, -5.78659, -4.7862, 0.134156}, {-4.33994, -4.33994, 1.75218, -1.97211e-12, -2.01922, 1.43898, 0, 0, -1.80556, -1.44665, 0.572575, 0.950635, -1.78815, 8.78463, -6.81267, 2.43766e-12, 2.4959, 0.45311, -1.78815, -1.78815, 10.176, 5.78659, -4.7862, -4.25565, 1.78815, 1.78815, -2.95373, 1.78815, -0.707741, 1.05674}, {1.44665, 1.44665, -0.584061, 5.92068e-12, 6.05767, -4.31695, 0, 0, -1.80556, -1.44665, 0.572575, 0.950635, -7.57474, -5.07885, 1.2795, 2.43945e-12, 2.4959, 7.67533, -1.78815, -1.78815, 2.95373, -2.43981e-12, -2.4959, -0.45311, 7.57474, -0.502145, -6.75627, 1.78815, -0.707741, 1.05674}, {1.44665, 1.44665, -0.584061, -1.97247e-12, -2.01922, 1.43898, 0, 0, 5.41667, -1.44665, 0.572575, 0.950635, -1.78815, 0.707741, -1.05674, 1.0328e-11, 10.5728, -5.30282, -7.57474, -7.57474, 5.28997, -2.43847e-12, -2.4959, -0.45311, 1.78815, 1.78815, -2.95373, 7.57474, -2.99804, -2.7458}, {1.44665, 1.44665, -0.584061, -1.97283e-12, -2.01922, 1.43898, 0, 0, -1.80556, 4.33994, -1.71772, -2.8519, -1.78815, 0.707741, -1.05674, 2.43856e-12, 2.4959, 0.45311, -1.78815, -1.78815, 2.95373, -5.78659, -8.28248, 1.88313, 1.78815, 9.86504, -8.70966, 1.78815, -0.707741, 8.27896}, {1.71772, 0.356094, 4.33994, 2.01922, -0.477594, 1.7444e-12, -1.44665, -0.786183, 1.44665, 0, 1.38248, 0, -9.86504, 2.64743, 1.78815, -0.707741, 1.56212, -1.78815, 8.28248, 4.26323, -5.78659, 0.707741, -7.09202, 1.78815, -2.4959, -1.11849, -2.1562e-12, 1.78815, -0.737058, -1.78815}, {-0.572575, -0.118698, -1.44665, -6.05767, 1.43278, -5.23264e-12, -1.44665, -0.786183, 1.44665, 4.96495e-16, 1.38248, -4.96495e-16, 0.502145, 1.21185, 7.57474, 5.07885, 4.70685, -7.57474, 2.4959, 1.11849, 2.15571e-12, 0.707741, -1.56212, 1.78815, -2.4959, -6.6484, -2.15337e-12, 1.78815, -0.737058, -1.78815}, {-0.572575, -0.118698, -1.44665, 2.01922, -0.477594, 1.7444e-12, 4.33994, 2.35855, -4.33994, 0, 1.38248, 0, -1.78815, 0.737058, 1.78815, -8.78463, 3.47249, -1.78815, 4.7862, 1.59329, 5.78659, 0.707741, -1.56212, 1.78815, -2.4959, -1.11849, -2.1562e-12, 1.78815, -6.26696, -1.78815}, {-0.572575, -0.118698, -1.44665, 2.01922, -0.477594, 1.74332e-12, -1.44665, -0.786183, 1.44665, 0, -4.14743, 0, -1.78815, 0.737058, 1.78815, -0.707741, 1.56212, -1.78815, 2.4959, 1.11849, 2.15522e-12, 2.99804, -1.08732, 7.57474, -10.5728, 0.791882, -9.12813e-12, 7.57474, 2.40768, -7.57474}, {-3.82778, -1.72626, -1.72406, -1.39459, 0.310766, 0.31037, -0.00684175, -1.71025, 0.635056, 0.125505, 0.824062, -1.52011, 5.72503, -2.33845, -2.33547, 1.73226, 1.72986, -1.16861, -1.54131, 8.24373, -4.03555, -2.23428, -5.02611, 7.24907, 1.56867, -1.40273, 1.49533, -0.146676, 1.09539, 1.09399}, {1.27593, 0.575422, 0.574688, 4.18377, -0.932299, -0.93111, -0.00684175, -1.71025, 0.635056, 0.125505, 0.824062, -1.52011, -4.95703, -3.39708, -3.39274, 1.75963, 8.57086, -3.70884, -1.56867, 1.40273, -1.49533, -1.73226, -1.72986, 1.16861, 1.06665, -4.69898, 7.57578, -0.146676, 1.09539, 1.09399}, {1.27593, 0.575422, 0.574688, -1.39459, 0.310766, 0.31037, 0.0205252, 5.13075, -1.90517, 0.125505, 0.824062, -1.52011, 0.146676, -1.09539, -1.09399, 7.31062, 0.486792, -2.41009, -6.67238, -0.898961, -3.79408, -1.73226, -1.72986, 1.16861, 1.56867, -1.40273, 1.49533, -0.648696, -2.20086, 7.17445}, {1.27593, 0.575422, 0.574688, -1.39459, 0.310766, 0.31037, -0.00684175, -1.71025, 0.635056, -0.376515, -2.47219, 4.56034, 0.146676, -1.09539, -1.09399, 1.73226, 1.72986, -1.16861, -1.56867, 1.40273, -1.49533, -6.83597, -4.03154, -1.13014, 7.14703, -2.64579, 0.253846, -0.119309, 7.93639, -1.44623}, {4.08784, 5.36656, -4.08784, 3.15147, -2.79907e-15, -3.33475e-16, -1.78885, 1.78885, 1.78885, 0, 0, -3.15147, -14.817, 2.21115, -1.68428, -1.68428, -2.21115, -2.21115, 11.0508, -7.15542, -11.0508, 1.68428, 2.21115, 14.817, -3.89543, 3.45984e-15, 3.89543, 2.21115, -2.21115, 1.68428}, {-1.36261, -1.78885, 1.36261, -9.45441, 4.1986e-15, 1.15954e-14, -1.78885, 1.78885, 1.78885, 0, 0, -3.15147, 3.23931, 9.36656, -7.13474, 5.47113, -9.36656, -9.36656, 3.89543, -1.28583e-15, -3.89543, 1.68428, 2.21115, 2.21115, -3.89543, 1.72992e-15, 16.5013, 2.21115, -2.21115, 1.68428}, {-1.36261, -1.78885, 1.36261, 3.15147, 0, 0, 5.36656, -5.36656, -5.36656, 0, 0, -3.15147, -2.21115, 2.21115, -1.68428, -14.2902, -2.21115, -2.21115, 9.34589, 7.15542, -9.34589, 1.68428, 2.21115, 2.21115, -3.89543, 0, 3.89543, 2.21115, -2.21115, 14.2902}, {-1.36261, -1.78885, 1.36261, 3.15147, 0, 2.46559e-15, -1.78885, 1.78885, 1.78885, 0, 0, 9.45441, -2.21115, 2.21115, -1.68428, -1.68428, -2.21115, -2.21115, 3.89543, 4.44089e-16, -3.89543, 7.13474, 9.36656, -3.23931, -16.5013, 0, 3.89543, 9.36656, -9.36656, -5.47113}, {1.73341, -4.36745, 1.08767, 0, 0, 1.17684, 2.01922, 1.68048e-12, -0.615915, -1.44142, -1.45582, -0.198371, 0.714206, -1.79949, -5.71389, -2.4959, -2.07719e-12, -0.693346, -9.85858, -1.79949, 3.67312, 8.26156, 5.82327, 1.48683, 1.78169, 1.79949, -1.20946, -0.714206, 1.79949, 1.00651}, {-0.577805, 1.45582, -0.362558, 2.02028e-15, 3.82793e-15, -3.53053, 2.01922, 1.68206e-12, -0.615915, -1.44142, -1.45582, -0.198371, 3.02542, -7.62276, 0.443719, -10.5728, -8.8058e-12, 1.77031, -1.78169, -1.79949, 1.20946, 2.4959, 2.0772e-12, 0.693346, 7.54736, 7.62276, -0.415974, -0.714206, 1.79949, 1.00651}, {-0.577805, 1.45582, -0.362558, 0, 0, 1.17684, -6.05767, -5.04417e-12, 1.84774, -1.44142, -1.45582, -0.198371, 0.714206, -1.79949, -1.00651, -2.4959, -2.07831e-12, -5.40072, 0.529529, -7.62276, 2.65969, 2.4959, 2.07795e-12, 0.693346, 1.78169, 1.79949, -1.20946, 5.05146, 7.62276, 1.8}, {-0.577805, 1.45582, -0.362558, 0, 0, 1.17684, 2.01922, 1.68121e-12, -0.615915, 4.32425, 4.36745, 0.595113, 0.714206, -1.79949, -1.00651, -2.4959, -2.07809e-12, -0.693346, -1.78169, -1.79949, 1.20946, 4.80711, -5.82327, 2.14358, 1.78169, 1.79949, -5.91683, -8.79109, 1.79949, 3.47017}, {-4.91714, 2.88338, 1.92681, -0.336451, -0.850591, 0.85104, -1.79955, 0.555362, -0.55742, 0.496952, 1.25636, 0.348649, -0.264293, 5.64177, -3.66222, 2.64024, 0.364922, -0.362934, 7.39658, -1.7199, 3.71258, -4.62805, -5.39034, -1.03166, -0.198389, -0.501553, -1.4829, 1.6101, -2.23941, 0.258056}, {1.63905, -0.961127, -0.642269, 1.00935, 2.55177, -2.55312, -1.79955, 0.555362, -0.55742, 0.496952, 1.25636, 0.348649, -8.16629, 6.08391, 2.31102, 9.83843, -1.85653, 1.86675, 0.198389, 0.501553, 1.4829, -2.64024, -0.364922, 0.362934, -2.1862, -5.52697, -2.87749, 1.6101, -2.23941, 0.258056}, {1.63905, -0.961127, -0.642269, -0.336451, -0.850591, 0.85104, 5.39864, -1.66609, 1.67226, 0.496952, 1.25636, 0.348649, -1.6101, 2.23941, -0.258056, 3.98605, 3.76729, -3.76709, -6.3578, 4.34606, 4.05197, -2.64024, -0.364922, 0.362934, -0.198389, -0.501553, -1.4829, -0.377708, -7.26483, -1.13654}, {1.63905, -0.961127, -0.642269, -0.336451, -0.850591, 0.85104, -1.79955, 0.555362, -0.55742, -1.49085, -3.76907, -1.04595, -1.6101, 2.23941, -0.258056, 2.64024, 0.364922, -0.362934, 0.198389, 0.501553, 1.4829, -9.19643, 3.47958, 2.93201, 1.14742, 2.90081, -4.88706, 8.80829, -4.46086, 2.48774}, {10.941, -4.49288, 1.1204, 1.85814, 0.691786, -1.41539, 0, -2.17235, 0, 1.78885, -0.0170635, 1.78885, -5.2214, -5.47341, 7.87269, -2.29678, 1.83008, 1.74951, 4.50793, 9.5234, 0.461631, -4.85864, -1.76182, -8.90493, -4.50793, -0.834003, -0.461631, -2.21115, 2.70626, -2.21115}, {-3.64699, 1.49763, -0.373467, -5.57441, -2.07536, 4.24616, 0, -2.17235, 0, 1.78885, -0.0170635, 1.78885, 16.7991, -8.69677, 3.70501, -2.29678, 10.5195, 1.74951, 4.50793, 0.834003, 0.461631, 2.29678, -1.83008, -1.74951, -11.6633, -0.76575, -7.61705, -2.21115, 2.70626, -2.21115}, {-3.64699, 1.49763, -0.373467, 1.85814, 0.691786, -1.41539, 0, 6.51705, 0, 1.78885, -0.0170635, 1.78885, 2.21115, -2.70626, 2.21115, -9.72932, -0.937068, 7.41106, 19.0959, -5.15651, 1.9555, 2.29678, -1.83008, -1.74951, -4.50793, -0.834003, -0.461631, -9.36656, 2.77452, -9.36656}, {-3.64699, 1.49763, -0.373467, 1.85814, 0.691786, -1.41539, 0, -2.17235, 0, -5.36656, 0.0511904, -5.36656, 2.21115, -2.70626, 2.21115, -2.29678, 1.83008, 1.74951, 4.50793, 0.834003, 0.461631, 16.8847, -7.82059, -0.255645, -11.9405, -3.60115, 5.19992, -2.21115, 11.3957, -2.21115}, {-4.62937, 1.83228, -4.62937, -1.60567, 0, 0, -0.136178, -1.32981, -1.74185, 0.198723, 1.94057, 0.198723, 6.49998, 0.754941, -1.90741, 2.15304, 1.64373, 2.15304, -1.19437, 7.71791, 7.21302, -2.94793, -9.40601, -2.94793, 1.73908, -2.39867, -0.245635, -0.0773091, -0.754941, 1.90741}, {1.54312, -0.61076, 1.54312, 4.817, 0, 0, -0.136178, -1.32981, -1.74185, 0.198723, 1.94057, 0.198723, -6.09519, 3.19798, -8.0799, 2.69775, 6.96297, 9.12042, -1.73908, 2.39867, 0.245635, -2.15304, -1.64373, -2.15304, 0.94419, -10.1609, -1.04052, -0.0773091, -0.754941, 1.90741}, {1.54312, -0.61076, 1.54312, -1.60567, 0, 0, 0.408534, 3.98943, 5.22554, 0.198723, 1.94057, 0.198723, 0.0773091, 0.754941, -1.90741, 8.57571, 1.64373, 2.15304, -7.91157, 4.84171, -5.92686, -2.15304, -1.64373, -2.15304, 1.73908, -2.39867, -0.245635, -0.872199, -8.51722, 1.11252}, {1.54312, -0.61076, 1.54312, -1.60567, 0, 0, -0.136178, -1.32981, -1.74185, -0.596168, -5.82171, -0.596168, 0.0773091, 0.754941, -1.90741, 2.15304, 1.64373, 2.15304, -1.73908, 2.39867, 0.245635, -8.32553, 0.799305, -8.32553, 8.16175, -2.39867, -0.245635, 0.467403, 4.5643, 8.87479}, {-5.36656, 4.08784, -4.08784, 0, 3.15147, 0, -1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -2.21115, -14.817, -1.68428, 2.21115, -1.68428, -2.21115, 7.15542, 11.0508, -11.0508, -2.21115, 1.68428, 14.817, 0, -3.89543, 3.89543, 2.21115, 2.21115, 1.68428}, {1.78885, -1.36261, 1.36261, -4.1986e-15, -9.45441, 1.15954e-14, -1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -9.36656, 3.23931, -7.13474, 9.36656, 5.47113, -9.36656, 1.28583e-15, 3.89543, -3.89543, -2.21115, 1.68428, 2.21115, -1.72992e-15, -3.89543, 16.5013, 2.21115, 2.21115, 1.68428}, {1.78885, -1.36261, 1.36261, 0, 3.15147, -9.86237e-15, 5.36656, 5.36656, -5.36656, 0, 0, -3.15147, -2.21115, -2.21115, -1.68428, 2.21115, -14.2902, -2.21115, -7.15542, 9.34589, -9.34589, -2.21115, 1.68428, 2.21115, 0, -3.89543, 3.89543, 2.21115, 2.21115, 14.2902}, {1.78885, -1.36261, 1.36261, 0, 3.15147, 0, -1.78885, -1.78885, 1.78885, 0, 0, 9.45441, -2.21115, -2.21115, -1.68428, 2.21115, -1.68428, -2.21115, -4.44089e-16, 3.89543, -3.89543, -9.36656, 7.13474, -3.23931, 0, -16.5013, 3.89543, 9.36656, 9.36656, -5.47113}, {-14.3647, 4.91028, -4.91028, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.63676, 1.63676, -1.63676, 2.33207, -6.2275, -10.2738, 3.89543, -3.19522e-13, -3.19522e-13, 2.33207, 10.2738, 6.2275, 2.65162, -6.54704, 6.54704, 3.97086, -3.97086, 0.0754334, 3.97086, -0.0754334, 3.97086}, {4.78823, -1.63676, 1.63676, 4.7272, -4.7272, -4.7272, -1.57573, -1.57573, -1.57573, -1.63676, 1.63676, -1.63676, -23.1238, 6.62248, -10.5179, 10.1984, 6.30294, 6.30294, -3.97086, 3.97086, -0.0754334, -3.89543, 3.18596e-13, 3.18228e-13, 10.5179, -10.5179, 6.62248, 3.97086, -0.0754334, 3.97086}, {4.78823, -1.63676, 1.63676, -1.57573, 1.57573, 1.57573, 4.7272, 4.7272, 4.7272, -1.63676, 1.63676, -1.63676, -3.97086, 0.0754334, -3.97086, 10.1984, -6.30294, -6.30294, -23.1238, 10.5179, -6.62248, -3.89543, 3.21483e-13, 3.20892e-13, 3.97086, -3.97086, 0.0754334, 10.5179, -6.62248, 10.5179}, {4.78823, -1.63676, 1.63676, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 4.91028, -4.91028, 4.91028, -3.97086, 0.0754334, -3.97086, 3.89543, -3.19522e-13, -3.19078e-13, -3.97086, 3.97086, -0.0754334, -23.0483, 6.54704, -6.54704, 10.2738, -10.2738, -6.2275, 10.2738, 6.2275, 10.2738}, {0, -4.817, 7.10543e-15, -1.41539, -0.190281, -1.85814, -0.373467, 0.373467, 3.64699, 1.78885, -1.78885, -1.78885, 7.41106, -0.988391, 9.72932, 2.21115, -0.226431, -2.21115, 1.9555, -3.94022, -19.0959, -9.36656, 7.38185, 9.36656, -0.461631, 2.44635, 4.50793, -1.74951, 1.74951, -2.29678}, {-1.11022e-15, 1.60567, -1.55431e-15, 4.24616, 0.570843, 5.57441, -0.373467, 0.373467, 3.64699, 1.78885, -1.78885, -1.78885, 1.74951, -8.17219, 2.29678, 3.70501, -1.7203, -16.7991, 0.461631, -2.44635, -4.50793, -2.21115, 0.226431, 2.21115, -7.61705, 9.60176, 11.6633, -1.74951, 1.74951, -2.29678}, {-8.88178e-16, 1.60567, 1.11022e-15, -1.41539, -0.190281, -1.85814, 1.1204, -1.1204, -10.941, 1.78885, -1.78885, -1.78885, 1.74951, -1.74951, 2.29678, 7.87269, 0.534693, 5.2214, 0.461631, -8.86902, -4.50793, -2.21115, 0.226431, 2.21115, -0.461631, 2.44635, 4.50793, -8.90493, 8.90493, 4.85864}, {1.55431e-15, 1.60567, -4.44089e-16, -1.41539, -0.190281, -1.85814, -0.373467, 0.373467, 3.64699, -5.36656, 5.36656, 5.36656, 1.74951, -1.74951, 2.29678, 2.21115, -0.226431, -2.21115, 0.461631, -2.44635, -4.50793, -2.21115, -6.19624, 2.21115, 5.19992, 3.20747, 11.9405, -0.255645, 0.255645, -16.8847}, {-2.60507, 7.08874, -2.60507, -1.19276, 2.49131, 1.15037, -1.08957, 0.431245, -1.08957, 1.41397, -0.55964, -0.929159, 5.172, -10.1239, -7.09676, 2.82111, -3.61247, -0.0751544, 4.6317, 0.662693, 4.6317, -8.47697, 5.85103, 3.79179, -0.273431, -2.38767, -0.273431, -0.400978, 0.158705, 2.49528}, {0.868358, -2.36291, 0.868358, 3.57827, -7.47392, -3.45111, -1.08957, 0.431245, -1.08957, 1.41397, -0.55964, -0.929159, -3.07245, 9.29295, -5.96872, 7.17938, -5.33745, 4.28312, 0.273431, 2.38767, 0.273431, -2.82111, 3.61247, 0.0751544, -5.9293, -0.149113, 3.44321, -0.400978, 0.158705, 2.49528}, {0.868358, -2.36291, 0.868358, -1.19276, 2.49131, 1.15037, 3.2687, -1.29374, 3.2687, 1.41397, -0.55964, -0.929159, 0.400978, -0.158705, -2.49528, 7.59213, -13.5777, -4.67663, -3.2, 11.8393, -3.2, -2.82111, 3.61247, 0.0751544, -0.273431, -2.38767, -0.273431, -6.05684, 2.39726, 6.21192}, {0.868358, -2.36291, 0.868358, -1.19276, 2.49131, 1.15037, -1.08957, 0.431245, -1.08957, -4.2419, 1.67892, 2.78748, 0.400978, -0.158705, -2.49528, 2.82111, -3.61247, -0.0751544, 0.273431, 2.38767, 0.273431, -6.29454, 13.0641, -3.39828, 4.49759, -12.3529, -4.87491, 3.95729, -1.56628, 6.85356}, {0.133606, -1.71772, 4.33994, 0.841626, -2.01922, -1.9732e-12, -1.05603, 0, 0, 0.258935, 1.44665, 1.44665, -4.35176, 9.86504, 1.78815, 0.265013, 2.4959, 2.43901e-12, 5.58447, -0.707741, 1.78815, -1.30075, -8.28248, -5.78659, -1.36037, 0.707741, -1.78815, 0.985258, -1.78815, -1.78815}, {-0.0445353, 0.572575, -1.44665, -2.52488, 6.05767, 5.92285e-12, -1.05603, 0, 0, 0.258935, 1.44665, 1.44665, -0.807116, -0.502145, 7.57474, 4.48912, 2.4959, 2.44035e-12, 1.36037, -0.707741, 1.78815, -0.265013, -2.4959, -2.43999e-12, -2.39611, -5.07885, -7.57474, 0.985258, -1.78815, -1.78815}, {-0.0445353, 0.572575, -1.44665, 0.841626, -2.01922, -1.97392e-12, 3.16808, 0, 0, 0.258935, 1.44665, 1.44665, -0.985258, 1.78815, 1.78815, -3.10149, 10.5728, 1.03356e-11, 1.53851, -2.99804, 7.57474, -0.265013, -2.4959, -2.43954e-12, -1.36037, 0.707741, -1.78815, -0.0504837, -7.57474, -7.57474}, {-0.0445353, 0.572575, -1.44665, 0.841626, -2.01922, -1.97247e-12, -1.05603, 0, 0, -0.776806, -4.33994, -4.33994, -0.985258, 1.78815, 1.78815, 0.265013, 2.4959, 2.43811e-12, 1.36037, -0.707741, 1.78815, -0.0868717, -4.7862, 5.78659, -4.72687, 8.78463, -1.78815, 5.20936, -1.78815, -1.78815}, {-8.334, -1.1204, -10.941, -1.41539, 1.41539, -1.85814, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, 3.97726, -7.87269, 5.2214, 5.64494, -1.74951, 2.29678, 13.0675, -0.461631, -4.50793, -12.8004, 8.90493, 4.85864, -0.461631, 0.461631, 4.50793, 1.68428, 2.21115, 2.21115}, {2.778, 0.373467, 3.64699, 4.24616, -4.24616, 5.57441, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -12.7963, -3.70501, -16.7991, 18.2508, -1.74951, 2.29678, 0.461631, -0.461631, -4.50793, -5.64494, 1.74951, -2.29678, -7.61705, 7.61705, 11.6633, 1.68428, 2.21115, 2.21115}, {2.778, 0.373467, 3.64699, -1.41539, 1.41539, -1.85814, 9.45441, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -2.21115, -2.21115, 11.3065, -7.41106, 9.72932, -10.6504, -1.9555, -19.0959, -5.64494, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, -5.47113, 9.36656, 9.36656}, {2.778, 0.373467, 3.64699, -1.41539, 1.41539, -1.85814, -3.15147, 0, 0, -5.36656, 5.36656, 5.36656, -1.68428, -2.21115, -2.21115, 5.64494, -1.74951, 2.29678, 0.461631, -0.461631, -4.50793, -16.7569, 0.255645, -16.8847, 5.19992, -5.19992, 11.9405, 14.2902, 2.21115, 2.21115}, {1.01058, 2.55106, -2.5536, -2.38953, 1.40121, 0.936349, 0.591368, -0.846655, -1.49431, 2.13502, 0.295801, -0.293237, 12.9281, -6.28572, -5.95493, 2.22265, -0.685462, 0.68968, -2.68006, 5.48424, 6.77218, -10.7627, -0.497743, 0.483267, 0.314591, -2.09762, -0.794931, -3.37, 0.680893, 2.20953}, {-0.336859, -0.850352, 0.8512, 7.1686, -4.20362, -2.80905, 0.591368, -0.846655, -1.49431, 2.13502, 0.295801, -0.293237, 4.71744, 2.72051, -5.61433, -0.142821, 2.70116, 6.66693, -0.314591, 2.09762, 0.794931, -2.22265, 0.685462, -0.68968, -8.2255, -3.28082, 0.378017, -3.37, 0.680893, 2.20953}, {-0.336859, -0.850352, 0.8512, -2.38953, 1.40121, 0.936349, -1.77411, 2.53997, 4.48294, 2.13502, 0.295801, -0.293237, 3.37, -0.680893, -2.20953, 11.7808, -6.29028, -3.05572, 1.03285, 5.49902, -2.60987, -2.22265, 0.685462, -0.68968, 0.314591, -2.09762, -0.794931, -11.9101, -0.502312, 3.38248}, {-0.336859, -0.850352, 0.8512, -2.38953, 1.40121, 0.936349, 0.591368, -0.846655, -1.49431, -6.40507, -0.887404, 0.879711, 3.37, -0.680893, -2.20953, 2.22265, -0.685462, 0.68968, -0.314591, 2.09762, 0.794931, -0.875216, 4.08687, -4.09448, 9.87272, -7.70244, -4.54033, -5.73548, 4.06751, 8.18678}, {8.88178e-16, 9.4517, 0, 1.85814, -1.41498, 1.41539, -3.64699, 2.77721, 0.373467, 1.78885, 1.78834, -1.78885, -9.72932, 11.3033, -7.41106, 2.21115, -1.6838, -2.21115, 19.0959, -10.6473, -1.9555, -9.36656, -5.46957, 9.36656, -4.50793, -0.461499, 0.461631, 2.29678, -5.64333, 1.74951}, {-2.22045e-16, -3.15057, -2.22045e-16, -5.57441, 4.24495, -4.24616, -3.64699, 2.77721, 0.373467, 1.78885, 1.78834, -1.78885, -2.29678, 18.2456, -1.74951, 16.7991, -12.7926, -3.70501, 4.50793, 0.461499, -0.461631, -2.21115, 1.6838, 2.21115, -11.6633, -7.61487, 7.61705, 2.29678, -5.64333, 1.74951}, {8.88178e-16, -3.15057, 2.22045e-16, 1.85814, -1.41498, 1.41539, 10.941, -8.33162, -1.1204, 1.78885, 1.78834, -1.78885, -2.29678, 5.64333, -1.74951, -5.2214, 3.97613, -7.87269, 4.50793, 13.0638, -0.461631, -2.21115, 1.6838, 2.21115, -4.50793, -0.461499, 0.461631, -4.85864, -12.7967, 8.90493}, {4.44089e-16, -3.15057, 2.22045e-16, 1.85814, -1.41498, 1.41539, -3.64699, 2.77721, 0.373467, -5.36656, -5.36503, 5.36656, -2.29678, 5.64333, -1.74951, 2.21115, -1.6838, -2.21115, 4.50793, 0.461499, -0.461631, -2.21115, 14.2861, 2.21115, -11.9405, 5.19843, -5.19992, 16.8847, -16.7522, 0.255645}, {-3.98943, -5.23221, -5.22554, -1.94057, -2.54509, -0.198723, 0.61076, -1.54509, -1.54312, 0, 2.34612, 0, 8.51722, 11.1705, -1.11252, 1.64373, 5.05575, 2.15304, -4.84171, 5.93443, 5.92686, -1.64373, -14.4402, -2.15304, 2.39867, 0.245948, 0.245635, -0.754941, -0.990119, 1.90741}, {1.32981, 1.74407, 1.74185, 5.82171, 7.63528, 0.596168, 0.61076, -1.54509, -1.54312, -3.55726e-16, 2.34612, 8.98764e-16, -4.5643, -5.98616, -8.87479, -0.799305, 11.2361, 8.32553, -2.39867, -0.245948, -0.245635, -1.64373, -5.05575, -2.15304, 2.39867, -9.13852, 0.245635, -0.754941, -0.990119, 1.90741}, {1.32981, 1.74407, 1.74185, -1.94057, -2.54509, -0.198723, -1.83228, 4.63528, 4.62937, 0, 2.34612, 0, 0.754941, 0.990119, -1.90741, 9.40601, 15.2361, 2.94793, -7.71791, -7.22223, -7.21302, -1.64373, -5.05575, -2.15304, 2.39867, 0.245948, 0.245635, -0.754941, -10.3746, 1.90741}, {1.32981, 1.74407, 1.74185, -1.94057, -2.54509, -0.198723, 0.61076, -1.54509, -1.54312, 0, -7.03835, 0, 0.754941, 0.990119, -1.90741, 1.64373, 5.05575, 2.15304, -2.39867, -0.245948, -0.245635, -6.96297, -12.032, -9.12042, 10.1609, 10.4263, 1.04052, -3.19798, 5.19026, 8.0799}, {0, -8.88178e-15, -7.02938, -1.78885, -2.34612, -2.34313, 1.78885, 6.94391e-12, 7.11845e-12, 0, 2.34612, 0, 9.36656, 12.2844, 9.3725, 0, 2.89996, 2.89626, -9.36656, -3.63625e-11, -2.89626, 0, -12.2844, -2.89626, 2.21115, 8.58691e-12, 2.89626, -2.21115, -2.89996, -8.79889e-12}, {-9.56516e-16, 1.33227e-15, 2.34313, 5.36656, 7.03835, 7.02938, 1.78885, 6.94391e-12, 7.11845e-12, -1.04189e-15, 2.34612, -4.14601e-27, 2.21115, 2.89996, -9.3725, -7.15542, 2.89996, 2.89626, -2.21115, -8.58469e-12, -2.89626, 2.66454e-15, -2.89996, -2.89626, 2.21115, -9.38447, 2.89626, -2.21115, -2.89996, -8.79889e-12}, {0, -4.44089e-16, 2.34313, -1.78885, -2.34612, -2.34313, -5.36656, -2.08419e-11, -2.13616e-11, 0, 2.34612, 0, 2.21115, 2.89996, 8.80088e-12, 7.15542, 12.2844, 12.2688, -2.21115, -8.58691e-12, -12.2688, 0, -2.89996, -2.89626, 2.21115, 8.58691e-12, 2.89626, -2.21115, -12.2844, -8.80146e-12}, {0, 1.33227e-15, 2.34313, -1.78885, -2.34612, -2.34313, 1.78885, 6.94234e-12, 7.11741e-12, 0, -7.03835, 0, 2.21115, 2.89996, 8.79702e-12, 0, 2.89996, 2.89626, -2.21115, -8.58291e-12, -2.89626, 0, -2.89996, -12.2688, 9.36656, 9.38447, 12.2688, -9.36656, -2.89996, -3.72672e-11}, {-0.596168, 7.62554, 5.82171, -1.74185, 1.74185, 1.32981, 0, 2.34313, 0, 1.54312, -1.54312, 0.61076, 8.87479, -5.97853, -4.5643, 2.15304, -5.0493, -1.64373, -0.245635, -9.12687, 2.39867, -8.32553, 11.2218, -0.799305, 0.245635, -0.245635, -2.39867, -1.90741, -0.988857, -0.754941}, {0.198723, -2.54185, -1.94057, 5.22554, -5.22554, -3.98943, -8.97618e-16, 2.34313, -3.55272e-16, 1.54312, -1.54312, 0.61076, 1.11252, 11.1562, 8.51722, 2.15304, -14.4218, -1.64373, -0.245635, 0.245635, 2.39867, -2.15304, 5.0493, 1.64373, -5.92686, 5.92686, -4.84171, -1.90741, -0.988857, -0.754941}, {0.198723, -2.54185, -1.94057, -1.74185, 1.74185, 1.32981, 0, -7.02938, 0, 1.54312, -1.54312, 0.61076, 1.90741, 0.988857, 0.754941, 9.12042, -12.0167, -6.96297, -1.04052, 10.413, 10.1609, -2.15304, 5.0493, 1.64373, 0.245635, -0.245635, -2.39867, -8.0799, 5.18364, -3.19798}, {0.198723, -2.54185, -1.94057, -1.74185, 1.74185, 1.32981, 0, 2.34313, 0, -4.62937, 4.62937, -1.83228, 1.90741, 0.988857, 0.754941, 2.15304, -5.0493, -1.64373, -0.245635, 0.245635, 2.39867, -2.94793, 15.2167, 9.40601, 7.21302, -7.21302, -7.71791, -1.90741, -10.3614, -0.754941}, {4.7272, -4.7272, -4.7272, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 1.57573, -6.30294, -10.1984, 6.30294, 1.80456e-12, 1.805e-12, 3.89543, 10.1984, 6.30294, 6.30294, -6.30294, 6.30294, -10.1984, -3.89543, 3.19078e-13, 3.19078e-13, -2.14295e-12, 3.89543, 2.13674e-12}, {-1.57573, 1.57573, 1.57573, -4.7272, -4.7272, 4.7272, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 1.57573, 6.30294, -10.1984, -6.30294, 6.30294, 6.30294, 10.1984, 3.89543, -3.193e-13, -3.193e-13, -1.80505e-12, -1.80561e-12, -3.89543, -10.1984, 6.30294, -6.30294, -2.1394e-12, 3.89543, 2.13962e-12}, {-1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -1.57573, 4.7272, 4.7272, 4.7272, 1.57573, -1.57573, 1.57573, 2.14007e-12, -3.89543, -2.14007e-12, -6.30294, -6.30294, 10.1984, 10.1984, -6.30294, -6.30294, -1.80394e-12, -1.80428e-12, -3.89543, -3.89543, 3.20188e-13, 3.193e-13, -6.30294, 10.1984, -6.30294}, {-1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.57573, -4.7272, 4.7272, -4.7272, 2.1354e-12, -3.89543, -2.14473e-12, 1.80456e-12, 1.80456e-12, 3.89543, 3.89543, -3.19522e-13, -3.19522e-13, 6.30294, -6.30294, -10.1984, -10.1984, -6.30294, 6.30294, 6.30294, 10.1984, 6.30294}, {4.817, -1.77636e-15, 4.44089e-16, -0.136178, 1.74185, 1.32981, 0.198723, -0.198723, -1.94057, 1.54312, -1.54312, 0.61076, 2.69775, -9.12042, -6.96297, -0.0773091, -1.90741, 0.754941, 0.94419, 1.04052, 10.1609, -6.09519, 8.0799, -3.19798, -1.73908, -0.245635, -2.39867, -2.15304, 2.15304, 1.64373}, {-1.60567, 0, 2.22045e-16, 0.408534, -5.22554, -3.98943, 0.198723, -0.198723, -1.94057, 1.54312, -1.54312, 0.61076, 8.57571, -2.15304, -1.64373, -0.872199, -1.11252, 8.51722, 1.73908, 0.245635, 2.39867, 0.0773091, 1.90741, -0.754941, -7.91157, 5.92686, -4.84171, -2.15304, 2.15304, 1.64373}, {-1.60567, 2.22045e-16, 0, -0.136178, 1.74185, 1.32981, -0.596168, 0.596168, 5.82171, 1.54312, -1.54312, 0.61076, 2.15304, -2.15304, -1.64373, 0.467403, -8.87479, -4.5643, 8.16175, 0.245635, 2.39867, 0.0773091, 1.90741, -0.754941, -1.73908, -0.245635, -2.39867, -8.32553, 8.32553, -0.799305}, {-1.60567, -2.22045e-16, -2.22045e-16, -0.136178, 1.74185, 1.32981, 0.198723, -0.198723, -1.94057, -4.62937, 4.62937, -1.83228, 2.15304, -2.15304, -1.64373, -0.0773091, -1.90741, 0.754941, 1.73908, 0.245635, 2.39867, 6.49998, 1.90741, -0.754941, -1.19437, -7.21302, -7.71791, -2.94793, 2.94793, 9.40601}, {7.01844, 8.88178e-16, 0, 2.33948, 2.34313, 1.78885, 7.30061e-12, 6.91762e-12, -1.78885, 0, -2.34313, 0, -9.35791, -12.2688, -9.36656, -2.89175, -2.89626, 0, 2.89175, -3.62204e-11, 9.36656, 2.89175, 12.2688, 0, -2.89175, 8.55005e-12, -2.21115, -9.02405e-12, 2.89626, 2.21115}, {-2.33948, 0, 0, -7.01844, -7.02938, -5.36656, 7.30269e-12, 6.91918e-12, -1.78885, 0, -2.34313, 0, 9.35791, -2.89626, -2.21115, -2.89175, -2.89626, 7.15542, 2.89175, -8.55271e-12, 2.21115, 2.89175, 2.89626, 0, -2.89175, 9.3725, -2.21115, -9.02662e-12, 2.89626, 2.21115}, {-2.33948, 4.44089e-16, 2.22045e-16, 2.33948, 2.34313, 1.78885, -2.19003e-11, -2.07607e-11, 5.36656, 0, -2.34313, 0, 9.02399e-12, -2.89626, -2.21115, -12.2497, -12.2688, -7.15542, 12.2497, -8.55493e-12, 2.21115, 2.89175, 2.89626, -4.44089e-16, -2.89175, 8.55405e-12, -2.21115, -9.02341e-12, 12.2688, 2.21115}, {-2.33948, 4.44089e-16, 0, 2.33948, 2.34313, 1.78885, 7.30373e-12, 6.92178e-12, -1.78885, 0, 7.02938, 0, 9.02849e-12, -2.89626, -2.21115, -2.89175, -2.89626, 0, 2.89175, -8.55627e-12, 2.21115, 12.2497, 2.89626, 0, -12.2497, -9.3725, -9.36656, -3.82428e-11, 2.89626, 9.36656}, {-1.82966, -4.6256, 4.62804, 1.3308, -1.74043, 0.137442, -1.94068, 0.198561, -0.20043, 0, 0, 1.60567, -7.722, 7.20714, 1.1872, 0.75386, 1.90585, 0.0778573, 9.40768, -2.94553, 2.95632, -0.75386, -1.90585, -6.50053, -1.64495, 2.15129, -2.1546, 2.39881, -0.245434, -1.73697}, {0.609885, 1.54187, -1.54268, -3.99239, 5.22128, -0.412327, -1.94068, 0.198561, -0.20043, 7.7358e-16, -7.91487e-17, 1.60567, -4.83836, -5.92203, 7.90769, 8.51658, 1.11161, 0.879578, 1.64495, -2.15129, 2.1546, -0.75386, -1.90585, -0.0778573, -1.64495, 2.15129, -8.57728, 2.39881, -0.245434, -1.73697}, {0.609885, 1.54187, -1.54268, 1.3308, -1.74043, 0.137442, 5.82204, -0.595682, 0.601291, 0, 0, 1.60567, -2.39881, 0.245434, 1.73697, -4.56932, 8.86756, -0.471912, -0.794587, -8.31875, 8.32532, -0.75386, -1.90585, -0.0778573, -1.64495, 2.15129, -2.1546, 2.39881, -0.245434, -8.15964}, {0.609885, 1.54187, -1.54268, 1.3308, -1.74043, 0.137442, -1.94068, 0.198561, -0.20043, 0, 0, -4.817, -2.39881, 0.245434, 1.73697, 0.75386, 1.90585, 0.0778573, 1.64495, -2.15129, 2.1546, -3.1934, -8.07331, 6.09286, -6.96814, 9.11299, -2.70437, 10.1615, -1.03968, -0.935249}, {-4.24457, 5.57441, -4.24616, -1.78937, -1.78885, -1.78885, 3.15147, -2.85327e-15, -2.92187e-16, -2.77696, 3.64699, 0.373467, 7.62038, 11.6633, 7.61705, -1.68365, 2.21115, 2.21115, -18.2502, 2.29678, -1.74951, 12.7915, -16.7991, -3.70501, 5.64429, -2.29678, 1.74951, -0.46292, -4.50793, -0.461631}, {1.41486, -1.85814, 1.41539, 5.3681, 5.36656, 5.36656, 3.15147, 5.70654e-15, 5.84374e-16, -2.77696, 3.64699, 0.373467, -5.1965, 11.9405, -5.19992, -14.2895, 2.21115, 2.21115, -5.64429, 2.29678, -1.74951, 1.68365, -2.21115, -2.21115, 16.7521, -16.8847, 0.255645, -0.46292, -4.50793, -0.461631}, {1.41486, -1.85814, 1.41539, -1.78937, -1.78885, -1.78885, -9.45441, 0, 0, -2.77696, 3.64699, 0.373467, 0.46292, 4.50793, 0.461631, 5.47381, 9.36656, 9.36656, -11.3037, 9.72932, -7.41106, 1.68365, -2.21115, -2.21115, 5.64429, -2.29678, 1.74951, 10.6449, -19.0959, -1.9555}, {1.41486, -1.85814, 1.41539, -1.78937, -1.78885, -1.78885, 3.15147, 2.85327e-15, 2.92187e-16, 8.33088, -10.941, -1.1204, 0.46292, 4.50793, 0.461631, -1.68365, 2.21115, 2.21115, -5.64429, 2.29678, -1.74951, -3.97577, 5.2214, -7.87269, 12.8018, 4.85864, 8.90493, -13.0688, -4.50793, -0.461631}, {-4.72788, -4.72653, -4.72653, 1.57551, -1.57551, -1.57551, -1.57551, 1.57551, -1.57596, -1.57596, -1.57551, 1.57596, -10.1975, 6.30204, 6.30204, -4.83169e-13, -4.92273e-13, 3.89543, 6.30148, -10.1969, 6.30439, 6.30384, 6.30204, -10.1993, 0.000556765, 3.89487, -0.000556765, 3.89543, -1.82077e-12, -1.81766e-12}, {1.57596, 1.57551, 1.57551, -4.72653, 4.72653, 4.72653, -1.57551, 1.57551, -1.57596, -1.57596, -1.57551, 1.57596, -10.1993, -6.30204, -6.30204, 6.30204, -6.30204, 10.1993, -0.000556765, -3.89487, 0.000556765, 4.86997e-13, 4.81002e-13, -3.89543, 6.30439, 10.1969, -6.30439, 3.89543, -1.81322e-12, -1.80744e-12}, {1.57596, 1.57551, 1.57551, 1.57551, -1.57551, -1.57551, 4.72653, -4.72653, 4.72788, -1.57596, -1.57551, 1.57596, -3.89543, 1.8201e-12, 1.81388e-12, -6.30204, 6.30204, 10.1975, -6.30439, -10.1969, -6.30148, 4.87441e-13, 4.99209e-13, -3.89543, 0.000556765, 3.89487, -0.000556765, 10.1993, 6.30204, -6.30384}, {1.57596, 1.57551, 1.57551, 1.57551, -1.57551, -1.57551, -1.57551, 1.57551, -1.57596, 4.72788, 4.72653, -4.72788, -3.89543, 1.81255e-12, 1.81899e-12, -4.87832e-13, -4.87388e-13, 3.89543, -0.000556765, -3.89487, 0.000556765, -6.30384, -6.30204, -10.1975, -6.30148, 10.1969, 6.30148, 10.1975, -6.30204, 6.30384}, {5.36656, -5.36656, -5.3681, 3.64699, -0.373467, 2.77696, 0, 0, -3.15147, -1.85814, -1.41539, -1.41486, -16.8847, -0.255645, -16.7521, -4.50793, 0.461631, 0.46292, 2.21115, -2.21115, 14.2895, 11.9405, 5.19992, 5.1965, -2.21115, 2.21115, -1.68365, 2.29678, 1.74951, 5.64429}, {-1.78885, 1.78885, 1.78937, -10.941, 1.1204, -8.33088, 0, 0, -3.15147, -1.85814, -1.41539, -1.41486, 4.85864, -8.90493, -12.8018, -4.50793, 0.461631, 13.0688, 2.21115, -2.21115, 1.68365, 4.50793, -0.461631, -0.46292, 5.2214, 7.87269, 3.97577, 2.29678, 1.74951, 5.64429}, {-1.78885, 1.78885, 1.78937, 3.64699, -0.373467, 2.77696, 0, 0, 9.45441, -1.85814, -1.41539, -1.41486, -2.29678, -1.74951, -5.64429, -19.0959, 1.9555, -10.6449, 9.36656, -9.36656, -5.47381, 4.50793, -0.461631, -0.46292, -2.21115, 2.21115, -1.68365, 9.72932, 7.41106, 11.3037}, {-1.78885, 1.78885, 1.78937, 3.64699, -0.373467, 2.77696, 0, 0, -3.15147, 5.57441, 4.24616, 4.24457, -2.29678, -1.74951, -5.64429, -4.50793, 0.461631, 0.46292, 2.21115, -2.21115, 1.68365, 11.6633, -7.61705, -7.62038, -16.7991, 3.70501, -12.7915, 2.29678, 1.74951, 18.2502}, {-0.570843, 5.57441, 4.24616, -0.373467, 3.64699, -0.373467, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, 1.7203, -16.7991, 3.70501, -1.74951, -2.29678, -1.74951, -9.60176, 11.6633, -7.61705, 8.17219, 2.29678, 1.74951, 2.44635, -4.50793, 0.461631, -0.226431, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, 1.1204, -10.941, 1.1204, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, -0.534693, 5.2214, 7.87269, -8.90493, 4.85864, -8.90493, -2.44635, 4.50793, -0.461631, 1.74951, 2.29678, 1.74951, 8.86902, -4.50793, 0.461631, -0.226431, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, -0.373467, 3.64699, -0.373467, -5.36656, 5.36656, -5.36656, -1.60567, 0, 0, 0.226431, -2.21115, 2.21115, -0.255645, -16.8847, -0.255645, -3.20747, 11.9405, 5.19992, 1.74951, 2.29678, 1.74951, 2.44635, -4.50793, 0.461631, 6.19624, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, -0.373467, 3.64699, -0.373467, 1.78885, -1.78885, 1.78885, 4.817, 0, 0, 0.226431, -2.21115, 2.21115, -1.74951, -2.29678, -1.74951, -2.44635, 4.50793, -0.461631, 0.988391, 9.72932, 7.41106, 3.94022, -19.0959, 1.9555, -7.38185, 9.36656, -9.36656}, {-2.4085, 2.4085, -2.4085, 0.802834, 0.802834, -0.802834, 0.0313083, 1.63555, 1.63555, -1.63698, -1.63555, -1.63555, -5.19605, -3.21134, 3.21134, -1.03106, -3.014, -1.02929, -1.15629, -7.57148, -9.55619, 7.57896, 9.55619, 7.57148, 1.03106, 1.02929, 3.014, 1.98471, -7.99361e-15, 6.66134e-15}, {0.802834, -0.802834, 0.802834, -2.4085, -2.4085, 2.4085, 0.0313083, 1.63555, 1.63555, -1.63698, -1.63555, -1.63555, -5.19605, 3.21134, -3.21134, -1.15629, -9.55619, -7.57148, -1.03106, -1.02929, -3.014, 1.03106, 3.014, 1.02929, 7.57896, 7.57148, 9.55619, 1.98471, -7.54952e-15, 7.54952e-15}, {0.802834, -0.802834, 0.802834, 0.802834, 0.802834, -0.802834, -0.0939249, -4.90664, -4.90664, -1.63698, -1.63555, -1.63555, -1.98471, 7.10543e-15, -6.66134e-15, -4.24239, -6.22534, 2.18205, -4.24239, 2.18205, -6.22534, 1.03106, 3.014, 1.02929, 1.03106, 1.02929, 3.014, 8.53262, 6.54219, 6.54219}, {0.802834, -0.802834, 0.802834, 0.802834, 0.802834, -0.802834, 0.0313083, 1.63555, 1.63555, 4.91093, 4.90664, 4.90664, -1.98471, 6.21725e-15, -6.21725e-15, -1.03106, -3.014, -1.02929, -1.03106, -1.02929, -3.014, -2.18028, 6.22534, -2.18205, -2.18028, -2.18205, 6.22534, 1.85948, -6.54219, -6.54219}, {5.36656, 5.36656, -5.36656, 0, 0, -3.15147, 3.15147, -1.39953e-15, -1.06606e-15, -1.36261, 1.78885, 1.36261, 2.21115, 2.21115, 14.2902, -3.89543, 1.72992e-15, 3.89543, -14.2902, 2.21115, -2.21115, 9.34589, -7.15542, -9.34589, 1.68428, -2.21115, 2.21115, -2.21115, -2.21115, -1.68428}, {-1.78885, -1.78885, 1.78885, 0, 0, 9.45441, 3.15147, 2.79907e-15, 2.13212e-15, -1.36261, 1.78885, 1.36261, 9.36656, 9.36656, -5.47113, -16.5013, -1.46561e-14, 3.89543, -1.68428, 2.21115, -2.21115, 3.89543, 3.90393e-15, -3.89543, 7.13474, -9.36656, -3.23931, -2.21115, -2.21115, -1.68428}, {-1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -9.45441, 0, 0, -1.36261, 1.78885, 1.36261, 2.21115, 2.21115, 1.68428, -3.89543, 0, 16.5013, 5.47113, 9.36656, -9.36656, 3.89543, 4.44089e-16, -3.89543, 1.68428, -2.21115, 2.21115, 3.23931, -9.36656, -7.13474}, {-1.78885, -1.78885, 1.78885, 0, 0, -3.15147, 3.15147, 1.39953e-15, 1.06606e-15, 4.08784, -5.36656, -4.08784, 2.21115, 2.21115, 1.68428, -3.89543, -1.72992e-15, 3.89543, -1.68428, 2.21115, -2.21115, 11.0508, 7.15542, -11.0508, 1.68428, -2.21115, 14.817, -14.817, -2.21115, -1.68428}, {1.55756, -1.55231, 6.66925, 0.74491, 1.59978, -0.633715, 1.29557, -1.29442, 0.512752, -1.52129, -0.822804, 2.34405, -3.25865, -9.01615, 6.06606, -2.52217, -0.377453, 0.149519, -6.14194, 6.13806, 0.0630791, 8.60734, 3.66867, -9.52571, 0.95966, -0.960396, -2.11409, 0.279008, 2.61703, -3.5312}, {-0.519188, 0.517438, -2.22308, -2.23473, -4.79934, 1.90115, 1.29557, -1.29442, 0.512752, -1.52129, -0.822804, 2.34405, 1.79774, -4.68678, 12.4235, -7.70445, 4.80021, -1.90149, -0.95966, 0.960396, 2.11409, 2.52217, 0.377453, -0.149519, 7.04482, 2.33082, -11.4903, 0.279008, 2.61703, -3.5312}, {-0.519188, 0.517438, -2.22308, 0.74491, 1.59978, -0.633715, -3.88671, 3.88325, -1.53826, -1.52129, -0.822804, 2.34405, -0.279008, -2.61703, 3.5312, -5.50181, -6.77658, 2.68438, 1.11709, -1.10936, 11.0064, 2.52217, 0.377453, -0.149519, 0.95966, -0.960396, -2.11409, 6.36417, 5.90824, -12.9074}, {-0.519188, 0.517438, -2.22308, 0.74491, 1.59978, -0.633715, 1.29557, -1.29442, 0.512752, 4.56387, 2.46841, -7.03214, -0.279008, -2.61703, 3.5312, -2.52217, -0.377453, 0.149519, -0.95966, 0.960396, 2.11409, 4.59892, -1.6923, 8.74282, -2.01998, -7.35952, 0.420775, -4.90327, 7.79469, -5.58221}, {-3.62807, -1.43344, -3.62246, -0.761007, 2.64249, 1.57539, -0.983272, -2.40589, -0.977465, 0.534922, -0.714416, -1.80541, 2.48984, -14.4269, -9.74136, 2.15605, -0.292457, -0.73907, 3.65363, 12.0068, 3.62554, -4.29574, 3.15012, 7.96069, 0.279456, -2.38324, 0.28432, 0.554191, 3.85691, 3.43982}, {1.20936, 0.477813, 1.20749, 2.28302, -7.92748, -4.72616, -0.983272, -2.40589, -0.977465, 0.534922, -0.714416, -1.80541, -5.39162, -5.76816, -8.26976, 6.08913, 9.33111, 3.17079, -0.279456, 2.38324, -0.28432, -2.15605, 0.292457, 0.73907, -1.86023, 0.474427, 7.50594, 0.554191, 3.85691, 3.43982}, {1.20936, 0.477813, 1.20749, -0.761007, 2.64249, 1.57539, 2.94982, 7.21767, 2.9324, 0.534922, -0.714416, -1.80541, -0.554191, -3.85691, -3.43982, 5.20007, -10.8624, -7.04061, -5.11688, 0.471983, -5.11426, -2.15605, 0.292457, 0.73907, 0.279456, -2.38324, 0.28432, -1.5855, 6.71457, 10.6614}, {1.20936, 0.477813, 1.20749, -0.761007, 2.64249, 1.57539, -0.983272, -2.40589, -0.977465, -1.60477, 2.14325, 5.41622, -0.554191, -3.85691, -3.43982, 2.15605, -0.292457, -0.73907, -0.279456, 2.38324, -0.28432, -6.99347, -1.6188, -4.09087, 3.32348, -12.9532, -6.01722, 4.48728, 13.4805, 7.34968}, {5.81909, -7.61025, 0.600985, 0.610485, 1.54108, -1.54262, 0, -2.33948, 0, 1.32921, -1.73835, 1.74295, -0.798945, -11.2048, 8.32487, -0.754601, 0.986874, 1.90678, 2.3976, 9.11407, 0.24762, -4.56224, 5.96654, -8.87857, -2.3976, 0.243842, -0.24762, -1.643, 5.04048, -2.1544}, {-1.9397, 2.53675, -0.200328, -1.83146, -4.62324, 4.62785, 0, -2.33948, 0, 1.32921, -1.73835, 1.74295, 9.40178, -15.1875, 2.95571, -0.754601, 10.3448, 1.90678, 2.3976, -0.243842, 0.24762, 0.754601, -0.986874, -1.90678, -7.71444, 7.19725, -7.21941, -1.643, 5.04048, -2.1544}, {-1.9397, 2.53675, -0.200328, 0.610485, 1.54108, -1.54262, 0, 7.01844, 0, 1.32921, -1.73835, 1.74295, 1.643, -5.04048, 2.1544, -3.19654, -5.17745, 8.07725, 10.1564, -10.3908, 1.04893, 0.754601, -0.986874, -1.90678, -2.3976, 0.243842, -0.24762, -6.95984, 11.9939, -9.12619}, {-1.9397, 2.53675, -0.200328, 0.610485, 1.54108, -1.54262, 0, -2.33948, 0, -3.98763, 5.21506, -5.22884, 1.643, -5.04048, 2.1544, -0.754601, 0.986874, 1.90678, 2.3976, -0.243842, 0.24762, 8.51339, -11.1339, -1.10547, -4.83954, -5.92048, 5.92285, -1.643, 14.3984, -2.1544}, {4.33994, -4.33994, -1.54017, 0, 0, -1.80556, -0.572575, -1.44665, 0.668413, 2.01922, 1.97175e-12, 0.623753, 1.78815, -1.78815, 8.81943, 0.707741, 1.78815, 1.40559, 4.7862, 5.78659, -4.13444, -8.78463, -1.78815, -3.9006, -2.4959, -2.43721e-12, 1.46079, -1.78815, 1.78815, -1.5972}, {-1.44665, 1.44665, 0.51339, 0, 0, 5.41667, -0.572575, -1.44665, 0.668413, 2.01922, 1.97138e-12, 0.623753, 7.57474, -7.57474, -0.456355, 2.99804, 7.57474, -1.26807, 2.4959, 2.43641e-12, -1.46079, -0.707741, -1.78815, -1.40559, -10.5728, -1.03223e-11, -1.03422, -1.78815, 1.78815, -1.5972}, {-1.44665, 1.44665, 0.51339, 0, 0, -1.80556, 1.71772, 4.33994, -2.00524, 2.01922, 1.97175e-12, 0.623753, 1.78815, -1.78815, 1.5972, 0.707741, 1.78815, 8.62781, 8.28248, -5.78659, -3.51435, -0.707741, -1.78815, -1.40559, -2.4959, -2.43721e-12, 1.46079, -9.86504, 1.78815, -4.09222}, {-1.44665, 1.44665, 0.51339, 0, 0, -1.80556, -0.572575, -1.44665, 0.668413, -6.05767, -5.91959e-12, -1.87126, 1.78815, -1.78815, 1.5972, 0.707741, 1.78815, 1.40559, 2.4959, 2.43865e-12, -1.46079, 5.07885, -7.57474, -3.45914, -2.4959, -2.43901e-12, 8.68301, 0.502145, 7.57474, -4.27086}, {5.36656, 5.36656, 5.36656, 0.373467, 0.373467, 3.64699, 1.41048e-15, 1.60567, -1.85169e-15, 1.41539, -0.190281, -1.85814, 0.255645, 0.255645, -16.8847, -0.461631, -2.44635, -4.50793, 2.21115, -6.19624, 2.21115, -5.19992, 3.20747, 11.9405, -2.21115, -0.226431, -2.21115, -1.74951, -1.74951, 2.29678}, {-1.78885, -1.78885, -1.78885, -1.1204, -1.1204, -10.941, 8.46287e-16, 1.60567, -1.11101e-15, 1.41539, -0.190281, -1.85814, 8.90493, 8.90493, 4.85864, -0.461631, -8.86902, -4.50793, 2.21115, 0.226431, 2.21115, 0.461631, 2.44635, 4.50793, -7.87269, 0.534693, 5.2214, -1.74951, -1.74951, 2.29678}, {-1.78885, -1.78885, -1.78885, 0.373467, 0.373467, 3.64699, 0, -4.817, 0, 1.41539, -0.190281, -1.85814, 1.74951, 1.74951, -2.29678, -1.9555, -3.94022, -19.0959, 9.36656, 7.38185, 9.36656, 0.461631, 2.44635, 4.50793, -2.21115, -0.226431, -2.21115, -7.41106, -0.988391, 9.72932}, {-1.78885, -1.78885, -1.78885, 0.373467, 0.373467, 3.64699, 2.82096e-16, 1.60567, -3.70338e-16, -4.24616, 0.570843, 5.57441, 1.74951, 1.74951, -2.29678, -0.461631, -2.44635, -4.50793, 2.21115, 0.226431, 2.21115, 7.61705, 9.60176, 11.6633, -3.70501, -1.7203, -16.7991, -1.74951, -8.17219, 2.29678}, {-4.24616, -4.24616, 5.57441, 3.15147, 2.92187e-16, 2.85327e-15, -1.78885, -1.78885, -1.78885, -2.778, 0.373467, 3.64699, -18.2508, -1.74951, 2.29678, -1.68428, 2.21115, 2.21115, 7.61705, 7.61705, 11.6633, 12.7963, -3.70501, -16.7991, -0.461631, -0.461631, -4.50793, 5.64494, 1.74951, -2.29678}, {1.41539, 1.41539, -1.85814, -9.45441, -5.07516e-15, -1.27584e-14, -1.78885, -1.78885, -1.78885, -2.778, 0.373467, 3.64699, -11.3065, -7.41106, 9.72932, 5.47113, 9.36656, 9.36656, 0.461631, 0.461631, 4.50793, 1.68428, -2.21115, -2.21115, 10.6504, -1.9555, -19.0959, 5.64494, 1.74951, -2.29678}, {1.41539, 1.41539, -1.85814, 3.15147, 0, 0, 5.36656, 5.36656, 5.36656, -2.778, 0.373467, 3.64699, -5.64494, -1.74951, 2.29678, -14.2902, 2.21115, 2.21115, -5.19992, -5.19992, 11.9405, 1.68428, -2.21115, -2.21115, -0.461631, -0.461631, -4.50793, 16.7569, 0.255645, -16.8847}, {1.41539, 1.41539, -1.85814, 3.15147, 2.92187e-16, 2.85327e-15, -1.78885, -1.78885, -1.78885, 8.334, -1.1204, -10.941, -5.64494, -1.74951, 2.29678, -1.68428, 2.21115, 2.21115, 0.461631, 0.461631, 4.50793, -3.97726, -7.87269, 5.2214, -13.0675, -0.461631, -4.50793, 12.8004, 8.90493, 4.85864}, {0.972456, 0.972456, -8.84811, 1.4362, 1.4362, 1.4362, -1.66806, -0.0623937, -1.66806, 0.556017, -1.04965, -2.71751, -7.11935, -7.11935, -11.1656, 0.286601, -1.69811, 0.286601, 9.13476, 0.727372, 5.08846, -2.51067, 5.89672, 10.5834, -2.46251, -0.477797, 1.58378, 1.37456, 1.37456, 5.42086}, {-0.324152, -0.324152, 2.94937, -4.30859, -4.30859, -4.30859, -1.66806, -0.0623937, -1.66806, 0.556017, -1.04965, -2.71751, -0.0779551, -0.0779551, -17.2183, 6.95885, -1.44854, 6.95885, 2.46251, 0.477797, -1.58378, -0.286601, 1.69811, -0.286601, -4.68658, 3.72081, 12.4538, 1.37456, 1.37456, 5.42086}, {-0.324152, -0.324152, 2.94937, 1.4362, 1.4362, 1.4362, 5.00419, 0.187181, 5.00419, 0.556017, -1.04965, -2.71751, -1.37456, -1.37456, -5.42086, -5.45818, -7.4429, -5.45818, 3.75912, 1.7744, -13.3813, -0.286601, 1.69811, -0.286601, -2.46251, -0.477797, 1.58378, -0.849506, 5.57317, 16.2909}, {-0.324152, -0.324152, 2.94937, 1.4362, 1.4362, 1.4362, -1.66806, -0.0623937, -1.66806, -1.66805, 3.14895, 8.15252, -1.37456, -1.37456, -5.42086, 0.286601, -1.69811, 0.286601, 2.46251, 0.477797, -1.58378, 1.01001, 2.99472, -12.0841, -8.2073, -6.22258, -4.161, 8.04681, 1.62414, 12.0931}, {3.33613, 3.33613, 13.1567, 1.4362, 1.4362, 1.4362, 0.767151, -2.38432, -2.38432, -1.0913, 2.06017, 5.33369, -6.14546, -6.14546, -2.09916, -2.72349, 1.17194, 1.17194, -2.64229, 13.859, 17.9053, 7.0887, -9.4126, -22.5067, -0.426311, -4.32174, -8.36804, 0.400674, 0.400674, -3.64562}, {-1.11204, -1.11204, -4.38557, -4.30859, -4.30859, -4.30859, 0.767151, -2.38432, -2.38432, -1.0913, 2.06017, 5.33369, 4.0475, 4.0475, 21.1879, -5.79209, 10.7092, 10.7092, 0.426311, 4.32174, 8.36804, 2.72349, -1.17194, -1.17194, 3.9389, -12.5624, -29.7028, 0.400674, 0.400674, -3.64562}, {-1.11204, -1.11204, -4.38557, 1.4362, 1.4362, 1.4362, -2.30145, 7.15295, 7.15295, -1.0913, 2.06017, 5.33369, -0.400674, -0.400674, 3.64562, -8.46827, -4.57284, -4.57284, 4.87449, 8.76992, 25.9103, 2.72349, -1.17194, -1.17194, -0.426311, -4.32174, -8.36804, 4.76589, -7.83999, -24.9804}, {-1.11204, -1.11204, -4.38557, 1.4362, 1.4362, 1.4362, 0.767151, -2.38432, -2.38432, 3.27391, -6.1805, -16.0011, -0.400674, -0.400674, 3.64562, -2.72349, 1.17194, 1.17194, 0.426311, 4.32174, 8.36804, 7.17167, 3.27624, 16.3703, -6.1711, -10.0665, -14.1128, -2.66793, 9.93794, 5.89165}, {-6.6428, 1.48026, 1.47837, 0.647646, 0.70771, -1.63632, -0.372676, 0.942791, 0.941589, -2.48924, -1.15708, 1.18752, -6.1281, -3.09572, 9.177, -0.339882, -2.04013, 0.858732, -0.785628, -4.32662, -4.3211, 10.2968, 6.66845, -5.60881, 2.27633, 0.555453, 0.554744, 3.53752, 0.264876, -2.63172}, {2.21427, -0.493421, -0.492791, -1.94294, -2.12313, 4.90895, -0.372676, 0.942791, 0.941589, -2.48924, -1.15708, 1.18752, -12.3946, 1.70881, 4.60289, 1.15082, -5.8113, -2.90762, -2.27633, -0.555453, -0.554744, 0.339882, 2.04013, -0.858732, 12.2333, 5.18378, -4.19534, 3.53752, 0.264876, -2.63172}, {2.21427, -0.493421, -0.492791, 0.647646, 0.70771, -1.63632, 1.11803, -2.82837, -2.82477, -2.48924, -1.15708, 1.18752, -3.53752, -0.264876, 2.63172, -2.93046, -4.87097, 7.404, -11.1334, 1.41823, 1.41642, 0.339882, 2.04013, -0.858732, 2.27633, 0.555453, 0.554744, 13.4945, 4.8932, -7.38181}, {2.21427, -0.493421, -0.492791, 0.647646, 0.70771, -1.63632, -0.372676, 0.942791, 0.941589, 7.46771, 3.47124, -3.56256, -3.53752, -0.264876, 2.63172, -0.339882, -2.04013, 0.858732, -2.27633, -0.555453, -0.554744, -8.51718, 4.01381, 1.11243, -0.314251, -2.27539, 7.10002, 5.02822, -3.50629, -6.39808}, {1.12186, -2.82659, -2.82659, -1.84098, -0.449088, -0.449088, 0.510215, -1.28552, 0.320147, 1.70472, 0.792411, -0.813257, 10.1017, 1.18683, 1.18683, 1.64492, 2.14409, 0.15938, -2.20929, 5.56645, -2.84093, -8.4638, -5.31374, 3.09365, 0.16843, -0.424371, 1.56034, -2.73781, 0.609518, 0.609518}, {-0.373952, 0.942198, 0.942198, 5.52295, 1.34726, 1.34726, 0.510215, -1.28552, 0.320147, 1.70472, 0.792411, -0.813257, 4.23362, -4.37831, -4.37831, -0.395942, 7.28618, -1.12121, -0.16843, 0.424371, -1.56034, -1.64492, -2.14409, -0.15938, -6.65045, -3.59401, 4.81337, -2.73781, 0.609518, 0.609518}, {-0.373952, 0.942198, 0.942198, -1.84098, -0.449088, -0.449088, -1.53064, 3.85656, -0.960441, 1.70472, 0.792411, -0.813257, 2.73781, -0.609518, -0.609518, 9.00885, 3.94045, 1.95573, 1.32738, -3.34442, -5.32914, -1.64492, -2.14409, -0.15938, 0.16843, -0.424371, 1.56034, -9.55669, -2.56013, 3.86255}, {-0.373952, 0.942198, 0.942198, -1.84098, -0.449088, -0.449088, 0.510215, -1.28552, 0.320147, -5.11416, -2.37723, 2.43977, 2.73781, -0.609518, -0.609518, 1.64492, 2.14409, 0.15938, -0.16843, 0.424371, -1.56034, -0.149109, -5.91289, -3.92817, 7.53236, 1.37198, 3.3567, -4.77867, 5.7516, -0.67107}, {0.461366, -4.35523, -1.72378, -0.132927, -0.133043, -2.07188, -0.954792, -0.955627, -0.378232, 1.24151, -0.363075, 1.87552, 0.886107, -1.09783, 10.1383, 1.34449, 1.34567, 3.0285, 5.18945, 3.20927, 1.27021, -6.31053, 0.10663, -10.5306, -1.37028, 0.613236, 0.242715, -0.3544, 1.63001, -1.85075}, {-0.153789, 1.45174, 0.574593, 0.39878, 0.399129, 6.21564, -0.954792, -0.955627, -0.378232, 1.24151, -0.363075, 1.87552, 0.969555, -7.43698, -0.447622, 5.16366, 5.16818, 4.54143, 1.37028, -0.613236, -0.242715, -1.34449, -1.34567, -3.0285, -6.33631, 2.06554, -7.25936, -0.3544, 1.63001, -1.85075}, {-0.153789, 1.45174, 0.574593, -0.132927, -0.133043, -2.07188, 2.86438, 2.86688, 1.1347, 1.24151, -0.363075, 1.87552, 0.3544, -1.63001, 1.85075, 1.8762, 1.87784, 11.316, 1.98544, -6.42021, -2.54109, -1.34449, -1.34567, -3.0285, -1.37028, 0.613236, 0.242715, -5.32043, 3.08231, -9.35282}, {-0.153789, 1.45174, 0.574593, -0.132927, -0.133043, -2.07188, -0.954792, -0.955627, -0.378232, -3.72452, 1.08923, -5.62656, 0.3544, -1.63001, 1.85075, 1.34449, 1.34567, 3.0285, 1.37028, -0.613236, -0.242715, -0.72934, -7.15265, -5.32687, -0.838575, 1.14541, 8.53023, 3.46477, 5.45251, -0.337821}, {4.44089e-16, 7.02938, 0, 1.54187, 1.54427, 0.609885, -1.74043, -1.74314, 1.3308, 0.198561, 2.542, -1.94068, -8.07331, -5.18964, -3.1934, 0.245434, 0.245817, -2.39881, 9.11299, 12.0235, -6.96814, -1.03968, -10.4138, 10.1615, -2.15129, -5.0509, 1.64495, 1.90585, -0.987441, 0.75386}, {2.77556e-17, -2.34313, 0, -4.6256, -4.63281, -1.82966, -1.74043, -1.74314, 1.3308, 0.198561, 2.542, -1.94068, -1.90585, 10.3599, -0.75386, 7.20714, 7.21837, -7.722, 2.15129, 5.0509, -1.64495, -0.245434, -0.245817, 2.39881, -2.94553, -15.2189, 9.40768, 1.90585, -0.987441, 0.75386}, {-3.60822e-16, -2.34313, -2.22045e-16, 1.54187, 1.54427, 0.609885, 5.22128, 5.22942, -3.99239, 0.198561, 2.542, -1.94068, -1.90585, 0.987441, -0.75386, -5.92203, -5.93126, -4.83836, 2.15129, 14.4234, -1.64495, -0.245434, -0.245817, 2.39881, -2.15129, -5.0509, 1.64495, 1.11161, -11.1554, 8.51658}, {-5.55112e-17, -2.34313, 0, 1.54187, 1.54427, 0.609885, -1.74043, -1.74314, 1.3308, -0.595682, -7.62599, 5.82204, -1.90585, 0.987441, -0.75386, 0.245434, 0.245817, -2.39881, 2.15129, 5.0509, -1.64495, -0.245434, 9.12668, 2.39881, -8.31875, -11.228, -0.794587, 8.86756, 5.98512, -4.56932}, {4.8128, 0, 0, 1.54178, 1.54312, 0.61076, 0.198549, 0.198723, -1.94057, -0.136059, -1.74185, 1.32981, -6.08986, -8.0799, -3.19798, -2.15116, -2.15304, 1.64373, 0.943366, -1.04052, 10.1609, 2.6954, 9.12042, -6.96297, -1.73756, 0.245635, -2.39867, -0.0772416, 1.90741, 0.754941}, {-1.60427, -2.22045e-16, 0, -4.62533, -4.62937, -1.83228, 0.198549, 0.198723, -1.94057, -0.136059, -1.74185, 1.32981, 6.49431, -1.90741, -0.754941, -2.94536, -2.94793, 9.40601, 1.73756, -0.245635, 2.39867, 2.15116, 2.15304, -1.64373, -1.19332, 7.21302, -7.71791, -0.0772416, 1.90741, 0.754941}, {-1.60427, 2.22045e-16, -2.22045e-16, 1.54178, 1.54312, 0.61076, -0.595647, -0.596168, 5.82171, -0.136059, -1.74185, 1.32981, 0.0772416, -1.90741, -0.754941, -8.31826, -8.32553, -0.799305, 8.15463, -0.245635, 2.39867, 2.15116, 2.15304, -1.64373, -1.73756, 0.245635, -2.39867, 0.466995, 8.87479, -4.5643}, {-1.60427, 0, 0, 1.54178, 1.54312, 0.61076, 0.198549, 0.198723, -1.94057, 0.408178, 5.22554, -3.98943, 0.0772416, -1.90741, -0.754941, -2.15116, -2.15304, 1.64373, 1.73756, -0.245635, 2.39867, 8.56822, 2.15304, -1.64373, -7.90467, -5.92686, -4.84171, -0.871438, 1.11252, 8.51722}, {4.91028, -4.91028, -4.91028, -1.57573, -1.57573, 1.57573, 1.57573, 1.57573, 1.57573, 1.63676, -1.63676, -4.78823, 10.2738, 6.2275, -10.2738, -3.02869e-13, -3.06644e-13, -3.89543, -6.2275, -10.2738, -10.2738, -6.54704, 6.54704, 23.0483, -0.0754334, 3.97086, 3.97086, -3.97086, 0.0754334, 3.97086}, {-1.63676, 1.63676, 1.63676, 4.7272, 4.7272, -4.7272, 1.57573, 1.57573, 1.57573, 1.63676, -1.63676, -4.78823, 10.5179, -6.62248, -10.5179, -6.30294, -6.30294, -10.1984, 0.0754334, -3.97086, -3.97086, 3.01943e-13, 3.04461e-13, 3.89543, -6.62248, 10.5179, 23.1238, -3.97086, 0.0754334, 3.97086}, {-1.63676, 1.63676, 1.63676, -1.57573, -1.57573, 1.57573, -4.7272, -4.7272, -4.7272, 1.63676, -1.63676, -4.78823, 3.97086, -0.0754334, -3.97086, 6.30294, 6.30294, -10.1984, 6.62248, -10.5179, -10.5179, 3.00389e-13, 2.99798e-13, 3.89543, -0.0754334, 3.97086, 3.97086, -10.5179, 6.62248, 23.1238}, {-1.63676, 1.63676, 1.63676, -1.57573, -1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -4.91028, 4.91028, 14.3647, 3.97086, -0.0754334, -3.97086, -2.97096e-13, -3.00426e-13, -3.89543, 0.0754334, -3.97086, -3.97086, 6.54704, -6.54704, -2.65162, 6.2275, 10.2738, -2.33207, -10.2738, -6.2275, -2.33207}, {4.24616, -5.57441, -4.24616, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, -0.373467, -3.64699, -2.778, 1.74951, -2.29678, -18.2508, -2.21115, -2.21115, -1.68428, -7.61705, -11.6633, 7.61705, 3.70501, 16.7991, 12.7963, 0.461631, 4.50793, -0.461631, -1.74951, 2.29678, 5.64494}, {-1.41539, 1.85814, 1.41539, 5.07516e-15, 1.27584e-14, -9.45441, 1.78885, 1.78885, -1.78885, -0.373467, -3.64699, -2.778, 7.41106, -9.72932, -11.3065, -9.36656, -9.36656, 5.47113, -0.461631, -4.50793, 0.461631, 2.21115, 2.21115, 1.68428, 1.9555, 19.0959, 10.6504, -1.74951, 2.29678, 5.64494}, {-1.41539, 1.85814, 1.41539, 0, 0, 3.15147, -5.36656, -5.36656, 5.36656, -0.373467, -3.64699, -2.778, 1.74951, -2.29678, -5.64494, -2.21115, -2.21115, -14.2902, 5.19992, -11.9405, -5.19992, 2.21115, 2.21115, 1.68428, 0.461631, 4.50793, -0.461631, -0.255645, 16.8847, 16.7569}, {-1.41539, 1.85814, 1.41539, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, 1.1204, 10.941, 8.334, 1.74951, -2.29678, -5.64494, -2.21115, -2.21115, -1.68428, -0.461631, -4.50793, 0.461631, 7.87269, -5.2214, -3.97726, 0.461631, 4.50793, -13.0675, -8.90493, -4.85864, 12.8004}, {-5.36656, -5.36656, 5.36656, -0.373467, -3.64699, 0.373467, -1.60567, 0, 0, 0.190281, 1.85814, 1.41539, -0.255645, 16.8847, 0.255645, 2.44635, 4.50793, -0.461631, 6.19624, -2.21115, 2.21115, -3.20747, -11.9405, -5.19992, 0.226431, 2.21115, -2.21115, 1.74951, -2.29678, -1.74951}, {1.78885, 1.78885, -1.78885, 1.1204, 10.941, -1.1204, -1.60567, 0, 0, 0.190281, 1.85814, 1.41539, -8.90493, -4.85864, 8.90493, 8.86902, 4.50793, -0.461631, -0.226431, -2.21115, 2.21115, -2.44635, -4.50793, 0.461631, -0.534693, -5.2214, -7.87269, 1.74951, -2.29678, -1.74951}, {1.78885, 1.78885, -1.78885, -0.373467, -3.64699, 0.373467, 4.817, 0, 0, 0.190281, 1.85814, 1.41539, -1.74951, 2.29678, 1.74951, 3.94022, 19.0959, -1.9555, -7.38185, -9.36656, 9.36656, -2.44635, -4.50793, 0.461631, 0.226431, 2.21115, -2.21115, 0.988391, -9.72932, -7.41106}, {1.78885, 1.78885, -1.78885, -0.373467, -3.64699, 0.373467, -1.60567, 0, 0, -0.570843, -5.57441, -4.24616, -1.74951, 2.29678, 1.74951, 2.44635, 4.50793, -0.461631, -0.226431, -2.21115, 2.21115, -9.60176, -11.6633, 7.61705, 1.7203, 16.7991, -3.70501, 8.17219, -2.29678, -1.74951}, {-1.80799, -0.0150891, -4.77555, -0.827431, 1.45271, 0.471751, -0.860099, -1.45095, 0.0849431, 1.08487, -0.00678866, -2.14855, 3.58755, -7.6127, -4.43776, 2.0859, -0.00217419, -0.688112, 3.7586, 7.59105, -2.4124, -6.42536, 0.0293288, 9.28229, -0.318207, -1.78726, 2.07263, -0.277826, 1.80186, 2.55075}, {0.602665, 0.0050297, 1.59185, 2.48229, -4.35813, -1.41525, -0.860099, -1.45095, 0.0849431, 1.08487, -0.00678866, -2.14855, -2.13283, -1.82198, -8.91816, 5.5263, 5.80162, -1.02788, 0.318207, 1.78726, -2.07263, -2.0859, 0.00217419, 0.688112, -4.65767, -1.7601, 10.6668, -0.277826, 1.80186, 2.55075}, {0.602665, 0.0050297, 1.59185, -0.827431, 1.45271, 0.471751, 2.5803, 4.35285, -0.254829, 1.08487, -0.00678866, -2.14855, 0.277826, -1.80186, -2.55075, 5.39562, -5.81301, -2.57512, -2.09245, 1.76714, -8.44004, -2.0859, 0.00217419, 0.688112, -0.318207, -1.78726, 2.07263, -4.61729, 1.82902, 11.1449}, {0.602665, 0.0050297, 1.59185, -0.827431, 1.45271, 0.471751, -0.860099, -1.45095, 0.0849431, -3.2546, 0.020366, 6.44564, 0.277826, -1.80186, -2.55075, 2.0859, -0.00217419, -0.688112, 0.318207, 1.78726, -2.07263, -4.49656, -0.0179446, -5.67929, 2.99152, -7.59809, 0.185628, 3.16257, 7.60566, 2.21098}, {1.57878, 4.35912, 1.72866, 0.141226, 1.44665, -1.44665, 1.40644, -1.11582e-18, -3.53145e-16, -1.02141, 0.00639156, 2.02287, -0.0889792, -5.77869, 8.28699, -1.91302, -1.78815, 1.78815, -6.71372, 1.79605, 0.712247, 5.99864, 1.76259, -9.87962, 1.08796, -1.79605, -0.712247, -0.475926, -0.0079004, -2.5004}, {-0.526258, -1.45304, -0.57622, -0.423679, -4.33994, 4.33994, 1.40644, -3.34745e-18, -1.05944e-15, -1.02141, 0.00639156, 2.02287, 2.58096, 5.82005, 4.80528, -7.53877, -1.78815, 1.78815, -1.08796, 1.79605, 0.712247, 1.91302, 1.78815, -1.78815, 5.17359, -1.82162, -8.80371, -0.475926, -0.0079004, -2.5004}, {-0.526258, -1.45304, -0.57622, 0.141226, 1.44665, -1.44665, -4.21932, 0, 0, -1.02141, 0.00639156, 2.02287, 0.475926, 0.0079004, 2.5004, -2.47792, -7.57474, 7.57474, 1.01707, 7.60821, 3.01713, 1.91302, 1.78815, -1.78815, 1.08796, -1.79605, -0.712247, 3.6097, -0.0334666, -10.5919}, {-0.526258, -1.45304, -0.57622, 0.141226, 1.44665, -1.44665, 1.40644, 3.34745e-18, 1.05944e-15, 3.06422, -0.0191747, -6.0686, 0.475926, 0.0079004, 2.5004, -1.91302, -1.78815, 1.78815, -1.08796, 1.79605, 0.712247, 4.01805, 7.60031, 0.516725, 0.523057, -7.58264, 5.07434, -6.10168, -0.0079004, -2.5004}, {10.941, -1.1204, -1.1204, 1.78885, -1.78885, -1.78885, -3.70338e-16, -2.82096e-16, 1.60567, 1.85814, 1.41539, -0.190281, -4.85864, 8.90493, 8.90493, -2.21115, 2.21115, 0.226431, 4.50793, -0.461631, -8.86902, -5.2214, -7.87269, 0.534693, -4.50793, 0.461631, 2.44635, -2.29678, -1.74951, -1.74951}, {-3.64699, 0.373467, 0.373467, -5.36656, 5.36656, 5.36656, -1.11101e-15, -8.46287e-16, 1.60567, 1.85814, 1.41539, -0.190281, 16.8847, 0.255645, 0.255645, -2.21115, 2.21115, -6.19624, 4.50793, -0.461631, -2.44635, 2.21115, -2.21115, -0.226431, -11.9405, -5.19992, 3.20747, -2.29678, -1.74951, -1.74951}, {-3.64699, 0.373467, 0.373467, 1.78885, -1.78885, -1.78885, 0, 0, -4.817, 1.85814, 1.41539, -0.190281, 2.29678, 1.74951, 1.74951, -9.36656, 9.36656, 7.38185, 19.0959, -1.9555, -3.94022, 2.21115, -2.21115, -0.226431, -4.50793, 0.461631, 2.44635, -9.72932, -7.41106, -0.988391}, {-3.64699, 0.373467, 0.373467, 1.78885, -1.78885, -1.78885, 1.11101e-15, 8.46287e-16, 1.60567, -5.57441, -4.24616, 0.570843, 2.29678, 1.74951, 1.74951, -2.21115, 2.21115, 0.226431, 4.50793, -0.461631, -2.44635, 16.7991, -3.70501, -1.7203, -11.6633, 7.61705, 9.60176, -2.29678, -1.74951, -8.17219}, {-5.57441, -4.24616, -4.24616, 1.78885, -1.78885, -1.78885, 2.85327e-15, 3.15147, -2.92187e-16, -3.64699, -2.778, 0.373467, -11.6633, 7.61705, 7.61705, -2.21115, -1.68428, 2.21115, -2.29678, -18.2508, -1.74951, 16.7991, 12.7963, -3.70501, 2.29678, 5.64494, 1.74951, 4.50793, -0.461631, -0.461631}, {1.85814, 1.41539, 1.41539, -5.36656, 5.36656, 5.36656, -5.70654e-15, 3.15147, 5.84374e-16, -3.64699, -2.778, 0.373467, -11.9405, -5.19992, -5.19992, -2.21115, -14.2902, 2.21115, -2.29678, -5.64494, -1.74951, 2.21115, 1.68428, -2.21115, 16.8847, 16.7569, 0.255645, 4.50793, -0.461631, -0.461631}, {1.85814, 1.41539, 1.41539, 1.78885, -1.78885, -1.78885, 0, -9.45441, 0, -3.64699, -2.778, 0.373467, -4.50793, 0.461631, 0.461631, -9.36656, 5.47113, 9.36656, -9.72932, -11.3065, -7.41106, 2.21115, 1.68428, -2.21115, 2.29678, 5.64494, 1.74951, 19.0959, 10.6504, -1.9555}, {1.85814, 1.41539, 1.41539, 1.78885, -1.78885, -1.78885, -2.85327e-15, 3.15147, 2.92187e-16, 10.941, 8.334, -1.1204, -4.50793, 0.461631, 0.461631, -2.21115, -1.68428, 2.21115, -2.29678, -5.64494, -1.74951, -5.2214, -3.97726, -7.87269, -4.85864, 12.8004, 8.90493, 4.50793, -13.0675, -0.461631}, {0.184458, 9.63611, 9.63611, 0.802834, -0.802834, 0.802834, -1.57551, 1.57551, 1.57551, 0.834161, 2.43936, 0.833693, -4.12769, 8.17399, -0.233398, 0.955079, -0.955079, -2.93979, 8.32547, -4.27918, -4.27918, -4.29172, -8.80237, -0.394979, -2.02344, -2.02286, -2.02286, 0.916356, -4.96265, -2.97794}, {-0.0614861, -3.21204, -3.21204, -2.4085, 2.4085, -2.4085, -1.57551, 1.57551, 1.57551, 0.834161, 2.43936, 0.833693, -0.670412, 17.8108, 15.8261, 7.25711, -7.25711, -9.24183, 2.02344, 2.02286, 2.02286, -0.955079, 0.955079, 2.93979, -5.36008, -11.7803, -5.35763, 0.916356, -4.96265, -2.97794}, {-0.0614861, -3.21204, -3.21204, 0.802834, -0.802834, 0.802834, 4.72653, -4.72653, -4.72653, 0.834161, 2.43936, 0.833693, -0.916356, 4.96265, 2.97794, -2.25626, 2.25626, -6.15113, 2.26938, 14.871, 14.871, -0.955079, 0.955079, 2.93979, -2.02344, -2.02286, -2.02286, -2.42029, -14.7201, -6.31271}, {-0.0614861, -3.21204, -3.21204, 0.802834, -0.802834, 0.802834, -1.57551, 1.57551, 1.57551, -2.50248, -7.31808, -2.50108, -0.916356, 4.96265, 2.97794, 0.955079, -0.955079, -2.93979, 2.02344, 2.02286, 2.02286, -0.709135, 13.8032, 15.7879, -5.23477, 1.18848, -5.23419, 7.21839, -11.2647, -9.27997}, {4.72653, -4.72653, -4.72653, 1.637, 1.63653, 1.63653, 1.57573, 1.57573, -1.57573, -1.63722, -4.78777, -1.6363, -6.62398, -10.5164, -10.5164, -3.97115, -3.97057, -0.0751443, -6.30322, -10.1981, 6.30322, 10.52, 23.1217, 6.62035, 0.000278382, 3.89515, -0.000278382, 0.076001, 3.9703, 3.9703}, {-1.57551, 1.57551, 1.57551, -4.91099, -4.90958, -4.90958, 1.57573, 1.57573, -1.57573, -1.63722, -4.78777, -1.6363, 6.22604, -10.2723, -10.2723, -10.2741, -10.2735, 6.22779, -0.000278382, -3.89515, 0.000278382, 3.97115, 3.97057, 0.0751443, 6.54916, 23.0462, 6.54493, 0.076001, 3.9703, 3.9703}, {-1.57551, 1.57551, 1.57551, 1.637, 1.63653, 1.63653, -4.7272, -4.7272, 4.7272, -1.63722, -4.78777, -1.6363, -0.076001, -3.9703, -3.9703, -10.5191, -10.5167, -6.62125, 6.30176, -10.1972, -6.30176, 3.97115, 3.97057, 0.0751443, 0.000278382, 3.89515, -0.000278382, 6.62488, 23.1214, 10.5155}, {-1.57551, 1.57551, 1.57551, 1.637, 1.63653, 1.63653, 1.57573, 1.57573, -1.57573, 4.91166, 14.3633, 4.90891, -0.076001, -3.9703, -3.9703, -3.97115, -3.97057, -0.0751443, -0.000278382, -3.89515, 0.000278382, 10.2732, -2.33146, -6.22689, -6.5477, -2.65096, -6.54639, -6.22694, -2.33264, 10.2732}, {2.2538, -2.2568, -6.95596, 1.0326, -1.0322, -0.409331, 0.623613, 1.72184, 0.682817, -0.904944, -1.44191, -2.59214, -4.47814, 4.47482, -0.722725, -2.04719, -0.852443, -0.338046, -2.33666, -9.94553, -6.44129, 5.66697, 6.62007, 10.7066, -0.157789, 3.05817, 3.71002, 0.347745, -0.346017, 2.36005}, {-0.751267, 0.752267, 2.31865, -3.09779, 3.0966, 1.22799, 0.623613, 1.72184, 0.682817, -0.904944, -1.44191, -2.59214, 2.65732, -2.66305, -11.6347, -4.54164, -7.73981, -3.06931, 0.157789, -3.05817, -3.71002, 2.04719, 0.852443, 0.338046, 3.46199, 8.8258, 14.0786, 0.347745, -0.346017, 2.36005}, {-0.751267, 0.752267, 2.31865, 1.0326, -1.0322, -0.409331, -1.87084, -5.16552, -2.04845, -0.904944, -1.44191, -2.59214, -0.347745, 0.346017, -2.36005, -6.17758, 3.27636, 1.29928, 3.16286, -6.06723, -12.9846, 2.04719, 0.852443, 0.338046, -0.157789, 3.05817, 3.71002, 3.96752, 5.42161, 12.7286}, {-0.751267, 0.752267, 2.31865, 1.0326, -1.0322, -0.409331, 0.623613, 1.72184, 0.682817, 2.71483, 4.32572, 7.77641, -0.347745, 0.346017, -2.36005, -2.04719, -0.852443, -0.338046, 0.157789, -3.05817, -3.71002, 5.05226, -2.15663, -8.93656, -4.28818, 7.18697, 5.34735, -2.14671, -7.23338, -0.371216}, {4.6308, -4.62902, -1.83569, 1.74378, -1.74182, 1.32959, 2.34612, 3.47392e-16, -3.39235e-15, -2.5463, 0.198817, -1.94149, -7.22258, 7.21305, -7.71818, -5.0554, 2.15301, -1.64347, -10.3764, -1.90726, -0.756347, 15.2406, -2.94828, 9.40942, 0.991964, 1.90726, 0.756347, 0.24744, -0.245751, 2.39981}, {-1.5436, 1.54301, 0.611898, -5.23135, 5.22547, -3.98877, 2.34612, -2.31594e-16, 2.26157e-15, -2.5463, 0.198817, -1.94149, 5.92697, -5.92628, -4.8474, -14.4399, 2.15301, -1.64347, -0.991964, -1.90726, -0.756347, 5.0554, -2.15301, 1.64347, 11.1772, 1.11199, 8.5223, 0.24744, -0.245751, 2.39981}, {-1.5436, 1.54301, 0.611898, 1.74378, -1.74182, 1.32959, -7.03835, 0, 0, -2.5463, 0.198817, -1.94149, -0.24744, 0.245751, -2.39981, -12.0305, 9.12031, -6.96183, 5.18244, -8.07929, -3.20394, 5.0554, -2.15301, 1.64347, 0.991964, 1.90726, 0.756347, 10.4326, -1.04102, 10.1658}, {-1.5436, 1.54301, 0.611898, 1.74378, -1.74182, 1.32959, 2.34612, 1.15797e-16, -1.13078e-15, 7.6389, -0.59645, 5.82447, -0.24744, 0.245751, -2.39981, -5.0554, 2.15301, -1.64347, -0.991964, -1.90726, -0.756347, 11.2298, -8.32504, -0.804126, -5.98318, 8.87456, -4.56202, -9.13703, -0.245751, 2.39981}, {7.47016e-18, 3.62803, 8.88178e-16, -1.45582, 0.0794645, -1.44142, 1.45582, 0.249439, -0.577805, -1.62092e-12, 0.88044, 2.01922, 7.62276, 1.07875, 7.54736, -2.00373e-12, -0.406547, 2.4959, -7.62276, 0.188753, 3.02542, 8.48742e-12, -3.11521, -10.5728, 1.79949, -1.18651, -0.714206, -1.79949, -1.39661, -1.78169}, {-1.75097e-16, -1.20934, 0, 4.36745, -0.238394, 4.32425, 1.45582, 0.249439, -0.577805, -1.62031e-12, 0.88044, 2.01922, 1.79949, 6.23398, 1.78169, -5.82327, -1.4043, 4.80711, -1.79949, 1.18651, 0.714206, 2.00284e-12, 0.406547, -2.4959, 1.79949, -4.70827, -8.79109, -1.79949, -1.39661, -1.78169}, {-7.62205e-17, -1.20934, 0, -1.45582, 0.0794645, -1.44142, -4.36745, -0.748316, 1.73341, -1.61907e-12, 0.88044, 2.01922, 1.79949, 1.39661, 1.78169, 5.82327, -0.724405, 8.26156, -1.79949, 6.02388, 0.714206, 2.00151e-12, 0.406547, -2.4959, 1.79949, -1.18651, -0.714206, -1.79949, -4.91837, -9.85858}, {-1.9973e-16, -1.20934, 4.44089e-16, -1.45582, 0.0794645, -1.44142, 1.45582, 0.249439, -0.577805, 4.86018e-12, -2.64132, -6.05767, 1.79949, 1.39661, 1.78169, -2.00262e-12, -0.406547, 2.4959, -1.79949, 1.18651, 0.714206, 2.00364e-12, 5.24392, -2.4959, 7.62276, -1.50437, 5.05146, -7.62276, -2.39436, 0.529529}, {4.15997e-12, 1.3684, -5.1823, 1.45582, 0.310608, -0.437518, -1.45582, 0.975521, 0.61362, 1.52817e-12, -0.829997, -1.90353, -7.62276, -1.06255, 0.155649, 1.74749e-13, -1.58974, -0.217674, 7.62276, -4.54408, -5.34818, -6.28744e-12, 4.90973, 7.83181, -1.79949, 0.642, 2.8937, 1.79949, -0.179878, 1.59442}, {-1.3859e-12, -0.456132, 1.72743, -4.36745, -0.931824, 1.31255, -1.45582, 0.975521, 0.61362, 1.52713e-12, -0.829997, -1.90353, -1.79949, 2.00441, -8.50415, 5.82327, -5.49183, -2.67215, 1.79949, -0.642, -2.8937, -1.74527e-13, 1.58974, 0.217674, -1.79949, 3.96199, 10.5078, 1.79949, -0.179878, 1.59442}, {-1.38592e-12, -0.456132, 1.72743, 1.45582, 0.310608, -0.437518, 4.36745, -2.92656, -1.84086, 1.52736e-12, -0.829997, -1.90353, -1.79949, 0.179878, -1.59442, -5.82327, -2.83217, 1.5324, 1.79949, 1.18253, -9.80343, -1.74749e-13, 1.58974, 0.217674, -1.79949, 0.642, 2.8937, 1.79949, 3.14011, 9.20856}, {-1.38431e-12, -0.456132, 1.72743, 1.45582, 0.310608, -0.437518, -1.45582, 0.975521, 0.61362, -4.57858e-12, 2.48999, 5.7106, -1.79949, 0.179878, -1.59442, 1.75415e-13, -1.58974, -0.217674, 1.79949, -0.642, -2.8937, 5.36226e-12, 3.41427, -6.69206, -7.62276, -0.600431, 4.64377, 7.62276, -4.08196, -0.860057}, {3.89774, -2.39084, -3.90175, -1.08034, -0.824783, -1.26412, 1.27484, -0.81558, 1.06845, 1.10475, 0.843417, -1.10491, 7.26269, 3.33354, 5.01139, -0.240416, 2.0276, 0.241863, -5.06919, 3.28535, -7.20207, -4.17857, -5.40127, 4.17779, -0.0301684, -0.023032, 2.92828, -2.94133, -0.0344082, 0.0450763}, {-1.29925, 0.796947, 1.30058, 3.24102, 2.47435, 3.79235, 1.27484, -0.81558, 1.06845, 1.10475, 0.843417, -1.10491, 8.13832, -3.15338, -5.24742, -5.33978, 5.28992, -4.03192, 0.0301684, 0.023032, -2.92828, 0.240416, -2.0276, -0.241863, -4.44916, -3.3967, 7.34794, -2.94133, -0.0344082, 0.0450763}, {-1.29925, 0.796947, 1.30058, -1.08034, -0.824783, -1.26412, -3.82452, 2.44674, -3.20534, 1.10475, 0.843417, -1.10491, 2.94133, 0.0344082, -0.0450763, 4.08094, 5.32673, 5.29833, 5.22716, -3.16475, -8.13062, 0.240416, -2.0276, -0.241863, -0.0301684, -0.023032, 2.92828, -7.36032, -3.40808, 4.46473}, {-1.29925, 0.796947, 1.30058, -1.08034, -0.824783, -1.26412, 1.27484, -0.81558, 1.06845, -3.31424, -2.53025, 3.31474, 2.94133, 0.0344082, -0.0450763, -0.240416, 2.0276, 0.241863, 0.0301684, 0.023032, -2.92828, 5.43741, -5.21539, -5.4442, 4.29119, 3.2761, 7.98475, -8.04069, 3.22791, -4.22871}, {-7.02938, 0, 7.99361e-15, 0, 0, -2.34462, -1.02079e-11, 1.78885, 0.00114147, -2.34313, -1.78885, 2.34348, -2.89626, 0, 12.2766, 1.26176e-11, -2.21115, 2.8967, -2.89626, -9.36656, -0.00597681, 9.3725, 9.36656, -12.2706, 2.89626, 2.21115, 0.00141093, 2.89626, 0, -2.89811}, {2.34313, 0, 4.44089e-15, 0, 0, 7.03386, -1.02099e-11, 1.78885, 0.00114147, -2.34313, -1.78885, 2.34348, -12.2688, 0, 2.89811, 5.346e-11, -9.36656, 2.89213, -2.89626, -2.21115, -0.00141093, -1.26208e-11, 2.21115, -2.8967, 12.2688, 9.36656, -9.37251, 2.89626, 0, -2.89811}, {2.34313, -4.21885e-15, 2.22045e-15, 0, 0, -2.34462, 3.06361e-11, -5.36656, -0.00342441, -2.34313, -1.78885, 2.34348, -2.89626, 5.32907e-15, 2.89811, 1.26228e-11, -2.21115, 12.2752, -12.2688, -2.21115, -0.00141093, -1.26233e-11, 2.21115, -2.8967, 2.89626, 2.21115, 0.00141093, 12.2688, 7.15542, -12.272}, {2.34313, 3.10862e-15, -3.9968e-15, 0, 0, -2.34462, -1.0211e-11, 1.78885, 0.00114147, 7.02938, 5.36656, -7.03044, -2.89626, -3.55271e-15, 2.89811, 1.26215e-11, -2.21115, 2.8967, -2.89626, -2.21115, -0.00141093, -9.3725, 2.21115, -2.8967, 2.89626, 2.21115, 9.37989, 2.89626, -7.15542, -2.90268}, {-4.72653, 4.72653, 4.72653, -0.802949, -0.802719, 0.802949, -3.21204, 3.21204, -0.0614861, 2.43948, -0.833808, 0.834046, 2.25686, 6.15053, -2.25686, 4.96279, -2.97808, -0.916498, 14.871, -14.871, 2.26938, -14.7207, 6.31331, -2.41969, -2.02286, 2.02286, -2.02344, 0.954937, -2.93965, -0.954937}, {1.57551, -1.57551, -1.57551, 2.40885, 2.40816, -2.40885, -3.21204, 3.21204, -0.0614861, 2.43948, -0.833808, 0.834046, -7.25697, 9.24169, 7.25697, 17.8109, -15.8262, -0.670554, 2.02286, -2.02286, 2.02344, -4.96279, 2.97808, 0.916498, -11.7808, 5.35809, -5.35962, 0.954937, -2.93965, -0.954937}, {1.57551, -1.57551, -1.57551, -0.802949, -0.802719, 0.802949, 9.63611, -9.63611, 0.184458, 2.43948, -0.833808, 0.834046, -0.954937, 2.93965, 0.954937, 8.17459, 0.232798, -4.12829, -4.27918, 4.27918, 8.32547, -4.96279, 2.97808, 0.916498, -2.02286, 2.02286, -2.02344, -8.80297, 0.39558, -4.29112}, {1.57551, -1.57551, -1.57551, -0.802949, -0.802719, 0.802949, -3.21204, 3.21204, -0.0614861, -7.31843, 2.50142, -2.50214, -0.954937, 2.93965, 0.954937, 4.96279, -2.97808, -0.916498, 2.02286, -2.02286, 2.02344, -11.2648, 9.28012, 7.21853, 1.18894, 5.23374, -5.23523, 13.8031, -15.7878, -0.708993}, {-4.72653, 4.72653, 4.72653, 1.57596, 1.57551, 1.57551, 1.63653, -1.63653, 1.637, -4.788, 1.63653, -1.637, -10.1993, -6.30204, -6.30204, -3.97085, 0.0754226, -3.97087, -10.5164, 10.5164, -6.62398, 23.1228, -6.62153, 10.5189, 3.9703, -3.9703, 0.076001, 3.89543, -1.81188e-12, -1.80878e-12}, {1.57551, -1.57551, -1.57551, -4.72788, -4.72653, -4.72653, 1.63653, -1.63653, 1.637, -4.788, 1.63653, -1.637, -10.1975, 6.30204, 6.30204, -10.517, 6.62153, -10.5189, -3.9703, 3.9703, -0.076001, 3.97085, -0.0754226, 3.97087, 23.1223, -10.5164, 6.62398, 3.89543, -1.81721e-12, -1.81544e-12}, {1.57551, -1.57551, -1.57551, 1.57596, 1.57551, 1.57551, -4.90958, 4.90958, -4.91099, -4.788, 1.63653, -1.637, -3.89543, 1.81677e-12, 1.81988e-12, -10.2747, -6.22661, -10.2729, -10.2723, 10.2723, 6.22604, 3.97085, -0.0754226, 3.97087, 3.9703, -3.9703, 0.076001, 23.0474, -6.54611, 6.54798}, {1.57551, -1.57551, -1.57551, 1.57596, 1.57551, 1.57551, 1.63653, -1.63653, 1.637, 14.364, -4.90958, 4.91099, -3.89543, 1.81677e-12, 1.81677e-12, -3.97085, 0.0754226, -3.97087, -3.9703, 3.9703, -0.076001, -2.33118, 6.22661, 10.2729, -2.33354, -10.2723, -6.22604, -2.65068, 6.54611, -6.54798}, {-1.1204, 1.1204, 10.941, 0, -1.60567, 0, -1.78885, 1.78885, 1.78885, 1.41539, 0.190281, 1.85814, -0.461631, 8.86902, 4.50793, 2.21115, -0.226431, -2.21115, 8.90493, -8.90493, -4.85864, -7.87269, -0.534693, -5.2214, -1.74951, 1.74951, -2.29678, 0.461631, -2.44635, -4.50793}, {0.373467, -0.373467, -3.64699, 0, 4.817, 0, -1.78885, 1.78885, 1.78885, 1.41539, 0.190281, 1.85814, -1.9555, 3.94022, 19.0959, 9.36656, -7.38185, -9.36656, 1.74951, -1.74951, 2.29678, -2.21115, 0.226431, 2.21115, -7.41106, 0.988391, -9.72932, 0.461631, -2.44635, -4.50793}, {0.373467, -0.373467, -3.64699, 0, -1.60567, 0, 5.36656, -5.36656, -5.36656, 1.41539, 0.190281, 1.85814, -0.461631, 2.44635, 4.50793, 2.21115, 6.19624, -2.21115, 0.255645, -0.255645, 16.8847, -2.21115, 0.226431, 2.21115, -1.74951, 1.74951, -2.29678, -5.19992, -3.20747, -11.9405}, {0.373467, -0.373467, -3.64699, 0, -1.60567, 0, -1.78885, 1.78885, 1.78885, -4.24616, -0.570843, -5.57441, -0.461631, 2.44635, 4.50793, 2.21115, -0.226431, -2.21115, 1.74951, -1.74951, 2.29678, -3.70501, 1.7203, 16.7991, -1.74951, 8.17219, -2.29678, 7.61705, -9.60176, -11.6633}, {-9.45441, 2.44249e-15, 1.59872e-14, -1.78885, 1.78885, 1.78885, 1.41539, -1.41539, 1.85814, -2.778, -0.373467, -3.64699, 5.47113, -9.36656, -9.36656, 0.461631, -0.461631, -4.50793, -11.3065, 7.41106, -9.72932, 10.6504, 1.9555, 19.0959, 5.64494, -1.74951, 2.29678, 1.68428, 2.21115, 2.21115}, {3.15147, -1.77636e-15, -7.10543e-15, 5.36656, -5.36656, -5.36656, 1.41539, -1.41539, 1.85814, -2.778, -0.373467, -3.64699, -14.2902, -2.21115, -2.21115, -5.19992, 5.19992, -11.9405, -5.64494, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, 16.7569, -0.255645, 16.8847, 1.68428, 2.21115, 2.21115}, {3.15147, 2.55351e-15, -3.10862e-15, -1.78885, 1.78885, 1.78885, -4.24616, 4.24616, -5.57441, -2.778, -0.373467, -3.64699, -1.68428, -2.21115, -2.21115, 7.61705, -7.61705, -11.6633, -18.2508, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, 5.64494, -1.74951, 2.29678, 12.7963, 3.70501, 16.7991}, {3.15147, 6.10623e-16, 3.9968e-15, -1.78885, 1.78885, 1.78885, 1.41539, -1.41539, 1.85814, 8.334, 1.1204, 10.941, -1.68428, -2.21115, -2.21115, 0.461631, -0.461631, -4.50793, -5.64494, 1.74951, -2.29678, -13.0675, 0.461631, 4.50793, 12.8004, -8.90493, -4.85864, -3.97726, 7.87269, -5.2214}, {0.889469, 0.890856, -5.70584, -0.741046, -0.742202, -0.293121, 1.30296, -1.03813, 0.515387, -0.265426, 2.07729, -2.12421, 4.24665, 4.25327, -0.816132, -0.694566, 2.20061, -0.274736, -6.45592, 5.80278, -5.04953, 1.75627, -10.5098, 8.77158, 1.24407, -1.65026, 2.98799, -1.28247, -1.28446, 1.98862}, {-0.29649, -0.296952, 1.90195, 2.22314, 2.2266, 0.879363, 1.30296, -1.03813, 0.515387, -0.265426, 2.07729, -2.12421, 2.46842, 2.47227, -9.5964, -5.90641, 6.35314, -2.33628, -1.24407, 1.65026, -2.98799, 0.694566, -2.20061, 0.274736, 2.30577, -9.9594, 11.4848, -1.28247, -1.28446, 1.98862}, {-0.29649, -0.296952, 1.90195, -0.741046, -0.742202, -0.293121, -3.90889, 3.1144, -1.54616, -0.265426, 2.07729, -2.12421, 1.28247, 1.28446, -1.98862, 2.26962, 5.16942, 0.897749, -0.0581089, 2.83806, -10.5958, 0.694566, -2.20061, 0.274736, 1.24407, -1.65026, 2.98799, -0.220762, -9.59361, 10.4855}, {-0.29649, -0.296952, 1.90195, -0.741046, -0.742202, -0.293121, 1.30296, -1.03813, 0.515387, 0.796277, -6.23186, 6.37263, 1.28247, 1.28446, -1.98862, -0.694566, 2.20061, -0.274736, -1.24407, 1.65026, -2.98799, 1.88052, -1.01281, -7.33305, 4.20825, 1.31855, 4.16047, -6.49431, 2.86807, -0.0729313}, {1.60243, -4.68893, 4.44089e-16, 1.23856, -0.534131, 1.50236e-16, -0.868329, 0.25394, -1.31177, 0.163908, -1.28279, 1.31177, -5.82496, 0.864798, -6.66134e-16, -0.457635, 0.346335, 1.62143, 5.20686, -3.26159, 6.86849, -0.197999, 4.78481, -6.86849, -1.73355, 2.24583, -1.62143, 0.870711, 1.27173, 0}, {-0.534143, 1.56298, -2.22045e-16, -3.71569, 1.60239, -6.76061e-16, -0.868329, 0.25394, -1.31177, 0.163908, -1.28279, 1.31177, 1.26586, -7.52364, 8.88178e-16, 3.01568, -0.669425, 6.86849, 1.73355, -2.24583, 1.62143, 0.457635, -0.346335, -1.62143, -2.38918, 7.37698, -6.86849, 0.870711, 1.27173, 0}, {-0.534143, 1.56298, 2.22045e-16, 1.23856, -0.534131, -3.00472e-16, 2.60499, -0.76182, 3.9353, 0.163908, -1.28279, 1.31177, -0.870711, -1.27173, 0, -5.41189, 2.48286, 1.62143, 3.87012, -8.49775, 1.62143, 0.457635, -0.346335, -1.62143, -1.73355, 2.24583, -1.62143, 0.215077, 6.40287, -5.24706}, {-0.534143, 1.56298, 0, 1.23856, -0.534131, 4.50708e-16, -0.868329, 0.25394, -1.31177, -0.491725, 3.84836, -3.9353, -0.870711, -1.27173, -4.44089e-16, -0.457635, 0.346335, 1.62143, 1.73355, -2.24583, 1.62143, 2.59421, -6.59825, -1.62143, -6.6878, 4.38236, -1.62143, 4.34403, 0.255965, 5.24706}, {3.16808, 2.71157e-16, -8.88178e-16, -0.300269, 1.44665, -1.44665, 0.153249, -1.44665, -0.572575, 1.20305, -1.58738e-12, 2.01922, 2.87755, -7.57474, 7.57474, 0.181727, -1.96221e-12, 2.4959, 0.502898, 7.57474, 2.99804, -4.99391, 8.31173e-12, -10.5728, -1.11589, -1.78815, -0.707741, -1.67647, 1.78815, -1.78815}, {-1.05603, 1.56152e-17, 0, 0.900808, -4.33994, 4.33994, 0.153249, -1.44665, -0.572575, 1.20305, -1.58652e-12, 2.01922, 5.90057, -1.78815, 1.78815, -0.431268, 5.78659, 4.7862, 1.11589, 1.78815, 0.707741, -0.181727, 1.9611e-12, -2.4959, -5.92808, -1.78815, -8.78463, -1.67647, 1.78815, -1.78815}, {-1.05603, -4.03605e-17, -4.44089e-16, -0.300269, 1.44665, -1.44665, -0.459746, 4.33994, 1.71772, 1.20305, -1.58802e-12, 2.01922, 1.67647, -1.78815, 1.78815, 1.3828, -5.78659, 8.28248, 5.34, 1.78815, 0.707741, -0.181727, 1.96287e-12, -2.4959, -1.11589, -1.78815, -0.707741, -6.48866, 1.78815, -9.86504}, {-1.05603, -1.63709e-17, 4.44089e-16, -0.300269, 1.44665, -1.44665, 0.153249, -1.44665, -0.572575, -3.60914, 4.76214e-12, -6.05767, 1.67647, -1.78815, 1.78815, 0.181727, -1.96221e-12, 2.4959, 1.11589, 1.78815, 0.707741, 4.04237, 1.96294e-12, -2.4959, 0.0851836, -7.57474, 5.07885, -2.28947, 7.57474, 0.502145}, {-1.48316, 4.33994, 1.33227e-15, 0.561638, 1.44665, 4.17162e-16, -0.27448, -1.03171e-12, 1.31177, -0.781545, 1.03171e-12, -1.31177, -3.55187, -5.78659, -1.77636e-15, -0.354947, -1.78815, -1.62143, 0.8261, 1.78815, -6.86849, 3.48113, 1.78815, 6.86849, 0.27182, -1.78815, 1.62143, 1.30532, 0, 0}, {0.494387, -1.44665, 2.22045e-16, -1.68492, -4.33994, 8.34324e-16, -0.27448, -1.03124e-12, 1.31177, -0.781545, 1.03124e-12, -1.31177, -3.28287, 5.78659, -8.88178e-16, 0.742973, -1.78815, -6.86849, -0.27182, 1.78815, -1.62143, 0.354947, 1.78815, 1.62143, 3.398, -1.78815, 6.86849, 1.30532, 0, 0}, {0.494387, -1.44665, -2.22045e-16, 0.561638, 1.44665, 2.78108e-16, 0.82344, 3.09443e-12, -3.9353, -0.781545, 1.03148e-12, -1.31177, -1.30532, 3.59135e-16, 0, -2.6015, -7.57474, -1.62143, -2.24937, 7.57474, -1.62143, 0.354947, 1.78815, 1.62143, 0.27182, -1.78815, 1.62143, 4.4315, -4.1259e-12, 5.24706}, {0.494387, -1.44665, 2.22045e-16, 0.561638, 1.44665, -2.78108e-16, -0.27448, -1.03171e-12, 1.31177, 2.34464, -3.09513e-12, 3.9353, -1.30532, 3.59135e-16, 0, -0.354947, -1.78815, -1.62143, -0.27182, 1.78815, -1.62143, -1.6226, 7.57474, 1.62143, -1.97473, -7.57474, 1.62143, 2.40324, 4.12684e-12, -5.24706}, {4.33994, 0.162335, 4.33994, 0, 1.38248, 0, 1.44665, 0.246581, -0.572575, -1.76997e-12, -1.57494, 2.01922, 1.78815, -7.17185, 1.78815, -1.78815, -2.01362, 0.707741, -5.78659, -1.22423, 4.7862, 1.78815, 8.3134, -8.78463, 2.1878e-12, 0.237905, -2.4959, -1.78815, 1.64195, -1.78815}, {-1.44665, -0.0541117, -1.44665, -1.48949e-15, -4.14743, -5.64752e-15, 1.44665, 0.246581, -0.572575, -1.77017e-12, -1.57494, 2.01922, 7.57474, -1.4255, 7.57474, -7.57474, -2.99995, 2.99804, -2.18708e-12, -0.237905, 2.4959, 1.78815, 2.01362, -0.707741, 9.26812e-12, 6.53768, -10.5728, -1.78815, 1.64195, -1.78815}, {-1.44665, -0.0541117, -1.44665, -2.42885e-27, 1.38248, 2.77202e-15, -4.33994, -0.739742, 1.71772, -1.76924e-12, -1.57494, 2.01922, 1.78815, -1.64195, 1.78815, -1.78815, -7.54353, 0.707741, 5.78659, -0.021458, 8.28248, 1.78815, 2.01362, -0.707741, 2.1869e-12, 0.237905, -2.4959, -1.78815, 7.94173, -9.86504}, {-1.44665, -0.0541117, -1.44665, 0, 1.38248, 0, 1.44665, 0.246581, -0.572575, 5.31045e-12, 4.72483, -6.05767, 1.78815, -1.64195, 1.78815, -1.78815, -2.01362, 0.707741, -2.18766e-12, -0.237905, 2.4959, 7.57474, 2.23007, 5.07885, 2.18802e-12, -5.292, -2.4959, -7.57474, 0.655625, 0.502145}, {-4.33994, 1.02197, -0.540949, -9.62561e-13, 0.52571, 1.09845, -1.44665, -1.05053, -0.169142, 9.72352e-13, 0.86548, -1.10962, -1.78815, -2.33158, -5.97445, 1.78815, 0.648718, -1.14869, 5.78659, 5.92175, 0.662758, -1.78815, -4.11064, 5.58719, -1.2103e-14, -1.71961, 0.0138116, 1.78815, 0.22874, 1.58064}, {1.44665, -0.340656, 0.180316, 2.88884e-12, -1.57713, -3.29535, -1.44665, -1.05053, -0.169142, 9.72241e-13, 0.86548, -1.10962, -7.57474, 1.13389, -2.30191, 7.57474, 4.85086, -0.472119, 1.11288e-14, 1.71961, -0.0138116, -1.78815, -0.648718, 1.14869, -3.90045e-12, -5.18153, 4.45231, 1.78815, 0.22874, 1.58064}, {1.44665, -0.340656, 0.180316, -9.63744e-13, 0.52571, 1.09845, 4.33994, 3.1516, 0.507427, 9.73548e-13, 0.86548, -1.10962, -1.78815, -0.22874, -1.58064, 1.78815, -1.45412, -5.54249, -5.78659, 3.08223, -0.735077, -1.78815, -0.648718, 1.14869, -1.21179e-14, -1.71961, 0.0138116, 1.78815, -3.23318, 6.01914}, {1.44665, -0.340656, 0.180316, -9.6335e-13, 0.52571, 1.09845, -1.44665, -1.05053, -0.169142, -2.91945e-12, -2.59644, 3.32887, -1.78815, -0.22874, -1.58064, 1.78815, 0.648718, -1.14869, 1.17538e-14, 1.71961, -0.0138116, -7.57474, 0.713906, 0.427423, 3.84129e-12, -3.82245, -4.37999, 7.57474, 4.43088, 2.25721}, {-4.74899, 4.74899, 3.61742, 0.497745, -0.497745, 2.77232, -2.29648, -0.854984, 1.74929, 0.215741, 2.93573, -3.3158, -4.56292, 4.56292, -13.0256, 2.22336, 1.67207, -5.58902, 10.0679, 6.43345, -7.66893, -3.08633, -13.415, 18.8522, -0.881918, -3.01351, 0.671778, 2.57194, -2.57194, 1.93632}, {1.583, -1.583, -1.20581, -1.49324, 1.49324, -8.31697, -2.29648, -0.854984, 1.74929, 0.215741, 2.93573, -3.3158, -8.90393, 8.90393, 2.88691, 11.4093, 5.092, -12.5862, 0.881918, 3.01351, -0.671778, -2.22336, -1.67207, 5.58902, -1.74488, -14.7564, 13.935, 2.57194, -2.57194, 1.93632}, {1.583, -1.583, -1.20581, 0.497745, -0.497745, 2.77232, 6.88945, 2.56495, -5.24786, 0.215741, 2.93573, -3.3158, -2.57194, 2.57194, -1.93632, 0.232383, 3.66305, -16.6783, -5.45007, 9.3455, 4.15145, -2.22336, -1.67207, 5.58902, -0.881918, -3.01351, 0.671778, 1.70898, -14.3148, 15.1995}, {1.583, -1.583, -1.20581, 0.497745, -0.497745, 2.77232, -2.29648, -0.854984, 1.74929, -0.647223, -8.80718, 9.94741, -2.57194, 2.57194, -1.93632, 2.22336, 1.67207, -5.58902, 0.881918, 3.01351, -0.671778, -8.55536, 4.65993, 10.4123, -2.8729, -1.02253, -10.4175, 11.7579, 0.847997, -5.06083}, {6.34574, -4.8337, 3.10867, 0.725317, 2.59898, -0.725317, 1.60925, -1.2258, -1.60925, -0.219319, -2.98441, 3.37079, -1.18322, -15.6, 5.07865, -2.88568, -1.69734, 2.88568, -5.81154, 4.42679, 9.70697, 3.76295, 13.635, -16.3688, -0.625449, 0.47642, -3.26998, -1.71805, 5.20411, -2.17738}, {-2.11525, 1.61123, -1.03622, -2.17595, -7.79693, 2.17595, 1.60925, -1.2258, -1.60925, -0.219319, -2.98441, 3.37079, 10.179, -11.649, 6.32227, -9.32267, 3.20588, 9.32267, 0.625449, -0.47642, 3.26998, 2.88568, 1.69734, -2.88568, 0.251825, 12.4141, -16.7531, -1.71805, 5.20411, -2.17738}, {-2.11525, 1.61123, -1.03622, 0.725317, 2.59898, -0.725317, -4.82774, 3.67741, 4.82774, -0.219319, -2.98441, 3.37079, 1.71805, -5.20411, 2.17738, -5.78695, -12.0932, 5.78695, 9.08643, -6.92136, 7.41487, 2.88568, 1.69734, -2.88568, -0.625449, 0.47642, -3.26998, -0.840773, 17.1417, -15.6605}, {-2.11525, 1.61123, -1.03622, 0.725317, 2.59898, -0.725317, 1.60925, -1.2258, -1.60925, 0.657956, 8.95322, -10.1124, 1.71805, -5.20411, 2.17738, -2.88568, -1.69734, 2.88568, 0.625449, -0.47642, 3.26998, 11.3467, -4.7476, 1.25921, -3.52672, -9.91949, -0.36871, -8.15504, 10.1073, 4.25961}, {-5.36656, 5.36656, -5.36656, -1.78885, 1.78885, 1.36261, 0, -3.15147, 0, 0, 3.15147, -3.15147, 7.15542, -7.15542, -9.34589, 2.21115, 1.68428, -1.68428, -2.21115, 18.7124, -2.21115, -2.21115, -14.2902, 14.2902, 2.21115, -6.10657, 2.21115, 0, 3.63087e-12, 3.89543}, {1.78885, -1.78885, 1.78885, 5.36656, -5.36656, -4.08784, 0, -3.15147, 0, 0, 3.15147, -3.15147, -7.15542, 7.15542, -11.0508, 2.21115, 14.2902, -1.68428, -2.21115, 6.10657, -2.21115, -2.21115, -1.68428, 1.68428, 2.21115, -18.7124, 14.817, 0, 3.63087e-12, 3.89543}, {1.78885, -1.78885, 1.78885, -1.78885, 1.78885, 1.36261, 0, 9.45441, 0, 0, 3.15147, -3.15147, -4.44089e-16, -3.63354e-12, -3.89543, 9.36656, -5.47113, -7.13474, -9.36656, 13.262, -9.36656, -2.21115, -1.68428, 1.68428, 2.21115, -6.10657, 2.21115, 0, -12.6059, 16.5013}, {1.78885, -1.78885, 1.78885, -1.78885, 1.78885, 1.36261, 0, -3.15147, 0, 0, -9.45441, 9.45441, -4.44089e-16, -3.62865e-12, -3.89543, 2.21115, 1.68428, -1.68428, -2.21115, 6.10657, -2.21115, -9.36656, 5.47113, -5.47113, 9.36656, -13.262, -3.23931, 0, 12.6059, 3.89543}, {0, -1.77636e-15, 9.45441, -1.78885, 1.36261, 1.78885, 1.78885, 1.78885, -1.78885, 0, -3.15147, 3.15147, 9.36656, -7.13474, -5.47113, 0, -3.89543, -3.6291e-12, -9.36656, -9.36656, 13.262, 0, 16.5013, -12.6059, 2.21115, 2.21115, -6.10657, -2.21115, 1.68428, -1.68428}, {3.08199e-16, 8.88178e-16, -3.15147, 5.36656, -4.08784, -5.36656, 1.78885, 1.78885, -1.78885, -3.08199e-16, -3.15147, 3.15147, 2.21115, -1.68428, 14.2902, -7.15542, -11.0508, 7.15542, -2.21115, -2.21115, 6.10657, -7.65114e-32, 3.89543, 3.62544e-12, 2.21115, 14.817, -18.7124, -2.21115, 1.68428, -1.68428}, {-3.08199e-16, 4.44089e-16, -3.15147, -1.78885, 1.36261, 1.78885, -5.36656, -5.36656, 5.36656, 3.08199e-16, -3.15147, 3.15147, 2.21115, -1.68428, 1.68428, 7.15542, -9.34589, -7.15542, -2.21115, -2.21115, 18.7124, 7.65114e-32, 3.89543, 3.62633e-12, 2.21115, 2.21115, -6.10657, -2.21115, 14.2902, -14.2902}, {-3.08199e-16, 4.44089e-16, -3.15147, -1.78885, 1.36261, 1.78885, 1.78885, 1.78885, -1.78885, -9.24597e-16, 9.45441, -9.45441, 2.21115, -1.68428, 1.68428, 0, -3.89543, -3.62776e-12, -2.21115, -2.21115, 6.10657, 1.2328e-15, 3.89543, 12.6059, 9.36656, -3.23931, -13.262, -9.36656, -5.47113, 5.47113}, {1.6947, 4.26991, -0.547096, 2.00519, -0.0353642, -0.0353642, 0.45376, 1.14328, 1.14328, -1.89405, 0.315388, -1.29028, -9.80104, 1.94447, -0.0402465, -3.03942, -1.36946, -1.36946, -1.67766, -4.22699, -6.2117, 10.6156, 0.107907, 6.53058, -0.137376, -0.346128, 1.63859, 1.78029, -1.80301, 0.181703}, {-0.5649, -1.4233, 0.182365, -6.01556, 0.106093, 0.106093, 0.45376, 1.14328, 1.14328, -1.89405, 0.315388, -1.29028, 0.479306, 7.49622, -0.911165, -4.85446, -5.94257, -5.94257, 0.137376, 0.346128, -1.63859, 3.03942, 1.36946, 1.36946, 7.43881, -1.60768, 6.79971, 1.78029, -1.80301, 0.181703}, {-0.5649, -1.4233, 0.182365, 2.00519, -0.0353642, -0.0353642, -1.36128, -3.42984, -3.42984, -1.89405, 0.315388, -1.29028, -1.78029, 1.80301, -0.181703, -11.0602, -1.228, -1.228, 2.39697, 6.03934, -2.36805, 3.03942, 1.36946, 1.36946, -0.137376, -0.346128, 1.63859, 9.35648, -3.06456, 5.34282}, {-0.5649, -1.4233, 0.182365, 2.00519, -0.0353642, -0.0353642, 0.45376, 1.14328, 1.14328, 5.68214, -0.946164, 3.87084, -1.78029, 1.80301, -0.181703, -3.03942, -1.36946, -1.36946, 0.137376, 0.346128, -1.63859, 5.29902, 7.06267, 0.639997, -8.15812, -0.204671, 1.78004, -0.0347482, -6.37613, -4.39141}, {-1.35612, -3.4307, -3.42632, -0.759405, 0.424983, -1.91868, -2.45728, -1.10819, -1.10678, 2.76464, -0.460356, 1.88336, 3.41754, -3.63876, 8.63464, 3.97604, 0.844494, 3.73968, 12.3077, 4.38905, 4.38345, -15.0346, 0.996929, -11.2731, -2.47861, 0.0437235, 0.0436678, -0.379924, 1.93883, -0.959903}, {0.45204, 1.14357, 1.14211, 2.27821, -1.27495, 5.75605, -2.45728, -1.10819, -1.10678, 2.76464, -0.460356, 1.88336, -1.42823, -6.51309, -3.60853, 13.8052, 5.27726, 8.1668, 2.47861, -0.0437235, -0.0436678, -3.97604, -0.844494, -3.73968, -13.5372, 1.88515, -7.48976, -0.379924, 1.93883, -0.959903}, {0.45204, 1.14357, 1.14211, -0.759405, 0.424983, -1.91868, 7.37184, 3.32458, 3.32034, 2.76464, -0.460356, 1.88336, 0.379924, -1.93883, 0.959903, 7.01366, -0.855437, 11.4144, 0.670454, -4.61799, -4.6121, -3.97604, -0.844494, -3.73968, -2.47861, 0.0437235, 0.0436678, -11.4385, 3.78026, -8.49333}, {0.45204, 1.14357, 1.14211, -0.759405, 0.424983, -1.91868, -2.45728, -1.10819, -1.10678, -8.29393, 1.38107, -5.65007, 0.379924, -1.93883, 0.959903, 3.97604, 0.844494, 3.73968, 2.47861, -0.0437235, -0.0436678, -5.7842, -5.41876, -8.30811, 0.559007, -1.65621, 7.71841, 9.44919, 6.3716, 3.46721}, {-2.4085, -2.4085, 2.4085, 1.63676, -1.63676, 1.63676, -0.802834, -0.802834, -0.802834, -1.63676, 1.63676, -0.0310931, -9.56255, 7.57784, -7.57784, -1.03079, 3.01551, -1.03079, 3.21134, 3.21134, 5.19605, 7.57784, -9.56255, 1.15516, 3.73035e-14, 3.64153e-14, -1.98471, 3.01551, -1.03079, 1.03079}, {0.802834, 0.802834, -0.802834, -4.91028, 4.91028, -4.91028, -0.802834, -0.802834, -0.802834, -1.63676, 1.63676, -0.0310931, -6.22684, -2.18055, 2.18055, 2.18055, 6.22684, 2.18055, -3.77476e-14, -3.68594e-14, 1.98471, 1.03079, -3.01551, 1.03079, 6.54704, -6.54704, -1.86034, 3.01551, -1.03079, 1.03079}, {0.802834, 0.802834, -0.802834, 1.63676, -1.63676, 1.63676, 2.4085, 2.4085, 2.4085, -1.63676, 1.63676, -0.0310931, -3.01551, 1.03079, -1.03079, -7.57784, 9.56255, -7.57784, -3.21134, -3.21134, 5.19605, 1.03079, -3.01551, 1.03079, 3.73035e-14, 3.64153e-14, -1.98471, 9.56255, -7.57784, 1.15516}, {0.802834, 0.802834, -0.802834, 1.63676, -1.63676, 1.63676, -0.802834, -0.802834, -0.802834, 4.91028, -4.91028, 0.0932794, -3.01551, 1.03079, -1.03079, -1.03079, 3.01551, -1.03079, -3.68594e-14, -3.68594e-14, 1.98471, -2.18055, -6.22684, 4.24213, -6.54704, 6.54704, -8.53176, 6.22684, 2.18055, 4.24213}, {-2.4085, -2.4085, 2.4085, -2.4396, 0.833927, -0.833927, -1.57573, 1.57573, 1.57573, 3.2125, -3.2125, 0.0610269, 11.7815, -5.35886, 5.35886, 4.96322, -2.97851, -0.916924, 7.25829, -9.24301, -7.25829, -17.8132, 15.8285, 0.672816, -0.955357, 2.94007, 0.955357, -2.02315, 2.02315, -2.02315}, {0.802834, 0.802834, -0.802834, 7.31879, -2.50178, 2.50178, -1.57573, 1.57573, 1.57573, 3.2125, -3.2125, 0.0610269, -1.18819, -5.23448, 5.23448, 11.2662, -9.28144, -7.21986, 0.955357, -2.94007, -0.955357, -4.96322, 2.97851, 0.916924, -13.8053, 15.7901, 0.71125, -2.02315, 2.02315, -2.02315}, {0.802834, 0.802834, -0.802834, -2.4396, 0.833927, -0.833927, 4.7272, -4.7272, -4.7272, 3.2125, -3.2125, 0.0610269, 2.02315, -2.02315, 2.02315, 14.7216, -6.31421, 2.41878, -2.25598, -6.15141, 2.25598, -4.96322, 2.97851, 0.916924, -0.955357, 2.94007, 0.955357, -14.8731, 14.8731, -2.26726}, {0.802834, 0.802834, -0.802834, -2.4396, 0.833927, -0.833927, -1.57573, 1.57573, 1.57573, -9.63749, 9.63749, -0.183081, 2.02315, -2.02315, 2.02315, 4.96322, -2.97851, -0.916924, 0.955357, -2.94007, -0.955357, -8.17456, -0.232831, 4.12826, 8.80302, -0.395637, 4.29107, 4.27979, -4.27979, -8.32609}, {-8.88178e-16, 0, 4.817, 3.64699, 0.373467, -0.373467, -1.78885, -1.78885, 1.78885, -1.85814, 1.41539, 0.190281, -19.0959, -1.9555, 3.94022, -2.29678, 1.74951, -1.74951, 9.36656, 9.36656, -7.38185, 9.72932, -7.41106, 0.988391, -2.21115, -2.21115, 0.226431, 4.50793, 0.461631, -2.44635}, {2.22045e-16, -4.44089e-16, -1.60567, -10.941, -1.1204, 1.1204, -1.78885, -1.78885, 1.78885, -1.85814, 1.41539, 0.190281, -4.50793, -0.461631, 8.86902, 4.85864, 8.90493, -8.90493, 2.21115, 2.21115, -0.226431, 2.29678, -1.74951, 1.74951, 5.2214, -7.87269, -0.534693, 4.50793, 0.461631, -2.44635}, {0, -4.44089e-16, -1.60567, 3.64699, 0.373467, -0.373467, 5.36656, 5.36656, -5.36656, -1.85814, 1.41539, 0.190281, -4.50793, -0.461631, 2.44635, -16.8847, 0.255645, -0.255645, 2.21115, 2.21115, 6.19624, 2.29678, -1.74951, 1.74951, -2.21115, -2.21115, 0.226431, 11.9405, -5.19992, -3.20747}, {-2.22045e-16, 0, -1.60567, 3.64699, 0.373467, -0.373467, -1.78885, -1.78885, 1.78885, 5.57441, -4.24616, -0.570843, -4.50793, -0.461631, 2.44635, -2.29678, 1.74951, -1.74951, 2.21115, 2.21115, -0.226431, 2.29678, -1.74951, 8.17219, -16.7991, -3.70501, 1.7203, 11.6633, 7.61705, -9.60176}, {5.57441, -4.24616, 4.24616, -1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 3.64699, -2.778, -0.373467, 11.6633, 7.61705, -7.61705, 2.21115, -1.68428, -2.21115, 2.29678, -18.2508, 1.74951, -16.7991, 12.7963, 3.70501, -2.29678, 5.64494, -1.74951, -4.50793, -0.461631, 0.461631}, {-1.85814, 1.41539, -1.41539, 5.36656, 5.36656, -5.36656, -2.85327e-15, 3.15147, 2.92187e-16, 3.64699, -2.778, -0.373467, 11.9405, -5.19992, 5.19992, 2.21115, -14.2902, -2.21115, 2.29678, -5.64494, 1.74951, -2.21115, 1.68428, 2.21115, -16.8847, 16.7569, -0.255645, -4.50793, -0.461631, 0.461631}, {-1.85814, 1.41539, -1.41539, -1.78885, -1.78885, 1.78885, 0, -9.45441, 0, 3.64699, -2.778, -0.373467, 4.50793, 0.461631, -0.461631, 9.36656, 5.47113, -9.36656, 9.72932, -11.3065, 7.41106, -2.21115, 1.68428, 2.21115, -2.29678, 5.64494, -1.74951, -19.0959, 10.6504, 1.9555}, {-1.85814, 1.41539, -1.41539, -1.78885, -1.78885, 1.78885, 0, 3.15147, 0, -10.941, 8.334, 1.1204, 4.50793, 0.461631, -0.461631, 2.21115, -1.68428, -2.21115, 2.29678, -5.64494, 1.74951, 5.2214, -3.97726, 7.87269, 4.85864, 12.8004, -8.90493, -4.50793, -13.0675, 0.461631}, {5.61089, -1.12882, 1.12882, -0.730647, 0.497098, 1.84603, 0.431092, 1.08918, -1.08918, 2.16985, -1.96255, -0.380575, 6.13753, -3.06794, -9.20083, 0.370271, -1.96075, -0.935513, 0.0545869, -6.16812, 6.16812, -9.04968, 9.81095, 2.45781, -1.77895, 1.8114, -1.8114, -3.21494, 1.07954, 1.81672}, {-1.8703, 0.376272, -0.376272, 2.19194, -1.49129, -5.53808, 0.431092, 1.08918, -1.08918, 2.16985, -1.96255, -0.380575, 10.6961, -2.58463, -0.311631, -1.3541, -6.31747, 3.42121, 1.77895, -1.8114, 1.8114, -0.370271, 1.96075, 0.935513, -10.4584, 9.6616, -0.289101, -3.21494, 1.07954, 1.81672}, {-1.8703, 0.376272, -0.376272, -0.730647, 0.497098, 1.84603, -1.29328, -3.26754, 3.26754, 2.16985, -1.96255, -0.380575, 3.21494, -1.07954, -1.81672, 3.29286, -3.94914, -8.31962, 9.26014, -3.31649, 3.31649, -0.370271, 1.96075, 0.935513, -1.77895, 1.8114, -1.8114, -11.8943, 8.92975, 3.33902}, {-1.8703, 0.376272, -0.376272, -0.730647, 0.497098, 1.84603, 0.431092, 1.08918, -1.08918, -6.50955, 5.88765, 1.14172, 3.21494, -1.07954, -1.81672, 0.370271, -1.96075, -0.935513, 1.77895, -1.8114, 1.8114, 7.11091, 0.455662, 2.4406, 1.14364, -0.176994, -9.19551, -4.93931, -3.27718, 6.17344}, {-3.9353, -0.877932, 3.73093, -2.19842e-16, -0.163745, 1.71788, -5.85173e-16, -1.31534, -0.704307, -1.31177, 1.18644, 0.230073, -1.62143, 0.495654, -7.45769, 9.95053e-16, 1.82825, -1.25284, -1.62143, 6.52549, 5.22503, 5.24706, -6.57403, 0.33255, 1.62143, -1.26412, -2.4078, 1.62143, 0.159328, 0.586185}, {1.31177, 0.292644, -1.24364, 2.59599e-16, 0.491236, -5.15363, 4.85681e-16, -1.31534, -0.704307, -1.31177, 1.18644, 0.230073, -6.86849, -1.3299, 4.38839, -2.4361e-15, 7.08962, 1.56438, -1.62143, 1.26412, 2.4078, 1.67724e-16, -1.82825, 1.25284, 6.86849, -6.0099, -3.32809, 1.62143, 0.159328, 0.586185}, {1.31177, 0.292644, -1.24364, 0, -0.163745, 1.71788, 0, 3.94603, 2.11292, -1.31177, 1.18644, 0.230073, -1.62143, -0.159328, -0.586185, 0, 2.48323, -8.12435, -6.86849, 0.0935482, 7.38238, -3.2565e-16, -1.82825, 1.25284, 1.62143, -1.26412, -2.4078, 6.86849, -4.58645, -0.334108}, {1.31177, 0.292644, -1.24364, -2.66619e-17, -0.163745, 1.71788, -2.14171e-16, -1.31534, -0.704307, 3.9353, -3.55933, -0.690219, -1.62143, -0.159328, -0.586185, 2.97685e-16, 1.82825, -1.25284, -1.62143, 1.26412, 2.4078, -5.24706, -2.99883, 6.22742, 1.62143, -0.609143, -9.27931, 1.62143, 5.4207, 3.40341}, {6.05767, -1.43278, 5.23226e-12, 0, 1.38248, 0, 0.572575, -0.389553, -1.44665, 1.44665, -1.47052, 1.44665, 2.4959, -7.82907, 2.15583e-12, -0.707741, -1.22732, 1.78815, -0.502145, 1.44939, 7.57474, -5.07885, 7.10939, -7.57474, -1.78815, 0.108825, -1.78815, -2.4959, 2.29917, -2.15583e-12}, {-2.01922, 0.477594, -1.74416e-12, -5.05799e-15, -4.14743, -2.97897e-15, 0.572575, -0.389553, -1.44665, 1.44665, -1.47052, 1.44665, 10.5728, -4.20955, 9.13225e-12, -2.99804, 0.330893, 7.57474, 1.78815, -0.108825, 1.78815, 0.707741, 1.22732, -1.78815, -7.57474, 5.99089, -7.57474, -2.4959, 2.29917, -2.15472e-12}, {-2.01922, 0.477594, -1.74438e-12, 1.98598e-15, 1.38248, 1.98598e-15, -1.71772, 1.16866, 4.33994, 1.44665, -1.47052, 1.44665, 2.4959, -2.29917, 2.15383e-12, -0.707741, -6.75722, 1.78815, 9.86504, -2.0192, 1.78815, 0.707741, 1.22732, -1.78815, -1.78815, 0.108825, -1.78815, -8.28248, 8.18124, -5.78659}, {-2.01922, 0.477594, -1.74438e-12, 0, 1.38248, 0, 0.572575, -0.389553, -1.44665, -4.33994, 4.41155, -4.33994, 2.4959, -2.29917, 2.15628e-12, -0.707741, -1.22732, 1.78815, 1.78815, -0.108825, 1.78815, 8.78463, -0.683057, -1.78815, -1.78815, -5.42108, -1.78815, -4.7862, 3.85739, 5.78659}, {-1.77636e-15, -0.577407, 6.05767, 1.31177, 0.0490665, 1.31177, 7.62271e-16, -1.57494, 2.01922, -1.31177, 1.33341, -1.31177, -6.86849, -0.49482, -4.3726, -1.62143, 1.88609, -4.11733, -4.66294e-15, 8.00861, -8.07689, 6.86849, -7.21973, 9.36439, 1.55431e-15, -1.70883, 1.11022e-15, 1.62143, 0.298554, -0.874465}, {-2.22045e-16, 0.192469, -2.01922, -3.9353, -0.147199, -3.9353, 5.0818e-16, -1.57494, 2.01922, -1.31177, 1.33341, -1.31177, -1.62143, -1.06843, 8.95135, -1.62143, 8.18587, -12.1942, -2.22045e-16, 1.70883, 1.11022e-15, 1.62143, -1.88609, 4.11733, 5.24706, -7.04247, 5.24706, 1.62143, 0.298554, -0.874465}, {0, 0.192469, -2.01922, 1.31177, 0.0490665, 1.31177, 7.62271e-16, 4.72483, -6.05767, -1.31177, 1.33341, -1.31177, -1.62143, -0.298554, 0.874465, -6.86849, 1.68982, -9.36439, 0, 0.938958, 8.07689, 1.62143, -1.88609, 4.11733, -4.44089e-16, -1.70883, -4.44089e-16, 6.86849, -5.03508, 4.3726}, {-2.22045e-16, 0.192469, -2.01922, 1.31177, 0.0490665, 1.31177, 1.52454e-15, -1.57494, 2.01922, 3.9353, -4.00023, 3.9353, -1.62143, -0.298554, 0.874465, -1.62143, 1.88609, -4.11733, -1.55431e-15, 1.70883, -1.33227e-15, 1.62143, -2.65597, 12.1942, -5.24706, -1.9051, -5.24706, 1.62143, 6.59833, -8.95135}, {5.62183, 1.10117, 1.0932, -0.543248, 1.37255, -0.969804, 0.418614, -1.05765, -1.05825, 1.99858, 0.0521603, 2.39245, 5.16081, -6.73306, 5.52839, 0.154056, -0.389233, 2.50681, 0.12443, 5.99166, 5.99148, -8.14837, 0.180592, -12.0766, -1.79889, -1.76104, -1.75849, -2.98781, 1.24286, -1.64917}, {-1.87394, -0.367057, -0.364401, 1.62974, -4.11765, 2.90941, 0.418614, -1.05765, -1.05825, 1.99858, 0.0521603, 2.39245, 10.4836, 0.225367, 3.10677, -1.5204, 3.84139, 6.7398, 1.79889, 1.76104, 1.75849, -0.154056, 0.389233, -2.50681, -9.79319, -1.96968, -11.3283, -2.98781, 1.24286, -1.64917}, {-1.87394, -0.367057, -0.364401, -0.543248, 1.37255, -0.969804, -1.25584, 3.17296, 3.17474, 1.99858, 0.0521603, 2.39245, 2.98781, -1.24286, 1.64917, 2.32705, -5.87944, 6.38603, 9.29466, 3.22927, 3.2161, -0.154056, 0.389233, -2.50681, -1.79889, -1.76104, -1.75849, -10.9821, 1.03422, -11.219}, {-1.87394, -0.367057, -0.364401, -0.543248, 1.37255, -0.969804, 0.418614, -1.05765, -1.05825, -5.99573, -0.156481, -7.17736, 2.98781, -1.24286, 1.64917, 0.154056, -0.389233, 2.50681, 1.79889, 1.76104, 1.75849, 7.34172, 1.85746, -1.04921, 0.374107, -7.25124, 2.12073, -4.66227, 5.47348, 2.58382}, {1.30457, 0.988495, -4.07489, 1.69843, -1.02425, 0.473793, -0.0497917, 1.38543, -0.379098, -1.21378, -0.0316781, -1.45299, -8.35558, 5.77034, -4.15976, -2.03783, -0.446439, -0.117049, 0.798227, -6.84692, 0.306038, 6.89295, 0.573151, 5.92901, -0.59906, 1.3052, 1.21036, 1.56186, -1.67333, 2.26459}, {-0.434858, -0.329498, 1.3583, -5.09529, 3.07276, -1.42138, -0.0497917, 1.38543, -0.379098, -1.21378, -0.0316781, -1.45299, 0.17757, 2.99132, -7.69777, -1.83866, -5.98816, 1.39934, 0.59906, -1.3052, -1.21036, 2.03783, 0.446439, 0.117049, 4.25606, 1.43192, 7.02232, 1.56186, -1.67333, 2.26459}, {-0.434858, -0.329498, 1.3583, 1.69843, -1.02425, 0.473793, 0.149375, -4.15629, 1.1373, -1.21378, -0.0316781, -1.45299, -1.56186, 1.67333, -2.26459, -8.83155, 3.65057, -2.01222, 2.33849, 0.0127912, -6.64354, 2.03783, 0.446439, 0.117049, -0.59906, 1.3052, 1.21036, 6.41699, -1.54662, 8.07655}, {-0.434858, -0.329498, 1.3583, 1.69843, -1.02425, 0.473793, -0.0497917, 1.38543, -0.379098, 3.64134, 0.0950343, 4.35897, -1.56186, 1.67333, -2.26459, -2.03783, -0.446439, -0.117049, 0.59906, -1.3052, -1.21036, 3.77726, 1.76443, -5.31614, -7.39278, 5.40222, -0.684818, 1.76103, -7.21505, 3.78098}, {-3.43097, 1.35687, -3.43142, 0.931473, 0.558277, -1.41184, -0.847096, 2.35716, -0.851503, -1.22803, -2.46315, 1.11954, -6.29089, -2.36411, 5.97866, -0.104296, -3.60368, 2.79764, 3.02181, -11.7832, 3.0447, 5.01642, 13.4563, -7.27579, 0.366568, 2.35455, 0.361307, 2.565, 0.131007, -0.331307}, {1.14366, -0.45229, 1.14381, -2.79442, -1.67483, 4.23552, -0.847096, 2.35716, -0.851503, -1.22803, -2.46315, 1.11954, -7.13962, 1.67815, -4.24392, 3.28409, -13.0323, 6.20366, -0.366568, -2.35455, -0.361307, 0.104296, 3.60368, -2.79764, 5.2787, 12.2071, -4.11684, 2.565, 0.131007, -0.331307}, {1.14366, -0.45229, 1.14381, 0.931473, 0.558277, -1.41184, 2.54129, -7.07148, 2.55451, -1.22803, -2.46315, 1.11954, -2.565, -0.131007, 0.331307, -3.83019, -5.83679, 8.445, -4.94119, -0.545391, -4.93653, 0.104296, 3.60368, -2.79764, 0.366568, 2.35455, 0.361307, 7.47713, 9.9836, -4.80945}, {1.14366, -0.45229, 1.14381, 0.931473, 0.558277, -1.41184, -0.847096, 2.35716, -0.851503, 3.6841, 7.38945, -3.35861, -2.565, -0.131007, 0.331307, -0.104296, -3.60368, 2.79764, -0.366568, -2.35455, -0.361307, -4.47033, 5.41284, -7.37287, -3.35932, 0.121443, 6.00866, 5.95338, -9.29764, 3.0747}, {5.0671, -2.00529, 0.25185, -0.295203, -1.90215, -0.29354, 1.14353, -0.452546, 1.14392, 0.840709, 1.68627, -0.766433, 3.63346, 9.13356, 1.64076, -1.04859, 2.91057, -1.05113, -3.89983, 1.54334, -5.88589, -2.31425, -9.65564, 4.11686, -0.674283, 0.266845, 1.3102, -2.45265, -1.52496, -0.466604}, {-1.68903, 0.668429, -0.0839499, 0.885608, 5.70645, 0.880621, 1.14353, -0.452546, 1.14392, 0.840709, 1.68627, -0.766433, 9.20879, -1.14875, 0.802403, -5.6227, 4.72075, -5.62682, 0.674283, -0.266845, -1.3102, 1.04859, -2.91057, 1.05113, -4.03712, -6.47823, 4.37593, -2.45265, -1.52496, -0.466604}, {-1.68903, 0.668429, -0.0839499, -0.295203, -1.90215, -0.29354, -3.43058, 1.35764, -3.43177, 0.840709, 1.68627, -0.766433, 2.45265, 1.52496, 0.466604, 0.132224, 10.5192, 0.123031, 7.43042, -2.94056, -0.974399, 1.04859, -2.91057, 1.05113, -0.674283, 0.266845, 1.3102, -5.81549, -8.27004, 2.59913}, {-1.68903, 0.668429, -0.0839499, -0.295203, -1.90215, -0.29354, 1.14353, -0.452546, 1.14392, -2.52213, -5.0588, 2.2993, 2.45265, 1.52496, 0.466604, -1.04859, 2.91057, -1.05113, 0.674283, -0.266845, -1.3102, 7.80472, -5.58428, 1.38693, 0.506528, 7.87545, 2.48436, -7.02676, 0.285222, -5.04229}, {-7.02938, 6.21725e-15, 4.44089e-16, -1.54298, 0.610212, -1.54318, 1.7461, 1.33161, 1.74203, -2.54625, -1.94182, -0.198851, 5.18286, -3.19511, 8.08019, -0.25107, -2.40023, -0.245794, -12.0389, -6.97241, -9.12139, 10.4361, 10.1675, 1.0412, 5.05456, 1.64596, 2.15327, 0.989039, 0.754264, -1.90748}, {2.34313, -1.77636e-15, -1.22125e-15, 4.62893, -1.83064, 4.62954, 1.7461, 1.33161, 1.74203, -2.54625, -1.94182, -0.198851, -10.3615, -0.754264, 1.90748, -7.23545, -7.72668, -7.21392, -5.05456, -1.64596, -2.15327, 0.25107, 2.40023, 0.245794, 15.2395, 9.41326, 2.94867, 0.989039, 0.754264, -1.90748}, {2.34313, -2.22045e-16, -1.11022e-16, -1.54298, 0.610212, -1.54318, -5.23829, -3.99484, -5.22609, -2.54625, -1.94182, -0.198851, -0.989039, -0.754264, 1.90748, 5.92083, -4.84108, 5.92693, -14.4271, -1.64596, -2.15327, 0.25107, 2.40023, 0.245794, 5.05456, 1.64596, 2.15327, 11.174, 8.52156, -1.11207}, {2.34313, -1.11022e-15, -3.05311e-16, -1.54298, 0.610212, -1.54318, 1.7461, 1.33161, 1.74203, 7.63874, 5.82547, 0.596554, -0.989039, -0.754264, 1.90748, -0.25107, -2.40023, -0.245794, -5.05456, -1.64596, -2.15327, -9.12143, 2.40023, 0.245794, 11.2265, -0.794885, 8.32599, -5.99534, -4.57219, -8.8756}, {2.66454e-15, 3.55271e-15, -4.817, -1.54262, 0.610485, -1.54315, -0.200328, -1.9397, -0.198633, 1.74295, 1.32921, 0.136117, 8.07725, -3.19654, 6.09533, 2.1544, 1.643, 2.15296, 1.04893, 10.1564, -0.944658, -9.12619, -6.95984, -2.69743, -0.24762, -2.3976, 1.73919, -1.90678, 0.754601, 0.0772744}, {1.55431e-15, 8.88178e-16, 1.60567, 4.62785, -1.83146, 4.62946, -0.200328, -1.9397, -0.198633, 1.74295, 1.32921, 0.136117, 1.90678, -0.754601, -6.49995, 2.95571, 9.40178, 2.9475, 0.24762, 2.3976, -1.73919, -2.1544, -1.643, -2.15296, -7.21941, -7.71444, 1.19472, -1.90678, 0.754601, 0.0772744}, {2.22045e-16, 2.22045e-16, 1.60567, -1.54262, 0.610485, -1.54315, 0.600985, 5.81909, 0.5959, 1.74295, 1.32921, 0.136117, 1.90678, -0.754601, -0.0772744, 8.32487, -0.798945, 8.32557, 0.24762, 2.3976, -8.16186, -2.1544, -1.643, -2.15296, -0.24762, -2.3976, 1.73919, -8.87857, -4.56224, -0.467193}, {-1.33227e-15, -8.88178e-16, 1.60567, -1.54262, 0.610485, -1.54315, -0.200328, -1.9397, -0.198633, -5.22884, -3.98763, -0.408351, 1.90678, -0.754601, -0.0772744, 2.1544, 1.643, 2.15296, 0.24762, 2.3976, -1.73919, -2.1544, -1.643, -8.57564, 5.92285, -4.83954, 7.9118, -1.10547, 8.51339, 0.871807}, {5.74294, 0.795668, -0.78877, 0.30138, -0.761926, 0.76354, -0.6496, 1.64227, 0.697377, 2.26253, -0.61512, -1.72384, 0.788176, 4.31733, -4.32294, 0.430423, -1.08816, -1.80579, 5.76757, -8.2712, -3.9765, -9.48055, 3.54864, 8.70115, -3.16917, 1.70212, 1.187, -1.9937, -1.26962, 1.26878}, {-1.91431, -0.265223, 0.262923, -0.904139, 2.28578, -2.29062, -0.6496, 1.64227, 0.697377, 2.26253, -0.61512, -1.72384, 9.65095, 2.33052, -2.32047, 3.02882, -7.65724, -4.5953, 3.16917, -1.70212, -1.187, -0.430423, 1.08816, 1.80579, -12.2193, 4.1626, 8.08236, -1.9937, -1.26962, 1.26878}, {-1.91431, -0.265223, 0.262923, 0.30138, -0.761926, 0.76354, 1.9488, -4.9268, -2.09213, 2.26253, -0.61512, -1.72384, 1.9937, 1.26962, -1.26878, -0.775096, 1.95954, -4.85995, 10.8264, -0.641232, -2.23869, -0.430423, 1.08816, 1.80579, -3.16917, 1.70212, 1.187, -11.0438, 1.19086, 8.16414}, {-1.91431, -0.265223, 0.262923, 0.30138, -0.761926, 0.76354, -0.6496, 1.64227, 0.697377, -6.7876, 1.84536, 5.17152, 1.9937, 1.26962, -1.26878, 0.430423, -1.08816, -1.80579, 3.16917, -1.70212, -1.187, 7.22683, 2.14905, 0.7541, -4.37469, 4.74982, -1.86717, 0.604703, -7.8387, -1.52073}, {8.88178e-16, 6.00487, 0.829413, -3.96116e-16, 2.00162, -0.810615, 1.31177, 1.30033, 0.316508, -1.31177, -1.30033, 0.770578, 2.44249e-15, -8.00649, 4.58617, -1.62143, -4.08144, 0.61075, -6.86849, -4.33448, -1.31552, 6.86849, 9.28277, -3.69306, 1.62143, -0.866843, 0.0494889, -8.88178e-16, -6.66134e-16, -1.34371}, {4.44089e-16, -2.00162, -0.276471, -2.97087e-15, -6.00487, 2.43185, 1.31177, 1.30033, 0.316508, -1.31177, -1.30033, 0.770578, -2.66454e-15, 8.00649, 2.4496, -6.86849, -9.28277, -0.655284, -1.62143, 0.866843, -0.0494889, 1.62143, 4.08144, -0.61075, 6.86849, 4.33448, -3.03282, 1.55431e-15, 1.33227e-15, -1.34371}, {-2.22045e-16, -2.00162, -0.276471, 1.38641e-15, 2.00162, -0.810615, -3.9353, -3.901, -0.949525, -1.31177, -1.30033, 0.770578, -1.33227e-15, -1.11022e-15, 1.34371, -1.62143, -12.0879, 3.85321, -1.62143, 8.87333, 1.0564, 1.62143, 4.08144, -0.61075, 1.62143, -0.866843, 0.0494889, 5.24706, 5.20133, -4.42602}, {-6.66134e-16, -2.00162, -0.276471, -1.18835e-15, 2.00162, -0.810615, 1.31177, 1.30033, 0.316508, 3.9353, 3.901, -2.31173, 2.22045e-15, 2.66454e-15, 1.34371, -1.62143, -4.08144, 0.61075, -1.62143, 0.866843, -0.0494889, 1.62143, 12.0879, 0.495134, 1.62143, -8.87333, 3.29195, -5.24706, -5.20133, -2.60975}, {-1.70622, 4.31352, 1.8317, 8.44721e-17, 1.1641e-15, 1.08709, -2.01922, 1.65815e-12, 0.375548, 1.45048, 1.43784, -0.852066, -0.702999, 1.77727, -4.93735, 2.4959, -2.05102e-12, -1.80792, 9.86978, 1.77727, -1.21169, -8.29783, -5.75136, 5.21618, -1.7929, -1.77727, -0.290501, 0.702999, -1.77727, 0.589009}, {0.568738, -1.43784, -0.610568, -2.80914e-15, -1.1641e-15, -3.26126, -2.01922, 1.65896e-12, 0.375548, 1.45048, 1.43784, -0.852066, -2.97795, 7.52863, 1.85326, 10.5728, -8.68691e-12, -3.31011, 1.7929, 1.77727, 0.290501, -2.4959, 2.05143e-12, 1.80792, -7.59483, -7.52863, 3.11776, 0.702999, -1.77727, 0.589009}, {0.568738, -1.43784, -0.610568, 0, 0, 1.08709, 6.05767, -4.97324e-12, -1.12664, 1.45048, 1.43784, -0.852066, -0.702999, 1.77727, -0.589009, 2.4959, -2.04909e-12, -6.15626, -0.482057, 7.52863, 2.73277, -2.4959, 2.04944e-12, 1.80792, -1.7929, -1.77727, -0.290501, -5.09894, -7.52863, 3.99727}, {0.568738, -1.43784, -0.610568, 0, 0, 1.08709, -2.01922, 1.6563e-12, 0.375548, -4.35145, -4.31352, 2.5562, -0.702999, 1.77727, -0.589009, 2.4959, -2.04731e-12, -1.80792, 1.7929, 1.77727, 0.290501, -4.77085, 5.75136, 4.25019, -1.7929, -1.77727, -4.63885, 8.77989, -1.77727, -0.913184}, {1.27077, -1.27077, -5.5547, 1.35703, 0.9861, 0.537103, -0.781872, 0.781872, -0.309461, -0.151563, -2.19156, -2.07921, -6.58189, -5.68687, -5.10097, -0.710928, -2.18533, -0.281381, 4.61752, -4.61752, -0.668306, 1.31718, 10.9516, 8.59822, -1.49003, 1.49003, 1.90615, 1.15379, 1.74247, 2.95256}, {-0.42359, 0.42359, 1.85157, -4.07108, -2.9583, -1.61131, -0.781872, 0.781872, -0.309461, -0.151563, -2.19156, -2.07921, 0.540572, -3.43683, -10.3588, 2.41656, -5.31282, 0.956461, 1.49003, -1.49003, -1.90615, 0.710928, 2.18533, 0.281381, -0.883782, 10.2563, 10.223, 1.15379, 1.74247, 2.95256}, {-0.42359, 0.42359, 1.85157, 1.35703, 0.9861, 0.537103, 2.34562, -2.34562, 0.928382, -0.151563, -2.19156, -2.07921, -1.15379, -1.74247, -2.95256, -6.13903, -6.12973, -2.42979, 3.18439, -3.18439, -9.31242, 0.710928, 2.18533, 0.281381, -1.49003, 1.49003, 1.90615, 1.76004, 10.5087, 11.2694}, {-0.42359, 0.42359, 1.85157, 1.35703, 0.9861, 0.537103, -0.781872, 0.781872, -0.309461, 0.454689, 6.57469, 6.23763, -1.15379, -1.74247, -2.95256, -0.710928, -2.18533, -0.281381, 1.49003, -1.49003, -1.90615, 2.40529, 0.490973, -7.12489, -6.91814, -2.45437, -0.242264, 4.28128, -1.38502, 4.1904}, {2.56157, 0.777047, 3.89096, 1.32901, 0.581011, 0.152782, -0.565397, -1.62691, -0.0938093, 0.0902443, 1.30491, 1.23801, -5.90336, -2.72205, 0.803187, -0.943878, 1.2928, -0.0728941, 4.01589, 8.83876, 2.09436, 0.5829, -6.51244, -4.87916, -1.7543, -2.33113, -1.71912, 0.587321, 0.398009, -1.41431}, {-0.853857, -0.259016, -1.29699, -3.98703, -1.74303, -0.458346, -0.565397, -1.62691, -0.0938093, 0.0902443, 1.30491, 1.23801, 2.82811, 0.638054, 6.60226, 1.31771, 7.80043, 0.302343, 1.7543, 2.33113, 1.71912, 0.943878, -1.2928, 0.0728941, -2.11527, -7.55078, -6.67117, 0.587321, 0.398009, -1.41431}, {-0.853857, -0.259016, -1.29699, 1.32901, 0.581011, 0.152782, 1.69619, 4.88072, 0.281428, 0.0902443, 1.30491, 1.23801, -0.587321, -0.398009, 1.41431, -6.25992, -1.03125, -0.684022, 5.16973, 3.36719, 6.90706, 0.943878, -1.2928, 0.0728941, -1.7543, -2.33113, -1.71912, 0.226344, -4.82164, -6.36637}, {-0.853857, -0.259016, -1.29699, 1.32901, 0.581011, 0.152782, -0.565397, -1.62691, -0.0938093, -0.270733, -3.91473, -3.71404, -0.587321, -0.398009, 1.41431, -0.943878, 1.2928, -0.0728941, 1.7543, 2.33113, 1.71912, 4.35931, -0.256736, 5.26084, -7.07034, -4.65518, -2.33025, 2.84891, 6.90564, -1.03908}, {4.07496e-12, -2.19419, -6.05767, 4.84843e-16, 1.35003, -1.83833e-15, -1.44665, -1.05122, -0.572575, 1.44665, -1.0302, -1.44665, 1.67644e-12, -7.97291, -2.4959, 1.78815, -0.369344, 0.707741, 7.57474, 4.60023, 0.502145, -7.57474, 4.49015, 5.07885, -1.78815, -0.395328, 1.78815, -1.67844e-12, 2.57279, 2.4959}, {-1.3598e-12, 0.731398, 2.01922, -2.90906e-15, -4.05009, 4.93928e-15, -1.44665, -1.05122, -0.572575, 1.44665, -1.0302, -1.44665, 7.11964e-12, -5.49838, -10.5728, 7.57474, 3.83556, 2.99804, 1.78815, 0.395328, -1.78815, -1.78815, 0.369344, -0.707741, -7.57474, 3.72548, 7.57474, -1.67977e-12, 2.57279, 2.4959}, {-1.36091e-12, 0.731398, 2.01922, 0, 1.35003, 0, 4.33994, 3.15367, 1.71772, 1.44665, -1.0302, -1.44665, 1.68221e-12, -2.57279, -2.4959, 1.78815, -5.76946, 0.707741, 1.78815, -2.53026, -9.86504, -1.78815, 0.369344, -0.707741, -1.78815, -0.395328, 1.78815, -5.78659, 6.6936, 8.28248}, {-1.36047e-12, 0.731398, 2.01922, -4.84843e-16, 1.35003, 4.84843e-16, -1.44665, -1.05122, -0.572575, -4.33994, 3.09061, 4.33994, 1.68221e-12, -2.57279, -2.4959, 1.78815, -0.369344, 0.707741, 1.78815, 0.395328, -1.78815, -1.78815, -2.55625, -8.78463, -1.78815, -5.79545, 1.78815, 5.78659, 6.77769, 4.7862}, {5.43308, 2.37521, 0.624583, 1.07522, 0.584331, -1.07522, 1.83687, -0.576694, 0.182353, -1.10106, 0.784101, 1.10106, -3.39138, -2.08096, 5.88727, -3.59954, -0.00943971, 1.10365, -7.37942, 3.99825, -0.697471, 8.00379, -3.12696, -5.50789, 0.0319413, -1.69148, -0.0319413, -0.909507, -0.256369, -1.58639}, {-1.81103, -0.791738, -0.208194, -3.22566, -1.75299, 3.22566, 1.83687, -0.576694, 0.182353, -1.10106, 0.784101, 1.10106, 8.15362, 3.42332, 2.41917, -10.947, 2.29734, 0.374233, -0.0319413, 1.69148, 0.0319413, 3.59954, 0.00943971, -1.10365, 4.43619, -4.82788, -4.43619, -0.909507, -0.256369, -1.58639}, {-1.81103, -0.791738, -0.208194, 1.07522, 0.584331, -1.07522, -5.51061, 1.73008, -0.547059, -1.10106, 0.784101, 1.10106, 0.909507, 0.256369, 1.58639, -7.90043, -2.34676, 5.40453, 7.21217, 4.85843, 0.864718, 3.59954, 0.00943971, -1.10365, 0.0319413, -1.69148, -0.0319413, 3.49474, -3.39277, -5.99064}, {-1.81103, -0.791738, -0.208194, 1.07522, 0.584331, -1.07522, 1.83687, -0.576694, 0.182353, 3.30319, -2.3523, -3.30319, 0.909507, 0.256369, 1.58639, -3.59954, -0.00943971, 1.10365, -0.0319413, 1.69148, 0.0319413, 10.8437, 3.17639, -0.270869, -4.26894, -4.0288, 4.26894, -8.25698, 2.05041, -2.3158}, {1.1204, -1.1204, 10.941, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, 0.190281, 1.41539, 1.85814, -8.90493, 8.90493, -4.85864, -0.226431, 2.21115, -2.21115, 8.86902, -0.461631, 4.50793, -0.534693, -7.87269, -5.2214, -2.44635, 0.461631, -4.50793, 1.74951, -1.74951, -2.29678}, {-0.373467, 0.373467, -3.64699, -5.36656, 5.36656, -5.36656, -1.60567, 0, 0, 0.190281, 1.41539, 1.85814, -0.255645, 0.255645, 16.8847, 6.19624, 2.21115, -2.21115, 2.44635, -0.461631, 4.50793, 0.226431, -2.21115, 2.21115, -3.20747, -5.19992, -11.9405, 1.74951, -1.74951, -2.29678}, {-0.373467, 0.373467, -3.64699, 1.78885, -1.78885, 1.78885, 4.817, 0, 0, 0.190281, 1.41539, 1.85814, -1.74951, 1.74951, 2.29678, -7.38185, 9.36656, -9.36656, 3.94022, -1.9555, 19.0959, 0.226431, -2.21115, 2.21115, -2.44635, 0.461631, -4.50793, 0.988391, -7.41106, -9.72932}, {-0.373467, 0.373467, -3.64699, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, -0.570843, -4.24616, -5.57441, -1.74951, 1.74951, 2.29678, -0.226431, 2.21115, -2.21115, 2.44635, -0.461631, 4.50793, 1.7203, -3.70501, 16.7991, -9.60176, 7.61705, -11.6633, 8.17219, -1.74951, -2.29678}, {4.24616, -4.24616, -5.57441, 1.78885, -1.78885, 1.78885, 2.92187e-16, 3.15147, 2.85327e-15, -0.373467, -2.778, -3.64699, -7.61705, 7.61705, -11.6633, -2.21115, -1.68428, -2.21115, 1.74951, -18.2508, -2.29678, 3.70501, 12.7963, 16.7991, -1.74951, 5.64494, 2.29678, 0.461631, -0.461631, 4.50793}, {-1.41539, 1.41539, 1.85814, -5.36656, 5.36656, -5.36656, -5.84374e-16, 3.15147, -5.70654e-15, -0.373467, -2.778, -3.64699, 5.19992, -5.19992, -11.9405, -2.21115, -14.2902, -2.21115, 1.74951, -5.64494, -2.29678, 2.21115, 1.68428, 2.21115, -0.255645, 16.7569, 16.8847, 0.461631, -0.461631, 4.50793}, {-1.41539, 1.41539, 1.85814, 1.78885, -1.78885, 1.78885, 0, -9.45441, 0, -0.373467, -2.778, -3.64699, -0.461631, 0.461631, -4.50793, -9.36656, 5.47113, -9.36656, 7.41106, -11.3065, -9.72932, 2.21115, 1.68428, 2.21115, -1.74951, 5.64494, 2.29678, 1.9555, 10.6504, 19.0959}, {-1.41539, 1.41539, 1.85814, 1.78885, -1.78885, 1.78885, -2.92187e-16, 3.15147, -2.85327e-15, 1.1204, 8.334, 10.941, -0.461631, 0.461631, -4.50793, -2.21115, -1.68428, -2.21115, 1.74951, -5.64494, -2.29678, 7.87269, -3.97726, -5.2214, -8.90493, 12.8004, -4.85864, 0.461631, -13.0675, 4.50793}, {-4.91028, 4.91028, 4.91028, -0.802834, -0.802834, 0.802834, -0.802834, 0.802834, -0.802834, -0.0310931, 1.63676, 1.63676, 2.18055, 6.22684, -2.18055, 1.98471, -5.77316e-15, 5.88418e-15, 2.18055, -2.18055, 6.22684, -1.86034, -6.54704, -6.54704, 1.03079, -1.03079, -3.01551, 1.03079, -3.01551, -1.03079}, {1.63676, -1.63676, -1.63676, 2.4085, 2.4085, -2.4085, -0.802834, 0.802834, -0.802834, -0.0310931, 1.63676, 1.63676, -7.57784, 9.56255, 7.57784, 5.19605, -3.21134, 3.21134, -1.03079, 1.03079, 3.01551, -1.98471, 6.51256e-15, -5.03376e-15, 1.15516, -7.57784, -9.56255, 1.03079, -3.01551, -1.03079}, {1.63676, -1.63676, -1.63676, -0.802834, -0.802834, 0.802834, 2.4085, -2.4085, 2.4085, -0.0310931, 1.63676, 1.63676, -1.03079, 3.01551, 1.03079, 5.19605, 3.21134, -3.21134, -7.57784, 7.57784, 9.56255, -1.98471, 6.51256e-15, -5.58887e-15, 1.03079, -1.03079, -3.01551, 1.15516, -9.56255, -7.57784}, {1.63676, -1.63676, -1.63676, -0.802834, -0.802834, 0.802834, -0.802834, 0.802834, -0.802834, 0.0932794, -4.91028, -4.91028, -1.03079, 3.01551, 1.03079, 1.98471, -5.55112e-15, 5.66214e-15, -1.03079, 1.03079, 3.01551, -8.53176, 6.54704, 6.54704, 4.24213, 2.18055, -6.22684, 4.24213, -6.22684, 2.18055}, {2.4085, -2.4085, 2.4085, -0.833927, 0.833927, 2.4396, 1.57573, 1.57573, 1.57573, 0.0610269, -3.2125, -3.2125, 5.35886, -5.35886, -11.7815, -0.916924, -2.97851, -4.96322, -7.25829, -9.24301, -7.25829, 0.672816, 15.8285, 17.8132, 0.955357, 2.94007, 0.955357, -2.02315, 2.02315, 2.02315}, {-0.802834, 0.802834, -0.802834, 2.50178, -2.50178, -7.31879, 1.57573, 1.57573, 1.57573, 0.0610269, -3.2125, -3.2125, 5.23448, -5.23448, 1.18819, -7.21986, -9.28144, -11.2662, -0.955357, -2.94007, -0.955357, 0.916924, 2.97851, 4.96322, 0.71125, 15.7901, 13.8053, -2.02315, 2.02315, 2.02315}, {-0.802834, 0.802834, -0.802834, -0.833927, 0.833927, 2.4396, -4.7272, -4.7272, -4.7272, 0.0610269, -3.2125, -3.2125, 2.02315, -2.02315, -2.02315, 2.41878, -6.31421, -14.7216, 2.25598, -6.15141, 2.25598, 0.916924, 2.97851, 4.96322, 0.955357, 2.94007, 0.955357, -2.26726, 14.8731, 14.8731}, {-0.802834, 0.802834, -0.802834, -0.833927, 0.833927, 2.4396, 1.57573, 1.57573, 1.57573, -0.183081, 9.63749, 9.63749, 2.02315, -2.02315, -2.02315, -0.916924, -2.97851, -4.96322, -0.955357, -2.94007, -0.955357, 4.12826, -0.232831, 8.17456, 4.29107, -0.395637, -8.80302, -8.32609, -4.27979, -4.27979}, {4.10689, -1.43706, 2.8235e-12, 0.16503, -0.581747, -1.44665, -0.119439, -0.784236, 1.44665, 1.32337, 0.886963, 9.09785e-13, 0.828026, 2.45397, 7.57474, -0.0563528, 1.68845, -3.88578e-14, 2.31753, 3.51421, -7.57474, -5.23714, -5.2363, -3.60028e-12, -1.83977, -0.377268, 1.78815, -1.48814, -0.126978, -1.78815}, {-1.36896, 0.47902, -9.395e-13, -0.495089, 1.74524, 4.33994, -0.119439, -0.784236, 1.44665, 1.32337, 0.886963, 9.08857e-13, 6.964, -1.7891, 1.78815, 0.421405, 4.82539, -5.78659, 1.83977, 0.377268, -1.78815, 0.0563528, -1.68845, 3.79696e-14, -7.13326, -3.92512, 1.78815, -1.48814, -0.126978, -1.78815}, {-1.36896, 0.47902, -9.39941e-13, 0.16503, -0.581747, -1.44665, 0.358318, 2.35271, -4.33994, 1.32337, 0.886963, 9.07744e-13, 1.48814, 0.126978, 1.78815, -0.716472, 4.01544, 5.78659, 7.31562, -1.53881, -1.78815, 0.0563528, -1.68845, 3.9968e-14, -1.83977, -0.377268, 1.78815, -6.78164, -3.67483, -1.78815}, {-1.36896, 0.47902, -9.38462e-13, 0.16503, -0.581747, -1.44665, -0.119439, -0.784236, 1.44665, -3.97012, -2.66089, -2.72546e-12, 1.48814, 0.126978, 1.78815, -0.0563528, 1.68845, -3.70814e-14, 1.83977, 0.377268, -1.78815, 5.53221, -3.60453, 3.79027e-12, -2.49989, 1.94972, 7.57474, -1.01039, 3.00996, -7.57474}, {-1.71772, 0.961283, -4.33994, 1.44665, 0.27723, -1.44665, 0, 1.39654, 0, -2.01922, -1.35334, -1.38544e-12, -8.28248, -1.05552, 5.78659, -1.78815, -2.06889, 1.78815, -0.707741, -6.9163, -1.78815, 9.86504, 7.48225, -1.78815, 0.707741, 1.33015, 1.78815, 2.4959, -0.0533958, 1.7125e-12}, {0.572575, -0.320428, 1.44665, -4.33994, -0.831689, 4.33994, 7.00055e-16, 1.39654, 4.80579e-28, -2.01922, -1.35334, -1.38617e-12, -4.7862, 1.33511, -5.78659, -1.78815, -7.65505, 1.78815, -0.707741, -1.33015, -1.78815, 1.78815, 2.06889, -1.78815, 8.78463, 6.74351, 1.78815, 2.4959, -0.0533958, 1.7134e-12}, {0.572575, -0.320428, 1.44665, 1.44665, 0.27723, -1.44665, 4.20033e-15, -4.18962, 2.88423e-27, -2.01922, -1.35334, -1.38653e-12, -2.4959, 0.0533958, -1.71421e-12, -7.57474, -3.17781, 7.57474, -2.99804, -0.0484352, -7.57474, 1.78815, 2.06889, -1.78815, 0.707741, 1.33015, 1.78815, 10.5728, 5.35997, 7.25997e-12}, {0.572575, -0.320428, 1.44665, 1.44665, 0.27723, -1.44665, 0, 1.39654, 0, 6.05767, 4.06002, 4.16395e-12, -2.4959, 0.0533958, -1.716e-12, -1.78815, -2.06889, 1.78815, -0.707741, -1.33015, -1.78815, -0.502145, 3.3506, -7.57474, -5.07885, 0.221228, 7.57474, 2.4959, -5.63955, 1.71564e-12}, {-4.35597, 0.237767, -4.31288, 0, -1.20934, 0, 0.57469, 0.297534, -1.45022, -2.02668, 0.991065, 0.0125895, -1.79476, 6.43017, -1.77701, -0.710355, 1.12706, 1.79257, -4.80387, -1.45994, 5.81643, 8.81707, -5.09132, -1.84292, 2.50511, 0.269807, -0.0155615, 1.79476, -1.5928, 1.77701}, {1.45199, -0.0792556, 1.43763, 0, 3.62803, 0, 0.57469, 0.297534, -1.45022, -2.02668, 0.991065, 0.0125895, -7.60272, 1.90982, -7.52752, -3.00911, -0.0630793, 7.59343, -2.50511, -0.269807, 0.0155615, 0.710355, -1.12706, -1.79257, 10.6118, -3.69445, -0.0659197, 1.79476, -1.5928, 1.77701}, {1.45199, -0.0792556, 1.43763, 0, -1.20934, 0, -1.72407, -0.892603, 4.35065, -2.02668, 0.991065, 0.0125895, -1.79476, 1.5928, -1.77701, -0.710355, 5.96443, 1.79257, -8.31307, 0.047215, -5.73495, 0.710355, -1.12706, -1.79257, 2.50511, 0.269807, -0.0155615, 9.90148, -5.55705, 1.72665}, {1.45199, -0.0792556, 1.43763, 0, -1.20934, 0, 0.57469, 0.297534, -1.45022, 6.08004, -2.97319, -0.0377686, -1.79476, 1.5928, -1.77701, -0.710355, 1.12706, 1.79257, -2.50511, -0.269807, 0.0155615, -5.09761, -0.810036, -7.54308, 2.50511, 5.10718, -0.0155615, -0.504, -2.78293, 7.57787}, {-1.3922, -1.05489, 4.34859, -1.6823, -0.386683, 0.0104503, -0.635567, 0.941579, 1.4506, 1.8538, -0.906526, -0.0115156, 8.23503, 1.59006, 1.737, 2.86504, -0.685889, -1.80595, 2.75426, -5.36481, -5.8037, -10.2803, 4.31199, 1.85201, -0.211987, 1.59849, 0.00131684, -1.50582, -0.0433277, -1.7788}, {0.464066, 0.35163, -1.44953, 5.0469, 1.16005, -0.0313509, -0.635567, 0.941579, 1.4506, 1.8538, -0.906526, -0.0115156, -0.350444, -1.36319, 7.57692, 5.40731, -4.4522, -7.60833, 0.211987, -1.59849, -0.00131684, -2.86504, 0.685889, 1.80595, -7.6272, 5.2246, 0.0473794, -1.50582, -0.0433277, -1.7788}, {0.464066, 0.35163, -1.44953, -1.6823, -0.386683, 0.0104503, 1.9067, -2.82474, -4.35179, 1.8538, -0.906526, -0.0115156, 1.50582, 0.0433277, 1.7788, 9.59425, 0.860843, -1.84775, -1.64428, -3.00501, 5.7968, -2.86504, 0.685889, 1.80595, -0.211987, 1.59849, 0.00131684, -8.92103, 3.58278, -1.73274}, {0.464066, 0.35163, -1.44953, -1.6823, -0.386683, 0.0104503, -0.635567, 0.941579, 1.4506, -5.56141, 2.71958, 0.0345469, 1.50582, 0.0433277, 1.7788, 2.86504, -0.685889, -1.80595, 0.211987, -1.59849, -0.00131684, -4.72131, -0.720632, 7.60407, 6.51722, 3.14523, -0.0404844, 1.03645, -3.80964, -7.58118}, {-4.91028, -4.91028, 4.91028, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, -1.63676, -1.63676, 4.78823, -10.2738, 6.2275, 10.2738, 3.77476e-15, -3.10862e-15, 3.89543, 6.2275, -10.2738, 10.2738, 6.54704, 6.54704, -23.0483, 0.0754334, 3.97086, -3.97086, 3.97086, 0.0754334, -3.97086}, {1.63676, 1.63676, -1.63676, -4.7272, 4.7272, 4.7272, -1.57573, 1.57573, -1.57573, -1.63676, -1.63676, 4.78823, -10.5179, -6.62248, 10.5179, 6.30294, -6.30294, 10.1984, -0.0754334, -3.97086, 3.97086, -3.07087e-15, 3.59047e-15, -3.89543, 6.62248, 10.5179, -23.1238, 3.97086, 0.0754334, -3.97086}, {1.63676, 1.63676, -1.63676, 1.57573, -1.57573, -1.57573, 4.7272, -4.7272, 4.7272, -1.63676, -1.63676, 4.78823, -3.97086, -0.0754334, 3.97086, -6.30294, 6.30294, 10.1984, -6.62248, -10.5179, 10.5179, -1.51655e-15, 1.81411e-15, -3.89543, 0.0754334, 3.97086, -3.97086, 10.5179, 6.62248, -23.1238}, {1.63676, 1.63676, -1.63676, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 4.91028, 4.91028, -14.3647, -3.97086, -0.0754334, 3.97086, 3.10862e-15, -2.44249e-15, 3.89543, -0.0754334, -3.97086, 3.97086, -6.54704, -6.54704, 2.65162, -6.2275, 10.2738, 2.33207, 10.2738, -6.2275, 2.33207}, {-1.37636, -1.37636, -5.42796, -2.30348, 0.847989, 0.553233, 1.22922, -1.92224, -0.562043, 0.615468, 0.615468, -1.80051, 11.4941, -5.00722, -5.1332, 1.32785, 1.32785, 0.0108901, -7.00339, 9.49791, 0.706454, -3.78972, -3.78972, 7.19114, 2.0865, -1.80893, 1.54172, -2.28016, 1.61526, 2.92027}, {0.458787, 0.458787, 1.80932, 6.91044, -2.54397, -1.6597, 1.22922, -1.92224, -0.562043, 0.615468, 0.615468, -1.80051, 0.445015, -3.45041, -10.1575, -3.58904, 9.01683, 2.25906, -2.0865, 1.80893, -1.54172, -1.32785, -1.32785, -0.0108901, -0.375375, -4.2708, 8.74375, -2.28016, 1.61526, 2.92027}, {0.458787, 0.458787, 1.80932, -2.30348, 0.847989, 0.553233, -3.68767, 5.76673, 1.68613, 0.615468, 0.615468, -1.80051, 2.28016, -1.61526, -2.92027, 10.5418, -2.0641, -2.20204, -3.92165, -0.0262169, -8.77899, -1.32785, -1.32785, -0.0108901, 2.0865, -1.80893, 1.54172, -4.74204, -0.846607, 10.1223}, {0.458787, 0.458787, 1.80932, -2.30348, 0.847989, 0.553233, 1.22922, -1.92224, -0.562043, -1.8464, -1.8464, 5.40152, 2.28016, -1.61526, -2.92027, 1.32785, 1.32785, 0.0108901, -2.0865, 1.80893, -1.54172, -3.163, -3.163, -7.24816, 11.3004, -5.20089, -0.671213, -7.19706, 9.30424, 5.16845}, {5.36656, -5.36656, -5.36656, 1.41539, 1.85814, -1.41539, 0, 0, -3.15147, 0.373467, -3.64699, 2.778, -5.19992, -11.9405, 5.19992, -1.74951, -2.29678, 5.64494, 2.21115, -2.21115, 14.2902, 0.255645, 16.8847, -16.7569, -2.21115, 2.21115, -1.68428, -0.461631, 4.50793, 0.461631}, {-1.78885, 1.78885, 1.78885, -4.24616, -5.57441, 4.24616, 0, 0, -3.15147, 0.373467, -3.64699, 2.778, 7.61705, -11.6633, -7.61705, -1.74951, -2.29678, 18.2508, 2.21115, -2.21115, 1.68428, 1.74951, 2.29678, -5.64494, -3.70501, 16.7991, -12.7963, -0.461631, 4.50793, 0.461631}, {-1.78885, 1.78885, 1.78885, 1.41539, 1.85814, -1.41539, 0, 0, 9.45441, 0.373467, -3.64699, 2.778, 0.461631, -4.50793, -0.461631, -7.41106, -9.72932, 11.3065, 9.36656, -9.36656, -5.47113, 1.74951, 2.29678, -5.64494, -2.21115, 2.21115, -1.68428, -1.9555, 19.0959, -10.6504}, {-1.78885, 1.78885, 1.78885, 1.41539, 1.85814, -1.41539, 0, 0, -3.15147, -1.1204, 10.941, -8.334, 0.461631, -4.50793, -0.461631, -1.74951, -2.29678, 5.64494, 2.21115, -2.21115, 1.68428, 8.90493, -4.85864, -12.8004, -7.87269, -5.2214, 3.97726, -0.461631, 4.50793, 13.0675}, {5.73547, -8.96906, -2.62245, 0.335815, -3.2793, -0.653542, 1.76841, -1.58918, 1.21052, -0.192397, 1.8788, -1.43113, 0.604796, 13.4752, 2.34148, -2.60096, 6.01778, -0.688458, -6.89635, 4.62559, -7.41885, 3.37055, -13.533, 6.41296, -0.177274, 1.73112, 2.57679, -1.94806, -0.357987, 0.272688}, {-1.91182, 2.98969, 0.874151, -1.00744, 9.83791, 1.96063, 1.76841, -1.58918, 1.21052, -0.192397, 1.8788, -1.43113, 9.59535, -11.6008, -3.76929, -9.67459, 12.3745, -5.53052, 0.177274, -1.73112, -2.57679, 2.60096, -6.01778, 0.688458, 0.592313, -5.78406, 8.30129, -1.94806, -0.357987, 0.272688}, {-1.91182, 2.98969, 0.874151, 0.335815, -3.2793, -0.653542, -5.30522, 4.76754, -3.63155, -0.192397, 1.8788, -1.43113, 1.94806, 0.357987, -0.272688, -3.94422, 19.135, 1.92571, 7.82457, -13.6899, -6.07339, 2.60096, -6.01778, 0.688458, -0.177274, 1.73112, 2.57679, -1.17847, -7.87317, 5.99719}, {-1.91182, 2.98969, 0.874151, 0.335815, -3.2793, -0.653542, 1.76841, -1.58918, 1.21052, 0.57719, -5.63639, 4.29338, 1.94806, 0.357987, -0.272688, -2.60096, 6.01778, -0.688458, 0.177274, -1.73112, -2.57679, 10.2483, -17.9765, -2.80815, -1.52053, 14.8483, 5.19096, -9.02168, 5.99873, -4.56938}, {-0.906892, 2.28653, -2.28852, -1.55284, 0.422175, 1.18312, -0.363916, -0.686733, -0.918335, 1.61446, 1.02673, -1.02763, 7.75714, -1.26844, -7.13784, 2.36925, 0.327011, -0.327296, 1.53183, 4.53788, 3.86554, -8.8271, -4.43394, 4.43781, -0.0761652, -1.79095, -0.192201, -1.54576, -0.420263, 2.40534}, {0.302297, -0.762175, 0.762841, 4.65853, -1.26653, -3.54937, -0.363916, -0.686733, -0.918335, 1.61446, 1.02673, -1.02763, 0.336571, 3.46896, -5.45671, 3.82491, 3.07394, 3.34604, 0.0761652, 1.79095, 0.192201, -2.36925, -0.327011, 0.327296, -6.53402, -5.89788, 3.91832, -1.54576, -0.420263, 2.40534}, {0.302297, -0.762175, 0.762841, -1.55284, 0.422175, 1.18312, 1.09175, 2.0602, 2.75501, 1.61446, 1.02673, -1.02763, 1.54576, 0.420263, -2.40534, 8.58063, -1.36169, -5.05979, -1.13302, 4.83965, -2.85916, -2.36925, -0.327011, 0.327296, -0.0761652, -1.79095, -0.192201, -8.00362, -4.52719, 6.51586}, {0.302297, -0.762175, 0.762841, -1.55284, 0.422175, 1.18312, -0.363916, -0.686733, -0.918335, -4.84339, -3.0802, 3.08289, 1.54576, 0.420263, -2.40534, 2.36925, 0.327011, -0.327296, 0.0761652, 1.79095, 0.192201, -3.57844, 2.72169, -2.72407, 6.13521, -3.47965, -4.9247, -0.0900956, 2.32667, 6.07869}, {-3.9353, 0.360586, -0.360901, -2.42845e-16, -0.455297, -1.14997, 2.03858e-16, 1.40972, 0.194715, -1.31177, -0.834228, 0.834958, -1.62143, 2.53253, 5.87264, 4.81904e-17, -1.17973, 1.18076, -1.62143, -7.23282, -1.16824, 5.24706, 4.51665, -4.52059, 1.62143, 1.59394, 0.389381, 1.62143, -0.711347, -1.27275}, {1.31177, -0.120195, 0.1203, 7.28534e-16, 1.36589, 3.44992, 2.03858e-16, 1.40972, 0.194715, -1.31177, -0.834228, 0.834958, -6.86849, 1.19213, 0.791545, -7.67241e-16, -6.81861, 0.401902, -1.62143, -1.59394, -0.389381, -3.73841e-16, 1.17973, -1.18076, 6.86849, 4.93085, -2.95045, 1.62143, -0.711347, -1.27275}, {1.31177, -0.120195, 0.1203, 7.41337e-17, -0.455297, -1.14997, 6.88614e-16, -4.22916, -0.584146, -1.31177, -0.834228, 0.834958, -1.62143, 0.711347, 1.27275, -1.04445e-16, 0.641455, 5.78066, -6.86849, -1.11316, -0.870582, -5.1774e-16, 1.17973, -1.18076, 1.62143, 1.59394, 0.389381, 6.86849, 2.62557, -4.61258}, {1.31177, -0.120195, 0.1203, -1.68711e-16, -0.455297, -1.14997, -2.56799e-17, 1.40972, 0.194715, 3.9353, 2.50269, -2.50487, -1.62143, 0.711347, 1.27275, 2.4028e-16, -1.17973, 1.18076, -1.62143, -1.59394, -0.389381, -5.24706, 1.66051, -1.66196, 1.62143, 3.41513, 4.98927, 1.62143, -6.35023, -2.05161}, {3.9353, -3.83942e-12, 1.21564, 0, -1.44665, 1.03094, 0, 1.44665, 0.774615, 1.31177, -1.27981e-12, -1.40034, 1.62143, 7.57474, -4.89721, 0, 0, -2.23179, 1.62143, -7.57474, -3.55506, -5.24706, 5.11922e-12, 7.83316, -1.62143, 1.78815, 0.456604, -1.62143, -1.78815, 0.773441}, {-1.31177, 1.28052e-12, -0.405214, 3.53326e-15, 4.33994, -3.09282, 1.17775e-15, 1.44665, 0.774615, 1.31177, -1.28052e-12, -1.40034, 6.86849, 1.78815, 0.847415, -4.71101e-15, -5.78659, -5.33025, 1.62143, -1.78815, -0.456604, 3.2565e-16, -3.17893e-28, 2.23179, -6.86849, 1.78815, 6.05797, -1.62143, -1.78815, 0.773441}, {-1.31177, 1.28099e-12, -0.405214, -9.42202e-16, -1.44665, 1.03094, -2.82661e-15, -4.33994, -2.32384, 1.31177, -1.28099e-12, -1.40034, 1.62143, 1.78815, -0.773441, 3.76881e-15, 5.78659, -6.35555, 6.86849, -1.78815, 1.16425, 3.2565e-16, -3.18011e-28, 2.23179, -1.62143, 1.78815, 0.456604, -6.86849, -1.78815, 6.37481}, {-1.31177, 1.27957e-12, -0.405214, 0, -1.44665, 1.03094, 0, 1.44665, 0.774615, -3.9353, 3.83871e-12, 4.20103, 1.62143, 1.78815, -0.773441, 0, 0, -2.23179, 1.62143, -1.78815, -0.456604, 5.24706, -5.11827e-12, 3.85265, -1.62143, 7.57474, -3.66716, -1.62143, -7.57474, -2.32502}, {-1.71772, -4.33994, -0.49013, 1.44665, -1.44665, -0.51339, 0, 0, -1.80556, -2.01922, 1.97175e-12, 2.15557, -8.28248, 5.78659, 2.4862, -1.78815, 1.78815, 2.86637, -0.707741, -1.78815, 9.25207, 9.86504, -1.78815, -11.4887, 0.707741, 1.78815, -2.02984, 2.4959, -2.43721e-12, -0.432641}, {0.572575, 1.44665, 0.163377, -4.33994, 4.33994, 1.54017, 0, 0, -1.80556, -2.01922, 1.97102e-12, 2.15557, -4.7862, -5.78659, -0.220866, -1.78815, 1.78815, 10.0886, -0.707741, -1.78815, 2.02984, 1.78815, -1.78815, -2.86637, 8.78463, 1.78815, -10.6521, 2.4959, -2.43632e-12, -0.432641}, {0.572575, 1.44665, 0.163377, 1.44665, -1.44665, -0.51339, 0, 0, 5.41667, -2.01922, 1.97175e-12, 2.15557, -2.4959, 2.43685e-12, 0.432641, -7.57474, 7.57474, 4.91994, -2.99804, -7.57474, 1.37634, 1.78815, -1.78815, -2.86637, 0.707741, 1.78815, -2.02984, 10.5728, -1.03242e-11, -9.05492}, {0.572575, 1.44665, 0.163377, 1.44665, -1.44665, -0.51339, 0, 0, -1.80556, 6.05767, -5.91306e-12, -6.46671, -2.4959, 2.43596e-12, 0.432641, -1.78815, 1.78815, 2.86637, -0.707741, -1.78815, 2.02984, -0.502145, -7.57474, -3.51988, -5.07885, 7.57474, 0.0237159, 2.4959, -2.43632e-12, 6.78958}, {5.80677, 0.989763, -2.29829, 1.66654, 1.66654, -0.659606, 0.232016, 0.232016, -2.11105, 0.0370362, -1.56863, 2.00456, -6.33358, -8.31829, 2.5068, -2.34674, -2.34674, 3.42472, 1.17767, -0.807048, 10.1067, 2.1986, 8.62127, -11.443, -2.10573, -0.121017, -1.66246, -0.332567, 1.65215, 0.131628}, {-1.93559, -0.329921, 0.766095, -4.99961, -4.99961, 1.97882, 0.232016, 0.232016, -2.11105, 0.0370362, -1.56863, 2.00456, 8.07492, -0.332464, -3.19601, -3.2748, -3.2748, 11.8689, 2.10573, 0.121017, 1.66246, 2.34674, 2.34674, -3.42472, -2.25388, 6.15351, -9.68071, -0.332567, 1.65215, 0.131628}, {-1.93559, -0.329921, 0.766095, 1.66654, 1.66654, -0.659606, -0.696049, -0.696049, 6.33316, 0.0370362, -1.56863, 2.00456, 0.332567, -1.65215, -0.131628, -9.01289, -9.01289, 6.06315, 9.84809, 1.4407, -1.40192, 2.34674, 2.34674, -3.42472, -2.10573, -0.121017, -1.66246, -0.480712, 7.92668, -7.88662}, {-1.93559, -0.329921, 0.766095, 1.66654, 1.66654, -0.659606, 0.232016, 0.232016, -2.11105, -0.111109, 4.7059, -6.01369, 0.332567, -1.65215, -0.131628, -2.34674, -2.34674, 3.42472, 2.10573, 0.121017, 1.66246, 10.0891, 3.66642, -6.4891, -8.77188, -6.78716, 0.975965, -1.26063, 0.724083, 8.57584}, {-7.02938, -6.32827e-15, -4.44089e-15, 1.74421, 1.74203, 1.33161, -1.54384, -1.54318, 0.610212, -2.54349, -0.198851, -1.94182, -12.0291, -9.12139, -6.97241, -0.247668, -0.245794, -2.40023, 5.18739, 8.08019, -3.19511, 10.4216, 1.0412, 10.1675, 0.98797, -1.90748, 0.754264, 5.05222, 2.15327, 1.64596}, {2.34313, -1.30451e-15, -6.66134e-16, -5.23263, -5.22609, -3.99484, -1.54384, -1.54318, 0.610212, -2.54349, -0.198851, -1.94182, -14.4247, -2.15327, -1.64596, 5.92769, 5.92693, -4.84108, -0.98797, 1.90748, -0.754264, 0.247668, 0.245794, 2.40023, 11.1619, -1.11207, 8.52156, 5.05222, 2.15327, 1.64596}, {2.34313, 2.33147e-15, 1.77636e-15, 1.74421, 1.74203, 1.33161, 4.63152, 4.62954, -1.83064, -2.54349, -0.198851, -1.94182, -5.05222, -2.15327, -1.64596, -7.2245, -7.21392, -7.72668, -10.3605, 1.90748, -0.754264, 0.247668, 0.245794, 2.40023, 0.98797, -1.90748, 0.754264, 15.2262, 2.94867, 9.41326}, {2.34313, 1.38778e-16, -1.11022e-15, 1.74421, 1.74203, 1.33161, -1.54384, -1.54318, 0.610212, 7.63048, 0.596554, 5.82547, -5.05222, -2.15327, -1.64596, -0.247668, -0.245794, -2.40023, -0.98797, 1.90748, -0.754264, -9.12483, 0.245794, 2.40023, -5.98886, -8.8756, -4.57219, 11.2276, 8.32599, -0.794885}, {4.62937, 4.62937, -1.83228, 1.92454e-15, 1.60567, 4.31655e-17, -0.198723, -0.198723, -1.94057, 1.74185, 0.136178, 1.32981, 1.90741, -6.49998, -0.754941, 0.245635, -1.73908, 2.39867, 2.94793, 2.94793, 9.40601, -7.21302, 1.19437, -7.71791, -2.15304, -2.15304, -1.64373, -1.90741, 0.0773091, 0.754941}, {-1.54312, -1.54312, 0.61076, -2.32061e-15, -4.817, -3.91084e-15, -0.198723, -0.198723, -1.94057, 1.74185, 0.136178, 1.32981, 8.0799, 6.09519, -3.19798, 1.04052, -0.94419, 10.1609, 2.15304, 2.15304, 1.64373, -0.245635, 1.73908, -2.39867, -9.12042, -2.69775, -6.96297, -1.90741, 0.0773091, 0.754941}, {-1.54312, -1.54312, 0.61076, 0, 1.60567, 0, 0.596168, 0.596168, 5.82171, 1.74185, 0.136178, 1.32981, 1.90741, -0.0773091, -0.754941, 0.245635, -8.16175, 2.39867, 8.32553, 8.32553, -0.799305, -0.245635, 1.73908, -2.39867, -2.15304, -2.15304, -1.64373, -8.87479, -0.467403, -4.5643}, {-1.54312, -1.54312, 0.61076, -6.94322e-16, 1.60567, -5.30079e-16, -0.198723, -0.198723, -1.94057, -5.22554, -0.408534, -3.98943, 1.90741, -0.0773091, -0.754941, 0.245635, -1.73908, 2.39867, 2.15304, 2.15304, 1.64373, 5.92686, 7.91157, -4.84171, -2.15304, -8.57571, -1.64373, -1.11252, 0.872199, 8.51722}, {-8.88178e-16, 2.15168e-15, -3.8693, 1.44142, -1.45582, 0.146636, 0.577805, 1.45582, -0.186531, -2.01922, -1.68031e-12, -1.24987, -7.54736, 7.62276, -2.36203, -2.4959, -2.07812e-12, 0.0493134, -3.02542, -7.62276, -0.617546, 10.5728, 8.79935e-12, 4.95017, 0.714206, 1.79949, 1.36367, 1.78169, -1.79949, 1.77549}, {0, -1.49289e-16, 1.28977, -4.32425, 4.36745, -0.439908, 0.577805, 1.45582, -0.186531, -2.01922, -1.67873e-12, -1.24987, -1.78169, 1.79949, -6.93455, -4.80711, -5.82327, 0.795439, -0.714206, -1.79949, -1.36367, 2.4959, 2.07523e-12, -0.0493134, 8.79109, 1.79949, 6.36315, 1.78169, -1.79949, 1.77549}, {8.88178e-16, 3.43166e-16, 1.28977, 1.44142, -1.45582, 0.146636, -1.73341, -4.36745, 0.559594, -2.01922, -1.68189e-12, -1.24987, -1.78169, 1.79949, -1.77549, -8.26156, 5.82327, -0.537231, -0.714206, -1.79949, -6.52273, 2.4959, 2.07834e-12, -0.0493134, 0.714206, 1.79949, 1.36367, 9.85858, -1.79949, 6.77497}, {-4.44089e-16, 1.48625e-17, 1.28977, 1.44142, -1.45582, 0.146636, 0.577805, 1.45582, -0.186531, 6.05767, 5.03935e-12, 3.74961, -1.78169, 1.79949, -1.77549, -2.4959, -2.07634e-12, 0.0493134, -0.714206, -1.79949, -1.36367, 2.4959, 2.0765e-12, -5.20838, -5.05146, 7.62276, 0.777128, -0.529529, -7.62276, 2.52162}, {-0.0174717, -4.36745, 1.62174, 0.116385, -1.45582, -0.673541, -1.39583, -1.1623e-12, 0.425765, 1.27362, 1.06054e-12, 0.788355, -0.616596, 5.82327, 4.1949, 1.58148, 1.79949, 0.306268, 7.30147, -1.79949, -1.56114, -6.67598, -1.79949, -3.45969, -1.71815, 1.79949, -0.141919, 0.151058, 1.25785e-13, -1.50074}, {0.0058239, 1.45582, -0.54058, -0.349154, 4.36745, 2.02062, -1.39583, -1.1623e-12, 0.425765, 1.27362, 1.06054e-12, 0.788355, -0.174354, -5.82327, 3.66305, 7.16481, 1.79949, -1.39679, 1.71815, -1.79949, 0.141919, -1.58148, -1.79949, -0.306268, -6.81264, 1.79949, -3.29534, 0.151058, 1.25785e-13, -1.50074}, {0.0058239, 1.45582, -0.54058, 0.116385, -1.45582, -0.673541, 4.1875, 3.48841e-12, -1.27729, 1.27362, 1.061e-12, 0.788355, -0.151058, -1.26201e-13, 1.50074, 1.11595, 7.62276, 3.00043, 1.69485, -7.62276, 2.30424, -1.58148, -1.79949, -0.306268, -1.71815, 1.79949, -0.141919, -4.94344, -4.11815e-12, -4.65416}, {0.0058239, 1.45582, -0.54058, 0.116385, -1.45582, -0.673541, -1.39583, -1.16331e-12, 0.425765, -3.82087, -3.18437e-12, -2.36507, -0.151058, -1.26255e-13, 1.50074, 1.58148, 1.79949, 0.306268, 1.71815, -1.79949, 0.141919, -1.60478, -7.62276, 1.85605, -2.18368, 7.62276, 2.55224, 5.73439, 4.77913e-12, -3.20379}, {0.776806, 4.33994, 4.33994, -1.05603, 0, 0, 0.111915, 1.44665, -0.572575, 1.20305, 1.58813e-12, 2.01922, 5.84948, 1.78815, 1.78815, 1.16698, -1.78815, 0.707741, -0.265932, -5.78659, 4.7862, -5.97917, 1.78815, -8.78463, -0.181727, -1.96304e-12, -2.4959, -1.62538, -1.78815, -1.78815}, {-0.258935, -1.44665, -1.44665, 3.16808, 0, 0, 0.111915, 1.44665, -0.572575, 1.20305, 1.58704e-12, 2.01922, 2.66112, 7.57474, 7.57474, 0.719326, -7.57474, 2.99804, 0.181727, 1.96205e-12, 2.4959, -1.16698, 1.78815, -0.707741, -4.99391, -8.30986e-12, -10.5728, -1.62538, -1.78815, -1.78815}, {-0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -0.335745, -4.33994, 1.71772, 1.20305, 1.58813e-12, 2.01922, 1.62538, 1.78815, 1.78815, 5.39109, -1.78815, 0.707741, 1.21747, 5.78659, 8.28248, -1.16698, 1.78815, -0.707741, -0.181727, -1.96304e-12, -2.4959, -6.43757, -1.78815, -9.86504}, {-0.258935, -1.44665, -1.44665, -1.05603, 0, 0, 0.111915, 1.44665, -0.572575, -3.60914, -4.76221e-12, -6.05767, 1.62538, 1.78815, 1.78815, 1.16698, -1.78815, 0.707741, 0.181727, 1.9625e-12, 2.4959, -0.131244, 7.57474, 5.07885, 4.04237, -1.96214e-12, -2.4959, -2.07304, -7.57474, 0.502145}, {-1.50826, -4.33994, -0.250246, -0.36325, 9.14735e-13, 1.16277, 0.624341, -1.44665, 0.0358648, -0.763842, -1.00857e-12, -1.28205, 1.28057, -1.78815, -6.19146, -0.322725, 1.78815, -1.4816, -3.89052, 5.78659, -0.290898, 3.37809, -1.78815, 6.6098, 1.39316, 1.15988e-13, 0.147438, 0.172433, 1.78815, 1.54037}, {0.502752, 1.44665, 0.0834153, 1.08975, -2.74233e-12, -3.48831, 0.624341, -1.44665, 0.0358648, -0.763842, -1.00788e-12, -1.28205, -2.18344, -7.57474, -1.87403, -2.82009, 7.57474, -1.62505, -1.39316, -1.16267e-13, -0.147438, 0.322725, -1.78815, 1.4816, 4.44853, 4.14743e-12, 5.27564, 0.172433, 1.78815, 1.54037}, {0.502752, 1.44665, 0.0834153, -0.36325, 9.139e-13, 1.16277, -1.87302, 4.33994, -0.107594, -0.763842, -1.00765e-12, -1.28205, -0.172433, -1.78815, -1.54037, 1.13028, 1.78815, -6.13268, -3.40417, -5.78659, -0.4811, 0.322725, -1.78815, 1.4816, 1.39316, 1.15882e-13, 0.147438, 3.2278, 1.78815, 6.66858}, {0.502752, 1.44665, 0.0834153, -0.36325, 9.14526e-13, 1.16277, 0.624341, -1.44665, 0.0358648, 2.29153, 3.02502e-12, 3.84615, -0.172433, -1.78815, -1.54037, -0.322725, 1.78815, -1.4816, -1.39316, -1.1632e-13, -0.147438, -1.68828, -7.57474, 1.14793, 2.84616, -3.54214e-12, -4.50365, -2.32493, 7.57474, 1.39691}, {-5.2764, 2.09092, -1.75594, -0.883363, 0.350058, 0.882867, 0.674903, -2.28914, -0.671659, -1.55034, 2.63606, -0.796523, 2.45135, -0.971419, -5.34624, 0.257671, 2.39684, -0.261068, -5.70783, 12.8476, 2.79336, 5.94368, -12.9411, 3.44716, 3.00822, -3.69104, -0.106727, 1.0821, -0.428812, 1.81477}, {1.7588, -0.696974, 0.585315, 2.65009, -1.05017, -2.6486, 0.674903, -2.28914, -0.671659, -1.55034, 2.63606, -0.796523, -8.11729, 3.21671, -4.15603, -2.44194, 11.5534, 2.42557, -3.00822, 3.69104, 0.106727, -0.257671, -2.39684, 0.261068, 9.20957, -14.2353, 3.07936, 1.0821, -0.428812, 1.81477}, {1.7588, -0.696974, 0.585315, -0.883363, 0.350058, 0.882867, -2.02471, 6.86742, 2.01498, -1.55034, 2.63606, -0.796523, -1.0821, 0.428812, -1.81477, 3.79112, 0.996607, -3.79254, -10.0434, 6.47894, -2.23453, -0.257671, -2.39684, 0.261068, 3.00822, -3.69104, -0.106727, 7.28345, -10.973, 5.00086}, {1.7588, -0.696974, 0.585315, -0.883363, 0.350058, 0.882867, 0.674903, -2.28914, -0.671659, 4.65101, -7.90817, 2.38957, -1.0821, 0.428812, -1.81477, 0.257671, 2.39684, -0.261068, -3.00822, 3.69104, 0.106727, -7.29286, 0.391057, -2.08019, 6.54167, -5.09127, -3.6382, -1.61751, 8.72775, 4.50141}, {-0.630826, -5.80799, 0.630826, -0.387946, -0.481968, -1.21772, -0.883035, 0.3495, 0.883035, 1.06071, -1.80353, 0.544962, 1.7714, 0.130593, 6.63599, 1.57102, 0.163739, 0.413696, 4.36372, -4.22303, -4.36372, -5.81384, 7.05038, -2.59355, -0.831577, 2.82503, 0.831577, -0.219612, 1.79728, -1.7651}, {0.210275, 1.936, -0.210275, 1.16384, 1.4459, 3.65317, -0.883035, 0.3495, 0.883035, 1.06071, -1.80353, 0.544962, -0.621489, -9.54126, 2.6062, 5.10316, -1.23426, -3.11845, 0.831577, -2.82503, -0.831577, -1.57102, -0.163739, -0.413696, -5.0744, 10.0391, -1.34827, -0.219612, 1.79728, -1.7651}, {0.210275, 1.936, -0.210275, -0.387946, -0.481968, -1.21772, 2.64911, -1.0485, -2.64911, 1.06071, -1.80353, 0.544962, 0.219612, -1.79728, 1.7651, 3.1228, 2.09161, 5.28459, -0.00952469, -10.569, 0.00952469, -1.57102, -0.163739, -0.413696, -0.831577, 2.82503, 0.831577, -4.46243, 9.01139, -3.94495}, {0.210275, 1.936, -0.210275, -0.387946, -0.481968, -1.21772, -0.883035, 0.3495, 0.883035, -3.18212, 5.41059, -1.63489, 0.219612, -1.79728, 1.7651, 1.57102, 0.163739, 0.413696, 0.831577, -2.82503, -0.831577, -2.41212, -7.90772, 0.427406, 0.720206, 4.7529, 5.70247, 3.31253, 0.399276, -5.29724}, {-4.62915, 1.83443, 4.62655, 1.15731e-16, 1.13013e-15, 2.34313, -1.74201, -1.33137, 1.74389, 0.198956, 1.94285, -2.54483, -1.90731, 0.755828, -10.3625, 2.15324, 1.64567, -5.05183, 7.21395, 7.72698, -7.2249, -2.94906, -9.41706, 15.2312, -0.245923, -2.40149, 0.249326, 1.90731, -0.755828, 0.990019}, {1.54305, -0.611477, -1.54218, -3.38711e-15, -5.71373e-15, -7.02938, -1.74201, -1.33137, 1.74389, 0.198956, 1.94285, -2.54483, -8.07952, 3.20174, 5.17872, 9.12126, 6.97115, -12.0274, 0.245923, 2.40149, -0.249326, -2.15324, -1.64567, 5.05183, -1.04175, -10.1729, 10.4287, 1.90731, -0.755828, 0.990019}, {1.54305, -0.611477, -1.54218, 0, 0, 2.34313, 5.22602, 3.99411, -5.23168, 0.198956, 1.94285, -2.54483, -1.90731, 0.755828, -0.990019, 2.15324, 1.64567, -14.4243, -5.92628, 4.8474, 5.91941, -2.15324, -1.64567, 5.05183, -0.245923, -2.40149, 0.249326, 1.11149, -8.52722, 11.1694}, {1.54305, -0.611477, -1.54218, 1.15731e-16, 1.13013e-15, 2.34313, -1.74201, -1.33137, 1.74389, -0.596868, -5.82855, 7.6345, -1.90731, 0.755828, -0.990019, 2.15324, 1.64567, -5.05183, 0.245923, 2.40149, -0.249326, -8.32544, 0.800244, 11.2206, -0.245923, -2.40149, -9.12318, 8.87534, 4.56966, -5.98555}, {-4.62937, 1.83228, 4.62937, -1.60567, 0, 0, 0.198723, 1.94057, -0.198723, -0.136178, -1.32981, 1.74185, 6.49998, 0.754941, 1.90741, 1.73908, -2.39867, 0.245635, -2.94793, -9.40601, 2.94793, -1.19437, 7.71791, -7.21302, 2.15304, 1.64373, -2.15304, -0.0773091, -0.754941, -1.90741}, {1.54312, -0.61076, -1.54312, 4.817, 0, 0, 0.198723, 1.94057, -0.198723, -0.136178, -1.32981, 1.74185, -6.09519, 3.19798, 8.0799, 0.94419, -10.1609, 1.04052, -2.15304, -1.64373, 2.15304, -1.73908, 2.39867, -0.245635, 2.69775, 6.96297, -9.12042, -0.0773091, -0.754941, -1.90741}, {1.54312, -0.61076, -1.54312, -1.60567, 0, 0, -0.596168, -5.82171, 0.596168, -0.136178, -1.32981, 1.74185, 0.0773091, 0.754941, 1.90741, 8.16175, -2.39867, 0.245635, -8.32553, 0.799305, 8.32553, -1.73908, 2.39867, -0.245635, 2.15304, 1.64373, -2.15304, 0.467403, 4.5643, -8.87479}, {1.54312, -0.61076, -1.54312, -1.60567, 0, 0, 0.198723, 1.94057, -0.198723, 0.408534, 3.98943, -5.22554, 0.0773091, 0.754941, 1.90741, 1.73908, -2.39867, 0.245635, -2.15304, -1.64373, 2.15304, -7.91157, 4.84171, 5.92686, 8.57571, 1.64373, -2.15304, -0.872199, -8.51722, -1.11252}, {3.22749, -4.51945, -2.90569, 1.79579, -0.140217, 1.36925, 0.607375, 0.135762, -1.32575, -1.32734, -1.50203, -1.01206, -8.0731, -1.12793, -8.36668, -2.97048, 0.00550629, -0.0537701, -1.85046, -2.57298, 5.74449, 8.27985, 6.00261, 4.10202, -0.57904, 2.02993, -0.441503, 0.889927, 1.6888, 2.88969}, {-1.07583, 1.50648, 0.968563, -5.38738, 0.42065, -4.10774, 0.607375, 0.135762, -1.32575, -1.32734, -1.50203, -1.01206, 3.41339, -7.71473, -6.76394, -5.39998, -0.537542, 5.24921, 0.57904, -2.02993, 0.441503, 2.97048, -0.00550629, 0.0537701, 4.73032, 8.03804, 3.60675, 0.889927, 1.6888, 2.88969}, {-1.07583, 1.50648, 0.968563, 1.79579, -0.140217, 1.36925, -1.82213, -0.407286, 3.97724, -1.32734, -1.50203, -1.01206, -0.889927, -1.6888, -2.88969, -10.1537, 0.566373, -5.53076, 4.88236, -8.05586, -3.43275, 2.97048, -0.00550629, 0.0537701, -0.57904, 2.02993, -0.441503, 6.19929, 7.69691, 6.93795}, {-1.07583, 1.50648, 0.968563, 1.79579, -0.140217, 1.36925, 0.607375, 0.135762, -1.32575, 3.98202, 4.50609, 3.03619, -0.889927, -1.6888, -2.88969, -2.97048, 0.00550629, -0.0537701, 0.57904, -2.02993, 0.441503, 7.2738, -6.03144, -3.82048, -7.76222, 2.59079, -5.91849, -1.53958, 1.14575, 8.19268}, {0.596103, 2.3292, 5.82108, 0, -2.17235, 0, -1.54296, 0.977878, 0.61239, 1.74166, 1.97087, 1.32797, 0.245608, 12.3343, 2.39842, 1.9072, 1.47645, -0.756955, 8.32463, -4.16055, -0.808098, -8.87383, -9.35994, -4.55492, -2.15281, 0.249041, -1.64146, -0.245608, -3.64486, -2.39842}, {-0.198701, -0.7764, -1.94036, 0, 6.51705, 0, -1.54296, 0.977878, 0.61239, 1.74166, 1.97087, 1.32797, 1.04041, 6.75045, 10.1599, 8.07903, -2.43506, -3.20651, 2.15281, -0.249041, 1.64146, -1.9072, -1.47645, 0.756955, -9.11944, -7.63445, -6.95334, -0.245608, -3.64486, -2.39842}, {-0.198701, -0.7764, -1.94036, 0, -2.17235, 0, 4.62887, -2.93363, -1.83717, 1.74166, 1.97087, 1.32797, 0.245608, 3.64486, 2.39842, 1.9072, 10.1659, -0.756955, 2.94761, 2.85656, 9.4029, -1.9072, -1.47645, 0.756955, -2.15281, 0.249041, -1.64146, -7.21224, -11.5283, -7.71029}, {-0.198701, -0.7764, -1.94036, 0, -2.17235, 0, -1.54296, 0.977878, 0.61239, -5.22497, -5.91262, -3.98391, 0.245608, 3.64486, 2.39842, 1.9072, 1.47645, -0.756955, 2.15281, -0.249041, 1.64146, -1.1124, 1.62915, 8.51839, -2.15281, 8.93844, -1.64146, 5.92622, -7.55637, -4.84797}, {-2.37946, -3.79135, -6.81576, 0.894391, -1.25242, -0.805215, 0.086206, 0.865556, -0.85654, -1.77375, -0.876923, -0.610165, -5.66348, 4.99561, 1.40791, -1.21208, 0.478185, 2.05404, -1.43177, -6.09423, 1.67666, 8.30708, 3.02951, 0.386615, 1.08695, 2.63201, 1.74951, 2.08592, 0.0140506, 1.81295}, {0.793153, 1.26378, 2.27192, -2.68317, 3.75725, 2.41565, 0.086206, 0.865556, -0.85654, -1.77375, -0.876923, -0.610165, -5.25853, -5.06918, -10.9006, -1.55691, -2.98404, 5.4802, -1.08695, -2.63201, -1.74951, 1.21208, -0.478185, -2.05404, 8.18195, 6.1397, 4.19016, 2.08592, 0.0140506, 1.81295}, {0.793153, 1.26378, 2.27192, 0.894391, -1.25242, -0.805215, -0.258618, -2.59667, 2.56962, -1.77375, -0.876923, -0.610165, -2.08592, -0.0140506, -1.81295, -4.78965, 5.48785, 5.2749, -4.25956, -7.68714, -10.8372, 1.21208, -0.478185, -2.05404, 1.08695, 2.63201, 1.74951, 9.18092, 3.52174, 4.25361}, {0.793153, 1.26378, 2.27192, 0.894391, -1.25242, -0.805215, 0.086206, 0.865556, -0.85654, 5.32125, 2.63077, 1.83049, -2.08592, -0.0140506, -1.81295, -1.21208, 0.478185, 2.05404, -1.08695, -2.63201, -1.74951, -1.96053, -5.53332, -11.1417, -2.49062, 7.64167, 4.97037, 1.74109, -3.44817, 5.23911}, {4.58783, -0.200634, 4.23679, 1.50209, -0.951977, -0.596169, -2.69821, -0.462309, 1.0709, 2.7254, 1.34741, 0.937529, -5.97475, 4.90195, 4.86723, 1.47849, 1.74815, -0.586802, 16.0183, 2.33802, -3.86166, -12.3801, -7.13778, -3.16331, -5.22546, -0.48878, -0.421944, -0.0336074, -1.09404, -2.48256}, {-1.52928, 0.0668781, -1.41226, -4.50626, 2.85593, 1.78851, -2.69821, -0.462309, 1.0709, 2.7254, 1.34741, 0.937529, 6.15072, 0.82653, 8.1316, 12.2713, 3.59739, -4.87041, 5.22546, 0.48878, 0.421944, -1.47849, -1.74815, 0.586802, -16.1271, -5.87841, -4.17206, -0.0336074, -1.09404, -2.48256}, {-1.52928, 0.0668781, -1.41226, 1.50209, -0.951977, -0.596169, 8.09463, 1.38693, -3.21271, 2.7254, 1.34741, 0.937529, 0.0336074, 1.09404, 2.48256, -4.52987, 5.55606, 1.79787, 11.3426, 0.221267, 6.07099, -1.47849, -1.74815, 0.586802, -5.22546, -0.48878, -0.421944, -10.9352, -6.48367, -6.23267}, {-1.52928, 0.0668781, -1.41226, 1.50209, -0.951977, -0.596169, -2.69821, -0.462309, 1.0709, -8.1762, -4.04222, -2.81259, 0.0336074, 1.09404, 2.48256, 1.47849, 1.74815, -0.586802, 5.22546, 0.48878, 0.421944, 4.63862, -2.01567, 6.23585, -11.2338, 3.31913, 1.96273, 10.7592, 0.755194, -6.76616}, {1.83443, -2.90588, -4.62915, 0, -2.17235, 0, 1.94285, -0.797826, 0.198956, -1.33137, 2.00155, -1.74201, 0.755828, 10.1773, -1.90731, -2.40149, 3.67134, -0.245923, -9.41706, 2.98018, -2.94906, 7.72698, -11.6775, 7.21395, 1.64567, 0.211121, 2.15324, -0.755828, -1.48788, 1.90731}, {-0.611477, 0.968627, 1.54305, 0, 6.51705, 0, 1.94285, -0.797826, 0.198956, -1.33137, 2.00155, -1.74201, 3.20174, -2.38662, -8.07952, -10.1729, 6.86264, -1.04175, -1.64567, -0.211121, -2.15324, 2.40149, -3.67134, 0.245923, 6.97115, -7.79508, 9.12126, -0.755828, -1.48788, 1.90731}, {-0.611477, 0.968627, 1.54305, 0, -2.17235, 0, -5.82855, 2.39348, -0.596868, -1.33137, 2.00155, -1.74201, 0.755828, 1.48788, -1.90731, -2.40149, 12.3607, -0.245923, 0.800244, -4.08563, -8.32544, 2.40149, -3.67134, 0.245923, 1.64567, 0.211121, 2.15324, 4.56966, -9.49408, 8.87534}, {-0.611477, 0.968627, 1.54305, 0, -2.17235, 0, 1.94285, -0.797826, 0.198956, 3.99411, -6.00465, 5.22602, 0.755828, 1.48788, -1.90731, -2.40149, 3.67134, -0.245923, -1.64567, -0.211121, -2.15324, 4.8474, -7.54585, -5.92628, 1.64567, 8.90052, 2.15324, -8.52722, 1.70342, 1.11149}, {-3.96631, -0.406167, 1.83974, -1.35283, -0.138536, -1.77009, -0.9692, 1.50642, 1.075, 0.999931, -1.50327, 1.30834, 5.44932, 0.558033, 10.0263, 2.87019, -1.6908, 0.859181, 3.44059, -8.05506, -4.87073, -6.86992, 7.70388, -6.09254, 0.436211, 2.02938, 0.570751, -0.0379859, -0.00388992, -2.94596}, {1.3221, 0.135389, -0.613248, 4.0585, 0.415608, 5.31026, -0.9692, 1.50642, 1.075, 0.999931, -1.50327, 1.30834, -5.25042, -0.537666, 5.39896, 6.74699, -7.71647, -3.4408, -0.436211, -2.02938, -0.570751, -2.87019, 1.6908, -0.859181, -3.56351, 8.04247, -4.66261, -0.0379859, -0.00388992, -2.94596}, {1.3221, 0.135389, -0.613248, -1.35283, -0.138536, -1.77009, 2.9076, -4.51925, -3.22499, 0.999931, -1.50327, 1.30834, 0.0379859, 0.00388992, 2.94596, 8.28152, -1.13665, 7.93953, -5.72462, -2.57094, 1.88224, -2.87019, 1.6908, -0.859181, 0.436211, 2.02938, 0.570751, -4.03771, 6.00919, -8.17932}, {1.3221, 0.135389, -0.613248, -1.35283, -0.138536, -1.77009, -0.9692, 1.50642, 1.075, -2.99979, 4.50981, -3.92502, 0.0379859, 0.00388992, 2.94596, 2.87019, -1.6908, 0.859181, -0.436211, -2.02938, -0.570751, -8.1586, 1.14924, 1.59381, 5.84754, 2.58353, 7.6511, 3.83881, -6.02956, -7.24594}, {3.10069, 1.60532, -7.82452, 0.575383, -0.91145, -1.45197, 1.48006, -0.0647255, 1.36681, -1.02187, 1.51128, -2.52301, -1.73519, 5.43384, 4.37871, -2.54066, 1.20662, 0.105263, -6.47211, 1.00034, -10.3806, 6.62816, -7.25175, 9.9868, 0.551894, -0.741434, 4.91335, -0.566342, -1.78804, 1.42915}, {-1.03356, -0.535107, 2.60817, -1.72615, 2.73435, 4.3559, 1.48006, -0.0647255, 1.36681, -1.02187, 1.51128, -2.52301, 4.7006, 3.92847, -11.8619, -8.46088, 1.46552, -5.36196, -0.551894, 0.741434, -4.91335, 2.54066, -1.20662, -0.105263, 4.63939, -6.78657, 15.0054, -0.566342, -1.78804, 1.42915}, {-1.03356, -0.535107, 2.60817, 0.575383, -0.91145, -1.45197, -4.44017, 0.194177, -4.10042, -1.02187, 1.51128, -2.52301, 0.566342, 1.78804, -1.42915, -4.84219, 4.85242, 5.91313, 3.58236, 2.88186, -15.346, 2.54066, -1.20662, -0.105263, 0.551894, -0.741434, 4.91335, 3.52116, -7.83317, 11.5212}, {-1.03356, -0.535107, 2.60817, 0.575383, -0.91145, -1.45197, 1.48006, -0.0647255, 1.36681, 3.06562, -4.53385, 7.56904, 0.566342, 1.78804, -1.42915, -2.54066, 1.20662, 0.105263, -0.551894, 0.741434, -4.91335, 6.67491, 0.933809, -10.538, -1.74964, 2.90437, 10.7212, -6.48656, -1.52914, -4.03807}, {-2.63316, -2.47826, 0.36108, 0.802811, -1.2478, -0.890444, -2.35614, 1.42089, -0.657266, 0.675604, -0.999172, 1.66807, -5.2885, 5.51247, 4.8112, 1.92002, -0.213947, 1.91307, 11.252, -8.46096, 3.59026, -4.62243, 4.21063, -8.58536, -1.82742, 2.77741, -0.961199, 2.07725, -0.52127, -1.24942}, {0.877721, 0.826085, -0.12036, -2.40843, 3.7434, 2.67133, -2.35614, 1.42089, -0.657266, 0.675604, -0.999172, 1.66807, -5.58814, -2.78307, 1.73086, 11.3446, -5.8975, 4.54214, 1.82742, -2.77741, 0.961199, -1.92002, 0.213947, -1.91307, -4.52984, 6.7741, -7.63348, 2.07725, -0.52127, -1.24942}, {0.877721, 0.826085, -0.12036, 0.802811, -1.2478, -0.890444, 7.06841, -4.26266, 1.9718, 0.675604, -0.999172, 1.66807, -2.07725, 0.52127, 1.24942, -1.29123, 4.77726, 5.47485, -1.68346, -6.08175, 1.44264, -1.92002, 0.213947, -1.91307, -1.82742, 2.77741, -0.961199, -0.625163, 3.47542, -7.9217}, {0.877721, 0.826085, -0.12036, 0.802811, -1.2478, -0.890444, -2.35614, 1.42089, -0.657266, -2.02681, 2.99752, -5.00421, -2.07725, 0.52127, 1.24942, 1.92002, -0.213947, 1.91307, 1.82742, -2.77741, 0.961199, -5.4309, -3.09039, -1.43164, -5.03867, 7.76862, 2.60058, 11.5018, -6.20482, 1.37964}, {-0.815557, 4.36562, -0.135176, -1.95424, 0.460185, -0.243585, -0.0205487, 0.870319, -1.11219, 1.70294, 0.124702, 1.31071, 9.89652, -0.610825, 1.21973, 2.44098, -1.64459, 1.67583, -0.228434, -2.75832, 5.76778, -9.25274, 1.14578, -6.91867, 0.310628, -0.722961, -1.31904, -2.07955, -1.22991, -0.245392}, {0.271852, -1.45521, 0.0450587, 5.86273, -1.38055, 0.730756, -0.0205487, 0.870319, -1.11219, 1.70294, 0.124702, 1.31071, 0.99214, 7.05074, 0.0651576, 2.52317, -5.12587, 6.12457, -0.310628, 0.722961, 1.31904, -2.44098, 1.64459, -1.67583, -6.50113, -1.22177, -6.56189, -2.07955, -1.22991, -0.245392}, {0.271852, -1.45521, 0.0450587, -1.95424, 0.460185, -0.243585, 0.0616461, -2.61096, 3.33656, 1.70294, 0.124702, 1.31071, 2.07955, 1.22991, 0.245392, 10.258, -3.48533, 2.65017, -1.39804, 6.54379, 1.13881, -2.44098, 1.64459, -1.67583, 0.310628, -0.722961, -1.31904, -8.89131, -1.72872, -5.48824}, {0.271852, -1.45521, 0.0450587, -1.95424, 0.460185, -0.243585, -0.0205487, 0.870319, -1.11219, -5.10882, -0.374107, -3.93214, 2.07955, 1.22991, 0.245392, 2.44098, -1.64459, 1.67583, -0.310628, 0.722961, 1.31904, -3.52839, 7.46542, -1.85606, 8.1276, -2.5637, -0.344701, -1.99736, -4.71119, 4.20335}, {-2.82343, -2.82223, 1.11598, 0.652804, 0.651093, 1.763, 0.935946, -1.40658, 0.556196, -2.52989, -0.185258, -1.9472, -4.58144, -4.57199, -8.77136, -1.9638, 0.933829, -2.86668, -6.064, 6.20211, -2.45247, 12.0834, -0.192795, 10.6555, 2.32021, -0.575803, 0.227687, 1.97023, 1.96762, 1.71938}, {0.941145, 0.940742, -0.371993, -1.95841, -1.95328, -5.28899, 0.935946, -1.40658, 0.556196, -2.52989, -0.185258, -1.9472, -5.73481, -5.73058, -0.231403, -5.70759, 6.56014, -5.09146, -2.32021, 0.575803, -0.227687, 1.9638, -0.933829, 2.86668, 12.4398, 0.165231, 8.01649, 1.97023, 1.96762, 1.71938}, {0.941145, 0.940742, -0.371993, 0.652804, 0.651093, 1.763, -2.80784, 4.21973, -1.66859, -2.52989, -0.185258, -1.9472, -1.97023, -1.96762, -1.71938, -4.57502, -1.67054, -9.91867, -6.08479, -3.18716, 1.26029, 1.9638, -0.933829, 2.86668, 2.32021, -0.575803, 0.227687, 12.0898, 2.70865, 9.50817}, {0.941145, 0.940742, -0.371993, 0.652804, 0.651093, 1.763, 0.935946, -1.40658, 0.556196, 7.58968, 0.555775, 5.8416, -1.97023, -1.96762, -1.71938, -1.9638, 0.933829, -2.86668, -2.32021, 0.575803, -0.227687, -1.80078, -4.6968, 4.35465, -0.291002, -3.18018, -6.8243, -1.77356, 7.59392, -0.505409}, {4.38876, 6.50951, 0.486449, -0.364196, 1.94951, -0.0603643, 0.336809, -1.04259, -1.05295, 1.49031, 1.26291, 1.27547, 3.71522, -7.52572, 0.5165, 0.0338521, -1.12102, 1.37614, 0.0447138, 8.14114, 5.71377, -5.99508, -3.93064, -6.47801, -1.39195, -3.97078, -1.50195, -2.25844, -0.272335, -0.275043}, {-1.46292, -2.16984, -0.16215, 1.09259, -5.84854, 0.181093, 0.336809, -1.04259, -1.05295, 1.49031, 1.26291, 1.27547, 8.11012, 8.95169, 0.923642, -1.31338, 3.04934, 5.58796, 1.39195, 3.97078, 1.50195, -0.0338521, 1.12102, -1.37614, -7.35318, -9.02244, -6.60383, -2.25844, -0.272335, -0.275043}, {-1.46292, -2.16984, -0.16215, -0.364196, 1.94951, -0.0603643, -1.01043, 3.12777, 3.15886, 1.49031, 1.26291, 1.27547, 2.25844, 0.272335, 0.275043, 1.49064, -8.91908, 1.6176, 7.24363, 12.6501, 2.15055, -0.0338521, 1.12102, -1.37614, -1.39195, -3.97078, -1.50195, -8.21966, -5.32399, -5.37692}, {-1.46292, -2.16984, -0.16215, -0.364196, 1.94951, -0.0603643, 0.336809, -1.04259, -1.05295, -4.47092, -3.78874, -3.82641, 2.25844, 0.272335, 0.275043, 0.0338521, -1.12102, 1.37614, 1.39195, 3.97078, 1.50195, 5.81783, 9.80037, -0.727539, 0.0648337, -11.7688, -1.26049, -3.60567, 3.89803, 3.93678}, {-4.70136, 0, -3.55271e-15, -0.960805, 1.44394, -0.570969, 1.09021, -0.00626368, 2.02293, -1.69653, -1.43767, -1.45196, 3.09377, -7.56055, 2.98963, -0.159958, -1.77706, -1.79473, -7.6455, 0.0327971, -10.5922, 6.94608, 7.52775, 7.60258, 3.28465, -0.00774234, 2.50048, 0.749448, 1.7848, -0.705756}, {1.56712, -2.22045e-16, 1.11022e-15, 2.88242, -4.33181, 1.71291, 1.09021, -0.00626368, 2.02293, -1.69653, -1.43767, -1.45196, -7.01793, -1.7848, 0.705756, -4.52081, -1.75201, -9.88646, -3.28465, 0.00774234, -2.50048, 0.159958, 1.77706, 1.79473, 10.0708, 5.74295, 8.30834, 0.749448, 1.7848, -0.705756}, {1.56712, -8.88178e-16, -4.44089e-16, -0.960805, 1.44394, -0.570969, -3.27064, 0.018791, -6.0688, -1.69653, -1.43767, -1.45196, -0.749448, -1.7848, 0.705756, 3.68326, -7.5528, 0.489149, -9.55313, 0.00774234, -2.50048, 0.159958, 1.77706, 1.79473, 3.28465, -0.00774234, 2.50048, 7.53557, 7.53549, 5.1021}, {1.56712, 2.22045e-16, 2.22045e-16, -0.960805, 1.44394, -0.570969, 1.09021, -0.00626368, 2.02293, 5.08959, 4.31302, 4.35589, -0.749448, -1.7848, 0.705756, -0.159958, -1.77706, -1.79473, -3.28465, 0.00774234, -2.50048, -6.10853, 1.77706, 1.79473, 7.12787, -5.78349, 4.78436, -3.61141, 1.80986, -8.79749}}
]
- + total size : 6.8e+02kB
+ + total size : 6.3e+02kB
]
- + total size : 6.8e+02kB
+ + total size : 6.3e+02kB
]
Vector<double> [
+ id : grad_on_quad
+ size : 1364
+ nb_component : 6
+ allocated size : 1364
+ memory size : 64kB
- + values : {{13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}}
+ + values : {{13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}}
]
diff --git a/test/test_fem/test_gradient_tetrahedron_4.verified b/test/test_fem/test_gradient_tetrahedron_4.verified
index 0ac1a3b22..5e3228f55 100644
--- a/test/test_fem/test_gradient_tetrahedron_4.verified
+++ b/test/test_fem/test_gradient_tetrahedron_4.verified
@@ -1,181 +1,179 @@
Epsilon : 1e-12
FEM [
+ id : my_fem
+ element dimension : 3
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 131
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
+ ]
(not_ghost:_triangle_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 240
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{45, 49, 35}, {45, 8, 50}, {46, 38, 51}, {23, 47, 52}, {46, 50, 10}, {37, 49, 47}, {25, 52, 48}, {40, 48, 51}, {35, 49, 36}, {38, 39, 51}, {8, 9, 50}, {23, 52, 24}, {36, 49, 37}, {9, 10, 50}, {39, 40, 51}, {24, 52, 25}, {45, 44, 49}, {45, 50, 44}, {46, 44, 50}, {44, 47, 49}, {46, 51, 44}, {44, 52, 47}, {44, 51, 48}, {44, 48, 52}, {45, 35, 53}, {45, 53, 8}, {46, 54, 38}, {23, 55, 47}, {46, 10, 54}, {37, 47, 55}, {25, 48, 56}, {40, 56, 48}, {4, 37, 55}, {6, 53, 35}, {7, 54, 10}, {7, 38, 54}, {6, 8, 53}, {5, 56, 40}, {4, 55, 23}, {5, 25, 56}, {11, 62, 58}, {14, 63, 59}, {8, 64, 60}, {17, 65, 61}, {10, 58, 64}, {19, 60, 65}, {13, 59, 62}, {16, 61, 63}, {14, 15, 63}, {11, 12, 62}, {17, 18, 65}, {8, 9, 64}, {12, 13, 62}, {15, 16, 63}, {9, 10, 64}, {18, 19, 65}, {58, 62, 57}, {59, 57, 62}, {59, 63, 57}, {61, 57, 63}, {58, 57, 64}, {60, 64, 57}, {60, 57, 65}, {61, 65, 57}, {11, 58, 67}, {14, 59, 66}, {8, 60, 69}, {17, 61, 68}, {10, 67, 58}, {19, 69, 60}, {13, 66, 59}, {16, 68, 61}, {2, 68, 16}, {3, 66, 13}, {6, 69, 19}, {7, 67, 10}, {7, 11, 67}, {3, 14, 66}, {6, 8, 69}, {2, 17, 68}, {26, 75, 71}, {29, 76, 72}, {23, 77, 73}, {20, 78, 74}, {25, 71, 77}, {22, 73, 78}, {28, 72, 75}, {31, 74, 76}, {29, 30, 76}, {26, 27, 75}, {20, 21, 78}, {23, 24, 77}, {27, 28, 75}, {30, 31, 76}, {24, 25, 77}, {21, 22, 78}, {71, 75, 70}, {72, 70, 75}, {72, 76, 70}, {70, 76, 74}, {71, 70, 77}, {70, 73, 77}, {70, 78, 73}, {70, 74, 78}, {26, 71, 80}, {29, 72, 79}, {23, 73, 82}, {20, 74, 81}, {25, 80, 71}, {22, 82, 73}, {28, 79, 72}, {31, 81, 74}, {0, 81, 31}, {1, 79, 28}, {4, 82, 22}, {5, 80, 25}, {5, 26, 80}, {1, 29, 79}, {4, 23, 82}, {0, 20, 81}, {41, 84, 88}, {14, 89, 84}, {29, 86, 90}, {32, 91, 85}, {16, 85, 89}, {43, 88, 86}, {34, 87, 91}, {31, 90, 87}, {41, 88, 42}, {14, 15, 89}, {29, 90, 30}, {32, 33, 91}, {42, 88, 43}, {15, 16, 89}, {33, 34, 91}, {30, 90, 31}, {84, 89, 83}, {84, 83, 88}, {85, 83, 89}, {86, 88, 83}, {85, 91, 83}, {86, 83, 90}, {87, 90, 83}, {87, 83, 91}, {14, 84, 92}, {41, 92, 84}, {29, 94, 86}, {32, 85, 93}, {43, 86, 94}, {16, 93, 85}, {31, 87, 95}, {34, 95, 87}, {1, 43, 94}, {2, 93, 16}, {3, 92, 41}, {3, 14, 92}, {1, 94, 29}, {2, 32, 93}, {0, 31, 95}, {0, 95, 34}, {32, 97, 101}, {17, 102, 97}, {35, 103, 98}, {20, 99, 104}, {19, 98, 102}, {34, 101, 99}, {22, 104, 100}, {37, 100, 103}, {32, 101, 33}, {35, 36, 103}, {17, 18, 102}, {20, 104, 21}, {33, 101, 34}, {18, 19, 102}, {36, 37, 103}, {21, 104, 22}, {97, 96, 101}, {97, 102, 96}, {98, 96, 102}, {99, 101, 96}, {98, 103, 96}, {99, 96, 104}, {100, 96, 103}, {100, 104, 96}, {32, 105, 97}, {17, 97, 105}, {35, 98, 106}, {20, 107, 99}, {19, 106, 98}, {34, 99, 107}, {22, 100, 108}, {37, 108, 100}, {0, 34, 107}, {2, 105, 32}, {6, 106, 19}, {6, 35, 106}, {2, 17, 105}, {4, 108, 37}, {0, 107, 20}, {4, 22, 108}, {11, 110, 115}, {38, 114, 110}, {26, 116, 112}, {41, 111, 117}, {13, 115, 111}, {40, 112, 114}, {43, 117, 113}, {28, 113, 116}, {11, 115, 12}, {38, 39, 114}, {26, 27, 116}, {41, 117, 42}, {39, 40, 114}, {12, 115, 13}, {42, 117, 43}, {27, 28, 116}, {109, 110, 114}, {109, 115, 110}, {111, 115, 109}, {112, 109, 114}, {111, 109, 117}, {112, 116, 109}, {113, 109, 116}, {113, 117, 109}, {11, 118, 110}, {38, 110, 118}, {26, 112, 120}, {41, 119, 111}, {40, 120, 112}, {13, 111, 119}, {28, 121, 113}, {43, 113, 121}, {5, 120, 40}, {3, 13, 119}, {7, 38, 118}, {7, 118, 11}, {5, 26, 120}, {3, 119, 41}, {1, 121, 28}, {1, 43, 121}}
]
+ ]
(not_ghost:_tetrahedron_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_4
+ size : 341
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{124, 123, 125, 129}, {43, 86, 130, 88}, {70, 124, 129, 126}, {48, 77, 25, 52}, {31, 0, 81, 95}, {0, 107, 81, 95}, {126, 91, 87, 101}, {124, 70, 129, 125}, {43, 121, 113, 130}, {55, 100, 82, 108}, {100, 55, 82, 73}, {23, 55, 73, 82}, {71, 75, 125, 112}, {123, 44, 124, 125}, {43, 113, 117, 130}, {94, 43, 86, 130}, {122, 123, 128, 129}, {46, 10, 58, 50}, {99, 107, 81, 20}, {125, 112, 116, 109}, {79, 72, 28, 130}, {123, 122, 125, 129}, {67, 11, 7, 118}, {123, 127, 128, 129}, {124, 44, 49, 47}, {17, 65, 18, 102}, {76, 90, 30, 31}, {54, 10, 7, 67}, {9, 10, 50, 64}, {38, 54, 7, 118}, {123, 124, 127, 129}, {12, 115, 62, 13}, {97, 61, 102, 127}, {45, 53, 8, 69}, {38, 114, 39, 51}, {125, 75, 129, 116}, {122, 44, 123, 125}, {71, 70, 77, 124}, {114, 112, 125, 109}, {32, 93, 97, 85}, {53, 6, 8, 69}, {117, 128, 129, 109}, {63, 61, 16, 89}, {76, 90, 31, 74}, {61, 85, 16, 89}, {65, 123, 60, 98}, {55, 100, 47, 73}, {100, 47, 103, 37}, {96, 123, 103, 124}, {55, 23, 4, 82}, {78, 100, 22, 73}, {61, 85, 89, 127}, {61, 127, 89, 63}, {121, 43, 94, 130}, {108, 22, 82, 4}, {14, 92, 3, 66}, {78, 21, 104, 20}, {100, 78, 104, 124}, {14, 15, 89, 63}, {90, 126, 87, 74}, {90, 76, 126, 74}, {3, 13, 66, 119}, {108, 55, 4, 82}, {58, 11, 110, 62}, {11, 115, 110, 62}, {57, 123, 60, 65}, {122, 58, 110, 62}, {115, 122, 110, 62}, {117, 128, 88, 129}, {86, 129, 130, 88}, {70, 71, 125, 124}, {107, 0, 34, 95}, {122, 114, 125, 109}, {126, 86, 83, 129}, {92, 3, 66, 119}, {129, 86, 83, 88}, {128, 41, 119, 111}, {117, 128, 111, 41}, {11, 12, 115, 62}, {33, 32, 101, 91}, {70, 124, 126, 74}, {100, 124, 47, 73}, {96, 124, 126, 127}, {78, 70, 124, 73}, {90, 76, 30, 29}, {96, 123, 124, 127}, {15, 63, 16, 89}, {121, 79, 1, 28}, {76, 70, 126, 74}, {122, 114, 109, 110}, {129, 117, 130, 88}, {123, 44, 49, 124}, {26, 80, 5, 120}, {123, 65, 102, 98}, {57, 123, 127, 128}, {117, 128, 109, 111}, {70, 78, 124, 74}, {95, 107, 81, 87}, {55, 100, 37, 47}, {77, 24, 25, 52}, {100, 78, 22, 104}, {56, 71, 25, 48}, {14, 59, 89, 84}, {96, 100, 104, 124}, {2, 105, 68, 17}, {124, 123, 103, 49}, {123, 57, 60, 64}, {44, 124, 52, 47}, {71, 112, 48, 56}, {41, 117, 88, 42}, {99, 96, 126, 101}, {97, 85, 127, 101}, {34, 91, 101, 87}, {128, 127, 83, 129}, {126, 90, 83, 86}, {75, 71, 125, 70}, {99, 126, 74, 87}, {23, 55, 47, 73}, {100, 78, 124, 73}, {32, 91, 85, 101}, {57, 122, 62, 58}, {71, 77, 25, 48}, {70, 77, 124, 73}, {114, 38, 110, 51}, {114, 40, 39, 51}, {59, 14, 89, 63}, {53, 106, 35, 6}, {45, 123, 98, 60}, {99, 126, 87, 101}, {106, 53, 69, 6}, {46, 122, 110, 51}, {128, 122, 129, 109}, {124, 100, 47, 103}, {107, 99, 81, 87}, {125, 44, 48, 51}, {38, 46, 110, 51}, {44, 123, 49, 45}, {124, 47, 49, 103}, {36, 35, 49, 103}, {46, 122, 51, 44}, {54, 67, 7, 118}, {10, 64, 58, 50}, {122, 114, 51, 125}, {11, 58, 118, 67}, {44, 122, 51, 125}, {58, 11, 118, 110}, {22, 100, 82, 73}, {46, 122, 58, 110}, {108, 100, 82, 22}, {45, 60, 8, 50}, {99, 81, 74, 20}, {60, 45, 8, 69}, {75, 71, 26, 112}, {107, 0, 81, 20}, {126, 91, 83, 87}, {31, 90, 87, 74}, {34, 107, 95, 87}, {126, 96, 127, 101}, {91, 126, 127, 101}, {92, 14, 84, 66}, {105, 32, 2, 93}, {47, 49, 103, 37}, {115, 122, 109, 110}, {33, 91, 101, 34}, {49, 36, 103, 37}, {112, 71, 48, 125}, {59, 128, 89, 84}, {19, 65, 60, 98}, {124, 126, 127, 129}, {126, 91, 127, 83}, {31, 81, 74, 87}, {81, 99, 74, 87}, {117, 113, 129, 130}, {84, 128, 88, 41}, {113, 117, 129, 109}, {90, 76, 29, 86}, {65, 19, 102, 98}, {55, 100, 108, 37}, {96, 123, 102, 98}, {14, 59, 84, 66}, {100, 96, 103, 124}, {32, 105, 97, 93}, {99, 34, 101, 87}, {127, 126, 83, 129}, {94, 29, 130, 86}, {19, 106, 69, 6}, {128, 117, 88, 41}, {123, 96, 103, 98}, {46, 38, 110, 118}, {77, 23, 24, 52}, {19, 65, 102, 18}, {121, 79, 28, 130}, {46, 54, 38, 118}, {113, 121, 28, 130}, {108, 55, 37, 4}, {112, 75, 116, 26}, {56, 40, 5, 120}, {75, 27, 28, 116}, {127, 85, 89, 83}, {66, 59, 84, 128}, {85, 61, 97, 127}, {122, 125, 129, 109}, {26, 75, 116, 27}, {128, 129, 83, 88}, {122, 123, 57, 128}, {40, 112, 56, 48}, {80, 56, 25, 5}, {84, 128, 83, 88}, {91, 85, 127, 83}, {57, 61, 63, 127}, {123, 122, 64, 50}, {3, 92, 41, 119}, {44, 123, 45, 50}, {47, 124, 52, 73}, {79, 72, 130, 29}, {32, 85, 97, 101}, {2, 93, 16, 68}, {105, 93, 68, 97}, {97, 61, 68, 17}, {85, 91, 127, 101}, {96, 97, 127, 101}, {105, 97, 68, 17}, {124, 77, 52, 73}, {56, 71, 80, 25}, {60, 64, 8, 50}, {64, 9, 8, 50}, {65, 61, 102, 17}, {93, 105, 68, 2}, {61, 97, 102, 17}, {78, 21, 22, 104}, {23, 47, 52, 73}, {112, 40, 56, 120}, {80, 56, 5, 120}, {31, 95, 81, 87}, {99, 107, 34, 87}, {58, 46, 110, 118}, {43, 121, 94, 1}, {112, 75, 125, 116}, {122, 114, 110, 51}, {77, 23, 52, 73}, {90, 126, 83, 87}, {13, 66, 111, 59}, {111, 66, 13, 119}, {66, 128, 111, 59}, {111, 128, 66, 119}, {60, 50, 123, 64}, {123, 50, 60, 45}, {74, 104, 126, 99}, {104, 20, 74, 78}, {74, 20, 104, 99}, {45, 69, 106, 53}, {45, 106, 35, 53}, {35, 106, 45, 98}, {129, 116, 109, 125}, {109, 116, 129, 113}, {54, 10, 58, 46}, {58, 10, 54, 67}, {54, 58, 118, 46}, {118, 58, 54, 67}, {113, 129, 75, 116}, {28, 113, 75, 116}, {129, 75, 70, 72}, {129, 70, 75, 125}, {43, 117, 88, 130}, {88, 117, 43, 42}, {56, 112, 80, 71}, {56, 80, 112, 120}, {80, 112, 26, 71}, {80, 26, 112, 120}, {74, 124, 104, 78}, {74, 104, 124, 126}, {126, 104, 96, 99}, {96, 104, 126, 124}, {62, 128, 57, 59}, {57, 128, 62, 122}, {130, 29, 121, 79}, {121, 29, 130, 94}, {29, 1, 121, 79}, {121, 1, 29, 94}, {58, 50, 122, 46}, {122, 50, 58, 64}, {97, 93, 61, 85}, {97, 61, 93, 68}, {61, 93, 16, 85}, {61, 16, 93, 68}, {59, 89, 127, 63}, {127, 89, 59, 128}, {59, 127, 57, 63}, {57, 127, 59, 128}, {86, 76, 126, 90}, {86, 126, 76, 129}, {125, 51, 112, 114}, {112, 51, 125, 48}, {51, 40, 112, 114}, {112, 40, 51, 48}, {48, 124, 77, 52}, {44, 48, 124, 125}, {44, 124, 48, 52}, {61, 102, 123, 65}, {123, 102, 61, 127}, {61, 123, 57, 65}, {57, 123, 61, 127}, {106, 19, 60, 98}, {60, 19, 106, 69}, {106, 60, 45, 98}, {45, 60, 106, 69}, {122, 64, 57, 123}, {57, 64, 122, 58}, {76, 129, 70, 72}, {70, 129, 76, 126}, {84, 66, 119, 92}, {84, 119, 66, 128}, {41, 84, 119, 92}, {41, 119, 84, 128}, {124, 71, 48, 77}, {124, 48, 71, 125}, {128, 89, 83, 127}, {83, 89, 128, 84}, {111, 128, 62, 59}, {62, 111, 13, 115}, {13, 111, 62, 59}, {122, 50, 44, 46}, {44, 50, 122, 123}, {102, 127, 96, 97}, {96, 127, 102, 123}, {103, 123, 45, 49}, {103, 45, 123, 98}, {35, 103, 45, 49}, {35, 45, 103, 98}, {28, 130, 75, 113}, {75, 130, 28, 72}, {130, 129, 75, 113}, {75, 129, 130, 72}, {29, 130, 76, 72}, {76, 130, 29, 86}, {130, 129, 76, 72}, {76, 129, 130, 86}, {62, 111, 122, 128}, {122, 111, 62, 115}, {111, 109, 122, 128}, {122, 109, 111, 115}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 131
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
+ ]
(not_ghost:_triangle_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 240
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{45, 49, 35}, {45, 8, 50}, {46, 38, 51}, {23, 47, 52}, {46, 50, 10}, {37, 49, 47}, {25, 52, 48}, {40, 48, 51}, {35, 49, 36}, {38, 39, 51}, {8, 9, 50}, {23, 52, 24}, {36, 49, 37}, {9, 10, 50}, {39, 40, 51}, {24, 52, 25}, {45, 44, 49}, {45, 50, 44}, {46, 44, 50}, {44, 47, 49}, {46, 51, 44}, {44, 52, 47}, {44, 51, 48}, {44, 48, 52}, {45, 35, 53}, {45, 53, 8}, {46, 54, 38}, {23, 55, 47}, {46, 10, 54}, {37, 47, 55}, {25, 48, 56}, {40, 56, 48}, {4, 37, 55}, {6, 53, 35}, {7, 54, 10}, {7, 38, 54}, {6, 8, 53}, {5, 56, 40}, {4, 55, 23}, {5, 25, 56}, {11, 62, 58}, {14, 63, 59}, {8, 64, 60}, {17, 65, 61}, {10, 58, 64}, {19, 60, 65}, {13, 59, 62}, {16, 61, 63}, {14, 15, 63}, {11, 12, 62}, {17, 18, 65}, {8, 9, 64}, {12, 13, 62}, {15, 16, 63}, {9, 10, 64}, {18, 19, 65}, {58, 62, 57}, {59, 57, 62}, {59, 63, 57}, {61, 57, 63}, {58, 57, 64}, {60, 64, 57}, {60, 57, 65}, {61, 65, 57}, {11, 58, 67}, {14, 59, 66}, {8, 60, 69}, {17, 61, 68}, {10, 67, 58}, {19, 69, 60}, {13, 66, 59}, {16, 68, 61}, {2, 68, 16}, {3, 66, 13}, {6, 69, 19}, {7, 67, 10}, {7, 11, 67}, {3, 14, 66}, {6, 8, 69}, {2, 17, 68}, {26, 75, 71}, {29, 76, 72}, {23, 77, 73}, {20, 78, 74}, {25, 71, 77}, {22, 73, 78}, {28, 72, 75}, {31, 74, 76}, {29, 30, 76}, {26, 27, 75}, {20, 21, 78}, {23, 24, 77}, {27, 28, 75}, {30, 31, 76}, {24, 25, 77}, {21, 22, 78}, {71, 75, 70}, {72, 70, 75}, {72, 76, 70}, {70, 76, 74}, {71, 70, 77}, {70, 73, 77}, {70, 78, 73}, {70, 74, 78}, {26, 71, 80}, {29, 72, 79}, {23, 73, 82}, {20, 74, 81}, {25, 80, 71}, {22, 82, 73}, {28, 79, 72}, {31, 81, 74}, {0, 81, 31}, {1, 79, 28}, {4, 82, 22}, {5, 80, 25}, {5, 26, 80}, {1, 29, 79}, {4, 23, 82}, {0, 20, 81}, {41, 84, 88}, {14, 89, 84}, {29, 86, 90}, {32, 91, 85}, {16, 85, 89}, {43, 88, 86}, {34, 87, 91}, {31, 90, 87}, {41, 88, 42}, {14, 15, 89}, {29, 90, 30}, {32, 33, 91}, {42, 88, 43}, {15, 16, 89}, {33, 34, 91}, {30, 90, 31}, {84, 89, 83}, {84, 83, 88}, {85, 83, 89}, {86, 88, 83}, {85, 91, 83}, {86, 83, 90}, {87, 90, 83}, {87, 83, 91}, {14, 84, 92}, {41, 92, 84}, {29, 94, 86}, {32, 85, 93}, {43, 86, 94}, {16, 93, 85}, {31, 87, 95}, {34, 95, 87}, {1, 43, 94}, {2, 93, 16}, {3, 92, 41}, {3, 14, 92}, {1, 94, 29}, {2, 32, 93}, {0, 31, 95}, {0, 95, 34}, {32, 97, 101}, {17, 102, 97}, {35, 103, 98}, {20, 99, 104}, {19, 98, 102}, {34, 101, 99}, {22, 104, 100}, {37, 100, 103}, {32, 101, 33}, {35, 36, 103}, {17, 18, 102}, {20, 104, 21}, {33, 101, 34}, {18, 19, 102}, {36, 37, 103}, {21, 104, 22}, {97, 96, 101}, {97, 102, 96}, {98, 96, 102}, {99, 101, 96}, {98, 103, 96}, {99, 96, 104}, {100, 96, 103}, {100, 104, 96}, {32, 105, 97}, {17, 97, 105}, {35, 98, 106}, {20, 107, 99}, {19, 106, 98}, {34, 99, 107}, {22, 100, 108}, {37, 108, 100}, {0, 34, 107}, {2, 105, 32}, {6, 106, 19}, {6, 35, 106}, {2, 17, 105}, {4, 108, 37}, {0, 107, 20}, {4, 22, 108}, {11, 110, 115}, {38, 114, 110}, {26, 116, 112}, {41, 111, 117}, {13, 115, 111}, {40, 112, 114}, {43, 117, 113}, {28, 113, 116}, {11, 115, 12}, {38, 39, 114}, {26, 27, 116}, {41, 117, 42}, {39, 40, 114}, {12, 115, 13}, {42, 117, 43}, {27, 28, 116}, {109, 110, 114}, {109, 115, 110}, {111, 115, 109}, {112, 109, 114}, {111, 109, 117}, {112, 116, 109}, {113, 109, 116}, {113, 117, 109}, {11, 118, 110}, {38, 110, 118}, {26, 112, 120}, {41, 119, 111}, {40, 120, 112}, {13, 111, 119}, {28, 121, 113}, {43, 113, 121}, {5, 120, 40}, {3, 13, 119}, {7, 38, 118}, {7, 118, 11}, {5, 26, 120}, {3, 119, 41}, {1, 121, 28}, {1, 43, 121}}
]
+ ]
(not_ghost:_tetrahedron_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_4
+ size : 341
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{124, 123, 125, 129}, {43, 86, 130, 88}, {70, 124, 129, 126}, {48, 77, 25, 52}, {31, 0, 81, 95}, {0, 107, 81, 95}, {126, 91, 87, 101}, {124, 70, 129, 125}, {43, 121, 113, 130}, {55, 100, 82, 108}, {100, 55, 82, 73}, {23, 55, 73, 82}, {71, 75, 125, 112}, {123, 44, 124, 125}, {43, 113, 117, 130}, {94, 43, 86, 130}, {122, 123, 128, 129}, {46, 10, 58, 50}, {99, 107, 81, 20}, {125, 112, 116, 109}, {79, 72, 28, 130}, {123, 122, 125, 129}, {67, 11, 7, 118}, {123, 127, 128, 129}, {124, 44, 49, 47}, {17, 65, 18, 102}, {76, 90, 30, 31}, {54, 10, 7, 67}, {9, 10, 50, 64}, {38, 54, 7, 118}, {123, 124, 127, 129}, {12, 115, 62, 13}, {97, 61, 102, 127}, {45, 53, 8, 69}, {38, 114, 39, 51}, {125, 75, 129, 116}, {122, 44, 123, 125}, {71, 70, 77, 124}, {114, 112, 125, 109}, {32, 93, 97, 85}, {53, 6, 8, 69}, {117, 128, 129, 109}, {63, 61, 16, 89}, {76, 90, 31, 74}, {61, 85, 16, 89}, {65, 123, 60, 98}, {55, 100, 47, 73}, {100, 47, 103, 37}, {96, 123, 103, 124}, {55, 23, 4, 82}, {78, 100, 22, 73}, {61, 85, 89, 127}, {61, 127, 89, 63}, {121, 43, 94, 130}, {108, 22, 82, 4}, {14, 92, 3, 66}, {78, 21, 104, 20}, {100, 78, 104, 124}, {14, 15, 89, 63}, {90, 126, 87, 74}, {90, 76, 126, 74}, {3, 13, 66, 119}, {108, 55, 4, 82}, {58, 11, 110, 62}, {11, 115, 110, 62}, {57, 123, 60, 65}, {122, 58, 110, 62}, {115, 122, 110, 62}, {117, 128, 88, 129}, {86, 129, 130, 88}, {70, 71, 125, 124}, {107, 0, 34, 95}, {122, 114, 125, 109}, {126, 86, 83, 129}, {92, 3, 66, 119}, {129, 86, 83, 88}, {128, 41, 119, 111}, {117, 128, 111, 41}, {11, 12, 115, 62}, {33, 32, 101, 91}, {70, 124, 126, 74}, {100, 124, 47, 73}, {96, 124, 126, 127}, {78, 70, 124, 73}, {90, 76, 30, 29}, {96, 123, 124, 127}, {15, 63, 16, 89}, {121, 79, 1, 28}, {76, 70, 126, 74}, {122, 114, 109, 110}, {129, 117, 130, 88}, {123, 44, 49, 124}, {26, 80, 5, 120}, {123, 65, 102, 98}, {57, 123, 127, 128}, {117, 128, 109, 111}, {70, 78, 124, 74}, {95, 107, 81, 87}, {55, 100, 37, 47}, {77, 24, 25, 52}, {100, 78, 22, 104}, {56, 71, 25, 48}, {14, 59, 89, 84}, {96, 100, 104, 124}, {2, 105, 68, 17}, {124, 123, 103, 49}, {123, 57, 60, 64}, {44, 124, 52, 47}, {71, 112, 48, 56}, {41, 117, 88, 42}, {99, 96, 126, 101}, {97, 85, 127, 101}, {34, 91, 101, 87}, {128, 127, 83, 129}, {126, 90, 83, 86}, {75, 71, 125, 70}, {99, 126, 74, 87}, {23, 55, 47, 73}, {100, 78, 124, 73}, {32, 91, 85, 101}, {57, 122, 62, 58}, {71, 77, 25, 48}, {70, 77, 124, 73}, {114, 38, 110, 51}, {114, 40, 39, 51}, {59, 14, 89, 63}, {53, 106, 35, 6}, {45, 123, 98, 60}, {99, 126, 87, 101}, {106, 53, 69, 6}, {46, 122, 110, 51}, {128, 122, 129, 109}, {124, 100, 47, 103}, {107, 99, 81, 87}, {125, 44, 48, 51}, {38, 46, 110, 51}, {44, 123, 49, 45}, {124, 47, 49, 103}, {36, 35, 49, 103}, {46, 122, 51, 44}, {54, 67, 7, 118}, {10, 64, 58, 50}, {122, 114, 51, 125}, {11, 58, 118, 67}, {44, 122, 51, 125}, {58, 11, 118, 110}, {22, 100, 82, 73}, {46, 122, 58, 110}, {108, 100, 82, 22}, {45, 60, 8, 50}, {99, 81, 74, 20}, {60, 45, 8, 69}, {75, 71, 26, 112}, {107, 0, 81, 20}, {126, 91, 83, 87}, {31, 90, 87, 74}, {34, 107, 95, 87}, {126, 96, 127, 101}, {91, 126, 127, 101}, {92, 14, 84, 66}, {105, 32, 2, 93}, {47, 49, 103, 37}, {115, 122, 109, 110}, {33, 91, 101, 34}, {49, 36, 103, 37}, {112, 71, 48, 125}, {59, 128, 89, 84}, {19, 65, 60, 98}, {124, 126, 127, 129}, {126, 91, 127, 83}, {31, 81, 74, 87}, {81, 99, 74, 87}, {117, 113, 129, 130}, {84, 128, 88, 41}, {113, 117, 129, 109}, {90, 76, 29, 86}, {65, 19, 102, 98}, {55, 100, 108, 37}, {96, 123, 102, 98}, {14, 59, 84, 66}, {100, 96, 103, 124}, {32, 105, 97, 93}, {99, 34, 101, 87}, {127, 126, 83, 129}, {94, 29, 130, 86}, {19, 106, 69, 6}, {128, 117, 88, 41}, {123, 96, 103, 98}, {46, 38, 110, 118}, {77, 23, 24, 52}, {19, 65, 102, 18}, {121, 79, 28, 130}, {46, 54, 38, 118}, {113, 121, 28, 130}, {108, 55, 37, 4}, {112, 75, 116, 26}, {56, 40, 5, 120}, {75, 27, 28, 116}, {127, 85, 89, 83}, {66, 59, 84, 128}, {85, 61, 97, 127}, {122, 125, 129, 109}, {26, 75, 116, 27}, {128, 129, 83, 88}, {122, 123, 57, 128}, {40, 112, 56, 48}, {80, 56, 25, 5}, {84, 128, 83, 88}, {91, 85, 127, 83}, {57, 61, 63, 127}, {123, 122, 64, 50}, {3, 92, 41, 119}, {44, 123, 45, 50}, {47, 124, 52, 73}, {79, 72, 130, 29}, {32, 85, 97, 101}, {2, 93, 16, 68}, {105, 93, 68, 97}, {97, 61, 68, 17}, {85, 91, 127, 101}, {96, 97, 127, 101}, {105, 97, 68, 17}, {124, 77, 52, 73}, {56, 71, 80, 25}, {60, 64, 8, 50}, {64, 9, 8, 50}, {65, 61, 102, 17}, {93, 105, 68, 2}, {61, 97, 102, 17}, {78, 21, 22, 104}, {23, 47, 52, 73}, {112, 40, 56, 120}, {80, 56, 5, 120}, {31, 95, 81, 87}, {99, 107, 34, 87}, {58, 46, 110, 118}, {43, 121, 94, 1}, {112, 75, 125, 116}, {122, 114, 110, 51}, {77, 23, 52, 73}, {90, 126, 83, 87}, {13, 66, 111, 59}, {111, 66, 13, 119}, {66, 128, 111, 59}, {111, 128, 66, 119}, {60, 50, 123, 64}, {123, 50, 60, 45}, {74, 104, 126, 99}, {104, 20, 74, 78}, {74, 20, 104, 99}, {45, 69, 106, 53}, {45, 106, 35, 53}, {35, 106, 45, 98}, {129, 116, 109, 125}, {109, 116, 129, 113}, {54, 10, 58, 46}, {58, 10, 54, 67}, {54, 58, 118, 46}, {118, 58, 54, 67}, {113, 129, 75, 116}, {28, 113, 75, 116}, {129, 75, 70, 72}, {129, 70, 75, 125}, {43, 117, 88, 130}, {88, 117, 43, 42}, {56, 112, 80, 71}, {56, 80, 112, 120}, {80, 112, 26, 71}, {80, 26, 112, 120}, {74, 124, 104, 78}, {74, 104, 124, 126}, {126, 104, 96, 99}, {96, 104, 126, 124}, {62, 128, 57, 59}, {57, 128, 62, 122}, {130, 29, 121, 79}, {121, 29, 130, 94}, {29, 1, 121, 79}, {121, 1, 29, 94}, {58, 50, 122, 46}, {122, 50, 58, 64}, {97, 93, 61, 85}, {97, 61, 93, 68}, {61, 93, 16, 85}, {61, 16, 93, 68}, {59, 89, 127, 63}, {127, 89, 59, 128}, {59, 127, 57, 63}, {57, 127, 59, 128}, {86, 76, 126, 90}, {86, 126, 76, 129}, {125, 51, 112, 114}, {112, 51, 125, 48}, {51, 40, 112, 114}, {112, 40, 51, 48}, {48, 124, 77, 52}, {44, 48, 124, 125}, {44, 124, 48, 52}, {61, 102, 123, 65}, {123, 102, 61, 127}, {61, 123, 57, 65}, {57, 123, 61, 127}, {106, 19, 60, 98}, {60, 19, 106, 69}, {106, 60, 45, 98}, {45, 60, 106, 69}, {122, 64, 57, 123}, {57, 64, 122, 58}, {76, 129, 70, 72}, {70, 129, 76, 126}, {84, 66, 119, 92}, {84, 119, 66, 128}, {41, 84, 119, 92}, {41, 119, 84, 128}, {124, 71, 48, 77}, {124, 48, 71, 125}, {128, 89, 83, 127}, {83, 89, 128, 84}, {111, 128, 62, 59}, {62, 111, 13, 115}, {13, 111, 62, 59}, {122, 50, 44, 46}, {44, 50, 122, 123}, {102, 127, 96, 97}, {96, 127, 102, 123}, {103, 123, 45, 49}, {103, 45, 123, 98}, {35, 103, 45, 49}, {35, 45, 103, 98}, {28, 130, 75, 113}, {75, 130, 28, 72}, {130, 129, 75, 113}, {75, 129, 130, 72}, {29, 130, 76, 72}, {76, 130, 29, 86}, {130, 129, 76, 72}, {76, 129, 130, 86}, {62, 111, 122, 128}, {122, 111, 62, 115}, {111, 109, 122, 128}, {122, 109, 111, 115}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 8
+ + nb vectors : 7
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_4
+ size : 341
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{124, 123, 125, 129}, {43, 86, 130, 88}, {70, 124, 129, 126}, {48, 77, 25, 52}, {31, 0, 81, 95}, {0, 107, 81, 95}, {126, 91, 87, 101}, {124, 70, 129, 125}, {43, 121, 113, 130}, {55, 100, 82, 108}, {100, 55, 82, 73}, {23, 55, 73, 82}, {71, 75, 125, 112}, {123, 44, 124, 125}, {43, 113, 117, 130}, {94, 43, 86, 130}, {122, 123, 128, 129}, {46, 10, 58, 50}, {99, 107, 81, 20}, {125, 112, 116, 109}, {79, 72, 28, 130}, {123, 122, 125, 129}, {67, 11, 7, 118}, {123, 127, 128, 129}, {124, 44, 49, 47}, {17, 65, 18, 102}, {76, 90, 30, 31}, {54, 10, 7, 67}, {9, 10, 50, 64}, {38, 54, 7, 118}, {123, 124, 127, 129}, {12, 115, 62, 13}, {97, 61, 102, 127}, {45, 53, 8, 69}, {38, 114, 39, 51}, {125, 75, 129, 116}, {122, 44, 123, 125}, {71, 70, 77, 124}, {114, 112, 125, 109}, {32, 93, 97, 85}, {53, 6, 8, 69}, {117, 128, 129, 109}, {63, 61, 16, 89}, {76, 90, 31, 74}, {61, 85, 16, 89}, {65, 123, 60, 98}, {55, 100, 47, 73}, {100, 47, 103, 37}, {96, 123, 103, 124}, {55, 23, 4, 82}, {78, 100, 22, 73}, {61, 85, 89, 127}, {61, 127, 89, 63}, {121, 43, 94, 130}, {108, 22, 82, 4}, {14, 92, 3, 66}, {78, 21, 104, 20}, {100, 78, 104, 124}, {14, 15, 89, 63}, {90, 126, 87, 74}, {90, 76, 126, 74}, {3, 13, 66, 119}, {108, 55, 4, 82}, {58, 11, 110, 62}, {11, 115, 110, 62}, {57, 123, 60, 65}, {122, 58, 110, 62}, {115, 122, 110, 62}, {117, 128, 88, 129}, {86, 129, 130, 88}, {70, 71, 125, 124}, {107, 0, 34, 95}, {122, 114, 125, 109}, {126, 86, 83, 129}, {92, 3, 66, 119}, {129, 86, 83, 88}, {128, 41, 119, 111}, {117, 128, 111, 41}, {11, 12, 115, 62}, {33, 32, 101, 91}, {70, 124, 126, 74}, {100, 124, 47, 73}, {96, 124, 126, 127}, {78, 70, 124, 73}, {90, 76, 30, 29}, {96, 123, 124, 127}, {15, 63, 16, 89}, {121, 79, 1, 28}, {76, 70, 126, 74}, {122, 114, 109, 110}, {129, 117, 130, 88}, {123, 44, 49, 124}, {26, 80, 5, 120}, {123, 65, 102, 98}, {57, 123, 127, 128}, {117, 128, 109, 111}, {70, 78, 124, 74}, {95, 107, 81, 87}, {55, 100, 37, 47}, {77, 24, 25, 52}, {100, 78, 22, 104}, {56, 71, 25, 48}, {14, 59, 89, 84}, {96, 100, 104, 124}, {2, 105, 68, 17}, {124, 123, 103, 49}, {123, 57, 60, 64}, {44, 124, 52, 47}, {71, 112, 48, 56}, {41, 117, 88, 42}, {99, 96, 126, 101}, {97, 85, 127, 101}, {34, 91, 101, 87}, {128, 127, 83, 129}, {126, 90, 83, 86}, {75, 71, 125, 70}, {99, 126, 74, 87}, {23, 55, 47, 73}, {100, 78, 124, 73}, {32, 91, 85, 101}, {57, 122, 62, 58}, {71, 77, 25, 48}, {70, 77, 124, 73}, {114, 38, 110, 51}, {114, 40, 39, 51}, {59, 14, 89, 63}, {53, 106, 35, 6}, {45, 123, 98, 60}, {99, 126, 87, 101}, {106, 53, 69, 6}, {46, 122, 110, 51}, {128, 122, 129, 109}, {124, 100, 47, 103}, {107, 99, 81, 87}, {125, 44, 48, 51}, {38, 46, 110, 51}, {44, 123, 49, 45}, {124, 47, 49, 103}, {36, 35, 49, 103}, {46, 122, 51, 44}, {54, 67, 7, 118}, {10, 64, 58, 50}, {122, 114, 51, 125}, {11, 58, 118, 67}, {44, 122, 51, 125}, {58, 11, 118, 110}, {22, 100, 82, 73}, {46, 122, 58, 110}, {108, 100, 82, 22}, {45, 60, 8, 50}, {99, 81, 74, 20}, {60, 45, 8, 69}, {75, 71, 26, 112}, {107, 0, 81, 20}, {126, 91, 83, 87}, {31, 90, 87, 74}, {34, 107, 95, 87}, {126, 96, 127, 101}, {91, 126, 127, 101}, {92, 14, 84, 66}, {105, 32, 2, 93}, {47, 49, 103, 37}, {115, 122, 109, 110}, {33, 91, 101, 34}, {49, 36, 103, 37}, {112, 71, 48, 125}, {59, 128, 89, 84}, {19, 65, 60, 98}, {124, 126, 127, 129}, {126, 91, 127, 83}, {31, 81, 74, 87}, {81, 99, 74, 87}, {117, 113, 129, 130}, {84, 128, 88, 41}, {113, 117, 129, 109}, {90, 76, 29, 86}, {65, 19, 102, 98}, {55, 100, 108, 37}, {96, 123, 102, 98}, {14, 59, 84, 66}, {100, 96, 103, 124}, {32, 105, 97, 93}, {99, 34, 101, 87}, {127, 126, 83, 129}, {94, 29, 130, 86}, {19, 106, 69, 6}, {128, 117, 88, 41}, {123, 96, 103, 98}, {46, 38, 110, 118}, {77, 23, 24, 52}, {19, 65, 102, 18}, {121, 79, 28, 130}, {46, 54, 38, 118}, {113, 121, 28, 130}, {108, 55, 37, 4}, {112, 75, 116, 26}, {56, 40, 5, 120}, {75, 27, 28, 116}, {127, 85, 89, 83}, {66, 59, 84, 128}, {85, 61, 97, 127}, {122, 125, 129, 109}, {26, 75, 116, 27}, {128, 129, 83, 88}, {122, 123, 57, 128}, {40, 112, 56, 48}, {80, 56, 25, 5}, {84, 128, 83, 88}, {91, 85, 127, 83}, {57, 61, 63, 127}, {123, 122, 64, 50}, {3, 92, 41, 119}, {44, 123, 45, 50}, {47, 124, 52, 73}, {79, 72, 130, 29}, {32, 85, 97, 101}, {2, 93, 16, 68}, {105, 93, 68, 97}, {97, 61, 68, 17}, {85, 91, 127, 101}, {96, 97, 127, 101}, {105, 97, 68, 17}, {124, 77, 52, 73}, {56, 71, 80, 25}, {60, 64, 8, 50}, {64, 9, 8, 50}, {65, 61, 102, 17}, {93, 105, 68, 2}, {61, 97, 102, 17}, {78, 21, 22, 104}, {23, 47, 52, 73}, {112, 40, 56, 120}, {80, 56, 5, 120}, {31, 95, 81, 87}, {99, 107, 34, 87}, {58, 46, 110, 118}, {43, 121, 94, 1}, {112, 75, 125, 116}, {122, 114, 110, 51}, {77, 23, 52, 73}, {90, 126, 83, 87}, {13, 66, 111, 59}, {111, 66, 13, 119}, {66, 128, 111, 59}, {111, 128, 66, 119}, {60, 50, 123, 64}, {123, 50, 60, 45}, {74, 104, 126, 99}, {104, 20, 74, 78}, {74, 20, 104, 99}, {45, 69, 106, 53}, {45, 106, 35, 53}, {35, 106, 45, 98}, {129, 116, 109, 125}, {109, 116, 129, 113}, {54, 10, 58, 46}, {58, 10, 54, 67}, {54, 58, 118, 46}, {118, 58, 54, 67}, {113, 129, 75, 116}, {28, 113, 75, 116}, {129, 75, 70, 72}, {129, 70, 75, 125}, {43, 117, 88, 130}, {88, 117, 43, 42}, {56, 112, 80, 71}, {56, 80, 112, 120}, {80, 112, 26, 71}, {80, 26, 112, 120}, {74, 124, 104, 78}, {74, 104, 124, 126}, {126, 104, 96, 99}, {96, 104, 126, 124}, {62, 128, 57, 59}, {57, 128, 62, 122}, {130, 29, 121, 79}, {121, 29, 130, 94}, {29, 1, 121, 79}, {121, 1, 29, 94}, {58, 50, 122, 46}, {122, 50, 58, 64}, {97, 93, 61, 85}, {97, 61, 93, 68}, {61, 93, 16, 85}, {61, 16, 93, 68}, {59, 89, 127, 63}, {127, 89, 59, 128}, {59, 127, 57, 63}, {57, 127, 59, 128}, {86, 76, 126, 90}, {86, 126, 76, 129}, {125, 51, 112, 114}, {112, 51, 125, 48}, {51, 40, 112, 114}, {112, 40, 51, 48}, {48, 124, 77, 52}, {44, 48, 124, 125}, {44, 124, 48, 52}, {61, 102, 123, 65}, {123, 102, 61, 127}, {61, 123, 57, 65}, {57, 123, 61, 127}, {106, 19, 60, 98}, {60, 19, 106, 69}, {106, 60, 45, 98}, {45, 60, 106, 69}, {122, 64, 57, 123}, {57, 64, 122, 58}, {76, 129, 70, 72}, {70, 129, 76, 126}, {84, 66, 119, 92}, {84, 119, 66, 128}, {41, 84, 119, 92}, {41, 119, 84, 128}, {124, 71, 48, 77}, {124, 48, 71, 125}, {128, 89, 83, 127}, {83, 89, 128, 84}, {111, 128, 62, 59}, {62, 111, 13, 115}, {13, 111, 62, 59}, {122, 50, 44, 46}, {44, 50, 122, 123}, {102, 127, 96, 97}, {96, 127, 102, 123}, {103, 123, 45, 49}, {103, 45, 123, 98}, {35, 103, 45, 49}, {35, 45, 103, 98}, {28, 130, 75, 113}, {75, 130, 28, 72}, {130, 129, 75, 113}, {75, 129, 130, 72}, {29, 130, 76, 72}, {76, 130, 29, 86}, {130, 129, 76, 72}, {76, 129, 130, 86}, {62, 111, 122, 128}, {122, 111, 62, 115}, {111, 109, 122, 128}, {122, 109, 111, 115}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 240
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{45, 49, 35}, {45, 8, 50}, {46, 38, 51}, {23, 47, 52}, {46, 50, 10}, {37, 49, 47}, {25, 52, 48}, {40, 48, 51}, {35, 49, 36}, {38, 39, 51}, {8, 9, 50}, {23, 52, 24}, {36, 49, 37}, {9, 10, 50}, {39, 40, 51}, {24, 52, 25}, {45, 44, 49}, {45, 50, 44}, {46, 44, 50}, {44, 47, 49}, {46, 51, 44}, {44, 52, 47}, {44, 51, 48}, {44, 48, 52}, {45, 35, 53}, {45, 53, 8}, {46, 54, 38}, {23, 55, 47}, {46, 10, 54}, {37, 47, 55}, {25, 48, 56}, {40, 56, 48}, {4, 37, 55}, {6, 53, 35}, {7, 54, 10}, {7, 38, 54}, {6, 8, 53}, {5, 56, 40}, {4, 55, 23}, {5, 25, 56}, {11, 62, 58}, {14, 63, 59}, {8, 64, 60}, {17, 65, 61}, {10, 58, 64}, {19, 60, 65}, {13, 59, 62}, {16, 61, 63}, {14, 15, 63}, {11, 12, 62}, {17, 18, 65}, {8, 9, 64}, {12, 13, 62}, {15, 16, 63}, {9, 10, 64}, {18, 19, 65}, {58, 62, 57}, {59, 57, 62}, {59, 63, 57}, {61, 57, 63}, {58, 57, 64}, {60, 64, 57}, {60, 57, 65}, {61, 65, 57}, {11, 58, 67}, {14, 59, 66}, {8, 60, 69}, {17, 61, 68}, {10, 67, 58}, {19, 69, 60}, {13, 66, 59}, {16, 68, 61}, {2, 68, 16}, {3, 66, 13}, {6, 69, 19}, {7, 67, 10}, {7, 11, 67}, {3, 14, 66}, {6, 8, 69}, {2, 17, 68}, {26, 75, 71}, {29, 76, 72}, {23, 77, 73}, {20, 78, 74}, {25, 71, 77}, {22, 73, 78}, {28, 72, 75}, {31, 74, 76}, {29, 30, 76}, {26, 27, 75}, {20, 21, 78}, {23, 24, 77}, {27, 28, 75}, {30, 31, 76}, {24, 25, 77}, {21, 22, 78}, {71, 75, 70}, {72, 70, 75}, {72, 76, 70}, {70, 76, 74}, {71, 70, 77}, {70, 73, 77}, {70, 78, 73}, {70, 74, 78}, {26, 71, 80}, {29, 72, 79}, {23, 73, 82}, {20, 74, 81}, {25, 80, 71}, {22, 82, 73}, {28, 79, 72}, {31, 81, 74}, {0, 81, 31}, {1, 79, 28}, {4, 82, 22}, {5, 80, 25}, {5, 26, 80}, {1, 29, 79}, {4, 23, 82}, {0, 20, 81}, {41, 84, 88}, {14, 89, 84}, {29, 86, 90}, {32, 91, 85}, {16, 85, 89}, {43, 88, 86}, {34, 87, 91}, {31, 90, 87}, {41, 88, 42}, {14, 15, 89}, {29, 90, 30}, {32, 33, 91}, {42, 88, 43}, {15, 16, 89}, {33, 34, 91}, {30, 90, 31}, {84, 89, 83}, {84, 83, 88}, {85, 83, 89}, {86, 88, 83}, {85, 91, 83}, {86, 83, 90}, {87, 90, 83}, {87, 83, 91}, {14, 84, 92}, {41, 92, 84}, {29, 94, 86}, {32, 85, 93}, {43, 86, 94}, {16, 93, 85}, {31, 87, 95}, {34, 95, 87}, {1, 43, 94}, {2, 93, 16}, {3, 92, 41}, {3, 14, 92}, {1, 94, 29}, {2, 32, 93}, {0, 31, 95}, {0, 95, 34}, {32, 97, 101}, {17, 102, 97}, {35, 103, 98}, {20, 99, 104}, {19, 98, 102}, {34, 101, 99}, {22, 104, 100}, {37, 100, 103}, {32, 101, 33}, {35, 36, 103}, {17, 18, 102}, {20, 104, 21}, {33, 101, 34}, {18, 19, 102}, {36, 37, 103}, {21, 104, 22}, {97, 96, 101}, {97, 102, 96}, {98, 96, 102}, {99, 101, 96}, {98, 103, 96}, {99, 96, 104}, {100, 96, 103}, {100, 104, 96}, {32, 105, 97}, {17, 97, 105}, {35, 98, 106}, {20, 107, 99}, {19, 106, 98}, {34, 99, 107}, {22, 100, 108}, {37, 108, 100}, {0, 34, 107}, {2, 105, 32}, {6, 106, 19}, {6, 35, 106}, {2, 17, 105}, {4, 108, 37}, {0, 107, 20}, {4, 22, 108}, {11, 110, 115}, {38, 114, 110}, {26, 116, 112}, {41, 111, 117}, {13, 115, 111}, {40, 112, 114}, {43, 117, 113}, {28, 113, 116}, {11, 115, 12}, {38, 39, 114}, {26, 27, 116}, {41, 117, 42}, {39, 40, 114}, {12, 115, 13}, {42, 117, 43}, {27, 28, 116}, {109, 110, 114}, {109, 115, 110}, {111, 115, 109}, {112, 109, 114}, {111, 109, 117}, {112, 116, 109}, {113, 109, 116}, {113, 117, 109}, {11, 118, 110}, {38, 110, 118}, {26, 112, 120}, {41, 119, 111}, {40, 120, 112}, {13, 111, 119}, {28, 121, 113}, {43, 113, 121}, {5, 120, 40}, {3, 13, 119}, {7, 38, 118}, {7, 118, 11}, {5, 26, 120}, {3, 119, 41}, {1, 121, 28}, {1, 43, 121}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 131
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}}
]
Vector<double> [
+ id : my_fem:jacobians:_tetrahedron_4
+ size : 341
+ nb_component : 1
+ allocated size : 341
+ memory size : 2.7kB
+ values : {{0.00479073}, {0.00199542}, {0.00508286}, {0.00204347}, {0.00083906}, {0.00095268}, {0.00292548}, {0.00493659}, {0.00105059}, {0.00091729}, {0.00180199}, {0.000808556}, {0.00355095}, {0.00749049}, {0.00197348}, {0.00106177}, {0.00690231}, {0.00297989}, {0.000808006}, {0.0026847}, {0.00117185}, {0.00474423}, {0.00083918}, {0.00644814}, {0.00470655}, {0.00151785}, {0.00151785}, {0.00083906}, {0.00151591}, {0.00083918}, {0.00487222}, {0.00151892}, {0.00469074}, {0.000807775}, {0.00151892}, {0.00334996}, {0.00767187}, {0.00381537}, {0.00269174}, {0.00158543}, {0.00083906}, {0.00445593}, {0.0020418}, {0.00204272}, {0.00297957}, {0.00490403}, {0.00353679}, {0.00297957}, {0.00693536}, {0.000839299}, {0.002982}, {0.00359869}, {0.00246606}, {0.000800576}, {0.000839299}, {0.00083906}, {0.00152021}, {0.00375734}, {0.00151785}, {0.00372221}, {0.00255222}, {0.00083906}, {0.000952816}, {0.00298087}, {0.00204311}, {0.0037801}, {0.00363992}, {0.00249551}, {0.00382669}, {0.0020549}, {0.00422323}, {0.00083906}, {0.00460922}, {0.00348647}, {0.000952544}, {0.00386563}, {0.00134104}, {0.00252173}, {0.00151892}, {0.00151785}, {0.00426036}, {0.00793308}, {0.00820365}, {0.00385292}, {0.00151785}, {0.00860188}, {0.00151785}, {0.00083906}, {0.00383935}, {0.00327077}, {0.00361116}, {0.00679806}, {0.00083906}, {0.00336058}, {0.00695467}, {0.0026847}, {0.00385292}, {0.000917159}, {0.00158651}, {0.00152021}, {0.00204498}, {0.00158671}, {0.00297957}, {0.00483251}, {0.00083906}, {0.00645464}, {0.0037801}, {0.00472318}, {0.00353524}, {0.00151688}, {0.00483251}, {0.00421987}, {0.0020418}, {0.00523002}, {0.00282642}, {0.00380534}, {0.00581509}, {0.00158671}, {0.00548144}, {0.0020418}, {0.00365422}, {0.00297867}, {0.00383935}, {0.00204311}, {0.00151892}, {0.0020418}, {0.00083906}, {0.00695993}, {0.00426911}, {0.000952544}, {0.00380007}, {0.00640143}, {0.00595062}, {0.00180012}, {0.00470655}, {0.00297737}, {0.00432043}, {0.00408022}, {0.00151785}, {0.00394217}, {0.00095268}, {0.0020392}, {0.00491487}, {0.000807891}, {0.00673925}, {0.00158661}, {0.00158671}, {0.00511093}, {0.000808006}, {0.00297989}, {0.00158671}, {0.00158543}, {0.00297989}, {0.000839299}, {0.00282642}, {0.00297957}, {0.000807775}, {0.00743876}, {0.00520896}, {0.000807775}, {0.00083906}, {0.00204272}, {0.00327077}, {0.00151785}, {0.00151785}, {0.00550306}, {0.00283408}, {0.00297957}, {0.00500828}, {0.00435075}, {0.00158651}, {0.00353524}, {0.00207381}, {0.00264971}, {0.00361055}, {0.0020418}, {0.0020418}, {0.000807775}, {0.0043829}, {0.00158543}, {0.00483251}, {0.000807775}, {0.00297957}, {0.00403452}, {0.00106177}, {0.00083906}, {0.00339716}, {0.0043829}, {0.00158661}, {0.00152021}, {0.00151785}, {0.00078511}, {0.000807891}, {0.00105059}, {0.00083906}, {0.00204038}, {0.00083906}, {0.00151494}, {0.00282642}, {0.00212821}, {0.005658}, {0.0043455}, {0.00151494}, {0.00474239}, {0.00744101}, {0.00158651}, {0.000839299}, {0.00282642}, {0.00282642}, {0.00369139}, {0.00530618}, {0.00083906}, {0.00430907}, {0.00540547}, {0.00117185}, {0.00297957}, {0.00083906}, {0.000917028}, {0.00158543}, {0.00289174}, {0.00483251}, {0.000807775}, {0.00370776}, {0.000808006}, {0.0020392}, {0.00151591}, {0.0020418}, {0.000952544}, {0.00297957}, {0.00152021}, {0.002982}, {0.000807775}, {0.00095268}, {0.000807775}, {0.00158543}, {0.00353524}, {0.00083906}, {0.00243234}, {0.00260951}, {0.0020459}, {0.00282642}, {0.00158543}, {0.000807775}, {0.00197474}, {0.00100612}, {0.00334194}, {0.00487991}, {0.00481554}, {0.00204347}, {0.00298217}, {0.000917028}, {0.000807775}, {0.00158543}, {0.00339935}, {0.00361055}, {0.00158543}, {0.000807775}, {0.00180012}, {0.000917159}, {0.00304689}, {0.00203823}, {0.00419327}, {0.00444812}, {0.00321724}, {0.00151688}, {0.00180012}, {0.000917159}, {0.00158543}, {0.000807775}, {0.00425176}, {0.0068851}, {0.00483251}, {0.00743876}, {0.00369139}, {0.00671734}, {0.000948173}, {0.000932706}, {0.00083906}, {0.00083906}, {0.00402163}, {0.0027552}, {0.00353262}, {0.00179986}, {0.00158543}, {0.000807775}, {0.00289277}, {0.00478507}, {0.00369139}, {0.00407095}, {0.002979}, {0.00490513}, {0.00275294}, {0.00402124}, {0.00204048}, {0.00298091}, {0.00413525}, {0.00522266}, {0.00472318}, {0.00402975}, {0.00676786}, {0.0037801}, {0.00496655}, {0.00158543}, {0.000807775}, {0.00353262}, {0.00179986}, {0.00557565}, {0.00365422}, {0.00420433}, {0.0045964}, {0.000917028}, {0.00243872}, {0.000807775}, {0.001568}, {0.00602516}, {0.0074155}, {0.00435075}, {0.00282642}, {0.00275892}, {0.00204048}, {0.00297957}, {0.0039318}, {0.00623354}, {0.00483251}, {0.00761117}, {0.00356241}, {0.00520686}, {0.0020394}, {0.00297957}, {0.00289006}, {0.00220255}, {0.00347634}, {0.00226248}, {0.00219973}, {0.00292886}, {0.00233772}, {0.00353589}, {0.00497258}, {0.00334717}, {0.00371176}, {0.00326057}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_tetrahedron_4
- + size : 1
- + nb_component : 3
- + allocated size : 2000
- + memory size : 47kB
- + values : {{0.25, 0.25, 0.25}}
- ]
Vector<double> [
+ id : my_fem:shapes:_tetrahedron_4
+ size : 341
+ nb_component : 4
+ allocated size : 341
+ memory size : 11kB
+ values : {{0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_tetrahedron_4
+ size : 341
+ nb_component : 12
+ allocated size : 341
+ memory size : 32kB
- + values : {{-2.9332, -3.39585, 0.502232, 0, 2.96343, 0.405765, 2.9332, 0.0602741, 3.04336, 0, 0.372141, -3.95136}, {3.45053, -1.3657, -2.27011, -3.89489, -2.97354, -4.55745, 0, 0, 5.36117, 0.444357, 4.33924, 1.46638}, {0.382444, -2.89016, 0, -1.28516, 1.90393, 2.9332, 3.7515, 0.879817, 0, -2.84879, 0.106407, -2.9332}, {2.97575, 3.89171, -3.89356, 0, 0, -5.23939, 1.36374, -3.44772, 3.45502, -4.3395, -0.443995, 5.67793}, {4, -4, -4.00114, -4, -3.0469, -3.04575, 0, 0, 7.0469, 0, 7.0469, 0}, {-3.52295, -3.52395, -3.52295, -3.52295, 3.52295, 3.52395, 3.52295, -3.52295, 3.52295, 3.52295, 3.52395, -3.52395}, {2.40825, 0.953172, 2.40825, 2.50475, 5.50649, -2.73463, -1.78774, -5.2227, -1.78774, -3.12526, -1.23696, 2.11413}, {-2.9332, 1.96549, 1.23633, 0, -2.87587, -0.393776, 0, 1.01994, -3.86266, 2.9332, -0.10956, 3.0201}, {0.419151, 4, -4, 2.79404, -8.15492, 0.835098, 2.20503, 4.15492, 3.1649, -5.41822, 0, 0}, {3.52244, 3.52345, 3.52345, 3.65886, 3.65991, -3.65991, 3.52345, -3.52244, -3.52244, -10.7048, -3.66092, 3.6589}, {-1.79359, 1.79523, -1.79625, 3.5193, 3.52237, 3.52452, -7.1749, -7.18117, 0.13427, 5.44919, 1.86357, -1.86254}, {3.99728, -4.00093, 4.00321, 0, 7.04488, 0, 4.15209, 3.16185, -3.16156, -8.14937, -6.2058, -0.841653}, {-2.33012, -1.26027, 3.59031, 1.73691, -1.73691, -3.82575, -2.89531, 2.89531, -1.14913, 3.48852, 0.101865, 1.38457}, {0, 3.12067, -1.26381, 0, -0.238012, 2.52719, -2.9332, -3.29673, -0.550156, 2.9332, 0.414072, -0.713225}, {2.25842, -1.36825, -3.45027, 4.64721, -2.97306, 3.89484, -1.48742, 4.3413, -0.444568, -5.41822, 0, 0}, {-0.835098, -8.15492, -2.75583, 4, 4, -0.45685, -3.1649, 4.15492, -2.14849, 0, 0, 5.36117}, {2.74019, 0.0956852, 2.80125, -3.01086, 0.697365, -0.375193, 0.165245, 2.48398, -2.46532, 0.105421, -3.27703, 0.0392613}, {2.96943, -3.89447, -0.304082, 1.36934, 3.45016, 3.45016, 0, 0, -3.59038, -4.33877, 0.444309, 0.444309}, {3.164, 3.1649, 4.15492, -6.21002, 0.835098, -8.15492, 7.04488, 0, 0, -3.99886, -4, 4}, {-4.24471, 0, -2.22045e-16, 1.70632, 0.0142405, 4.507, 1.02929, -3.25521, -3.22316, 1.5091, 3.24097, -1.28383}, {-0.835098, -3.26304, -8.15492, -3.1649, -1.55632, 4.15492, 4, -0.0381551, 4, 0, 4.85752, 0}, {-3.09877, -0.624101, 0.936346, 2.96195, 3.42913, -0.507155, -0.240412, -3.6139, 3.58676, 0.377232, 0.808874, -4.01595}, {-7.0469, 0, 0, 4, 4, -4, 3.0469, 3.04589, 4, 0, -7.04589, 0}, {0, 0.802501, 2.70275, -2.9332, -0.102425, -2.99855, 2.9332, 2.58063, 0.364309, 0, -3.28071, -0.0685083}, {4.16334e-16, -8.88178e-16, -2.4308, 3.22687, 1.27702, 1.31348, -3.25484, 3.22647, -0.701298, 0.0279753, -4.5035, 1.81862}, {1.62741e-11, -1.54712e-11, -4, 5.23939, 0, 0, -5.23939, 5.23939, 4, 0, -5.23939, 0}, {0, -7.13135e-16, 5.23939, 0, 5.23939, 0, 4, -5.23939, -5.24506, -4, -2.28255e-11, 0.00566839}, {0, -7.0469, 8.88178e-16, -4, 4, 4, 4, 3.0469, 3.0469, 0, 0, -7.0469}, {-4, 5.24608, 5.23939, 4, 1.55241e-11, 1.5915e-11, 0, -5.24608, 0, 0, 0, -5.23939}, {4, -4, 4, -7.0469, 0, 0, 3.0469, 4, 3.04589, 0, 0, -7.04589}, {2.51489, 3.01511, 3.01511, -3.88194, -3.41534, -0.482145, -2.88414, -0.0592661, -2.99246, 4.25119, 0.459499, 0.459499}, {5.23939, 5.23285, 4, 0, -5.23568, 0, -5.23939, 0, 0, 2.32699e-11, 0.00283219, -4}, {-2.75474, -0.835644, -4.18437, 0.257813, 3.33257, -1.31901, 0.305142, -0.305142, 4.63589, 2.19179, -2.19179, 0.867496}, {4.15492, -3.1649, -3.1649, -8.15492, -0.835098, 6.2118, 4, 4, 4, 0, 0, -7.0469}, {0.00566839, 4, -0.00283219, 0, 0, -5.23568, 5.23372, -4, 5.23851, -5.23939, 0, 0}, {-1.52791, 1.52994, 4.71561, -1.9516, -3.29226, 0.192739, -0.842937, 0.840096, -3.60933, 4.32244, 0.92222, -1.29903}, {2.86385, 3.21879, 0.53715, -0.233278, -0.500202, 2.48343, -2.84203, -0.0735906, -1.79686, 0.211453, -2.645, -1.22372}, {4.53179, 1.05538, 0.0281511, -1.28505, -2.42496, -3.24278, -3.24675, -1.61027, 3.21463, 0, 2.97985, 0}, {-1.02659, 3.24669, 3.21473, 3.14112, -4.52341, 0.014006, -4.24471, 0, 0, 2.13019, 1.27672, -3.22874}, {-4, -4, -4, 0.835098, 8.15492, 0.835098, 0, 0, 3.59038, 3.1649, -4.15492, -0.425481}, {0, -7.0469, 0, -4, 3.0469, 3.0469, 4, 4, 4, 0, 0, -7.0469}, {2.27701, -1.57663, -3.25, -1.49395, 3.66511, 0.0115805, -2.03803, -2.71547, -0.00857994, 1.25497, 0.626993, 3.247}, {4.33924, 5.68374, -0.444357, -2.97354, -3.89489, 3.89489, -1.3657, 3.45053, -3.45053, 0, -5.23939, 0}, {4.33729, -5.68119, -0.447948, 0, 5.23939, 0, -1.36509, -3.45133, -3.4494, -2.97221, 3.89314, 3.89735}, {0, 4.44089e-16, 3.59038, -2.97354, -3.89489, 0.304504, -1.3657, 3.45053, -3.45053, 4.33924, 0.444357, -0.444357}, {-0.960671, 0.960671, -4.13489, 2.09645, -2.09645, -0.829765, 1.35765, 2.23273, 3.97777, -2.49343, -1.09695, 0.986887}, {-3.6556, -3.65879, 3.65879, -1.79574, 1.79308, -1.79621, 3.6556, 3.65879, -0.0684102, 1.79574, -1.79308, -1.79417}, {0.307102, -2.97354, -3.89489, 3.59038, 0, 0, -0.44815, 4.33924, 0.444357, -3.44934, -1.3657, 3.45053}, {-1.64157, 0.110512, -3.2348, 1.22142, 3.1461, -3.07269e-12, -0.833409, -0.40322, 3.2348, 1.25356, -2.85339, 2.78682e-12}, {0, 7.04488, 0, 4, -3.99886, 4.00114, -4, -3.04603, 3.04575, 0, 0, -7.0469}, {-0.443995, -0.444383, -4.3395, 0, 3.59038, 0, -3.44772, -3.45073, 1.36374, 3.89171, 0.30473, 2.97575}, {-1.00556, 2.54062, 1.04976, -3.90018, -1.55367, -2.03672, 3.775, 1.86995, -1.86995, 1.13075, -2.8569, 2.8569}, {-4.90575, 0.986953, -0.986953, 1.13075, -2.8569, 2.8569, -1.91647, -0.397296, -4.84209, 5.69148, 2.26724, 2.97215}, {4.19746, -5.51046, 2.84944, 1.88954, 6.77064, -1.88954, -2.89363, -5.45245, -4.15327, -3.19336, 4.19228, 3.19336}, {8.88178e-16, 7.0469, 0, -3.99886, -4, -4, 7.04488, 0, 0, -3.04603, -3.0469, 4}, {-4, 4, -4, 0, -7.0469, 0, 4, 3.0469, -3.0469, 0, 0, 7.0469}, {5.23123, 5.81945e-16, 0, -5.23123, -5.23939, 4, 0, 5.23939, 0, 1.6327e-11, 1.54706e-11, -4}, {-0.750211, -0.75138, 4.81251, 1.07726, -4.16045, 1.64668, -2.20213, 3.03383, -5.71589, 1.87508, 1.878, -0.743302}, {4, -2.28271e-11, 2.36273e-11, -4, 5.23939, -5.23939, 0, -5.23939, 0, 0, 0, 5.23939}, {3.80063, -1.80519, -1.80851, 1.09322, 2.76209, 2.76114, -3.92166, 1.49941, -2.08755, -0.972194, -2.45631, 1.13492}, {-1.92104, 0.382436, -4.85423, 5.71942, -2.18677, 3.04452, 1.09257, 2.76234, 2.76079, -4.89095, -0.95801, -0.95108}, {3.0469, 3.0469, -4, 4, 4, 4, -7.0469, 0, 0, 0, -7.0469, 0}, {-3.52345, 3.52244, -3.52446, 3.52244, 3.52345, 3.52345, -3.52244, -3.52345, 3.52345, 3.52345, -3.52244, -3.52244}, {-3.89489, -0.305669, 2.97354, 3.45053, 3.44843, 1.3657, 0, -3.58881, 0, 0.444357, 0.446058, -4.33924}, {3.45195, 3.44854, 1.36462, 5.6826, 0.445968, -4.33837, -3.89516, -3.89451, 2.97375, -5.23939, 0, 0}, {3.2348, 1.4231, -1.28032, 0, -3.01876, 0, -3.04119e-12, 1.63545, 4.51512, -3.2348, -0.0397999, -3.2348}, {-2.82577, -2.82405, -1.11842, -1.29033, 2.2973, 4.00441, 3.2475, -0.343291, 1.28534, 0.868592, 0.870035, -4.17133}, {1.88206, -3.35082, -5.84079, -2.82615, -2.82336, -1.11723, 1.95788, 1.95275, 5.28756, -1.01379, 4.22143, 1.67046}, {4.00887, -0.711384, 1.23085, -1.07985, 3.872, 1.08301, -1.46134, -0.730093, -3.78093, -1.46768, -2.43052, 1.46707}, {-6.11172, -2.09613, -3.09899, -3.35065, 1.32617, 2.2044, 6.08523, -2.4085, 1.35769, 3.37714, 3.17846, -0.4631}, {0, -1.78762, -4.51512, 0, -1.19223, 4.51512, 2.9332, 1.45476, -2.90418, -2.9332, 1.52509, 2.90418}, {-8.88178e-16, 0, 7.0469, -3.0469, -4, -3.0469, -4, 4, -4, 7.0469, 0, 0}, {-1.83438, 2.64163, -0.00817939, 1.49822, -0.389218, 3.22599, -2.02268, -3.19987, 0.00990788, 2.35884, 0.947457, -3.22772}, {-3.58659, -3.58659, 0.548674, 1.12084, -3.39428, -1.90685, -0.156642, 4.35848, -1.19262, 2.6224, 2.6224, 2.5508}, {-3.52345, -3.52345, -3.52345, 3.52345, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345}, {4.44089e-16, 0, 2.95197, 4.40828e-12, -4.51512, -1.73539, -3.2348, 1.28032, -0.721726, 3.2348, 3.2348, -0.494857}, {-4.24471, 1.77636e-15, -4.44089e-16, 1.287, -4, -4, -1.6658, 8.15492, 0.835098, 4.62351, -4.15492, 3.1649}, {0.885858, -4.33672, -0.444099, -4.24471, 0, 0, 3.16813, 2.96992, 3.89452, 0.190724, 1.3668, -3.45042}, {-2.32703e-11, -0.00283219, 4, 5.23939, 5.23851, -4, 0, -5.23568, 0, -5.23939, 0, 0}, {-5.23939, -4, -5.23939, 2.28255e-11, 4, 2.28255e-11, 0, 0, 5.23939, 5.23939, 0, 0}, {4.47576, -1.93017, 0, -2.90763, 1.52342, 2.9332, 2.90763, 1.45643, -2.9332, -4.47576, -1.04967, 0}, {-2.74183, 0.846161, -0.849296, 1.62977, 1.63119, -1.63119, 0.777461, 0.778141, 2.81224, 0.334598, -3.25549, -0.331753}, {-2.36134, 0, 0, 1.74759, 0, 2.9332, -0.525012, -2.9332, -2.9332, 1.13877, 2.9332, 0}, {-3.21511, 0.1024, -3.24338, 3.21511, -1.89002, -1.27174, 0, 2.97985, 0, -3.36919e-12, -1.19223, 4.51512}, {0, 5.23939, 4.12864e-16, 0, 0, 5.23939, -4, -5.23939, -5.23372, 4, 2.28255e-11, -0.00566839}, {-2.40793, -0.260266, -0.260266, 0.500707, 2.7974, 2.7974, 1.23528, -2.86224, 0.0709597, 0.671946, 0.325101, -2.6081}, {4, 5.23939, -5.23939, 0, 0, 5.23939, -4, 2.28278e-11, -2.36282e-11, 0, -5.23939, 0}, {-4.44089e-16, 7.0469, 0, -7.0469, 0, 0, 3.0469, -3.0469, -4, 4, -4, 4}, {3.22647, -1.69048, -3.25484, 1.27702, -0.254226, 3.22687, 0, 2.97985, 0, -4.5035, -1.03514, 0.0279753}, {-3.50419, 0, 2.04697e-16, -0.300503, -3.2348, 3.2348, 0.9543, -1.27452, -3.22084, 2.85039, 4.50932, -0.0139624}, {-2.58829, 1.58763, 2.59096, 3.47782, 1.19279, 1.76345, 1.14429, -4.10309, -1.14764, -2.03382, 1.32267, -3.20677}, {-0.0193683, 3.11794, -1.2591, 3.23344, 0.218445, 1.74096, -3.23197, -0.456248, 0.785873, 0.0178911, -2.88013, -1.26773}, {4, -4, -4, -7.0469, 0, 0, 3.0469, -3.0469, 4, 0, 7.0469, 0}, {2.09645, -2.09645, -0.829765, 1.02053, 4.21886, 1.6698, -1.9812, -3.25819, -5.80469, -1.13578, 1.13578, 4.96465}, {0, 3.04177, 0.0635186, 0, -2.06144, 2.64295, -2.9332, -0.059438, -2.99766, 2.9332, -0.920892, 0.29119}, {1.04124, -3.22316, -3.25521, -4.24471, 0, 0, -0.179146, -1.28383, 3.24097, 3.38261, 4.507, 0.0142405}, {3.21511, -2.56163, 1.27174, -3.21511, -1.61044, 3.24338, 0, 2.97985, 0, 3.36919e-12, 1.19223, -4.51512}, {-3.65939, -3.66043, -10.7063, -3.52295, 3.52295, 3.52395, 3.52295, -3.52295, 3.52295, 3.65939, 3.66043, 3.65939}, {0.841653, -8.14937, -0.83453, 0, 0, -3.59038, -4.00321, 3.99728, 3.99972, 3.16156, 4.15209, 0.425192}, {0, -8.88178e-16, -5.23939, -4, -5.23123, 5.23372, 4, -1.54883e-11, 0.00566839, 0, 5.23123, 0}, {3.88882, 3.89489, 2.97354, 5.23123, 0, 0, -3.44516, -3.45053, 1.3657, -5.6749, -0.444357, -4.33924}, {8.15548, 0.834427, -0.835156, 0, 0, -3.59038, -4.00272, -3.99679, 4.00028, -4.15276, 3.16236, 0.425261}, {1.3657, 3.45053, -3.45053, 0, 0, 3.59038, -4.33924, 0.444357, -0.444357, 2.97354, -3.89489, 0.304504}, {-0.837584, 3.2348, -1.28032, -0.944765, -3.55036e-12, 4.51512, -0.578996, -3.2348, -3.2348, 2.36134, 0, 0}, {-3.0469, 3.0469, -4, 0, -7.0469, 0, 7.0469, 0, 0, -4, 4, 4}, {0.832911, -2.82507, -0.828908, 0.808732, 3.17388, -0.81323, -3.40548, -0.230067, -1.83358, 1.76384, -0.118743, 3.47572}, {0, -3.01876, 0, 1.28032, 1.39906, -3.2348, -4.51512, 1.5799, -3.09855e-12, 3.2348, 0.0397999, 3.2348}, {1.27174, 3.21511, 0.89222, 0, 0, -2.4308, 3.24338, -3.21511, 0.698828, -4.51512, 3.70603e-12, 0.839751}, {-1.79652, -1.79386, -1.79496, 1.79652, 1.79386, -1.79543, -3.65719, 3.65719, -0.0700075, 3.65719, -3.65719, 3.66039}, {-2.2828e-11, 4, 0.0025524, 0, 0, 5.24273, -5.23939, 0, 0, 5.23939, -4, -5.24528}, {-1.75292, -4.51512, -4.40936e-12, 0.0630025, 1.28032, 3.2348, 2.36134, 0, 0, -0.671422, 3.2348, -3.2348}, {-1.82767, 3.81744, 1.76272, -0.114041, 1.46619, -3.70442, 2.43635, -0.964293, 2.43635, -0.494641, -4.31934, -0.494641}, {-3.45053, -1.3657, -3.45053, -0.444357, 4.33924, -5.68374, 0, 0, 5.23939, 3.89489, -2.97354, 3.89489}, {2.9332, 2.26271, -0.706418, -2.9332, 1.41766, 2.12097, 0, -0.989411, -3.33225, 0, -2.69097, 1.9177}, {0, -1.39581e-17, 4.03735, -3.2348, -3.2348, -3.14648, -1.28032, 3.2348, -2.28562, 4.51512, 4.40982e-12, 1.39475}, {3.25531, -1.69257, -3.22311, -3.621e-12, -1.19223, 4.51512, 0, 2.97985, 0, -3.25531, -0.095055, -1.29201}, {-2.43276, 1.15549, 1.15762, 2.22336, 2.22531, 2.22336, 0.45554, -3.13444, 0.45554, -0.246142, -0.246357, -3.83653}, {4.00272, -3.99679, 4.00378, -8.15548, 0.834427, -0.842284, 4.15276, 3.16236, 0.42889, 0, 0, -3.59038}, {-2.25991, 1.3285, 0.893907, -1.12519, -1.12617, -4.07005, 1.87562, 1.87726, -0.7419, 1.50948, -2.07958, 3.91804}, {-3.45053, 1.3657, -3.45053, -0.444357, -4.33924, -5.68374, 3.89489, 2.97354, 3.89489, 0, 0, 5.23939}, {-3.2348, 0.341949, -1.28032, 0, -3.12276, 0, 3.2348, 0.619904, -3.2348, -3.95817e-12, 2.1609, 4.51512}, {2.97704, 0.304595, -3.89524, -4.34434, -0.444491, 0.444879, 1.36731, -3.44735, 3.45037, 0, 3.58725, 0}, {1.27702, -1.8283, -3.22687, 3.22647, -0.102762, 3.25484, 0, 2.97985, 0, -4.5035, -1.04879, -0.0279753}, {5.67645, -4.33837, 0.445968, 3.45388, 1.36462, 3.44854, -3.89094, 2.97375, -3.89451, -5.23939, 0, 0}, {0, 0, -5.23568, -0.00566839, -4, 0.00283219, 5.24506, 4, 5.23285, -5.23939, 0, 0}, {2.97354, -3.89489, 3.89489, 1.3657, 3.45053, -3.45053, 0, -5.23939, 0, -4.33924, 5.68374, -0.444357}, {7.0469, 0, 4.44089e-16, 0, 0, -7.0469, -4, -4, 4, -3.0469, 4, 3.0469}, {0.676898, -0.676898, 2.91348, 1.85764, -1.85764, -1.85764, -2.8863, -0.704082, -0.704082, 0.351759, 3.23862, -0.351759}, {-1.71643, -3.77342, 1.87396, 2.40825, 0.953172, 2.40825, -0.071317, -1.44928, -3.6617, -0.620505, 4.26953, -0.620505}, {-3.52345, -3.52345, -3.52345, 3.52345, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345}, {-1.16853, 4.05757, 2.41902, -2.70338, -1.07129, -2.70173, 3.36405, 1.3331, -0.22682, 0.507865, -4.31938, 0.509529}, {0.235286, 2.46776, -2.45659, -1.58499, 1.09747, 2.26228, -1.89674, -2.81329, -0.210235, 3.24644, -0.75193, 0.40455}, {1.72714, 0.683827, -1.72773, -2.24537, -3.98415, -1.34153, 0.964303, -1.03975, 2.62699, -0.446071, 4.34007, 0.442278}, {-7.18233, -0.137487, -7.18233, 1.86445, 1.86498, 5.45483, 3.52295, -3.52295, 3.52295, 1.79493, 1.79545, -1.79545}, {0, -8.88178e-16, -2.4308, -3.22687, 1.27702, -0.160385, -0.0279753, -4.5035, 1.80584, 3.25484, 3.22647, 0.785343}, {3.45037, 1.36731, 3.44826, -3.89524, 2.97704, -0.306029, 0, 0, -3.58881, 0.444879, -4.34434, 0.446582}, {3.24278, -1.28505, 1.07917, 0, 0, -2.6315, -3.21463, -3.24675, -0.442405, -0.0281511, 4.53179, 1.99473}, {1.7269, 0.683416, -1.72787, -1.27936, -5.02087, 1.28648, 3.27466, 5.8105, 1.9565, -3.7222, -1.47305, -1.5151}, {-5.23372, -4, 5.23939, -0.00566839, 4, -2.28255e-11, 5.23939, 0, 0, 0, 0, -5.23939}, {0.0281511, 4.53179, 2.33833, 0, 0, -2.884, 3.21463, -3.24675, 0.327026, -3.24278, -1.28505, 0.218644}, {-3.52345, -3.52345, 3.52345, -3.52345, 3.52345, -3.52345, 3.52395, 3.52295, 3.52295, 3.52295, -3.52295, -3.52295}, {1.3657, 3.45494, 3.45053, -4.33924, 5.691, 0.444357, 2.97354, -3.89986, -3.89489, 0, -5.24608, 0}, {-1.06097, 2.95229, -1.06649, 4.44047, 0.792573, -0.800037, -2.21214, -0.888535, 3.02699, -1.16736, -2.85632, -1.16047}, {4, 4, -4, -3.1649, -3.16386, -4.15492, 0, -7.04589, 0, -0.835098, 6.20975, 8.15492}, {-3.23839, -0.578016, 0.58346, 0.0195373, 3.14514, -1.26116, 3.23532, 0.0837745, 2.04552, -0.0164672, -2.6509, -1.36782}, {-3.59038, 0, -8.88178e-16, 4, 4, -4, -0.834843, -0.83804, 8.15243, 0.425226, -3.16196, -4.15243}, {-3.99679, -4.00028, -4.00272, 0, 3.59038, 0, 0.834427, 0.835156, 8.15548, 3.16236, -0.425261, -4.15276}, {-0.618598, -0.619625, 2.97076, -2.5319, -2.52969, -2.52969, -0.377606, 3.21154, -0.378844, 3.52811, -0.062223, -0.062223}, {-6.21002, 0.835098, 8.15492, 3.164, 3.1649, -4.15492, 7.04488, 0, 0, -3.99886, -4, -4}, {-2.96943, -3.89447, -0.304082, 0, 0, -3.59038, -1.36934, 3.45016, 3.45016, 4.33877, 0.444309, 0.444309}, {-4.44089e-16, 3.59038, 0, 0.834427, 0.835156, -8.15548, 3.16236, -0.425261, 4.15276, -3.99679, -4.00028, 4.00272}, {4.15492, 0.425481, -3.1649, 0, -3.59038, 0, 4, 4, 4, -8.15492, -0.835098, -0.835098}, {0.444309, -0.444309, -4.33877, -3.89447, 0.304082, 2.96943, 3.45016, -3.45016, 1.36934, 0, 3.59038, 0}, {-4.44089e-16, 7.0469, 0, -3.04603, -3.0469, -4, 7.04488, 0, 0, -3.99886, -4, 4}, {-1.90626e-16, 0, 4.03735, -3.2348, 3.2348, 1.14797, 3.2348, 1.28032, -2.18823, -4.40962e-12, -4.51512, -2.99709}, {-1.3657, -3.45053, -3.44934, 4.33924, -0.444357, -0.44815, -2.97354, 3.89489, 0.307102, 0, 0, 3.59038}, {-4, 4, -4, 0, 0, 7.0469, 0.835098, -8.15492, -6.2118, 3.1649, 4.15492, 3.1649}, {1.22258, -2.9332, -2.86482e-12, -0.434061, 0, 3.2348, 1.13877, 2.9332, 2.86495e-12, -1.92728, 0, -3.2348}, {0.619868, 0, -4.61952, 1.07793, -2.9332, 1.07793, 1.00404, 2.9332, 1.00404, -2.70184, 0, 2.53754}, {8.15492, -0.835098, -6.2118, -4, 4, -4, -4.15492, -3.1649, 3.1649, 0, 0, 7.0469}, {-1.77636e-15, 0, 7.0469, -4, -4, -4, -3.0469, 4, -3.0469, 7.0469, 0, 0}, {3.89735, -2.97221, -3.89314, -0.447948, 4.33729, 5.68119, 0, 0, -5.23939, -3.4494, -1.36509, 3.45133}, {0.300503, 3.2348, -3.2348, -3.50419, 0, 0, 0.773493, -3.22084, -1.27452, 2.43019, -0.0139624, 4.50932}, {-5.23939, 4, -5.23939, 5.23939, 0, 0, 0, 0, 5.23939, -2.28255e-11, -4, -2.28255e-11}, {5.23939, 0, -1.75044e-16, -5.24506, 4, 5.23939, 0, 0, -5.23939, 0.00566839, -4, 2.28255e-11}, {3.95255, -0.362167, 0.362483, -0.482349, -3.10803, -0.479633, -1.12077, 1.12077, 2.46863, -2.34943, 2.34943, -2.35148}, {1.27685, 3.22605, 0.364333, -1.43581, -3.62766, 3.62766, -4.79345, -0.703234, 0.703234, 4.95241, 1.10484, -4.69522}, {-3.45053, 3.45053, 1.3657, -0.444357, 0.444357, -4.33924, 3.89489, -0.304504, 2.97354, 0, -3.59038, 0}, {-1.03322, 0, 2.9332, -2.44657, -2.9332, -2.9332, -0.388139, 2.9332, 0, 3.86792, 0, 0}, {-2.86482e-12, -2.9332, 2.09032, -3.2348, 0, -0.999254, 2.86466e-12, 2.9332, 1.94703, 3.2348, 0, -3.03809}, {3.99728, -3.99972, -4.00321, -8.14937, 0.83453, 0.841653, 4.15209, -0.425192, 3.16156, 0, 3.59038, 0}, {-3.65719, -3.66039, -3.65719, -1.79386, 1.79496, 1.79652, 3.65719, 0.0700075, 3.65719, 1.79386, 1.79543, -1.79652}, {0.32313, 3.2444, -3.2106, 3.54154, -2.30319, 5.58401, -2.14916, 1.30205, 3.28335, -1.71551, -2.24325, -5.65675}, {-3.89489, 2.97354, -2.82238, 0, 0, 4.03735, 0.444357, -4.33924, -0.86478, 3.45053, 1.3657, -0.350185}, {1.84375, -4.52327, -0.014292, 0.315792, 3.2348, -3.2348, -3.14489, 0, 0, 0.985347, 1.28847, 3.24909}, {-4.33924, -0.444357, -5.6776, 0, 0, 5.23939, 1.3657, -3.45053, -3.45246, 2.97354, 3.89489, 3.89067}, {5.23939, 0, 0, -3.45053, 3.45053, 1.3657, -5.68374, 0.444357, -4.33924, 3.89489, -3.89489, 2.97354}, {7.0469, 8.88178e-16, 0, 3.16371, 4.15492, -3.1649, -6.20947, -8.15492, -0.835098, -4.00114, 4, 4}, {-0.782485, -3.2348, -1.28032, 2.60358, 0, 0, -0.410568, 3.2348, -3.2348, -1.41052, 3.55036e-12, 4.51512}, {-4, 4, -4, -4.15492, 0.425481, 3.1649, 0, -3.59038, 0, 8.15492, -0.835098, 0.835098}, {-1.75292, -4.51512, 4.40936e-12, -1.18742, 1.28032, -3.2348, 0.578996, 3.2348, 3.2348, 2.36134, 0, 0}, {-4, -4, -4, -6.2118, 8.15492, 0.835098, 3.1649, -4.15492, 3.1649, 7.0469, 0, 0}, {0.304504, -2.97354, 3.89489, -3.45053, -1.3657, -3.45053, -0.444357, 4.33924, -0.444357, 3.59038, 0, 0}, {-0.968585, 2.9332, 1.64782, -3.80236, -2.9332, 0.915743, 1.28259, 0, -3.64114, 3.48835, 0, 1.07758}, {8.15492, 0.835098, -3.7826, -4, -4, 0.45685, 0, 0, 5.36117, -4.15492, 3.1649, -2.03542}, {-4, 4, -4, 0, -7.0469, 0, 7.0469, 0, 0, -3.0469, 3.0469, 4}, {-2.33946, 1.78605, 2.34209, 3.03792, -2.3193, 2.20139, -2.35172, -2.20459, -2.89092, 1.65325, 2.73783, -1.65256}, {2.60358, 0, 3.0632e-16, -1.03055, -1.28032, -3.2348, 0.410568, -3.2348, 3.2348, -1.98359, 4.51512, -4.40967e-12}, {-3.59038, 1.77636e-15, -1.11022e-16, 4, -4, 4, 0.425226, -4.15243, -3.16196, -0.834843, 8.15243, -0.83804}, {0, 0, -5.23939, -4, 1.54883e-11, -0.00566839, 4, -5.23123, 5.24506, 0, 5.23123, 0}, {-1.62732e-11, 1.54703e-11, 4, 5.23939, 0, 0, 0, -5.23939, 0, -5.23939, 5.23939, -4}, {4.72393, 2.32297, -6.20162, -2.81181, -4.23508, -5.55986, 1.34415, -1.34415, 7.48662, -3.25627, 3.25627, 4.27486}, {-3.1649, -4.15492, -3.16386, -0.835098, 8.15492, 6.20975, 4, -4, 4, 0, 0, -7.04589}, {2.10128, 3.1649, 4.15492, 3.73608, 0.835098, -8.15492, -0.419151, -4, 4, -5.41822, 0, 0}, {0, 0, -7.0469, 7.0469, 0, 0, -4.00114, 4, 4, -3.04575, -4, 3.0469}, {-3.89511, 3.89452, 2.96992, -5.24608, 0, 0, 5.68769, -0.444099, -4.33672, 3.45349, -3.45042, 1.3668}, {-7.0469, 0, 0, 4.00114, 4, 4, 3.04575, -4, 3.0469, 0, 0, -7.0469}, {-5.24608, 0, 0, 5.24608, -5.24018, 4, 2.32367e-11, -0.0025524, -4, 0, 5.24273, 0}, {4.44089e-16, 4.44089e-16, 4.03735, -4.51512, 4.40818e-12, -1.39475, 3.2348, 3.2348, -1.306, 1.28032, -3.2348, -1.33659}, {6.38334, 0.936482, -0.936482, -5.90226, 2.17282, 1.41756, -3.46093, -0.129456, -3.46093, 2.97985, -2.97985, 2.97985}, {-0.252976, 0.252976, -3.84336, 0.368915, 3.22147, 0.368915, -2.40103, -1.18935, 1.18935, 2.28509, -2.28509, 2.28509}, {-1.44735, 2.54109, 0.82519, -0.346604, -3.63529, 3.61884, -1.58915, 0.412839, -3.42177, 3.3831, 0.681367, -1.02226}, {-2.32365e-11, 0.0025524, 4, -5.24608, 0, 0, 0, 5.24273, 0, 5.24608, -5.24528, -4}, {-3.59357e-12, 3.68038, 1.41455, 2.62736e-12, -2.69097, 1.9177, -3.2348, 0.574024, -0.993189, 3.2348, -1.56344, -2.33906}, {2.74148, 0.0555531, 2.80173, -2.9202, -2.12061, -0.341431, -0.0977885, 3.03978, -0.0364189, 0.27651, -0.974727, -2.42388}, {4.00321, 3.99728, 3.99972, 0, 0, -3.59038, -0.841653, -8.14937, -0.83453, -3.16156, 4.15209, 0.425192}, {0, 4.44089e-16, -7.0469, 0, 7.04488, 0, -4, -3.99886, 4, 4, -3.04603, 3.0469}, {-4.40759e-12, 4.51512, -3.21766, 0, 0, 4.03735, -3.2348, -1.28032, 0.328292, 3.2348, -3.2348, -1.14798}, {-3.2348, -3.2348, 1.306, 4.40977e-12, 4.51512, -3.21766, 0, 0, 4.03735, 3.2348, -1.28032, -2.12568}, {1.28032, 0.265417, 3.2348, -4.51512, 1.06793, -3.90061e-12, 3.2348, 1.75796, -3.2348, 0, -3.09131, 0}, {-2.85306, -1.28668, -1.28504, 3.1184, -0.694894, -0.694008, 0.0152986, 3.82424, -1.42003, -0.280638, -1.84266, 3.39908}, {3.0469, 4, -3.0469, -7.0469, 0, 0, 4, -4, -4, 0, 0, 7.0469}, {1.29201, -3.25531, 0.810704, 0, 0, -2.6315, -4.51512, -3.75807e-12, 1.37723, 3.22311, 3.25531, 0.443571}, {-3.66502, 2.14914, 1.43616, 0.752328, 1.90198, -1.90298, 4.02391, -1.24183, 1.24643, -1.11122, -2.8093, -0.779603}, {8.15492, -3.3488, 0.835098, -4.15492, -1.54688, 3.1649, 0, 4.85752, 0, -4, 0.0381551, -4}, {-3.45053, 1.3657, -3.45053, 3.59038, 0, 0, 0.304504, 2.97354, 3.89489, -0.444357, -4.33924, -0.444357}, {-4, 3.0469, -3.0469, 0, -7.0469, 0, 4, 4, -4, 0, 0, 7.0469}, {-10.7068, 3.65991, -3.65991, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, 3.65991, -3.65991, 3.65991}, {0, -3.59038, 4.44089e-16, 3.1649, 0.425481, 4.15492, 0.835098, -0.835098, -8.15492, -4, 4, 4}, {-1.94171, 5.28363, -1.94171, 2.66708, -5.57073, -2.5723, 2.43635, -0.964293, 2.43635, -3.16172, 1.25139, 2.07766}, {0.099584, -1.28032, 3.2348, -1.88193, 4.51512, 4.40977e-12, 2.36134, 0, 0, -0.578997, -3.2348, -3.2348}, {-6.2118, -0.835098, -8.15492, 3.1649, -3.1649, 4.15492, 7.0469, 0, 0, -4, 4, 4}, {0.75324, 1.90144, -1.90334, 5.34316, -3.13319, -2.09374, -1.32234, 1.89318, 3.34138, -4.77406, -0.661432, 0.655698}, {4.44089e-16, 7.04488, 0, -4.15492, 3.164, -3.1649, 8.15492, -6.21002, -0.835098, -4, -3.99886, 4}, {-2.97354, -3.89986, -3.89489, 4.33924, 5.691, 0.444357, -1.3657, 3.45494, 3.45053, 0, -5.24608, 0}, {0, 0, -5.23939, 4, 5.24608, 5.23939, -4, -1.55241e-11, -1.5915e-11, 0, -5.24608, 0}, {-0.444357, 5.68374, 4.33924, 3.89489, -3.89489, -2.97354, 0, -5.23939, 0, -3.45053, 3.45053, -1.3657}, {3.52345, -3.52345, -3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345, -3.52345}, {3.59038, 0, 2.22045e-16, 0.304504, -3.89489, -2.97354, -0.444357, 0.444357, 4.33924, -3.45053, 3.45053, -1.3657}, {5.23123, -8.88178e-16, 0, -5.23123, -5.23939, -4, -1.6327e-11, -1.54706e-11, 4, 0, 5.23939, 0}, {-1.36374, -3.44772, 3.44954, -2.97575, 3.89171, -0.30733, 4.3395, -0.443995, 0.448176, 0, 0, -3.59038}, {-3.16371, 4.15492, -3.1649, 4.00114, 4, 4, -7.0469, 0, 0, 6.20947, -8.15492, -0.835098}, {-3.52395, -3.52295, -3.52295, -3.52295, 3.52295, 3.52295, 3.52295, -3.52295, 3.52395, 3.52395, 3.52295, -3.52395}, {4, -4, -4.00114, -8.15492, 0.835098, -6.20947, 0, 0, 7.0469, 4.15492, 3.1649, 3.16371}, {-0.425481, 4.15492, 3.1649, 0.835098, -8.15492, 0.835098, -4, 4, -4, 3.59038, 0, 0}, {-1.79519, 1.79519, -1.79519, -1.79519, -1.79519, 1.79519, -0.0700075, -3.65719, -3.65719, 3.66039, 3.65719, 3.65719}, {4, 4, -4, 0, 0, 7.0469, -7.0469, 0, 0, 3.0469, -4, -3.0469}, {1.16094, -1.15703, 4.97097, -1.66567, -3.57722, 1.41703, -2.89698, 2.8944, -1.14655, 3.40171, 1.83985, -5.24145}, {-2.7042, -1.06842, -2.70002, 1.70166, -5.90879, -3.52267, 2.19866, 5.37974, 2.18568, -1.19612, 1.59748, 4.03701}, {4.33729, -5.67235, 0.447948, -1.36509, -3.44596, 3.4494, 0, 5.23123, 0, -2.97221, 3.88708, -3.89735}, {3.2348, -3.2348, -1.14797, 0, 0, 4.03735, 1.28032, 3.2348, -1.49462, -4.51512, -4.40977e-12, -1.39475}, {4, 4, 4, -0.835098, -0.835098, -8.15492, 0, -3.59038, 0, -3.1649, 0.425481, 4.15492}, {-3.1649, -3.1649, 4.15492, -7.0469, 0, 0, 4, 4, 4, 6.2118, -0.835098, -8.15492}, {0.724826, 0.724826, -6.59499, -3.21143, -3.21143, -3.21143, 3.7299, 0.139517, 3.7299, -1.24329, 2.34709, 6.07653}, {2.48661, 2.48661, 9.80643, -3.21143, -3.21143, -3.21143, -1.7154, 5.33149, 5.33149, 2.44023, -4.60667, -11.9265}, {-4.95125, 1.10332, 1.10192, -1.44818, -1.58249, 3.65892, 0.833328, -2.10815, -2.10546, 5.5661, 2.58731, -2.65538}, {0.836183, -2.10682, -2.10682, 4.11656, 1.00419, 1.00419, -1.14088, 2.87451, -0.715871, -3.81187, -1.77188, 1.8185}, {0.343882, -3.2462, -1.28483, 0.297233, 0.297493, 4.63286, 2.13498, 2.13685, 0.845752, -2.7761, 0.811861, -4.19379}, {2.22045e-16, 5.23939, 0, -3.44772, -3.45309, -1.36374, 3.89171, 3.89778, -2.97575, -0.443995, -5.68407, 4.3395}, {3.58725, -4.44089e-16, 0, -3.44752, -3.45053, -1.3657, -0.443969, -0.444357, 4.33924, 0.304238, 3.89489, -2.97354}, {3.65991, -3.65991, -3.65991, 3.52345, 3.52345, -3.52345, -3.52345, -3.52345, -3.52345, -3.65991, 3.65991, 10.7068}, {3.1649, -4.15492, -3.1649, 0, 0, -7.0469, -4, -4, 4, 0.835098, 8.15492, 6.2118}, {-4, -4, 4, 0.835098, 8.15492, -0.835098, 3.59038, 0, 0, -0.425481, -4.15492, -3.1649}, {-1.3476, -0.0112467, -3.55949, 1.85019, -3.24836, -1.05487, 1.92324, 3.24442, -0.189939, -2.42583, 0.0151799, 4.80429}, {1.17675, 3.24909, 1.28847, -0.315792, -3.2348, 3.2348, -3.14489, 0, 0, 2.28393, -0.014292, -4.52327}, {8.15492, -0.835098, -0.835098, -4, 4, 4, 0, 0, -3.59038, -4.15492, -3.1649, 0.425481}, {-4.15492, -3.1649, -3.1649, -4, 4, 4, 0, -7.0469, 0, 8.15492, 6.2118, -0.835098}, {0.137487, 7.18233, 7.18233, -1.79519, 1.79519, -1.79519, 3.52295, -3.52295, -3.52295, -1.86524, -5.45458, -1.86419}, {3.52295, -3.52295, -3.52295, -3.66043, -3.65939, -3.65939, -3.52345, -3.52345, 3.52345, 3.66094, 10.7058, 3.65888}, {1.67988, -1.68212, -5.18466, -2.30896, 2.30807, 0.915293, -1.39444, -3.85015, -1.52682, 2.02352, 3.2242, 5.7962}, {3.4516, -3.45027, -1.36825, -3.89922, 3.89484, -2.97306, -5.24608, 0, 0, 5.6937, -0.444568, 4.3413}, {1.94453e-16, 2.70417, 0, 3.25531, -0.177688, 3.22311, -3.25531, -0.557762, 1.29201, 3.62091e-12, -1.96872, -4.51512}, {3.09726e-12, 1.01994, -3.86266, -3.25531, -0.69454, 0.97832, 3.25531, -2.18133, -1.3721, -3.41346e-12, 1.85593, 4.25643}, {2.90521, -1.78203, -2.9082, 2.41571, 1.84427, 2.82665, -2.85063, 1.82369, -2.38912, -2.47029, -1.88594, 2.47066}, {-5.23939, 0, -8.88178e-16, 0, 0, 5.24273, 2.28278e-11, -4, -0.0025524, 5.23939, 4, -5.24018}, {-3.52295, 3.52295, 3.52295, 1.79545, 1.79493, -1.79545, 7.18233, -7.18233, 0.137487, -5.45483, 1.86445, -1.86498}, {-3.52295, 3.52295, 3.52295, -3.52395, -3.52295, -3.52295, -3.65939, 3.65939, -3.66043, 10.7063, -3.65939, 3.66043}, {-0.835098, 0.835098, 8.15492, 0, 3.59038, 0, 4, -4, -4, -3.1649, -0.425481, -4.15492}, {-7.0469, 5.55112e-16, 0, 4, -4, -4, -3.1649, 3.1649, -4.15492, 6.2118, 0.835098, 8.15492}, {0.662971, 0.664005, -4.25288, 1.65703, 1.65961, 0.655439, -2.91351, 2.32133, -1.15244, 0.59351, -4.64495, 4.74988}, {1.19438, -3.49493, 0, -2.76951, 1.19435, 0, 1.94164, -0.567827, 2.9332, -0.366511, 2.8684, -2.9332}, {2.36134, 1.0718e-17, 8.88178e-16, 0.671422, -3.2348, 3.2348, -0.342675, 3.2348, 1.28032, -2.69009, 3.55093e-12, -4.51512}, {-1.10548, 3.2348, 0, -1.25586, -3.2348, 0, 0.613756, 2.30645e-12, -2.9332, 1.74759, -2.30645e-12, 2.9332}, {3.2348, 0.120997, 3.2348, 0, -3.09131, 0, -3.2348, -0.551371, 1.28032, 3.95817e-12, 3.52168, -4.51512}, {-3.2348, 0.76173, -0.403199, 2.15323e-12, -1.17552, -2.45621, 3.2348, 2.34907, 0.378214, -2.17514e-12, -1.93527, 2.4812}, {-3.53969, 3.53969, 2.69627, -1.11299, 1.11299, -6.1991, 5.13509, 1.9118, -3.91153, -0.482412, -6.56449, 7.41436}, {4.72983, -3.60283, 2.31706, -1.62186, -5.81149, 1.62186, -3.59839, 2.74098, 3.59839, 0.490411, 6.67334, -7.53731}, {-4, 4, -4, 4, -4, -3.0469, 0, 7.0469, 0, 0, -7.0469, 7.0469}, {0, 0, 7.0469, 4, -3.0469, -4, -4, -4, 4, 0, 7.0469, -7.0469}, {1.26315, 3.1826, -0.407781, -4.48373, 0.0790768, 0.0790768, -1.01464, -2.55645, -2.55645, 4.23522, -0.705229, 2.88515}, {-1.01079, -2.55709, -2.55383, 1.69808, -0.95029, 4.29031, 5.49464, 2.47799, 2.47483, -6.18193, 1.02939, -4.21131}, {-1.79519, -1.79519, 1.79519, -3.65991, 3.65991, -3.65991, 1.79519, 1.79519, 1.79519, 3.65991, -3.65991, 0.0695263}, {-1.79519, -1.79519, 1.79519, 5.4551, -1.86472, 1.86472, 3.52345, -3.52345, -3.52345, -7.18336, 7.18336, -0.13646}, {0, -4.44089e-16, 3.59038, -8.15492, -0.835098, 0.835098, 4, 4, -4, 4.15492, -3.1649, -0.425481}, {4.15492, -3.1649, 3.1649, 4, 4, -4, 0, -7.0469, 0, -8.15492, 6.2118, 0.835098}, {4.18211, -0.841369, 0.841369, 1.63378, -1.11155, -4.12784, -0.96395, -2.43548, 2.43548, -4.85193, 4.3884, 0.850991}, {-2.9332, -0.654372, 2.78087, 0, 0.366146, -3.84129, 0, 2.94119, 1.57488, 2.9332, -2.65297, -0.514459}, {4.51512, -1.06793, 3.90044e-12, 0, -3.09131, 0, -1.28032, 0.871067, 3.2348, -3.2348, 3.28817, -3.2348}, {0, -0.430374, 4.51512, -2.9332, -0.109716, -2.9332, 0, 3.52168, -4.51512, 2.9332, -2.98159, 2.9332}, {4.19026, 0.820764, 0.814826, 1.21474, -3.06912, 2.16855, -0.936049, 2.36499, 2.36631, -4.46895, -0.116634, -5.34969}, {0.972372, 0.736781, -3.03724, -3.79781, 2.2903, -1.05943, 0.111338, -3.09792, 0.84769, 2.7141, 0.0708344, 3.24899}, {-2.55729, 1.01135, -2.55763, -2.08284, -1.24835, 3.15697, 1.89416, -5.27077, 1.90402, 2.74596, 5.50777, -2.50336}, {3.77679, -1.49465, 0.187718, 0.660093, 4.25334, 0.656376, -2.557, 1.01192, -2.55789, -1.87988, -3.77061, 1.7138}, {-5.23939, 0, -5.55112e-17, 3.4502, -1.36448, 3.45065, -3.90439, -2.97758, -3.8953, 5.69358, 4.34205, 0.444645}, {-4.44089e-16, 4.44089e-16, -3.59038, 3.4494, -1.36509, 3.45059, 0.447948, 4.33729, 0.444157, -3.89735, -2.97221, -0.304367}, {4.28053, 0.593056, -0.587914, -0.673906, 1.70372, -1.70733, 1.45255, -3.67222, -1.55938, -5.05918, 1.37545, 3.85462}, {0, 4.47576, 0.618208, 0, -4.47576, 1.81259, -2.9332, -2.90763, -0.707734, 2.9332, 2.90763, -1.72306}, {-1.27174, 3.21511, 1.36527, 0, 0, -2.4308, 4.51512, -3.70603e-12, -0.839751, -3.24338, -3.21511, 1.90528}, {0.947177, -0.947177, -4.14023, -3.0344, -2.20499, -1.201, 1.74832, -1.74832, 0.691975, 0.338905, 4.90048, 4.64925}, {1.90928, 0.579177, 2.90015, -2.97176, -1.29918, -0.341631, 1.26427, 3.63788, 0.209764, -0.201792, -2.91787, -2.76828}, {3.04112e-12, -1.63545, -4.51512, 0, -3.01876, 0, 3.2348, 2.35061, 1.28032, -3.2348, 2.3036, 3.2348}, {4.04958, 1.77038, 0.465536, -2.40427, -1.3066, 2.40427, -4.10736, 1.28953, -0.407754, 2.46205, -1.7533, -2.46205}, {0.835098, -0.835098, 8.15492, -4, 4, -4, 3.59038, 0, 0, -0.425481, -3.1649, -4.15492}, {3.1649, -3.1649, -4.15492, -4, 4, -4, 0, -7.0469, 0, 0.835098, 6.2118, 8.15492}, {-3.65991, 3.65991, 3.65991, 1.79519, 1.79519, -1.79519, 1.79519, -1.79519, 1.79519, 0.0695263, -3.65991, -3.65991}, {1.79519, -1.79519, 1.79519, 1.86472, -1.86472, -5.4551, -3.52345, -3.52345, -3.52345, -0.13646, 7.18336, 7.18336}, {3.0611, -1.07112, 2.10077e-12, -0.369018, 1.30083, 3.2348, 0.267075, 1.7536, -3.2348, -2.95915, -1.98331, -2.03061e-12}, {-1.28032, 0.716498, -3.2348, -3.2348, -0.619904, 3.2348, 0, -3.12276, 0, 4.51512, 3.02616, 3.09876e-12}, {-3.24675, 0.177221, -3.21463, 0, 2.70417, 0, -1.28505, -0.665307, 3.24278, 4.53179, -2.21609, -0.0281511}, {-1.03768, -0.786269, 3.24125, 3.76174, 0.864649, -0.0233676, 1.42117, -2.10543, -3.24363, -4.14523, 2.02705, 0.0257498}, {-3.65991, -3.65991, 3.65991, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345, 3.65991, 3.65991, -10.7068}, {-1.02588, -1.02588, -4.04576, 5.15074, -1.89616, -1.23707, -2.74863, 4.29827, 1.25677, -1.37623, -1.37623, 4.02606}, {4, -4, -4, -3.1649, -4.15492, 3.1649, 0, 0, 7.0469, -0.835098, 8.15492, -6.2118}, {4.27497, -6.68514, -1.95466, -0.750905, 7.33275, 1.46136, -3.95428, 3.55351, -2.7068, 0.430212, -4.20112, 3.20009}, {-0.675958, 1.70428, -1.70576, 3.47227, -0.944013, -2.64554, 0.813742, 1.53558, 2.05346, -3.61005, -2.29584, 2.29785}, {-2.9332, 0.268765, -0.269, 0, 1.01807, 2.57142, 0, -3.15223, -0.435397, 2.9332, 1.86539, -1.86702}, {2.9332, -2.86386e-12, 0.906086, 0, 3.2348, -2.30525, 0, -3.2348, -1.73209, -2.9332, 2.86386e-12, 3.13126}, {-1.28032, -3.2348, -0.365321, -3.2348, 3.2348, 1.14798, 0, 0, 4.03735, 4.51512, -4.40815e-12, -4.82}, {4.32811, 0.737725, -1.71304, -3.72649, -3.72649, 1.47492, -0.518804, -0.518804, 4.72046, -0.0828155, 3.50757, -4.48234}, {-5.23939, -3.88578e-16, 0, -3.90017, -3.8953, -2.97758, 3.45213, 3.45065, -1.36448, 5.68742, 0.444645, 4.34205}, {3.45053, 3.45053, -1.3657, 0, -3.59038, 0, 0.444357, 0.444357, 4.33924, -3.89489, -0.304504, -2.97354}, {0, 1.06747e-17, -2.884, -3.22311, 3.25531, -0.327888, -1.29201, -3.25531, 0.417097, 4.51512, 3.75787e-12, 2.79479}, {-0.0130226, -3.25531, 1.20877, -0.260244, 3.25531, 1.50608, 3.12118, 2.59785e-12, -0.952039, -2.84791, -2.3704e-12, -1.76282}, {0.578997, 3.2348, 3.2348, 2.36134, 0, 0, -0.250249, -3.2348, 1.28032, -2.69009, -3.55036e-12, -4.51512}, {-1.12419, -3.2348, -0.186522, 0.812252, -2.04448e-12, -2.60004, -1.39607, 3.2348, -0.0801962, 1.708, 2.2542e-12, 2.86675}, {-3.93279, 1.55848, -1.3088, 1.97526, -0.782753, -1.97415, -1.50913, 5.11867, 1.50188, 3.46666, -5.8944, 1.78108}, {-0.47019, -4.32902, 0.47019, 0.867473, 1.07771, 2.72291, 1.97453, -0.781507, -1.97453, -2.37181, 4.03281, -1.21857}, {-3.45037, 1.36731, 3.44843, 0, 0, -5.23939, 3.89524, 2.97704, -3.89946, -0.444879, -4.34434, 5.69042}, {-3.45053, 1.3657, 3.45053, 3.59038, 0, 0, -0.444357, -4.33924, 0.444357, 0.304504, 2.97354, -3.89489}, {2.40563, -3.3686, -2.16577, -4.01552, 0.313534, -3.06173, -1.35813, -0.303573, 2.96446, 2.96803, 3.35864, 2.26304}, {0.444309, 1.73608, 4.33877, 0, 4.85752, 0, 3.45016, -2.1866, -1.36934, -3.89447, -4.407, -2.96943}, {-1.77354, -2.8259, -5.08017, -1.99992, 2.80049, 1.80052, -0.192763, -1.93544, 1.91528, 3.96622, 1.96086, 1.36437}, {3.41957, -0.149544, 3.15791, -3.35877, 2.12868, 1.33307, 6.03338, 1.03375, -2.39461, -6.09418, -3.0129, -2.09638}, {1.36731, -2.16592, -3.45037, 0, 4.85752, 0, -4.34434, 1.78399, -0.444879, 2.97704, -4.4756, 3.89524}, {-2.95631, -0.302739, 1.37126, 3.02503, 0.309776, 3.95804, 2.1672, -3.36845, -2.40376, -2.23591, 3.36142, -2.92554}, {2.31112, 1.19654, -5.83206, -1.28659, 2.03806, 3.24669, -3.3095, 0.144731, -3.05627, 2.28498, -3.37933, 5.64163}, {-1.96264, -1.84718, 0.269133, -1.79514, 2.79017, 1.99109, 5.26848, -3.1772, 1.46969, -1.5107, 2.23422, -3.72992}, {-0.60788, 3.25394, -0.100754, 4.36982, -1.029, 0.544673, 0.0459483, -1.94609, 2.48692, -3.80789, -0.278843, -2.93084}, {-2.10446, -2.10356, 0.831802, -1.45971, -1.45589, -3.94218, -2.09284, 3.1452, -1.24369, 5.65702, 0.414251, 4.35407}, {3.27119, 4.85191, 0.362578, 0.814367, -4.35925, 0.134979, -0.753128, 2.3313, 2.35448, -3.33243, -2.82396, -2.85204}, {-3.50419, 0, -4.44089e-16, 2.14843, -3.22874, 1.27672, -2.43779, 0.014006, -4.52341, 3.79356, 3.21473, 3.24669}}
+ + values : {{-2.9332, -3.39585, 0.502232, 0, 2.96343, 0.405765, 2.9332, 0.0602741, 3.04336, 0, 0.372141, -3.95136}, {3.45053, -1.3657, -2.27011, -3.89489, -2.97354, -4.55745, 0, 0, 5.36117, 0.444357, 4.33924, 1.46638}, {0.382444, -2.89016, 0, -1.28516, 1.90393, 2.9332, 3.7515, 0.879817, 0, -2.84879, 0.106407, -2.9332}, {2.97575, 3.89171, -3.89356, 0, 0, -5.23939, 1.36374, -3.44772, 3.45502, -4.3395, -0.443995, 5.67793}, {4, -4, -4.00114, -4, -3.0469, -3.04575, 0, 0, 7.0469, 0, 7.0469, 0}, {-3.52295, -3.52395, -3.52295, -3.52295, 3.52295, 3.52395, 3.52295, -3.52295, 3.52295, 3.52295, 3.52395, -3.52395}, {2.40825, 0.953172, 2.40825, 2.50475, 5.50649, -2.73463, -1.78774, -5.2227, -1.78774, -3.12526, -1.23696, 2.11413}, {-2.9332, 1.96549, 1.23633, 0, -2.87587, -0.393776, 0, 1.01994, -3.86266, 2.9332, -0.10956, 3.0201}, {0.419151, 4, -4, 2.79404, -8.15492, 0.835098, 2.20503, 4.15492, 3.1649, -5.41822, 0, 0}, {3.52244, 3.52345, 3.52345, 3.65886, 3.65991, -3.65991, 3.52345, -3.52244, -3.52244, -10.7048, -3.66092, 3.6589}, {-1.79359, 1.79523, -1.79625, 3.5193, 3.52237, 3.52452, -7.1749, -7.18117, 0.13427, 5.44919, 1.86357, -1.86254}, {3.99728, -4.00093, 4.00321, 0, 7.04488, 0, 4.15209, 3.16185, -3.16156, -8.14937, -6.2058, -0.841653}, {-2.33012, -1.26027, 3.59031, 1.73691, -1.73691, -3.82575, -2.89531, 2.89531, -1.14913, 3.48852, 0.101865, 1.38457}, {0, 3.12067, -1.26381, 0, -0.238012, 2.52719, -2.9332, -3.29673, -0.550156, 2.9332, 0.414072, -0.713225}, {2.25842, -1.36825, -3.45027, 4.64721, -2.97306, 3.89484, -1.48742, 4.3413, -0.444568, -5.41822, 0, 0}, {-0.835098, -8.15492, -2.75583, 4, 4, -0.45685, -3.1649, 4.15492, -2.14849, 0, 0, 5.36117}, {2.74019, 0.0956852, 2.80125, -3.01086, 0.697365, -0.375193, 0.165245, 2.48398, -2.46532, 0.105421, -3.27703, 0.0392613}, {2.96943, -3.89447, -0.304082, 1.36934, 3.45016, 3.45016, 0, 0, -3.59038, -4.33877, 0.444309, 0.444309}, {3.164, 3.1649, 4.15492, -6.21002, 0.835098, -8.15492, 7.04488, 0, 0, -3.99886, -4, 4}, {-4.24471, 0, -2.22045e-16, 1.70632, 0.0142405, 4.507, 1.02929, -3.25521, -3.22316, 1.5091, 3.24097, -1.28383}, {-0.835098, -3.26304, -8.15492, -3.1649, -1.55632, 4.15492, 4, -0.0381551, 4, 0, 4.85752, 0}, {-3.09877, -0.624101, 0.936346, 2.96195, 3.42913, -0.507155, -0.240412, -3.6139, 3.58676, 0.377232, 0.808874, -4.01595}, {-7.0469, 0, 0, 4, 4, -4, 3.0469, 3.04589, 4, 0, -7.04589, 0}, {0, 0.802501, 2.70275, -2.9332, -0.102425, -2.99855, 2.9332, 2.58063, 0.364309, 0, -3.28071, -0.0685083}, {-3.1225e-17, 0, -2.4308, 3.22687, 1.27702, 1.31348, -3.25484, 3.22647, -0.701298, 0.0279753, -4.5035, 1.81862}, {1.62741e-11, -1.54712e-11, -4, 5.23939, 0, 0, -5.23939, 5.23939, 4, 0, -5.23939, 0}, {0, -7.13135e-16, 5.23939, 0, 5.23939, 0, 4, -5.23939, -5.24506, -4, -2.28255e-11, 0.00566839}, {0, -7.0469, 8.88178e-16, -4, 4, 4, 4, 3.0469, 3.0469, 0, 0, -7.0469}, {-4, 5.24608, 5.23939, 4, 1.55241e-11, 1.5915e-11, 0, -5.24608, 0, 0, 0, -5.23939}, {4, -4, 4, -7.0469, 0, 0, 3.0469, 4, 3.04589, 0, 0, -7.04589}, {2.51489, 3.01511, 3.01511, -3.88194, -3.41534, -0.482145, -2.88414, -0.0592661, -2.99246, 4.25119, 0.459499, 0.459499}, {5.23939, 5.23285, 4, 0, -5.23568, 0, -5.23939, 0, 0, 2.32699e-11, 0.00283219, -4}, {-2.75474, -0.835644, -4.18437, 0.257813, 3.33257, -1.31901, 0.305142, -0.305142, 4.63589, 2.19179, -2.19179, 0.867496}, {4.15492, -3.1649, -3.1649, -8.15492, -0.835098, 6.2118, 4, 4, 4, 0, 0, -7.0469}, {0.00566839, 4, -0.00283219, 0, 0, -5.23568, 5.23372, -4, 5.23851, -5.23939, 0, 0}, {-1.52791, 1.52994, 4.71561, -1.9516, -3.29226, 0.192739, -0.842937, 0.840096, -3.60933, 4.32244, 0.92222, -1.29903}, {2.86385, 3.21879, 0.53715, -0.233278, -0.500202, 2.48343, -2.84203, -0.0735906, -1.79686, 0.211453, -2.645, -1.22372}, {4.53179, 1.05538, 0.0281511, -1.28505, -2.42496, -3.24278, -3.24675, -1.61027, 3.21463, 0, 2.97985, 0}, {-1.02659, 3.24669, 3.21473, 3.14112, -4.52341, 0.014006, -4.24471, 0, 0, 2.13019, 1.27672, -3.22874}, {-4, -4, -4, 0.835098, 8.15492, 0.835098, 0, 0, 3.59038, 3.1649, -4.15492, -0.425481}, {0, -7.0469, 0, -4, 3.0469, 3.0469, 4, 4, 4, 0, 0, -7.0469}, {2.27701, -1.57663, -3.25, -1.49395, 3.66511, 0.0115805, -2.03803, -2.71547, -0.00857994, 1.25497, 0.626993, 3.247}, {4.33924, 5.68374, -0.444357, -2.97354, -3.89489, 3.89489, -1.3657, 3.45053, -3.45053, 0, -5.23939, 0}, {4.33729, -5.68119, -0.447948, 0, 5.23939, 0, -1.36509, -3.45133, -3.4494, -2.97221, 3.89314, 3.89735}, {0, 6.10623e-16, 3.59038, -2.97354, -3.89489, 0.304504, -1.3657, 3.45053, -3.45053, 4.33924, 0.444357, -0.444357}, {-0.960671, 0.960671, -4.13489, 2.09645, -2.09645, -0.829765, 1.35765, 2.23273, 3.97777, -2.49343, -1.09695, 0.986887}, {-3.6556, -3.65879, 3.65879, -1.79574, 1.79308, -1.79621, 3.6556, 3.65879, -0.0684102, 1.79574, -1.79308, -1.79417}, {0.307102, -2.97354, -3.89489, 3.59038, 0, 0, -0.44815, 4.33924, 0.444357, -3.44934, -1.3657, 3.45053}, {-1.64157, 0.110512, -3.2348, 1.22142, 3.1461, -3.07269e-12, -0.833409, -0.40322, 3.2348, 1.25356, -2.85339, 2.78682e-12}, {0, 7.04488, 0, 4, -3.99886, 4.00114, -4, -3.04603, 3.04575, 0, 0, -7.0469}, {-0.443995, -0.444383, -4.3395, 0, 3.59038, 0, -3.44772, -3.45073, 1.36374, 3.89171, 0.30473, 2.97575}, {-1.00556, 2.54062, 1.04976, -3.90018, -1.55367, -2.03672, 3.775, 1.86995, -1.86995, 1.13075, -2.8569, 2.8569}, {-4.90575, 0.986953, -0.986953, 1.13075, -2.8569, 2.8569, -1.91647, -0.397296, -4.84209, 5.69148, 2.26724, 2.97215}, {4.19746, -5.51046, 2.84944, 1.88954, 6.77064, -1.88954, -2.89363, -5.45245, -4.15327, -3.19336, 4.19228, 3.19336}, {8.88178e-16, 7.0469, 0, -3.99886, -4, -4, 7.04488, 0, 0, -3.04603, -3.0469, 4}, {-4, 4, -4, 0, -7.0469, 0, 4, 3.0469, -3.0469, 0, 0, 7.0469}, {5.23123, 5.81945e-16, 0, -5.23123, -5.23939, 4, 0, 5.23939, 0, 1.6327e-11, 1.54706e-11, -4}, {-0.750211, -0.75138, 4.81251, 1.07726, -4.16045, 1.64668, -2.20213, 3.03383, -5.71589, 1.87508, 1.878, -0.743302}, {4, -2.28271e-11, 2.36273e-11, -4, 5.23939, -5.23939, 0, -5.23939, 0, 0, 0, 5.23939}, {3.80063, -1.80519, -1.80851, 1.09322, 2.76209, 2.76114, -3.92166, 1.49941, -2.08755, -0.972194, -2.45631, 1.13492}, {-1.92104, 0.382436, -4.85423, 5.71942, -2.18677, 3.04452, 1.09257, 2.76234, 2.76079, -4.89095, -0.95801, -0.95108}, {3.0469, 3.0469, -4, 4, 4, 4, -7.0469, 0, 0, 0, -7.0469, 0}, {-3.52345, 3.52244, -3.52446, 3.52244, 3.52345, 3.52345, -3.52244, -3.52345, 3.52345, 3.52345, -3.52244, -3.52244}, {-3.89489, -0.305669, 2.97354, 3.45053, 3.44843, 1.3657, 0, -3.58881, 0, 0.444357, 0.446058, -4.33924}, {3.45195, 3.44854, 1.36462, 5.6826, 0.445968, -4.33837, -3.89516, -3.89451, 2.97375, -5.23939, 0, 0}, {3.2348, 1.4231, -1.28032, 0, -3.01876, 0, -3.04119e-12, 1.63545, 4.51512, -3.2348, -0.0397999, -3.2348}, {-2.82577, -2.82405, -1.11842, -1.29033, 2.2973, 4.00441, 3.2475, -0.343291, 1.28534, 0.868592, 0.870035, -4.17133}, {1.88206, -3.35082, -5.84079, -2.82615, -2.82336, -1.11723, 1.95788, 1.95275, 5.28756, -1.01379, 4.22143, 1.67046}, {4.00887, -0.711384, 1.23085, -1.07985, 3.872, 1.08301, -1.46134, -0.730093, -3.78093, -1.46768, -2.43052, 1.46707}, {-6.11172, -2.09613, -3.09899, -3.35065, 1.32617, 2.2044, 6.08523, -2.4085, 1.35769, 3.37714, 3.17846, -0.4631}, {0, -1.78762, -4.51512, 0, -1.19223, 4.51512, 2.9332, 1.45476, -2.90418, -2.9332, 1.52509, 2.90418}, {-8.88178e-16, 0, 7.0469, -3.0469, -4, -3.0469, -4, 4, -4, 7.0469, 0, 0}, {-1.83438, 2.64163, -0.00817939, 1.49822, -0.389218, 3.22599, -2.02268, -3.19987, 0.00990788, 2.35884, 0.947457, -3.22772}, {-3.58659, -3.58659, 0.548674, 1.12084, -3.39428, -1.90685, -0.156642, 4.35848, -1.19262, 2.6224, 2.6224, 2.5508}, {-3.52345, -3.52345, -3.52345, 3.52345, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345}, {4.44089e-16, 0, 2.95197, 4.40828e-12, -4.51512, -1.73539, -3.2348, 1.28032, -0.721726, 3.2348, 3.2348, -0.494857}, {-4.24471, 8.88178e-16, -4.44089e-16, 1.287, -4, -4, -1.6658, 8.15492, 0.835098, 4.62351, -4.15492, 3.1649}, {0.885858, -4.33672, -0.444099, -4.24471, 0, 0, 3.16813, 2.96992, 3.89452, 0.190724, 1.3668, -3.45042}, {-2.32703e-11, -0.00283219, 4, 5.23939, 5.23851, -4, 0, -5.23568, 0, -5.23939, 0, 0}, {-5.23939, -4, -5.23939, 2.28255e-11, 4, 2.28255e-11, 0, 0, 5.23939, 5.23939, 0, 0}, {4.47576, -1.93017, 0, -2.90763, 1.52342, 2.9332, 2.90763, 1.45643, -2.9332, -4.47576, -1.04967, 0}, {-2.74183, 0.846161, -0.849296, 1.62977, 1.63119, -1.63119, 0.777461, 0.778141, 2.81224, 0.334598, -3.25549, -0.331753}, {-2.36134, 0, 0, 1.74759, 0, 2.9332, -0.525012, -2.9332, -2.9332, 1.13877, 2.9332, 0}, {-3.21511, 0.1024, -3.24338, 3.21511, -1.89002, -1.27174, 0, 2.97985, 0, -3.36919e-12, -1.19223, 4.51512}, {0, 5.23939, 4.12864e-16, 0, 0, 5.23939, -4, -5.23939, -5.23372, 4, 2.28255e-11, -0.00566839}, {-2.40793, -0.260266, -0.260266, 0.500707, 2.7974, 2.7974, 1.23528, -2.86224, 0.0709597, 0.671946, 0.325101, -2.6081}, {4, 5.23939, -5.23939, 0, 0, 5.23939, -4, 2.28278e-11, -2.36282e-11, 0, -5.23939, 0}, {-4.44089e-16, 7.0469, 0, -7.0469, 0, 0, 3.0469, -3.0469, -4, 4, -4, 4}, {3.22647, -1.69048, -3.25484, 1.27702, -0.254226, 3.22687, 0, 2.97985, 0, -4.5035, -1.03514, 0.0279753}, {-3.50419, 8.88178e-16, 2.01228e-16, -0.300503, -3.2348, 3.2348, 0.9543, -1.27452, -3.22084, 2.85039, 4.50932, -0.0139624}, {-2.58829, 1.58763, 2.59096, 3.47782, 1.19279, 1.76345, 1.14429, -4.10309, -1.14764, -2.03382, 1.32267, -3.20677}, {-0.0193683, 3.11794, -1.2591, 3.23344, 0.218445, 1.74096, -3.23197, -0.456248, 0.785873, 0.0178911, -2.88013, -1.26773}, {4, -4, -4, -7.0469, 0, 0, 3.0469, -3.0469, 4, 0, 7.0469, 0}, {2.09645, -2.09645, -0.829765, 1.02053, 4.21886, 1.6698, -1.9812, -3.25819, -5.80469, -1.13578, 1.13578, 4.96465}, {0, 3.04177, 0.0635186, 0, -2.06144, 2.64295, -2.9332, -0.059438, -2.99766, 2.9332, -0.920892, 0.29119}, {1.04124, -3.22316, -3.25521, -4.24471, 0, 0, -0.179146, -1.28383, 3.24097, 3.38261, 4.507, 0.0142405}, {3.21511, -2.56163, 1.27174, -3.21511, -1.61044, 3.24338, 0, 2.97985, 0, 3.36919e-12, 1.19223, -4.51512}, {-3.65939, -3.66043, -10.7063, -3.52295, 3.52295, 3.52395, 3.52295, -3.52295, 3.52295, 3.65939, 3.66043, 3.65939}, {0.841653, -8.14937, -0.83453, 0, 0, -3.59038, -4.00321, 3.99728, 3.99972, 3.16156, 4.15209, 0.425192}, {0, -8.88178e-16, -5.23939, -4, -5.23123, 5.23372, 4, -1.54883e-11, 0.00566839, 0, 5.23123, 0}, {3.88882, 3.89489, 2.97354, 5.23123, 0, 0, -3.44516, -3.45053, 1.3657, -5.6749, -0.444357, -4.33924}, {8.15548, 0.834427, -0.835156, 0, 0, -3.59038, -4.00272, -3.99679, 4.00028, -4.15276, 3.16236, 0.425261}, {1.3657, 3.45053, -3.45053, 0, 0, 3.59038, -4.33924, 0.444357, -0.444357, 2.97354, -3.89489, 0.304504}, {-0.837584, 3.2348, -1.28032, -0.944765, -3.55036e-12, 4.51512, -0.578996, -3.2348, -3.2348, 2.36134, 0, 0}, {-3.0469, 3.0469, -4, 0, -7.0469, 0, 7.0469, 0, 0, -4, 4, 4}, {0.832911, -2.82507, -0.828908, 0.808732, 3.17388, -0.81323, -3.40548, -0.230067, -1.83358, 1.76384, -0.118743, 3.47572}, {4.44089e-16, -3.01876, 0, 1.28032, 1.39906, -3.2348, -4.51512, 1.5799, -3.09855e-12, 3.2348, 0.0397999, 3.2348}, {1.27174, 3.21511, 0.89222, 0, 0, -2.4308, 3.24338, -3.21511, 0.698828, -4.51512, 3.70603e-12, 0.839751}, {-1.79652, -1.79386, -1.79496, 1.79652, 1.79386, -1.79543, -3.65719, 3.65719, -0.0700075, 3.65719, -3.65719, 3.66039}, {-2.2828e-11, 4, 0.0025524, 0, 0, 5.24273, -5.23939, 0, 0, 5.23939, -4, -5.24528}, {-1.75292, -4.51512, -4.40936e-12, 0.0630025, 1.28032, 3.2348, 2.36134, 0, 0, -0.671422, 3.2348, -3.2348}, {-1.82767, 3.81744, 1.76272, -0.114041, 1.46619, -3.70442, 2.43635, -0.964293, 2.43635, -0.494641, -4.31934, -0.494641}, {-3.45053, -1.3657, -3.45053, -0.444357, 4.33924, -5.68374, 0, 0, 5.23939, 3.89489, -2.97354, 3.89489}, {2.9332, 2.26271, -0.706418, -2.9332, 1.41766, 2.12097, 0, -0.989411, -3.33225, 0, -2.69097, 1.9177}, {0, -1.39581e-17, 4.03735, -3.2348, -3.2348, -3.14648, -1.28032, 3.2348, -2.28562, 4.51512, 4.40982e-12, 1.39475}, {3.25531, -1.69257, -3.22311, -3.621e-12, -1.19223, 4.51512, 0, 2.97985, 0, -3.25531, -0.095055, -1.29201}, {-2.43276, 1.15549, 1.15762, 2.22336, 2.22531, 2.22336, 0.45554, -3.13444, 0.45554, -0.246142, -0.246357, -3.83653}, {4.00272, -3.99679, 4.00378, -8.15548, 0.834427, -0.842284, 4.15276, 3.16236, 0.42889, 0, 0, -3.59038}, {-2.25991, 1.3285, 0.893907, -1.12519, -1.12617, -4.07005, 1.87562, 1.87726, -0.7419, 1.50948, -2.07958, 3.91804}, {-3.45053, 1.3657, -3.45053, -0.444357, -4.33924, -5.68374, 3.89489, 2.97354, 3.89489, 0, 0, 5.23939}, {-3.2348, 0.341949, -1.28032, 0, -3.12276, 0, 3.2348, 0.619904, -3.2348, -3.95817e-12, 2.1609, 4.51512}, {2.97704, 0.304595, -3.89524, -4.34434, -0.444491, 0.444879, 1.36731, -3.44735, 3.45037, 0, 3.58725, 0}, {1.27702, -1.8283, -3.22687, 3.22647, -0.102762, 3.25484, 0, 2.97985, 0, -4.5035, -1.04879, -0.0279753}, {5.67645, -4.33837, 0.445968, 3.45388, 1.36462, 3.44854, -3.89094, 2.97375, -3.89451, -5.23939, 0, 0}, {0, 0, -5.23568, -0.00566839, -4, 0.00283219, 5.24506, 4, 5.23285, -5.23939, 0, 0}, {2.97354, -3.89489, 3.89489, 1.3657, 3.45053, -3.45053, 0, -5.23939, 0, -4.33924, 5.68374, -0.444357}, {7.0469, 0, 0, 0, 0, -7.0469, -4, -4, 4, -3.0469, 4, 3.0469}, {0.676898, -0.676898, 2.91348, 1.85764, -1.85764, -1.85764, -2.8863, -0.704082, -0.704082, 0.351759, 3.23862, -0.351759}, {-1.71643, -3.77342, 1.87396, 2.40825, 0.953172, 2.40825, -0.071317, -1.44928, -3.6617, -0.620505, 4.26953, -0.620505}, {-3.52345, -3.52345, -3.52345, 3.52345, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345}, {-1.16853, 4.05757, 2.41902, -2.70338, -1.07129, -2.70173, 3.36405, 1.3331, -0.22682, 0.507865, -4.31938, 0.509529}, {0.235286, 2.46776, -2.45659, -1.58499, 1.09747, 2.26228, -1.89674, -2.81329, -0.210235, 3.24644, -0.75193, 0.40455}, {1.72714, 0.683827, -1.72773, -2.24537, -3.98415, -1.34153, 0.964303, -1.03975, 2.62699, -0.446071, 4.34007, 0.442278}, {-7.18233, -0.137487, -7.18233, 1.86445, 1.86498, 5.45483, 3.52295, -3.52295, 3.52295, 1.79493, 1.79545, -1.79545}, {0, -8.88178e-16, -2.4308, -3.22687, 1.27702, -0.160385, -0.0279753, -4.5035, 1.80584, 3.25484, 3.22647, 0.785343}, {3.45037, 1.36731, 3.44826, -3.89524, 2.97704, -0.306029, 0, 0, -3.58881, 0.444879, -4.34434, 0.446582}, {3.24278, -1.28505, 1.07917, 0, 0, -2.6315, -3.21463, -3.24675, -0.442405, -0.0281511, 4.53179, 1.99473}, {1.7269, 0.683416, -1.72787, -1.27936, -5.02087, 1.28648, 3.27466, 5.8105, 1.9565, -3.7222, -1.47305, -1.5151}, {-5.23372, -4, 5.23939, -0.00566839, 4, -2.28255e-11, 5.23939, 0, 0, 0, 0, -5.23939}, {0.0281511, 4.53179, 2.33833, 0, 0, -2.884, 3.21463, -3.24675, 0.327026, -3.24278, -1.28505, 0.218644}, {-3.52345, -3.52345, 3.52345, -3.52345, 3.52345, -3.52345, 3.52395, 3.52295, 3.52295, 3.52295, -3.52295, -3.52295}, {1.3657, 3.45494, 3.45053, -4.33924, 5.691, 0.444357, 2.97354, -3.89986, -3.89489, 0, -5.24608, 0}, {-1.06097, 2.95229, -1.06649, 4.44047, 0.792573, -0.800037, -2.21214, -0.888535, 3.02699, -1.16736, -2.85632, -1.16047}, {4, 4, -4, -3.1649, -3.16386, -4.15492, 0, -7.04589, 0, -0.835098, 6.20975, 8.15492}, {-3.23839, -0.578016, 0.58346, 0.0195373, 3.14514, -1.26116, 3.23532, 0.0837745, 2.04552, -0.0164672, -2.6509, -1.36782}, {-3.59038, 4.44089e-16, 0, 4, 4, -4, -0.834843, -0.83804, 8.15243, 0.425226, -3.16196, -4.15243}, {-3.99679, -4.00028, -4.00272, 0, 3.59038, 0, 0.834427, 0.835156, 8.15548, 3.16236, -0.425261, -4.15276}, {-0.618598, -0.619625, 2.97076, -2.5319, -2.52969, -2.52969, -0.377606, 3.21154, -0.378844, 3.52811, -0.062223, -0.062223}, {-6.21002, 0.835098, 8.15492, 3.164, 3.1649, -4.15492, 7.04488, 0, 0, -3.99886, -4, -4}, {-2.96943, -3.89447, -0.304082, 0, 0, -3.59038, -1.36934, 3.45016, 3.45016, 4.33877, 0.444309, 0.444309}, {-4.44089e-16, 3.59038, 0, 0.834427, 0.835156, -8.15548, 3.16236, -0.425261, 4.15276, -3.99679, -4.00028, 4.00272}, {4.15492, 0.425481, -3.1649, 0, -3.59038, 0, 4, 4, 4, -8.15492, -0.835098, -0.835098}, {0.444309, -0.444309, -4.33877, -3.89447, 0.304082, 2.96943, 3.45016, -3.45016, 1.36934, 0, 3.59038, 0}, {-4.44089e-16, 7.0469, 0, -3.04603, -3.0469, -4, 7.04488, 0, 0, -3.99886, -4, 4}, {-6.34716e-16, 0, 4.03735, -3.2348, 3.2348, 1.14797, 3.2348, 1.28032, -2.18823, -4.40962e-12, -4.51512, -2.99709}, {-1.3657, -3.45053, -3.44934, 4.33924, -0.444357, -0.44815, -2.97354, 3.89489, 0.307102, 0, 0, 3.59038}, {-4, 4, -4, 0, 0, 7.0469, 0.835098, -8.15492, -6.2118, 3.1649, 4.15492, 3.1649}, {1.22258, -2.9332, -2.86482e-12, -0.434061, 0, 3.2348, 1.13877, 2.9332, 2.86495e-12, -1.92728, 0, -3.2348}, {0.619868, 0, -4.61952, 1.07793, -2.9332, 1.07793, 1.00404, 2.9332, 1.00404, -2.70184, 0, 2.53754}, {8.15492, -0.835098, -6.2118, -4, 4, -4, -4.15492, -3.1649, 3.1649, 0, 0, 7.0469}, {-1.77636e-15, 0, 7.0469, -4, -4, -4, -3.0469, 4, -3.0469, 7.0469, 0, 0}, {3.89735, -2.97221, -3.89314, -0.447948, 4.33729, 5.68119, 0, 0, -5.23939, -3.4494, -1.36509, 3.45133}, {0.300503, 3.2348, -3.2348, -3.50419, 0, 0, 0.773493, -3.22084, -1.27452, 2.43019, -0.0139624, 4.50932}, {-5.23939, 4, -5.23939, 5.23939, 0, 0, 0, 0, 5.23939, -2.28255e-11, -4, -2.28255e-11}, {5.23939, 0, -1.75044e-16, -5.24506, 4, 5.23939, 0, 0, -5.23939, 0.00566839, -4, 2.28255e-11}, {3.95255, -0.362167, 0.362483, -0.482349, -3.10803, -0.479633, -1.12077, 1.12077, 2.46863, -2.34943, 2.34943, -2.35148}, {1.27685, 3.22605, 0.364333, -1.43581, -3.62766, 3.62766, -4.79345, -0.703234, 0.703234, 4.95241, 1.10484, -4.69522}, {-3.45053, 3.45053, 1.3657, -0.444357, 0.444357, -4.33924, 3.89489, -0.304504, 2.97354, 0, -3.59038, 0}, {-1.03322, 0, 2.9332, -2.44657, -2.9332, -2.9332, -0.388139, 2.9332, 0, 3.86792, 0, 0}, {-2.86482e-12, -2.9332, 2.09032, -3.2348, 0, -0.999254, 2.86466e-12, 2.9332, 1.94703, 3.2348, 0, -3.03809}, {3.99728, -3.99972, -4.00321, -8.14937, 0.83453, 0.841653, 4.15209, -0.425192, 3.16156, 0, 3.59038, 0}, {-3.65719, -3.66039, -3.65719, -1.79386, 1.79496, 1.79652, 3.65719, 0.0700075, 3.65719, 1.79386, 1.79543, -1.79652}, {0.32313, 3.2444, -3.2106, 3.54154, -2.30319, 5.58401, -2.14916, 1.30205, 3.28335, -1.71551, -2.24325, -5.65675}, {-3.89489, 2.97354, -2.82238, 0, 0, 4.03735, 0.444357, -4.33924, -0.86478, 3.45053, 1.3657, -0.350185}, {1.84375, -4.52327, -0.014292, 0.315792, 3.2348, -3.2348, -3.14489, 0, 0, 0.985347, 1.28847, 3.24909}, {-4.33924, -0.444357, -5.6776, 0, 0, 5.23939, 1.3657, -3.45053, -3.45246, 2.97354, 3.89489, 3.89067}, {5.23939, 0, 4.44089e-16, -3.45053, 3.45053, 1.3657, -5.68374, 0.444357, -4.33924, 3.89489, -3.89489, 2.97354}, {7.0469, 8.88178e-16, 0, 3.16371, 4.15492, -3.1649, -6.20947, -8.15492, -0.835098, -4.00114, 4, 4}, {-0.782485, -3.2348, -1.28032, 2.60358, 0, 0, -0.410568, 3.2348, -3.2348, -1.41052, 3.55036e-12, 4.51512}, {-4, 4, -4, -4.15492, 0.425481, 3.1649, 0, -3.59038, 0, 8.15492, -0.835098, 0.835098}, {-1.75292, -4.51512, 4.40936e-12, -1.18742, 1.28032, -3.2348, 0.578996, 3.2348, 3.2348, 2.36134, 0, 0}, {-4, -4, -4, -6.2118, 8.15492, 0.835098, 3.1649, -4.15492, 3.1649, 7.0469, 0, 0}, {0.304504, -2.97354, 3.89489, -3.45053, -1.3657, -3.45053, -0.444357, 4.33924, -0.444357, 3.59038, 0, 0}, {-0.968585, 2.9332, 1.64782, -3.80236, -2.9332, 0.915743, 1.28259, 0, -3.64114, 3.48835, 0, 1.07758}, {8.15492, 0.835098, -3.7826, -4, -4, 0.45685, 0, 0, 5.36117, -4.15492, 3.1649, -2.03542}, {-4, 4, -4, 0, -7.0469, 0, 7.0469, 0, 0, -3.0469, 3.0469, 4}, {-2.33946, 1.78605, 2.34209, 3.03792, -2.3193, 2.20139, -2.35172, -2.20459, -2.89092, 1.65325, 2.73783, -1.65256}, {2.60358, 0, 3.0632e-16, -1.03055, -1.28032, -3.2348, 0.410568, -3.2348, 3.2348, -1.98359, 4.51512, -4.40967e-12}, {-3.59038, 1.77636e-15, -1.11022e-16, 4, -4, 4, 0.425226, -4.15243, -3.16196, -0.834843, 8.15243, -0.83804}, {0, 0, -5.23939, -4, 1.54883e-11, -0.00566839, 4, -5.23123, 5.24506, 0, 5.23123, 0}, {-1.62732e-11, 1.54703e-11, 4, 5.23939, 0, 0, 0, -5.23939, 0, -5.23939, 5.23939, -4}, {4.72393, 2.32297, -6.20162, -2.81181, -4.23508, -5.55986, 1.34415, -1.34415, 7.48662, -3.25627, 3.25627, 4.27486}, {-3.1649, -4.15492, -3.16386, -0.835098, 8.15492, 6.20975, 4, -4, 4, 0, 0, -7.04589}, {2.10128, 3.1649, 4.15492, 3.73608, 0.835098, -8.15492, -0.419151, -4, 4, -5.41822, 0, 0}, {0, 0, -7.0469, 7.0469, 0, 0, -4.00114, 4, 4, -3.04575, -4, 3.0469}, {-3.89511, 3.89452, 2.96992, -5.24608, 0, 0, 5.68769, -0.444099, -4.33672, 3.45349, -3.45042, 1.3668}, {-7.0469, 0, 0, 4.00114, 4, 4, 3.04575, -4, 3.0469, 0, 0, -7.0469}, {-5.24608, 0, 0, 5.24608, -5.24018, 4, 2.32367e-11, -0.0025524, -4, 0, 5.24273, 0}, {4.44089e-16, 4.44089e-16, 4.03735, -4.51512, 4.40818e-12, -1.39475, 3.2348, 3.2348, -1.306, 1.28032, -3.2348, -1.33659}, {6.38334, 0.936482, -0.936482, -5.90226, 2.17282, 1.41756, -3.46093, -0.129456, -3.46093, 2.97985, -2.97985, 2.97985}, {-0.252976, 0.252976, -3.84336, 0.368915, 3.22147, 0.368915, -2.40103, -1.18935, 1.18935, 2.28509, -2.28509, 2.28509}, {-1.44735, 2.54109, 0.82519, -0.346604, -3.63529, 3.61884, -1.58915, 0.412839, -3.42177, 3.3831, 0.681367, -1.02226}, {-2.32365e-11, 0.0025524, 4, -5.24608, 0, 0, 0, 5.24273, 0, 5.24608, -5.24528, -4}, {-3.59357e-12, 3.68038, 1.41455, 2.62736e-12, -2.69097, 1.9177, -3.2348, 0.574024, -0.993189, 3.2348, -1.56344, -2.33906}, {2.74148, 0.0555531, 2.80173, -2.9202, -2.12061, -0.341431, -0.0977885, 3.03978, -0.0364189, 0.27651, -0.974727, -2.42388}, {4.00321, 3.99728, 3.99972, 0, 0, -3.59038, -0.841653, -8.14937, -0.83453, -3.16156, 4.15209, 0.425192}, {0, 8.88178e-16, -7.0469, 0, 7.04488, 0, -4, -3.99886, 4, 4, -3.04603, 3.0469}, {-4.40759e-12, 4.51512, -3.21766, 0, 0, 4.03735, -3.2348, -1.28032, 0.328292, 3.2348, -3.2348, -1.14798}, {-3.2348, -3.2348, 1.306, 4.40977e-12, 4.51512, -3.21766, 0, 0, 4.03735, 3.2348, -1.28032, -2.12568}, {1.28032, 0.265417, 3.2348, -4.51512, 1.06793, -3.90061e-12, 3.2348, 1.75796, -3.2348, 0, -3.09131, 0}, {-2.85306, -1.28668, -1.28504, 3.1184, -0.694894, -0.694008, 0.0152986, 3.82424, -1.42003, -0.280638, -1.84266, 3.39908}, {3.0469, 4, -3.0469, -7.0469, 0, 0, 4, -4, -4, 0, 0, 7.0469}, {1.29201, -3.25531, 0.810704, 0, 0, -2.6315, -4.51512, -3.75807e-12, 1.37723, 3.22311, 3.25531, 0.443571}, {-3.66502, 2.14914, 1.43616, 0.752328, 1.90198, -1.90298, 4.02391, -1.24183, 1.24643, -1.11122, -2.8093, -0.779603}, {8.15492, -3.3488, 0.835098, -4.15492, -1.54688, 3.1649, 0, 4.85752, 0, -4, 0.0381551, -4}, {-3.45053, 1.3657, -3.45053, 3.59038, 0, 0, 0.304504, 2.97354, 3.89489, -0.444357, -4.33924, -0.444357}, {-4, 3.0469, -3.0469, 0, -7.0469, 0, 4, 4, -4, 0, 0, 7.0469}, {-10.7068, 3.65991, -3.65991, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, 3.65991, -3.65991, 3.65991}, {0, -3.59038, 4.44089e-16, 3.1649, 0.425481, 4.15492, 0.835098, -0.835098, -8.15492, -4, 4, 4}, {-1.94171, 5.28363, -1.94171, 2.66708, -5.57073, -2.5723, 2.43635, -0.964293, 2.43635, -3.16172, 1.25139, 2.07766}, {0.099584, -1.28032, 3.2348, -1.88193, 4.51512, 4.40977e-12, 2.36134, 0, 0, -0.578997, -3.2348, -3.2348}, {-6.2118, -0.835098, -8.15492, 3.1649, -3.1649, 4.15492, 7.0469, 0, 0, -4, 4, 4}, {0.75324, 1.90144, -1.90334, 5.34316, -3.13319, -2.09374, -1.32234, 1.89318, 3.34138, -4.77406, -0.661432, 0.655698}, {4.44089e-16, 7.04488, 0, -4.15492, 3.164, -3.1649, 8.15492, -6.21002, -0.835098, -4, -3.99886, 4}, {-2.97354, -3.89986, -3.89489, 4.33924, 5.691, 0.444357, -1.3657, 3.45494, 3.45053, 0, -5.24608, 0}, {0, 0, -5.23939, 4, 5.24608, 5.23939, -4, -1.55241e-11, -1.5915e-11, 0, -5.24608, 0}, {-0.444357, 5.68374, 4.33924, 3.89489, -3.89489, -2.97354, 0, -5.23939, 0, -3.45053, 3.45053, -1.3657}, {3.52345, -3.52345, -3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345, -3.52345}, {3.59038, 0, 0, 0.304504, -3.89489, -2.97354, -0.444357, 0.444357, 4.33924, -3.45053, 3.45053, -1.3657}, {5.23123, -8.88178e-16, 0, -5.23123, -5.23939, -4, -1.6327e-11, -1.54706e-11, 4, 0, 5.23939, 0}, {-1.36374, -3.44772, 3.44954, -2.97575, 3.89171, -0.30733, 4.3395, -0.443995, 0.448176, 0, 0, -3.59038}, {-3.16371, 4.15492, -3.1649, 4.00114, 4, 4, -7.0469, 0, 0, 6.20947, -8.15492, -0.835098}, {-3.52395, -3.52295, -3.52295, -3.52295, 3.52295, 3.52295, 3.52295, -3.52295, 3.52395, 3.52395, 3.52295, -3.52395}, {4, -4, -4.00114, -8.15492, 0.835098, -6.20947, 0, 0, 7.0469, 4.15492, 3.1649, 3.16371}, {-0.425481, 4.15492, 3.1649, 0.835098, -8.15492, 0.835098, -4, 4, -4, 3.59038, 0, 0}, {-1.79519, 1.79519, -1.79519, -1.79519, -1.79519, 1.79519, -0.0700075, -3.65719, -3.65719, 3.66039, 3.65719, 3.65719}, {4, 4, -4, 0, 0, 7.0469, -7.0469, 0, 0, 3.0469, -4, -3.0469}, {1.16094, -1.15703, 4.97097, -1.66567, -3.57722, 1.41703, -2.89698, 2.8944, -1.14655, 3.40171, 1.83985, -5.24145}, {-2.7042, -1.06842, -2.70002, 1.70166, -5.90879, -3.52267, 2.19866, 5.37974, 2.18568, -1.19612, 1.59748, 4.03701}, {4.33729, -5.67235, 0.447948, -1.36509, -3.44596, 3.4494, 0, 5.23123, 0, -2.97221, 3.88708, -3.89735}, {3.2348, -3.2348, -1.14797, 0, 0, 4.03735, 1.28032, 3.2348, -1.49462, -4.51512, -4.40977e-12, -1.39475}, {4, 4, 4, -0.835098, -0.835098, -8.15492, 0, -3.59038, 0, -3.1649, 0.425481, 4.15492}, {-3.1649, -3.1649, 4.15492, -7.0469, 0, 0, 4, 4, 4, 6.2118, -0.835098, -8.15492}, {0.724826, 0.724826, -6.59499, -3.21143, -3.21143, -3.21143, 3.7299, 0.139517, 3.7299, -1.24329, 2.34709, 6.07653}, {2.48661, 2.48661, 9.80643, -3.21143, -3.21143, -3.21143, -1.7154, 5.33149, 5.33149, 2.44023, -4.60667, -11.9265}, {-4.95125, 1.10332, 1.10192, -1.44818, -1.58249, 3.65892, 0.833328, -2.10815, -2.10546, 5.5661, 2.58731, -2.65538}, {0.836183, -2.10682, -2.10682, 4.11656, 1.00419, 1.00419, -1.14088, 2.87451, -0.715871, -3.81187, -1.77188, 1.8185}, {0.343882, -3.2462, -1.28483, 0.297233, 0.297493, 4.63286, 2.13498, 2.13685, 0.845752, -2.7761, 0.811861, -4.19379}, {5.55112e-17, 5.23939, 8.88178e-16, -3.44772, -3.45309, -1.36374, 3.89171, 3.89778, -2.97575, -0.443995, -5.68407, 4.3395}, {3.58725, -4.44089e-16, 0, -3.44752, -3.45053, -1.3657, -0.443969, -0.444357, 4.33924, 0.304238, 3.89489, -2.97354}, {3.65991, -3.65991, -3.65991, 3.52345, 3.52345, -3.52345, -3.52345, -3.52345, -3.52345, -3.65991, 3.65991, 10.7068}, {3.1649, -4.15492, -3.1649, 0, 0, -7.0469, -4, -4, 4, 0.835098, 8.15492, 6.2118}, {-4, -4, 4, 0.835098, 8.15492, -0.835098, 3.59038, 0, 0, -0.425481, -4.15492, -3.1649}, {-1.3476, -0.0112467, -3.55949, 1.85019, -3.24836, -1.05487, 1.92324, 3.24442, -0.189939, -2.42583, 0.0151799, 4.80429}, {1.17675, 3.24909, 1.28847, -0.315792, -3.2348, 3.2348, -3.14489, 0, 0, 2.28393, -0.014292, -4.52327}, {8.15492, -0.835098, -0.835098, -4, 4, 4, 0, 0, -3.59038, -4.15492, -3.1649, 0.425481}, {-4.15492, -3.1649, -3.1649, -4, 4, 4, 0, -7.0469, 0, 8.15492, 6.2118, -0.835098}, {0.137487, 7.18233, 7.18233, -1.79519, 1.79519, -1.79519, 3.52295, -3.52295, -3.52295, -1.86524, -5.45458, -1.86419}, {3.52295, -3.52295, -3.52295, -3.66043, -3.65939, -3.65939, -3.52345, -3.52345, 3.52345, 3.66094, 10.7058, 3.65888}, {1.67988, -1.68212, -5.18466, -2.30896, 2.30807, 0.915293, -1.39444, -3.85015, -1.52682, 2.02352, 3.2242, 5.7962}, {3.4516, -3.45027, -1.36825, -3.89922, 3.89484, -2.97306, -5.24608, 0, 0, 5.6937, -0.444568, 4.3413}, {1.94453e-16, 2.70417, 0, 3.25531, -0.177688, 3.22311, -3.25531, -0.557762, 1.29201, 3.62091e-12, -1.96872, -4.51512}, {3.09726e-12, 1.01994, -3.86266, -3.25531, -0.69454, 0.97832, 3.25531, -2.18133, -1.3721, -3.41346e-12, 1.85593, 4.25643}, {2.90521, -1.78203, -2.9082, 2.41571, 1.84427, 2.82665, -2.85063, 1.82369, -2.38912, -2.47029, -1.88594, 2.47066}, {-5.23939, 0, -8.88178e-16, 0, 0, 5.24273, 2.28278e-11, -4, -0.0025524, 5.23939, 4, -5.24018}, {-3.52295, 3.52295, 3.52295, 1.79545, 1.79493, -1.79545, 7.18233, -7.18233, 0.137487, -5.45483, 1.86445, -1.86498}, {-3.52295, 3.52295, 3.52295, -3.52395, -3.52295, -3.52295, -3.65939, 3.65939, -3.66043, 10.7063, -3.65939, 3.66043}, {-0.835098, 0.835098, 8.15492, 0, 3.59038, 0, 4, -4, -4, -3.1649, -0.425481, -4.15492}, {-7.0469, 5.55112e-16, 0, 4, -4, -4, -3.1649, 3.1649, -4.15492, 6.2118, 0.835098, 8.15492}, {0.662971, 0.664005, -4.25288, 1.65703, 1.65961, 0.655439, -2.91351, 2.32133, -1.15244, 0.59351, -4.64495, 4.74988}, {1.19438, -3.49493, 0, -2.76951, 1.19435, 0, 1.94164, -0.567827, 2.9332, -0.366511, 2.8684, -2.9332}, {2.36134, 1.0718e-17, 0, 0.671422, -3.2348, 3.2348, -0.342675, 3.2348, 1.28032, -2.69009, 3.55093e-12, -4.51512}, {-1.10548, 3.2348, 0, -1.25586, -3.2348, 0, 0.613756, 2.30645e-12, -2.9332, 1.74759, -2.30645e-12, 2.9332}, {3.2348, 0.120997, 3.2348, 0, -3.09131, 0, -3.2348, -0.551371, 1.28032, 3.95817e-12, 3.52168, -4.51512}, {-3.2348, 0.76173, -0.403199, 2.15323e-12, -1.17552, -2.45621, 3.2348, 2.34907, 0.378214, -2.17514e-12, -1.93527, 2.4812}, {-3.53969, 3.53969, 2.69627, -1.11299, 1.11299, -6.1991, 5.13509, 1.9118, -3.91153, -0.482412, -6.56449, 7.41436}, {4.72983, -3.60283, 2.31706, -1.62186, -5.81149, 1.62186, -3.59839, 2.74098, 3.59839, 0.490411, 6.67334, -7.53731}, {-4, 4, -4, 4, -4, -3.0469, 0, 7.0469, 0, 0, -7.0469, 7.0469}, {0, 0, 7.0469, 4, -3.0469, -4, -4, -4, 4, 0, 7.0469, -7.0469}, {1.26315, 3.1826, -0.407781, -4.48373, 0.0790768, 0.0790768, -1.01464, -2.55645, -2.55645, 4.23522, -0.705229, 2.88515}, {-1.01079, -2.55709, -2.55383, 1.69808, -0.95029, 4.29031, 5.49464, 2.47799, 2.47483, -6.18193, 1.02939, -4.21131}, {-1.79519, -1.79519, 1.79519, -3.65991, 3.65991, -3.65991, 1.79519, 1.79519, 1.79519, 3.65991, -3.65991, 0.0695263}, {-1.79519, -1.79519, 1.79519, 5.4551, -1.86472, 1.86472, 3.52345, -3.52345, -3.52345, -7.18336, 7.18336, -0.13646}, {0, -4.44089e-16, 3.59038, -8.15492, -0.835098, 0.835098, 4, 4, -4, 4.15492, -3.1649, -0.425481}, {4.15492, -3.1649, 3.1649, 4, 4, -4, 0, -7.0469, 0, -8.15492, 6.2118, 0.835098}, {4.18211, -0.841369, 0.841369, 1.63378, -1.11155, -4.12784, -0.96395, -2.43548, 2.43548, -4.85193, 4.3884, 0.850991}, {-2.9332, -0.654372, 2.78087, 0, 0.366146, -3.84129, 0, 2.94119, 1.57488, 2.9332, -2.65297, -0.514459}, {4.51512, -1.06793, 3.90044e-12, 0, -3.09131, 0, -1.28032, 0.871067, 3.2348, -3.2348, 3.28817, -3.2348}, {0, -0.430374, 4.51512, -2.9332, -0.109716, -2.9332, 0, 3.52168, -4.51512, 2.9332, -2.98159, 2.9332}, {4.19026, 0.820764, 0.814826, 1.21474, -3.06912, 2.16855, -0.936049, 2.36499, 2.36631, -4.46895, -0.116634, -5.34969}, {0.972372, 0.736781, -3.03724, -3.79781, 2.2903, -1.05943, 0.111338, -3.09792, 0.84769, 2.7141, 0.0708344, 3.24899}, {-2.55729, 1.01135, -2.55763, -2.08284, -1.24835, 3.15697, 1.89416, -5.27077, 1.90402, 2.74596, 5.50777, -2.50336}, {3.77679, -1.49465, 0.187718, 0.660093, 4.25334, 0.656376, -2.557, 1.01192, -2.55789, -1.87988, -3.77061, 1.7138}, {-5.23939, 0, -5.55112e-17, 3.4502, -1.36448, 3.45065, -3.90439, -2.97758, -3.8953, 5.69358, 4.34205, 0.444645}, {-4.44089e-16, 4.44089e-16, -3.59038, 3.4494, -1.36509, 3.45059, 0.447948, 4.33729, 0.444157, -3.89735, -2.97221, -0.304367}, {4.28053, 0.593056, -0.587914, -0.673906, 1.70372, -1.70733, 1.45255, -3.67222, -1.55938, -5.05918, 1.37545, 3.85462}, {0, 4.47576, 0.618208, 0, -4.47576, 1.81259, -2.9332, -2.90763, -0.707734, 2.9332, 2.90763, -1.72306}, {-1.27174, 3.21511, 1.36527, 0, 0, -2.4308, 4.51512, -3.70603e-12, -0.839751, -3.24338, -3.21511, 1.90528}, {0.947177, -0.947177, -4.14023, -3.0344, -2.20499, -1.201, 1.74832, -1.74832, 0.691975, 0.338905, 4.90048, 4.64925}, {1.90928, 0.579177, 2.90015, -2.97176, -1.29918, -0.341631, 1.26427, 3.63788, 0.209764, -0.201792, -2.91787, -2.76828}, {3.04112e-12, -1.63545, -4.51512, 0, -3.01876, 0, 3.2348, 2.35061, 1.28032, -3.2348, 2.3036, 3.2348}, {4.04958, 1.77038, 0.465536, -2.40427, -1.3066, 2.40427, -4.10736, 1.28953, -0.407754, 2.46205, -1.7533, -2.46205}, {0.835098, -0.835098, 8.15492, -4, 4, -4, 3.59038, 0, 0, -0.425481, -3.1649, -4.15492}, {3.1649, -3.1649, -4.15492, -4, 4, -4, 0, -7.0469, 0, 0.835098, 6.2118, 8.15492}, {-3.65991, 3.65991, 3.65991, 1.79519, 1.79519, -1.79519, 1.79519, -1.79519, 1.79519, 0.0695263, -3.65991, -3.65991}, {1.79519, -1.79519, 1.79519, 1.86472, -1.86472, -5.4551, -3.52345, -3.52345, -3.52345, -0.13646, 7.18336, 7.18336}, {3.0611, -1.07112, 2.10077e-12, -0.369018, 1.30083, 3.2348, 0.267075, 1.7536, -3.2348, -2.95915, -1.98331, -2.03061e-12}, {-1.28032, 0.716498, -3.2348, -3.2348, -0.619904, 3.2348, 0, -3.12276, 0, 4.51512, 3.02616, 3.09876e-12}, {-3.24675, 0.177221, -3.21463, 0, 2.70417, 0, -1.28505, -0.665307, 3.24278, 4.53179, -2.21609, -0.0281511}, {-1.03768, -0.786269, 3.24125, 3.76174, 0.864649, -0.0233676, 1.42117, -2.10543, -3.24363, -4.14523, 2.02705, 0.0257498}, {-3.65991, -3.65991, 3.65991, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345, 3.65991, 3.65991, -10.7068}, {-1.02588, -1.02588, -4.04576, 5.15074, -1.89616, -1.23707, -2.74863, 4.29827, 1.25677, -1.37623, -1.37623, 4.02606}, {4, -4, -4, -3.1649, -4.15492, 3.1649, 0, 0, 7.0469, -0.835098, 8.15492, -6.2118}, {4.27497, -6.68514, -1.95466, -0.750905, 7.33275, 1.46136, -3.95428, 3.55351, -2.7068, 0.430212, -4.20112, 3.20009}, {-0.675958, 1.70428, -1.70576, 3.47227, -0.944013, -2.64554, 0.813742, 1.53558, 2.05346, -3.61005, -2.29584, 2.29785}, {-2.9332, 0.268765, -0.269, 0, 1.01807, 2.57142, 0, -3.15223, -0.435397, 2.9332, 1.86539, -1.86702}, {2.9332, -2.86386e-12, 0.906086, 0, 3.2348, -2.30525, 0, -3.2348, -1.73209, -2.9332, 2.86386e-12, 3.13126}, {-1.28032, -3.2348, -0.365321, -3.2348, 3.2348, 1.14798, 0, 0, 4.03735, 4.51512, -4.40815e-12, -4.82}, {4.32811, 0.737725, -1.71304, -3.72649, -3.72649, 1.47492, -0.518804, -0.518804, 4.72046, -0.0828155, 3.50757, -4.48234}, {-5.23939, -5.55112e-17, 0, -3.90017, -3.8953, -2.97758, 3.45213, 3.45065, -1.36448, 5.68742, 0.444645, 4.34205}, {3.45053, 3.45053, -1.3657, 0, -3.59038, 0, 0.444357, 0.444357, 4.33924, -3.89489, -0.304504, -2.97354}, {0, 1.06747e-17, -2.884, -3.22311, 3.25531, -0.327888, -1.29201, -3.25531, 0.417097, 4.51512, 3.75787e-12, 2.79479}, {-0.0130226, -3.25531, 1.20877, -0.260244, 3.25531, 1.50608, 3.12118, 2.59785e-12, -0.952039, -2.84791, -2.3704e-12, -1.76282}, {0.578997, 3.2348, 3.2348, 2.36134, 0, 0, -0.250249, -3.2348, 1.28032, -2.69009, -3.55036e-12, -4.51512}, {-1.12419, -3.2348, -0.186522, 0.812252, -2.04448e-12, -2.60004, -1.39607, 3.2348, -0.0801962, 1.708, 2.2542e-12, 2.86675}, {-3.93279, 1.55848, -1.3088, 1.97526, -0.782753, -1.97415, -1.50913, 5.11867, 1.50188, 3.46666, -5.8944, 1.78108}, {-0.47019, -4.32902, 0.47019, 0.867473, 1.07771, 2.72291, 1.97453, -0.781507, -1.97453, -2.37181, 4.03281, -1.21857}, {-3.45037, 1.36731, 3.44843, 0, 0, -5.23939, 3.89524, 2.97704, -3.89946, -0.444879, -4.34434, 5.69042}, {-3.45053, 1.3657, 3.45053, 3.59038, 0, 0, -0.444357, -4.33924, 0.444357, 0.304504, 2.97354, -3.89489}, {2.40563, -3.3686, -2.16577, -4.01552, 0.313534, -3.06173, -1.35813, -0.303573, 2.96446, 2.96803, 3.35864, 2.26304}, {0.444309, 1.73608, 4.33877, 0, 4.85752, 0, 3.45016, -2.1866, -1.36934, -3.89447, -4.407, -2.96943}, {-1.77354, -2.8259, -5.08017, -1.99992, 2.80049, 1.80052, -0.192763, -1.93544, 1.91528, 3.96622, 1.96086, 1.36437}, {3.41957, -0.149544, 3.15791, -3.35877, 2.12868, 1.33307, 6.03338, 1.03375, -2.39461, -6.09418, -3.0129, -2.09638}, {1.36731, -2.16592, -3.45037, 0, 4.85752, 0, -4.34434, 1.78399, -0.444879, 2.97704, -4.4756, 3.89524}, {-2.95631, -0.302739, 1.37126, 3.02503, 0.309776, 3.95804, 2.1672, -3.36845, -2.40376, -2.23591, 3.36142, -2.92554}, {2.31112, 1.19654, -5.83206, -1.28659, 2.03806, 3.24669, -3.3095, 0.144731, -3.05627, 2.28498, -3.37933, 5.64163}, {-1.96264, -1.84718, 0.269133, -1.79514, 2.79017, 1.99109, 5.26848, -3.1772, 1.46969, -1.5107, 2.23422, -3.72992}, {-0.60788, 3.25394, -0.100754, 4.36982, -1.029, 0.544673, 0.0459483, -1.94609, 2.48692, -3.80789, -0.278843, -2.93084}, {-2.10446, -2.10356, 0.831802, -1.45971, -1.45589, -3.94218, -2.09284, 3.1452, -1.24369, 5.65702, 0.414251, 4.35407}, {3.27119, 4.85191, 0.362578, 0.814367, -4.35925, 0.134979, -0.753128, 2.3313, 2.35448, -3.33243, -2.82396, -2.85204}, {-3.50419, 0, -8.88178e-16, 2.14843, -3.22874, 1.27672, -2.43779, 0.014006, -4.52341, 3.79356, 3.21473, 3.24669}}
]
- + total size : 2.1e+02kB
+ + total size : 1.6e+02kB
]
- + total size : 2.1e+02kB
+ + total size : 1.6e+02kB
]
Vector<double> [
+ id : grad_on_quad
+ size : 341
+ nb_component : 6
+ allocated size : 341
+ memory size : 16kB
- + values : {{13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}, {13, 23, 31, 11, 7, 5}}
+ + values : {{13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}, {13, 11, 23, 7, 31, 5}}
]
diff --git a/test/test_fem/test_gradient_triangle_3.verified b/test/test_fem/test_gradient_triangle_3.verified
index 198cc73dd..66bc77ab3 100644
--- a/test/test_fem/test_gradient_triangle_3.verified
+++ b/test/test_fem/test_gradient_triangle_3.verified
@@ -1,155 +1,151 @@
Epsilon : 1e-12
FEM [
+ id : my_fem
+ element dimension : 2
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 13
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
+ ]
(not_ghost:_triangle_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 16
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{3, 9, 6}, {0, 12, 7}, {2, 10, 5}, {1, 11, 4}, {7, 8, 9}, {6, 9, 8}, {6, 8, 10}, {7, 12, 8}, {5, 10, 8}, {4, 8, 12}, {4, 11, 8}, {5, 8, 11}, {0, 4, 12}, {3, 7, 9}, {1, 5, 11}, {2, 6, 10}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 13
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
+ ]
(not_ghost:_triangle_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 16
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{3, 9, 6}, {0, 12, 7}, {2, 10, 5}, {1, 11, 4}, {7, 8, 9}, {6, 9, 8}, {6, 8, 10}, {7, 12, 8}, {5, 10, 8}, {4, 8, 12}, {4, 11, 8}, {5, 8, 11}, {0, 4, 12}, {3, 7, 9}, {1, 5, 11}, {2, 6, 10}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 7
+ + nb vectors : 6
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 16
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{3, 9, 6}, {0, 12, 7}, {2, 10, 5}, {1, 11, 4}, {7, 8, 9}, {6, 9, 8}, {6, 8, 10}, {7, 12, 8}, {5, 10, 8}, {4, 8, 12}, {4, 11, 8}, {5, 8, 11}, {0, 4, 12}, {3, 7, 9}, {1, 5, 11}, {2, 6, 10}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 13
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}}
]
Vector<double> [
+ id : my_fem:jacobians:_triangle_3
+ size : 16
+ nb_component : 1
+ allocated size : 16
+ memory size : 0.12kB
+ values : {{0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_triangle_3
- + size : 1
- + nb_component : 2
- + allocated size : 2000
- + memory size : 31kB
- + values : {{0.333333, 0.333333}}
- ]
Vector<double> [
+ id : my_fem:shapes:_triangle_3
+ size : 16
+ nb_component : 3
+ allocated size : 16
+ memory size : 0.38kB
+ values : {{0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_triangle_3
+ size : 16
+ nb_component : 6
+ allocated size : 16
+ memory size : 0.75kB
+ values : {{-2, 2, 0, -4, 2, 2}, {-2, -2, 4, 0, -2, 2}, {2, 2, -4, 0, 2, -2}, {2, -2, 0, 4, -2, -2}, {-2, -2, 2, -2, 1.04929e-11, 4}, {2, 2, -4, 1.08926e-11, 2, -2}, {-2, 2, -2, -2, 4, -1.08926e-11}, {-2, 2, -1.04929e-11, -4, 2, 2}, {2, -2, 8.43547e-12, 4, -2, -2}, {2, -2, 2, 2, -4, 8.03579e-12}, {-2, -2, 4, -8.03579e-12, -2, 2}, {2, 2, -2, 2, -8.43547e-12, -4}, {-2, -2, 2, -2, 0, 4}, {-2, 2, -2, -2, 4, 0}, {2, -2, 2, 2, -4, 0}, {2, 2, -2, 2, 0, -4}}
]
- + total size : 1e+02kB
+ + total size : 72kB
]
- + total size : 1e+02kB
+ + total size : 72kB
]
Vector<double> [
+ id : grad_on_quad
+ size : 16
+ nb_component : 4
+ allocated size : 16
+ memory size : 0.5kB
- + values : {{13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}}
+ + values : {{13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}}
]
diff --git a/test/test_fem/test_gradient_triangle_6.verified b/test/test_fem/test_gradient_triangle_6.verified
index ec13b8644..e23da9cc7 100644
--- a/test/test_fem/test_gradient_triangle_6.verified
+++ b/test/test_fem/test_gradient_triangle_6.verified
@@ -1,155 +1,151 @@
Epsilon : 1e-12
FEM [
+ id : my_fem
+ element dimension : 2
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 41
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}, {0.125, 0.875}, {0.375, 0.875}, {0.125, 0.125}, {0.125, 0.375}, {0.875, 0.875}, {0.875, 0.625}, {0.875, 0.125}, {0.625, 0.125}, {0.25, 0.5}, {0.375, 0.625}, {0.125, 0.625}, {0.5, 0.75}, {0.625, 0.625}, {0.625, 0.875}, {0.375, 0.375}, {0.75, 0.5}, {0.5, 0.25}, {0.375, 0.125}, {0.625, 0.375}, {0.875, 0.375}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 8
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 4, 5}, {4, 1, 6}, {1, 7, 8}, {7, 2, 9}, {2, 10, 11}, {10, 3, 12}, {3, 13, 14}, {13, 0, 15}}
]
+ ]
(not_ghost:_triangle_6) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 16
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{3, 17, 10, 21, 22, 12}, {0, 20, 13, 23, 24, 15}, {2, 18, 7, 25, 26, 9}, {1, 19, 4, 27, 28, 6}, {13, 16, 17, 29, 30, 31}, {10, 17, 16, 22, 30, 32}, {10, 16, 18, 32, 33, 34}, {13, 20, 16, 24, 35, 29}, {7, 18, 16, 26, 33, 36}, {4, 16, 20, 37, 35, 38}, {4, 19, 16, 28, 39, 37}, {7, 16, 19, 36, 39, 40}, {0, 4, 20, 5, 38, 23}, {3, 13, 17, 14, 31, 21}, {1, 7, 19, 8, 40, 27}, {2, 10, 18, 11, 34, 25}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 41
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}, {0.125, 0.875}, {0.375, 0.875}, {0.125, 0.125}, {0.125, 0.375}, {0.875, 0.875}, {0.875, 0.625}, {0.875, 0.125}, {0.625, 0.125}, {0.25, 0.5}, {0.375, 0.625}, {0.125, 0.625}, {0.5, 0.75}, {0.625, 0.625}, {0.625, 0.875}, {0.375, 0.375}, {0.75, 0.5}, {0.5, 0.25}, {0.375, 0.125}, {0.625, 0.375}, {0.875, 0.375}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 8
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 4, 5}, {4, 1, 6}, {1, 7, 8}, {7, 2, 9}, {2, 10, 11}, {10, 3, 12}, {3, 13, 14}, {13, 0, 15}}
]
+ ]
(not_ghost:_triangle_6) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 16
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{3, 17, 10, 21, 22, 12}, {0, 20, 13, 23, 24, 15}, {2, 18, 7, 25, 26, 9}, {1, 19, 4, 27, 28, 6}, {13, 16, 17, 29, 30, 31}, {10, 17, 16, 22, 30, 32}, {10, 16, 18, 32, 33, 34}, {13, 20, 16, 24, 35, 29}, {7, 18, 16, 26, 33, 36}, {4, 16, 20, 37, 35, 38}, {4, 19, 16, 28, 39, 37}, {7, 16, 19, 36, 39, 40}, {0, 4, 20, 5, 38, 23}, {3, 13, 17, 14, 31, 21}, {1, 7, 19, 8, 40, 27}, {2, 10, 18, 11, 34, 25}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 7
+ + nb vectors : 6
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 8
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 4, 5}, {4, 1, 6}, {1, 7, 8}, {7, 2, 9}, {2, 10, 11}, {10, 3, 12}, {3, 13, 14}, {13, 0, 15}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 16
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{3, 17, 10, 21, 22, 12}, {0, 20, 13, 23, 24, 15}, {2, 18, 7, 25, 26, 9}, {1, 19, 4, 27, 28, 6}, {13, 16, 17, 29, 30, 31}, {10, 17, 16, 22, 30, 32}, {10, 16, 18, 32, 33, 34}, {13, 20, 16, 24, 35, 29}, {7, 18, 16, 26, 33, 36}, {4, 16, 20, 37, 35, 38}, {4, 19, 16, 28, 39, 37}, {7, 16, 19, 36, 39, 40}, {0, 4, 20, 5, 38, 23}, {3, 13, 17, 14, 31, 21}, {1, 7, 19, 8, 40, 27}, {2, 10, 18, 11, 34, 25}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 41
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}, {0.125, 0.875}, {0.375, 0.875}, {0.125, 0.125}, {0.125, 0.375}, {0.875, 0.875}, {0.875, 0.625}, {0.875, 0.125}, {0.625, 0.125}, {0.25, 0.5}, {0.375, 0.625}, {0.125, 0.625}, {0.5, 0.75}, {0.625, 0.625}, {0.625, 0.875}, {0.375, 0.375}, {0.75, 0.5}, {0.5, 0.25}, {0.375, 0.125}, {0.625, 0.375}, {0.875, 0.375}}
]
Vector<double> [
+ id : my_fem:jacobians:_triangle_6
+ size : 48
+ nb_component : 1
+ allocated size : 48
+ memory size : 0.38kB
+ values : {{0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_triangle_6
- + size : 3
- + nb_component : 2
- + allocated size : 2000
- + memory size : 31kB
- + values : {{0.166667, 0.166667}, {0.666667, 0.166667}, {0.166667, 0.666667}}
- ]
Vector<double> [
+ id : my_fem:shapes:_triangle_6
+ size : 48
+ nb_component : 6
+ allocated size : 48
+ memory size : 2.2kB
+ values : {{0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_triangle_6
+ size : 48
+ nb_component : 12
+ allocated size : 48
+ memory size : 4.5kB
+ values : {{-3.33333, 3.33333, 0, 1.33333, -0.666667, -0.666667, -1.33333, -9.33333, 1.33333, -1.33333, 4, 6.66667}, {0.666667, -0.666667, 2.96059e-15, -6.66667, -0.666667, -0.666667, -5.33333, 2.66667, 5.33333, 2.66667, -7.40149e-16, 2.66667}, {0.666667, -0.666667, 0, 1.33333, 3.33333, 3.33333, -1.33333, -1.33333, 1.33333, -9.33333, -4, 6.66667}, {-3.33333, -3.33333, -1.33333, 0, 0.666667, -0.666667, 9.33333, -1.33333, 1.33333, 1.33333, -6.66667, 4}, {0.666667, 0.666667, 6.66667, 0, 0.666667, -0.666667, -2.66667, -5.33333, -2.66667, 5.33333, -2.66667, 4.44089e-16}, {0.666667, 0.666667, -1.33333, 0, -3.33333, 3.33333, 1.33333, -1.33333, 9.33333, 1.33333, -6.66667, -4}, {3.33333, 3.33333, 1.33333, 0, -0.666667, 0.666667, -9.33333, 1.33333, -1.33333, -1.33333, 6.66667, -4}, {-0.666667, -0.666667, -6.66667, -2.96059e-15, -0.666667, 0.666667, 2.66667, 5.33333, 2.66667, -5.33333, 2.66667, 7.40149e-16}, {-0.666667, -0.666667, 1.33333, 0, 3.33333, -3.33333, -1.33333, 1.33333, -9.33333, -1.33333, 6.66667, 4}, {3.33333, -3.33333, 0, -1.33333, 0.666667, 0.666667, 1.33333, 9.33333, -1.33333, 1.33333, -4, -6.66667}, {-0.666667, 0.666667, 0, 6.66667, 0.666667, 0.666667, 5.33333, -2.66667, -5.33333, -2.66667, -4.44089e-16, -2.66667}, {-0.666667, 0.666667, 0, -1.33333, -3.33333, -3.33333, 1.33333, 1.33333, -1.33333, 9.33333, 4, -6.66667}, {-3.33333, -3.33333, -0.666667, 0.666667, -3.49779e-12, -1.33333, 4, -6.66667, 1.33333, 1.33333, -1.33333, 9.33333}, {0.666667, 0.666667, 3.33333, -3.33333, -3.49779e-12, -1.33333, -4, -6.66667, 1.33333, 9.33333, -1.33333, 1.33333}, {0.666667, 0.666667, -0.666667, 0.666667, 1.74912e-11, 6.66667, -6.99581e-12, -2.66667, 5.33333, -2.66667, -5.33333, -2.66667}, {3.33333, 3.33333, 1.33333, -3.63028e-12, -0.666667, 0.666667, -9.33333, 1.33333, -1.33333, -1.33333, 6.66667, -4}, {-0.666667, -0.666667, -6.66667, 1.81499e-11, -0.666667, 0.666667, 2.66667, 5.33333, 2.66667, -5.33333, 2.66667, -7.26041e-12}, {-0.666667, -0.666667, 1.33333, -3.63087e-12, 3.33333, -3.33333, -1.33333, 1.33333, -9.33333, -1.33333, 6.66667, 4}, {-3.33333, 3.33333, 0.666667, 0.666667, -1.33333, 3.63087e-12, -6.66667, -4, 1.33333, -1.33333, 9.33333, 1.33333}, {0.666667, -0.666667, -3.33333, -3.33333, -1.33333, 3.63087e-12, -6.66667, 4, 9.33333, -1.33333, 1.33333, 1.33333}, {0.666667, -0.666667, 0.666667, 0.666667, 6.66667, -1.81544e-11, -2.66667, 7.26108e-12, -2.66667, -5.33333, -2.66667, 5.33333}, {-3.33333, 3.33333, 3.49705e-12, 1.33333, -0.666667, -0.666667, -1.33333, -9.33333, 1.33333, -1.33333, 4, 6.66667}, {0.666667, -0.666667, -1.74868e-11, -6.66667, -0.666667, -0.666667, -5.33333, 2.66667, 5.33333, 2.66667, 6.99515e-12, 2.66667}, {0.666667, -0.666667, 3.49765e-12, 1.33333, 3.33333, 3.33333, -1.33333, -1.33333, 1.33333, -9.33333, -4, 6.66667}, {3.33333, -3.33333, -2.81197e-12, -1.33333, 0.666667, 0.666667, 1.33333, 9.33333, -1.33333, 1.33333, -4, -6.66667}, {-0.666667, 0.666667, 1.40554e-11, 6.66667, 0.666667, 0.666667, 5.33333, -2.66667, -5.33333, -2.66667, -5.62261e-12, -2.66667}, {-0.666667, 0.666667, -2.81197e-12, -1.33333, -3.33333, -3.33333, 1.33333, 1.33333, -1.33333, 9.33333, 4, -6.66667}, {3.33333, -3.33333, -0.666667, -0.666667, 1.33333, -2.67845e-12, 6.66667, 4, -1.33333, 1.33333, -9.33333, -1.33333}, {-0.666667, 0.666667, 3.33333, 3.33333, 1.33333, -2.67904e-12, 6.66667, -4, -9.33333, 1.33333, -1.33333, -1.33333}, {-0.666667, 0.666667, -0.666667, -0.666667, -6.66667, 1.33937e-11, 2.66667, -5.35683e-12, 2.66667, 5.33333, 2.66667, -5.33333}, {-3.33333, -3.33333, -1.33333, 2.67815e-12, 0.666667, -0.666667, 9.33333, -1.33333, 1.33333, 1.33333, -6.66667, 4}, {0.666667, 0.666667, 6.66667, -1.33952e-11, 0.666667, -0.666667, -2.66667, -5.33333, -2.66667, 5.33333, -2.66667, 5.35853e-12}, {0.666667, 0.666667, -1.33333, 2.67904e-12, -3.33333, 3.33333, 1.33333, -1.33333, 9.33333, 1.33333, -6.66667, -4}, {3.33333, 3.33333, 0.666667, -0.666667, 2.81182e-12, 1.33333, -4, 6.66667, -1.33333, -1.33333, 1.33333, -9.33333}, {-0.666667, -0.666667, -3.33333, 3.33333, 2.81182e-12, 1.33333, 4, 6.66667, -1.33333, -9.33333, 1.33333, -1.33333}, {-0.666667, -0.666667, 0.666667, -0.666667, -1.40584e-11, -6.66667, 5.62269e-12, 2.66667, -5.33333, 2.66667, 5.33333, 2.66667}, {-3.33333, -3.33333, -0.666667, 0.666667, 0, -1.33333, 4, -6.66667, 1.33333, 1.33333, -1.33333, 9.33333}, {0.666667, 0.666667, 3.33333, -3.33333, 0, -1.33333, -4, -6.66667, 1.33333, 9.33333, -1.33333, 1.33333}, {0.666667, 0.666667, -0.666667, 0.666667, 0, 6.66667, 6.66134e-16, -2.66667, 5.33333, -2.66667, -5.33333, -2.66667}, {-3.33333, 3.33333, 0.666667, 0.666667, -1.33333, 0, -6.66667, -4, 1.33333, -1.33333, 9.33333, 1.33333}, {0.666667, -0.666667, -3.33333, -3.33333, -1.33333, 0, -6.66667, 4, 9.33333, -1.33333, 1.33333, 1.33333}, {0.666667, -0.666667, 0.666667, 0.666667, 6.66667, 0, -2.66667, -6.66134e-16, -2.66667, -5.33333, -2.66667, 5.33333}, {3.33333, -3.33333, -0.666667, -0.666667, 1.33333, 0, 6.66667, 4, -1.33333, 1.33333, -9.33333, -1.33333}, {-0.666667, 0.666667, 3.33333, 3.33333, 1.33333, 0, 6.66667, -4, -9.33333, 1.33333, -1.33333, -1.33333}, {-0.666667, 0.666667, -0.666667, -0.666667, -6.66667, 0, 2.66667, 6.66134e-16, 2.66667, 5.33333, 2.66667, -5.33333}, {3.33333, 3.33333, 0.666667, -0.666667, 0, 1.33333, -4, 6.66667, -1.33333, -1.33333, 1.33333, -9.33333}, {-0.666667, -0.666667, -3.33333, 3.33333, 0, 1.33333, 4, 6.66667, -1.33333, -9.33333, 1.33333, -1.33333}, {-0.666667, -0.666667, 0.666667, -0.666667, 0, -6.66667, -6.66134e-16, 2.66667, -5.33333, 2.66667, 5.33333, 2.66667}}
]
- + total size : 1.4e+02kB
+ + total size : 1.1e+02kB
]
- + total size : 1.4e+02kB
+ + total size : 1.1e+02kB
]
Vector<double> [
+ id : grad_on_quad
+ size : 48
+ nb_component : 4
+ allocated size : 48
+ memory size : 1.5kB
- + values : {{13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}, {13, 23, 11, 7}}
+ + values : {{13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}, {13, 11, 23, 7}}
]
diff --git a/test/test_fem/test_integrate_hexahedron_8.verified b/test/test_fem/test_integrate_hexahedron_8.verified
index 28a15b81e..3f89d9b79 100644
--- a/test/test_fem/test_integrate_hexahedron_8.verified
+++ b/test/test_fem/test_integrate_hexahedron_8.verified
@@ -1,172 +1,170 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 3
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 125
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.25, 0.75, 1}, {0.25, 0.5, 1}, {0.25, 0.25, 1}, {0.5, 0.75, 1}, {0.5, 0.5, 1}, {0.5, 0.25, 1}, {0.75, 0.75, 1}, {0.75, 0.5, 1}, {0.75, 0.25, 1}, {0.75, 1, 0.25}, {0.75, 1, 0.5}, {0.75, 1, 0.75}, {0.5, 1, 0.25}, {0.5, 1, 0.5}, {0.5, 1, 0.75}, {0.25, 1, 0.25}, {0.25, 1, 0.5}, {0.25, 1, 0.75}, {0.25, 0, 0.75}, {0.25, 0, 0.5}, {0.25, 0, 0.25}, {0.5, 0, 0.75}, {0.5, 0, 0.5}, {0.5, 0, 0.25}, {0.75, 0, 0.75}, {0.75, 0, 0.5}, {0.75, 0, 0.25}, {0.75, 0.75, 0}, {0.75, 0.5, 0}, {0.75, 0.25, 0}, {0.5, 0.75, 0}, {0.5, 0.5, 0}, {0.5, 0.25, 0}, {0.25, 0.75, 0}, {0.25, 0.5, 0}, {0.25, 0.25, 0}, {0, 0.75, 0.25}, {0, 0.5, 0.25}, {0, 0.25, 0.25}, {0, 0.75, 0.5}, {0, 0.5, 0.5}, {0, 0.25, 0.5}, {0, 0.75, 0.75}, {0, 0.5, 0.75}, {0, 0.25, 0.75}, {1, 0.75, 0.75}, {1, 0.75, 0.5}, {1, 0.75, 0.25}, {1, 0.5, 0.75}, {1, 0.5, 0.5}, {1, 0.5, 0.25}, {1, 0.25, 0.75}, {1, 0.25, 0.5}, {1, 0.25, 0.25}, {0.75, 0.75, 0.75}, {0.5, 0.75, 0.75}, {0.25, 0.75, 0.75}, {0.75, 0.75, 0.5}, {0.5, 0.75, 0.5}, {0.25, 0.75, 0.5}, {0.75, 0.75, 0.25}, {0.5, 0.75, 0.25}, {0.25, 0.75, 0.25}, {0.75, 0.5, 0.75}, {0.5, 0.5, 0.75}, {0.25, 0.5, 0.75}, {0.75, 0.5, 0.5}, {0.5, 0.5, 0.5}, {0.25, 0.5, 0.5}, {0.75, 0.5, 0.25}, {0.5, 0.5, 0.25}, {0.25, 0.5, 0.25}, {0.75, 0.25, 0.75}, {0.5, 0.25, 0.75}, {0.25, 0.25, 0.75}, {0.75, 0.25, 0.5}, {0.5, 0.25, 0.5}, {0.25, 0.25, 0.5}, {0.75, 0.25, 0.25}, {0.5, 0.25, 0.25}, {0.25, 0.25, 0.25}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
+ ]
(not_ghost:_quadrangle_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 96
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{6, 8, 44, 35}, {35, 44, 45, 36}, {36, 45, 46, 37}, {37, 46, 23, 4}, {8, 9, 47, 44}, {44, 47, 48, 45}, {45, 48, 49, 46}, {46, 49, 24, 23}, {9, 10, 50, 47}, {47, 50, 51, 48}, {48, 51, 52, 49}, {49, 52, 25, 24}, {10, 7, 38, 50}, {50, 38, 39, 51}, {51, 39, 40, 52}, {52, 40, 5, 25}, {3, 14, 53, 13}, {13, 53, 54, 12}, {12, 54, 55, 11}, {11, 55, 10, 7}, {14, 15, 56, 53}, {53, 56, 57, 54}, {54, 57, 58, 55}, {55, 58, 9, 10}, {15, 16, 59, 56}, {56, 59, 60, 57}, {57, 60, 61, 58}, {58, 61, 8, 9}, {16, 2, 17, 59}, {59, 17, 18, 60}, {60, 18, 19, 61}, {61, 19, 6, 8}, {4, 23, 62, 22}, {22, 62, 63, 21}, {21, 63, 64, 20}, {20, 64, 31, 0}, {23, 24, 65, 62}, {62, 65, 66, 63}, {63, 66, 67, 64}, {64, 67, 30, 31}, {24, 25, 68, 65}, {65, 68, 69, 66}, {66, 69, 70, 67}, {67, 70, 29, 30}, {25, 5, 26, 68}, {68, 26, 27, 69}, {69, 27, 28, 70}, {70, 28, 1, 29}, {3, 14, 71, 41}, {41, 71, 72, 42}, {42, 72, 73, 43}, {43, 73, 29, 1}, {14, 15, 74, 71}, {71, 74, 75, 72}, {72, 75, 76, 73}, {73, 76, 30, 29}, {15, 16, 77, 74}, {74, 77, 78, 75}, {75, 78, 79, 76}, {76, 79, 31, 30}, {16, 2, 32, 77}, {77, 32, 33, 78}, {78, 33, 34, 79}, {79, 34, 0, 31}, {2, 17, 80, 32}, {32, 80, 81, 33}, {33, 81, 82, 34}, {34, 82, 20, 0}, {17, 18, 83, 80}, {80, 83, 84, 81}, {81, 84, 85, 82}, {82, 85, 21, 20}, {18, 19, 86, 83}, {83, 86, 87, 84}, {84, 87, 88, 85}, {85, 88, 22, 21}, {19, 6, 35, 86}, {86, 35, 36, 87}, {87, 36, 37, 88}, {88, 37, 4, 22}, {7, 38, 89, 11}, {11, 89, 90, 12}, {12, 90, 91, 13}, {13, 91, 41, 3}, {38, 39, 92, 89}, {89, 92, 93, 90}, {90, 93, 94, 91}, {91, 94, 42, 41}, {39, 40, 95, 92}, {92, 95, 96, 93}, {93, 96, 97, 94}, {94, 97, 43, 42}, {40, 5, 26, 95}, {95, 26, 27, 96}, {96, 27, 28, 97}, {97, 28, 1, 43}}
]
+ ]
(not_ghost:_hexahedron_8) [
Vector<unsigned int> [
+ id : mesh:connectivities:_hexahedron_8
+ size : 64
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{89, 38, 7, 11, 98, 50, 10, 55}, {98, 50, 10, 55, 99, 47, 9, 58}, {99, 47, 9, 58, 100, 44, 8, 61}, {100, 44, 8, 61, 86, 35, 6, 19}, {90, 89, 11, 12, 101, 98, 55, 54}, {101, 98, 55, 54, 102, 99, 58, 57}, {102, 99, 58, 57, 103, 100, 61, 60}, {103, 100, 61, 60, 83, 86, 19, 18}, {91, 90, 12, 13, 104, 101, 54, 53}, {104, 101, 54, 53, 105, 102, 57, 56}, {105, 102, 57, 56, 106, 103, 60, 59}, {106, 103, 60, 59, 80, 83, 18, 17}, {41, 91, 13, 3, 71, 104, 53, 14}, {71, 104, 53, 14, 74, 105, 56, 15}, {74, 105, 56, 15, 77, 106, 59, 16}, {77, 106, 59, 16, 32, 80, 17, 2}, {92, 39, 38, 89, 107, 51, 50, 98}, {107, 51, 50, 98, 108, 48, 47, 99}, {108, 48, 47, 99, 109, 45, 44, 100}, {109, 45, 44, 100, 87, 36, 35, 86}, {93, 92, 89, 90, 110, 107, 98, 101}, {110, 107, 98, 101, 111, 108, 99, 102}, {111, 108, 99, 102, 112, 109, 100, 103}, {112, 109, 100, 103, 84, 87, 86, 83}, {94, 93, 90, 91, 113, 110, 101, 104}, {113, 110, 101, 104, 114, 111, 102, 105}, {114, 111, 102, 105, 115, 112, 103, 106}, {115, 112, 103, 106, 81, 84, 83, 80}, {42, 94, 91, 41, 72, 113, 104, 71}, {72, 113, 104, 71, 75, 114, 105, 74}, {75, 114, 105, 74, 78, 115, 106, 77}, {78, 115, 106, 77, 33, 81, 80, 32}, {95, 40, 39, 92, 116, 52, 51, 107}, {116, 52, 51, 107, 117, 49, 48, 108}, {117, 49, 48, 108, 118, 46, 45, 109}, {118, 46, 45, 109, 88, 37, 36, 87}, {96, 95, 92, 93, 119, 116, 107, 110}, {119, 116, 107, 110, 120, 117, 108, 111}, {120, 117, 108, 111, 121, 118, 109, 112}, {121, 118, 109, 112, 85, 88, 87, 84}, {97, 96, 93, 94, 122, 119, 110, 113}, {122, 119, 110, 113, 123, 120, 111, 114}, {123, 120, 111, 114, 124, 121, 112, 115}, {124, 121, 112, 115, 82, 85, 84, 81}, {43, 97, 94, 42, 73, 122, 113, 72}, {73, 122, 113, 72, 76, 123, 114, 75}, {76, 123, 114, 75, 79, 124, 115, 78}, {79, 124, 115, 78, 34, 82, 81, 33}, {26, 5, 40, 95, 68, 25, 52, 116}, {68, 25, 52, 116, 65, 24, 49, 117}, {65, 24, 49, 117, 62, 23, 46, 118}, {62, 23, 46, 118, 22, 4, 37, 88}, {27, 26, 95, 96, 69, 68, 116, 119}, {69, 68, 116, 119, 66, 65, 117, 120}, {66, 65, 117, 120, 63, 62, 118, 121}, {63, 62, 118, 121, 21, 22, 88, 85}, {28, 27, 96, 97, 70, 69, 119, 122}, {70, 69, 119, 122, 67, 66, 120, 123}, {67, 66, 120, 123, 64, 63, 121, 124}, {64, 63, 121, 124, 20, 21, 85, 82}, {1, 28, 97, 43, 29, 70, 122, 73}, {29, 70, 122, 73, 30, 67, 123, 76}, {30, 67, 123, 76, 31, 64, 124, 79}, {31, 64, 124, 79, 0, 20, 82, 34}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 125
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.25, 0.75, 1}, {0.25, 0.5, 1}, {0.25, 0.25, 1}, {0.5, 0.75, 1}, {0.5, 0.5, 1}, {0.5, 0.25, 1}, {0.75, 0.75, 1}, {0.75, 0.5, 1}, {0.75, 0.25, 1}, {0.75, 1, 0.25}, {0.75, 1, 0.5}, {0.75, 1, 0.75}, {0.5, 1, 0.25}, {0.5, 1, 0.5}, {0.5, 1, 0.75}, {0.25, 1, 0.25}, {0.25, 1, 0.5}, {0.25, 1, 0.75}, {0.25, 0, 0.75}, {0.25, 0, 0.5}, {0.25, 0, 0.25}, {0.5, 0, 0.75}, {0.5, 0, 0.5}, {0.5, 0, 0.25}, {0.75, 0, 0.75}, {0.75, 0, 0.5}, {0.75, 0, 0.25}, {0.75, 0.75, 0}, {0.75, 0.5, 0}, {0.75, 0.25, 0}, {0.5, 0.75, 0}, {0.5, 0.5, 0}, {0.5, 0.25, 0}, {0.25, 0.75, 0}, {0.25, 0.5, 0}, {0.25, 0.25, 0}, {0, 0.75, 0.25}, {0, 0.5, 0.25}, {0, 0.25, 0.25}, {0, 0.75, 0.5}, {0, 0.5, 0.5}, {0, 0.25, 0.5}, {0, 0.75, 0.75}, {0, 0.5, 0.75}, {0, 0.25, 0.75}, {1, 0.75, 0.75}, {1, 0.75, 0.5}, {1, 0.75, 0.25}, {1, 0.5, 0.75}, {1, 0.5, 0.5}, {1, 0.5, 0.25}, {1, 0.25, 0.75}, {1, 0.25, 0.5}, {1, 0.25, 0.25}, {0.75, 0.75, 0.75}, {0.5, 0.75, 0.75}, {0.25, 0.75, 0.75}, {0.75, 0.75, 0.5}, {0.5, 0.75, 0.5}, {0.25, 0.75, 0.5}, {0.75, 0.75, 0.25}, {0.5, 0.75, 0.25}, {0.25, 0.75, 0.25}, {0.75, 0.5, 0.75}, {0.5, 0.5, 0.75}, {0.25, 0.5, 0.75}, {0.75, 0.5, 0.5}, {0.5, 0.5, 0.5}, {0.25, 0.5, 0.5}, {0.75, 0.5, 0.25}, {0.5, 0.5, 0.25}, {0.25, 0.5, 0.25}, {0.75, 0.25, 0.75}, {0.5, 0.25, 0.75}, {0.25, 0.25, 0.75}, {0.75, 0.25, 0.5}, {0.5, 0.25, 0.5}, {0.25, 0.25, 0.5}, {0.75, 0.25, 0.25}, {0.5, 0.25, 0.25}, {0.25, 0.25, 0.25}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
+ ]
(not_ghost:_quadrangle_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 96
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{6, 8, 44, 35}, {35, 44, 45, 36}, {36, 45, 46, 37}, {37, 46, 23, 4}, {8, 9, 47, 44}, {44, 47, 48, 45}, {45, 48, 49, 46}, {46, 49, 24, 23}, {9, 10, 50, 47}, {47, 50, 51, 48}, {48, 51, 52, 49}, {49, 52, 25, 24}, {10, 7, 38, 50}, {50, 38, 39, 51}, {51, 39, 40, 52}, {52, 40, 5, 25}, {3, 14, 53, 13}, {13, 53, 54, 12}, {12, 54, 55, 11}, {11, 55, 10, 7}, {14, 15, 56, 53}, {53, 56, 57, 54}, {54, 57, 58, 55}, {55, 58, 9, 10}, {15, 16, 59, 56}, {56, 59, 60, 57}, {57, 60, 61, 58}, {58, 61, 8, 9}, {16, 2, 17, 59}, {59, 17, 18, 60}, {60, 18, 19, 61}, {61, 19, 6, 8}, {4, 23, 62, 22}, {22, 62, 63, 21}, {21, 63, 64, 20}, {20, 64, 31, 0}, {23, 24, 65, 62}, {62, 65, 66, 63}, {63, 66, 67, 64}, {64, 67, 30, 31}, {24, 25, 68, 65}, {65, 68, 69, 66}, {66, 69, 70, 67}, {67, 70, 29, 30}, {25, 5, 26, 68}, {68, 26, 27, 69}, {69, 27, 28, 70}, {70, 28, 1, 29}, {3, 14, 71, 41}, {41, 71, 72, 42}, {42, 72, 73, 43}, {43, 73, 29, 1}, {14, 15, 74, 71}, {71, 74, 75, 72}, {72, 75, 76, 73}, {73, 76, 30, 29}, {15, 16, 77, 74}, {74, 77, 78, 75}, {75, 78, 79, 76}, {76, 79, 31, 30}, {16, 2, 32, 77}, {77, 32, 33, 78}, {78, 33, 34, 79}, {79, 34, 0, 31}, {2, 17, 80, 32}, {32, 80, 81, 33}, {33, 81, 82, 34}, {34, 82, 20, 0}, {17, 18, 83, 80}, {80, 83, 84, 81}, {81, 84, 85, 82}, {82, 85, 21, 20}, {18, 19, 86, 83}, {83, 86, 87, 84}, {84, 87, 88, 85}, {85, 88, 22, 21}, {19, 6, 35, 86}, {86, 35, 36, 87}, {87, 36, 37, 88}, {88, 37, 4, 22}, {7, 38, 89, 11}, {11, 89, 90, 12}, {12, 90, 91, 13}, {13, 91, 41, 3}, {38, 39, 92, 89}, {89, 92, 93, 90}, {90, 93, 94, 91}, {91, 94, 42, 41}, {39, 40, 95, 92}, {92, 95, 96, 93}, {93, 96, 97, 94}, {94, 97, 43, 42}, {40, 5, 26, 95}, {95, 26, 27, 96}, {96, 27, 28, 97}, {97, 28, 1, 43}}
]
+ ]
(not_ghost:_hexahedron_8) [
Vector<unsigned int> [
+ id : mesh:connectivities:_hexahedron_8
+ size : 64
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{89, 38, 7, 11, 98, 50, 10, 55}, {98, 50, 10, 55, 99, 47, 9, 58}, {99, 47, 9, 58, 100, 44, 8, 61}, {100, 44, 8, 61, 86, 35, 6, 19}, {90, 89, 11, 12, 101, 98, 55, 54}, {101, 98, 55, 54, 102, 99, 58, 57}, {102, 99, 58, 57, 103, 100, 61, 60}, {103, 100, 61, 60, 83, 86, 19, 18}, {91, 90, 12, 13, 104, 101, 54, 53}, {104, 101, 54, 53, 105, 102, 57, 56}, {105, 102, 57, 56, 106, 103, 60, 59}, {106, 103, 60, 59, 80, 83, 18, 17}, {41, 91, 13, 3, 71, 104, 53, 14}, {71, 104, 53, 14, 74, 105, 56, 15}, {74, 105, 56, 15, 77, 106, 59, 16}, {77, 106, 59, 16, 32, 80, 17, 2}, {92, 39, 38, 89, 107, 51, 50, 98}, {107, 51, 50, 98, 108, 48, 47, 99}, {108, 48, 47, 99, 109, 45, 44, 100}, {109, 45, 44, 100, 87, 36, 35, 86}, {93, 92, 89, 90, 110, 107, 98, 101}, {110, 107, 98, 101, 111, 108, 99, 102}, {111, 108, 99, 102, 112, 109, 100, 103}, {112, 109, 100, 103, 84, 87, 86, 83}, {94, 93, 90, 91, 113, 110, 101, 104}, {113, 110, 101, 104, 114, 111, 102, 105}, {114, 111, 102, 105, 115, 112, 103, 106}, {115, 112, 103, 106, 81, 84, 83, 80}, {42, 94, 91, 41, 72, 113, 104, 71}, {72, 113, 104, 71, 75, 114, 105, 74}, {75, 114, 105, 74, 78, 115, 106, 77}, {78, 115, 106, 77, 33, 81, 80, 32}, {95, 40, 39, 92, 116, 52, 51, 107}, {116, 52, 51, 107, 117, 49, 48, 108}, {117, 49, 48, 108, 118, 46, 45, 109}, {118, 46, 45, 109, 88, 37, 36, 87}, {96, 95, 92, 93, 119, 116, 107, 110}, {119, 116, 107, 110, 120, 117, 108, 111}, {120, 117, 108, 111, 121, 118, 109, 112}, {121, 118, 109, 112, 85, 88, 87, 84}, {97, 96, 93, 94, 122, 119, 110, 113}, {122, 119, 110, 113, 123, 120, 111, 114}, {123, 120, 111, 114, 124, 121, 112, 115}, {124, 121, 112, 115, 82, 85, 84, 81}, {43, 97, 94, 42, 73, 122, 113, 72}, {73, 122, 113, 72, 76, 123, 114, 75}, {76, 123, 114, 75, 79, 124, 115, 78}, {79, 124, 115, 78, 34, 82, 81, 33}, {26, 5, 40, 95, 68, 25, 52, 116}, {68, 25, 52, 116, 65, 24, 49, 117}, {65, 24, 49, 117, 62, 23, 46, 118}, {62, 23, 46, 118, 22, 4, 37, 88}, {27, 26, 95, 96, 69, 68, 116, 119}, {69, 68, 116, 119, 66, 65, 117, 120}, {66, 65, 117, 120, 63, 62, 118, 121}, {63, 62, 118, 121, 21, 22, 88, 85}, {28, 27, 96, 97, 70, 69, 119, 122}, {70, 69, 119, 122, 67, 66, 120, 123}, {67, 66, 120, 123, 64, 63, 121, 124}, {64, 63, 121, 124, 20, 21, 85, 82}, {1, 28, 97, 43, 29, 70, 122, 73}, {29, 70, 122, 73, 30, 67, 123, 76}, {30, 67, 123, 76, 31, 64, 124, 79}, {31, 64, 124, 79, 0, 20, 82, 34}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 8
+ + nb vectors : 7
Vector<unsigned int> [
+ id : mesh:connectivities:_hexahedron_8
+ size : 64
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{89, 38, 7, 11, 98, 50, 10, 55}, {98, 50, 10, 55, 99, 47, 9, 58}, {99, 47, 9, 58, 100, 44, 8, 61}, {100, 44, 8, 61, 86, 35, 6, 19}, {90, 89, 11, 12, 101, 98, 55, 54}, {101, 98, 55, 54, 102, 99, 58, 57}, {102, 99, 58, 57, 103, 100, 61, 60}, {103, 100, 61, 60, 83, 86, 19, 18}, {91, 90, 12, 13, 104, 101, 54, 53}, {104, 101, 54, 53, 105, 102, 57, 56}, {105, 102, 57, 56, 106, 103, 60, 59}, {106, 103, 60, 59, 80, 83, 18, 17}, {41, 91, 13, 3, 71, 104, 53, 14}, {71, 104, 53, 14, 74, 105, 56, 15}, {74, 105, 56, 15, 77, 106, 59, 16}, {77, 106, 59, 16, 32, 80, 17, 2}, {92, 39, 38, 89, 107, 51, 50, 98}, {107, 51, 50, 98, 108, 48, 47, 99}, {108, 48, 47, 99, 109, 45, 44, 100}, {109, 45, 44, 100, 87, 36, 35, 86}, {93, 92, 89, 90, 110, 107, 98, 101}, {110, 107, 98, 101, 111, 108, 99, 102}, {111, 108, 99, 102, 112, 109, 100, 103}, {112, 109, 100, 103, 84, 87, 86, 83}, {94, 93, 90, 91, 113, 110, 101, 104}, {113, 110, 101, 104, 114, 111, 102, 105}, {114, 111, 102, 105, 115, 112, 103, 106}, {115, 112, 103, 106, 81, 84, 83, 80}, {42, 94, 91, 41, 72, 113, 104, 71}, {72, 113, 104, 71, 75, 114, 105, 74}, {75, 114, 105, 74, 78, 115, 106, 77}, {78, 115, 106, 77, 33, 81, 80, 32}, {95, 40, 39, 92, 116, 52, 51, 107}, {116, 52, 51, 107, 117, 49, 48, 108}, {117, 49, 48, 108, 118, 46, 45, 109}, {118, 46, 45, 109, 88, 37, 36, 87}, {96, 95, 92, 93, 119, 116, 107, 110}, {119, 116, 107, 110, 120, 117, 108, 111}, {120, 117, 108, 111, 121, 118, 109, 112}, {121, 118, 109, 112, 85, 88, 87, 84}, {97, 96, 93, 94, 122, 119, 110, 113}, {122, 119, 110, 113, 123, 120, 111, 114}, {123, 120, 111, 114, 124, 121, 112, 115}, {124, 121, 112, 115, 82, 85, 84, 81}, {43, 97, 94, 42, 73, 122, 113, 72}, {73, 122, 113, 72, 76, 123, 114, 75}, {76, 123, 114, 75, 79, 124, 115, 78}, {79, 124, 115, 78, 34, 82, 81, 33}, {26, 5, 40, 95, 68, 25, 52, 116}, {68, 25, 52, 116, 65, 24, 49, 117}, {65, 24, 49, 117, 62, 23, 46, 118}, {62, 23, 46, 118, 22, 4, 37, 88}, {27, 26, 95, 96, 69, 68, 116, 119}, {69, 68, 116, 119, 66, 65, 117, 120}, {66, 65, 117, 120, 63, 62, 118, 121}, {63, 62, 118, 121, 21, 22, 88, 85}, {28, 27, 96, 97, 70, 69, 119, 122}, {70, 69, 119, 122, 67, 66, 120, 123}, {67, 66, 120, 123, 64, 63, 121, 124}, {64, 63, 121, 124, 20, 21, 85, 82}, {1, 28, 97, 43, 29, 70, 122, 73}, {29, 70, 122, 73, 30, 67, 123, 76}, {30, 67, 123, 76, 31, 64, 124, 79}, {31, 64, 124, 79, 0, 20, 82, 34}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 96
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{6, 8, 44, 35}, {35, 44, 45, 36}, {36, 45, 46, 37}, {37, 46, 23, 4}, {8, 9, 47, 44}, {44, 47, 48, 45}, {45, 48, 49, 46}, {46, 49, 24, 23}, {9, 10, 50, 47}, {47, 50, 51, 48}, {48, 51, 52, 49}, {49, 52, 25, 24}, {10, 7, 38, 50}, {50, 38, 39, 51}, {51, 39, 40, 52}, {52, 40, 5, 25}, {3, 14, 53, 13}, {13, 53, 54, 12}, {12, 54, 55, 11}, {11, 55, 10, 7}, {14, 15, 56, 53}, {53, 56, 57, 54}, {54, 57, 58, 55}, {55, 58, 9, 10}, {15, 16, 59, 56}, {56, 59, 60, 57}, {57, 60, 61, 58}, {58, 61, 8, 9}, {16, 2, 17, 59}, {59, 17, 18, 60}, {60, 18, 19, 61}, {61, 19, 6, 8}, {4, 23, 62, 22}, {22, 62, 63, 21}, {21, 63, 64, 20}, {20, 64, 31, 0}, {23, 24, 65, 62}, {62, 65, 66, 63}, {63, 66, 67, 64}, {64, 67, 30, 31}, {24, 25, 68, 65}, {65, 68, 69, 66}, {66, 69, 70, 67}, {67, 70, 29, 30}, {25, 5, 26, 68}, {68, 26, 27, 69}, {69, 27, 28, 70}, {70, 28, 1, 29}, {3, 14, 71, 41}, {41, 71, 72, 42}, {42, 72, 73, 43}, {43, 73, 29, 1}, {14, 15, 74, 71}, {71, 74, 75, 72}, {72, 75, 76, 73}, {73, 76, 30, 29}, {15, 16, 77, 74}, {74, 77, 78, 75}, {75, 78, 79, 76}, {76, 79, 31, 30}, {16, 2, 32, 77}, {77, 32, 33, 78}, {78, 33, 34, 79}, {79, 34, 0, 31}, {2, 17, 80, 32}, {32, 80, 81, 33}, {33, 81, 82, 34}, {34, 82, 20, 0}, {17, 18, 83, 80}, {80, 83, 84, 81}, {81, 84, 85, 82}, {82, 85, 21, 20}, {18, 19, 86, 83}, {83, 86, 87, 84}, {84, 87, 88, 85}, {85, 88, 22, 21}, {19, 6, 35, 86}, {86, 35, 36, 87}, {87, 36, 37, 88}, {88, 37, 4, 22}, {7, 38, 89, 11}, {11, 89, 90, 12}, {12, 90, 91, 13}, {13, 91, 41, 3}, {38, 39, 92, 89}, {89, 92, 93, 90}, {90, 93, 94, 91}, {91, 94, 42, 41}, {39, 40, 95, 92}, {92, 95, 96, 93}, {93, 96, 97, 94}, {94, 97, 43, 42}, {40, 5, 26, 95}, {95, 26, 27, 96}, {96, 27, 28, 97}, {97, 28, 1, 43}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 125
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.25, 0.75, 1}, {0.25, 0.5, 1}, {0.25, 0.25, 1}, {0.5, 0.75, 1}, {0.5, 0.5, 1}, {0.5, 0.25, 1}, {0.75, 0.75, 1}, {0.75, 0.5, 1}, {0.75, 0.25, 1}, {0.75, 1, 0.25}, {0.75, 1, 0.5}, {0.75, 1, 0.75}, {0.5, 1, 0.25}, {0.5, 1, 0.5}, {0.5, 1, 0.75}, {0.25, 1, 0.25}, {0.25, 1, 0.5}, {0.25, 1, 0.75}, {0.25, 0, 0.75}, {0.25, 0, 0.5}, {0.25, 0, 0.25}, {0.5, 0, 0.75}, {0.5, 0, 0.5}, {0.5, 0, 0.25}, {0.75, 0, 0.75}, {0.75, 0, 0.5}, {0.75, 0, 0.25}, {0.75, 0.75, 0}, {0.75, 0.5, 0}, {0.75, 0.25, 0}, {0.5, 0.75, 0}, {0.5, 0.5, 0}, {0.5, 0.25, 0}, {0.25, 0.75, 0}, {0.25, 0.5, 0}, {0.25, 0.25, 0}, {0, 0.75, 0.25}, {0, 0.5, 0.25}, {0, 0.25, 0.25}, {0, 0.75, 0.5}, {0, 0.5, 0.5}, {0, 0.25, 0.5}, {0, 0.75, 0.75}, {0, 0.5, 0.75}, {0, 0.25, 0.75}, {1, 0.75, 0.75}, {1, 0.75, 0.5}, {1, 0.75, 0.25}, {1, 0.5, 0.75}, {1, 0.5, 0.5}, {1, 0.5, 0.25}, {1, 0.25, 0.75}, {1, 0.25, 0.5}, {1, 0.25, 0.25}, {0.75, 0.75, 0.75}, {0.5, 0.75, 0.75}, {0.25, 0.75, 0.75}, {0.75, 0.75, 0.5}, {0.5, 0.75, 0.5}, {0.25, 0.75, 0.5}, {0.75, 0.75, 0.25}, {0.5, 0.75, 0.25}, {0.25, 0.75, 0.25}, {0.75, 0.5, 0.75}, {0.5, 0.5, 0.75}, {0.25, 0.5, 0.75}, {0.75, 0.5, 0.5}, {0.5, 0.5, 0.5}, {0.25, 0.5, 0.5}, {0.75, 0.5, 0.25}, {0.5, 0.5, 0.25}, {0.25, 0.5, 0.25}, {0.75, 0.25, 0.75}, {0.5, 0.25, 0.75}, {0.25, 0.25, 0.75}, {0.75, 0.25, 0.5}, {0.5, 0.25, 0.5}, {0.25, 0.25, 0.5}, {0.75, 0.25, 0.25}, {0.5, 0.25, 0.25}, {0.25, 0.25, 0.25}}
]
Vector<double> [
+ id : my_fem:jacobians:_hexahedron_8
+ size : 512
+ nb_component : 1
+ allocated size : 512
+ memory size : 4kB
+ values : {{0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_hexahedron_8
- + size : 8
- + nb_component : 3
- + allocated size : 2000
- + memory size : 47kB
- + values : {{-0.57735, -0.57735, -0.57735}, {0.57735, -0.57735, -0.57735}, {0.57735, 0.57735, -0.57735}, {-0.57735, 0.57735, -0.57735}, {-0.57735, -0.57735, 0.57735}, {0.57735, -0.57735, 0.57735}, {0.57735, 0.57735, 0.57735}, {-0.57735, 0.57735, 0.57735}}
- ]
Vector<double> [
+ id : my_fem:shapes:_hexahedron_8
+ size : 512
+ nb_component : 8
+ allocated size : 512
+ memory size : 32kB
+ values : {{0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_hexahedron_8
+ size : 512
+ nb_component : 24
+ allocated size : 512
+ memory size : 96kB
+ values : {{2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}}
]
- + total size : 3.4e+02kB
+ + total size : 2.9e+02kB
]
- + total size : 3.4e+02kB
+ + total size : 2.9e+02kB
]
diff --git a/test/test_fem/test_integrate_quadrangle_4.verified b/test/test_fem/test_integrate_quadrangle_4.verified
index 31c13234c..9fd0f2382 100644
--- a/test/test_fem/test_integrate_quadrangle_4.verified
+++ b/test/test_fem/test_integrate_quadrangle_4.verified
@@ -1,146 +1,142 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 2
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 9
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
+ ]
(not_ghost:_quadrangle_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 4
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{2, 6, 8, 5}, {5, 8, 4, 1}, {6, 3, 7, 8}, {8, 7, 0, 4}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 9
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
+ ]
(not_ghost:_quadrangle_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 4
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{2, 6, 8, 5}, {5, 8, 4, 1}, {6, 3, 7, 8}, {8, 7, 0, 4}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 7
+ + nb vectors : 6
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 4
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{2, 6, 8, 5}, {5, 8, 4, 1}, {6, 3, 7, 8}, {8, 7, 0, 4}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 9
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}}
]
Vector<double> [
+ id : my_fem:jacobians:_quadrangle_4
+ size : 16
+ nb_component : 1
+ allocated size : 16
+ memory size : 0.12kB
+ values : {{0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_quadrangle_4
- + size : 4
- + nb_component : 2
- + allocated size : 2000
- + memory size : 31kB
- + values : {{-0.57735, -0.57735}, {0.57735, -0.57735}, {0.57735, 0.57735}, {-0.57735, 0.57735}}
- ]
Vector<double> [
+ id : my_fem:shapes:_quadrangle_4
+ size : 16
+ nb_component : 4
+ allocated size : 16
+ memory size : 0.5kB
+ values : {{0.622008, 0.166667, 0.0446582, 0.166667}, {0.166667, 0.622008, 0.166667, 0.0446582}, {0.0446582, 0.166667, 0.622008, 0.166667}, {0.166667, 0.0446582, 0.166667, 0.622008}, {0.622008, 0.166667, 0.0446582, 0.166667}, {0.166667, 0.622008, 0.166667, 0.0446582}, {0.0446582, 0.166667, 0.622008, 0.166667}, {0.166667, 0.0446582, 0.166667, 0.622008}, {0.622008, 0.166667, 0.0446582, 0.166667}, {0.166667, 0.622008, 0.166667, 0.0446582}, {0.0446582, 0.166667, 0.622008, 0.166667}, {0.166667, 0.0446582, 0.166667, 0.622008}, {0.622008, 0.166667, 0.0446582, 0.166667}, {0.166667, 0.622008, 0.166667, 0.0446582}, {0.0446582, 0.166667, 0.622008, 0.166667}, {0.166667, 0.0446582, 0.166667, 0.622008}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_quadrangle_4
+ size : 16
+ nb_component : 8
+ allocated size : 16
+ memory size : 1kB
+ values : {{1.57735, 1.57735, -1.57735, 0.42265, -0.42265, -0.42265, 0.42265, -1.57735}, {1.57735, 0.42265, -1.57735, 1.57735, -0.42265, -1.57735, 0.42265, -0.42265}, {0.42265, 0.42265, -0.42265, 1.57735, -1.57735, -1.57735, 1.57735, -0.42265}, {0.42265, 1.57735, -0.42265, 0.42265, -1.57735, -0.42265, 1.57735, -1.57735}, {1.57735, 1.57735, -1.57735, 0.42265, -0.42265, -0.42265, 0.42265, -1.57735}, {1.57735, 0.42265, -1.57735, 1.57735, -0.42265, -1.57735, 0.42265, -0.42265}, {0.42265, 0.42265, -0.42265, 1.57735, -1.57735, -1.57735, 1.57735, -0.42265}, {0.42265, 1.57735, -0.42265, 0.42265, -1.57735, -0.42265, 1.57735, -1.57735}, {1.57735, 1.57735, -1.57735, 0.42265, -0.42265, -0.42265, 0.42265, -1.57735}, {1.57735, 0.42265, -1.57735, 1.57735, -0.42265, -1.57735, 0.42265, -0.42265}, {0.42265, 0.42265, -0.42265, 1.57735, -1.57735, -1.57735, 1.57735, -0.42265}, {0.42265, 1.57735, -0.42265, 0.42265, -1.57735, -0.42265, 1.57735, -1.57735}, {1.57735, 1.57735, -1.57735, 0.42265, -0.42265, -0.42265, 0.42265, -1.57735}, {1.57735, 0.42265, -1.57735, 1.57735, -0.42265, -1.57735, 0.42265, -0.42265}, {0.42265, 0.42265, -0.42265, 1.57735, -1.57735, -1.57735, 1.57735, -0.42265}, {0.42265, 1.57735, -0.42265, 0.42265, -1.57735, -0.42265, 1.57735, -1.57735}}
]
- + total size : 1.1e+02kB
+ + total size : 80kB
]
- + total size : 1.1e+02kB
+ + total size : 80kB
]
diff --git a/test/test_fem/test_integrate_quadrangle_8.verified b/test/test_fem/test_integrate_quadrangle_8.verified
index 113e85a70..b2c892b0a 100644
--- a/test/test_fem/test_integrate_quadrangle_8.verified
+++ b/test/test_fem/test_integrate_quadrangle_8.verified
@@ -1,120 +1,114 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 2
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.5, 0.75}, {0.75, 0.5}, {0.5, 0.25}, {0.25, 0.5}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_quadrangle_8) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_8
+ size : 4
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{2, 10, 16, 7, 11, 17, 18, 9}, {7, 16, 4, 1, 18, 19, 6, 8}, {10, 3, 13, 16, 12, 14, 20, 17}, {16, 13, 0, 4, 20, 15, 5, 19}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.5, 0.75}, {0.75, 0.5}, {0.5, 0.25}, {0.25, 0.5}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_quadrangle_8) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_8
+ size : 4
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{2, 10, 16, 7, 11, 17, 18, 9}, {7, 16, 4, 1, 18, 19, 6, 8}, {10, 3, 13, 16, 12, 14, 20, 17}, {16, 13, 0, 4, 20, 15, 5, 19}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 6
+ + nb vectors : 5
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_8
+ size : 4
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{2, 10, 16, 7, 11, 17, 18, 9}, {7, 16, 4, 1, 18, 19, 6, 8}, {10, 3, 13, 16, 12, 14, 20, 17}, {16, 13, 0, 4, 20, 15, 5, 19}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.5, 0.75}, {0.75, 0.5}, {0.5, 0.25}, {0.25, 0.5}}
]
Vector<double> [
+ id : my_fem:jacobians:_quadrangle_8
+ size : 36
+ nb_component : 1
+ allocated size : 36
+ memory size : 0.28kB
+ values : {{0.0493827}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0493827}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0493827}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0493827}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0308642}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_quadrangle_8
- + size : 9
- + nb_component : 2
- + allocated size : 2000
- + memory size : 31kB
- + values : {{0, 0}, {0.774597, 0.774597}, {-0.774597, 0.774597}, {-0.774597, -0.774597}, {0.774597, -0.774597}, {0, 0.774597}, {-0.774597, 0}, {0, -0.774597}, {0.774597, 0}}
- ]
Vector<double> [
+ id : my_fem:shapes:_quadrangle_8
+ size : 36
+ nb_component : 8
+ allocated size : 36
+ memory size : 2.2kB
+ values : {{-0.25, -0.25, -0.25, -0.25, 0.5, 0.5, 0.5, 0.5}, {-0.032379, -0.1, 0.432379, -0.1, 0.0450807, 0.354919, 0.354919, 0.0450807}, {-0.1, -0.032379, -0.1, 0.432379, 0.0450807, 0.0450807, 0.354919, 0.354919}, {0.432379, -0.1, -0.032379, -0.1, 0.354919, 0.0450807, 0.0450807, 0.354919}, {-0.1, 0.432379, -0.1, -0.032379, 0.354919, 0.354919, 0.0450807, 0.0450807}, {-0.1, -0.1, -0.1, -0.1, 0.112702, 0.2, 0.887298, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.112702, 0.2, 0.887298}, {-0.1, -0.1, -0.1, -0.1, 0.887298, 0.2, 0.112702, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.887298, 0.2, 0.112702}, {-0.25, -0.25, -0.25, -0.25, 0.5, 0.5, 0.5, 0.5}, {-0.032379, -0.1, 0.432379, -0.1, 0.0450807, 0.354919, 0.354919, 0.0450807}, {-0.1, -0.032379, -0.1, 0.432379, 0.0450807, 0.0450807, 0.354919, 0.354919}, {0.432379, -0.1, -0.032379, -0.1, 0.354919, 0.0450807, 0.0450807, 0.354919}, {-0.1, 0.432379, -0.1, -0.032379, 0.354919, 0.354919, 0.0450807, 0.0450807}, {-0.1, -0.1, -0.1, -0.1, 0.112702, 0.2, 0.887298, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.112702, 0.2, 0.887298}, {-0.1, -0.1, -0.1, -0.1, 0.887298, 0.2, 0.112702, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.887298, 0.2, 0.112702}, {-0.25, -0.25, -0.25, -0.25, 0.5, 0.5, 0.5, 0.5}, {-0.032379, -0.1, 0.432379, -0.1, 0.0450807, 0.354919, 0.354919, 0.0450807}, {-0.1, -0.032379, -0.1, 0.432379, 0.0450807, 0.0450807, 0.354919, 0.354919}, {0.432379, -0.1, -0.032379, -0.1, 0.354919, 0.0450807, 0.0450807, 0.354919}, {-0.1, 0.432379, -0.1, -0.032379, 0.354919, 0.354919, 0.0450807, 0.0450807}, {-0.1, -0.1, -0.1, -0.1, 0.112702, 0.2, 0.887298, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.112702, 0.2, 0.887298}, {-0.1, -0.1, -0.1, -0.1, 0.887298, 0.2, 0.112702, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.887298, 0.2, 0.112702}, {-0.25, -0.25, -0.25, -0.25, 0.5, 0.5, 0.5, 0.5}, {-0.032379, -0.1, 0.432379, -0.1, 0.0450807, 0.354919, 0.354919, 0.0450807}, {-0.1, -0.032379, -0.1, 0.432379, 0.0450807, 0.0450807, 0.354919, 0.354919}, {0.432379, -0.1, -0.032379, -0.1, 0.354919, 0.0450807, 0.0450807, 0.354919}, {-0.1, 0.432379, -0.1, -0.032379, 0.354919, 0.354919, 0.0450807, 0.0450807}, {-0.1, -0.1, -0.1, -0.1, 0.112702, 0.2, 0.887298, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.112702, 0.2, 0.887298}, {-0.1, -0.1, -0.1, -0.1, 0.887298, 0.2, 0.112702, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.887298, 0.2, 0.112702}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_quadrangle_8
+ size : 36
+ nb_component : 16
+ allocated size : 36
+ memory size : 4.5kB
+ values : {{0, 0, 0, 0, 0, 0, 0, 0, 2.36611e-12, 2, -2, 1.88161e-12, -2.36611e-12, -2, 2, -1.88161e-12}, {-0.52379, -0.52379, -0.174597, -1.3746, -4.12379, -4.12379, -1.3746, -0.174597, 0.698387, 0.8, -0.8, 5.49839, 5.49839, -0.8, 0.8, 0.698387}, {0.174597, -1.3746, 0.52379, -0.52379, 1.3746, -0.174597, 4.12379, -4.12379, -0.698387, 0.8, -0.8, 0.698387, -5.49839, -0.8, 0.8, 5.49839}, {4.12379, 4.12379, 1.3746, 0.174597, 0.52379, 0.52379, 0.174597, 1.3746, -5.49839, 0.8, -0.8, -0.698387, -0.698387, -0.8, 0.8, -5.49839}, {-1.3746, 0.174597, -4.12379, 4.12379, -0.174597, 1.3746, -0.52379, 0.52379, 5.49839, 0.8, -0.8, -5.49839, 0.698387, -0.8, 0.8, -0.698387}, {-0.174597, -1.54919, 0.174597, -1.54919, -1.3746, -1.54919, 1.3746, -1.54919, 4.19886e-12, 2, -0.8, 3.09839, -4.19886e-12, -2, 0.8, 3.09839}, {1.54919, 1.3746, 1.54919, -0.174597, 1.54919, 0.174597, 1.54919, -1.3746, -3.09839, 0.8, -2, 3.39506e-13, -3.09839, -0.8, 2, -3.39506e-13}, {1.3746, 1.54919, -1.3746, 1.54919, 0.174597, 1.54919, -0.174597, 1.54919, 5.33573e-13, 2, -0.8, -3.09839, -5.33573e-13, -2, 0.8, -3.09839}, {-1.54919, -0.174597, -1.54919, 1.3746, -1.54919, -1.3746, -1.54919, 0.174597, 3.09839, 0.8, -2, 4.0048e-12, 3.09839, -0.8, 2, -4.0048e-12}, {0, 0, 0, 0, 0, 0, 0, 0, 2.07689e-12, 2, -2, 2.36611e-12, -2.07689e-12, -2, 2, -2.36611e-12}, {-0.52379, -0.52379, -0.174597, -1.3746, -4.12379, -4.12379, -1.3746, -0.174597, 0.698387, 0.8, -0.8, 5.49839, 5.49839, -0.8, 0.8, 0.698387}, {0.174597, -1.3746, 0.52379, -0.52379, 1.3746, -0.174597, 4.12379, -4.12379, -0.698387, 0.8, -0.8, 0.698387, -5.49839, -0.8, 0.8, 5.49839}, {4.12379, 4.12379, 1.3746, 0.174597, 0.52379, 0.52379, 0.174597, 1.3746, -5.49839, 0.8, -0.8, -0.698387, -0.698387, -0.8, 0.8, -5.49839}, {-1.3746, 0.174597, -4.12379, 4.12379, -0.174597, 1.3746, -0.52379, 0.52379, 5.49839, 0.8, -0.8, -5.49839, 0.698387, -0.8, 0.8, -0.698387}, {-0.174597, -1.54919, 0.174597, -1.54919, -1.3746, -1.54919, 1.3746, -1.54919, 4.17666e-13, 2, -0.8, 3.09839, -4.17666e-13, -2, 0.8, 3.09839}, {1.54919, 1.3746, 1.54919, -0.174597, 1.54919, 0.174597, 1.54919, -1.3746, -3.09839, 0.8, -2, 5.33573e-13, -3.09839, -0.8, 2, -5.33573e-13}, {1.3746, 1.54919, -1.3746, 1.54919, 0.174597, 1.54919, -0.174597, 1.54919, 4.08307e-12, 2, -0.8, -3.09839, -4.08307e-12, -2, 0.8, -3.09839}, {-1.54919, -0.174597, -1.54919, 1.3746, -1.54919, -1.3746, -1.54919, 0.174597, 3.09839, 0.8, -2, 4.19864e-12, 3.09839, -0.8, 2, -4.19864e-12}, {0, 0, 0, 0, 0, 0, 0, 0, 1.88161e-12, 2, -2, 2.36589e-12, -1.88161e-12, -2, 2, -2.36589e-12}, {-0.52379, -0.52379, -0.174597, -1.3746, -4.12379, -4.12379, -1.3746, -0.174597, 0.698387, 0.8, -0.8, 5.49839, 5.49839, -0.8, 0.8, 0.698387}, {0.174597, -1.3746, 0.52379, -0.52379, 1.3746, -0.174597, 4.12379, -4.12379, -0.698387, 0.8, -0.8, 0.698387, -5.49839, -0.8, 0.8, 5.49839}, {4.12379, 4.12379, 1.3746, 0.174597, 0.52379, 0.52379, 0.174597, 1.3746, -5.49839, 0.8, -0.8, -0.698387, -0.698387, -0.8, 0.8, -5.49839}, {-1.3746, 0.174597, -4.12379, 4.12379, -0.174597, 1.3746, -0.52379, 0.52379, 5.49839, 0.8, -0.8, -5.49839, 0.698387, -0.8, 0.8, -0.698387}, {-0.174597, -1.54919, 0.174597, -1.54919, -1.3746, -1.54919, 1.3746, -1.54919, 4.0048e-12, 2, -0.8, 3.09839, -4.0048e-12, -2, 0.8, 3.09839}, {1.54919, 1.3746, 1.54919, -0.174597, 1.54919, 0.174597, 1.54919, -1.3746, -3.09839, 0.8, -2, 4.19864e-12, -3.09839, -0.8, 2, -4.19864e-12}, {1.3746, 1.54919, -1.3746, 1.54919, 0.174597, 1.54919, -0.174597, 1.54919, 3.39284e-13, 2, -0.8, -3.09839, -3.39284e-13, -2, 0.8, -3.09839}, {-1.54919, -0.174597, -1.54919, 1.3746, -1.54919, -1.3746, -1.54919, 0.174597, 3.09839, 0.8, -2, 5.3324e-13, 3.09839, -0.8, 2, -5.3324e-13}, {0, 0, 0, 0, 0, 0, 0, 0, 2.36589e-12, 2, -2, 2.07689e-12, -2.36589e-12, -2, 2, -2.07689e-12}, {-0.52379, -0.52379, -0.174597, -1.3746, -4.12379, -4.12379, -1.3746, -0.174597, 0.698387, 0.8, -0.8, 5.49839, 5.49839, -0.8, 0.8, 0.698387}, {0.174597, -1.3746, 0.52379, -0.52379, 1.3746, -0.174597, 4.12379, -4.12379, -0.698387, 0.8, -0.8, 0.698387, -5.49839, -0.8, 0.8, 5.49839}, {4.12379, 4.12379, 1.3746, 0.174597, 0.52379, 0.52379, 0.174597, 1.3746, -5.49839, 0.8, -0.8, -0.698387, -0.698387, -0.8, 0.8, -5.49839}, {-1.3746, 0.174597, -4.12379, 4.12379, -0.174597, 1.3746, -0.52379, 0.52379, 5.49839, 0.8, -0.8, -5.49839, 0.698387, -0.8, 0.8, -0.698387}, {-0.174597, -1.54919, 0.174597, -1.54919, -1.3746, -1.54919, 1.3746, -1.54919, 5.3324e-13, 2, -0.8, 3.09839, -5.3324e-13, -2, 0.8, 3.09839}, {1.54919, 1.3746, 1.54919, -0.174597, 1.54919, 0.174597, 1.54919, -1.3746, -3.09839, 0.8, -2, 4.08307e-12, -3.09839, -0.8, 2, -4.08307e-12}, {1.3746, 1.54919, -1.3746, 1.54919, 0.174597, 1.54919, -0.174597, 1.54919, 4.19864e-12, 2, -0.8, -3.09839, -4.19864e-12, -2, 0.8, -3.09839}, {-1.54919, -0.174597, -1.54919, 1.3746, -1.54919, -1.3746, -1.54919, 0.174597, 3.09839, 0.8, -2, 4.17666e-13, 3.09839, -0.8, 2, -4.17666e-13}}
]
- + total size : 1.3e+02kB
+ + total size : 1e+02kB
]
- + total size : 1.3e+02kB
+ + total size : 1e+02kB
]
diff --git a/test/test_fem/test_integrate_segment_2.verified b/test/test_fem/test_integrate_segment_2.verified
index fe601f882..dc4d8c668 100644
--- a/test/test_fem/test_integrate_segment_2.verified
+++ b/test/test_fem/test_integrate_segment_2.verified
@@ -1,120 +1,114 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 1
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 1
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 11
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 10
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 2}, {2, 3}, {3, 4}, {4, 5}, {5, 6}, {6, 7}, {7, 8}, {8, 9}, {9, 10}, {10, 1}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 1
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 11
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 10
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 2}, {2, 3}, {3, 4}, {4, 5}, {5, 6}, {6, 7}, {7, 8}, {8, 9}, {9, 10}, {10, 1}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 6
+ + nb vectors : 5
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 10
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 2}, {2, 3}, {3, 4}, {4, 5}, {5, 6}, {6, 7}, {7, 8}, {8, 9}, {9, 10}, {10, 1}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 11
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}}
]
Vector<double> [
+ id : my_fem:jacobians:_segment_2
+ size : 10
+ nb_component : 1
+ allocated size : 10
+ memory size : 0.078kB
+ values : {{0.1}, {0.1}, {0.1}, {0.1}, {0.1}, {0.1}, {0.1}, {0.1}, {0.1}, {0.1}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_segment_2
- + size : 1
- + nb_component : 1
- + allocated size : 2000
- + memory size : 16kB
- + values : {{0}}
- ]
Vector<double> [
+ id : my_fem:shapes:_segment_2
+ size : 10
+ nb_component : 2
+ allocated size : 10
+ memory size : 0.16kB
+ values : {{0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_segment_2
+ size : 10
+ nb_component : 2
+ allocated size : 10
+ memory size : 0.16kB
+ values : {{-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}}
]
- + total size : 47kB
+ + total size : 32kB
]
- + total size : 47kB
+ + total size : 32kB
]
diff --git a/test/test_fem/test_integrate_segment_3.verified b/test/test_fem/test_integrate_segment_3.verified
index 78786579b..cd4227805 100644
--- a/test/test_fem/test_integrate_segment_3.verified
+++ b/test/test_fem/test_integrate_segment_3.verified
@@ -1,120 +1,114 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 1
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 1
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}, {0.05}, {0.15}, {0.25}, {0.35}, {0.45}, {0.55}, {0.65}, {0.75}, {0.85}, {0.95}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 10
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 2, 11}, {2, 3, 12}, {3, 4, 13}, {4, 5, 14}, {5, 6, 15}, {6, 7, 16}, {7, 8, 17}, {8, 9, 18}, {9, 10, 19}, {10, 1, 20}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 1
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}, {0.05}, {0.15}, {0.25}, {0.35}, {0.45}, {0.55}, {0.65}, {0.75}, {0.85}, {0.95}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 10
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 2, 11}, {2, 3, 12}, {3, 4, 13}, {4, 5, 14}, {5, 6, 15}, {6, 7, 16}, {7, 8, 17}, {8, 9, 18}, {9, 10, 19}, {10, 1, 20}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 6
+ + nb vectors : 5
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 10
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 2, 11}, {2, 3, 12}, {3, 4, 13}, {4, 5, 14}, {5, 6, 15}, {6, 7, 16}, {7, 8, 17}, {8, 9, 18}, {9, 10, 19}, {10, 1, 20}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}, {0.05}, {0.15}, {0.25}, {0.35}, {0.45}, {0.55}, {0.65}, {0.75}, {0.85}, {0.95}}
]
Vector<double> [
+ id : my_fem:jacobians:_segment_3
+ size : 20
+ nb_component : 1
+ allocated size : 20
+ memory size : 0.16kB
+ values : {{0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_segment_3
- + size : 2
- + nb_component : 1
- + allocated size : 2000
- + memory size : 16kB
- + values : {{-0.57735}, {0.57735}}
- ]
Vector<double> [
+ id : my_fem:shapes:_segment_3
+ size : 20
+ nb_component : 3
+ allocated size : 20
+ memory size : 0.47kB
+ values : {{0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_segment_3
+ size : 20
+ nb_component : 3
+ allocated size : 20
+ memory size : 0.47kB
+ values : {{-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}}
]
- + total size : 56kB
+ + total size : 40kB
]
- + total size : 56kB
+ + total size : 40kB
]
diff --git a/test/test_fem/test_integrate_tetrahedron_10.verified b/test/test_fem/test_integrate_tetrahedron_10.verified
index 1b2450abe..20e163531 100644
--- a/test/test_fem/test_integrate_tetrahedron_10.verified
+++ b/test/test_fem/test_integrate_tetrahedron_10.verified
@@ -1,172 +1,170 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 3
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 722
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {0.125, 1, 1}, {0.375, 1, 1}, {0.625, 1, 1}, {0.875, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {1, 1, 0.875}, {1, 1, 0.625}, {1, 1, 0.375}, {1, 1, 0.125}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0.875, 1, 0}, {0.625, 1, 0}, {0.375, 1, 0}, {0.125, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 1, 0.125}, {0, 1, 0.375}, {0, 1, 0.625}, {0, 1, 0.875}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0, 0, 0.125}, {0, 0, 0.375}, {0, 0, 0.625}, {0, 0, 0.875}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {0.125, 0, 1}, {0.375, 0, 1}, {0.625, 0, 1}, {0.875, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {1, 0, 0.875}, {1, 0, 0.625}, {1, 0, 0.375}, {1, 0, 0.125}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0.875, 0, 0}, {0.625, 0, 0}, {0.375, 0, 0}, {0.125, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.875, 0}, {0, 0.625, 0}, {0, 0.375, 0}, {0, 0.125, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {0, 0.875, 1}, {0, 0.625, 1}, {0, 0.375, 1}, {0, 0.125, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.875, 1}, {1, 0.625, 1}, {1, 0.375, 1}, {1, 0.125, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {1, 0.875, 0}, {1, 0.625, 0}, {1, 0.375, 0}, {1, 0.125, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.234692, 0.610874, 1}, {0.095431, 0.625135, 1}, {0.139261, 0.735739, 1}, {0.264261, 0.860739, 1}, {0.375, 0.904691, 1}, {0.389261, 0.76543, 1}, {0.860739, 0.735739, 1}, {0.904569, 0.625135, 1}, {0.765308, 0.610874, 1}, {0.264261, 0.139383, 1}, {0.389261, 0.234962, 1}, {0.375, 0.0955798, 1}, {0.610739, 0.76543, 1}, {0.625, 0.904691, 1}, {0.735739, 0.860739, 1}, {0.095431, 0.375135, 1}, {0.234692, 0.389518, 1}, {0.139261, 0.264383, 1}, {0.625, 0.0955798, 1}, {0.610739, 0.234962, 1}, {0.735739, 0.139383, 1}, {0.860739, 0.264383, 1}, {0.765308, 0.389518, 1}, {0.904569, 0.375135, 1}, {0.095431, 0.500135, 1}, {0.904569, 0.500135, 1}, {0.5, 0.904691, 1}, {0.5, 0.0955798, 1}, {0.389261, 0.611834, 1}, {0.345431, 0.501231, 1}, {0.5, 0.655786, 1}, {0.610739, 0.611834, 1}, {0.389261, 0.390478, 1}, {0.654569, 0.501231, 1}, {0.5, 0.346675, 1}, {0.610739, 0.390478, 1}, {0.0709532, 0.804047, 1}, {0.210214, 0.789786, 1}, {0.195953, 0.929047, 1}, {0.789786, 0.789786, 1}, {0.929047, 0.804047, 1}, {0.195953, 0.0709735, 1}, {0.210214, 0.210356, 1}, {0.804047, 0.929047, 1}, {0.0709532, 0.195973, 1}, {0.789786, 0.210356, 1}, {0.804047, 0.0709735, 1}, {0.929047, 0.195973, 1}, {0.0709532, 0.0709735, 1}, {0.0709532, 0.929047, 1}, {0.929047, 0.929047, 1}, {0.929047, 0.0709735, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.904569, 1, 0.625}, {0.765308, 1, 0.610739}, {0.860739, 1, 0.735739}, {0.625, 1, 0.095431}, {0.610739, 1, 0.234692}, {0.735739, 1, 0.139261}, {0.375, 1, 0.904569}, {0.389261, 1, 0.765308}, {0.264261, 1, 0.860739}, {0.095431, 1, 0.375}, {0.234692, 1, 0.389261}, {0.139261, 1, 0.264261}, {0.735739, 1, 0.860739}, {0.610739, 1, 0.765308}, {0.625, 1, 0.904569}, {0.139261, 1, 0.735739}, {0.234692, 1, 0.610739}, {0.095431, 1, 0.625}, {0.860739, 1, 0.264261}, {0.765308, 1, 0.389261}, {0.904569, 1, 0.375}, {0.264261, 1, 0.139261}, {0.389261, 1, 0.234692}, {0.375, 1, 0.095431}, {0.5, 1, 0.095431}, {0.904569, 1, 0.5}, {0.095431, 1, 0.5}, {0.5, 1, 0.904569}, {0.654569, 1, 0.5}, {0.610739, 1, 0.610739}, {0.610739, 1, 0.389261}, {0.5, 1, 0.345431}, {0.389261, 1, 0.389261}, {0.5, 1, 0.654569}, {0.389261, 1, 0.610739}, {0.345431, 1, 0.5}, {0.789786, 1, 0.789786}, {0.929047, 1, 0.804047}, {0.789786, 1, 0.210214}, {0.804047, 1, 0.0709532}, {0.210214, 1, 0.789786}, {0.195953, 1, 0.929047}, {0.210214, 1, 0.210214}, {0.0709532, 1, 0.195953}, {0.804047, 1, 0.929047}, {0.0709532, 1, 0.804047}, {0.929047, 1, 0.195953}, {0.195953, 1, 0.0709532}, {0.0709532, 1, 0.0709532}, {0.929047, 1, 0.0709532}, {0.0709532, 1, 0.929047}, {0.929047, 1, 0.929047}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.904691, 0, 0.625}, {0.76543, 0, 0.610739}, {0.860739, 0, 0.735739}, {0.625135, 0, 0.095431}, {0.610874, 0, 0.234692}, {0.735739, 0, 0.139261}, {0.375135, 0, 0.904569}, {0.389518, 0, 0.765308}, {0.264383, 0, 0.860739}, {0.0955798, 0, 0.375}, {0.234962, 0, 0.389261}, {0.139383, 0, 0.264261}, {0.735739, 0, 0.860739}, {0.610874, 0, 0.765308}, {0.625135, 0, 0.904569}, {0.139383, 0, 0.735739}, {0.234962, 0, 0.610739}, {0.0955798, 0, 0.625}, {0.860739, 0, 0.264261}, {0.76543, 0, 0.389261}, {0.904691, 0, 0.375}, {0.264383, 0, 0.139261}, {0.389518, 0, 0.234692}, {0.375135, 0, 0.095431}, {0.500135, 0, 0.095431}, {0.904691, 0, 0.5}, {0.0955798, 0, 0.5}, {0.500135, 0, 0.904569}, {0.655786, 0, 0.5}, {0.611834, 0, 0.610739}, {0.611834, 0, 0.389261}, {0.501231, 0, 0.345431}, {0.390478, 0, 0.389261}, {0.501231, 0, 0.654569}, {0.390478, 0, 0.610739}, {0.346675, 0, 0.5}, {0.789786, 0, 0.789786}, {0.929047, 0, 0.804047}, {0.789786, 0, 0.210214}, {0.804047, 0, 0.0709532}, {0.210356, 0, 0.789786}, {0.195973, 0, 0.929047}, {0.210356, 0, 0.210214}, {0.0709735, 0, 0.195953}, {0.804047, 0, 0.929047}, {0.0709735, 0, 0.804047}, {0.929047, 0, 0.195953}, {0.195973, 0, 0.0709532}, {0.0709735, 0, 0.0709532}, {0.929047, 0, 0.0709532}, {0.0709735, 0, 0.929047}, {0.929047, 0, 0.929047}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0.860739, 0.735739, 0}, {0.765308, 0.610739, 0}, {0.904569, 0.625, 0}, {0.625, 0.904569, 0}, {0.610739, 0.765308, 0}, {0.735739, 0.860739, 0}, {0.735739, 0.139261, 0}, {0.610739, 0.234692, 0}, {0.625, 0.095431, 0}, {0.095431, 0.625, 0}, {0.234692, 0.610739, 0}, {0.139261, 0.735739, 0}, {0.264261, 0.860739, 0}, {0.389261, 0.765308, 0}, {0.375, 0.904569, 0}, {0.904569, 0.375, 0}, {0.765308, 0.389261, 0}, {0.860739, 0.264261, 0}, {0.139261, 0.264261, 0}, {0.234692, 0.389261, 0}, {0.095431, 0.375, 0}, {0.375, 0.095431, 0}, {0.389261, 0.234692, 0}, {0.264261, 0.139261, 0}, {0.904569, 0.5, 0}, {0.5, 0.904569, 0}, {0.5, 0.095431, 0}, {0.095431, 0.5, 0}, {0.5, 0.654569, 0}, {0.610739, 0.610739, 0}, {0.654569, 0.5, 0}, {0.389261, 0.610739, 0}, {0.610739, 0.389261, 0}, {0.345431, 0.5, 0}, {0.5, 0.345431, 0}, {0.389261, 0.389261, 0}, {0.789786, 0.789786, 0}, {0.804047, 0.929047, 0}, {0.929047, 0.804047, 0}, {0.804047, 0.0709532, 0}, {0.789786, 0.210214, 0}, {0.210214, 0.789786, 0}, {0.0709532, 0.804047, 0}, {0.929047, 0.195953, 0}, {0.195953, 0.929047, 0}, {0.210214, 0.210214, 0}, {0.195953, 0.0709532, 0}, {0.0709532, 0.195953, 0}, {0.929047, 0.0709532, 0}, {0.0709532, 0.929047, 0}, {0.929047, 0.929047, 0}, {0.0709532, 0.0709532, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {0, 0.735739, 0.139261}, {0, 0.610739, 0.234692}, {0, 0.625, 0.095431}, {0, 0.904569, 0.375}, {0, 0.765308, 0.389261}, {0, 0.860739, 0.264261}, {0, 0.625, 0.904569}, {0, 0.610739, 0.765308}, {0, 0.735739, 0.860739}, {0, 0.139261, 0.264261}, {0, 0.234692, 0.389261}, {0, 0.095431, 0.375}, {0, 0.860739, 0.735739}, {0, 0.765308, 0.610739}, {0, 0.904569, 0.625}, {0, 0.375, 0.095431}, {0, 0.389261, 0.234692}, {0, 0.264261, 0.139261}, {0, 0.095431, 0.625}, {0, 0.234692, 0.610739}, {0, 0.139261, 0.735739}, {0, 0.264261, 0.860739}, {0, 0.389261, 0.765308}, {0, 0.375, 0.904569}, {0, 0.5, 0.095431}, {0, 0.5, 0.904569}, {0, 0.904569, 0.5}, {0, 0.095431, 0.5}, {0, 0.610739, 0.389261}, {0, 0.5, 0.345431}, {0, 0.654569, 0.5}, {0, 0.610739, 0.610739}, {0, 0.389261, 0.389261}, {0, 0.5, 0.654569}, {0, 0.345431, 0.5}, {0, 0.389261, 0.610739}, {0, 0.804047, 0.0709532}, {0, 0.789786, 0.210214}, {0, 0.929047, 0.195953}, {0, 0.789786, 0.789786}, {0, 0.804047, 0.929047}, {0, 0.0709532, 0.195953}, {0, 0.210214, 0.210214}, {0, 0.929047, 0.804047}, {0, 0.195953, 0.0709532}, {0, 0.210214, 0.789786}, {0, 0.0709532, 0.804047}, {0, 0.195953, 0.929047}, {0, 0.0709532, 0.0709532}, {0, 0.929047, 0.0709532}, {0, 0.929047, 0.929047}, {0, 0.0709532, 0.929047}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {1, 0.860678, 0.735678}, {1, 0.76518, 0.610611}, {1, 0.904501, 0.624932}, {1, 0.624932, 0.904501}, {1, 0.610611, 0.76518}, {1, 0.735678, 0.860678}, {1, 0.0953701, 0.624939}, {1, 0.234631, 0.610678}, {1, 0.139261, 0.735739}, {1, 0.735739, 0.139261}, {1, 0.610678, 0.234631}, {1, 0.624939, 0.0953701}, {1, 0.904501, 0.374932}, {1, 0.76524, 0.389193}, {1, 0.860739, 0.264261}, {1, 0.264261, 0.860739}, {1, 0.389193, 0.76524}, {1, 0.374932, 0.904501}, {1, 0.374939, 0.0953701}, {1, 0.3892, 0.234631}, {1, 0.264261, 0.139261}, {1, 0.139261, 0.264261}, {1, 0.234631, 0.3892}, {1, 0.0953701, 0.374939}, {1, 0.904501, 0.499932}, {1, 0.499932, 0.904501}, {1, 0.0953701, 0.499939}, {1, 0.499939, 0.0953701}, {1, 0.610131, 0.610131}, {1, 0.499385, 0.653954}, {1, 0.653954, 0.499385}, {1, 0.610191, 0.388713}, {1, 0.388713, 0.610191}, {1, 0.499391, 0.344822}, {1, 0.344822, 0.499391}, {1, 0.388713, 0.388713}, {1, 0.929037, 0.804037}, {1, 0.789715, 0.789715}, {1, 0.804037, 0.929037}, {1, 0.210214, 0.789786}, {1, 0.0709532, 0.804047}, {1, 0.804047, 0.0709532}, {1, 0.789786, 0.210214}, {1, 0.195953, 0.929047}, {1, 0.929047, 0.195953}, {1, 0.0709532, 0.195953}, {1, 0.210214, 0.210214}, {1, 0.195953, 0.0709532}, {1, 0.0709532, 0.929047}, {1, 0.929047, 0.0709532}, {1, 0.929037, 0.929037}, {1, 0.0709532, 0.0709532}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}, {0.403787, 0.502163, 0.604301}, {0.59395, 0.335588, 0.588613}, {0.57425, 0.502163, 0.604301}, {0.533055, 0.519268, 0.479373}, {0.723218, 0.352693, 0.463685}, {0.552756, 0.352693, 0.463685}, {0.907719, 0.227933, 0.0932632}, {0.768458, 0.242194, 0.0932632}, {0.812288, 0.352933, 0.0932632}, {0.462839, 0.167794, 0.544306}, {0.592107, 0.184899, 0.419378}, {0.423487, 0.335588, 0.41815}, {0.552756, 0.352693, 0.293222}, {0.462839, 0.167794, 0.373844}, {0.610874, 0.139383, 0.904569}, {0.500135, 0.0955798, 0.904569}, {0.141927, 0.0709532, 0.0709532}, {0.0709735, 0.0709532, 0.141906}, {0.0709532, 0.141906, 0.0709532}, {0.307175, 0.417794, 0.123844}, {0.351005, 0.307055, 0.123844}, {0.095431, 0.5, 0.095431}, {0.139261, 0.389261, 0.095431}, {0.211744, 0.417794, 0.219275}, {0.633302, 0.167794, 0.544306}, {0.907719, 0.173886, 0.164216}, {0.907719, 0.242194, 0.232524}, {0.0709532, 0.210234, 0.860739}, {0.141927, 0.0709735, 0.929047}, {0.0709735, 0.139261, 0.789786}, {0.0709735, 0.0709532, 0.858094}, {0.0709532, 0.141927, 0.929047}, {0.210336, 0.0709735, 0.860739}, {0.139383, 0.139261, 0.721478}, {0.742945, 0.167794, 0.655045}, {0.786897, 0.167794, 0.544306}, {0.904691, 0.139261, 0.610739}, {0.882206, 0.307055, 0.655045}, {0.860739, 0.139261, 0.721478}, {0.442043, 0.585464, 0.809994}, {0.461744, 0.418889, 0.794306}, {0.632206, 0.418889, 0.794306}, {0.907719, 0.352872, 0.188633}, {0.836765, 0.173886, 0.0932632}, {0.549357, 0.674254, 0.636624}, {0.73952, 0.678141, 0.450474}, {0.57425, 0.672625, 0.433838}, {0.723218, 0.523156, 0.293222}, {0.698326, 0.524784, 0.496008}, {0.721478, 0.860739, 0.860739}, {0.610739, 0.904691, 0.860739}, {0.0709735, 0.139261, 0.210214}, {0.882206, 0.263164, 0.544245}, {0.882206, 0.417246, 0.543759}, {0.768458, 0.102933, 0.232524}, {0.907719, 0.102933, 0.218263}, {0.836765, 0.102933, 0.164216}, {0.73952, 0.507679, 0.620936}, {0.929047, 0.929037, 0.858083}, {0.403787, 0.672625, 0.433838}, {0.59395, 0.676512, 0.247688}, {0.552756, 0.523156, 0.293222}, {0.307175, 0.417929, 0.794306}, {0.351005, 0.307176, 0.794306}, {0.095431, 0.904569, 0.5}, {0.500135, 0.095431, 0.095431}, {0.858094, 0.929047, 0.929047}, {0.5, 0.904691, 0.904569}, {0.929047, 0.858083, 0.929037}, {0.423487, 0.50605, 0.41815}, {0.904569, 0.904501, 0.499932}, {0.139261, 0.860739, 0.278522}, {0.139261, 0.904569, 0.389261}, {0.351005, 0.838256, 0.263105}, {0.211744, 0.742825, 0.373844}, {0.211744, 0.698995, 0.263105}, {0.141906, 0.929047, 0.929047}, {0.210214, 0.860739, 0.929047}, {0.904569, 0.500068, 0.904501}, {0.745703, 0.184899, 0.419378}, {0.904691, 0.0953701, 0.499939}, {0.841012, 0.280269, 0.419318}, {0.607314, 0.59098, 0.82663}, {0.461879, 0.167794, 0.698875}, {0.572483, 0.167794, 0.655045}, {0.882206, 0.417726, 0.698808}, {0.0709532, 0.789786, 0.139261}, {0.139261, 0.721478, 0.139261}, {0.882206, 0.588195, 0.219214}, {0.841012, 0.434839, 0.264749}, {0.882206, 0.587709, 0.373296}, {0.841012, 0.434352, 0.418831}, {0.389261, 0.904569, 0.139261}, {0.5, 0.904569, 0.095431}, {0.389383, 0.095431, 0.139261}, {0.278522, 0.860739, 0.139261}, {0.287474, 0.834369, 0.559994}, {0.331304, 0.834369, 0.670734}, {0.192043, 0.695108, 0.670734}, {0.139261, 0.860739, 0.721478}, {0.095431, 0.860739, 0.610739}, {0.139261, 0.278644, 0.860739}, {0.278644, 0.139383, 0.860739}, {0.139261, 0.389383, 0.904569}, {0.192043, 0.584369, 0.559994}, {0.192043, 0.584369, 0.714563}, {0.211744, 0.417794, 0.698875}, {0.211744, 0.417794, 0.544306}, {0.0955798, 0.139261, 0.610739}, {0.351005, 0.698995, 0.123844}, {0.461744, 0.742825, 0.123844}, {0.461744, 0.838256, 0.219275}, {0.929047, 0.141906, 0.0709532}, {0.858094, 0.929047, 0.0709532}, {0.0955798, 0.095431, 0.5}, {0.307323, 0.167794, 0.544306}, {0.211744, 0.263225, 0.544306}, {0.211744, 0.307055, 0.655045}, {0.461744, 0.263225, 0.123844}, {0.351126, 0.167794, 0.263105}, {0.278644, 0.139261, 0.139261}, {0.461879, 0.167794, 0.219275}, {0.929047, 0.929047, 0.141906}, {0.860739, 0.860678, 0.721417}, {0.904569, 0.860678, 0.610678}, {0.442043, 0.834369, 0.559994}, {0.718053, 0.839885, 0.687369}, {0.857314, 0.700563, 0.687308}, {0.761883, 0.839885, 0.57663}, {0.857314, 0.744386, 0.576562}, {0.904569, 0.499939, 0.0953701}, {0.786775, 0.588256, 0.123844}, {0.745581, 0.434899, 0.169378}, {0.701751, 0.32416, 0.169378}, {0.748731, 0.287832, 0.262642}, {0.857314, 0.589817, 0.731131}, {0.857314, 0.589337, 0.576082}, {0.572483, 0.307055, 0.123844}, {0.461744, 0.417794, 0.123844}, {0.591012, 0.434899, 0.169378}, {0.929047, 0.858094, 0.0709532}, {0.882206, 0.713256, 0.123844}, {0.882206, 0.767303, 0.194797}, {0.882206, 0.698995, 0.263105}, {0.351126, 0.167794, 0.433567}, {0.351126, 0.167794, 0.655045}, {0.211744, 0.417794, 0.373844}, {0.423487, 0.50605, 0.247688}, {0.211744, 0.588256, 0.373844}, {0.929047, 0.0709532, 0.141906}, {0.287474, 0.584504, 0.809994}, {0.929047, 0.0709532, 0.858094}, {0.192043, 0.738938, 0.559994}, {0.461744, 0.838256, 0.373844}, {0.632206, 0.838256, 0.373844}, {0.139261, 0.210214, 0.0709532}, {0.210234, 0.139261, 0.0709532}, {0.789786, 0.0709735, 0.860739}, {0.721478, 0.139383, 0.860739}, {0.610739, 0.904569, 0.139261}, {0.721478, 0.860739, 0.139261}, {0.0709532, 0.929047, 0.141906}, {0.095431, 0.500135, 0.904569}, {0.442043, 0.834369, 0.714563}, {0.461744, 0.263374, 0.794306}, {0.860739, 0.278644, 0.860739}, {0.929047, 0.210234, 0.860739}, {0.211744, 0.307055, 0.263105}, {0.139261, 0.610739, 0.095431}, {0.211744, 0.588256, 0.219275}, {0.632206, 0.588256, 0.123844}, {0.461744, 0.588256, 0.123844}, {0.139383, 0.139261, 0.278522}, {0.139261, 0.278522, 0.139261}, {0.607314, 0.839885, 0.57663}, {0.904569, 0.610813, 0.860678}, {0.0709532, 0.858094, 0.929047}, {0.331304, 0.695108, 0.809994}, {0.139261, 0.721478, 0.860739}, {0.278522, 0.860739, 0.860739}, {0.0709532, 0.929047, 0.858094}, {0.718053, 0.700624, 0.82663}, {0.860739, 0.721417, 0.860678}, {0.761883, 0.59002, 0.82663}, {0.742945, 0.307176, 0.794306}, {0.786775, 0.417929, 0.794306}, {0.860739, 0.929037, 0.789776}, {0.389261, 0.904691, 0.860739}, {0.307175, 0.588256, 0.123844}, {0.789786, 0.860739, 0.0709532}, {0.0709532, 0.858094, 0.0709532}, {0.742945, 0.838256, 0.263105}, {0.632206, 0.742825, 0.123844}, {0.742945, 0.698995, 0.123844}, {0.841012, 0.32416, 0.308639}, {0.610874, 0.139261, 0.095431}, {0.782719, 0.102933, 0.0932632}, {0.860739, 0.789776, 0.929037}, {0.929047, 0.141927, 0.929047}, {0.811253, 0.838256, 0.194797}, {0.858094, 0.0709735, 0.929047}, {0.607314, 0.839885, 0.731199}, {0.607314, 0.744576, 0.82663}, {0.442043, 0.73906, 0.809994}, {0.389383, 0.0955798, 0.860739}, {0.141906, 0.929047, 0.0709532}, {0.0709532, 0.860739, 0.210214}, {0.929047, 0.860739, 0.210214}, {0.860739, 0.860739, 0.278522}, {0.139383, 0.095431, 0.389261}, {0.211744, 0.263225, 0.373844}, {0.139261, 0.789786, 0.929047}, {0.789786, 0.929047, 0.860739}, {0.904691, 0.139261, 0.389261}, {0.701751, 0.184899, 0.308639}, {0.929047, 0.139261, 0.789786}, {0.786775, 0.838256, 0.373844}, {0.875, 0.0709532, 0.0709532}, {0.210214, 0.929047, 0.139261}, {0.572483, 0.838256, 0.263105}, {0.591147, 0.184899, 0.264809}, {0.904569, 0.389396, 0.860739}, {0.572483, 0.307176, 0.794306}, {0.331304, 0.834369, 0.449255}, {0.139261, 0.929047, 0.789786}, {0.860739, 0.789786, 0.0709532}, {0.904569, 0.860739, 0.389261}, {0.139261, 0.610739, 0.904569}, {0.812409, 0.102933, 0.343263}, {0.657854, 0.102933, 0.188694}, {0.857314, 0.700624, 0.465891}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 48
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{6, 8, 11}, {8, 9, 12}, {9, 10, 13}, {10, 7, 14}, {7, 15, 18}, {15, 16, 19}, {16, 17, 20}, {17, 3, 21}, {3, 22, 25}, {22, 23, 26}, {23, 24, 27}, {24, 2, 28}, {2, 29, 32}, {29, 30, 33}, {30, 31, 34}, {31, 6, 35}, {0, 36, 39}, {36, 37, 40}, {37, 38, 41}, {38, 4, 42}, {4, 43, 46}, {43, 44, 47}, {44, 45, 48}, {45, 5, 49}, {5, 50, 53}, {50, 51, 54}, {51, 52, 55}, {52, 1, 56}, {1, 57, 60}, {57, 58, 61}, {58, 59, 62}, {59, 0, 63}, {2, 64, 67}, {64, 65, 68}, {65, 66, 69}, {66, 0, 70}, {6, 71, 74}, {71, 72, 75}, {72, 73, 76}, {73, 4, 77}, {7, 78, 81}, {78, 79, 82}, {79, 80, 83}, {80, 5, 84}, {3, 85, 88}, {85, 86, 89}, {86, 87, 90}, {87, 1, 91}}
]
+ ]
(not_ghost:_triangle_6) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 240
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{93, 97, 71, 105, 106, 107}, {93, 8, 98, 108, 109, 110}, {94, 78, 99, 111, 112, 113}, {43, 95, 100, 114, 115, 116}, {94, 98, 10, 117, 118, 119}, {73, 97, 95, 120, 121, 122}, {45, 100, 96, 123, 124, 125}, {80, 96, 99, 126, 127, 128}, {71, 97, 72, 106, 129, 75}, {78, 79, 99, 82, 130, 112}, {8, 9, 98, 12, 131, 109}, {43, 100, 44, 116, 132, 47}, {72, 97, 73, 129, 120, 76}, {9, 10, 98, 13, 118, 131}, {79, 80, 99, 83, 128, 130}, {44, 100, 45, 132, 123, 48}, {93, 92, 97, 133, 134, 105}, {93, 98, 92, 110, 135, 133}, {94, 92, 98, 136, 135, 117}, {92, 95, 97, 137, 121, 134}, {94, 99, 92, 113, 138, 136}, {92, 100, 95, 139, 115, 137}, {92, 99, 96, 138, 127, 140}, {92, 96, 100, 140, 124, 139}, {93, 71, 101, 107, 141, 142}, {93, 101, 8, 142, 143, 108}, {94, 102, 78, 144, 145, 111}, {43, 103, 95, 146, 147, 114}, {94, 10, 102, 119, 148, 144}, {73, 95, 103, 122, 147, 149}, {45, 96, 104, 125, 150, 151}, {80, 104, 96, 152, 150, 126}, {4, 73, 103, 77, 149, 153}, {6, 101, 71, 154, 141, 74}, {7, 102, 10, 155, 148, 14}, {7, 78, 102, 81, 145, 155}, {6, 8, 101, 11, 143, 154}, {5, 104, 80, 156, 152, 84}, {4, 103, 43, 153, 146, 46}, {5, 45, 104, 49, 151, 156}, {15, 162, 158, 170, 171, 172}, {22, 163, 159, 173, 174, 175}, {8, 164, 160, 176, 177, 178}, {29, 165, 161, 179, 180, 181}, {10, 158, 164, 182, 183, 184}, {31, 160, 165, 185, 186, 187}, {17, 159, 162, 188, 189, 190}, {24, 161, 163, 191, 192, 193}, {22, 23, 163, 26, 194, 173}, {15, 16, 162, 19, 195, 170}, {29, 30, 165, 33, 196, 179}, {8, 9, 164, 12, 197, 176}, {16, 17, 162, 20, 190, 195}, {23, 24, 163, 27, 193, 194}, {9, 10, 164, 13, 184, 197}, {30, 31, 165, 34, 187, 196}, {158, 162, 157, 171, 198, 199}, {159, 157, 162, 200, 198, 189}, {159, 163, 157, 174, 201, 200}, {161, 157, 163, 202, 201, 192}, {158, 157, 164, 199, 203, 183}, {160, 164, 157, 177, 203, 204}, {160, 157, 165, 204, 205, 186}, {161, 165, 157, 180, 205, 202}, {15, 158, 167, 172, 206, 207}, {22, 159, 166, 175, 208, 209}, {8, 160, 169, 178, 210, 211}, {29, 161, 168, 181, 212, 213}, {10, 167, 158, 214, 206, 182}, {31, 169, 160, 215, 210, 185}, {17, 166, 159, 216, 208, 188}, {24, 168, 161, 217, 212, 191}, {2, 168, 24, 218, 217, 28}, {3, 166, 17, 219, 216, 21}, {6, 169, 31, 220, 215, 35}, {7, 167, 10, 221, 214, 14}, {7, 15, 167, 18, 207, 221}, {3, 22, 166, 25, 209, 219}, {6, 8, 169, 11, 211, 220}, {2, 29, 168, 32, 213, 218}, {50, 227, 223, 235, 236, 237}, {57, 228, 224, 238, 239, 240}, {43, 229, 225, 241, 242, 243}, {36, 230, 226, 244, 245, 246}, {45, 223, 229, 247, 248, 249}, {38, 225, 230, 250, 251, 252}, {52, 224, 227, 253, 254, 255}, {59, 226, 228, 256, 257, 258}, {57, 58, 228, 61, 259, 238}, {50, 51, 227, 54, 260, 235}, {36, 37, 230, 40, 261, 244}, {43, 44, 229, 47, 262, 241}, {51, 52, 227, 55, 255, 260}, {58, 59, 228, 62, 258, 259}, {44, 45, 229, 48, 249, 262}, {37, 38, 230, 41, 252, 261}, {223, 227, 222, 236, 263, 264}, {224, 222, 227, 265, 263, 254}, {224, 228, 222, 239, 266, 265}, {222, 228, 226, 266, 257, 267}, {223, 222, 229, 264, 268, 248}, {222, 225, 229, 269, 242, 268}, {222, 230, 225, 270, 251, 269}, {222, 226, 230, 267, 245, 270}, {50, 223, 232, 237, 271, 272}, {57, 224, 231, 240, 273, 274}, {43, 225, 234, 243, 275, 276}, {36, 226, 233, 246, 277, 278}, {45, 232, 223, 279, 271, 247}, {38, 234, 225, 280, 275, 250}, {52, 231, 224, 281, 273, 253}, {59, 233, 226, 282, 277, 256}, {0, 233, 59, 283, 282, 63}, {1, 231, 52, 284, 281, 56}, {4, 234, 38, 285, 280, 42}, {5, 232, 45, 286, 279, 49}, {5, 50, 232, 53, 272, 286}, {1, 57, 231, 60, 274, 284}, {4, 43, 234, 46, 276, 285}, {0, 36, 233, 39, 278, 283}, {85, 288, 292, 300, 301, 302}, {22, 293, 288, 303, 304, 305}, {57, 290, 294, 306, 307, 308}, {64, 295, 289, 309, 310, 311}, {24, 289, 293, 312, 313, 314}, {87, 292, 290, 315, 316, 317}, {66, 291, 295, 318, 319, 320}, {59, 294, 291, 321, 322, 323}, {85, 292, 86, 302, 324, 89}, {22, 23, 293, 26, 325, 303}, {57, 294, 58, 308, 326, 61}, {64, 65, 295, 68, 327, 309}, {86, 292, 87, 324, 315, 90}, {23, 24, 293, 27, 314, 325}, {65, 66, 295, 69, 320, 327}, {58, 294, 59, 326, 321, 62}, {288, 293, 287, 304, 328, 329}, {288, 287, 292, 329, 330, 301}, {289, 287, 293, 331, 328, 313}, {290, 292, 287, 316, 330, 332}, {289, 295, 287, 310, 333, 331}, {290, 287, 294, 332, 334, 307}, {291, 294, 287, 322, 334, 335}, {291, 287, 295, 335, 333, 319}, {22, 288, 296, 305, 336, 337}, {85, 296, 288, 338, 336, 300}, {57, 298, 290, 339, 340, 306}, {64, 289, 297, 311, 341, 342}, {87, 290, 298, 317, 340, 343}, {24, 297, 289, 344, 341, 312}, {59, 291, 299, 323, 345, 346}, {66, 299, 291, 347, 345, 318}, {1, 87, 298, 91, 343, 348}, {2, 297, 24, 349, 344, 28}, {3, 296, 85, 350, 338, 88}, {3, 22, 296, 25, 337, 350}, {1, 298, 57, 348, 339, 60}, {2, 64, 297, 67, 342, 349}, {0, 59, 299, 63, 346, 351}, {0, 299, 66, 351, 347, 70}, {64, 353, 357, 365, 366, 367}, {29, 358, 353, 368, 369, 370}, {71, 359, 354, 371, 372, 373}, {36, 355, 360, 374, 375, 376}, {31, 354, 358, 377, 378, 379}, {66, 357, 355, 380, 381, 382}, {38, 360, 356, 383, 384, 385}, {73, 356, 359, 386, 387, 388}, {64, 357, 65, 367, 389, 68}, {71, 72, 359, 75, 390, 371}, {29, 30, 358, 33, 391, 368}, {36, 360, 37, 376, 392, 40}, {65, 357, 66, 389, 380, 69}, {30, 31, 358, 34, 379, 391}, {72, 73, 359, 76, 388, 390}, {37, 360, 38, 392, 383, 41}, {353, 352, 357, 393, 394, 366}, {353, 358, 352, 369, 395, 393}, {354, 352, 358, 396, 395, 378}, {355, 357, 352, 381, 394, 397}, {354, 359, 352, 372, 398, 396}, {355, 352, 360, 397, 399, 375}, {356, 352, 359, 400, 398, 387}, {356, 360, 352, 384, 399, 400}, {64, 361, 353, 401, 402, 365}, {29, 353, 361, 370, 402, 403}, {71, 354, 362, 373, 404, 405}, {36, 363, 355, 406, 407, 374}, {31, 362, 354, 408, 404, 377}, {66, 355, 363, 382, 407, 409}, {38, 356, 364, 385, 410, 411}, {73, 364, 356, 412, 410, 386}, {0, 66, 363, 70, 409, 413}, {2, 361, 64, 414, 401, 67}, {6, 362, 31, 415, 408, 35}, {6, 71, 362, 74, 405, 415}, {2, 29, 361, 32, 403, 414}, {4, 364, 73, 416, 412, 77}, {0, 363, 36, 413, 406, 39}, {4, 38, 364, 42, 411, 416}, {15, 418, 423, 430, 431, 432}, {78, 422, 418, 433, 434, 435}, {50, 424, 420, 436, 437, 438}, {85, 419, 425, 439, 440, 441}, {17, 423, 419, 442, 443, 444}, {80, 420, 422, 445, 446, 447}, {87, 425, 421, 448, 449, 450}, {52, 421, 424, 451, 452, 453}, {15, 423, 16, 432, 454, 19}, {78, 79, 422, 82, 455, 433}, {50, 51, 424, 54, 456, 436}, {85, 425, 86, 441, 457, 89}, {79, 80, 422, 83, 447, 455}, {16, 423, 17, 454, 442, 20}, {86, 425, 87, 457, 448, 90}, {51, 52, 424, 55, 453, 456}, {417, 418, 422, 458, 434, 459}, {417, 423, 418, 460, 431, 458}, {419, 423, 417, 443, 460, 461}, {420, 417, 422, 462, 459, 446}, {419, 417, 425, 461, 463, 440}, {420, 424, 417, 437, 464, 462}, {421, 417, 424, 465, 464, 452}, {421, 425, 417, 449, 463, 465}, {15, 426, 418, 466, 467, 430}, {78, 418, 426, 435, 467, 468}, {50, 420, 428, 438, 469, 470}, {85, 427, 419, 471, 472, 439}, {80, 428, 420, 473, 469, 445}, {17, 419, 427, 444, 472, 474}, {52, 429, 421, 475, 476, 451}, {87, 421, 429, 450, 476, 477}, {5, 428, 80, 478, 473, 84}, {3, 17, 427, 21, 474, 479}, {7, 78, 426, 81, 468, 480}, {7, 426, 15, 480, 466, 18}, {5, 50, 428, 53, 470, 478}, {3, 427, 85, 479, 471, 88}, {1, 429, 52, 481, 475, 56}, {1, 87, 429, 91, 477, 481}}
]
+ ]
(not_ghost:_tetrahedron_10) [
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_10
+ size : 341
+ nb_component : 10
+ allocated size : 2000
+ memory size : 78kB
+ values : {{484, 483, 485, 489, 491, 493, 492, 496, 494, 495}, {87, 290, 490, 292, 317, 498, 497, 315, 316, 499}, {222, 484, 489, 486, 500, 496, 501, 504, 502, 503}, {96, 229, 45, 100, 505, 249, 125, 124, 506, 123}, {59, 0, 233, 299, 63, 283, 282, 346, 351, 507}, {0, 363, 233, 299, 413, 508, 283, 351, 509, 507}, {486, 295, 291, 357, 510, 319, 511, 514, 512, 513}, {484, 222, 489, 485, 500, 501, 496, 492, 515, 495}, {87, 429, 421, 490, 477, 476, 450, 497, 516, 517}, {103, 356, 234, 364, 518, 520, 519, 522, 410, 521}, {356, 103, 234, 225, 518, 519, 520, 524, 523, 275}, {43, 103, 225, 234, 146, 523, 243, 276, 519, 275}, {223, 227, 485, 420, 236, 526, 525, 529, 527, 528}, {483, 92, 484, 485, 530, 531, 491, 493, 532, 492}, {87, 421, 425, 490, 450, 449, 448, 497, 517, 533}, {298, 87, 290, 490, 343, 317, 340, 534, 497, 498}, {482, 483, 488, 489, 535, 537, 536, 539, 494, 538}, {94, 10, 158, 98, 119, 182, 540, 117, 118, 541}, {355, 363, 233, 36, 407, 508, 542, 374, 406, 278}, {485, 420, 424, 417, 528, 437, 543, 544, 462, 464}, {231, 224, 52, 490, 273, 253, 281, 547, 545, 546}, {483, 482, 485, 489, 535, 548, 493, 494, 539, 495}, {167, 15, 7, 426, 207, 18, 221, 549, 466, 480}, {483, 487, 488, 489, 550, 551, 537, 494, 552, 538}, {484, 92, 97, 95, 531, 134, 553, 554, 137, 121}, {29, 165, 30, 358, 179, 196, 33, 368, 555, 391}, {228, 294, 58, 59, 556, 326, 259, 258, 321, 62}, {102, 10, 7, 167, 148, 14, 155, 557, 214, 221}, {9, 10, 98, 164, 13, 118, 131, 197, 184, 558}, {78, 102, 7, 426, 145, 155, 81, 468, 559, 480}, {483, 484, 487, 489, 491, 560, 550, 494, 496, 552}, {16, 423, 162, 17, 454, 561, 195, 20, 442, 190}, {353, 161, 358, 487, 562, 563, 369, 566, 564, 565}, {93, 101, 8, 169, 142, 143, 108, 568, 567, 211}, {78, 422, 79, 99, 433, 455, 82, 112, 569, 130}, {485, 227, 489, 424, 526, 570, 495, 543, 571, 572}, {482, 92, 483, 485, 573, 530, 535, 548, 532, 493}, {223, 222, 229, 484, 264, 268, 248, 575, 500, 574}, {422, 420, 485, 417, 446, 528, 576, 459, 462, 544}, {64, 297, 353, 289, 342, 577, 365, 311, 341, 578}, {101, 6, 8, 169, 154, 11, 143, 567, 220, 211}, {425, 488, 489, 417, 579, 538, 580, 463, 581, 582}, {163, 161, 24, 293, 192, 191, 193, 584, 583, 314}, {228, 294, 59, 226, 556, 321, 258, 257, 585, 256}, {161, 289, 24, 293, 586, 312, 191, 583, 313, 314}, {165, 483, 160, 354, 587, 588, 186, 591, 589, 590}, {103, 356, 95, 225, 518, 592, 147, 523, 524, 593}, {356, 95, 359, 73, 592, 594, 387, 386, 122, 388}, {352, 483, 359, 484, 595, 596, 398, 598, 491, 597}, {103, 43, 4, 234, 146, 46, 153, 519, 276, 285}, {230, 356, 38, 225, 599, 385, 252, 251, 524, 250}, {161, 289, 293, 487, 586, 313, 583, 564, 600, 601}, {161, 487, 293, 163, 564, 601, 583, 192, 602, 584}, {429, 87, 298, 490, 477, 343, 603, 516, 497, 534}, {364, 38, 234, 4, 411, 280, 521, 416, 42, 285}, {22, 296, 3, 166, 337, 350, 25, 209, 604, 219}, {230, 37, 360, 36, 261, 392, 605, 244, 40, 376}, {356, 230, 360, 484, 599, 605, 384, 608, 606, 607}, {22, 23, 293, 163, 26, 325, 303, 173, 194, 584}, {294, 486, 291, 226, 609, 511, 322, 585, 610, 611}, {294, 228, 486, 226, 556, 612, 609, 585, 257, 610}, {3, 17, 166, 427, 21, 216, 219, 479, 474, 613}, {364, 103, 4, 234, 522, 153, 416, 521, 519, 285}, {158, 15, 418, 162, 172, 430, 614, 171, 170, 615}, {15, 423, 418, 162, 432, 431, 430, 170, 561, 615}, {157, 483, 160, 165, 616, 588, 204, 205, 587, 186}, {482, 158, 418, 162, 617, 614, 618, 619, 171, 615}, {423, 482, 418, 162, 620, 618, 431, 561, 619, 615}, {425, 488, 292, 489, 579, 622, 621, 580, 538, 623}, {290, 489, 490, 292, 624, 625, 498, 316, 623, 499}, {222, 223, 485, 484, 264, 525, 515, 500, 575, 492}, {363, 0, 66, 299, 413, 70, 409, 509, 351, 347}, {482, 422, 485, 417, 626, 576, 548, 627, 459, 544}, {486, 290, 287, 489, 628, 332, 629, 503, 624, 630}, {296, 3, 166, 427, 350, 219, 604, 631, 479, 613}, {489, 290, 287, 292, 624, 332, 630, 623, 316, 330}, {488, 85, 427, 419, 632, 471, 633, 634, 439, 472}, {425, 488, 419, 85, 579, 634, 440, 441, 632, 439}, {15, 16, 423, 162, 19, 454, 432, 170, 195, 561}, {65, 64, 357, 295, 68, 367, 389, 327, 309, 512}, {222, 484, 486, 226, 500, 502, 504, 267, 635, 610}, {356, 484, 95, 225, 608, 554, 592, 524, 636, 593}, {352, 484, 486, 487, 598, 502, 637, 639, 560, 638}, {230, 222, 484, 225, 270, 500, 606, 251, 269, 636}, {294, 228, 58, 57, 556, 259, 326, 308, 238, 61}, {352, 483, 484, 487, 595, 491, 598, 639, 550, 560}, {23, 163, 24, 293, 194, 193, 27, 325, 584, 314}, {429, 231, 1, 52, 640, 284, 481, 475, 281, 56}, {228, 222, 486, 226, 266, 504, 612, 257, 267, 610}, {482, 422, 417, 418, 626, 459, 627, 618, 434, 458}, {489, 425, 490, 292, 580, 533, 625, 623, 621, 499}, {483, 92, 97, 484, 530, 134, 641, 491, 531, 553}, {50, 232, 5, 428, 272, 286, 53, 470, 642, 478}, {483, 165, 358, 354, 587, 555, 643, 589, 591, 378}, {157, 483, 487, 488, 616, 550, 644, 645, 537, 551}, {425, 488, 417, 419, 579, 581, 463, 440, 634, 461}, {222, 230, 484, 226, 270, 606, 500, 267, 245, 635}, {299, 363, 233, 291, 509, 508, 507, 345, 646, 647}, {103, 356, 73, 95, 518, 386, 149, 147, 592, 122}, {229, 44, 45, 100, 262, 48, 249, 506, 132, 123}, {356, 230, 38, 360, 599, 252, 385, 384, 605, 383}, {104, 223, 45, 96, 648, 247, 151, 150, 649, 125}, {22, 159, 293, 288, 175, 650, 303, 305, 651, 304}, {352, 356, 360, 484, 400, 384, 399, 598, 608, 607}, {2, 361, 168, 29, 414, 652, 218, 32, 403, 213}, {484, 483, 359, 97, 491, 596, 597, 553, 641, 653}, {483, 157, 160, 164, 616, 204, 588, 654, 203, 177}, {92, 484, 100, 95, 531, 655, 139, 137, 554, 115}, {223, 420, 96, 104, 529, 656, 649, 648, 657, 150}, {85, 425, 292, 86, 441, 621, 302, 89, 457, 324}, {355, 352, 486, 357, 397, 637, 658, 381, 394, 514}, {353, 289, 487, 357, 578, 600, 566, 366, 659, 660}, {66, 295, 357, 291, 320, 512, 380, 318, 319, 513}, {488, 487, 287, 489, 551, 662, 661, 538, 552, 630}, {486, 294, 287, 290, 609, 334, 629, 628, 307, 332}, {227, 223, 485, 222, 236, 525, 526, 263, 264, 515}, {355, 486, 226, 291, 658, 610, 663, 664, 511, 611}, {43, 103, 95, 225, 146, 147, 114, 243, 523, 593}, {356, 230, 484, 225, 599, 606, 608, 524, 251, 636}, {64, 295, 289, 357, 309, 310, 311, 367, 512, 659}, {157, 482, 162, 158, 665, 619, 198, 199, 617, 171}, {223, 229, 45, 96, 248, 249, 247, 649, 505, 125}, {222, 229, 484, 225, 268, 574, 500, 269, 242, 636}, {422, 78, 418, 99, 433, 435, 434, 569, 112, 666}, {422, 80, 79, 99, 447, 83, 455, 569, 128, 130}, {159, 22, 293, 163, 175, 303, 650, 174, 173, 584}, {101, 362, 71, 6, 667, 405, 141, 154, 415, 74}, {93, 483, 354, 160, 668, 589, 669, 670, 588, 590}, {355, 486, 291, 357, 658, 511, 664, 381, 514, 513}, {362, 101, 169, 6, 667, 567, 671, 415, 154, 220}, {94, 482, 418, 99, 672, 618, 673, 113, 674, 666}, {488, 482, 489, 417, 536, 539, 538, 581, 627, 582}, {484, 356, 95, 359, 608, 592, 554, 597, 387, 594}, {363, 355, 233, 291, 407, 542, 508, 646, 664, 647}, {485, 92, 96, 99, 532, 140, 675, 676, 138, 127}, {78, 94, 418, 99, 111, 673, 435, 112, 113, 666}, {92, 483, 97, 93, 530, 641, 134, 133, 668, 105}, {484, 95, 97, 359, 554, 121, 553, 597, 594, 653}, {72, 71, 97, 359, 75, 106, 129, 390, 371, 653}, {94, 482, 99, 92, 672, 674, 113, 136, 573, 138}, {102, 167, 7, 426, 557, 221, 155, 559, 549, 480}, {10, 164, 158, 98, 184, 183, 182, 118, 558, 541}, {482, 422, 99, 485, 626, 569, 674, 548, 576, 676}, {15, 158, 426, 167, 172, 677, 466, 207, 206, 549}, {92, 482, 99, 485, 573, 674, 138, 532, 548, 676}, {158, 15, 426, 418, 172, 466, 677, 614, 430, 467}, {38, 356, 234, 225, 385, 520, 280, 250, 524, 275}, {94, 482, 158, 418, 672, 617, 540, 673, 618, 614}, {364, 356, 234, 38, 410, 520, 521, 411, 385, 280}, {93, 160, 8, 98, 670, 178, 108, 110, 678, 109}, {355, 233, 226, 36, 542, 277, 663, 374, 278, 246}, {160, 93, 8, 169, 670, 108, 178, 210, 568, 211}, {227, 223, 50, 420, 236, 237, 235, 527, 529, 438}, {363, 0, 233, 36, 413, 283, 508, 406, 39, 278}, {486, 295, 287, 291, 510, 333, 629, 511, 319, 335}, {59, 294, 291, 226, 321, 322, 323, 256, 585, 611}, {66, 363, 299, 291, 409, 509, 347, 318, 646, 345}, {486, 352, 487, 357, 637, 639, 638, 514, 394, 660}, {295, 486, 487, 357, 510, 638, 679, 512, 514, 660}, {296, 22, 288, 166, 337, 305, 336, 604, 209, 680}, {361, 64, 2, 297, 401, 67, 414, 681, 342, 349}, {95, 97, 359, 73, 121, 653, 594, 122, 120, 388}, {423, 482, 417, 418, 620, 627, 460, 431, 618, 458}, {65, 295, 357, 66, 327, 512, 389, 69, 320, 380}, {97, 72, 359, 73, 129, 390, 653, 120, 76, 388}, {420, 223, 96, 485, 529, 649, 656, 528, 525, 675}, {159, 488, 293, 288, 682, 683, 650, 651, 684, 304}, {31, 165, 160, 354, 187, 186, 185, 377, 591, 590}, {484, 486, 487, 489, 502, 638, 560, 496, 503, 552}, {486, 295, 487, 287, 510, 679, 638, 629, 333, 662}, {59, 233, 226, 291, 282, 277, 256, 323, 647, 611}, {233, 355, 226, 291, 542, 663, 277, 647, 664, 611}, {425, 421, 489, 490, 449, 685, 580, 533, 517, 625}, {288, 488, 292, 85, 684, 622, 301, 300, 632, 302}, {421, 425, 489, 417, 449, 580, 685, 465, 463, 582}, {294, 228, 57, 290, 556, 238, 308, 307, 686, 306}, {165, 31, 358, 354, 187, 379, 555, 591, 377, 378}, {103, 356, 364, 73, 518, 410, 522, 149, 386, 412}, {352, 483, 358, 354, 595, 643, 395, 396, 589, 378}, {22, 159, 288, 166, 175, 651, 305, 209, 208, 680}, {356, 352, 359, 484, 400, 398, 387, 608, 598, 597}, {64, 361, 353, 297, 401, 402, 365, 342, 681, 577}, {355, 66, 357, 291, 382, 380, 381, 664, 318, 513}, {487, 486, 287, 489, 638, 629, 662, 552, 503, 630}, {298, 57, 490, 290, 339, 687, 534, 340, 306, 498}, {31, 362, 169, 6, 408, 671, 215, 35, 415, 220}, {488, 425, 292, 85, 579, 621, 622, 632, 441, 302}, {483, 352, 359, 354, 595, 398, 596, 589, 396, 372}, {94, 78, 418, 426, 111, 435, 673, 688, 468, 467}, {229, 43, 44, 100, 241, 47, 262, 506, 116, 132}, {31, 165, 358, 30, 187, 555, 379, 34, 196, 391}, {429, 231, 52, 490, 640, 281, 475, 516, 547, 546}, {94, 102, 78, 426, 144, 145, 111, 688, 559, 468}, {421, 429, 52, 490, 476, 475, 451, 517, 516, 546}, {364, 103, 73, 4, 522, 149, 412, 416, 153, 77}, {420, 227, 424, 50, 527, 571, 437, 438, 235, 436}, {104, 80, 5, 428, 152, 84, 156, 689, 473, 478}, {227, 51, 52, 424, 260, 55, 255, 571, 456, 453}, {487, 289, 293, 287, 600, 313, 601, 662, 331, 328}, {166, 159, 288, 488, 208, 651, 680, 690, 682, 684}, {289, 161, 353, 487, 586, 562, 578, 600, 564, 566}, {482, 485, 489, 417, 548, 495, 539, 627, 544, 582}, {50, 227, 424, 51, 235, 571, 436, 54, 260, 456}, {488, 489, 287, 292, 538, 630, 661, 622, 623, 330}, {482, 483, 157, 488, 535, 616, 665, 536, 537, 645}, {80, 420, 104, 96, 445, 657, 152, 126, 656, 150}, {232, 104, 45, 5, 691, 151, 279, 286, 156, 49}, {288, 488, 287, 292, 684, 661, 329, 301, 622, 330}, {295, 289, 487, 287, 310, 600, 679, 333, 331, 662}, {157, 161, 163, 487, 202, 192, 201, 644, 564, 602}, {483, 482, 164, 98, 535, 692, 654, 694, 693, 558}, {3, 296, 85, 427, 350, 338, 88, 479, 631, 471}, {92, 483, 93, 98, 530, 668, 133, 135, 694, 110}, {95, 484, 100, 225, 554, 655, 115, 593, 636, 695}, {231, 224, 490, 57, 273, 545, 547, 274, 240, 687}, {64, 289, 353, 357, 311, 578, 365, 367, 659, 366}, {2, 297, 24, 168, 349, 344, 28, 218, 696, 217}, {361, 297, 168, 353, 681, 696, 652, 402, 577, 697}, {353, 161, 168, 29, 562, 212, 697, 370, 181, 213}, {289, 295, 487, 357, 310, 679, 600, 659, 512, 660}, {352, 353, 487, 357, 393, 566, 639, 394, 366, 660}, {361, 353, 168, 29, 402, 697, 652, 403, 370, 213}, {484, 229, 100, 225, 574, 506, 655, 636, 242, 695}, {104, 223, 232, 45, 648, 271, 691, 151, 247, 279}, {160, 164, 8, 98, 177, 176, 178, 678, 558, 109}, {164, 9, 8, 98, 197, 12, 176, 558, 131, 109}, {165, 161, 358, 29, 180, 563, 555, 179, 181, 368}, {297, 361, 168, 2, 681, 652, 696, 349, 414, 218}, {161, 353, 358, 29, 562, 369, 563, 181, 370, 368}, {230, 37, 38, 360, 261, 41, 252, 605, 392, 383}, {43, 95, 100, 225, 114, 115, 116, 243, 593, 695}, {420, 80, 104, 428, 445, 152, 657, 469, 473, 689}, {232, 104, 5, 428, 691, 156, 286, 642, 689, 478}, {59, 299, 233, 291, 346, 507, 282, 323, 345, 647}, {355, 363, 66, 291, 407, 409, 382, 664, 646, 318}, {158, 94, 418, 426, 540, 673, 614, 677, 688, 467}, {87, 429, 298, 1, 477, 603, 343, 91, 481, 348}, {420, 227, 485, 424, 527, 526, 528, 437, 571, 543}, {482, 422, 418, 99, 626, 434, 618, 674, 569, 666}, {229, 43, 100, 225, 241, 116, 506, 242, 243, 695}, {294, 486, 287, 291, 609, 629, 334, 322, 511, 335}, {17, 166, 419, 159, 216, 698, 444, 188, 208, 699}, {419, 166, 17, 427, 698, 216, 444, 472, 613, 474}, {166, 488, 419, 159, 690, 634, 698, 208, 682, 699}, {419, 488, 166, 427, 634, 690, 698, 472, 633, 613}, {160, 98, 483, 164, 678, 694, 588, 177, 558, 654}, {483, 98, 160, 93, 694, 678, 588, 668, 110, 670}, {226, 360, 486, 355, 700, 701, 610, 663, 375, 658}, {360, 36, 226, 230, 376, 246, 700, 605, 244, 245}, {226, 36, 360, 355, 246, 376, 700, 663, 374, 375}, {93, 169, 362, 101, 568, 671, 702, 142, 567, 667}, {93, 362, 71, 101, 702, 405, 107, 142, 667, 141}, {71, 362, 93, 354, 405, 702, 107, 373, 404, 669}, {489, 424, 417, 485, 572, 464, 582, 495, 543, 544}, {417, 424, 489, 421, 464, 572, 582, 465, 452, 685}, {102, 10, 158, 94, 148, 182, 703, 144, 119, 540}, {158, 10, 102, 167, 182, 148, 703, 206, 214, 557}, {102, 158, 426, 94, 703, 677, 559, 144, 540, 688}, {426, 158, 102, 167, 677, 703, 559, 549, 206, 557}, {421, 489, 227, 424, 685, 570, 704, 452, 572, 571}, {52, 421, 227, 424, 451, 704, 255, 453, 452, 571}, {489, 227, 222, 224, 570, 263, 501, 705, 254, 265}, {489, 222, 227, 485, 501, 263, 570, 495, 515, 526}, {87, 425, 292, 490, 448, 621, 315, 497, 533, 499}, {292, 425, 87, 86, 621, 448, 315, 324, 457, 90}, {104, 420, 232, 223, 657, 706, 691, 648, 529, 271}, {104, 232, 420, 428, 691, 706, 657, 689, 642, 469}, {232, 420, 50, 223, 706, 438, 272, 271, 529, 237}, {232, 50, 420, 428, 272, 438, 706, 642, 470, 469}, {226, 484, 360, 230, 635, 607, 700, 245, 606, 605}, {226, 360, 484, 486, 700, 607, 635, 610, 701, 502}, {486, 360, 352, 355, 701, 399, 637, 658, 375, 397}, {352, 360, 486, 484, 399, 701, 637, 598, 607, 502}, {162, 488, 157, 159, 707, 645, 198, 189, 682, 200}, {157, 488, 162, 482, 645, 707, 198, 665, 536, 619}, {490, 57, 429, 231, 687, 708, 516, 547, 274, 640}, {429, 57, 490, 298, 708, 687, 516, 603, 339, 534}, {57, 1, 429, 231, 60, 481, 708, 274, 284, 640}, {429, 1, 57, 298, 481, 60, 708, 603, 348, 339}, {158, 98, 482, 94, 541, 693, 617, 540, 117, 672}, {482, 98, 158, 164, 693, 541, 617, 692, 558, 183}, {353, 297, 161, 289, 577, 709, 562, 578, 341, 586}, {353, 161, 297, 168, 562, 709, 577, 697, 212, 696}, {161, 297, 24, 289, 709, 344, 191, 586, 341, 312}, {161, 24, 297, 168, 191, 344, 709, 212, 217, 696}, {159, 293, 487, 163, 650, 601, 710, 174, 584, 602}, {487, 293, 159, 488, 601, 650, 710, 551, 683, 682}, {159, 487, 157, 163, 710, 644, 200, 174, 602, 201}, {157, 487, 159, 488, 644, 710, 200, 645, 551, 682}, {290, 228, 486, 294, 686, 612, 628, 307, 556, 609}, {290, 486, 228, 489, 628, 612, 686, 624, 503, 711}, {485, 99, 420, 422, 676, 712, 528, 576, 569, 446}, {420, 99, 485, 96, 712, 676, 528, 656, 127, 675}, {99, 80, 420, 422, 128, 445, 712, 569, 447, 446}, {420, 80, 99, 96, 445, 128, 712, 656, 126, 127}, {96, 484, 229, 100, 713, 574, 505, 124, 655, 506}, {92, 96, 484, 485, 140, 713, 531, 532, 675, 492}, {92, 484, 96, 100, 531, 713, 140, 139, 655, 124}, {161, 358, 483, 165, 563, 643, 714, 180, 555, 587}, {483, 358, 161, 487, 643, 563, 714, 550, 565, 564}, {161, 483, 157, 165, 714, 616, 202, 180, 587, 205}, {157, 483, 161, 487, 616, 714, 202, 644, 550, 564}, {362, 31, 160, 354, 408, 185, 715, 404, 377, 590}, {160, 31, 362, 169, 185, 408, 715, 210, 215, 671}, {362, 160, 93, 354, 715, 670, 702, 404, 590, 669}, {93, 160, 362, 169, 670, 715, 702, 568, 210, 671}, {482, 164, 157, 483, 692, 203, 665, 535, 654, 616}, {157, 164, 482, 158, 203, 692, 665, 199, 183, 617}, {228, 489, 222, 224, 711, 501, 266, 239, 705, 265}, {222, 489, 228, 486, 501, 711, 266, 504, 503, 612}, {288, 166, 427, 296, 680, 613, 716, 336, 604, 631}, {288, 427, 166, 488, 716, 613, 680, 684, 633, 690}, {85, 288, 427, 296, 300, 716, 471, 338, 336, 631}, {85, 427, 288, 488, 471, 716, 300, 632, 633, 684}, {484, 223, 96, 229, 575, 649, 713, 574, 248, 505}, {484, 96, 223, 485, 713, 649, 575, 492, 675, 525}, {488, 293, 287, 487, 683, 328, 661, 551, 601, 662}, {287, 293, 488, 288, 328, 683, 661, 329, 304, 684}, {419, 488, 162, 159, 634, 707, 717, 699, 682, 189}, {162, 419, 17, 423, 717, 444, 190, 561, 443, 442}, {17, 419, 162, 159, 444, 717, 190, 188, 699, 189}, {482, 98, 92, 94, 693, 135, 573, 672, 117, 136}, {92, 98, 482, 483, 135, 693, 573, 530, 694, 535}, {358, 487, 352, 353, 565, 639, 395, 369, 566, 393}, {352, 487, 358, 483, 639, 565, 395, 595, 550, 643}, {359, 483, 93, 97, 596, 668, 718, 653, 641, 105}, {359, 93, 483, 354, 718, 668, 596, 372, 669, 589}, {71, 359, 93, 97, 371, 718, 107, 106, 653, 105}, {71, 93, 359, 354, 107, 718, 371, 373, 669, 372}, {52, 490, 227, 421, 546, 719, 255, 451, 517, 704}, {227, 490, 52, 224, 719, 546, 255, 254, 545, 253}, {490, 489, 227, 421, 625, 570, 719, 517, 685, 704}, {227, 489, 490, 224, 570, 625, 719, 254, 705, 545}, {57, 490, 228, 224, 687, 720, 238, 240, 545, 239}, {228, 490, 57, 290, 720, 687, 238, 686, 498, 306}, {490, 489, 228, 224, 625, 711, 720, 545, 705, 239}, {228, 489, 490, 290, 711, 625, 720, 686, 624, 498}, {162, 419, 482, 488, 717, 721, 619, 707, 634, 536}, {482, 419, 162, 423, 721, 717, 619, 620, 443, 561}, {419, 417, 482, 488, 461, 627, 721, 634, 581, 536}, {482, 417, 419, 423, 627, 461, 721, 620, 460, 443}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 722
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {0.125, 1, 1}, {0.375, 1, 1}, {0.625, 1, 1}, {0.875, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {1, 1, 0.875}, {1, 1, 0.625}, {1, 1, 0.375}, {1, 1, 0.125}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0.875, 1, 0}, {0.625, 1, 0}, {0.375, 1, 0}, {0.125, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 1, 0.125}, {0, 1, 0.375}, {0, 1, 0.625}, {0, 1, 0.875}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0, 0, 0.125}, {0, 0, 0.375}, {0, 0, 0.625}, {0, 0, 0.875}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {0.125, 0, 1}, {0.375, 0, 1}, {0.625, 0, 1}, {0.875, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {1, 0, 0.875}, {1, 0, 0.625}, {1, 0, 0.375}, {1, 0, 0.125}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0.875, 0, 0}, {0.625, 0, 0}, {0.375, 0, 0}, {0.125, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.875, 0}, {0, 0.625, 0}, {0, 0.375, 0}, {0, 0.125, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {0, 0.875, 1}, {0, 0.625, 1}, {0, 0.375, 1}, {0, 0.125, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.875, 1}, {1, 0.625, 1}, {1, 0.375, 1}, {1, 0.125, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {1, 0.875, 0}, {1, 0.625, 0}, {1, 0.375, 0}, {1, 0.125, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.234692, 0.610874, 1}, {0.095431, 0.625135, 1}, {0.139261, 0.735739, 1}, {0.264261, 0.860739, 1}, {0.375, 0.904691, 1}, {0.389261, 0.76543, 1}, {0.860739, 0.735739, 1}, {0.904569, 0.625135, 1}, {0.765308, 0.610874, 1}, {0.264261, 0.139383, 1}, {0.389261, 0.234962, 1}, {0.375, 0.0955798, 1}, {0.610739, 0.76543, 1}, {0.625, 0.904691, 1}, {0.735739, 0.860739, 1}, {0.095431, 0.375135, 1}, {0.234692, 0.389518, 1}, {0.139261, 0.264383, 1}, {0.625, 0.0955798, 1}, {0.610739, 0.234962, 1}, {0.735739, 0.139383, 1}, {0.860739, 0.264383, 1}, {0.765308, 0.389518, 1}, {0.904569, 0.375135, 1}, {0.095431, 0.500135, 1}, {0.904569, 0.500135, 1}, {0.5, 0.904691, 1}, {0.5, 0.0955798, 1}, {0.389261, 0.611834, 1}, {0.345431, 0.501231, 1}, {0.5, 0.655786, 1}, {0.610739, 0.611834, 1}, {0.389261, 0.390478, 1}, {0.654569, 0.501231, 1}, {0.5, 0.346675, 1}, {0.610739, 0.390478, 1}, {0.0709532, 0.804047, 1}, {0.210214, 0.789786, 1}, {0.195953, 0.929047, 1}, {0.789786, 0.789786, 1}, {0.929047, 0.804047, 1}, {0.195953, 0.0709735, 1}, {0.210214, 0.210356, 1}, {0.804047, 0.929047, 1}, {0.0709532, 0.195973, 1}, {0.789786, 0.210356, 1}, {0.804047, 0.0709735, 1}, {0.929047, 0.195973, 1}, {0.0709532, 0.0709735, 1}, {0.0709532, 0.929047, 1}, {0.929047, 0.929047, 1}, {0.929047, 0.0709735, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.904569, 1, 0.625}, {0.765308, 1, 0.610739}, {0.860739, 1, 0.735739}, {0.625, 1, 0.095431}, {0.610739, 1, 0.234692}, {0.735739, 1, 0.139261}, {0.375, 1, 0.904569}, {0.389261, 1, 0.765308}, {0.264261, 1, 0.860739}, {0.095431, 1, 0.375}, {0.234692, 1, 0.389261}, {0.139261, 1, 0.264261}, {0.735739, 1, 0.860739}, {0.610739, 1, 0.765308}, {0.625, 1, 0.904569}, {0.139261, 1, 0.735739}, {0.234692, 1, 0.610739}, {0.095431, 1, 0.625}, {0.860739, 1, 0.264261}, {0.765308, 1, 0.389261}, {0.904569, 1, 0.375}, {0.264261, 1, 0.139261}, {0.389261, 1, 0.234692}, {0.375, 1, 0.095431}, {0.5, 1, 0.095431}, {0.904569, 1, 0.5}, {0.095431, 1, 0.5}, {0.5, 1, 0.904569}, {0.654569, 1, 0.5}, {0.610739, 1, 0.610739}, {0.610739, 1, 0.389261}, {0.5, 1, 0.345431}, {0.389261, 1, 0.389261}, {0.5, 1, 0.654569}, {0.389261, 1, 0.610739}, {0.345431, 1, 0.5}, {0.789786, 1, 0.789786}, {0.929047, 1, 0.804047}, {0.789786, 1, 0.210214}, {0.804047, 1, 0.0709532}, {0.210214, 1, 0.789786}, {0.195953, 1, 0.929047}, {0.210214, 1, 0.210214}, {0.0709532, 1, 0.195953}, {0.804047, 1, 0.929047}, {0.0709532, 1, 0.804047}, {0.929047, 1, 0.195953}, {0.195953, 1, 0.0709532}, {0.0709532, 1, 0.0709532}, {0.929047, 1, 0.0709532}, {0.0709532, 1, 0.929047}, {0.929047, 1, 0.929047}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.904691, 0, 0.625}, {0.76543, 0, 0.610739}, {0.860739, 0, 0.735739}, {0.625135, 0, 0.095431}, {0.610874, 0, 0.234692}, {0.735739, 0, 0.139261}, {0.375135, 0, 0.904569}, {0.389518, 0, 0.765308}, {0.264383, 0, 0.860739}, {0.0955798, 0, 0.375}, {0.234962, 0, 0.389261}, {0.139383, 0, 0.264261}, {0.735739, 0, 0.860739}, {0.610874, 0, 0.765308}, {0.625135, 0, 0.904569}, {0.139383, 0, 0.735739}, {0.234962, 0, 0.610739}, {0.0955798, 0, 0.625}, {0.860739, 0, 0.264261}, {0.76543, 0, 0.389261}, {0.904691, 0, 0.375}, {0.264383, 0, 0.139261}, {0.389518, 0, 0.234692}, {0.375135, 0, 0.095431}, {0.500135, 0, 0.095431}, {0.904691, 0, 0.5}, {0.0955798, 0, 0.5}, {0.500135, 0, 0.904569}, {0.655786, 0, 0.5}, {0.611834, 0, 0.610739}, {0.611834, 0, 0.389261}, {0.501231, 0, 0.345431}, {0.390478, 0, 0.389261}, {0.501231, 0, 0.654569}, {0.390478, 0, 0.610739}, {0.346675, 0, 0.5}, {0.789786, 0, 0.789786}, {0.929047, 0, 0.804047}, {0.789786, 0, 0.210214}, {0.804047, 0, 0.0709532}, {0.210356, 0, 0.789786}, {0.195973, 0, 0.929047}, {0.210356, 0, 0.210214}, {0.0709735, 0, 0.195953}, {0.804047, 0, 0.929047}, {0.0709735, 0, 0.804047}, {0.929047, 0, 0.195953}, {0.195973, 0, 0.0709532}, {0.0709735, 0, 0.0709532}, {0.929047, 0, 0.0709532}, {0.0709735, 0, 0.929047}, {0.929047, 0, 0.929047}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0.860739, 0.735739, 0}, {0.765308, 0.610739, 0}, {0.904569, 0.625, 0}, {0.625, 0.904569, 0}, {0.610739, 0.765308, 0}, {0.735739, 0.860739, 0}, {0.735739, 0.139261, 0}, {0.610739, 0.234692, 0}, {0.625, 0.095431, 0}, {0.095431, 0.625, 0}, {0.234692, 0.610739, 0}, {0.139261, 0.735739, 0}, {0.264261, 0.860739, 0}, {0.389261, 0.765308, 0}, {0.375, 0.904569, 0}, {0.904569, 0.375, 0}, {0.765308, 0.389261, 0}, {0.860739, 0.264261, 0}, {0.139261, 0.264261, 0}, {0.234692, 0.389261, 0}, {0.095431, 0.375, 0}, {0.375, 0.095431, 0}, {0.389261, 0.234692, 0}, {0.264261, 0.139261, 0}, {0.904569, 0.5, 0}, {0.5, 0.904569, 0}, {0.5, 0.095431, 0}, {0.095431, 0.5, 0}, {0.5, 0.654569, 0}, {0.610739, 0.610739, 0}, {0.654569, 0.5, 0}, {0.389261, 0.610739, 0}, {0.610739, 0.389261, 0}, {0.345431, 0.5, 0}, {0.5, 0.345431, 0}, {0.389261, 0.389261, 0}, {0.789786, 0.789786, 0}, {0.804047, 0.929047, 0}, {0.929047, 0.804047, 0}, {0.804047, 0.0709532, 0}, {0.789786, 0.210214, 0}, {0.210214, 0.789786, 0}, {0.0709532, 0.804047, 0}, {0.929047, 0.195953, 0}, {0.195953, 0.929047, 0}, {0.210214, 0.210214, 0}, {0.195953, 0.0709532, 0}, {0.0709532, 0.195953, 0}, {0.929047, 0.0709532, 0}, {0.0709532, 0.929047, 0}, {0.929047, 0.929047, 0}, {0.0709532, 0.0709532, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {0, 0.735739, 0.139261}, {0, 0.610739, 0.234692}, {0, 0.625, 0.095431}, {0, 0.904569, 0.375}, {0, 0.765308, 0.389261}, {0, 0.860739, 0.264261}, {0, 0.625, 0.904569}, {0, 0.610739, 0.765308}, {0, 0.735739, 0.860739}, {0, 0.139261, 0.264261}, {0, 0.234692, 0.389261}, {0, 0.095431, 0.375}, {0, 0.860739, 0.735739}, {0, 0.765308, 0.610739}, {0, 0.904569, 0.625}, {0, 0.375, 0.095431}, {0, 0.389261, 0.234692}, {0, 0.264261, 0.139261}, {0, 0.095431, 0.625}, {0, 0.234692, 0.610739}, {0, 0.139261, 0.735739}, {0, 0.264261, 0.860739}, {0, 0.389261, 0.765308}, {0, 0.375, 0.904569}, {0, 0.5, 0.095431}, {0, 0.5, 0.904569}, {0, 0.904569, 0.5}, {0, 0.095431, 0.5}, {0, 0.610739, 0.389261}, {0, 0.5, 0.345431}, {0, 0.654569, 0.5}, {0, 0.610739, 0.610739}, {0, 0.389261, 0.389261}, {0, 0.5, 0.654569}, {0, 0.345431, 0.5}, {0, 0.389261, 0.610739}, {0, 0.804047, 0.0709532}, {0, 0.789786, 0.210214}, {0, 0.929047, 0.195953}, {0, 0.789786, 0.789786}, {0, 0.804047, 0.929047}, {0, 0.0709532, 0.195953}, {0, 0.210214, 0.210214}, {0, 0.929047, 0.804047}, {0, 0.195953, 0.0709532}, {0, 0.210214, 0.789786}, {0, 0.0709532, 0.804047}, {0, 0.195953, 0.929047}, {0, 0.0709532, 0.0709532}, {0, 0.929047, 0.0709532}, {0, 0.929047, 0.929047}, {0, 0.0709532, 0.929047}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {1, 0.860678, 0.735678}, {1, 0.76518, 0.610611}, {1, 0.904501, 0.624932}, {1, 0.624932, 0.904501}, {1, 0.610611, 0.76518}, {1, 0.735678, 0.860678}, {1, 0.0953701, 0.624939}, {1, 0.234631, 0.610678}, {1, 0.139261, 0.735739}, {1, 0.735739, 0.139261}, {1, 0.610678, 0.234631}, {1, 0.624939, 0.0953701}, {1, 0.904501, 0.374932}, {1, 0.76524, 0.389193}, {1, 0.860739, 0.264261}, {1, 0.264261, 0.860739}, {1, 0.389193, 0.76524}, {1, 0.374932, 0.904501}, {1, 0.374939, 0.0953701}, {1, 0.3892, 0.234631}, {1, 0.264261, 0.139261}, {1, 0.139261, 0.264261}, {1, 0.234631, 0.3892}, {1, 0.0953701, 0.374939}, {1, 0.904501, 0.499932}, {1, 0.499932, 0.904501}, {1, 0.0953701, 0.499939}, {1, 0.499939, 0.0953701}, {1, 0.610131, 0.610131}, {1, 0.499385, 0.653954}, {1, 0.653954, 0.499385}, {1, 0.610191, 0.388713}, {1, 0.388713, 0.610191}, {1, 0.499391, 0.344822}, {1, 0.344822, 0.499391}, {1, 0.388713, 0.388713}, {1, 0.929037, 0.804037}, {1, 0.789715, 0.789715}, {1, 0.804037, 0.929037}, {1, 0.210214, 0.789786}, {1, 0.0709532, 0.804047}, {1, 0.804047, 0.0709532}, {1, 0.789786, 0.210214}, {1, 0.195953, 0.929047}, {1, 0.929047, 0.195953}, {1, 0.0709532, 0.195953}, {1, 0.210214, 0.210214}, {1, 0.195953, 0.0709532}, {1, 0.0709532, 0.929047}, {1, 0.929047, 0.0709532}, {1, 0.929037, 0.929037}, {1, 0.0709532, 0.0709532}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}, {0.403787, 0.502163, 0.604301}, {0.59395, 0.335588, 0.588613}, {0.57425, 0.502163, 0.604301}, {0.533055, 0.519268, 0.479373}, {0.723218, 0.352693, 0.463685}, {0.552756, 0.352693, 0.463685}, {0.907719, 0.227933, 0.0932632}, {0.768458, 0.242194, 0.0932632}, {0.812288, 0.352933, 0.0932632}, {0.462839, 0.167794, 0.544306}, {0.592107, 0.184899, 0.419378}, {0.423487, 0.335588, 0.41815}, {0.552756, 0.352693, 0.293222}, {0.462839, 0.167794, 0.373844}, {0.610874, 0.139383, 0.904569}, {0.500135, 0.0955798, 0.904569}, {0.141927, 0.0709532, 0.0709532}, {0.0709735, 0.0709532, 0.141906}, {0.0709532, 0.141906, 0.0709532}, {0.307175, 0.417794, 0.123844}, {0.351005, 0.307055, 0.123844}, {0.095431, 0.5, 0.095431}, {0.139261, 0.389261, 0.095431}, {0.211744, 0.417794, 0.219275}, {0.633302, 0.167794, 0.544306}, {0.907719, 0.173886, 0.164216}, {0.907719, 0.242194, 0.232524}, {0.0709532, 0.210234, 0.860739}, {0.141927, 0.0709735, 0.929047}, {0.0709735, 0.139261, 0.789786}, {0.0709735, 0.0709532, 0.858094}, {0.0709532, 0.141927, 0.929047}, {0.210336, 0.0709735, 0.860739}, {0.139383, 0.139261, 0.721478}, {0.742945, 0.167794, 0.655045}, {0.786897, 0.167794, 0.544306}, {0.904691, 0.139261, 0.610739}, {0.882206, 0.307055, 0.655045}, {0.860739, 0.139261, 0.721478}, {0.442043, 0.585464, 0.809994}, {0.461744, 0.418889, 0.794306}, {0.632206, 0.418889, 0.794306}, {0.907719, 0.352872, 0.188633}, {0.836765, 0.173886, 0.0932632}, {0.549357, 0.674254, 0.636624}, {0.73952, 0.678141, 0.450474}, {0.57425, 0.672625, 0.433838}, {0.723218, 0.523156, 0.293222}, {0.698326, 0.524784, 0.496008}, {0.721478, 0.860739, 0.860739}, {0.610739, 0.904691, 0.860739}, {0.0709735, 0.139261, 0.210214}, {0.882206, 0.263164, 0.544245}, {0.882206, 0.417246, 0.543759}, {0.768458, 0.102933, 0.232524}, {0.907719, 0.102933, 0.218263}, {0.836765, 0.102933, 0.164216}, {0.73952, 0.507679, 0.620936}, {0.929047, 0.929037, 0.858083}, {0.403787, 0.672625, 0.433838}, {0.59395, 0.676512, 0.247688}, {0.552756, 0.523156, 0.293222}, {0.307175, 0.417929, 0.794306}, {0.351005, 0.307176, 0.794306}, {0.095431, 0.904569, 0.5}, {0.500135, 0.095431, 0.095431}, {0.858094, 0.929047, 0.929047}, {0.5, 0.904691, 0.904569}, {0.929047, 0.858083, 0.929037}, {0.423487, 0.50605, 0.41815}, {0.904569, 0.904501, 0.499932}, {0.139261, 0.860739, 0.278522}, {0.139261, 0.904569, 0.389261}, {0.351005, 0.838256, 0.263105}, {0.211744, 0.742825, 0.373844}, {0.211744, 0.698995, 0.263105}, {0.141906, 0.929047, 0.929047}, {0.210214, 0.860739, 0.929047}, {0.904569, 0.500068, 0.904501}, {0.745703, 0.184899, 0.419378}, {0.904691, 0.0953701, 0.499939}, {0.841012, 0.280269, 0.419318}, {0.607314, 0.59098, 0.82663}, {0.461879, 0.167794, 0.698875}, {0.572483, 0.167794, 0.655045}, {0.882206, 0.417726, 0.698808}, {0.0709532, 0.789786, 0.139261}, {0.139261, 0.721478, 0.139261}, {0.882206, 0.588195, 0.219214}, {0.841012, 0.434839, 0.264749}, {0.882206, 0.587709, 0.373296}, {0.841012, 0.434352, 0.418831}, {0.389261, 0.904569, 0.139261}, {0.5, 0.904569, 0.095431}, {0.389383, 0.095431, 0.139261}, {0.278522, 0.860739, 0.139261}, {0.287474, 0.834369, 0.559994}, {0.331304, 0.834369, 0.670734}, {0.192043, 0.695108, 0.670734}, {0.139261, 0.860739, 0.721478}, {0.095431, 0.860739, 0.610739}, {0.139261, 0.278644, 0.860739}, {0.278644, 0.139383, 0.860739}, {0.139261, 0.389383, 0.904569}, {0.192043, 0.584369, 0.559994}, {0.192043, 0.584369, 0.714563}, {0.211744, 0.417794, 0.698875}, {0.211744, 0.417794, 0.544306}, {0.0955798, 0.139261, 0.610739}, {0.351005, 0.698995, 0.123844}, {0.461744, 0.742825, 0.123844}, {0.461744, 0.838256, 0.219275}, {0.929047, 0.141906, 0.0709532}, {0.858094, 0.929047, 0.0709532}, {0.0955798, 0.095431, 0.5}, {0.307323, 0.167794, 0.544306}, {0.211744, 0.263225, 0.544306}, {0.211744, 0.307055, 0.655045}, {0.461744, 0.263225, 0.123844}, {0.351126, 0.167794, 0.263105}, {0.278644, 0.139261, 0.139261}, {0.461879, 0.167794, 0.219275}, {0.929047, 0.929047, 0.141906}, {0.860739, 0.860678, 0.721417}, {0.904569, 0.860678, 0.610678}, {0.442043, 0.834369, 0.559994}, {0.718053, 0.839885, 0.687369}, {0.857314, 0.700563, 0.687308}, {0.761883, 0.839885, 0.57663}, {0.857314, 0.744386, 0.576562}, {0.904569, 0.499939, 0.0953701}, {0.786775, 0.588256, 0.123844}, {0.745581, 0.434899, 0.169378}, {0.701751, 0.32416, 0.169378}, {0.748731, 0.287832, 0.262642}, {0.857314, 0.589817, 0.731131}, {0.857314, 0.589337, 0.576082}, {0.572483, 0.307055, 0.123844}, {0.461744, 0.417794, 0.123844}, {0.591012, 0.434899, 0.169378}, {0.929047, 0.858094, 0.0709532}, {0.882206, 0.713256, 0.123844}, {0.882206, 0.767303, 0.194797}, {0.882206, 0.698995, 0.263105}, {0.351126, 0.167794, 0.433567}, {0.351126, 0.167794, 0.655045}, {0.211744, 0.417794, 0.373844}, {0.423487, 0.50605, 0.247688}, {0.211744, 0.588256, 0.373844}, {0.929047, 0.0709532, 0.141906}, {0.287474, 0.584504, 0.809994}, {0.929047, 0.0709532, 0.858094}, {0.192043, 0.738938, 0.559994}, {0.461744, 0.838256, 0.373844}, {0.632206, 0.838256, 0.373844}, {0.139261, 0.210214, 0.0709532}, {0.210234, 0.139261, 0.0709532}, {0.789786, 0.0709735, 0.860739}, {0.721478, 0.139383, 0.860739}, {0.610739, 0.904569, 0.139261}, {0.721478, 0.860739, 0.139261}, {0.0709532, 0.929047, 0.141906}, {0.095431, 0.500135, 0.904569}, {0.442043, 0.834369, 0.714563}, {0.461744, 0.263374, 0.794306}, {0.860739, 0.278644, 0.860739}, {0.929047, 0.210234, 0.860739}, {0.211744, 0.307055, 0.263105}, {0.139261, 0.610739, 0.095431}, {0.211744, 0.588256, 0.219275}, {0.632206, 0.588256, 0.123844}, {0.461744, 0.588256, 0.123844}, {0.139383, 0.139261, 0.278522}, {0.139261, 0.278522, 0.139261}, {0.607314, 0.839885, 0.57663}, {0.904569, 0.610813, 0.860678}, {0.0709532, 0.858094, 0.929047}, {0.331304, 0.695108, 0.809994}, {0.139261, 0.721478, 0.860739}, {0.278522, 0.860739, 0.860739}, {0.0709532, 0.929047, 0.858094}, {0.718053, 0.700624, 0.82663}, {0.860739, 0.721417, 0.860678}, {0.761883, 0.59002, 0.82663}, {0.742945, 0.307176, 0.794306}, {0.786775, 0.417929, 0.794306}, {0.860739, 0.929037, 0.789776}, {0.389261, 0.904691, 0.860739}, {0.307175, 0.588256, 0.123844}, {0.789786, 0.860739, 0.0709532}, {0.0709532, 0.858094, 0.0709532}, {0.742945, 0.838256, 0.263105}, {0.632206, 0.742825, 0.123844}, {0.742945, 0.698995, 0.123844}, {0.841012, 0.32416, 0.308639}, {0.610874, 0.139261, 0.095431}, {0.782719, 0.102933, 0.0932632}, {0.860739, 0.789776, 0.929037}, {0.929047, 0.141927, 0.929047}, {0.811253, 0.838256, 0.194797}, {0.858094, 0.0709735, 0.929047}, {0.607314, 0.839885, 0.731199}, {0.607314, 0.744576, 0.82663}, {0.442043, 0.73906, 0.809994}, {0.389383, 0.0955798, 0.860739}, {0.141906, 0.929047, 0.0709532}, {0.0709532, 0.860739, 0.210214}, {0.929047, 0.860739, 0.210214}, {0.860739, 0.860739, 0.278522}, {0.139383, 0.095431, 0.389261}, {0.211744, 0.263225, 0.373844}, {0.139261, 0.789786, 0.929047}, {0.789786, 0.929047, 0.860739}, {0.904691, 0.139261, 0.389261}, {0.701751, 0.184899, 0.308639}, {0.929047, 0.139261, 0.789786}, {0.786775, 0.838256, 0.373844}, {0.875, 0.0709532, 0.0709532}, {0.210214, 0.929047, 0.139261}, {0.572483, 0.838256, 0.263105}, {0.591147, 0.184899, 0.264809}, {0.904569, 0.389396, 0.860739}, {0.572483, 0.307176, 0.794306}, {0.331304, 0.834369, 0.449255}, {0.139261, 0.929047, 0.789786}, {0.860739, 0.789786, 0.0709532}, {0.904569, 0.860739, 0.389261}, {0.139261, 0.610739, 0.904569}, {0.812409, 0.102933, 0.343263}, {0.657854, 0.102933, 0.188694}, {0.857314, 0.700624, 0.465891}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 48
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{6, 8, 11}, {8, 9, 12}, {9, 10, 13}, {10, 7, 14}, {7, 15, 18}, {15, 16, 19}, {16, 17, 20}, {17, 3, 21}, {3, 22, 25}, {22, 23, 26}, {23, 24, 27}, {24, 2, 28}, {2, 29, 32}, {29, 30, 33}, {30, 31, 34}, {31, 6, 35}, {0, 36, 39}, {36, 37, 40}, {37, 38, 41}, {38, 4, 42}, {4, 43, 46}, {43, 44, 47}, {44, 45, 48}, {45, 5, 49}, {5, 50, 53}, {50, 51, 54}, {51, 52, 55}, {52, 1, 56}, {1, 57, 60}, {57, 58, 61}, {58, 59, 62}, {59, 0, 63}, {2, 64, 67}, {64, 65, 68}, {65, 66, 69}, {66, 0, 70}, {6, 71, 74}, {71, 72, 75}, {72, 73, 76}, {73, 4, 77}, {7, 78, 81}, {78, 79, 82}, {79, 80, 83}, {80, 5, 84}, {3, 85, 88}, {85, 86, 89}, {86, 87, 90}, {87, 1, 91}}
]
+ ]
(not_ghost:_triangle_6) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 240
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{93, 97, 71, 105, 106, 107}, {93, 8, 98, 108, 109, 110}, {94, 78, 99, 111, 112, 113}, {43, 95, 100, 114, 115, 116}, {94, 98, 10, 117, 118, 119}, {73, 97, 95, 120, 121, 122}, {45, 100, 96, 123, 124, 125}, {80, 96, 99, 126, 127, 128}, {71, 97, 72, 106, 129, 75}, {78, 79, 99, 82, 130, 112}, {8, 9, 98, 12, 131, 109}, {43, 100, 44, 116, 132, 47}, {72, 97, 73, 129, 120, 76}, {9, 10, 98, 13, 118, 131}, {79, 80, 99, 83, 128, 130}, {44, 100, 45, 132, 123, 48}, {93, 92, 97, 133, 134, 105}, {93, 98, 92, 110, 135, 133}, {94, 92, 98, 136, 135, 117}, {92, 95, 97, 137, 121, 134}, {94, 99, 92, 113, 138, 136}, {92, 100, 95, 139, 115, 137}, {92, 99, 96, 138, 127, 140}, {92, 96, 100, 140, 124, 139}, {93, 71, 101, 107, 141, 142}, {93, 101, 8, 142, 143, 108}, {94, 102, 78, 144, 145, 111}, {43, 103, 95, 146, 147, 114}, {94, 10, 102, 119, 148, 144}, {73, 95, 103, 122, 147, 149}, {45, 96, 104, 125, 150, 151}, {80, 104, 96, 152, 150, 126}, {4, 73, 103, 77, 149, 153}, {6, 101, 71, 154, 141, 74}, {7, 102, 10, 155, 148, 14}, {7, 78, 102, 81, 145, 155}, {6, 8, 101, 11, 143, 154}, {5, 104, 80, 156, 152, 84}, {4, 103, 43, 153, 146, 46}, {5, 45, 104, 49, 151, 156}, {15, 162, 158, 170, 171, 172}, {22, 163, 159, 173, 174, 175}, {8, 164, 160, 176, 177, 178}, {29, 165, 161, 179, 180, 181}, {10, 158, 164, 182, 183, 184}, {31, 160, 165, 185, 186, 187}, {17, 159, 162, 188, 189, 190}, {24, 161, 163, 191, 192, 193}, {22, 23, 163, 26, 194, 173}, {15, 16, 162, 19, 195, 170}, {29, 30, 165, 33, 196, 179}, {8, 9, 164, 12, 197, 176}, {16, 17, 162, 20, 190, 195}, {23, 24, 163, 27, 193, 194}, {9, 10, 164, 13, 184, 197}, {30, 31, 165, 34, 187, 196}, {158, 162, 157, 171, 198, 199}, {159, 157, 162, 200, 198, 189}, {159, 163, 157, 174, 201, 200}, {161, 157, 163, 202, 201, 192}, {158, 157, 164, 199, 203, 183}, {160, 164, 157, 177, 203, 204}, {160, 157, 165, 204, 205, 186}, {161, 165, 157, 180, 205, 202}, {15, 158, 167, 172, 206, 207}, {22, 159, 166, 175, 208, 209}, {8, 160, 169, 178, 210, 211}, {29, 161, 168, 181, 212, 213}, {10, 167, 158, 214, 206, 182}, {31, 169, 160, 215, 210, 185}, {17, 166, 159, 216, 208, 188}, {24, 168, 161, 217, 212, 191}, {2, 168, 24, 218, 217, 28}, {3, 166, 17, 219, 216, 21}, {6, 169, 31, 220, 215, 35}, {7, 167, 10, 221, 214, 14}, {7, 15, 167, 18, 207, 221}, {3, 22, 166, 25, 209, 219}, {6, 8, 169, 11, 211, 220}, {2, 29, 168, 32, 213, 218}, {50, 227, 223, 235, 236, 237}, {57, 228, 224, 238, 239, 240}, {43, 229, 225, 241, 242, 243}, {36, 230, 226, 244, 245, 246}, {45, 223, 229, 247, 248, 249}, {38, 225, 230, 250, 251, 252}, {52, 224, 227, 253, 254, 255}, {59, 226, 228, 256, 257, 258}, {57, 58, 228, 61, 259, 238}, {50, 51, 227, 54, 260, 235}, {36, 37, 230, 40, 261, 244}, {43, 44, 229, 47, 262, 241}, {51, 52, 227, 55, 255, 260}, {58, 59, 228, 62, 258, 259}, {44, 45, 229, 48, 249, 262}, {37, 38, 230, 41, 252, 261}, {223, 227, 222, 236, 263, 264}, {224, 222, 227, 265, 263, 254}, {224, 228, 222, 239, 266, 265}, {222, 228, 226, 266, 257, 267}, {223, 222, 229, 264, 268, 248}, {222, 225, 229, 269, 242, 268}, {222, 230, 225, 270, 251, 269}, {222, 226, 230, 267, 245, 270}, {50, 223, 232, 237, 271, 272}, {57, 224, 231, 240, 273, 274}, {43, 225, 234, 243, 275, 276}, {36, 226, 233, 246, 277, 278}, {45, 232, 223, 279, 271, 247}, {38, 234, 225, 280, 275, 250}, {52, 231, 224, 281, 273, 253}, {59, 233, 226, 282, 277, 256}, {0, 233, 59, 283, 282, 63}, {1, 231, 52, 284, 281, 56}, {4, 234, 38, 285, 280, 42}, {5, 232, 45, 286, 279, 49}, {5, 50, 232, 53, 272, 286}, {1, 57, 231, 60, 274, 284}, {4, 43, 234, 46, 276, 285}, {0, 36, 233, 39, 278, 283}, {85, 288, 292, 300, 301, 302}, {22, 293, 288, 303, 304, 305}, {57, 290, 294, 306, 307, 308}, {64, 295, 289, 309, 310, 311}, {24, 289, 293, 312, 313, 314}, {87, 292, 290, 315, 316, 317}, {66, 291, 295, 318, 319, 320}, {59, 294, 291, 321, 322, 323}, {85, 292, 86, 302, 324, 89}, {22, 23, 293, 26, 325, 303}, {57, 294, 58, 308, 326, 61}, {64, 65, 295, 68, 327, 309}, {86, 292, 87, 324, 315, 90}, {23, 24, 293, 27, 314, 325}, {65, 66, 295, 69, 320, 327}, {58, 294, 59, 326, 321, 62}, {288, 293, 287, 304, 328, 329}, {288, 287, 292, 329, 330, 301}, {289, 287, 293, 331, 328, 313}, {290, 292, 287, 316, 330, 332}, {289, 295, 287, 310, 333, 331}, {290, 287, 294, 332, 334, 307}, {291, 294, 287, 322, 334, 335}, {291, 287, 295, 335, 333, 319}, {22, 288, 296, 305, 336, 337}, {85, 296, 288, 338, 336, 300}, {57, 298, 290, 339, 340, 306}, {64, 289, 297, 311, 341, 342}, {87, 290, 298, 317, 340, 343}, {24, 297, 289, 344, 341, 312}, {59, 291, 299, 323, 345, 346}, {66, 299, 291, 347, 345, 318}, {1, 87, 298, 91, 343, 348}, {2, 297, 24, 349, 344, 28}, {3, 296, 85, 350, 338, 88}, {3, 22, 296, 25, 337, 350}, {1, 298, 57, 348, 339, 60}, {2, 64, 297, 67, 342, 349}, {0, 59, 299, 63, 346, 351}, {0, 299, 66, 351, 347, 70}, {64, 353, 357, 365, 366, 367}, {29, 358, 353, 368, 369, 370}, {71, 359, 354, 371, 372, 373}, {36, 355, 360, 374, 375, 376}, {31, 354, 358, 377, 378, 379}, {66, 357, 355, 380, 381, 382}, {38, 360, 356, 383, 384, 385}, {73, 356, 359, 386, 387, 388}, {64, 357, 65, 367, 389, 68}, {71, 72, 359, 75, 390, 371}, {29, 30, 358, 33, 391, 368}, {36, 360, 37, 376, 392, 40}, {65, 357, 66, 389, 380, 69}, {30, 31, 358, 34, 379, 391}, {72, 73, 359, 76, 388, 390}, {37, 360, 38, 392, 383, 41}, {353, 352, 357, 393, 394, 366}, {353, 358, 352, 369, 395, 393}, {354, 352, 358, 396, 395, 378}, {355, 357, 352, 381, 394, 397}, {354, 359, 352, 372, 398, 396}, {355, 352, 360, 397, 399, 375}, {356, 352, 359, 400, 398, 387}, {356, 360, 352, 384, 399, 400}, {64, 361, 353, 401, 402, 365}, {29, 353, 361, 370, 402, 403}, {71, 354, 362, 373, 404, 405}, {36, 363, 355, 406, 407, 374}, {31, 362, 354, 408, 404, 377}, {66, 355, 363, 382, 407, 409}, {38, 356, 364, 385, 410, 411}, {73, 364, 356, 412, 410, 386}, {0, 66, 363, 70, 409, 413}, {2, 361, 64, 414, 401, 67}, {6, 362, 31, 415, 408, 35}, {6, 71, 362, 74, 405, 415}, {2, 29, 361, 32, 403, 414}, {4, 364, 73, 416, 412, 77}, {0, 363, 36, 413, 406, 39}, {4, 38, 364, 42, 411, 416}, {15, 418, 423, 430, 431, 432}, {78, 422, 418, 433, 434, 435}, {50, 424, 420, 436, 437, 438}, {85, 419, 425, 439, 440, 441}, {17, 423, 419, 442, 443, 444}, {80, 420, 422, 445, 446, 447}, {87, 425, 421, 448, 449, 450}, {52, 421, 424, 451, 452, 453}, {15, 423, 16, 432, 454, 19}, {78, 79, 422, 82, 455, 433}, {50, 51, 424, 54, 456, 436}, {85, 425, 86, 441, 457, 89}, {79, 80, 422, 83, 447, 455}, {16, 423, 17, 454, 442, 20}, {86, 425, 87, 457, 448, 90}, {51, 52, 424, 55, 453, 456}, {417, 418, 422, 458, 434, 459}, {417, 423, 418, 460, 431, 458}, {419, 423, 417, 443, 460, 461}, {420, 417, 422, 462, 459, 446}, {419, 417, 425, 461, 463, 440}, {420, 424, 417, 437, 464, 462}, {421, 417, 424, 465, 464, 452}, {421, 425, 417, 449, 463, 465}, {15, 426, 418, 466, 467, 430}, {78, 418, 426, 435, 467, 468}, {50, 420, 428, 438, 469, 470}, {85, 427, 419, 471, 472, 439}, {80, 428, 420, 473, 469, 445}, {17, 419, 427, 444, 472, 474}, {52, 429, 421, 475, 476, 451}, {87, 421, 429, 450, 476, 477}, {5, 428, 80, 478, 473, 84}, {3, 17, 427, 21, 474, 479}, {7, 78, 426, 81, 468, 480}, {7, 426, 15, 480, 466, 18}, {5, 50, 428, 53, 470, 478}, {3, 427, 85, 479, 471, 88}, {1, 429, 52, 481, 475, 56}, {1, 87, 429, 91, 477, 481}}
]
+ ]
(not_ghost:_tetrahedron_10) [
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_10
+ size : 341
+ nb_component : 10
+ allocated size : 2000
+ memory size : 78kB
+ values : {{484, 483, 485, 489, 491, 493, 492, 496, 494, 495}, {87, 290, 490, 292, 317, 498, 497, 315, 316, 499}, {222, 484, 489, 486, 500, 496, 501, 504, 502, 503}, {96, 229, 45, 100, 505, 249, 125, 124, 506, 123}, {59, 0, 233, 299, 63, 283, 282, 346, 351, 507}, {0, 363, 233, 299, 413, 508, 283, 351, 509, 507}, {486, 295, 291, 357, 510, 319, 511, 514, 512, 513}, {484, 222, 489, 485, 500, 501, 496, 492, 515, 495}, {87, 429, 421, 490, 477, 476, 450, 497, 516, 517}, {103, 356, 234, 364, 518, 520, 519, 522, 410, 521}, {356, 103, 234, 225, 518, 519, 520, 524, 523, 275}, {43, 103, 225, 234, 146, 523, 243, 276, 519, 275}, {223, 227, 485, 420, 236, 526, 525, 529, 527, 528}, {483, 92, 484, 485, 530, 531, 491, 493, 532, 492}, {87, 421, 425, 490, 450, 449, 448, 497, 517, 533}, {298, 87, 290, 490, 343, 317, 340, 534, 497, 498}, {482, 483, 488, 489, 535, 537, 536, 539, 494, 538}, {94, 10, 158, 98, 119, 182, 540, 117, 118, 541}, {355, 363, 233, 36, 407, 508, 542, 374, 406, 278}, {485, 420, 424, 417, 528, 437, 543, 544, 462, 464}, {231, 224, 52, 490, 273, 253, 281, 547, 545, 546}, {483, 482, 485, 489, 535, 548, 493, 494, 539, 495}, {167, 15, 7, 426, 207, 18, 221, 549, 466, 480}, {483, 487, 488, 489, 550, 551, 537, 494, 552, 538}, {484, 92, 97, 95, 531, 134, 553, 554, 137, 121}, {29, 165, 30, 358, 179, 196, 33, 368, 555, 391}, {228, 294, 58, 59, 556, 326, 259, 258, 321, 62}, {102, 10, 7, 167, 148, 14, 155, 557, 214, 221}, {9, 10, 98, 164, 13, 118, 131, 197, 184, 558}, {78, 102, 7, 426, 145, 155, 81, 468, 559, 480}, {483, 484, 487, 489, 491, 560, 550, 494, 496, 552}, {16, 423, 162, 17, 454, 561, 195, 20, 442, 190}, {353, 161, 358, 487, 562, 563, 369, 566, 564, 565}, {93, 101, 8, 169, 142, 143, 108, 568, 567, 211}, {78, 422, 79, 99, 433, 455, 82, 112, 569, 130}, {485, 227, 489, 424, 526, 570, 495, 543, 571, 572}, {482, 92, 483, 485, 573, 530, 535, 548, 532, 493}, {223, 222, 229, 484, 264, 268, 248, 575, 500, 574}, {422, 420, 485, 417, 446, 528, 576, 459, 462, 544}, {64, 297, 353, 289, 342, 577, 365, 311, 341, 578}, {101, 6, 8, 169, 154, 11, 143, 567, 220, 211}, {425, 488, 489, 417, 579, 538, 580, 463, 581, 582}, {163, 161, 24, 293, 192, 191, 193, 584, 583, 314}, {228, 294, 59, 226, 556, 321, 258, 257, 585, 256}, {161, 289, 24, 293, 586, 312, 191, 583, 313, 314}, {165, 483, 160, 354, 587, 588, 186, 591, 589, 590}, {103, 356, 95, 225, 518, 592, 147, 523, 524, 593}, {356, 95, 359, 73, 592, 594, 387, 386, 122, 388}, {352, 483, 359, 484, 595, 596, 398, 598, 491, 597}, {103, 43, 4, 234, 146, 46, 153, 519, 276, 285}, {230, 356, 38, 225, 599, 385, 252, 251, 524, 250}, {161, 289, 293, 487, 586, 313, 583, 564, 600, 601}, {161, 487, 293, 163, 564, 601, 583, 192, 602, 584}, {429, 87, 298, 490, 477, 343, 603, 516, 497, 534}, {364, 38, 234, 4, 411, 280, 521, 416, 42, 285}, {22, 296, 3, 166, 337, 350, 25, 209, 604, 219}, {230, 37, 360, 36, 261, 392, 605, 244, 40, 376}, {356, 230, 360, 484, 599, 605, 384, 608, 606, 607}, {22, 23, 293, 163, 26, 325, 303, 173, 194, 584}, {294, 486, 291, 226, 609, 511, 322, 585, 610, 611}, {294, 228, 486, 226, 556, 612, 609, 585, 257, 610}, {3, 17, 166, 427, 21, 216, 219, 479, 474, 613}, {364, 103, 4, 234, 522, 153, 416, 521, 519, 285}, {158, 15, 418, 162, 172, 430, 614, 171, 170, 615}, {15, 423, 418, 162, 432, 431, 430, 170, 561, 615}, {157, 483, 160, 165, 616, 588, 204, 205, 587, 186}, {482, 158, 418, 162, 617, 614, 618, 619, 171, 615}, {423, 482, 418, 162, 620, 618, 431, 561, 619, 615}, {425, 488, 292, 489, 579, 622, 621, 580, 538, 623}, {290, 489, 490, 292, 624, 625, 498, 316, 623, 499}, {222, 223, 485, 484, 264, 525, 515, 500, 575, 492}, {363, 0, 66, 299, 413, 70, 409, 509, 351, 347}, {482, 422, 485, 417, 626, 576, 548, 627, 459, 544}, {486, 290, 287, 489, 628, 332, 629, 503, 624, 630}, {296, 3, 166, 427, 350, 219, 604, 631, 479, 613}, {489, 290, 287, 292, 624, 332, 630, 623, 316, 330}, {488, 85, 427, 419, 632, 471, 633, 634, 439, 472}, {425, 488, 419, 85, 579, 634, 440, 441, 632, 439}, {15, 16, 423, 162, 19, 454, 432, 170, 195, 561}, {65, 64, 357, 295, 68, 367, 389, 327, 309, 512}, {222, 484, 486, 226, 500, 502, 504, 267, 635, 610}, {356, 484, 95, 225, 608, 554, 592, 524, 636, 593}, {352, 484, 486, 487, 598, 502, 637, 639, 560, 638}, {230, 222, 484, 225, 270, 500, 606, 251, 269, 636}, {294, 228, 58, 57, 556, 259, 326, 308, 238, 61}, {352, 483, 484, 487, 595, 491, 598, 639, 550, 560}, {23, 163, 24, 293, 194, 193, 27, 325, 584, 314}, {429, 231, 1, 52, 640, 284, 481, 475, 281, 56}, {228, 222, 486, 226, 266, 504, 612, 257, 267, 610}, {482, 422, 417, 418, 626, 459, 627, 618, 434, 458}, {489, 425, 490, 292, 580, 533, 625, 623, 621, 499}, {483, 92, 97, 484, 530, 134, 641, 491, 531, 553}, {50, 232, 5, 428, 272, 286, 53, 470, 642, 478}, {483, 165, 358, 354, 587, 555, 643, 589, 591, 378}, {157, 483, 487, 488, 616, 550, 644, 645, 537, 551}, {425, 488, 417, 419, 579, 581, 463, 440, 634, 461}, {222, 230, 484, 226, 270, 606, 500, 267, 245, 635}, {299, 363, 233, 291, 509, 508, 507, 345, 646, 647}, {103, 356, 73, 95, 518, 386, 149, 147, 592, 122}, {229, 44, 45, 100, 262, 48, 249, 506, 132, 123}, {356, 230, 38, 360, 599, 252, 385, 384, 605, 383}, {104, 223, 45, 96, 648, 247, 151, 150, 649, 125}, {22, 159, 293, 288, 175, 650, 303, 305, 651, 304}, {352, 356, 360, 484, 400, 384, 399, 598, 608, 607}, {2, 361, 168, 29, 414, 652, 218, 32, 403, 213}, {484, 483, 359, 97, 491, 596, 597, 553, 641, 653}, {483, 157, 160, 164, 616, 204, 588, 654, 203, 177}, {92, 484, 100, 95, 531, 655, 139, 137, 554, 115}, {223, 420, 96, 104, 529, 656, 649, 648, 657, 150}, {85, 425, 292, 86, 441, 621, 302, 89, 457, 324}, {355, 352, 486, 357, 397, 637, 658, 381, 394, 514}, {353, 289, 487, 357, 578, 600, 566, 366, 659, 660}, {66, 295, 357, 291, 320, 512, 380, 318, 319, 513}, {488, 487, 287, 489, 551, 662, 661, 538, 552, 630}, {486, 294, 287, 290, 609, 334, 629, 628, 307, 332}, {227, 223, 485, 222, 236, 525, 526, 263, 264, 515}, {355, 486, 226, 291, 658, 610, 663, 664, 511, 611}, {43, 103, 95, 225, 146, 147, 114, 243, 523, 593}, {356, 230, 484, 225, 599, 606, 608, 524, 251, 636}, {64, 295, 289, 357, 309, 310, 311, 367, 512, 659}, {157, 482, 162, 158, 665, 619, 198, 199, 617, 171}, {223, 229, 45, 96, 248, 249, 247, 649, 505, 125}, {222, 229, 484, 225, 268, 574, 500, 269, 242, 636}, {422, 78, 418, 99, 433, 435, 434, 569, 112, 666}, {422, 80, 79, 99, 447, 83, 455, 569, 128, 130}, {159, 22, 293, 163, 175, 303, 650, 174, 173, 584}, {101, 362, 71, 6, 667, 405, 141, 154, 415, 74}, {93, 483, 354, 160, 668, 589, 669, 670, 588, 590}, {355, 486, 291, 357, 658, 511, 664, 381, 514, 513}, {362, 101, 169, 6, 667, 567, 671, 415, 154, 220}, {94, 482, 418, 99, 672, 618, 673, 113, 674, 666}, {488, 482, 489, 417, 536, 539, 538, 581, 627, 582}, {484, 356, 95, 359, 608, 592, 554, 597, 387, 594}, {363, 355, 233, 291, 407, 542, 508, 646, 664, 647}, {485, 92, 96, 99, 532, 140, 675, 676, 138, 127}, {78, 94, 418, 99, 111, 673, 435, 112, 113, 666}, {92, 483, 97, 93, 530, 641, 134, 133, 668, 105}, {484, 95, 97, 359, 554, 121, 553, 597, 594, 653}, {72, 71, 97, 359, 75, 106, 129, 390, 371, 653}, {94, 482, 99, 92, 672, 674, 113, 136, 573, 138}, {102, 167, 7, 426, 557, 221, 155, 559, 549, 480}, {10, 164, 158, 98, 184, 183, 182, 118, 558, 541}, {482, 422, 99, 485, 626, 569, 674, 548, 576, 676}, {15, 158, 426, 167, 172, 677, 466, 207, 206, 549}, {92, 482, 99, 485, 573, 674, 138, 532, 548, 676}, {158, 15, 426, 418, 172, 466, 677, 614, 430, 467}, {38, 356, 234, 225, 385, 520, 280, 250, 524, 275}, {94, 482, 158, 418, 672, 617, 540, 673, 618, 614}, {364, 356, 234, 38, 410, 520, 521, 411, 385, 280}, {93, 160, 8, 98, 670, 178, 108, 110, 678, 109}, {355, 233, 226, 36, 542, 277, 663, 374, 278, 246}, {160, 93, 8, 169, 670, 108, 178, 210, 568, 211}, {227, 223, 50, 420, 236, 237, 235, 527, 529, 438}, {363, 0, 233, 36, 413, 283, 508, 406, 39, 278}, {486, 295, 287, 291, 510, 333, 629, 511, 319, 335}, {59, 294, 291, 226, 321, 322, 323, 256, 585, 611}, {66, 363, 299, 291, 409, 509, 347, 318, 646, 345}, {486, 352, 487, 357, 637, 639, 638, 514, 394, 660}, {295, 486, 487, 357, 510, 638, 679, 512, 514, 660}, {296, 22, 288, 166, 337, 305, 336, 604, 209, 680}, {361, 64, 2, 297, 401, 67, 414, 681, 342, 349}, {95, 97, 359, 73, 121, 653, 594, 122, 120, 388}, {423, 482, 417, 418, 620, 627, 460, 431, 618, 458}, {65, 295, 357, 66, 327, 512, 389, 69, 320, 380}, {97, 72, 359, 73, 129, 390, 653, 120, 76, 388}, {420, 223, 96, 485, 529, 649, 656, 528, 525, 675}, {159, 488, 293, 288, 682, 683, 650, 651, 684, 304}, {31, 165, 160, 354, 187, 186, 185, 377, 591, 590}, {484, 486, 487, 489, 502, 638, 560, 496, 503, 552}, {486, 295, 487, 287, 510, 679, 638, 629, 333, 662}, {59, 233, 226, 291, 282, 277, 256, 323, 647, 611}, {233, 355, 226, 291, 542, 663, 277, 647, 664, 611}, {425, 421, 489, 490, 449, 685, 580, 533, 517, 625}, {288, 488, 292, 85, 684, 622, 301, 300, 632, 302}, {421, 425, 489, 417, 449, 580, 685, 465, 463, 582}, {294, 228, 57, 290, 556, 238, 308, 307, 686, 306}, {165, 31, 358, 354, 187, 379, 555, 591, 377, 378}, {103, 356, 364, 73, 518, 410, 522, 149, 386, 412}, {352, 483, 358, 354, 595, 643, 395, 396, 589, 378}, {22, 159, 288, 166, 175, 651, 305, 209, 208, 680}, {356, 352, 359, 484, 400, 398, 387, 608, 598, 597}, {64, 361, 353, 297, 401, 402, 365, 342, 681, 577}, {355, 66, 357, 291, 382, 380, 381, 664, 318, 513}, {487, 486, 287, 489, 638, 629, 662, 552, 503, 630}, {298, 57, 490, 290, 339, 687, 534, 340, 306, 498}, {31, 362, 169, 6, 408, 671, 215, 35, 415, 220}, {488, 425, 292, 85, 579, 621, 622, 632, 441, 302}, {483, 352, 359, 354, 595, 398, 596, 589, 396, 372}, {94, 78, 418, 426, 111, 435, 673, 688, 468, 467}, {229, 43, 44, 100, 241, 47, 262, 506, 116, 132}, {31, 165, 358, 30, 187, 555, 379, 34, 196, 391}, {429, 231, 52, 490, 640, 281, 475, 516, 547, 546}, {94, 102, 78, 426, 144, 145, 111, 688, 559, 468}, {421, 429, 52, 490, 476, 475, 451, 517, 516, 546}, {364, 103, 73, 4, 522, 149, 412, 416, 153, 77}, {420, 227, 424, 50, 527, 571, 437, 438, 235, 436}, {104, 80, 5, 428, 152, 84, 156, 689, 473, 478}, {227, 51, 52, 424, 260, 55, 255, 571, 456, 453}, {487, 289, 293, 287, 600, 313, 601, 662, 331, 328}, {166, 159, 288, 488, 208, 651, 680, 690, 682, 684}, {289, 161, 353, 487, 586, 562, 578, 600, 564, 566}, {482, 485, 489, 417, 548, 495, 539, 627, 544, 582}, {50, 227, 424, 51, 235, 571, 436, 54, 260, 456}, {488, 489, 287, 292, 538, 630, 661, 622, 623, 330}, {482, 483, 157, 488, 535, 616, 665, 536, 537, 645}, {80, 420, 104, 96, 445, 657, 152, 126, 656, 150}, {232, 104, 45, 5, 691, 151, 279, 286, 156, 49}, {288, 488, 287, 292, 684, 661, 329, 301, 622, 330}, {295, 289, 487, 287, 310, 600, 679, 333, 331, 662}, {157, 161, 163, 487, 202, 192, 201, 644, 564, 602}, {483, 482, 164, 98, 535, 692, 654, 694, 693, 558}, {3, 296, 85, 427, 350, 338, 88, 479, 631, 471}, {92, 483, 93, 98, 530, 668, 133, 135, 694, 110}, {95, 484, 100, 225, 554, 655, 115, 593, 636, 695}, {231, 224, 490, 57, 273, 545, 547, 274, 240, 687}, {64, 289, 353, 357, 311, 578, 365, 367, 659, 366}, {2, 297, 24, 168, 349, 344, 28, 218, 696, 217}, {361, 297, 168, 353, 681, 696, 652, 402, 577, 697}, {353, 161, 168, 29, 562, 212, 697, 370, 181, 213}, {289, 295, 487, 357, 310, 679, 600, 659, 512, 660}, {352, 353, 487, 357, 393, 566, 639, 394, 366, 660}, {361, 353, 168, 29, 402, 697, 652, 403, 370, 213}, {484, 229, 100, 225, 574, 506, 655, 636, 242, 695}, {104, 223, 232, 45, 648, 271, 691, 151, 247, 279}, {160, 164, 8, 98, 177, 176, 178, 678, 558, 109}, {164, 9, 8, 98, 197, 12, 176, 558, 131, 109}, {165, 161, 358, 29, 180, 563, 555, 179, 181, 368}, {297, 361, 168, 2, 681, 652, 696, 349, 414, 218}, {161, 353, 358, 29, 562, 369, 563, 181, 370, 368}, {230, 37, 38, 360, 261, 41, 252, 605, 392, 383}, {43, 95, 100, 225, 114, 115, 116, 243, 593, 695}, {420, 80, 104, 428, 445, 152, 657, 469, 473, 689}, {232, 104, 5, 428, 691, 156, 286, 642, 689, 478}, {59, 299, 233, 291, 346, 507, 282, 323, 345, 647}, {355, 363, 66, 291, 407, 409, 382, 664, 646, 318}, {158, 94, 418, 426, 540, 673, 614, 677, 688, 467}, {87, 429, 298, 1, 477, 603, 343, 91, 481, 348}, {420, 227, 485, 424, 527, 526, 528, 437, 571, 543}, {482, 422, 418, 99, 626, 434, 618, 674, 569, 666}, {229, 43, 100, 225, 241, 116, 506, 242, 243, 695}, {294, 486, 287, 291, 609, 629, 334, 322, 511, 335}, {17, 166, 419, 159, 216, 698, 444, 188, 208, 699}, {419, 166, 17, 427, 698, 216, 444, 472, 613, 474}, {166, 488, 419, 159, 690, 634, 698, 208, 682, 699}, {419, 488, 166, 427, 634, 690, 698, 472, 633, 613}, {160, 98, 483, 164, 678, 694, 588, 177, 558, 654}, {483, 98, 160, 93, 694, 678, 588, 668, 110, 670}, {226, 360, 486, 355, 700, 701, 610, 663, 375, 658}, {360, 36, 226, 230, 376, 246, 700, 605, 244, 245}, {226, 36, 360, 355, 246, 376, 700, 663, 374, 375}, {93, 169, 362, 101, 568, 671, 702, 142, 567, 667}, {93, 362, 71, 101, 702, 405, 107, 142, 667, 141}, {71, 362, 93, 354, 405, 702, 107, 373, 404, 669}, {489, 424, 417, 485, 572, 464, 582, 495, 543, 544}, {417, 424, 489, 421, 464, 572, 582, 465, 452, 685}, {102, 10, 158, 94, 148, 182, 703, 144, 119, 540}, {158, 10, 102, 167, 182, 148, 703, 206, 214, 557}, {102, 158, 426, 94, 703, 677, 559, 144, 540, 688}, {426, 158, 102, 167, 677, 703, 559, 549, 206, 557}, {421, 489, 227, 424, 685, 570, 704, 452, 572, 571}, {52, 421, 227, 424, 451, 704, 255, 453, 452, 571}, {489, 227, 222, 224, 570, 263, 501, 705, 254, 265}, {489, 222, 227, 485, 501, 263, 570, 495, 515, 526}, {87, 425, 292, 490, 448, 621, 315, 497, 533, 499}, {292, 425, 87, 86, 621, 448, 315, 324, 457, 90}, {104, 420, 232, 223, 657, 706, 691, 648, 529, 271}, {104, 232, 420, 428, 691, 706, 657, 689, 642, 469}, {232, 420, 50, 223, 706, 438, 272, 271, 529, 237}, {232, 50, 420, 428, 272, 438, 706, 642, 470, 469}, {226, 484, 360, 230, 635, 607, 700, 245, 606, 605}, {226, 360, 484, 486, 700, 607, 635, 610, 701, 502}, {486, 360, 352, 355, 701, 399, 637, 658, 375, 397}, {352, 360, 486, 484, 399, 701, 637, 598, 607, 502}, {162, 488, 157, 159, 707, 645, 198, 189, 682, 200}, {157, 488, 162, 482, 645, 707, 198, 665, 536, 619}, {490, 57, 429, 231, 687, 708, 516, 547, 274, 640}, {429, 57, 490, 298, 708, 687, 516, 603, 339, 534}, {57, 1, 429, 231, 60, 481, 708, 274, 284, 640}, {429, 1, 57, 298, 481, 60, 708, 603, 348, 339}, {158, 98, 482, 94, 541, 693, 617, 540, 117, 672}, {482, 98, 158, 164, 693, 541, 617, 692, 558, 183}, {353, 297, 161, 289, 577, 709, 562, 578, 341, 586}, {353, 161, 297, 168, 562, 709, 577, 697, 212, 696}, {161, 297, 24, 289, 709, 344, 191, 586, 341, 312}, {161, 24, 297, 168, 191, 344, 709, 212, 217, 696}, {159, 293, 487, 163, 650, 601, 710, 174, 584, 602}, {487, 293, 159, 488, 601, 650, 710, 551, 683, 682}, {159, 487, 157, 163, 710, 644, 200, 174, 602, 201}, {157, 487, 159, 488, 644, 710, 200, 645, 551, 682}, {290, 228, 486, 294, 686, 612, 628, 307, 556, 609}, {290, 486, 228, 489, 628, 612, 686, 624, 503, 711}, {485, 99, 420, 422, 676, 712, 528, 576, 569, 446}, {420, 99, 485, 96, 712, 676, 528, 656, 127, 675}, {99, 80, 420, 422, 128, 445, 712, 569, 447, 446}, {420, 80, 99, 96, 445, 128, 712, 656, 126, 127}, {96, 484, 229, 100, 713, 574, 505, 124, 655, 506}, {92, 96, 484, 485, 140, 713, 531, 532, 675, 492}, {92, 484, 96, 100, 531, 713, 140, 139, 655, 124}, {161, 358, 483, 165, 563, 643, 714, 180, 555, 587}, {483, 358, 161, 487, 643, 563, 714, 550, 565, 564}, {161, 483, 157, 165, 714, 616, 202, 180, 587, 205}, {157, 483, 161, 487, 616, 714, 202, 644, 550, 564}, {362, 31, 160, 354, 408, 185, 715, 404, 377, 590}, {160, 31, 362, 169, 185, 408, 715, 210, 215, 671}, {362, 160, 93, 354, 715, 670, 702, 404, 590, 669}, {93, 160, 362, 169, 670, 715, 702, 568, 210, 671}, {482, 164, 157, 483, 692, 203, 665, 535, 654, 616}, {157, 164, 482, 158, 203, 692, 665, 199, 183, 617}, {228, 489, 222, 224, 711, 501, 266, 239, 705, 265}, {222, 489, 228, 486, 501, 711, 266, 504, 503, 612}, {288, 166, 427, 296, 680, 613, 716, 336, 604, 631}, {288, 427, 166, 488, 716, 613, 680, 684, 633, 690}, {85, 288, 427, 296, 300, 716, 471, 338, 336, 631}, {85, 427, 288, 488, 471, 716, 300, 632, 633, 684}, {484, 223, 96, 229, 575, 649, 713, 574, 248, 505}, {484, 96, 223, 485, 713, 649, 575, 492, 675, 525}, {488, 293, 287, 487, 683, 328, 661, 551, 601, 662}, {287, 293, 488, 288, 328, 683, 661, 329, 304, 684}, {419, 488, 162, 159, 634, 707, 717, 699, 682, 189}, {162, 419, 17, 423, 717, 444, 190, 561, 443, 442}, {17, 419, 162, 159, 444, 717, 190, 188, 699, 189}, {482, 98, 92, 94, 693, 135, 573, 672, 117, 136}, {92, 98, 482, 483, 135, 693, 573, 530, 694, 535}, {358, 487, 352, 353, 565, 639, 395, 369, 566, 393}, {352, 487, 358, 483, 639, 565, 395, 595, 550, 643}, {359, 483, 93, 97, 596, 668, 718, 653, 641, 105}, {359, 93, 483, 354, 718, 668, 596, 372, 669, 589}, {71, 359, 93, 97, 371, 718, 107, 106, 653, 105}, {71, 93, 359, 354, 107, 718, 371, 373, 669, 372}, {52, 490, 227, 421, 546, 719, 255, 451, 517, 704}, {227, 490, 52, 224, 719, 546, 255, 254, 545, 253}, {490, 489, 227, 421, 625, 570, 719, 517, 685, 704}, {227, 489, 490, 224, 570, 625, 719, 254, 705, 545}, {57, 490, 228, 224, 687, 720, 238, 240, 545, 239}, {228, 490, 57, 290, 720, 687, 238, 686, 498, 306}, {490, 489, 228, 224, 625, 711, 720, 545, 705, 239}, {228, 489, 490, 290, 711, 625, 720, 686, 624, 498}, {162, 419, 482, 488, 717, 721, 619, 707, 634, 536}, {482, 419, 162, 423, 721, 717, 619, 620, 443, 561}, {419, 417, 482, 488, 461, 627, 721, 634, 581, 536}, {482, 417, 419, 423, 627, 461, 721, 620, 460, 443}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 8
+ + nb vectors : 7
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 48
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{6, 8, 11}, {8, 9, 12}, {9, 10, 13}, {10, 7, 14}, {7, 15, 18}, {15, 16, 19}, {16, 17, 20}, {17, 3, 21}, {3, 22, 25}, {22, 23, 26}, {23, 24, 27}, {24, 2, 28}, {2, 29, 32}, {29, 30, 33}, {30, 31, 34}, {31, 6, 35}, {0, 36, 39}, {36, 37, 40}, {37, 38, 41}, {38, 4, 42}, {4, 43, 46}, {43, 44, 47}, {44, 45, 48}, {45, 5, 49}, {5, 50, 53}, {50, 51, 54}, {51, 52, 55}, {52, 1, 56}, {1, 57, 60}, {57, 58, 61}, {58, 59, 62}, {59, 0, 63}, {2, 64, 67}, {64, 65, 68}, {65, 66, 69}, {66, 0, 70}, {6, 71, 74}, {71, 72, 75}, {72, 73, 76}, {73, 4, 77}, {7, 78, 81}, {78, 79, 82}, {79, 80, 83}, {80, 5, 84}, {3, 85, 88}, {85, 86, 89}, {86, 87, 90}, {87, 1, 91}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_10
+ size : 341
+ nb_component : 10
+ allocated size : 2000
+ memory size : 78kB
+ values : {{484, 483, 485, 489, 491, 493, 492, 496, 494, 495}, {87, 290, 490, 292, 317, 498, 497, 315, 316, 499}, {222, 484, 489, 486, 500, 496, 501, 504, 502, 503}, {96, 229, 45, 100, 505, 249, 125, 124, 506, 123}, {59, 0, 233, 299, 63, 283, 282, 346, 351, 507}, {0, 363, 233, 299, 413, 508, 283, 351, 509, 507}, {486, 295, 291, 357, 510, 319, 511, 514, 512, 513}, {484, 222, 489, 485, 500, 501, 496, 492, 515, 495}, {87, 429, 421, 490, 477, 476, 450, 497, 516, 517}, {103, 356, 234, 364, 518, 520, 519, 522, 410, 521}, {356, 103, 234, 225, 518, 519, 520, 524, 523, 275}, {43, 103, 225, 234, 146, 523, 243, 276, 519, 275}, {223, 227, 485, 420, 236, 526, 525, 529, 527, 528}, {483, 92, 484, 485, 530, 531, 491, 493, 532, 492}, {87, 421, 425, 490, 450, 449, 448, 497, 517, 533}, {298, 87, 290, 490, 343, 317, 340, 534, 497, 498}, {482, 483, 488, 489, 535, 537, 536, 539, 494, 538}, {94, 10, 158, 98, 119, 182, 540, 117, 118, 541}, {355, 363, 233, 36, 407, 508, 542, 374, 406, 278}, {485, 420, 424, 417, 528, 437, 543, 544, 462, 464}, {231, 224, 52, 490, 273, 253, 281, 547, 545, 546}, {483, 482, 485, 489, 535, 548, 493, 494, 539, 495}, {167, 15, 7, 426, 207, 18, 221, 549, 466, 480}, {483, 487, 488, 489, 550, 551, 537, 494, 552, 538}, {484, 92, 97, 95, 531, 134, 553, 554, 137, 121}, {29, 165, 30, 358, 179, 196, 33, 368, 555, 391}, {228, 294, 58, 59, 556, 326, 259, 258, 321, 62}, {102, 10, 7, 167, 148, 14, 155, 557, 214, 221}, {9, 10, 98, 164, 13, 118, 131, 197, 184, 558}, {78, 102, 7, 426, 145, 155, 81, 468, 559, 480}, {483, 484, 487, 489, 491, 560, 550, 494, 496, 552}, {16, 423, 162, 17, 454, 561, 195, 20, 442, 190}, {353, 161, 358, 487, 562, 563, 369, 566, 564, 565}, {93, 101, 8, 169, 142, 143, 108, 568, 567, 211}, {78, 422, 79, 99, 433, 455, 82, 112, 569, 130}, {485, 227, 489, 424, 526, 570, 495, 543, 571, 572}, {482, 92, 483, 485, 573, 530, 535, 548, 532, 493}, {223, 222, 229, 484, 264, 268, 248, 575, 500, 574}, {422, 420, 485, 417, 446, 528, 576, 459, 462, 544}, {64, 297, 353, 289, 342, 577, 365, 311, 341, 578}, {101, 6, 8, 169, 154, 11, 143, 567, 220, 211}, {425, 488, 489, 417, 579, 538, 580, 463, 581, 582}, {163, 161, 24, 293, 192, 191, 193, 584, 583, 314}, {228, 294, 59, 226, 556, 321, 258, 257, 585, 256}, {161, 289, 24, 293, 586, 312, 191, 583, 313, 314}, {165, 483, 160, 354, 587, 588, 186, 591, 589, 590}, {103, 356, 95, 225, 518, 592, 147, 523, 524, 593}, {356, 95, 359, 73, 592, 594, 387, 386, 122, 388}, {352, 483, 359, 484, 595, 596, 398, 598, 491, 597}, {103, 43, 4, 234, 146, 46, 153, 519, 276, 285}, {230, 356, 38, 225, 599, 385, 252, 251, 524, 250}, {161, 289, 293, 487, 586, 313, 583, 564, 600, 601}, {161, 487, 293, 163, 564, 601, 583, 192, 602, 584}, {429, 87, 298, 490, 477, 343, 603, 516, 497, 534}, {364, 38, 234, 4, 411, 280, 521, 416, 42, 285}, {22, 296, 3, 166, 337, 350, 25, 209, 604, 219}, {230, 37, 360, 36, 261, 392, 605, 244, 40, 376}, {356, 230, 360, 484, 599, 605, 384, 608, 606, 607}, {22, 23, 293, 163, 26, 325, 303, 173, 194, 584}, {294, 486, 291, 226, 609, 511, 322, 585, 610, 611}, {294, 228, 486, 226, 556, 612, 609, 585, 257, 610}, {3, 17, 166, 427, 21, 216, 219, 479, 474, 613}, {364, 103, 4, 234, 522, 153, 416, 521, 519, 285}, {158, 15, 418, 162, 172, 430, 614, 171, 170, 615}, {15, 423, 418, 162, 432, 431, 430, 170, 561, 615}, {157, 483, 160, 165, 616, 588, 204, 205, 587, 186}, {482, 158, 418, 162, 617, 614, 618, 619, 171, 615}, {423, 482, 418, 162, 620, 618, 431, 561, 619, 615}, {425, 488, 292, 489, 579, 622, 621, 580, 538, 623}, {290, 489, 490, 292, 624, 625, 498, 316, 623, 499}, {222, 223, 485, 484, 264, 525, 515, 500, 575, 492}, {363, 0, 66, 299, 413, 70, 409, 509, 351, 347}, {482, 422, 485, 417, 626, 576, 548, 627, 459, 544}, {486, 290, 287, 489, 628, 332, 629, 503, 624, 630}, {296, 3, 166, 427, 350, 219, 604, 631, 479, 613}, {489, 290, 287, 292, 624, 332, 630, 623, 316, 330}, {488, 85, 427, 419, 632, 471, 633, 634, 439, 472}, {425, 488, 419, 85, 579, 634, 440, 441, 632, 439}, {15, 16, 423, 162, 19, 454, 432, 170, 195, 561}, {65, 64, 357, 295, 68, 367, 389, 327, 309, 512}, {222, 484, 486, 226, 500, 502, 504, 267, 635, 610}, {356, 484, 95, 225, 608, 554, 592, 524, 636, 593}, {352, 484, 486, 487, 598, 502, 637, 639, 560, 638}, {230, 222, 484, 225, 270, 500, 606, 251, 269, 636}, {294, 228, 58, 57, 556, 259, 326, 308, 238, 61}, {352, 483, 484, 487, 595, 491, 598, 639, 550, 560}, {23, 163, 24, 293, 194, 193, 27, 325, 584, 314}, {429, 231, 1, 52, 640, 284, 481, 475, 281, 56}, {228, 222, 486, 226, 266, 504, 612, 257, 267, 610}, {482, 422, 417, 418, 626, 459, 627, 618, 434, 458}, {489, 425, 490, 292, 580, 533, 625, 623, 621, 499}, {483, 92, 97, 484, 530, 134, 641, 491, 531, 553}, {50, 232, 5, 428, 272, 286, 53, 470, 642, 478}, {483, 165, 358, 354, 587, 555, 643, 589, 591, 378}, {157, 483, 487, 488, 616, 550, 644, 645, 537, 551}, {425, 488, 417, 419, 579, 581, 463, 440, 634, 461}, {222, 230, 484, 226, 270, 606, 500, 267, 245, 635}, {299, 363, 233, 291, 509, 508, 507, 345, 646, 647}, {103, 356, 73, 95, 518, 386, 149, 147, 592, 122}, {229, 44, 45, 100, 262, 48, 249, 506, 132, 123}, {356, 230, 38, 360, 599, 252, 385, 384, 605, 383}, {104, 223, 45, 96, 648, 247, 151, 150, 649, 125}, {22, 159, 293, 288, 175, 650, 303, 305, 651, 304}, {352, 356, 360, 484, 400, 384, 399, 598, 608, 607}, {2, 361, 168, 29, 414, 652, 218, 32, 403, 213}, {484, 483, 359, 97, 491, 596, 597, 553, 641, 653}, {483, 157, 160, 164, 616, 204, 588, 654, 203, 177}, {92, 484, 100, 95, 531, 655, 139, 137, 554, 115}, {223, 420, 96, 104, 529, 656, 649, 648, 657, 150}, {85, 425, 292, 86, 441, 621, 302, 89, 457, 324}, {355, 352, 486, 357, 397, 637, 658, 381, 394, 514}, {353, 289, 487, 357, 578, 600, 566, 366, 659, 660}, {66, 295, 357, 291, 320, 512, 380, 318, 319, 513}, {488, 487, 287, 489, 551, 662, 661, 538, 552, 630}, {486, 294, 287, 290, 609, 334, 629, 628, 307, 332}, {227, 223, 485, 222, 236, 525, 526, 263, 264, 515}, {355, 486, 226, 291, 658, 610, 663, 664, 511, 611}, {43, 103, 95, 225, 146, 147, 114, 243, 523, 593}, {356, 230, 484, 225, 599, 606, 608, 524, 251, 636}, {64, 295, 289, 357, 309, 310, 311, 367, 512, 659}, {157, 482, 162, 158, 665, 619, 198, 199, 617, 171}, {223, 229, 45, 96, 248, 249, 247, 649, 505, 125}, {222, 229, 484, 225, 268, 574, 500, 269, 242, 636}, {422, 78, 418, 99, 433, 435, 434, 569, 112, 666}, {422, 80, 79, 99, 447, 83, 455, 569, 128, 130}, {159, 22, 293, 163, 175, 303, 650, 174, 173, 584}, {101, 362, 71, 6, 667, 405, 141, 154, 415, 74}, {93, 483, 354, 160, 668, 589, 669, 670, 588, 590}, {355, 486, 291, 357, 658, 511, 664, 381, 514, 513}, {362, 101, 169, 6, 667, 567, 671, 415, 154, 220}, {94, 482, 418, 99, 672, 618, 673, 113, 674, 666}, {488, 482, 489, 417, 536, 539, 538, 581, 627, 582}, {484, 356, 95, 359, 608, 592, 554, 597, 387, 594}, {363, 355, 233, 291, 407, 542, 508, 646, 664, 647}, {485, 92, 96, 99, 532, 140, 675, 676, 138, 127}, {78, 94, 418, 99, 111, 673, 435, 112, 113, 666}, {92, 483, 97, 93, 530, 641, 134, 133, 668, 105}, {484, 95, 97, 359, 554, 121, 553, 597, 594, 653}, {72, 71, 97, 359, 75, 106, 129, 390, 371, 653}, {94, 482, 99, 92, 672, 674, 113, 136, 573, 138}, {102, 167, 7, 426, 557, 221, 155, 559, 549, 480}, {10, 164, 158, 98, 184, 183, 182, 118, 558, 541}, {482, 422, 99, 485, 626, 569, 674, 548, 576, 676}, {15, 158, 426, 167, 172, 677, 466, 207, 206, 549}, {92, 482, 99, 485, 573, 674, 138, 532, 548, 676}, {158, 15, 426, 418, 172, 466, 677, 614, 430, 467}, {38, 356, 234, 225, 385, 520, 280, 250, 524, 275}, {94, 482, 158, 418, 672, 617, 540, 673, 618, 614}, {364, 356, 234, 38, 410, 520, 521, 411, 385, 280}, {93, 160, 8, 98, 670, 178, 108, 110, 678, 109}, {355, 233, 226, 36, 542, 277, 663, 374, 278, 246}, {160, 93, 8, 169, 670, 108, 178, 210, 568, 211}, {227, 223, 50, 420, 236, 237, 235, 527, 529, 438}, {363, 0, 233, 36, 413, 283, 508, 406, 39, 278}, {486, 295, 287, 291, 510, 333, 629, 511, 319, 335}, {59, 294, 291, 226, 321, 322, 323, 256, 585, 611}, {66, 363, 299, 291, 409, 509, 347, 318, 646, 345}, {486, 352, 487, 357, 637, 639, 638, 514, 394, 660}, {295, 486, 487, 357, 510, 638, 679, 512, 514, 660}, {296, 22, 288, 166, 337, 305, 336, 604, 209, 680}, {361, 64, 2, 297, 401, 67, 414, 681, 342, 349}, {95, 97, 359, 73, 121, 653, 594, 122, 120, 388}, {423, 482, 417, 418, 620, 627, 460, 431, 618, 458}, {65, 295, 357, 66, 327, 512, 389, 69, 320, 380}, {97, 72, 359, 73, 129, 390, 653, 120, 76, 388}, {420, 223, 96, 485, 529, 649, 656, 528, 525, 675}, {159, 488, 293, 288, 682, 683, 650, 651, 684, 304}, {31, 165, 160, 354, 187, 186, 185, 377, 591, 590}, {484, 486, 487, 489, 502, 638, 560, 496, 503, 552}, {486, 295, 487, 287, 510, 679, 638, 629, 333, 662}, {59, 233, 226, 291, 282, 277, 256, 323, 647, 611}, {233, 355, 226, 291, 542, 663, 277, 647, 664, 611}, {425, 421, 489, 490, 449, 685, 580, 533, 517, 625}, {288, 488, 292, 85, 684, 622, 301, 300, 632, 302}, {421, 425, 489, 417, 449, 580, 685, 465, 463, 582}, {294, 228, 57, 290, 556, 238, 308, 307, 686, 306}, {165, 31, 358, 354, 187, 379, 555, 591, 377, 378}, {103, 356, 364, 73, 518, 410, 522, 149, 386, 412}, {352, 483, 358, 354, 595, 643, 395, 396, 589, 378}, {22, 159, 288, 166, 175, 651, 305, 209, 208, 680}, {356, 352, 359, 484, 400, 398, 387, 608, 598, 597}, {64, 361, 353, 297, 401, 402, 365, 342, 681, 577}, {355, 66, 357, 291, 382, 380, 381, 664, 318, 513}, {487, 486, 287, 489, 638, 629, 662, 552, 503, 630}, {298, 57, 490, 290, 339, 687, 534, 340, 306, 498}, {31, 362, 169, 6, 408, 671, 215, 35, 415, 220}, {488, 425, 292, 85, 579, 621, 622, 632, 441, 302}, {483, 352, 359, 354, 595, 398, 596, 589, 396, 372}, {94, 78, 418, 426, 111, 435, 673, 688, 468, 467}, {229, 43, 44, 100, 241, 47, 262, 506, 116, 132}, {31, 165, 358, 30, 187, 555, 379, 34, 196, 391}, {429, 231, 52, 490, 640, 281, 475, 516, 547, 546}, {94, 102, 78, 426, 144, 145, 111, 688, 559, 468}, {421, 429, 52, 490, 476, 475, 451, 517, 516, 546}, {364, 103, 73, 4, 522, 149, 412, 416, 153, 77}, {420, 227, 424, 50, 527, 571, 437, 438, 235, 436}, {104, 80, 5, 428, 152, 84, 156, 689, 473, 478}, {227, 51, 52, 424, 260, 55, 255, 571, 456, 453}, {487, 289, 293, 287, 600, 313, 601, 662, 331, 328}, {166, 159, 288, 488, 208, 651, 680, 690, 682, 684}, {289, 161, 353, 487, 586, 562, 578, 600, 564, 566}, {482, 485, 489, 417, 548, 495, 539, 627, 544, 582}, {50, 227, 424, 51, 235, 571, 436, 54, 260, 456}, {488, 489, 287, 292, 538, 630, 661, 622, 623, 330}, {482, 483, 157, 488, 535, 616, 665, 536, 537, 645}, {80, 420, 104, 96, 445, 657, 152, 126, 656, 150}, {232, 104, 45, 5, 691, 151, 279, 286, 156, 49}, {288, 488, 287, 292, 684, 661, 329, 301, 622, 330}, {295, 289, 487, 287, 310, 600, 679, 333, 331, 662}, {157, 161, 163, 487, 202, 192, 201, 644, 564, 602}, {483, 482, 164, 98, 535, 692, 654, 694, 693, 558}, {3, 296, 85, 427, 350, 338, 88, 479, 631, 471}, {92, 483, 93, 98, 530, 668, 133, 135, 694, 110}, {95, 484, 100, 225, 554, 655, 115, 593, 636, 695}, {231, 224, 490, 57, 273, 545, 547, 274, 240, 687}, {64, 289, 353, 357, 311, 578, 365, 367, 659, 366}, {2, 297, 24, 168, 349, 344, 28, 218, 696, 217}, {361, 297, 168, 353, 681, 696, 652, 402, 577, 697}, {353, 161, 168, 29, 562, 212, 697, 370, 181, 213}, {289, 295, 487, 357, 310, 679, 600, 659, 512, 660}, {352, 353, 487, 357, 393, 566, 639, 394, 366, 660}, {361, 353, 168, 29, 402, 697, 652, 403, 370, 213}, {484, 229, 100, 225, 574, 506, 655, 636, 242, 695}, {104, 223, 232, 45, 648, 271, 691, 151, 247, 279}, {160, 164, 8, 98, 177, 176, 178, 678, 558, 109}, {164, 9, 8, 98, 197, 12, 176, 558, 131, 109}, {165, 161, 358, 29, 180, 563, 555, 179, 181, 368}, {297, 361, 168, 2, 681, 652, 696, 349, 414, 218}, {161, 353, 358, 29, 562, 369, 563, 181, 370, 368}, {230, 37, 38, 360, 261, 41, 252, 605, 392, 383}, {43, 95, 100, 225, 114, 115, 116, 243, 593, 695}, {420, 80, 104, 428, 445, 152, 657, 469, 473, 689}, {232, 104, 5, 428, 691, 156, 286, 642, 689, 478}, {59, 299, 233, 291, 346, 507, 282, 323, 345, 647}, {355, 363, 66, 291, 407, 409, 382, 664, 646, 318}, {158, 94, 418, 426, 540, 673, 614, 677, 688, 467}, {87, 429, 298, 1, 477, 603, 343, 91, 481, 348}, {420, 227, 485, 424, 527, 526, 528, 437, 571, 543}, {482, 422, 418, 99, 626, 434, 618, 674, 569, 666}, {229, 43, 100, 225, 241, 116, 506, 242, 243, 695}, {294, 486, 287, 291, 609, 629, 334, 322, 511, 335}, {17, 166, 419, 159, 216, 698, 444, 188, 208, 699}, {419, 166, 17, 427, 698, 216, 444, 472, 613, 474}, {166, 488, 419, 159, 690, 634, 698, 208, 682, 699}, {419, 488, 166, 427, 634, 690, 698, 472, 633, 613}, {160, 98, 483, 164, 678, 694, 588, 177, 558, 654}, {483, 98, 160, 93, 694, 678, 588, 668, 110, 670}, {226, 360, 486, 355, 700, 701, 610, 663, 375, 658}, {360, 36, 226, 230, 376, 246, 700, 605, 244, 245}, {226, 36, 360, 355, 246, 376, 700, 663, 374, 375}, {93, 169, 362, 101, 568, 671, 702, 142, 567, 667}, {93, 362, 71, 101, 702, 405, 107, 142, 667, 141}, {71, 362, 93, 354, 405, 702, 107, 373, 404, 669}, {489, 424, 417, 485, 572, 464, 582, 495, 543, 544}, {417, 424, 489, 421, 464, 572, 582, 465, 452, 685}, {102, 10, 158, 94, 148, 182, 703, 144, 119, 540}, {158, 10, 102, 167, 182, 148, 703, 206, 214, 557}, {102, 158, 426, 94, 703, 677, 559, 144, 540, 688}, {426, 158, 102, 167, 677, 703, 559, 549, 206, 557}, {421, 489, 227, 424, 685, 570, 704, 452, 572, 571}, {52, 421, 227, 424, 451, 704, 255, 453, 452, 571}, {489, 227, 222, 224, 570, 263, 501, 705, 254, 265}, {489, 222, 227, 485, 501, 263, 570, 495, 515, 526}, {87, 425, 292, 490, 448, 621, 315, 497, 533, 499}, {292, 425, 87, 86, 621, 448, 315, 324, 457, 90}, {104, 420, 232, 223, 657, 706, 691, 648, 529, 271}, {104, 232, 420, 428, 691, 706, 657, 689, 642, 469}, {232, 420, 50, 223, 706, 438, 272, 271, 529, 237}, {232, 50, 420, 428, 272, 438, 706, 642, 470, 469}, {226, 484, 360, 230, 635, 607, 700, 245, 606, 605}, {226, 360, 484, 486, 700, 607, 635, 610, 701, 502}, {486, 360, 352, 355, 701, 399, 637, 658, 375, 397}, {352, 360, 486, 484, 399, 701, 637, 598, 607, 502}, {162, 488, 157, 159, 707, 645, 198, 189, 682, 200}, {157, 488, 162, 482, 645, 707, 198, 665, 536, 619}, {490, 57, 429, 231, 687, 708, 516, 547, 274, 640}, {429, 57, 490, 298, 708, 687, 516, 603, 339, 534}, {57, 1, 429, 231, 60, 481, 708, 274, 284, 640}, {429, 1, 57, 298, 481, 60, 708, 603, 348, 339}, {158, 98, 482, 94, 541, 693, 617, 540, 117, 672}, {482, 98, 158, 164, 693, 541, 617, 692, 558, 183}, {353, 297, 161, 289, 577, 709, 562, 578, 341, 586}, {353, 161, 297, 168, 562, 709, 577, 697, 212, 696}, {161, 297, 24, 289, 709, 344, 191, 586, 341, 312}, {161, 24, 297, 168, 191, 344, 709, 212, 217, 696}, {159, 293, 487, 163, 650, 601, 710, 174, 584, 602}, {487, 293, 159, 488, 601, 650, 710, 551, 683, 682}, {159, 487, 157, 163, 710, 644, 200, 174, 602, 201}, {157, 487, 159, 488, 644, 710, 200, 645, 551, 682}, {290, 228, 486, 294, 686, 612, 628, 307, 556, 609}, {290, 486, 228, 489, 628, 612, 686, 624, 503, 711}, {485, 99, 420, 422, 676, 712, 528, 576, 569, 446}, {420, 99, 485, 96, 712, 676, 528, 656, 127, 675}, {99, 80, 420, 422, 128, 445, 712, 569, 447, 446}, {420, 80, 99, 96, 445, 128, 712, 656, 126, 127}, {96, 484, 229, 100, 713, 574, 505, 124, 655, 506}, {92, 96, 484, 485, 140, 713, 531, 532, 675, 492}, {92, 484, 96, 100, 531, 713, 140, 139, 655, 124}, {161, 358, 483, 165, 563, 643, 714, 180, 555, 587}, {483, 358, 161, 487, 643, 563, 714, 550, 565, 564}, {161, 483, 157, 165, 714, 616, 202, 180, 587, 205}, {157, 483, 161, 487, 616, 714, 202, 644, 550, 564}, {362, 31, 160, 354, 408, 185, 715, 404, 377, 590}, {160, 31, 362, 169, 185, 408, 715, 210, 215, 671}, {362, 160, 93, 354, 715, 670, 702, 404, 590, 669}, {93, 160, 362, 169, 670, 715, 702, 568, 210, 671}, {482, 164, 157, 483, 692, 203, 665, 535, 654, 616}, {157, 164, 482, 158, 203, 692, 665, 199, 183, 617}, {228, 489, 222, 224, 711, 501, 266, 239, 705, 265}, {222, 489, 228, 486, 501, 711, 266, 504, 503, 612}, {288, 166, 427, 296, 680, 613, 716, 336, 604, 631}, {288, 427, 166, 488, 716, 613, 680, 684, 633, 690}, {85, 288, 427, 296, 300, 716, 471, 338, 336, 631}, {85, 427, 288, 488, 471, 716, 300, 632, 633, 684}, {484, 223, 96, 229, 575, 649, 713, 574, 248, 505}, {484, 96, 223, 485, 713, 649, 575, 492, 675, 525}, {488, 293, 287, 487, 683, 328, 661, 551, 601, 662}, {287, 293, 488, 288, 328, 683, 661, 329, 304, 684}, {419, 488, 162, 159, 634, 707, 717, 699, 682, 189}, {162, 419, 17, 423, 717, 444, 190, 561, 443, 442}, {17, 419, 162, 159, 444, 717, 190, 188, 699, 189}, {482, 98, 92, 94, 693, 135, 573, 672, 117, 136}, {92, 98, 482, 483, 135, 693, 573, 530, 694, 535}, {358, 487, 352, 353, 565, 639, 395, 369, 566, 393}, {352, 487, 358, 483, 639, 565, 395, 595, 550, 643}, {359, 483, 93, 97, 596, 668, 718, 653, 641, 105}, {359, 93, 483, 354, 718, 668, 596, 372, 669, 589}, {71, 359, 93, 97, 371, 718, 107, 106, 653, 105}, {71, 93, 359, 354, 107, 718, 371, 373, 669, 372}, {52, 490, 227, 421, 546, 719, 255, 451, 517, 704}, {227, 490, 52, 224, 719, 546, 255, 254, 545, 253}, {490, 489, 227, 421, 625, 570, 719, 517, 685, 704}, {227, 489, 490, 224, 570, 625, 719, 254, 705, 545}, {57, 490, 228, 224, 687, 720, 238, 240, 545, 239}, {228, 490, 57, 290, 720, 687, 238, 686, 498, 306}, {490, 489, 228, 224, 625, 711, 720, 545, 705, 239}, {228, 489, 490, 290, 711, 625, 720, 686, 624, 498}, {162, 419, 482, 488, 717, 721, 619, 707, 634, 536}, {482, 419, 162, 423, 721, 717, 619, 620, 443, 561}, {419, 417, 482, 488, 461, 627, 721, 634, 581, 536}, {482, 417, 419, 423, 627, 461, 721, 620, 460, 443}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 240
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{93, 97, 71, 105, 106, 107}, {93, 8, 98, 108, 109, 110}, {94, 78, 99, 111, 112, 113}, {43, 95, 100, 114, 115, 116}, {94, 98, 10, 117, 118, 119}, {73, 97, 95, 120, 121, 122}, {45, 100, 96, 123, 124, 125}, {80, 96, 99, 126, 127, 128}, {71, 97, 72, 106, 129, 75}, {78, 79, 99, 82, 130, 112}, {8, 9, 98, 12, 131, 109}, {43, 100, 44, 116, 132, 47}, {72, 97, 73, 129, 120, 76}, {9, 10, 98, 13, 118, 131}, {79, 80, 99, 83, 128, 130}, {44, 100, 45, 132, 123, 48}, {93, 92, 97, 133, 134, 105}, {93, 98, 92, 110, 135, 133}, {94, 92, 98, 136, 135, 117}, {92, 95, 97, 137, 121, 134}, {94, 99, 92, 113, 138, 136}, {92, 100, 95, 139, 115, 137}, {92, 99, 96, 138, 127, 140}, {92, 96, 100, 140, 124, 139}, {93, 71, 101, 107, 141, 142}, {93, 101, 8, 142, 143, 108}, {94, 102, 78, 144, 145, 111}, {43, 103, 95, 146, 147, 114}, {94, 10, 102, 119, 148, 144}, {73, 95, 103, 122, 147, 149}, {45, 96, 104, 125, 150, 151}, {80, 104, 96, 152, 150, 126}, {4, 73, 103, 77, 149, 153}, {6, 101, 71, 154, 141, 74}, {7, 102, 10, 155, 148, 14}, {7, 78, 102, 81, 145, 155}, {6, 8, 101, 11, 143, 154}, {5, 104, 80, 156, 152, 84}, {4, 103, 43, 153, 146, 46}, {5, 45, 104, 49, 151, 156}, {15, 162, 158, 170, 171, 172}, {22, 163, 159, 173, 174, 175}, {8, 164, 160, 176, 177, 178}, {29, 165, 161, 179, 180, 181}, {10, 158, 164, 182, 183, 184}, {31, 160, 165, 185, 186, 187}, {17, 159, 162, 188, 189, 190}, {24, 161, 163, 191, 192, 193}, {22, 23, 163, 26, 194, 173}, {15, 16, 162, 19, 195, 170}, {29, 30, 165, 33, 196, 179}, {8, 9, 164, 12, 197, 176}, {16, 17, 162, 20, 190, 195}, {23, 24, 163, 27, 193, 194}, {9, 10, 164, 13, 184, 197}, {30, 31, 165, 34, 187, 196}, {158, 162, 157, 171, 198, 199}, {159, 157, 162, 200, 198, 189}, {159, 163, 157, 174, 201, 200}, {161, 157, 163, 202, 201, 192}, {158, 157, 164, 199, 203, 183}, {160, 164, 157, 177, 203, 204}, {160, 157, 165, 204, 205, 186}, {161, 165, 157, 180, 205, 202}, {15, 158, 167, 172, 206, 207}, {22, 159, 166, 175, 208, 209}, {8, 160, 169, 178, 210, 211}, {29, 161, 168, 181, 212, 213}, {10, 167, 158, 214, 206, 182}, {31, 169, 160, 215, 210, 185}, {17, 166, 159, 216, 208, 188}, {24, 168, 161, 217, 212, 191}, {2, 168, 24, 218, 217, 28}, {3, 166, 17, 219, 216, 21}, {6, 169, 31, 220, 215, 35}, {7, 167, 10, 221, 214, 14}, {7, 15, 167, 18, 207, 221}, {3, 22, 166, 25, 209, 219}, {6, 8, 169, 11, 211, 220}, {2, 29, 168, 32, 213, 218}, {50, 227, 223, 235, 236, 237}, {57, 228, 224, 238, 239, 240}, {43, 229, 225, 241, 242, 243}, {36, 230, 226, 244, 245, 246}, {45, 223, 229, 247, 248, 249}, {38, 225, 230, 250, 251, 252}, {52, 224, 227, 253, 254, 255}, {59, 226, 228, 256, 257, 258}, {57, 58, 228, 61, 259, 238}, {50, 51, 227, 54, 260, 235}, {36, 37, 230, 40, 261, 244}, {43, 44, 229, 47, 262, 241}, {51, 52, 227, 55, 255, 260}, {58, 59, 228, 62, 258, 259}, {44, 45, 229, 48, 249, 262}, {37, 38, 230, 41, 252, 261}, {223, 227, 222, 236, 263, 264}, {224, 222, 227, 265, 263, 254}, {224, 228, 222, 239, 266, 265}, {222, 228, 226, 266, 257, 267}, {223, 222, 229, 264, 268, 248}, {222, 225, 229, 269, 242, 268}, {222, 230, 225, 270, 251, 269}, {222, 226, 230, 267, 245, 270}, {50, 223, 232, 237, 271, 272}, {57, 224, 231, 240, 273, 274}, {43, 225, 234, 243, 275, 276}, {36, 226, 233, 246, 277, 278}, {45, 232, 223, 279, 271, 247}, {38, 234, 225, 280, 275, 250}, {52, 231, 224, 281, 273, 253}, {59, 233, 226, 282, 277, 256}, {0, 233, 59, 283, 282, 63}, {1, 231, 52, 284, 281, 56}, {4, 234, 38, 285, 280, 42}, {5, 232, 45, 286, 279, 49}, {5, 50, 232, 53, 272, 286}, {1, 57, 231, 60, 274, 284}, {4, 43, 234, 46, 276, 285}, {0, 36, 233, 39, 278, 283}, {85, 288, 292, 300, 301, 302}, {22, 293, 288, 303, 304, 305}, {57, 290, 294, 306, 307, 308}, {64, 295, 289, 309, 310, 311}, {24, 289, 293, 312, 313, 314}, {87, 292, 290, 315, 316, 317}, {66, 291, 295, 318, 319, 320}, {59, 294, 291, 321, 322, 323}, {85, 292, 86, 302, 324, 89}, {22, 23, 293, 26, 325, 303}, {57, 294, 58, 308, 326, 61}, {64, 65, 295, 68, 327, 309}, {86, 292, 87, 324, 315, 90}, {23, 24, 293, 27, 314, 325}, {65, 66, 295, 69, 320, 327}, {58, 294, 59, 326, 321, 62}, {288, 293, 287, 304, 328, 329}, {288, 287, 292, 329, 330, 301}, {289, 287, 293, 331, 328, 313}, {290, 292, 287, 316, 330, 332}, {289, 295, 287, 310, 333, 331}, {290, 287, 294, 332, 334, 307}, {291, 294, 287, 322, 334, 335}, {291, 287, 295, 335, 333, 319}, {22, 288, 296, 305, 336, 337}, {85, 296, 288, 338, 336, 300}, {57, 298, 290, 339, 340, 306}, {64, 289, 297, 311, 341, 342}, {87, 290, 298, 317, 340, 343}, {24, 297, 289, 344, 341, 312}, {59, 291, 299, 323, 345, 346}, {66, 299, 291, 347, 345, 318}, {1, 87, 298, 91, 343, 348}, {2, 297, 24, 349, 344, 28}, {3, 296, 85, 350, 338, 88}, {3, 22, 296, 25, 337, 350}, {1, 298, 57, 348, 339, 60}, {2, 64, 297, 67, 342, 349}, {0, 59, 299, 63, 346, 351}, {0, 299, 66, 351, 347, 70}, {64, 353, 357, 365, 366, 367}, {29, 358, 353, 368, 369, 370}, {71, 359, 354, 371, 372, 373}, {36, 355, 360, 374, 375, 376}, {31, 354, 358, 377, 378, 379}, {66, 357, 355, 380, 381, 382}, {38, 360, 356, 383, 384, 385}, {73, 356, 359, 386, 387, 388}, {64, 357, 65, 367, 389, 68}, {71, 72, 359, 75, 390, 371}, {29, 30, 358, 33, 391, 368}, {36, 360, 37, 376, 392, 40}, {65, 357, 66, 389, 380, 69}, {30, 31, 358, 34, 379, 391}, {72, 73, 359, 76, 388, 390}, {37, 360, 38, 392, 383, 41}, {353, 352, 357, 393, 394, 366}, {353, 358, 352, 369, 395, 393}, {354, 352, 358, 396, 395, 378}, {355, 357, 352, 381, 394, 397}, {354, 359, 352, 372, 398, 396}, {355, 352, 360, 397, 399, 375}, {356, 352, 359, 400, 398, 387}, {356, 360, 352, 384, 399, 400}, {64, 361, 353, 401, 402, 365}, {29, 353, 361, 370, 402, 403}, {71, 354, 362, 373, 404, 405}, {36, 363, 355, 406, 407, 374}, {31, 362, 354, 408, 404, 377}, {66, 355, 363, 382, 407, 409}, {38, 356, 364, 385, 410, 411}, {73, 364, 356, 412, 410, 386}, {0, 66, 363, 70, 409, 413}, {2, 361, 64, 414, 401, 67}, {6, 362, 31, 415, 408, 35}, {6, 71, 362, 74, 405, 415}, {2, 29, 361, 32, 403, 414}, {4, 364, 73, 416, 412, 77}, {0, 363, 36, 413, 406, 39}, {4, 38, 364, 42, 411, 416}, {15, 418, 423, 430, 431, 432}, {78, 422, 418, 433, 434, 435}, {50, 424, 420, 436, 437, 438}, {85, 419, 425, 439, 440, 441}, {17, 423, 419, 442, 443, 444}, {80, 420, 422, 445, 446, 447}, {87, 425, 421, 448, 449, 450}, {52, 421, 424, 451, 452, 453}, {15, 423, 16, 432, 454, 19}, {78, 79, 422, 82, 455, 433}, {50, 51, 424, 54, 456, 436}, {85, 425, 86, 441, 457, 89}, {79, 80, 422, 83, 447, 455}, {16, 423, 17, 454, 442, 20}, {86, 425, 87, 457, 448, 90}, {51, 52, 424, 55, 453, 456}, {417, 418, 422, 458, 434, 459}, {417, 423, 418, 460, 431, 458}, {419, 423, 417, 443, 460, 461}, {420, 417, 422, 462, 459, 446}, {419, 417, 425, 461, 463, 440}, {420, 424, 417, 437, 464, 462}, {421, 417, 424, 465, 464, 452}, {421, 425, 417, 449, 463, 465}, {15, 426, 418, 466, 467, 430}, {78, 418, 426, 435, 467, 468}, {50, 420, 428, 438, 469, 470}, {85, 427, 419, 471, 472, 439}, {80, 428, 420, 473, 469, 445}, {17, 419, 427, 444, 472, 474}, {52, 429, 421, 475, 476, 451}, {87, 421, 429, 450, 476, 477}, {5, 428, 80, 478, 473, 84}, {3, 17, 427, 21, 474, 479}, {7, 78, 426, 81, 468, 480}, {7, 426, 15, 480, 466, 18}, {5, 50, 428, 53, 470, 478}, {3, 427, 85, 479, 471, 88}, {1, 429, 52, 481, 475, 56}, {1, 87, 429, 91, 477, 481}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 722
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {0.125, 1, 1}, {0.375, 1, 1}, {0.625, 1, 1}, {0.875, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {1, 1, 0.875}, {1, 1, 0.625}, {1, 1, 0.375}, {1, 1, 0.125}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0.875, 1, 0}, {0.625, 1, 0}, {0.375, 1, 0}, {0.125, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 1, 0.125}, {0, 1, 0.375}, {0, 1, 0.625}, {0, 1, 0.875}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0, 0, 0.125}, {0, 0, 0.375}, {0, 0, 0.625}, {0, 0, 0.875}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {0.125, 0, 1}, {0.375, 0, 1}, {0.625, 0, 1}, {0.875, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {1, 0, 0.875}, {1, 0, 0.625}, {1, 0, 0.375}, {1, 0, 0.125}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0.875, 0, 0}, {0.625, 0, 0}, {0.375, 0, 0}, {0.125, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.875, 0}, {0, 0.625, 0}, {0, 0.375, 0}, {0, 0.125, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {0, 0.875, 1}, {0, 0.625, 1}, {0, 0.375, 1}, {0, 0.125, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.875, 1}, {1, 0.625, 1}, {1, 0.375, 1}, {1, 0.125, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {1, 0.875, 0}, {1, 0.625, 0}, {1, 0.375, 0}, {1, 0.125, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.234692, 0.610874, 1}, {0.095431, 0.625135, 1}, {0.139261, 0.735739, 1}, {0.264261, 0.860739, 1}, {0.375, 0.904691, 1}, {0.389261, 0.76543, 1}, {0.860739, 0.735739, 1}, {0.904569, 0.625135, 1}, {0.765308, 0.610874, 1}, {0.264261, 0.139383, 1}, {0.389261, 0.234962, 1}, {0.375, 0.0955798, 1}, {0.610739, 0.76543, 1}, {0.625, 0.904691, 1}, {0.735739, 0.860739, 1}, {0.095431, 0.375135, 1}, {0.234692, 0.389518, 1}, {0.139261, 0.264383, 1}, {0.625, 0.0955798, 1}, {0.610739, 0.234962, 1}, {0.735739, 0.139383, 1}, {0.860739, 0.264383, 1}, {0.765308, 0.389518, 1}, {0.904569, 0.375135, 1}, {0.095431, 0.500135, 1}, {0.904569, 0.500135, 1}, {0.5, 0.904691, 1}, {0.5, 0.0955798, 1}, {0.389261, 0.611834, 1}, {0.345431, 0.501231, 1}, {0.5, 0.655786, 1}, {0.610739, 0.611834, 1}, {0.389261, 0.390478, 1}, {0.654569, 0.501231, 1}, {0.5, 0.346675, 1}, {0.610739, 0.390478, 1}, {0.0709532, 0.804047, 1}, {0.210214, 0.789786, 1}, {0.195953, 0.929047, 1}, {0.789786, 0.789786, 1}, {0.929047, 0.804047, 1}, {0.195953, 0.0709735, 1}, {0.210214, 0.210356, 1}, {0.804047, 0.929047, 1}, {0.0709532, 0.195973, 1}, {0.789786, 0.210356, 1}, {0.804047, 0.0709735, 1}, {0.929047, 0.195973, 1}, {0.0709532, 0.0709735, 1}, {0.0709532, 0.929047, 1}, {0.929047, 0.929047, 1}, {0.929047, 0.0709735, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.904569, 1, 0.625}, {0.765308, 1, 0.610739}, {0.860739, 1, 0.735739}, {0.625, 1, 0.095431}, {0.610739, 1, 0.234692}, {0.735739, 1, 0.139261}, {0.375, 1, 0.904569}, {0.389261, 1, 0.765308}, {0.264261, 1, 0.860739}, {0.095431, 1, 0.375}, {0.234692, 1, 0.389261}, {0.139261, 1, 0.264261}, {0.735739, 1, 0.860739}, {0.610739, 1, 0.765308}, {0.625, 1, 0.904569}, {0.139261, 1, 0.735739}, {0.234692, 1, 0.610739}, {0.095431, 1, 0.625}, {0.860739, 1, 0.264261}, {0.765308, 1, 0.389261}, {0.904569, 1, 0.375}, {0.264261, 1, 0.139261}, {0.389261, 1, 0.234692}, {0.375, 1, 0.095431}, {0.5, 1, 0.095431}, {0.904569, 1, 0.5}, {0.095431, 1, 0.5}, {0.5, 1, 0.904569}, {0.654569, 1, 0.5}, {0.610739, 1, 0.610739}, {0.610739, 1, 0.389261}, {0.5, 1, 0.345431}, {0.389261, 1, 0.389261}, {0.5, 1, 0.654569}, {0.389261, 1, 0.610739}, {0.345431, 1, 0.5}, {0.789786, 1, 0.789786}, {0.929047, 1, 0.804047}, {0.789786, 1, 0.210214}, {0.804047, 1, 0.0709532}, {0.210214, 1, 0.789786}, {0.195953, 1, 0.929047}, {0.210214, 1, 0.210214}, {0.0709532, 1, 0.195953}, {0.804047, 1, 0.929047}, {0.0709532, 1, 0.804047}, {0.929047, 1, 0.195953}, {0.195953, 1, 0.0709532}, {0.0709532, 1, 0.0709532}, {0.929047, 1, 0.0709532}, {0.0709532, 1, 0.929047}, {0.929047, 1, 0.929047}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.904691, 0, 0.625}, {0.76543, 0, 0.610739}, {0.860739, 0, 0.735739}, {0.625135, 0, 0.095431}, {0.610874, 0, 0.234692}, {0.735739, 0, 0.139261}, {0.375135, 0, 0.904569}, {0.389518, 0, 0.765308}, {0.264383, 0, 0.860739}, {0.0955798, 0, 0.375}, {0.234962, 0, 0.389261}, {0.139383, 0, 0.264261}, {0.735739, 0, 0.860739}, {0.610874, 0, 0.765308}, {0.625135, 0, 0.904569}, {0.139383, 0, 0.735739}, {0.234962, 0, 0.610739}, {0.0955798, 0, 0.625}, {0.860739, 0, 0.264261}, {0.76543, 0, 0.389261}, {0.904691, 0, 0.375}, {0.264383, 0, 0.139261}, {0.389518, 0, 0.234692}, {0.375135, 0, 0.095431}, {0.500135, 0, 0.095431}, {0.904691, 0, 0.5}, {0.0955798, 0, 0.5}, {0.500135, 0, 0.904569}, {0.655786, 0, 0.5}, {0.611834, 0, 0.610739}, {0.611834, 0, 0.389261}, {0.501231, 0, 0.345431}, {0.390478, 0, 0.389261}, {0.501231, 0, 0.654569}, {0.390478, 0, 0.610739}, {0.346675, 0, 0.5}, {0.789786, 0, 0.789786}, {0.929047, 0, 0.804047}, {0.789786, 0, 0.210214}, {0.804047, 0, 0.0709532}, {0.210356, 0, 0.789786}, {0.195973, 0, 0.929047}, {0.210356, 0, 0.210214}, {0.0709735, 0, 0.195953}, {0.804047, 0, 0.929047}, {0.0709735, 0, 0.804047}, {0.929047, 0, 0.195953}, {0.195973, 0, 0.0709532}, {0.0709735, 0, 0.0709532}, {0.929047, 0, 0.0709532}, {0.0709735, 0, 0.929047}, {0.929047, 0, 0.929047}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0.860739, 0.735739, 0}, {0.765308, 0.610739, 0}, {0.904569, 0.625, 0}, {0.625, 0.904569, 0}, {0.610739, 0.765308, 0}, {0.735739, 0.860739, 0}, {0.735739, 0.139261, 0}, {0.610739, 0.234692, 0}, {0.625, 0.095431, 0}, {0.095431, 0.625, 0}, {0.234692, 0.610739, 0}, {0.139261, 0.735739, 0}, {0.264261, 0.860739, 0}, {0.389261, 0.765308, 0}, {0.375, 0.904569, 0}, {0.904569, 0.375, 0}, {0.765308, 0.389261, 0}, {0.860739, 0.264261, 0}, {0.139261, 0.264261, 0}, {0.234692, 0.389261, 0}, {0.095431, 0.375, 0}, {0.375, 0.095431, 0}, {0.389261, 0.234692, 0}, {0.264261, 0.139261, 0}, {0.904569, 0.5, 0}, {0.5, 0.904569, 0}, {0.5, 0.095431, 0}, {0.095431, 0.5, 0}, {0.5, 0.654569, 0}, {0.610739, 0.610739, 0}, {0.654569, 0.5, 0}, {0.389261, 0.610739, 0}, {0.610739, 0.389261, 0}, {0.345431, 0.5, 0}, {0.5, 0.345431, 0}, {0.389261, 0.389261, 0}, {0.789786, 0.789786, 0}, {0.804047, 0.929047, 0}, {0.929047, 0.804047, 0}, {0.804047, 0.0709532, 0}, {0.789786, 0.210214, 0}, {0.210214, 0.789786, 0}, {0.0709532, 0.804047, 0}, {0.929047, 0.195953, 0}, {0.195953, 0.929047, 0}, {0.210214, 0.210214, 0}, {0.195953, 0.0709532, 0}, {0.0709532, 0.195953, 0}, {0.929047, 0.0709532, 0}, {0.0709532, 0.929047, 0}, {0.929047, 0.929047, 0}, {0.0709532, 0.0709532, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {0, 0.735739, 0.139261}, {0, 0.610739, 0.234692}, {0, 0.625, 0.095431}, {0, 0.904569, 0.375}, {0, 0.765308, 0.389261}, {0, 0.860739, 0.264261}, {0, 0.625, 0.904569}, {0, 0.610739, 0.765308}, {0, 0.735739, 0.860739}, {0, 0.139261, 0.264261}, {0, 0.234692, 0.389261}, {0, 0.095431, 0.375}, {0, 0.860739, 0.735739}, {0, 0.765308, 0.610739}, {0, 0.904569, 0.625}, {0, 0.375, 0.095431}, {0, 0.389261, 0.234692}, {0, 0.264261, 0.139261}, {0, 0.095431, 0.625}, {0, 0.234692, 0.610739}, {0, 0.139261, 0.735739}, {0, 0.264261, 0.860739}, {0, 0.389261, 0.765308}, {0, 0.375, 0.904569}, {0, 0.5, 0.095431}, {0, 0.5, 0.904569}, {0, 0.904569, 0.5}, {0, 0.095431, 0.5}, {0, 0.610739, 0.389261}, {0, 0.5, 0.345431}, {0, 0.654569, 0.5}, {0, 0.610739, 0.610739}, {0, 0.389261, 0.389261}, {0, 0.5, 0.654569}, {0, 0.345431, 0.5}, {0, 0.389261, 0.610739}, {0, 0.804047, 0.0709532}, {0, 0.789786, 0.210214}, {0, 0.929047, 0.195953}, {0, 0.789786, 0.789786}, {0, 0.804047, 0.929047}, {0, 0.0709532, 0.195953}, {0, 0.210214, 0.210214}, {0, 0.929047, 0.804047}, {0, 0.195953, 0.0709532}, {0, 0.210214, 0.789786}, {0, 0.0709532, 0.804047}, {0, 0.195953, 0.929047}, {0, 0.0709532, 0.0709532}, {0, 0.929047, 0.0709532}, {0, 0.929047, 0.929047}, {0, 0.0709532, 0.929047}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {1, 0.860678, 0.735678}, {1, 0.76518, 0.610611}, {1, 0.904501, 0.624932}, {1, 0.624932, 0.904501}, {1, 0.610611, 0.76518}, {1, 0.735678, 0.860678}, {1, 0.0953701, 0.624939}, {1, 0.234631, 0.610678}, {1, 0.139261, 0.735739}, {1, 0.735739, 0.139261}, {1, 0.610678, 0.234631}, {1, 0.624939, 0.0953701}, {1, 0.904501, 0.374932}, {1, 0.76524, 0.389193}, {1, 0.860739, 0.264261}, {1, 0.264261, 0.860739}, {1, 0.389193, 0.76524}, {1, 0.374932, 0.904501}, {1, 0.374939, 0.0953701}, {1, 0.3892, 0.234631}, {1, 0.264261, 0.139261}, {1, 0.139261, 0.264261}, {1, 0.234631, 0.3892}, {1, 0.0953701, 0.374939}, {1, 0.904501, 0.499932}, {1, 0.499932, 0.904501}, {1, 0.0953701, 0.499939}, {1, 0.499939, 0.0953701}, {1, 0.610131, 0.610131}, {1, 0.499385, 0.653954}, {1, 0.653954, 0.499385}, {1, 0.610191, 0.388713}, {1, 0.388713, 0.610191}, {1, 0.499391, 0.344822}, {1, 0.344822, 0.499391}, {1, 0.388713, 0.388713}, {1, 0.929037, 0.804037}, {1, 0.789715, 0.789715}, {1, 0.804037, 0.929037}, {1, 0.210214, 0.789786}, {1, 0.0709532, 0.804047}, {1, 0.804047, 0.0709532}, {1, 0.789786, 0.210214}, {1, 0.195953, 0.929047}, {1, 0.929047, 0.195953}, {1, 0.0709532, 0.195953}, {1, 0.210214, 0.210214}, {1, 0.195953, 0.0709532}, {1, 0.0709532, 0.929047}, {1, 0.929047, 0.0709532}, {1, 0.929037, 0.929037}, {1, 0.0709532, 0.0709532}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}, {0.403787, 0.502163, 0.604301}, {0.59395, 0.335588, 0.588613}, {0.57425, 0.502163, 0.604301}, {0.533055, 0.519268, 0.479373}, {0.723218, 0.352693, 0.463685}, {0.552756, 0.352693, 0.463685}, {0.907719, 0.227933, 0.0932632}, {0.768458, 0.242194, 0.0932632}, {0.812288, 0.352933, 0.0932632}, {0.462839, 0.167794, 0.544306}, {0.592107, 0.184899, 0.419378}, {0.423487, 0.335588, 0.41815}, {0.552756, 0.352693, 0.293222}, {0.462839, 0.167794, 0.373844}, {0.610874, 0.139383, 0.904569}, {0.500135, 0.0955798, 0.904569}, {0.141927, 0.0709532, 0.0709532}, {0.0709735, 0.0709532, 0.141906}, {0.0709532, 0.141906, 0.0709532}, {0.307175, 0.417794, 0.123844}, {0.351005, 0.307055, 0.123844}, {0.095431, 0.5, 0.095431}, {0.139261, 0.389261, 0.095431}, {0.211744, 0.417794, 0.219275}, {0.633302, 0.167794, 0.544306}, {0.907719, 0.173886, 0.164216}, {0.907719, 0.242194, 0.232524}, {0.0709532, 0.210234, 0.860739}, {0.141927, 0.0709735, 0.929047}, {0.0709735, 0.139261, 0.789786}, {0.0709735, 0.0709532, 0.858094}, {0.0709532, 0.141927, 0.929047}, {0.210336, 0.0709735, 0.860739}, {0.139383, 0.139261, 0.721478}, {0.742945, 0.167794, 0.655045}, {0.786897, 0.167794, 0.544306}, {0.904691, 0.139261, 0.610739}, {0.882206, 0.307055, 0.655045}, {0.860739, 0.139261, 0.721478}, {0.442043, 0.585464, 0.809994}, {0.461744, 0.418889, 0.794306}, {0.632206, 0.418889, 0.794306}, {0.907719, 0.352872, 0.188633}, {0.836765, 0.173886, 0.0932632}, {0.549357, 0.674254, 0.636624}, {0.73952, 0.678141, 0.450474}, {0.57425, 0.672625, 0.433838}, {0.723218, 0.523156, 0.293222}, {0.698326, 0.524784, 0.496008}, {0.721478, 0.860739, 0.860739}, {0.610739, 0.904691, 0.860739}, {0.0709735, 0.139261, 0.210214}, {0.882206, 0.263164, 0.544245}, {0.882206, 0.417246, 0.543759}, {0.768458, 0.102933, 0.232524}, {0.907719, 0.102933, 0.218263}, {0.836765, 0.102933, 0.164216}, {0.73952, 0.507679, 0.620936}, {0.929047, 0.929037, 0.858083}, {0.403787, 0.672625, 0.433838}, {0.59395, 0.676512, 0.247688}, {0.552756, 0.523156, 0.293222}, {0.307175, 0.417929, 0.794306}, {0.351005, 0.307176, 0.794306}, {0.095431, 0.904569, 0.5}, {0.500135, 0.095431, 0.095431}, {0.858094, 0.929047, 0.929047}, {0.5, 0.904691, 0.904569}, {0.929047, 0.858083, 0.929037}, {0.423487, 0.50605, 0.41815}, {0.904569, 0.904501, 0.499932}, {0.139261, 0.860739, 0.278522}, {0.139261, 0.904569, 0.389261}, {0.351005, 0.838256, 0.263105}, {0.211744, 0.742825, 0.373844}, {0.211744, 0.698995, 0.263105}, {0.141906, 0.929047, 0.929047}, {0.210214, 0.860739, 0.929047}, {0.904569, 0.500068, 0.904501}, {0.745703, 0.184899, 0.419378}, {0.904691, 0.0953701, 0.499939}, {0.841012, 0.280269, 0.419318}, {0.607314, 0.59098, 0.82663}, {0.461879, 0.167794, 0.698875}, {0.572483, 0.167794, 0.655045}, {0.882206, 0.417726, 0.698808}, {0.0709532, 0.789786, 0.139261}, {0.139261, 0.721478, 0.139261}, {0.882206, 0.588195, 0.219214}, {0.841012, 0.434839, 0.264749}, {0.882206, 0.587709, 0.373296}, {0.841012, 0.434352, 0.418831}, {0.389261, 0.904569, 0.139261}, {0.5, 0.904569, 0.095431}, {0.389383, 0.095431, 0.139261}, {0.278522, 0.860739, 0.139261}, {0.287474, 0.834369, 0.559994}, {0.331304, 0.834369, 0.670734}, {0.192043, 0.695108, 0.670734}, {0.139261, 0.860739, 0.721478}, {0.095431, 0.860739, 0.610739}, {0.139261, 0.278644, 0.860739}, {0.278644, 0.139383, 0.860739}, {0.139261, 0.389383, 0.904569}, {0.192043, 0.584369, 0.559994}, {0.192043, 0.584369, 0.714563}, {0.211744, 0.417794, 0.698875}, {0.211744, 0.417794, 0.544306}, {0.0955798, 0.139261, 0.610739}, {0.351005, 0.698995, 0.123844}, {0.461744, 0.742825, 0.123844}, {0.461744, 0.838256, 0.219275}, {0.929047, 0.141906, 0.0709532}, {0.858094, 0.929047, 0.0709532}, {0.0955798, 0.095431, 0.5}, {0.307323, 0.167794, 0.544306}, {0.211744, 0.263225, 0.544306}, {0.211744, 0.307055, 0.655045}, {0.461744, 0.263225, 0.123844}, {0.351126, 0.167794, 0.263105}, {0.278644, 0.139261, 0.139261}, {0.461879, 0.167794, 0.219275}, {0.929047, 0.929047, 0.141906}, {0.860739, 0.860678, 0.721417}, {0.904569, 0.860678, 0.610678}, {0.442043, 0.834369, 0.559994}, {0.718053, 0.839885, 0.687369}, {0.857314, 0.700563, 0.687308}, {0.761883, 0.839885, 0.57663}, {0.857314, 0.744386, 0.576562}, {0.904569, 0.499939, 0.0953701}, {0.786775, 0.588256, 0.123844}, {0.745581, 0.434899, 0.169378}, {0.701751, 0.32416, 0.169378}, {0.748731, 0.287832, 0.262642}, {0.857314, 0.589817, 0.731131}, {0.857314, 0.589337, 0.576082}, {0.572483, 0.307055, 0.123844}, {0.461744, 0.417794, 0.123844}, {0.591012, 0.434899, 0.169378}, {0.929047, 0.858094, 0.0709532}, {0.882206, 0.713256, 0.123844}, {0.882206, 0.767303, 0.194797}, {0.882206, 0.698995, 0.263105}, {0.351126, 0.167794, 0.433567}, {0.351126, 0.167794, 0.655045}, {0.211744, 0.417794, 0.373844}, {0.423487, 0.50605, 0.247688}, {0.211744, 0.588256, 0.373844}, {0.929047, 0.0709532, 0.141906}, {0.287474, 0.584504, 0.809994}, {0.929047, 0.0709532, 0.858094}, {0.192043, 0.738938, 0.559994}, {0.461744, 0.838256, 0.373844}, {0.632206, 0.838256, 0.373844}, {0.139261, 0.210214, 0.0709532}, {0.210234, 0.139261, 0.0709532}, {0.789786, 0.0709735, 0.860739}, {0.721478, 0.139383, 0.860739}, {0.610739, 0.904569, 0.139261}, {0.721478, 0.860739, 0.139261}, {0.0709532, 0.929047, 0.141906}, {0.095431, 0.500135, 0.904569}, {0.442043, 0.834369, 0.714563}, {0.461744, 0.263374, 0.794306}, {0.860739, 0.278644, 0.860739}, {0.929047, 0.210234, 0.860739}, {0.211744, 0.307055, 0.263105}, {0.139261, 0.610739, 0.095431}, {0.211744, 0.588256, 0.219275}, {0.632206, 0.588256, 0.123844}, {0.461744, 0.588256, 0.123844}, {0.139383, 0.139261, 0.278522}, {0.139261, 0.278522, 0.139261}, {0.607314, 0.839885, 0.57663}, {0.904569, 0.610813, 0.860678}, {0.0709532, 0.858094, 0.929047}, {0.331304, 0.695108, 0.809994}, {0.139261, 0.721478, 0.860739}, {0.278522, 0.860739, 0.860739}, {0.0709532, 0.929047, 0.858094}, {0.718053, 0.700624, 0.82663}, {0.860739, 0.721417, 0.860678}, {0.761883, 0.59002, 0.82663}, {0.742945, 0.307176, 0.794306}, {0.786775, 0.417929, 0.794306}, {0.860739, 0.929037, 0.789776}, {0.389261, 0.904691, 0.860739}, {0.307175, 0.588256, 0.123844}, {0.789786, 0.860739, 0.0709532}, {0.0709532, 0.858094, 0.0709532}, {0.742945, 0.838256, 0.263105}, {0.632206, 0.742825, 0.123844}, {0.742945, 0.698995, 0.123844}, {0.841012, 0.32416, 0.308639}, {0.610874, 0.139261, 0.095431}, {0.782719, 0.102933, 0.0932632}, {0.860739, 0.789776, 0.929037}, {0.929047, 0.141927, 0.929047}, {0.811253, 0.838256, 0.194797}, {0.858094, 0.0709735, 0.929047}, {0.607314, 0.839885, 0.731199}, {0.607314, 0.744576, 0.82663}, {0.442043, 0.73906, 0.809994}, {0.389383, 0.0955798, 0.860739}, {0.141906, 0.929047, 0.0709532}, {0.0709532, 0.860739, 0.210214}, {0.929047, 0.860739, 0.210214}, {0.860739, 0.860739, 0.278522}, {0.139383, 0.095431, 0.389261}, {0.211744, 0.263225, 0.373844}, {0.139261, 0.789786, 0.929047}, {0.789786, 0.929047, 0.860739}, {0.904691, 0.139261, 0.389261}, {0.701751, 0.184899, 0.308639}, {0.929047, 0.139261, 0.789786}, {0.786775, 0.838256, 0.373844}, {0.875, 0.0709532, 0.0709532}, {0.210214, 0.929047, 0.139261}, {0.572483, 0.838256, 0.263105}, {0.591147, 0.184899, 0.264809}, {0.904569, 0.389396, 0.860739}, {0.572483, 0.307176, 0.794306}, {0.331304, 0.834369, 0.449255}, {0.139261, 0.929047, 0.789786}, {0.860739, 0.789786, 0.0709532}, {0.904569, 0.860739, 0.389261}, {0.139261, 0.610739, 0.904569}, {0.812409, 0.102933, 0.343263}, {0.657854, 0.102933, 0.188694}, {0.857314, 0.700624, 0.465891}}
]
Vector<double> [
+ id : my_fem:jacobians:_tetrahedron_10
+ size : 1364
+ nb_component : 1
+ allocated size : 1364
+ memory size : 11kB
+ values : {{0.00119768}, {0.00119768}, {0.00119768}, {0.00119768}, {0.000498855}, {0.000498855}, {0.000498855}, {0.000498855}, {0.00127072}, {0.00127072}, {0.00127072}, {0.00127072}, {0.000510867}, {0.000510867}, {0.000510867}, {0.000510867}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00023817}, {0.00023817}, {0.00023817}, {0.00023817}, {0.000731371}, {0.000731371}, {0.000731371}, {0.000731371}, {0.00123415}, {0.00123415}, {0.00123415}, {0.00123415}, {0.000262647}, {0.000262647}, {0.000262647}, {0.000262647}, {0.000229322}, {0.000229322}, {0.000229322}, {0.000229322}, {0.000450497}, {0.000450497}, {0.000450497}, {0.000450497}, {0.000202139}, {0.000202139}, {0.000202139}, {0.000202139}, {0.000887737}, {0.000887737}, {0.000887737}, {0.000887737}, {0.00187262}, {0.00187262}, {0.00187262}, {0.00187262}, {0.000493369}, {0.000493369}, {0.000493369}, {0.000493369}, {0.000265441}, {0.000265441}, {0.000265441}, {0.000265441}, {0.00172558}, {0.00172558}, {0.00172558}, {0.00172558}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000671175}, {0.000671175}, {0.000671175}, {0.000671175}, {0.000292964}, {0.000292964}, {0.000292964}, {0.000292964}, {0.00118606}, {0.00118606}, {0.00118606}, {0.00118606}, {0.000209795}, {0.000209795}, {0.000209795}, {0.000209795}, {0.00161203}, {0.00161203}, {0.00161203}, {0.00161203}, {0.00117664}, {0.00117664}, {0.00117664}, {0.00117664}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000378978}, {0.000378978}, {0.000378978}, {0.000378978}, {0.000209795}, {0.000209795}, {0.000209795}, {0.000209795}, {0.00121805}, {0.00121805}, {0.00121805}, {0.00121805}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00117268}, {0.00117268}, {0.00117268}, {0.00117268}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00083749}, {0.00083749}, {0.00083749}, {0.00083749}, {0.00191797}, {0.00191797}, {0.00191797}, {0.00191797}, {0.000953843}, {0.000953843}, {0.000953843}, {0.000953843}, {0.000672936}, {0.000672936}, {0.000672936}, {0.000672936}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00111398}, {0.00111398}, {0.00111398}, {0.00111398}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051068}, {0.00051068}, {0.00051068}, {0.00051068}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.00122601}, {0.00122601}, {0.00122601}, {0.00122601}, {0.000884197}, {0.000884197}, {0.000884197}, {0.000884197}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.00173384}, {0.00173384}, {0.00173384}, {0.00173384}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000209825}, {0.0007455}, {0.0007455}, {0.0007455}, {0.0007455}, {0.000899671}, {0.000899671}, {0.000899671}, {0.000899671}, {0.000616516}, {0.000616516}, {0.000616516}, {0.000616516}, {0.000200144}, {0.000200144}, {0.000200144}, {0.000200144}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000939334}, {0.000939334}, {0.000939334}, {0.000939334}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000930551}, {0.000930551}, {0.000930551}, {0.000930551}, {0.000638055}, {0.000638055}, {0.000638055}, {0.000638055}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000238204}, {0.000238204}, {0.000238204}, {0.000238204}, {0.000745217}, {0.000745217}, {0.000745217}, {0.000745217}, {0.000510776}, {0.000510776}, {0.000510776}, {0.000510776}, {0.000945026}, {0.000945026}, {0.000945026}, {0.000945026}, {0.000909981}, {0.000909981}, {0.000909981}, {0.000909981}, {0.000623877}, {0.000623877}, {0.000623877}, {0.000623877}, {0.000956672}, {0.000956672}, {0.000956672}, {0.000956672}, {0.000513725}, {0.000513725}, {0.000513725}, {0.000513725}, {0.00105581}, {0.00105581}, {0.00105581}, {0.00105581}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00115231}, {0.00115231}, {0.00115231}, {0.00115231}, {0.000871617}, {0.000871617}, {0.000871617}, {0.000871617}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000966407}, {0.000966407}, {0.000966407}, {0.000966407}, {0.000335259}, {0.000335259}, {0.000335259}, {0.000335259}, {0.000630433}, {0.000630433}, {0.000630433}, {0.000630433}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00037973}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.00106509}, {0.00106509}, {0.00106509}, {0.00106509}, {0.00198327}, {0.00198327}, {0.00198327}, {0.00198327}, {0.00205091}, {0.00205091}, {0.00205091}, {0.00205091}, {0.000963229}, {0.000963229}, {0.000963229}, {0.000963229}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.00215047}, {0.00215047}, {0.00215047}, {0.00215047}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000959836}, {0.000959836}, {0.000959836}, {0.000959836}, {0.000817692}, {0.000817692}, {0.000817692}, {0.000817692}, {0.000902791}, {0.000902791}, {0.000902791}, {0.000902791}, {0.00169951}, {0.00169951}, {0.00169951}, {0.00169951}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000840144}, {0.000840144}, {0.000840144}, {0.000840144}, {0.00173867}, {0.00173867}, {0.00173867}, {0.00173867}, {0.000671175}, {0.000671175}, {0.000671175}, {0.000671175}, {0.000963229}, {0.000963229}, {0.000963229}, {0.000963229}, {0.00022929}, {0.00022929}, {0.00022929}, {0.00022929}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000511246}, {0.000511246}, {0.000511246}, {0.000511246}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00161366}, {0.00161366}, {0.00161366}, {0.00161366}, {0.000945026}, {0.000945026}, {0.000945026}, {0.000945026}, {0.0011808}, {0.0011808}, {0.0011808}, {0.0011808}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000379219}, {0.000379219}, {0.000379219}, {0.000379219}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00105497}, {0.00105497}, {0.00105497}, {0.00105497}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00130751}, {0.00130751}, {0.00130751}, {0.00130751}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000951335}, {0.000951335}, {0.000951335}, {0.000951335}, {0.00145377}, {0.00145377}, {0.00145377}, {0.00145377}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000396677}, {0.00137036}, {0.00137036}, {0.00137036}, {0.00137036}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.000913554}, {0.000913554}, {0.000913554}, {0.000913554}, {0.000744668}, {0.000744668}, {0.000744668}, {0.000744668}, {0.000959836}, {0.000959836}, {0.000959836}, {0.000959836}, {0.000510776}, {0.000510776}, {0.000510776}, {0.000510776}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00173998}, {0.00173998}, {0.00173998}, {0.00173998}, {0.00106728}, {0.00106728}, {0.00106728}, {0.00106728}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000950017}, {0.000950017}, {0.000950017}, {0.000950017}, {0.00160036}, {0.00160036}, {0.00160036}, {0.00160036}, {0.00148765}, {0.00148765}, {0.00148765}, {0.00148765}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00117664}, {0.00117664}, {0.00117664}, {0.00117664}, {0.000744343}, {0.000744343}, {0.000744343}, {0.000744343}, {0.00108011}, {0.00108011}, {0.00108011}, {0.00108011}, {0.00102006}, {0.00102006}, {0.00102006}, {0.00102006}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000985542}, {0.000985542}, {0.000985542}, {0.000985542}, {0.00023817}, {0.00023817}, {0.00023817}, {0.00023817}, {0.000509799}, {0.000509799}, {0.000509799}, {0.000509799}, {0.00122872}, {0.00122872}, {0.00122872}, {0.00122872}, {0.000201973}, {0.000201973}, {0.000201973}, {0.000201973}, {0.00168481}, {0.00168481}, {0.00168481}, {0.00168481}, {0.000396652}, {0.000396652}, {0.000396652}, {0.000396652}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000396677}, {0.00127773}, {0.00127773}, {0.00127773}, {0.00127773}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00185969}, {0.00185969}, {0.00185969}, {0.00185969}, {0.00130224}, {0.00130224}, {0.00130224}, {0.00130224}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00051068}, {0.00051068}, {0.00051068}, {0.00051068}, {0.000817692}, {0.000817692}, {0.000817692}, {0.000817692}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.00137577}, {0.00137577}, {0.00137577}, {0.00137577}, {0.000708521}, {0.000708521}, {0.000708521}, {0.000708521}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.00125207}, {0.00125207}, {0.00125207}, {0.00125207}, {0.00108769}, {0.00108769}, {0.00108769}, {0.00108769}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000518452}, {0.000518452}, {0.000518452}, {0.000518452}, {0.000662427}, {0.000662427}, {0.000662427}, {0.000662427}, {0.000902637}, {0.000902637}, {0.000902637}, {0.000902637}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00109572}, {0.00109572}, {0.00109572}, {0.00109572}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.00100863}, {0.00100863}, {0.00100863}, {0.00100863}, {0.000265441}, {0.000265441}, {0.000265441}, {0.000265441}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000849291}, {0.000849291}, {0.000849291}, {0.000849291}, {0.00109572}, {0.00109572}, {0.00109572}, {0.00109572}, {0.000396652}, {0.000396652}, {0.000396652}, {0.000396652}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000196277}, {0.000196277}, {0.000196277}, {0.000196277}, {0.000201973}, {0.000201973}, {0.000201973}, {0.000201973}, {0.000262647}, {0.000262647}, {0.000262647}, {0.000262647}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000510096}, {0.000510096}, {0.000510096}, {0.000510096}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000378736}, {0.000378736}, {0.000378736}, {0.000378736}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000532051}, {0.000532051}, {0.000532051}, {0.000532051}, {0.0014145}, {0.0014145}, {0.0014145}, {0.0014145}, {0.00108638}, {0.00108638}, {0.00108638}, {0.00108638}, {0.000378736}, {0.000378736}, {0.000378736}, {0.000378736}, {0.0011856}, {0.0011856}, {0.0011856}, {0.0011856}, {0.00186025}, {0.00186025}, {0.00186025}, {0.00186025}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000922847}, {0.000922847}, {0.000922847}, {0.000922847}, {0.00132655}, {0.00132655}, {0.00132655}, {0.00132655}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00107727}, {0.00107727}, {0.00107727}, {0.00107727}, {0.00135137}, {0.00135137}, {0.00135137}, {0.00135137}, {0.000292964}, {0.000292964}, {0.000292964}, {0.000292964}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000722936}, {0.000722936}, {0.000722936}, {0.000722936}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000926941}, {0.000926941}, {0.000926941}, {0.000926941}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000509799}, {0.000509799}, {0.000509799}, {0.000509799}, {0.000378978}, {0.000378978}, {0.000378978}, {0.000378978}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000380053}, {0.0007455}, {0.0007455}, {0.0007455}, {0.0007455}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00023817}, {0.00023817}, {0.00023817}, {0.00023817}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000608086}, {0.000608086}, {0.000608086}, {0.000608086}, {0.000652377}, {0.000652377}, {0.000652377}, {0.000652377}, {0.000511476}, {0.000511476}, {0.000511476}, {0.000511476}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000493684}, {0.000493684}, {0.000493684}, {0.000493684}, {0.000251531}, {0.000251531}, {0.000251531}, {0.000251531}, {0.000835485}, {0.000835485}, {0.000835485}, {0.000835485}, {0.00121998}, {0.00121998}, {0.00121998}, {0.00121998}, {0.00120388}, {0.00120388}, {0.00120388}, {0.00120388}, {0.000510867}, {0.000510867}, {0.000510867}, {0.000510867}, {0.000745543}, {0.000745543}, {0.000745543}, {0.000745543}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000849837}, {0.000849837}, {0.000849837}, {0.000849837}, {0.000902637}, {0.000902637}, {0.000902637}, {0.000902637}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00022929}, {0.00022929}, {0.00022929}, {0.00022929}, {0.000761723}, {0.000761723}, {0.000761723}, {0.000761723}, {0.000509558}, {0.000509558}, {0.000509558}, {0.000509558}, {0.00104832}, {0.00104832}, {0.00104832}, {0.00104832}, {0.00111203}, {0.00111203}, {0.00111203}, {0.00111203}, {0.00080431}, {0.00080431}, {0.00080431}, {0.00080431}, {0.000379219}, {0.000379219}, {0.000379219}, {0.000379219}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00022929}, {0.00022929}, {0.00022929}, {0.00022929}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00106294}, {0.00106294}, {0.00106294}, {0.00106294}, {0.00172128}, {0.00172128}, {0.00172128}, {0.00172128}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00185969}, {0.00185969}, {0.00185969}, {0.00185969}, {0.000922847}, {0.000922847}, {0.000922847}, {0.000922847}, {0.00167934}, {0.00167934}, {0.00167934}, {0.00167934}, {0.000237043}, {0.000237043}, {0.000237043}, {0.000237043}, {0.000233177}, {0.000233177}, {0.000233177}, {0.000233177}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00100541}, {0.00100541}, {0.00100541}, {0.00100541}, {0.0006888}, {0.0006888}, {0.0006888}, {0.0006888}, {0.000883155}, {0.000883155}, {0.000883155}, {0.000883155}, {0.000449966}, {0.000449966}, {0.000449966}, {0.000449966}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000723193}, {0.000723193}, {0.000723193}, {0.000723193}, {0.00119627}, {0.00119627}, {0.00119627}, {0.00119627}, {0.000922847}, {0.000922847}, {0.000922847}, {0.000922847}, {0.00101774}, {0.00101774}, {0.00101774}, {0.00101774}, {0.00074475}, {0.00074475}, {0.00074475}, {0.00074475}, {0.00122628}, {0.00122628}, {0.00122628}, {0.00122628}, {0.000688235}, {0.000688235}, {0.000688235}, {0.000688235}, {0.00100531}, {0.00100531}, {0.00100531}, {0.00100531}, {0.00051012}, {0.00051012}, {0.00051012}, {0.00051012}, {0.000745227}, {0.000745227}, {0.000745227}, {0.000745227}, {0.00103381}, {0.00103381}, {0.00103381}, {0.00103381}, {0.00130566}, {0.00130566}, {0.00130566}, {0.00130566}, {0.0011808}, {0.0011808}, {0.0011808}, {0.0011808}, {0.00100744}, {0.00100744}, {0.00100744}, {0.00100744}, {0.00169196}, {0.00169196}, {0.00169196}, {0.00169196}, {0.000945026}, {0.000945026}, {0.000945026}, {0.000945026}, {0.00124164}, {0.00124164}, {0.00124164}, {0.00124164}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000883155}, {0.000883155}, {0.000883155}, {0.000883155}, {0.000449966}, {0.000449966}, {0.000449966}, {0.000449966}, {0.00139391}, {0.00139391}, {0.00139391}, {0.00139391}, {0.000913554}, {0.000913554}, {0.000913554}, {0.000913554}, {0.00105108}, {0.00105108}, {0.00105108}, {0.00105108}, {0.0011491}, {0.0011491}, {0.0011491}, {0.0011491}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000609681}, {0.000609681}, {0.000609681}, {0.000609681}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000391999}, {0.000391999}, {0.000391999}, {0.000391999}, {0.00150629}, {0.00150629}, {0.00150629}, {0.00150629}, {0.00185388}, {0.00185388}, {0.00185388}, {0.00185388}, {0.00108769}, {0.00108769}, {0.00108769}, {0.00108769}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.00068973}, {0.00068973}, {0.00068973}, {0.00068973}, {0.00051012}, {0.00051012}, {0.00051012}, {0.00051012}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000982951}, {0.000982951}, {0.000982951}, {0.000982951}, {0.00155838}, {0.00155838}, {0.00155838}, {0.00155838}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00190279}, {0.00190279}, {0.00190279}, {0.00190279}, {0.000890603}, {0.000890603}, {0.000890603}, {0.000890603}, {0.00130171}, {0.00130171}, {0.00130171}, {0.00130171}, {0.000509851}, {0.000509851}, {0.000509851}, {0.000509851}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000722514}, {0.000722514}, {0.000722514}, {0.000722514}, {0.000550638}, {0.000550638}, {0.000550638}, {0.000550638}, {0.000869085}, {0.000869085}, {0.000869085}, {0.000869085}, {0.00056562}, {0.00056562}, {0.00056562}, {0.00056562}, {0.000549932}, {0.000549932}, {0.000549932}, {0.000549932}, {0.000732214}, {0.000732214}, {0.000732214}, {0.000732214}, {0.00058443}, {0.00058443}, {0.00058443}, {0.00058443}, {0.000883971}, {0.000883971}, {0.000883971}, {0.000883971}, {0.00124314}, {0.00124314}, {0.00124314}, {0.00124314}, {0.000836794}, {0.000836794}, {0.000836794}, {0.000836794}, {0.00092794}, {0.00092794}, {0.00092794}, {0.00092794}, {0.000815143}, {0.000815143}, {0.000815143}, {0.000815143}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_tetrahedron_10
- + size : 4
- + nb_component : 3
- + allocated size : 2000
- + memory size : 47kB
- + values : {{0.138197, 0.138197, 0.138197}, {0.58541, 0.138197, 0.138197}, {0.138197, 0.58541, 0.138197}, {0.138197, 0.138197, 0.58541}}
- ]
Vector<double> [
+ id : my_fem:shapes:_tetrahedron_10
+ size : 1364
+ nb_component : 10
+ allocated size : 1364
+ memory size : 1.1e+02kB
+ values : {{0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_tetrahedron_10
+ size : 1364
+ nb_component : 30
+ allocated size : 1364
+ memory size : 3.2e+02kB
- + values : {{-3.9353, -4.55601, 0.673815, 0, -1.32529, -0.181463, -1.31177, -0.0269554, -1.36103, 0, -0.166427, 1.7671, -1.62143, 5.06211, 1.22778, 1.62143, 1.67146, 1.90663, 5.24706, -1.73604, 7.40408, -1.62143, -1.00576, -8.97503, 0, 1.84386, -1.95995, 1.62143, 0.239033, -0.501928}, {1.31177, 1.51867, -0.224605, 4.12325e-16, 3.97586, 0.54439, -1.31177, -0.0269554, -1.36103, 2.74179e-16, -0.166427, 1.7671, -6.86849, -6.31371, 1.40035, 6.86849, 1.77928, 7.35076, -1.56634e-16, -1.84386, 1.95995, -1.62143, -1.67146, -1.90663, -1.26573e-15, 2.50957, -9.02835, 1.62143, 0.239033, -0.501928}, {1.31177, 1.51867, -0.224605, 0, -1.32529, -0.181463, 3.9353, 0.0808662, 4.08309, 0, -0.166427, 1.7671, -1.62143, -0.239033, 0.501928, 1.62143, 6.97261, 2.63248, -5.24706, -7.91853, 2.85837, -1.62143, -1.67146, -1.90663, 0, 1.84386, -1.95995, 1.62143, 0.90474, -7.57033}, {1.31177, 1.51867, -0.224605, 0, -1.32529, -0.181463, -1.31177, -0.0269554, -1.36103, 0, 0.49928, -5.3013, -1.62143, -0.239033, 0.501928, 1.62143, 1.67146, 1.90663, -3.2565e-16, -1.84386, 1.95995, -6.86849, -7.74614, -1.00821, 0, 7.14501, -1.2341, 6.86849, 0.346855, 4.9422}, {4.62937, -1.83228, -3.04567, 1.74185, 1.32981, 2.03815, 0, 0, -2.39759, -0.198723, -1.94057, -0.655786, -7.21302, -7.71791, -11.9268, -2.15304, -1.64373, 0.444288, 1.90741, -0.754941, 11.2991, 2.94793, 9.40601, 2.17885, -1.90741, 0.754941, -1.7087, 0.245635, 2.39867, 3.77418}, {-1.54312, 0.61076, 1.01522, -5.22554, -3.98943, -6.11446, 0, 0, -2.39759, -0.198723, -1.94057, -0.655786, 5.92686, -4.84171, -7.83507, -2.15304, -1.64373, 10.0346, 1.90741, -0.754941, 1.7087, 2.15304, 1.64373, -0.444288, -1.11252, 8.51722, 0.914444, 0.245635, 2.39867, 3.77418}, {-1.54312, 0.61076, 1.01522, 1.74185, 1.32981, 2.03815, 0, 0, 7.19277, -0.198723, -1.94057, -0.655786, -0.245635, -2.39867, -3.77418, -9.12042, -6.96297, -7.70832, 8.0799, -3.19798, -2.35219, 2.15304, 1.64373, -0.444288, -1.90741, 0.754941, -1.7087, 1.04052, 10.1609, 6.39732}, {-1.54312, 0.61076, 1.01522, 1.74185, 1.32981, 2.03815, 0, 0, -2.39759, 0.596168, 5.82171, 1.96736, -0.245635, -2.39867, -3.77418, -2.15304, -1.64373, 0.444288, 1.90741, -0.754941, 1.7087, 8.32553, -0.799305, -4.50518, -8.87479, -4.5643, -9.86131, 0.245635, 2.39867, 13.3645}, {0.513102, -3.87755, 0, 0.57474, -0.851464, -1.31177, -1.67772, -0.393466, -9.15774e-16, 1.27402, -0.0475867, 1.31177, -2.79797, 2.86069, 6.86849, 1.36336, 1.53882, 1.62143, 8.99608, 0.462577, 4.66294e-15, -6.45943, -1.34847, -6.86849, -2.28519, 1.11129, -1.11022e-15, 0.499008, 0.545171, -1.62143}, {-0.171034, 1.29252, -2.22045e-16, -1.72422, 2.55439, 3.9353, -1.67772, -0.393466, -8.14021e-16, 1.27402, -0.0475867, 1.31177, 0.185129, -5.71524, 1.62143, 8.07425, 3.11268, 1.62143, 2.28519, -1.11129, 1.33227e-15, -1.36336, -1.53882, -1.62143, -7.38126, 1.30164, -5.24706, 0.499008, 0.545171, -1.62143}, {-0.171034, 1.29252, 4.44089e-16, 0.57474, -0.851464, -1.31177, 5.03317, 1.1804, 1.22103e-15, 1.27402, -0.0475867, 1.31177, -0.499008, -0.545171, 1.62143, -0.935598, 4.94468, 6.86849, 2.96933, -6.28136, -1.77636e-15, -1.36336, -1.53882, -1.62143, -2.28519, 1.11129, 0, -4.59706, 0.735518, -6.86849}, {-0.171034, 1.29252, 0, 0.57474, -0.851464, -1.31177, -1.67772, -0.393466, 5.5964e-16, -3.82205, 0.14276, -3.9353, -0.499008, -0.545171, 1.62143, 1.36336, 1.53882, 1.62143, 2.28519, -1.11129, -8.88178e-16, -0.679225, -6.70889, -1.62143, -4.58415, 4.51715, 5.24706, 7.2099, 2.11904, -1.62143}, {3.99239, 5.22128, -5.22376, -4.19346e-16, -1.90927e-15, 2.34313, -0.609885, 1.54187, -1.54513, 1.94068, 0.198561, -2.53925, 1.64495, 2.15129, -14.4211, 0.75386, -1.90585, -0.986372, 4.83836, -5.92203, 5.93812, -8.51658, 1.11161, 11.1434, -2.39881, -0.245434, 0.242418, -1.64495, -2.15129, 5.04857}, {-1.3308, -1.74043, 1.74125, -4.45091e-15, 2.34416e-15, -7.02938, -0.609885, 1.54187, -1.54513, 1.94068, 0.198561, -2.53925, 6.96814, 9.11299, -12.0136, 3.1934, -8.07331, 5.19416, 2.39881, 0.245434, -0.242418, -0.75386, 1.90585, 0.986372, -10.1615, -1.03968, 10.3994, -1.64495, -2.15129, 5.04857}, {-1.3308, -1.74043, 1.74125, 0, 0, 2.34313, 1.82966, -4.6256, 4.6354, 1.94068, 0.198561, -2.53925, 1.64495, 2.15129, -5.04857, 0.75386, -1.90585, -10.3589, 7.722, 7.20714, -7.20743, -0.75386, 1.90585, 0.986372, -2.39881, -0.245434, 0.242418, -9.40768, -2.94553, 15.2056}, {-1.3308, -1.74043, 1.74125, -1.12887e-15, -1.155e-16, 2.34313, -0.609885, 1.54187, -1.54513, -5.82204, -0.595682, 7.61774, 1.64495, 2.15129, -5.04857, 0.75386, -1.90585, -0.986372, 2.39881, 0.245434, -0.242418, 4.56932, 8.86756, -5.97864, -2.39881, -0.245434, -9.13008, 0.794587, -8.31875, 11.2291}, {5.36656, -5.36656, -5.3681, 1.78885, 1.36261, 1.3621, 0, 0, -3.15147, 0, -3.15147, 0, -7.15542, -9.34589, -9.34384, -2.21115, -1.68428, 2.21178, 2.21115, -2.21115, 14.2895, 2.21115, 14.2902, -2.21178, -2.21115, 2.21115, -1.68365, 0, 3.89543, 3.89543}, {-1.78885, 1.78885, 1.78937, -5.36656, -4.08784, -4.08631, 0, 0, -3.15147, 0, -3.15147, 0, 7.15542, -11.0508, -11.0529, -2.21115, -1.68428, 14.8177, 2.21115, -2.21115, 1.68365, 2.21115, 1.68428, -2.21178, -2.21115, 14.817, -1.68365, 0, 3.89543, 3.89543}, {-1.78885, 1.78885, 1.78937, 1.78885, 1.36261, 1.3621, 0, 0, 9.45441, 0, -3.15147, 0, 4.44089e-16, -3.89543, -3.89543, -9.36656, -7.13474, -3.23663, 9.36656, -9.36656, -5.47381, 2.21115, 1.68428, -2.21178, -2.21115, 2.21115, -1.68365, 0, 16.5013, 3.89543}, {-1.78885, 1.78885, 1.78937, 1.78885, 1.36261, 1.3621, 0, 0, -3.15147, 0, 9.45441, 0, 4.44089e-16, -3.89543, -3.89543, -2.21115, -1.68428, 2.21178, 2.21115, -2.21115, 1.68365, 9.36656, -5.47113, -9.36924, -9.36656, -3.23931, -7.13206, 0, 3.89543, 16.5013}, {-4.72653, -4.72788, -4.72653, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, -1.57551, -1.57596, 1.57596, -10.1969, 6.30148, 6.30439, -1.73195e-14, 1.73195e-14, 3.89543, 6.30204, -10.1975, 6.30204, 6.30204, 6.30384, -10.1993, 2.1394e-12, 3.89543, -2.14051e-12, 3.89487, 0.000556765, -0.000556765}, {1.57551, 1.57596, 1.57551, -4.72653, 4.72653, 4.72788, -1.57551, 1.57551, -1.57551, -1.57551, -1.57596, 1.57596, -10.1969, -6.30439, -6.30148, 6.30204, -6.30204, 10.1975, -2.13851e-12, -3.89543, 2.13829e-12, 1.42638e-14, -1.48241e-14, -3.89543, 6.30204, 10.1993, -6.30384, 3.89487, 0.000556765, -0.000556765}, {1.57551, 1.57596, 1.57551, 1.57551, -1.57551, -1.57596, 4.72653, -4.72653, 4.72653, -1.57551, -1.57596, 1.57596, -3.89487, -0.000556765, 0.000556765, -6.30204, 6.30204, 10.1993, -6.30204, -10.1993, -6.30204, 1.62622e-14, -1.72666e-14, -3.89543, 2.14029e-12, 3.89543, -2.14007e-12, 10.1969, 6.30439, -6.30439}, {1.57551, 1.57596, 1.57551, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, 4.72653, 4.72788, -4.72788, -3.89487, -0.000556765, 0.000556765, -1.70974e-14, 1.68754e-14, 3.89543, -2.14206e-12, -3.89543, 2.1414e-12, -6.30204, -6.30384, -10.1975, -6.30204, 10.1975, 6.30384, 10.1969, -6.30148, 6.30148}, {3.23101, 1.27881, 3.23101, -1.12016, -2.46258, 1.22297, 0.799503, 2.33566, 0.799503, 1.39766, 0.553185, -0.945467, 7.19648, 13.4211, -5.07228, 0.396353, 0.156874, -2.49991, -2.85501, -11.7028, -2.85501, -5.98699, -2.36962, 6.28178, -0.343007, 2.36014, -0.343007, -2.71584, -3.57081, 0.180421}, {-1.077, -0.426271, -1.077, 3.36048, 7.38773, -3.6689, 0.799503, 2.33566, 0.799503, 1.39766, 0.553185, -0.945467, 7.02385, 5.2759, 4.12759, -2.80166, -9.18577, -5.69792, 0.343007, -2.36014, 0.343007, -0.396353, -0.156874, 2.49991, -5.93364, 0.147394, 3.43886, -2.71584, -3.57081, 0.180421}, {-1.077, -0.426271, -1.077, -1.12016, -2.46258, 1.22297, -2.39851, -7.00698, -2.39851, 1.39766, 0.553185, -0.945467, 2.71584, 3.57081, -0.180421, 4.87699, 10.0072, -7.39177, 4.65101, -0.65505, 4.65101, -0.396353, -0.156874, 2.49991, -0.343007, 2.36014, -0.343007, -8.30647, -5.78355, 3.96229}, {-1.077, -0.426271, -1.077, -1.12016, -2.46258, 1.22297, 0.799503, 2.33566, 0.799503, -4.19298, -1.65956, 2.8364, 2.71584, 3.57081, -0.180421, 0.396353, 0.156874, -2.49991, 0.343007, -2.36014, 0.343007, 3.91165, 1.54821, 6.80792, 4.13763, 12.2104, -5.23487, -5.91385, -12.9135, -3.01759}, {-3.9353, 2.63698, 1.65871, 7.60332e-17, 1.28613, 0.176102, -3.18404e-16, -0.456132, 1.72743, -1.31177, 0.0489967, -1.35063, -1.62143, -5.64776, -0.238656, 2.99587e-16, -1.02593, -2.3529, -1.62143, 3.47483, -8.36153, 5.24706, 0.829946, 7.75543, 1.62143, -1.65031, 1.4518, 1.62143, 0.503247, -0.465751}, {1.31177, -0.878994, -0.552902, 8.56342e-16, -3.85839, -0.528305, 3.92674e-16, -0.456132, 1.72743, -1.31177, 0.0489967, -1.35063, -6.86849, 3.01273, 2.67736, -1.70324e-15, 0.798596, -9.26263, -1.62143, 1.65031, -1.4518, -1.93111e-16, 1.02593, 2.3529, 6.86849, -1.84629, 6.85433, 1.62143, 0.503247, -0.465751}, {1.31177, -0.878994, -0.552902, -5.33523e-16, 1.28613, 0.176102, 2.92961e-15, 1.3684, -5.1823, -1.31177, 0.0489967, -1.35063, -1.62143, -0.503247, 0.465751, 4.00063e-15, -6.17045, -3.0573, -6.86849, 5.16628, 0.75981, -2.19219e-15, 1.02593, 2.3529, 1.62143, -1.65031, 1.4518, 6.86849, 0.30726, 4.93678}, {1.31177, -0.878994, -0.552902, 7.60332e-17, 1.28613, 0.176102, -3.18404e-16, -0.456132, 1.72743, 3.9353, -0.14699, 4.0519, -1.62143, -0.503247, 0.465751, 2.99587e-16, -1.02593, -2.3529, -1.62143, 1.65031, -1.4518, -5.24706, 4.54191, 4.56451, 1.62143, -6.79482, 0.747392, 1.62143, 2.32778, -7.37548}, {0.56235, 5.36656, -5.36656, -1.24953, 3.64699, -0.373467, -0.986118, -1.85814, -1.41539, 2.4231, 0, 0, 6.77433, -16.8847, -0.255645, 2.76341, -2.21115, 2.21115, 5.39508, 11.9405, 5.19992, -12.4558, 2.21115, -2.21115, -1.45061, -4.50793, 0.461631, -1.77621, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, 3.74859, -10.941, 1.1204, -0.986118, -1.85814, -1.41539, 2.4231, 1.11775e-15, 8.51416e-16, 2.52601, 4.85864, -8.90493, 6.70789, 5.2214, 7.87269, 1.45061, 4.50793, -0.461631, -2.76341, 2.21115, -2.21115, -11.143, -4.50793, 0.461631, -1.77621, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, -1.24953, 3.64699, -0.373467, 2.95835, 5.57441, 4.24616, 2.4231, 0, 0, 1.77621, -2.29678, -1.74951, 7.76154, -16.7991, 3.70501, 2.20041, 11.6633, -7.61705, -2.76341, 2.21115, -2.21115, -1.45061, -4.50793, 0.461631, -11.4686, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, -1.24953, 3.64699, -0.373467, -0.986118, -1.85814, -1.41539, -7.2693, 0, 0, 1.77621, -2.29678, -1.74951, 2.76341, -2.21115, 2.21115, 1.45061, 4.50793, -0.461631, -2.01361, 9.36656, -9.36656, 3.54752, -19.0959, 1.9555, 2.16826, 9.72932, 7.41106}, {4.72585, 4.7272, 4.7272, -1.63629, -1.63676, 1.63676, -1.57573, 1.57528, 1.57528, 4.78731, 1.63721, -1.63631, 10.5149, 10.5179, -6.62248, 3.97028, 0.0759901, -3.97031, 10.1978, -6.30058, -6.30058, -23.1195, -6.62484, 10.5155, -3.89487, -0.000556685, -0.000556685, -3.96973, -3.97086, 0.0754336}, {-1.57528, -1.57573, -1.57573, 4.90888, 4.91028, -4.91028, -1.57573, 1.57528, 1.57528, 4.78731, 1.63721, -1.63631, 10.2709, 10.2738, 6.2275, 10.2732, -6.22515, -10.2714, 3.89487, 0.000556685, 0.000556685, -3.97028, -0.0759901, 3.97031, -23.0441, -6.5494, 6.54469, -3.96973, -3.97086, 0.0754336}, {-1.57528, -1.57573, -1.57573, -1.63629, -1.63676, 1.63676, 4.7272, -4.72585, -4.72585, 4.78731, 1.63721, -1.63631, 3.96973, 3.97086, -0.0754336, 10.5155, 6.62303, -10.5174, 10.196, 6.30349, 6.30349, -3.97028, -0.0759901, 3.97031, -3.89487, -0.000556685, -0.000556685, -23.119, -10.5197, 6.62068}, {-1.57528, -1.57573, -1.57573, -1.63629, -1.63676, 1.63676, -1.57573, 1.57528, 1.57528, -14.3619, -4.91163, 4.90893, 3.96973, 3.97086, -0.0754336, 3.97028, 0.0759901, -3.97031, 3.89487, 0.000556685, 0.000556685, 2.33085, 6.22695, 10.2732, 2.6503, 6.54649, -6.5476, 2.33321, -10.272, -6.2257}, {-2.40635, 2.40855, -2.40993, -1.57388, -1.57525, -1.57621, 3.20871, 3.21151, -0.0600473, -2.43695, -0.833412, 0.832954, 7.24946, 9.24051, 7.26022, -2.02076, -2.02253, 2.02253, -17.7925, -15.8233, -0.678532, 11.7686, 5.35618, -5.35435, 4.95766, 2.97727, 0.918721, -0.953948, -2.9395, -0.955365}, {0.802117, -0.80285, 0.803308, 4.72163, 4.72576, 4.72864, 3.20871, 3.21151, -0.0600473, -2.43695, -0.833412, 0.832954, -2.25452, 6.1509, -2.25787, -14.8556, -14.8686, 2.26272, -4.95766, -2.97727, -0.918721, 2.02076, 2.02253, -2.02253, 14.7055, 6.31092, -2.41309, -0.953948, -2.9395, -0.955365}, {0.802117, -0.80285, 0.803308, -1.57388, -1.57525, -1.57621, -9.62613, -9.63454, 0.180142, -2.43695, -0.833412, 0.832954, 0.953948, 2.9395, 0.955365, 4.27475, 4.27848, 8.32739, -8.16613, 0.234124, -4.13196, 2.02076, 2.02253, -2.02253, 4.95766, 2.97727, 0.918721, 8.79385, 0.394151, -4.28718}, {0.802117, -0.80285, 0.803308, -1.57388, -1.57525, -1.57621, 3.20871, 3.21151, -0.0600473, 7.31085, 2.50024, -2.49886, 0.953948, 2.9395, 0.955365, -2.02076, -2.02253, 2.02253, -4.95766, -2.97727, -0.918721, -1.18771, 5.23393, -5.23576, 11.2532, 9.27829, 7.22358, -13.7888, -15.7856, -0.715176}, {5.36291, -5.36781, 5.37088, 0, -3.15057, 0, -1.85687, -1.41402, 1.41389, 3.64451, 2.77532, 0.376399, 2.20964, 14.2849, 2.21292, 2.29522, 5.64214, -1.74767, 11.9323, 5.19225, -5.19032, -16.8733, -16.7434, 0.242074, -4.50486, 0.463834, -0.465254, -2.20964, -1.68266, -2.21292}, {-1.78764, 1.78927, -1.79029, 0, 9.4517, 0, -1.85687, -1.41402, 1.41389, 3.64451, 2.77532, 0.376399, 9.36019, -5.47442, 9.37409, 9.72271, 11.2982, -7.40324, 4.50486, -0.463834, 0.465254, -2.29522, -5.64214, 1.74767, -19.0829, -10.6374, -1.97085, -2.20964, -1.68266, -2.21292}, {-1.78764, 1.78927, -1.79029, 0, -3.15057, 0, 5.57061, 4.24206, -4.24168, 3.64451, 2.77532, 0.376399, 2.20964, 1.68266, 2.21292, 2.29522, 18.2444, -1.74767, 11.6554, -7.62091, 7.62642, -2.29522, -5.64214, 1.74767, -4.50486, 0.463834, -0.465254, -16.7877, -12.7839, -3.71852}, {-1.78764, 1.78927, -1.79029, 0, -3.15057, 0, -1.85687, -1.41402, 1.41389, -10.9335, -8.32596, -1.1292, 2.20964, 1.68266, 2.21292, 2.29522, 5.64214, -1.74767, 4.50486, -0.463834, 0.465254, 4.85533, -12.7992, 8.90884, -4.50486, 13.0661, -0.465254, 5.21784, 3.97342, -7.8685}, {-3.12618, -1.69082, 4.8169, -0.776768, 0.776768, 1.71093, 1.29482, -1.29482, 0.513906, -1.56011, -0.0455553, -0.619199, 2.77915, -4.76387, -6.97386, -0.640348, 0.640348, -2.75005, -8.06782, 6.08311, -0.706171, 6.8808, -0.458127, 5.22684, 2.88854, -0.903828, -1.34945, 0.32792, 1.6568, 0.130149}, {1.04206, 0.563608, -1.60563, 2.3303, -2.3303, -5.13278, 1.29482, -1.29482, 0.513906, -1.56011, -0.0455553, -0.619199, -4.49616, -3.91123, 6.29239, -5.81963, 5.81963, -4.80567, -2.88854, 0.903828, 1.34945, 0.640348, -0.640348, 2.75005, 9.12899, -0.721607, 1.12734, 0.32792, 1.6568, 0.130149}, {1.04206, 0.563608, -1.60563, -0.776768, 0.776768, 1.71093, -3.88446, 3.88446, -1.54172, -1.56011, -0.0455553, -0.619199, -0.32792, -1.6568, -0.130149, 2.46672, -2.46672, -9.59376, -7.05678, -1.3506, 7.77199, 0.640348, -0.640348, 2.75005, 2.88854, -0.903828, -1.34945, 6.56837, 1.83902, 2.60694}, {1.04206, 0.563608, -1.60563, -0.776768, 0.776768, 1.71093, 1.29482, -1.29482, 0.513906, 4.68034, 0.136666, 1.8576, -0.32792, -1.6568, -0.130149, -0.640348, 0.640348, -2.75005, -2.88854, 0.903828, 1.34945, -3.52789, -2.89478, 9.17259, 5.99561, -4.0109, -8.19316, -4.85136, 6.83608, -1.92547}, {0, 4.18682, -1.69558, 0, 0.106442, -1.13019, 1.31177, 1.47434, 0.246037, -1.31177, -0.185178, 0.318964, 0, 1.16773, 5.21915, -1.62143, -1.95396, 1.09288, -6.86849, -5.9947, -1.98688, 6.86849, 2.69467, -2.36873, 1.62143, 0.0973232, 1.00273, 0, -1.5935, -0.69838}, {6.66134e-16, -1.39561, 0.565192, -4.14281e-16, -0.319327, 3.39058, 1.31177, 1.47434, 0.246037, -1.31177, -0.185178, 0.318964, -3.55271e-15, 7.17592, -1.56239, -6.86849, -7.85133, 0.108727, -1.62143, -0.0973232, -1.00273, 1.62143, 1.95396, -1.09288, 6.86849, 0.838037, -0.273122, 1.11022e-15, -1.5935, -0.69838}, {6.66134e-16, -1.39561, 0.565192, -3.97019e-16, 0.106442, -1.13019, -3.9353, -4.42303, -0.738112, -1.31177, -0.185178, 0.318964, -2.22045e-16, 1.5935, 0.69838, -1.62143, -2.37973, 5.61365, -1.62143, 5.48511, -3.2635, 1.62143, 1.95396, -1.09288, 1.62143, 0.0973232, 1.00273, 5.24706, -0.852781, -1.97424}, {-2.22045e-16, -1.39561, 0.565192, 3.45234e-17, 0.106442, -1.13019, 1.31177, 1.47434, 0.246037, 3.9353, 0.555535, -0.956892, 2.22045e-16, 1.5935, 0.69838, -1.62143, -1.95396, 1.09288, -1.62143, -0.0973232, -1.00273, 1.62143, 7.53639, -3.35364, 1.62143, -0.328446, 5.52351, -5.24706, -7.49087, -1.68253}, {3.02999, -1.83569, -4.62902, -2.0783, 1.32959, -1.74182, 0.665193, -1.94149, 0.198817, 2.4231, 0, 0, 12.1305, -7.71818, 7.21305, 1.74669, 0.756347, 1.90726, -2.23457, 9.40942, -2.94828, -11.4391, -0.756347, -1.90726, -0.4262, -1.64347, 2.15301, -3.81734, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, 6.23489, -3.98877, 5.22547, 0.665193, -1.94149, 0.198817, 2.4231, 1.16789e-15, -1.19597e-16, 7.85732, -4.8474, -5.92628, -0.91408, 8.5223, 1.11199, 0.4262, 1.64347, -2.15301, -1.74669, -0.756347, -1.90726, -10.1186, -1.64347, 2.15301, -3.81734, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, -2.0783, 1.32959, -1.74182, -1.99558, 5.82447, -0.59645, 2.4231, 0, 0, 3.81734, -2.39981, 0.245751, 10.0599, -4.56202, 8.87456, 4.46618, -0.804126, -8.32504, -1.74669, -0.756347, -1.90726, -0.4262, -1.64347, 2.15301, -13.5097, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, -2.0783, 1.32959, -1.74182, 0.665193, -1.94149, 0.198817, -7.2693, 0, 0, 3.81734, -2.39981, 0.245751, 1.74669, 0.756347, 1.90726, 0.4262, 1.64347, -2.15301, 2.29329, -3.20394, -8.07929, 7.88699, -6.96183, 9.12031, -6.47811, 10.1658, -1.04102}, {-1.1204, -10.941, -3.69733, -1.78885, -1.78885, 0.204309, 1.41539, -1.85814, 0.960835, 0, 0, -2.39759, 8.90493, 4.85864, -2.59316, 0.461631, 4.50793, -1.4402, -7.87269, 5.2214, -6.55438, -0.461631, -4.50793, 11.0306, 2.21115, 2.21115, 2.71104, -1.74951, 2.29678, 1.77593}, {0.373467, 3.64699, 1.23244, 5.36656, 5.36656, -0.612928, 1.41539, -1.85814, 0.960835, 0, 0, -2.39759, 0.255645, -16.8847, -6.70571, -5.19992, 11.9405, -5.28354, -2.21115, -2.21115, -2.71104, -0.461631, -4.50793, 1.4402, 2.21115, 2.21115, 12.3014, -1.74951, 2.29678, 1.77593}, {0.373467, 3.64699, 1.23244, -1.78885, -1.78885, 0.204309, -4.24616, 5.57441, -2.88251, 0, 0, -2.39759, 1.74951, -2.29678, -1.77593, 7.61705, 11.6633, -2.25744, -3.70501, -16.7991, -7.64082, -0.461631, -4.50793, 1.4402, 2.21115, 2.21115, 2.71104, -1.74951, 2.29678, 11.3663}, {0.373467, 3.64699, 1.23244, -1.78885, -1.78885, 0.204309, 1.41539, -1.85814, 0.960835, 0, 0, 7.19277, 1.74951, -2.29678, -1.77593, 0.461631, 4.50793, -1.4402, -2.21115, -2.21115, -2.71104, -1.9555, -19.0959, -3.48958, 9.36656, 9.36656, 1.89381, -7.41106, 9.72932, -2.06741}, {3.67635, 0.128375, 3.75827, 1.3465, -0.311871, 0.167791, -0.0738998, -1.11087, 1.10252, -0.0471455, 1.46553, -0.0175582, -5.53561, 1.68587, 0.669927, -1.57302, 1.7586, -1.5702, 1.90169, 5.86948, -4.2244, 1.7616, -7.62073, 1.64043, -1.60609, -1.426, -0.185698, 0.14962, -0.438387, -1.34109}, {-1.22545, -0.0427917, -1.25276, -4.03949, 0.935613, -0.503374, -0.0738998, -1.11087, 1.10252, -0.0471455, 1.46553, -0.0175582, 4.75218, 0.609554, 6.35212, -1.27742, 6.20208, -5.98029, 1.60609, 1.426, 0.185698, 1.57302, -1.7586, 1.5702, -1.4175, -7.28813, -0.115465, 0.14962, -0.438387, -1.34109}, {-1.22545, -0.0427917, -1.25276, 1.3465, -0.311871, 0.167791, 0.221699, 3.33261, -3.30757, -0.0471455, 1.46553, -0.0175582, -0.14962, 0.438387, 1.34109, -6.959, 3.00609, -2.24136, 6.50789, 1.59717, 5.19673, 1.57302, -1.7586, 1.5702, -1.60609, -1.426, -0.185698, 0.338202, -6.30052, -1.27086}, {-1.22545, -0.0427917, -1.25276, 1.3465, -0.311871, 0.167791, -0.0738998, -1.11087, 1.10252, 0.141437, -4.3966, 0.0526746, -0.14962, 0.438387, 1.34109, -1.57302, 1.7586, -1.5702, 1.60609, 1.426, 0.185698, 6.47482, -1.58744, 6.58122, -6.99207, -0.17852, -0.856863, 0.445219, 4.00509, -5.75119}, {3.98391, -5.22497, -0.407969, -0.61239, -1.54296, -1.54296, -3.86726e-16, 3.96024e-17, 1.60567, 1.94036, -0.198701, -0.198701, 4.84797, 5.92622, 7.91093, 0.756955, 1.9072, -0.0775154, 1.64146, -2.15281, -8.57548, -8.51839, -1.1124, 0.87232, -1.64146, 2.15281, 2.15281, -2.39842, 0.245608, -1.73911}, {-1.32797, 1.74166, 0.13599, 1.83717, 4.62887, 4.62887, -1.16018e-15, 1.18807e-16, 1.60567, 1.94036, -0.198701, -0.198701, 7.71029, -7.21224, 1.19515, 0.756955, 1.9072, -6.50019, 1.64146, -2.15281, -2.15281, -0.756955, -1.9072, 0.0775154, -9.4029, 2.94761, 2.94761, -2.39842, 0.245608, -1.73911}, {-1.32797, 1.74166, 0.13599, -0.61239, -1.54296, -1.54296, 0, 0, -4.817, 1.94036, -0.198701, -0.198701, 2.39842, -0.245608, 1.73911, 3.20651, 8.07903, 6.09431, 6.95334, -9.11944, -2.69677, -0.756955, -1.9072, 0.0775154, -1.64146, 2.15281, 2.15281, -10.1599, 1.04041, -0.944303}, {-1.32797, 1.74166, 0.13599, -0.61239, -1.54296, -1.54296, 1.16018e-15, -1.18807e-16, 1.60567, -5.82108, 0.596103, 0.596103, 2.39842, -0.245608, 1.73911, 0.756955, 1.9072, -0.0775154, 1.64146, -2.15281, -2.15281, 4.55492, -8.87383, -0.466443, 0.808098, 8.32463, 8.32463, -2.39842, 0.245608, -8.16178}, {4.24495, 4.24616, 5.57441, 2.77721, -0.373467, 3.64699, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -12.7926, 3.70501, -16.7991, 0.461499, 0.461631, -4.50793, 18.2456, 1.74951, 2.29678, -7.61487, -7.61705, 11.6633, -5.64333, -1.74951, -2.29678, 1.6838, -2.21115, 2.21115}, {-1.41498, -1.41539, -1.85814, -8.33162, 1.1204, -10.941, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, 3.97613, 7.87269, 5.2214, 13.0638, 0.461631, -4.50793, 5.64333, 1.74951, 2.29678, -0.461499, -0.461631, 4.50793, -12.7967, -8.90493, 4.85864, 1.6838, -2.21115, 2.21115}, {-1.41498, -1.41539, -1.85814, 2.77721, -0.373467, 3.64699, 9.4517, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 2.21115, -2.21115, -10.6473, 1.9555, -19.0959, 11.3033, 7.41106, 9.72932, -0.461499, -0.461631, 4.50793, -5.64333, -1.74951, -2.29678, -5.46957, -9.36656, 9.36656}, {-1.41498, -1.41539, -1.85814, 2.77721, -0.373467, 3.64699, -3.15057, 0, 0, -5.36503, -5.36656, 5.36656, -1.6838, 2.21115, -2.21115, 0.461499, 0.461631, -4.50793, 5.64333, 1.74951, 2.29678, 5.19843, 5.19992, 11.9405, -16.7522, -0.255645, -16.8847, 14.2861, -2.21115, 2.21115}, {-5.69487, -2.66454e-15, -8.88178e-16, -0.76309, -0.00636856, -2.01559, -0.460311, 1.45577, 1.44144, -0.67489, -1.4494, 0.574147, 1.64917, 0.0333462, 10.5538, 1.51221, -1.79156, 0.709685, 0.063805, -7.62252, -7.54749, 1.18735, 7.58918, -3.00627, 1.77744, 1.79943, 1.78172, 1.40319, -0.00787198, -2.49141}, {1.89829, -1.55431e-15, 3.33067e-16, 2.28927, 0.0191057, 6.04677, -0.460311, 1.45577, 1.44144, -0.67489, -1.4494, 0.574147, -8.99635, 0.00787198, 2.49141, 3.35345, -7.61465, -5.05609, -1.77744, -1.79943, -1.78172, -1.51221, 1.79156, -0.709685, 4.477, 7.59705, -0.514866, 1.40319, -0.00787198, -2.49141}, {1.89829, -1.9984e-15, -1.22125e-15, -0.76309, -0.00636856, -2.01559, 1.38093, -4.36732, -4.32433, -0.67489, -1.4494, 0.574147, -1.40319, 0.00787198, 2.49141, 4.56457, -1.76609, 8.77205, -9.3706, -1.79943, -1.78172, -1.51221, 1.79156, -0.709685, 1.77744, 1.79943, 1.78172, 4.10275, 5.78974, -4.78799}, {1.89829, 1.33227e-15, -5.55112e-16, -0.76309, -0.00636856, -2.01559, -0.460311, 1.45577, 1.44144, 2.02467, 4.34821, -1.72244, -1.40319, 0.00787198, 2.49141, 1.51221, -1.79156, 0.709685, -1.77744, -1.79943, -1.78172, -9.10537, 1.79156, -0.709685, 4.8298, 1.82491, 9.84408, 3.24443, -5.83096, -8.25718}, {-1.1204, -4.37783, -10.941, 1.41539, 0.69601, -1.85814, -1.78885, 0.0170635, -1.78885, 0, -2.17235, 0, -7.87269, -5.44812, 5.2214, 0.461631, -0.881407, 4.50793, 8.90493, -1.89311, 4.85864, -0.461631, 9.57081, -4.50793, -1.74951, 1.82486, 2.29678, 2.21115, 2.66408, 2.21115}, {0.373467, 1.45928, 3.64699, -4.24616, -2.08803, 5.57441, -1.78885, 0.0170635, -1.78885, 0, -2.17235, 0, -3.70501, -8.50119, -16.7991, 7.61705, -0.949661, 11.6633, 1.74951, -1.82486, -2.29678, -0.461631, 0.881407, -4.50793, -1.74951, 10.5143, 2.29678, 2.21115, 2.66408, 2.21115}, {0.373467, 1.45928, 3.64699, 1.41539, 0.69601, -1.85814, 5.36656, -0.0511904, 5.36656, 0, -2.17235, 0, -2.21115, -2.66408, -2.21115, -5.19992, -3.66545, 11.9405, 0.255645, -7.66197, -16.8847, -0.461631, 0.881407, -4.50793, -1.74951, 1.82486, 2.29678, 2.21115, 11.3535, 2.21115}, {0.373467, 1.45928, 3.64699, 1.41539, 0.69601, -1.85814, -1.78885, 0.0170635, -1.78885, 0, 6.51705, 0, -2.21115, -2.66408, -2.21115, 0.461631, -0.881407, 4.50793, 1.74951, -1.82486, -2.29678, -1.9555, -4.9557, -19.0959, -7.41106, -0.959181, 9.72932, 9.36656, 2.59583, 9.36656}, {-4.15743, -0.83732, 1.25624, -1.32462, -1.53355, 0.226806, 0.107516, 1.61619, -1.60405, -0.168703, -0.361739, 1.79599, 5.22286, 7.6848, -0.669975, 1.50443, -0.10214, 1.70236, -2.27592, -8.80746, 8.91649, -0.829614, 1.5491, -8.88631, 1.84585, 2.34271, -2.50031, 0.0756322, -1.55058, -0.237251}, {1.38581, 0.279107, -0.418747, 3.97387, 4.60066, -0.680419, 0.107516, 1.61619, -1.60405, -0.168703, -0.361739, 1.79599, -5.61888, 0.434156, 1.91224, 1.07436, -6.56689, 8.11854, -1.84585, -2.34271, 2.50031, -1.50443, 0.10214, -1.70236, 2.52067, 3.78967, -9.68425, 0.0756322, -1.55058, -0.237251}, {1.38581, 0.279107, -0.418747, -1.32462, -1.53355, 0.226806, -0.322547, -4.84856, 4.81214, -0.168703, -0.361739, 1.79599, -0.0756322, 1.55058, 0.237251, 6.80292, 6.03208, 0.795135, -7.3891, -3.45914, 4.1753, -1.50443, 0.10214, -1.70236, 1.84585, 2.34271, -2.50031, 0.750446, -0.103625, -7.4212}, {1.38581, 0.279107, -0.418747, -1.32462, -1.53355, 0.226806, 0.107516, 1.61619, -1.60405, 0.50611, 1.08522, -5.38796, -0.0756322, 1.55058, 0.237251, 1.50443, -0.10214, 1.70236, -1.84585, -2.34271, 2.50031, -7.04767, -1.01429, -0.0273746, 7.14434, 8.47693, -3.40753, -0.354431, -8.01533, 6.17893}, {-9.45441, -1.42109e-14, 0, -1.78885, -1.78885, 1.78885, -1.36261, -1.36216, -1.78885, 0, 3.15102, 0, 5.47113, 9.36656, -9.36656, 3.89543, 3.89487, 0, 3.23931, 7.13238, 9.36656, -3.89543, -16.4989, 0, 2.21115, -1.68373, -2.21115, 1.68428, -2.21115, 2.21115}, {3.15147, 5.77316e-15, -1.39933e-15, 5.36656, 5.36656, -5.36656, -1.36261, -1.36216, -1.78885, 1.06591e-15, 3.15102, 1.39933e-15, -14.2902, 2.21115, -2.21115, 9.34589, 9.34353, 7.15542, -2.21115, 1.68373, 2.21115, -3.89543, -3.89487, 3.47389e-31, 2.21115, -14.2878, -2.21115, 1.68428, -2.21115, 2.21115}, {3.15147, 1.77636e-15, 2.66454e-15, -1.78885, -1.78885, 1.78885, 4.08784, 4.08649, 5.36656, 0, 3.15102, 0, -1.68428, 2.21115, -2.21115, 11.0508, 11.0503, -7.15542, -14.817, 1.68373, 2.21115, -3.89543, -3.89487, -3.55271e-15, 2.21115, -1.68373, -2.21115, 1.68428, -14.8152, 2.21115}, {3.15147, -2.66454e-15, 0, -1.78885, -1.78885, 1.78885, -1.36261, -1.36216, -1.78885, 0, -9.45305, 0, -1.68428, 2.21115, -2.21115, 3.89543, 3.89487, 0, -2.21115, 1.68373, 2.21115, -16.5013, -3.89487, 0, 9.36656, 5.47169, -9.36656, 7.13474, 3.23751, 9.36656}, {1.36235e-15, 1.07667, 3.62612, 1.31177, 0.0458057, 1.34099, -1.31177, -1.15409, -0.162924, 1.0026e-17, 1.46718, 0.0306378, -6.86849, 0.20377, -5.52749, -6.66134e-16, 1.36992, -1.45618, 6.86849, 6.48653, 2.34713, 6.2603e-16, -7.23863, 1.33362, -1.62143, -1.87015, -1.69543, 1.62143, -0.386993, 0.163515}, {-7.28501e-17, -0.358889, -1.20871, -3.9353, -0.137417, -4.02298, -1.31177, -1.15409, -0.162924, 1.18307e-15, 1.46718, 0.0306378, -1.62143, 1.82255, 4.67132, 5.24706, 5.9863, -0.804479, 1.62143, 1.87015, 1.69543, -1.55431e-15, -1.36992, 1.45618, -1.62143, -7.73886, -1.81798, 1.62143, -0.386993, 0.163515}, {5.92827e-17, -0.358889, -1.20871, 1.31177, 0.0458057, 1.34099, 3.9353, 3.46228, 0.488772, -9.47461e-16, 1.46718, 0.0306378, -1.62143, 0.386993, -0.163515, -5.24706, 1.1867, -6.82015, 1.62143, 3.30571, 6.53026, 1.11022e-15, -1.36992, 1.45618, -1.62143, -1.87015, -1.69543, 1.62143, -6.25571, 0.0409633}, {0, -0.358889, -1.20871, 1.31177, 0.0458057, 1.34099, -1.31177, -1.15409, -0.162924, 0, -4.40153, -0.0919135, -1.62143, 0.386993, -0.163515, 0, 1.36992, -1.45618, 1.62143, 1.87015, 1.69543, 0, 0.0656375, 6.29101, -6.86849, -2.05337, -7.05941, 6.86849, 4.22939, 0.815211}, {1.26288e-15, -3.55271e-15, -3.26126, -1.4431, -0.571101, -0.587405, 1.45561, -1.44292, 0.31363, -0.0125109, 2.01402, -0.813311, 7.55617, 2.99032, 1.73198, -0.0154644, 2.48947, 0.338405, -7.62167, 7.55524, -2.9859, 0.0655081, -10.5456, 2.91484, 1.79923, -1.78355, 1.73138, -1.78377, -0.70592, 0.61764}, {9.0726e-16, -4.44089e-16, 1.08709, 4.3293, 1.7133, 1.76222, 1.45561, -1.44292, 0.31363, -0.0125109, 2.01402, -0.813311, 1.78377, 0.70592, -4.96598, -5.83791, 8.26116, -0.916114, -1.79923, 1.78355, -1.73138, 0.0154644, -2.48947, -0.338405, 1.84928, -9.83965, 4.98462, -1.78377, -0.70592, 0.61764}, {4.63171e-16, 8.88178e-16, 1.08709, -1.4431, -0.571101, -0.587405, -4.36683, 4.32877, -0.940889, -0.0125109, 2.01402, -0.813311, 1.78377, 0.70592, -0.61764, 5.75693, 4.77387, 2.68803, -1.79923, 1.78355, -6.07972, 0.0154644, -2.48947, -0.338405, 1.79923, -1.78355, 1.73138, -1.73373, -8.76202, 3.87088}, {0, -4.44089e-16, 1.08709, -1.4431, -0.571101, -0.587405, 1.45561, -1.44292, 0.31363, 0.0375328, -6.04207, 2.43993, 1.78377, 0.70592, -0.61764, -0.0154644, 2.48947, 0.338405, -1.79923, 1.78355, -1.73138, 0.0154644, -2.48947, -4.68675, 7.57163, 0.500853, 4.081, -7.60621, 5.06577, -0.63688}, {2.18368e-11, -2.07612e-11, -5.36656, -2.34313, 0, 0, 2.34313, -2.34313, -1.78885, 0, 2.34313, 0, 12.2688, -8.55449e-12, -2.21115, -8.99725e-12, 2.89626, 2.21115, -12.2688, 12.2688, 7.15542, 8.99725e-12, -12.2688, -2.21115, 2.89626, -2.89626, 0, -2.89626, 8.55449e-12, 2.21115}, {-7.27948e-12, 6.92291e-12, 1.78885, 7.02938, 0, 0, 2.34313, -2.34313, -1.78885, -1.36297e-15, 2.34313, 1.04056e-15, 2.89626, -3.62483e-11, -9.36656, -9.3725, 12.2688, 9.36656, -2.89626, 2.89626, 8.4211e-16, 8.99947e-12, -2.89626, -2.21115, 2.89626, -12.2688, -5.44843e-15, -2.89626, 8.55715e-12, 2.21115}, {-7.27773e-12, 6.92024e-12, 1.78885, -2.34313, 0, 0, -7.02938, 7.02938, 5.36656, 0, 2.34313, 0, 2.89626, -8.55405e-12, -2.21115, 9.3725, 2.89626, 2.21115, -2.89626, 2.89626, -7.15542, 8.99636e-12, -2.89626, -2.21115, 2.89626, -2.89626, 0, -2.89626, -9.3725, 2.21115}, {-7.27951e-12, 6.9198e-12, 1.78885, -2.34313, 0, 0, 2.34313, -2.34313, -1.78885, 0, -7.02938, 0, 2.89626, -8.55316e-12, -2.21115, -8.99814e-12, 2.89626, 2.21115, -2.89626, 2.89626, -4.44089e-16, 3.81171e-11, -2.89626, -9.36656, 12.2688, -2.89626, 0, -12.2688, 9.3725, 9.36656}, {0, -2.67212e-17, 7.02938, 0, -2.34313, 0, -1.78885, 2.34313, 2.34566, 1.78885, 1.02081e-11, -0.00253498, 0, 12.2688, 2.89626, 2.21115, 1.26184e-11, -2.8994, 9.36656, -12.2688, -9.38578, -9.36656, -5.34508e-11, 2.90954, -2.21115, 2.89626, 0.00313341, 0, -2.89626, -2.89626}, {0, 3.72666e-16, -2.34313, 0, 7.02938, 0, -1.78885, 2.34313, 2.34566, 1.78885, 1.02097e-11, -0.00253498, 0, 2.89626, 12.2688, 9.36656, -9.3725, -12.282, 2.21115, -2.89626, -0.00313341, -2.21115, -1.26201e-11, 2.8994, -9.36656, 2.89626, 0.0132733, 0, -2.89626, -2.89626}, {0, -1.47432e-16, -2.34313, 0, -2.34313, 0, 5.36656, -7.02938, -7.03698, 1.78885, 1.02102e-11, -0.00253498, 0, 2.89626, 2.89626, 2.21115, 9.3725, -2.8994, 2.21115, -2.89626, 9.36937, -2.21115, -1.26201e-11, 2.8994, -2.21115, 2.89626, 0.00313341, -7.15542, -2.89626, -2.88612}, {-2.22045e-16, -3.98999e-17, -2.34313, 0, -2.34313, 0, -1.78885, 2.34313, 2.34566, -5.36656, -3.06329e-11, 0.00760494, 4.44089e-16, 2.89626, 2.89626, 2.21115, 1.26215e-11, -2.8994, 2.21115, -2.89626, -0.00313341, -2.21115, -1.26209e-11, 12.2719, -2.21115, 12.2688, 0.00313341, 7.15542, -12.2688, -12.2789}, {3.55271e-15, -9.45441, -2.66454e-14, 1.78885, -1.78885, -1.78885, -1.78885, -1.36261, -1.36261, 0, 0, 3.15147, -9.36656, 5.47113, 9.36656, -1.77636e-15, 3.89543, 3.89543, 9.36656, 3.23931, 7.13474, 1.77636e-15, -3.89543, -16.5013, -2.21115, 2.21115, -1.68428, 2.21115, 1.68428, -2.21115}, {3.76824e-16, 3.15147, -2.22045e-15, -5.36656, 5.36656, 5.36656, -1.78885, -1.36261, -1.36261, 1.39953e-15, 1.06606e-15, 3.15147, -2.21115, -14.2902, 2.21115, 7.15542, 9.34589, 9.34589, 2.21115, -2.21115, 1.68428, -2.22045e-15, -3.89543, -3.89543, -2.21115, 2.21115, -14.2902, 2.21115, 1.68428, -2.21115}, {0, 3.15147, -7.10543e-15, 1.78885, -1.78885, -1.78885, 5.36656, 4.08784, 4.08784, 0, 0, 3.15147, -2.21115, -1.68428, 2.21115, -7.15542, 11.0508, 11.0508, 2.21115, -14.817, 1.68428, 0, -3.89543, -3.89543, -2.21115, 2.21115, -1.68428, 2.21115, 1.68428, -14.817}, {-5.55112e-15, 3.15147, 4.44089e-16, 1.78885, -1.78885, -1.78885, -1.78885, -1.36261, -1.36261, 0, 0, -9.45441, -2.21115, -1.68428, 2.21115, -7.10543e-15, 3.89543, 3.89543, 2.21115, -2.21115, 1.68428, 3.01981e-14, -16.5013, -3.89543, -9.36656, 9.36656, 5.47113, 9.36656, 7.13474, 3.23931}, {-5.36656, 7.03835, 7.02938, -1.78885, -6.94208e-12, -7.11741e-12, 0, 2.34612, 2.72942e-15, 0, 0, 2.34313, 7.15542, 2.89996, 2.89626, 2.21115, -2.89996, 8.79423e-12, -2.21115, -9.38447, 2.89626, -2.21115, 2.89996, -9.3725, 2.21115, 8.58089e-12, -2.89626, 0, -2.89996, -2.89626}, {1.78885, -2.34612, -2.34313, 5.36656, 2.08278e-11, 2.13522e-11, 0, 2.34612, 1.36471e-15, 0, -1.36471e-15, 2.34313, -7.15542, 12.2844, 12.2688, 2.21115, -12.2844, 8.79045e-12, -2.21115, -8.58264e-12, 2.89626, -2.21115, 2.89996, -8.79533e-12, 2.21115, 8.58868e-12, -12.2688, 0, -2.89996, -2.89626}, {1.78885, -2.34612, -2.34313, -1.78885, -6.94417e-12, -7.11741e-12, 0, -7.03835, 0, 0, 0, 2.34313, -4.44089e-16, 2.89996, 2.89626, 9.36656, -2.89996, 3.72672e-11, -9.36656, 9.38447, 12.2688, -2.21115, 2.89996, -8.79702e-12, 2.21115, 8.58346e-12, -2.89626, 0, -2.89996, -12.2688}, {1.78885, -2.34612, -2.34313, -1.78885, -6.94104e-12, -7.11845e-12, 0, 2.34612, 2.72942e-15, 0, 0, -7.02938, -4.44089e-16, 2.89996, 2.89626, 2.21115, -2.89996, 8.79551e-12, -2.21115, -8.57902e-12, 2.89626, -9.36656, 12.2844, 9.3725, 9.36656, 3.63438e-11, -2.89626, 0, -12.2844, -2.89626}, {5.36656, -5.36656, 5.36656, 3.15147, 0, 0, -1.36261, -1.78885, -1.36216, 0, 0, 3.15102, -14.2902, -2.21115, 2.21115, -2.21115, 2.21115, 1.68373, 9.34589, 7.15542, 9.34353, 2.21115, -2.21115, -14.2878, -3.89543, 0, -3.89487, 1.68428, 2.21115, -2.21115}, {-1.78885, 1.78885, -1.78885, -9.45441, -4.1986e-15, -1.05928e-14, -1.36261, -1.78885, -1.36216, 1.06591e-15, 1.39933e-15, 3.15102, 5.47113, -9.36656, 9.36656, 3.23931, 9.36656, 7.13238, 3.89543, 3.0155e-15, 3.89487, 2.21115, -2.21115, -1.68373, -3.89543, -9.05692e-15, -16.4989, 1.68428, 2.21115, -2.21115}, {-1.78885, 1.78885, -1.78885, 3.15147, 0, 0, 4.08784, 5.36656, 4.08649, 0, 0, 3.15102, -1.68428, -2.21115, 2.21115, -14.817, 2.21115, 1.68373, 11.0508, -7.15542, 11.0503, 2.21115, -2.21115, -1.68373, -3.89543, 0, -3.89487, 1.68428, 2.21115, -14.8152}, {-1.78885, 1.78885, -1.78885, 3.15147, 0, 0, -1.36261, -1.78885, -1.36216, 0, 0, -9.45305, -1.68428, -2.21115, 2.21115, -2.21115, 2.21115, 1.68373, 3.89543, -4.44089e-16, 3.89487, 9.36656, -9.36656, 5.47169, -16.5013, 0, -3.89487, 7.13474, 9.36656, 3.23751}, {3.37408, 4.04519, 4.04519, 1.73606, 1.52739, 0.215622, 1.28983, 0.0265046, 1.33827, -1.90119, -0.205494, -0.205494, -7.69991, -6.33079, 0.5377, -3.7402, -1.92072, -1.92072, -5.36342, 1.52793, -5.34056, 11.345, 2.74269, 2.74269, 0.204116, -1.63395, -0.0125188, 0.755686, 0.221243, -1.40019}, {-1.12469, -1.3484, -1.3484, -5.20817, -4.58216, -0.646866, 1.28983, 0.0265046, 1.33827, -1.90119, -0.205494, -0.205494, 3.74309, 5.17235, 6.79378, -8.89951, -2.02673, -7.27379, -0.204116, 1.63395, 0.0125188, 3.7402, 1.92072, 1.92072, 7.80888, -0.811974, 0.809457, 0.755686, 0.221243, -1.40019}, {-1.12469, -1.3484, -1.3484, 1.73606, 1.52739, 0.215622, -3.86948, -0.0795138, -4.01481, -1.90119, -0.205494, -0.205494, -0.755686, -0.221243, 1.40019, -10.6844, -8.03027, -2.7832, 4.29466, 7.02754, 5.40611, 3.7402, 1.92072, 1.92072, 0.204116, -1.63395, -0.0125188, 8.36045, 1.04322, -0.578212}, {-1.12469, -1.3484, -1.3484, 1.73606, 1.52739, 0.215622, 1.28983, 0.0265046, 1.33827, 5.70357, 0.616482, 0.616482, -0.755686, -0.221243, 1.40019, -3.7402, -1.92072, -1.92072, -0.204116, 1.63395, 0.0125188, 8.23897, 7.31431, 7.31431, -6.74011, -7.7435, -0.875007, -4.40362, 0.115225, -6.75327}, {7.02938, 7.0206, 5.36656, -2.72401e-15, 2.34147, -1.03982e-15, 2.34313, 0, 0, -1.04066e-11, -0.00126659, 1.78885, 2.89626, -9.36743, 2.21115, -2.89626, -2.89421, 1.28529e-15, -9.3725, 2.89265, 2.21115, 2.89626, 2.89928, -7.15542, 1.28666e-11, -2.89265, -2.21115, -2.89626, 0.00156559, -2.21115}, {-2.34313, -2.3402, -1.78885, 4.08602e-15, -7.0244, -3.11946e-15, 2.34313, 7.36763e-19, -1.04056e-15, -1.0403e-11, -0.00126659, 1.78885, 12.2688, 9.35923, 9.36656, -12.2688, -2.89421, 4.16314e-15, -1.28599e-11, 2.89265, 2.21115, 2.89626, 2.89421, 4.43179e-16, 5.44723e-11, -2.88758, -9.36656, -2.89626, 0.00156559, -2.21115}, {-2.34313, -2.3402, -1.78885, -2.41965e-26, 2.34147, 4.15928e-15, -7.02938, 0, 0, -1.04066e-11, -0.00126659, 1.78885, 2.89626, -0.00156559, 2.21115, -2.89626, -12.2601, -2.17783e-14, 9.3725, 12.2534, 9.36656, 2.89626, 2.89421, 5.58524e-15, 1.28633e-11, -2.89265, -2.21115, -2.89626, 0.00663197, -9.36656}, {-2.34313, -2.3402, -1.78885, 6.05094e-27, 2.34147, -1.03982e-15, 2.34313, 0, 0, 3.12292e-11, 0.00379978, -5.36656, 2.89626, -0.00156559, 2.21115, -2.89626, -2.89421, 1.28529e-15, -1.28666e-11, 2.89265, 2.21115, 12.2688, 12.255, 7.15542, 1.28671e-11, -12.2585, -2.21115, -12.2688, 0.00156559, -2.21115}, {-3.69587, -1.12113, -5.61393, -0.115297, -1.49037, 0.58988, -0.136463, 0.136463, -2.07323, -0.980196, 0.980196, -0.387956, -0.919078, 7.34175, -5.40172, 0.311194, 1.67352, 1.83353, -0.80825, -1.17646, 8.54253, 3.60959, -5.59431, -0.281701, 1.3541, 0.630611, -0.249592, 1.38027, -1.38027, 3.0422}, {1.23196, 0.373711, 1.87131, 0.345892, 4.47111, -1.76964, -0.136463, 0.136463, -2.07323, -0.980196, 0.980196, -0.387956, -6.30809, -0.114578, -10.5274, 0.857047, 1.12767, 10.1265, -1.3541, -0.630611, 0.249592, -0.311194, -1.67352, -1.83353, 5.27489, -3.29017, 1.30223, 1.38027, -1.38027, 3.0422}, {1.23196, 0.373711, 1.87131, -0.115297, -1.49037, 0.58988, 0.40939, -0.40939, 6.2197, -0.980196, 0.980196, -0.387956, -1.38027, 1.38027, -3.0422, 0.772383, 7.635, -0.525997, -6.28193, -2.12546, -7.23564, -0.311194, -1.67352, -1.83353, 1.3541, 0.630611, -0.249592, 5.30105, -5.30105, 4.59402}, {1.23196, 0.373711, 1.87131, -0.115297, -1.49037, 0.58988, -0.136463, 0.136463, -2.07323, 2.94059, -2.94059, 1.16387, -1.38027, 1.38027, -3.0422, 0.311194, 1.67352, 1.83353, -1.3541, -0.630611, 0.249592, -5.23902, -3.16837, -9.31876, 1.81529, 6.59209, -2.60911, 1.92612, -1.92612, 11.3351}, {5.57441, -4.24616, -4.24616, 3.64699, 0.373467, -2.778, -1.78885, -1.78885, -1.78885, 0, 0, 3.15147, -16.7991, -3.70501, 12.7963, -2.29678, 1.74951, 5.64494, 11.6633, 7.61705, 7.61705, 2.29678, -1.74951, -18.2508, -4.50793, -0.461631, -0.461631, 2.21115, 2.21115, -1.68428}, {-1.85814, 1.41539, 1.41539, -10.941, -1.1204, 8.334, -1.78885, -1.78885, -1.78885, 1.39953e-15, 1.39953e-15, 3.15147, 5.2214, -7.87269, -3.97726, 4.85864, 8.90493, 12.8004, 4.50793, 0.461631, 0.461631, 2.29678, -1.74951, -5.64494, -4.50793, -0.461631, -13.0675, 2.21115, 2.21115, -1.68428}, {-1.85814, 1.41539, 1.41539, 3.64699, 0.373467, -2.778, 5.36656, 5.36656, 5.36656, 0, 0, 3.15147, -2.21115, -2.21115, 1.68428, -16.8847, 0.255645, 16.7569, 11.9405, -5.19992, -5.19992, 2.29678, -1.74951, -5.64494, -4.50793, -0.461631, -0.461631, 2.21115, 2.21115, -14.2902}, {-1.85814, 1.41539, 1.41539, 3.64699, 0.373467, -2.778, -1.78885, -1.78885, -1.78885, 0, 0, -9.45441, -2.21115, -2.21115, 1.68428, -2.29678, 1.74951, 5.64494, 4.50793, 0.461631, 0.461631, 9.72932, -7.41106, -11.3065, -19.0959, -1.9555, 10.6504, 9.36656, 9.36656, 5.47113}, {0.00760494, 5.36656, -0.00379978, 1.35906e-15, -2.07964e-15, 2.34147, -2.34059, 1.78885, -2.34273, 2.34313, 0, 0, 0.00313341, 2.21115, -12.2616, 2.89313, -2.21115, 0.00156559, 12.2586, -7.15542, 12.2651, -12.2656, 2.21115, -0.00156559, -2.89626, 2.57058e-15, -2.89421, -0.00313341, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, -8.16761e-15, 3.11946e-15, -7.0244, -2.34059, 1.78885, -2.34273, 2.34313, -1.04056e-15, 1.36274e-15, 0.0132733, 9.36656, -2.90084, 12.2555, -9.36656, 9.3725, 2.89626, -2.1274e-15, 2.89421, -2.89313, 2.21115, -0.00156559, -12.2688, 6.73371e-15, -2.89421, -0.00313341, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, 5.44802e-15, 0, 2.34147, 7.02177, -5.36656, 7.0282, 2.34313, 0, 0, 0.00313341, 2.21115, -2.89578, 2.89313, -2.21115, -9.3643, 2.9064, 7.15542, 2.88915, -2.89313, 2.21115, -0.00156559, -2.89626, 0, -2.89421, -9.37564, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, -1.36201e-15, 0, 2.34147, -2.34059, 1.78885, -2.34273, -7.02938, 0, 0, 0.00313341, 2.21115, -2.89578, 2.89313, -2.21115, 0.00156559, 2.89626, 4.44089e-16, 2.89421, -2.88299, 9.36656, -0.00663197, -2.89626, 0, -12.2601, 9.35923, -9.36656, 12.2667}, {-2.0499, 2.05263, 6.32666, 0.872781, 1.47234, -0.0861955, 0.376973, -0.375702, 1.61414, -1.93305, -0.412429, 0.580942, -5.41454, -6.86355, 3.05805, -1.54478, -1.35552, -1.88864, -2.81846, 2.81293, -5.84502, 9.277, 3.00524, -0.435124, 1.31057, -1.31012, -0.61154, 1.92342, 0.974184, -2.71327}, {0.683301, -0.68421, -2.10889, -2.61834, -4.41703, 0.258586, 0.376973, -0.375702, 1.61414, -1.93305, -0.412429, 0.580942, -4.65662, 1.76266, 11.1488, -3.05267, 0.147289, -8.34521, -1.31057, 1.31012, 0.61154, 1.54478, 1.35552, 1.88864, 9.04279, 0.339593, -2.93531, 1.92342, 0.974184, -2.71327}, {0.683301, -0.68421, -2.10889, 0.872781, 1.47234, -0.0861955, -1.13092, 1.12711, -4.84242, -1.93305, -0.412429, 0.580942, -1.92342, -0.974184, 2.71327, -5.0359, -7.24489, -1.54386, -4.04377, 4.04697, 9.04709, 1.54478, 1.35552, 1.88864, 1.31057, -1.31012, -0.61154, 9.65564, 2.6239, -5.03704}, {0.683301, -0.68421, -2.10889, 0.872781, 1.47234, -0.0861955, 0.376973, -0.375702, 1.61414, 5.79916, 1.23729, -1.74283, -1.92342, -0.974184, 2.71327, -1.54478, -1.35552, -1.88864, -1.31057, 1.31012, 0.61154, -1.18842, 4.09236, 10.3242, -2.18055, -7.19949, -0.266758, 0.41553, 2.47699, -9.16983}, {3.84226, 4.31846, 0.720662, 0.104325, 0.223697, -1.11063, 1.27099, 0.0329107, 0.803582, -0.0945646, 1.18288, 0.547265, 1.03685, 0.608011, 6.11224, -1.69999, -0.317185, 0.379527, -5.07191, 1.60698, -3.91068, 2.07825, -4.41433, -2.56859, -0.0120645, -1.73863, 0.696352, -1.45415, -1.5028, -1.66974}, {-1.28075, -1.43949, -0.240221, -0.312975, -0.671092, 3.33188, 1.27099, 0.0329107, 0.803582, -0.0945646, 1.18288, 0.547265, 6.57716, 7.26075, 2.63062, -6.78396, -0.448828, -2.8348, 0.0120645, 1.73863, -0.696352, 1.69999, 0.317185, -0.379527, 0.366194, -6.47014, -1.49271, -1.45415, -1.5028, -1.66974}, {-1.28075, -1.43949, -0.240221, 0.104325, 0.223697, -1.11063, -3.81298, -0.0987322, -2.41075, -0.0945646, 1.18288, 0.547265, 1.45415, 1.5028, 1.66974, -2.11729, -1.21197, 4.82203, 5.13508, 7.49658, 0.26453, 1.69999, 0.317185, -0.379527, -0.0120645, -1.73863, 0.696352, -1.07589, -6.23432, -3.8588}, {-1.28075, -1.43949, -0.240221, 0.104325, 0.223697, -1.11063, 1.27099, 0.0329107, 0.803582, 0.283694, -3.54864, -1.64179, 1.45415, 1.5028, 1.66974, -1.69999, -0.317185, 0.379527, 0.0120645, 1.73863, -0.696352, 6.823, 6.07514, 0.581356, -0.429365, -2.63341, 5.13886, -6.53812, -1.63444, -4.88406}, {6.08004, 1.41594, 0.0377686, 0.57469, 1.08447, 1.45022, 1.45199, 0.720135, -1.43763, 0, -1.33263, 0, -0.504, -5.09498, -7.57787, -2.50511, -2.23062, -0.0155615, -5.09761, -3.18728, 7.54308, 2.50511, 7.56114, 0.0155615, -0.710355, 0.306735, -1.79257, -1.79476, 0.757084, 1.77701}, {-2.02668, -0.471981, -0.0125895, -1.72407, -3.25342, -4.35065, 1.45199, 0.720135, -1.43763, 0, -1.33263, 0, 9.90148, 1.13084, -1.72665, -8.31307, -5.11116, 5.73495, 0.710355, -0.306735, 1.79257, 2.50511, 2.23062, 0.0155615, -0.710355, 5.63725, -1.79257, -1.79476, 0.757084, 1.77701}, {-2.02668, -0.471981, -0.0125895, 0.57469, 1.08447, 1.45022, -4.35597, -2.1604, 4.31288, 0, -1.33263, 0, 1.79476, -0.757084, -1.77701, -4.80387, -6.56852, -5.81643, 8.81707, 1.58119, 1.84292, 2.50511, 2.23062, 0.0155615, -0.710355, 0.306735, -1.79257, -1.79476, 6.0876, 1.77701}, {-2.02668, -0.471981, -0.0125895, 0.57469, 1.08447, 1.45022, 1.45199, 0.720135, -1.43763, 0, 3.99789, 0, 1.79476, -0.757084, -1.77701, -2.50511, -2.23062, -0.0155615, 0.710355, -0.306735, 1.79257, 10.6118, 4.11854, 0.0659197, -3.00911, -4.03116, -7.59343, -7.60272, -2.12346, 7.52752}, {-1.37732, 4.35589, 4.31302, -1.40475, 2.02293, -0.00626368, 1.89829, -6.72683e-16, 1.70116e-15, -0.952649, -0.570969, 1.44394, 6.78788, -8.79749, 1.80986, -0.610051, -2.50048, 0.00774234, -10.5071, 1.79473, 1.77706, 4.42065, 4.78436, -5.78349, 2.9139, -1.79473, -1.77706, -1.16888, 0.705756, -1.7848}, {0.459107, -1.45196, -1.43767, 4.21425, -6.0688, 0.018791, 1.89829, -4.0361e-16, 1.0207e-15, -0.952649, -0.570969, 1.44394, -0.66755, 5.1021, 7.53549, -8.20322, -2.50048, 0.00774234, -2.9139, 1.79473, 1.77706, 0.610051, 2.50048, -0.00774234, 6.7245, 0.489149, -7.5528, -1.16888, 0.705756, -1.7848}, {0.459107, -1.45196, -1.43767, -1.40475, 2.02293, -0.00626368, -5.69487, 0, 0, -0.952649, -0.570969, 1.44394, 1.16888, -0.705756, 1.7848, 5.00895, -10.5922, 0.0327971, -4.75033, 7.60258, 7.52775, 0.610051, 2.50048, -0.00774234, 2.9139, -1.79473, -1.77706, 2.64172, 2.98963, -7.56055}, {0.459107, -1.45196, -1.43767, -1.40475, 2.02293, -0.00626368, 1.89829, -1.34537e-16, 3.40233e-16, 2.85795, 1.71291, -4.33181, 1.16888, -0.705756, 1.7848, -0.610051, -2.50048, 0.00774234, -2.9139, 1.79473, 1.77706, -1.22638, 8.30834, 5.74295, 8.5329, -9.88646, -1.75201, -8.76204, 0.705756, -1.7848}, {-5.36656, -5.36656, -5.36656, -0.373467, -3.64699, -0.373467, 0, 0, -1.60567, -1.41539, 1.85814, 0.190281, -0.255645, 16.8847, -0.255645, 0.461631, 4.50793, 2.44635, -2.21115, -2.21115, 6.19624, 5.19992, -11.9405, -3.20747, 2.21115, 2.21115, 0.226431, 1.74951, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 1.1204, 10.941, 1.1204, 0, 0, -1.60567, -1.41539, 1.85814, 0.190281, -8.90493, -4.85864, -8.90493, 0.461631, 4.50793, 8.86902, -2.21115, -2.21115, -0.226431, -0.461631, -4.50793, -2.44635, 7.87269, -5.2214, -0.534693, 1.74951, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, -0.373467, -3.64699, -0.373467, 0, 0, 4.817, -1.41539, 1.85814, 0.190281, -1.74951, 2.29678, -1.74951, 1.9555, 19.0959, 3.94022, -9.36656, -9.36656, -7.38185, -0.461631, -4.50793, -2.44635, 2.21115, 2.21115, 0.226431, 7.41106, -9.72932, 0.988391}, {1.78885, 1.78885, 1.78885, -0.373467, -3.64699, -0.373467, 0, 0, -1.60567, 4.24616, -5.57441, -0.570843, -1.74951, 2.29678, -1.74951, 0.461631, 4.50793, 2.44635, -2.21115, -2.21115, -0.226431, -7.61705, -11.6633, -9.60176, 3.70501, 16.7991, 1.7203, 1.74951, -2.29678, 8.17219}, {-8.88178e-15, -9.45441, 5.32907e-15, 1.78885, -1.36261, -1.36261, -1.78885, -1.78885, -1.78885, 0, 0, 3.15147, -9.36656, 3.23931, 7.13474, 3.55271e-15, 3.89543, 3.89543, 9.36656, 5.47113, 9.36656, -3.55271e-15, -3.89543, -16.5013, -2.21115, 1.68428, -2.21115, 2.21115, 2.21115, -1.68428}, {1.48705e-15, 3.15147, -8.88178e-16, -5.36656, 4.08784, 4.08784, -1.78885, -1.78885, -1.78885, 1.39953e-15, 1.39953e-15, 3.15147, -2.21115, -14.817, 1.68428, 7.15542, 11.0508, 11.0508, 2.21115, -1.68428, 2.21115, -3.55271e-15, -3.89543, -3.89543, -2.21115, 1.68428, -14.817, 2.21115, 2.21115, -1.68428}, {2.88658e-15, 3.15147, -2.22045e-15, 1.78885, -1.36261, -1.36261, 5.36656, 5.36656, 5.36656, 0, 0, 3.15147, -2.21115, -2.21115, 1.68428, -7.15542, 9.34589, 9.34589, 2.21115, -14.2902, 2.21115, -3.55271e-15, -3.89543, -3.89543, -2.21115, 1.68428, -2.21115, 2.21115, 2.21115, -14.2902}, {0, 3.15147, 2.22045e-15, 1.78885, -1.36261, -1.36261, -1.78885, -1.78885, -1.78885, 0, 0, -9.45441, -2.21115, -2.21115, 1.68428, 0, 3.89543, 3.89543, 2.21115, -1.68428, 2.21115, 0, -16.5013, -3.89543, -9.36656, 7.13474, 3.23931, 9.36656, 9.36656, 5.47113}, {3.05492, -2.11527, -4.36034, 0.668117, -1.63909, -0.00517894, 0.911433, 1.21439, 0.00383706, -0.561241, -0.2804, -1.4521, -2.23961, 7.71083, -1.76944, -1.95243, 0.524948, 0.00165865, -3.51362, -7.23019, -1.81665, 4.1974, 0.59665, 5.80676, -0.132105, 2.37262, 1.8013, -0.43286, -1.15448, 1.79016}, {-1.01831, 0.705091, 1.45345, -2.00435, 4.91726, 0.0155368, 0.911433, 1.21439, 0.00383706, -0.561241, -0.2804, -1.4521, 4.50609, -1.66588, -7.60394, -5.59816, -4.33263, -0.0136896, 0.132105, -2.37262, -1.8013, 1.95243, -0.524948, -0.00165865, 2.11286, 3.49421, 7.60972, -0.43286, -1.15448, 1.79016}, {-1.01831, 0.705091, 1.45345, 0.668117, -1.63909, -0.00517894, -2.7343, -3.64318, -0.0115112, -0.561241, -0.2804, -1.4521, 0.43286, 1.15448, -1.79016, -4.6249, 7.08129, 0.0223744, 4.20534, -5.19298, -7.61508, 1.95243, -0.524948, -0.00165865, -0.132105, 2.37262, 1.8013, 1.81211, -0.0328828, 7.59857}, {-1.01831, 0.705091, 1.45345, 0.668117, -1.63909, -0.00517894, 0.911433, 1.21439, 0.00383706, 1.68372, 0.841199, 4.35631, 0.43286, 1.15448, -1.79016, -1.95243, 0.524948, 0.00165865, 0.132105, -2.37262, -1.8013, 6.02566, -3.34531, -5.81544, -2.80457, 8.92896, 1.82202, -4.07859, -6.01206, 1.77481}, {5.82171, 7.62554, -0.596168, 1.32981, 1.74185, -1.74185, 0.61076, -1.54312, 1.54312, 0, 2.34313, 0, -4.5643, -5.97853, 8.87479, -2.39867, -0.245635, 0.245635, -0.799305, 11.2218, -8.32553, 2.39867, -9.12687, -0.245635, -1.64373, -5.0493, 2.15304, -0.754941, -0.988857, -1.90741}, {-1.94057, -2.54185, 0.198723, -3.98943, -5.22554, 5.22554, 0.61076, -1.54312, 1.54312, -3.55272e-16, 2.34313, -8.97618e-16, 8.51722, 11.1562, 1.11252, -4.84171, 5.92686, -5.92686, 1.64373, 5.0493, -2.15304, 2.39867, 0.245635, -0.245635, -1.64373, -14.4218, 2.15304, -0.754941, -0.988857, -1.90741}, {-1.94057, -2.54185, 0.198723, 1.32981, 1.74185, -1.74185, -1.83228, 4.62937, -4.62937, 0, 2.34313, 0, 0.754941, 0.988857, 1.90741, -7.71791, -7.21302, 7.21302, 9.40601, 15.2167, -2.94793, 2.39867, 0.245635, -0.245635, -1.64373, -5.0493, 2.15304, -0.754941, -10.3614, -1.90741}, {-1.94057, -2.54185, 0.198723, 1.32981, 1.74185, -1.74185, 0.61076, -1.54312, 1.54312, 0, -7.02938, 0, 0.754941, 0.988857, 1.90741, -2.39867, -0.245635, 0.245635, 1.64373, 5.0493, -2.15304, 10.1609, 10.413, -1.04052, -6.96297, -12.0167, 9.12042, -3.19798, 5.18364, -8.0799}, {5.81909, -7.62212, -0.600985, 0, -2.34313, 0, 0.610485, 1.54348, 1.54262, 1.32921, -1.74106, -1.74295, 2.3976, 9.12828, -0.24762, -0.754601, 0.988412, -1.90678, -0.798945, -11.2223, -8.32487, -4.56224, 5.97584, 8.87857, -1.643, 5.04833, 2.1544, -2.3976, 0.244222, 0.24762}, {-1.9397, 2.54071, 0.200328, 0, 7.02938, 0, 0.610485, 1.54348, 1.54262, 1.32921, -1.74106, -1.74295, 10.1564, -10.407, -1.04893, -3.19654, -5.18552, -8.07725, 1.643, -5.04833, -2.1544, 0.754601, -0.988412, 1.90678, -6.95984, 12.0126, 9.12619, -2.3976, 0.244222, 0.24762}, {-1.9397, 2.54071, 0.200328, 0, -2.34313, 0, -1.83146, -4.63045, -4.62785, 1.32921, -1.74106, -1.74295, 2.3976, -0.244222, -0.24762, -0.754601, 10.3609, -1.90678, 9.40178, -15.2112, -2.95571, 0.754601, -0.988412, 1.90678, -1.643, 5.04833, 2.1544, -7.71444, 7.20847, 7.21941}, {-1.9397, 2.54071, 0.200328, 0, -2.34313, 0, 0.610485, 1.54348, 1.54262, -3.98763, 5.22319, 5.22884, 2.3976, -0.244222, -0.24762, -0.754601, 0.988412, -1.90678, 1.643, -5.04833, -2.1544, 8.51339, -11.1512, 1.10547, -1.643, 14.4208, 2.1544, -4.83954, -5.92971, -5.92285}, {8.88178e-16, -4.44089e-16, 4.817, 1.32981, 1.74185, -0.136178, 0.61076, -1.54312, 1.54312, -1.94057, -0.198723, 0.198723, -6.96297, -9.12042, 2.69775, -2.39867, -0.245635, -1.73908, -3.19798, 8.0799, -6.09519, 10.1609, 1.04052, 0.94419, 0.754941, -1.90741, -0.0773091, 1.64373, 2.15304, -2.15304}, {4.44089e-16, 1.66533e-16, -1.60567, -3.98943, -5.22554, 0.408534, 0.61076, -1.54312, 1.54312, -1.94057, -0.198723, 0.198723, -1.64373, -2.15304, 8.57571, -4.84171, 5.92686, -7.91157, -0.754941, 1.90741, 0.0773091, 2.39867, 0.245635, 1.73908, 8.51722, -1.11252, -0.872199, 1.64373, 2.15304, -2.15304}, {0, -3.05311e-16, -1.60567, 1.32981, 1.74185, -0.136178, -1.83228, 4.62937, -4.62937, -1.94057, -0.198723, 0.198723, -1.64373, -2.15304, 2.15304, -7.71791, -7.21302, -1.19437, -0.754941, 1.90741, 6.49998, 2.39867, 0.245635, 1.73908, 0.754941, -1.90741, -0.0773091, 9.40601, 2.94793, -2.94793}, {-4.44089e-16, -2.77556e-17, -1.60567, 1.32981, 1.74185, -0.136178, 0.61076, -1.54312, 1.54312, 5.82171, 0.596168, -0.596168, -1.64373, -2.15304, 2.15304, -2.39867, -0.245635, -1.73908, -0.754941, 1.90741, 0.0773091, 2.39867, 0.245635, 8.16175, -4.5643, -8.87479, 0.467403, -0.799305, 8.32553, -8.32553}, {-1.28888, 1.28888, -5.54754, -0.937563, 0.937563, 0.371082, -0.607159, -0.998509, -1.77891, 1.1151, 0.490571, -0.441349, 4.3781, -4.3781, -4.22872, 1.90938, 0.0753332, 1.74017, 2.64808, 5.7593, 7.02879, -6.36977, -2.03762, 0.0252242, -0.219445, -1.76527, 0.0868549, -0.627846, 0.627846, 2.74439}, {0.429625, -0.429625, 1.84918, 2.81269, -2.81269, -1.11325, -0.607159, -0.998509, -1.77891, 1.1151, 0.490571, -0.441349, -1.09065, 1.09065, -10.1411, 4.33802, 4.06937, 8.85582, 0.219445, 1.76527, -0.0868549, -1.90938, -0.0753332, -1.74017, -4.67983, -3.72755, 1.85225, -0.627846, 0.627846, 2.74439}, {0.429625, -0.429625, 1.84918, -0.937563, 0.937563, 0.371082, 1.82148, 2.99553, 5.33673, 1.1151, 0.490571, -0.441349, 0.627846, -0.627846, -2.74439, 5.65963, -3.67492, 0.255844, -1.49906, 3.48377, -7.48357, -1.90938, -0.0753332, -1.74017, -0.219445, -1.76527, 0.0868549, -5.08823, -1.33444, 4.50979}, {0.429625, -0.429625, 1.84918, -0.937563, 0.937563, 0.371082, -0.607159, -0.998509, -1.77891, -3.34529, -1.47171, 1.32405, 0.627846, -0.627846, -2.74439, 1.90938, 0.0753332, 1.74017, 0.219445, 1.76527, -0.0868549, -3.62788, 1.64317, -9.13689, 3.53081, -5.51552, -1.39747, 1.80079, 4.62188, 9.86004}, {-4.9045, -4.90878, 4.90879, 0.803078, -0.801888, 0.80329, -1.63483, -1.63626, 0.030594, -0.803078, 0.801888, 0.802378, -6.22574, 2.17621, -2.18355, 1.0281, 3.01372, -1.03074, 6.53933, 6.54504, 1.86234, 2.18421, -6.22127, -2.17877, 7.60503e-14, -7.59393e-14, -1.98471, 3.01342, 1.03134, -1.02961}, {1.63483, 1.63626, -1.63626, -2.40924, 2.40566, -2.40987, -1.63483, -1.63626, 0.030594, -0.803078, 0.801888, 0.802378, -9.55275, -7.57638, 7.57466, 7.56743, 9.55876, -1.15311, -7.62723e-14, 7.68274e-14, 1.98471, -1.0281, -3.01372, 1.03074, 3.21231, -3.20755, -5.19423, 3.01342, 1.03134, -1.02961}, {1.63483, 1.63626, -1.63626, 0.803078, -0.801888, 0.80329, 4.9045, 4.90878, -0.0917819, -0.803078, 0.801888, 0.802378, -3.01342, -1.03134, 1.02961, -2.18421, 6.22127, -4.2439, -6.53933, -6.54504, 8.52976, -1.0281, -3.01372, 1.03074, 7.52731e-14, -7.53841e-14, -1.98471, 6.22574, -2.17621, -4.23912}, {1.63483, 1.63626, -1.63626, 0.803078, -0.801888, 0.80329, -1.63483, -1.63626, 0.030594, 2.40924, -2.40566, -2.40713, -3.01342, -1.03134, 1.02961, 1.0281, 3.01372, -1.03074, -7.52731e-14, 7.43849e-14, 1.98471, -7.56743, -9.55876, 7.57579, -3.21231, 3.20755, -5.19788, 9.55275, 7.57638, -1.15199}, {0.412021, -3.98943, -5.22554, -1.60567, 0, 0, 0.200419, -1.94057, -0.198723, 1.54259, 0.61076, -1.54312, 8.57715, -1.64373, -2.15304, 1.73698, 2.39867, 0.245635, -0.879643, 8.51722, -1.11252, -7.90734, -4.84171, 5.92686, 0.0779689, -0.754941, 1.90741, -2.15448, 1.64373, 2.15304}, {-0.13734, 1.32981, 1.74185, 4.817, 0, 0, 0.200419, -1.94057, -0.198723, 1.54259, 0.61076, -1.54312, 2.70384, -6.96297, -9.12042, 0.93531, 10.1609, 1.04052, -0.0779689, 0.754941, -1.90741, -1.73698, -2.39867, -0.245635, -6.09239, -3.19798, 8.0799, -2.15448, 1.64373, 2.15304}, {-0.13734, 1.32981, 1.74185, -1.60567, 0, 0, -0.601256, 5.82171, 0.596168, 1.54259, 0.61076, -1.54312, 2.15448, -1.64373, -2.15304, 8.15966, 2.39867, 0.245635, 0.471392, -4.5643, -8.87479, -1.73698, -2.39867, -0.245635, 0.0779689, -0.754941, 1.90741, -8.32484, -0.799305, 8.32553}, {-0.13734, 1.32981, 1.74185, -1.60567, 0, 0, 0.200419, -1.94057, -0.198723, -4.62777, -1.83228, 4.62937, 2.15448, -1.64373, -2.15304, 1.73698, 2.39867, 0.245635, -0.0779689, 0.754941, -1.90741, -1.18762, -7.71791, -7.21302, 6.50064, -0.754941, 1.90741, -2.95615, 9.40601, 2.94793}, {-2.2024, 0.148267, -4.33994, -0.546238, -1.40698, 1.37428e-12, 0.372712, 0.180326, -1.44665, -0.560609, 1.27608, -1.24642e-12, 1.9527, 7.42813, -1.78815, 0.21449, 1.51623, 1.78815, -2.85899, -0.883108, 5.78659, 2.02795, -6.62053, -1.78815, 1.36814, 0.161805, -1.58045e-13, 0.232253, -1.80021, 1.78815}, {0.734135, -0.0494224, 1.44665, 1.63871, 4.22094, -4.12207e-12, 0.372712, 0.180326, -1.44665, -0.560609, 1.27608, -1.24619e-12, -3.16879, 1.9979, -7.57474, -1.27636, 0.794924, 7.57474, -1.36814, -0.161805, 1.57656e-13, -0.21449, -1.51623, -1.78815, 3.61057, -4.9425, 4.82673e-12, 0.232253, -1.80021, 1.78815}, {0.734135, -0.0494224, 1.44665, -0.546238, -1.40698, 1.37428e-12, -1.11814, -0.540977, 4.33994, -0.560609, 1.27608, -1.24642e-12, -0.232253, 1.80021, -1.78815, 2.39944, 7.14414, 1.78815, -4.30468, 0.0358845, -5.78659, -0.21449, -1.51623, -1.78815, 1.36814, 0.161805, -1.58045e-13, 2.47469, -6.90451, 1.78815}, {0.734135, -0.0494224, 1.44665, -0.546238, -1.40698, 1.3744e-12, 0.372712, 0.180326, -1.44665, 1.68183, -3.82823, 3.73959e-12, -0.232253, 1.80021, -1.78815, 0.21449, 1.51623, 1.78815, -1.36814, -0.161805, 1.577e-13, -3.15103, -1.31854, -7.57474, 3.55309, 5.78972, -5.65567e-12, -1.25859, -2.52151, 7.57474}, {0, 9.4517, 0, -1.78885, 1.78834, -1.78937, 1.78885, 1.36222, -1.3621, 0, 0, 3.15147, 9.36656, -5.46957, 9.36924, 0, -3.89432, 3.89543, -9.36656, -3.23838, 7.13206, 0, 3.89432, -16.5013, 2.21115, -2.21051, -1.68365, -2.21115, -1.6838, -2.21178}, {-1.54779e-16, -3.15057, 0, 5.36656, -5.36503, 5.3681, 1.78885, 1.36222, -1.3621, -1.39953e-15, -1.06575e-15, 3.15147, 2.21115, 14.2861, 2.21178, -7.15542, -9.34321, 9.34384, -2.21115, 2.21051, 1.68365, 1.77636e-15, 3.89432, -3.89543, 2.21115, -2.21051, -14.2895, -2.21115, -1.6838, -2.21178}, {0, -3.15057, -4.44089e-16, -1.78885, 1.78834, -1.78937, -5.36656, -4.08667, 4.08631, 0, 0, 3.15147, 2.21115, 1.6838, 2.21178, 7.15542, -11.0477, 11.0529, -2.21115, 14.8128, 1.68365, 0, 3.89432, -3.89543, 2.21115, -2.21051, -1.68365, -2.21115, -1.6838, -14.8177}, {0, -3.15057, 0, -1.78885, 1.78834, -1.78937, 1.78885, 1.36222, -1.3621, 0, 0, -9.45441, 2.21115, 1.6838, 2.21178, 0, -3.89432, 3.89543, -2.21115, 2.21051, 1.68365, 0, 16.4966, -3.89543, 9.36656, -9.36389, 5.47381, -9.36656, -7.1327, 3.23663}, {-0.595682, -0.596202, -5.82204, 0, -1.60567, 0, 1.54187, 1.54321, -0.609885, -1.74043, -0.136279, -1.3308, -0.245434, 8.16174, -2.39881, -1.90585, 0.0771985, 0.75386, -8.31875, -8.32602, 0.794587, 8.86756, 0.467918, 4.56932, 2.15129, 2.15317, 1.64495, 0.245434, -1.73907, 2.39881}, {0.198561, 0.198734, 1.94068, 0, 4.817, 0, 1.54187, 1.54321, -0.609885, -1.74043, -0.136279, -1.3308, -1.03968, 0.94413, -10.1615, -8.07331, -6.09565, 3.1934, -2.15129, -2.15317, -1.64495, 1.90585, -0.0771985, -0.75386, 9.11299, 2.69828, 6.96814, 0.245434, -1.73907, 2.39881}, {0.198561, 0.198734, 1.94068, 0, -1.60567, 0, -4.6256, -4.62964, 1.82966, -1.74043, -0.136279, -1.3308, -0.245434, 1.73907, -2.39881, -1.90585, 6.49987, 0.75386, -2.94553, -2.9481, -9.40768, 1.90585, -0.0771985, -0.75386, 2.15129, 2.15317, 1.64495, 7.20714, -1.19395, 7.722}, {0.198561, 0.198734, 1.94068, 0, -1.60567, 0, 1.54187, 1.54321, -0.609885, 5.22128, 0.408838, 3.99239, -0.245434, 1.73907, -2.39881, -1.90585, 0.0771985, 0.75386, -2.15129, -2.15317, -1.64495, 1.11161, -0.872135, -8.51658, 2.15129, 8.57584, 1.64495, -5.92203, -7.91192, 4.83836}, {-1.34911, 3.4086, 1.4084, 1.74422, 0.694821, 0.910847, -1.68823, -0.836265, 0.836265, -0.505685, 1.27764, -1.27764, -9.68869, -2.23371, -4.18896, -0.0691986, 0.174835, -2.15955, 8.28384, 5.78316, -3.79845, 2.09194, -5.28541, 7.27013, -1.53091, -2.4381, 0.453387, 2.71183, -0.545574, 0.545574}, {0.449702, -1.1362, -0.469468, -5.23265, -2.08446, -2.73254, -1.68823, -0.836265, 0.836265, -0.505685, 1.27764, -1.27764, -4.51064, 5.09037, 1.3323, 6.68373, 3.5199, -5.50461, 1.53091, 2.4381, -0.453387, 0.0691986, -0.174835, 2.15955, 0.49183, -7.54868, 5.56396, 2.71183, -0.545574, 0.545574}, {0.449702, -1.1362, -0.469468, 1.74422, 0.694821, 0.910847, 5.0647, 2.5088, -2.5088, -0.505685, 1.27764, -1.27764, -2.71183, 0.545574, -0.545574, -7.04606, -2.60445, -5.80294, -0.267898, 6.9829, 1.42448, 0.0691986, -0.174835, 2.15955, -1.53091, -2.4381, 0.453387, 4.73457, -5.65615, 5.65615}, {0.449702, -1.1362, -0.469468, 1.74422, 0.694821, 0.910847, -1.68823, -0.836265, 0.836265, 1.51705, -3.83293, 3.83293, -2.71183, 0.545574, -0.545574, -0.0691986, 0.174835, -2.15955, 1.53091, 2.4381, -0.453387, -1.72961, 4.36997, 4.03742, -8.50777, -5.21739, -3.19, 9.46476, 2.79949, -2.79949}, {-6.58175, 1.32414, -1.32414, -0.505685, 1.27764, -1.27764, 0.857073, 0.177676, 2.16545, -2.54531, -1.01394, -1.32918, -0.0640323, -6.14426, 6.14426, -0.43434, -1.79887, -1.09739, -7.19952, -0.384749, -11.884, 10.6156, 5.85464, 6.41412, 3.77123, -0.325955, 3.22222, 2.08677, 1.03368, -1.03368}, {2.19392, -0.441379, 0.441379, 1.51705, -3.83293, 3.83293, 0.857073, 0.177676, 2.16545, -2.54531, -1.01394, -1.32918, -10.8624, 0.731834, -0.731834, -3.86263, -2.50958, -9.75919, -3.77123, 0.325955, -3.22222, 0.43434, 1.79887, 1.09739, 13.9525, 3.72981, 8.53895, 2.08677, 1.03368, -1.03368}, {2.19392, -0.441379, 0.441379, -0.505685, 1.27764, -1.27764, -2.57122, -0.533028, -6.49635, -2.54531, -1.01394, -1.32918, -2.08677, -1.03368, 1.03368, 1.5884, -6.90945, 4.01319, -12.5469, 2.09147, -4.98773, 0.43434, 1.79887, 1.09739, 3.77123, -0.325955, 3.22222, 12.268, 5.08945, 4.28305}, {2.19392, -0.441379, 0.441379, -0.505685, 1.27764, -1.27764, 0.857073, 0.177676, 2.16545, 7.63592, 3.04182, 3.98755, -2.08677, -1.03368, 1.03368, -0.43434, -1.79887, -1.09739, -3.77123, 0.325955, -3.22222, -8.34133, 3.56439, -0.668128, 5.79397, -5.43653, 8.33279, -1.34152, 0.322977, -9.69548}, {5.63148, -7.39306, 3.82293, -0.845027, -3.02792, 0.845027, 1.29407, 2.43841, 1.8574, 1.42811, -1.87484, -1.42811, 6.74491, 12.8083, -2.84948, -0.55505, 0.728676, -3.34038, -4.45555, -15.8138, -8.15032, -5.15741, 6.7707, 9.05284, -0.720736, 6.06015, 0.720736, -3.36481, -0.696607, -0.530622}, {-1.87716, 2.46435, -1.27431, 2.53508, 9.08376, -2.53508, 1.29407, 2.43841, 1.8574, 1.42811, -1.87484, -1.42811, 10.8734, -9.16081, 5.62786, -5.73134, -9.02497, -10.77, 0.720736, -6.06015, -0.720736, 0.55505, -0.728676, 3.34038, -6.43319, 13.5595, 6.43319, -3.36481, -0.696607, -0.530622}, {-1.87716, 2.46435, -1.27431, -0.845027, -3.02792, 0.845027, -3.88221, -7.31523, -5.57219, 1.42811, -1.87484, -1.42811, 3.36481, 0.696607, 0.530622, 2.82506, 12.8404, -6.72049, 8.22937, -15.9176, 4.3765, 0.55505, -0.728676, 3.34038, -0.720736, 6.06015, 0.720736, -9.07726, 6.80277, 5.18184}, {-1.87716, 2.46435, -1.27431, -0.845027, -3.02792, 0.845027, 1.29407, 2.43841, 1.8574, -4.28434, 5.62453, 4.28434, 3.36481, 0.696607, 0.530622, -0.55505, 0.728676, -3.34038, 0.720736, -6.06015, -0.720736, 8.06369, -10.5861, 8.43762, 2.65937, 18.1718, -2.65937, -8.54109, -10.4502, -7.96021}, {8.88178e-16, 9.45441, -1.77636e-15, 1.78834, 1.78885, 1.78885, -3.15057, 0, 0, 1.36222, 1.36261, -1.78885, -9.36389, -5.47113, -9.36656, 1.6838, -2.21115, -2.21115, 16.4966, 3.89543, -4.44089e-16, -7.1327, -3.23931, 9.36656, -3.89432, -3.89543, 4.44089e-16, 2.21051, -1.68428, 2.21115}, {4.44089e-16, -3.15147, 2.22045e-16, -5.36503, -5.36656, -5.36656, -3.15057, 0, 0, 1.36222, 1.36261, -1.78885, -2.21051, 14.2902, -2.21115, 14.2861, -2.21115, -2.21115, 3.89432, 3.89543, 0, -1.6838, 2.21115, 2.21115, -9.34321, -9.34589, 7.15542, 2.21051, -1.68428, 2.21115}, {-4.44089e-16, -3.15147, 0, 1.78834, 1.78885, 1.78885, 9.4517, 0, 0, 1.36222, 1.36261, -1.78885, -2.21051, 1.68428, -2.21115, -5.46957, -9.36656, -9.36656, 3.89432, 16.5013, 0, -1.6838, 2.21115, 2.21115, -3.89432, -3.89543, 0, -3.23838, -7.13474, 9.36656}, {4.44089e-16, -3.15147, -2.22045e-16, 1.78834, 1.78885, 1.78885, -3.15057, 0, 0, -4.08667, -4.08784, 5.36656, -2.21051, 1.68428, -2.21115, 1.6838, -2.21115, -2.21115, 3.89432, 3.89543, 0, -1.6838, 14.817, 2.21115, -11.0477, -11.0508, -7.15542, 14.8128, -1.68428, 2.21115}, {-5.36656, 5.36656, -5.36656, 2.79907e-15, 3.15147, 3.33475e-16, -1.78885, -1.36261, 1.36261, 0, 0, -3.15147, -2.21115, -14.2902, -2.21115, 2.21115, -2.21115, -1.68428, 7.15542, 9.34589, -9.34589, -2.21115, 2.21115, 14.2902, -3.45984e-15, -3.89543, 3.89543, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, -4.1986e-15, -9.45441, 1.0595e-14, -1.78885, -1.36261, 1.36261, 0, 0, -3.15147, -9.36656, 5.47113, -9.36656, 9.36656, 3.23931, -7.13474, 1.28583e-15, 3.89543, -3.89543, -2.21115, 2.21115, 1.68428, -1.72992e-15, -3.89543, 16.5013, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 5.36656, 4.08784, -4.08784, 0, 0, -3.15147, -2.21115, -1.68428, -2.21115, 2.21115, -14.817, -1.68428, -7.15542, 11.0508, -11.0508, -2.21115, 2.21115, 1.68428, 0, -3.89543, 3.89543, 2.21115, 1.68428, 14.817}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 2.46559e-15, -1.78885, -1.36261, 1.36261, 0, 0, 9.45441, -2.21115, -1.68428, -2.21115, 2.21115, -2.21115, -1.68428, -4.44089e-16, 3.89543, -3.89543, -9.36656, 9.36656, -5.47113, 0, -16.5013, 3.89543, 9.36656, 7.13474, -3.23931}, {7.01844, 1.17551e-15, 0, 2.33948, 2.34313, -1.78885, 0, -2.34313, 0, -7.30165e-12, -6.9197e-12, 1.78885, -9.35791, -12.2688, 9.36656, -2.89175, -8.55405e-12, 2.21115, 2.89175, 12.2688, 0, 2.89175, 3.62329e-11, -9.36656, -2.89175, -2.89626, 0, 9.02534e-12, 2.89626, -2.21115}, {-2.33948, -1.95894e-17, 0, -7.01844, -7.02938, 5.36656, 0, -2.34313, 0, -7.30373e-12, -6.92022e-12, 1.78885, 9.35791, -2.89626, 2.21115, -2.89175, 9.3725, 2.21115, 2.89175, 2.89626, 0, 2.89175, 8.5536e-12, -2.21115, -2.89175, -2.89626, -7.15542, 9.02791e-12, 2.89626, -2.21115}, {-2.33948, 1.32789e-16, -4.44089e-16, 2.33948, 2.34313, -1.78885, 0, 7.02938, 0, -7.30321e-12, -6.92126e-12, 1.78885, -9.02668e-12, -2.89626, 2.21115, -12.2497, -9.3725, 9.36656, 12.2497, 2.89626, 1.77636e-15, 2.89175, 8.55493e-12, -2.21115, -2.89175, -2.89626, -4.44089e-16, 3.82401e-11, 2.89626, -9.36656}, {-2.33948, -8.31579e-16, -4.44089e-16, 2.33948, 2.34313, -1.78885, 0, -2.34313, 0, 2.19143e-11, 2.07622e-11, -5.36656, -9.02861e-12, -2.89626, 2.21115, -2.89175, -8.55538e-12, 2.21115, 2.89175, 2.89626, 4.44089e-16, 12.2497, 8.55648e-12, -2.21115, -12.2497, -12.2688, 7.15542, 9.02919e-12, 12.2688, -2.21115}, {-1.00651, -1.00808, 6.45666, -0.481765, 1.86061, -0.736419, 0.984821, -1.35677, 2.55622, -0.83856, -0.839867, 0.332415, 2.10785, -10.1576, 6.51623, -0.62181, -0.62278, -2.2494, -5.57129, 6.68879, -10.7243, 3.97605, 3.98225, 0.919744, 1.63201, -1.26171, 0.499377, -0.180789, 2.71519, -3.57055}, {0.335504, 0.336027, -2.15222, 1.4453, -5.58183, 2.20926, 0.984821, -1.35677, 2.55622, -0.83856, -0.839867, 0.332415, -1.16123, -4.0593, 12.1794, -4.56109, 4.8043, -12.4743, -1.63201, 1.26171, -0.499377, 0.62181, 0.62278, 2.2494, 4.98625, 2.09776, -0.830282, -0.180789, 2.71519, -3.57055}, {0.335504, 0.336027, -2.15222, -0.481765, 1.86061, -0.736419, -2.95446, 4.07031, -7.66867, -0.83856, -0.839867, 0.332415, 0.180789, -2.71519, 3.57055, 1.30525, -8.06522, 0.696272, -2.97403, -0.0824032, 8.1095, 0.62181, 0.62278, 2.2494, 1.63201, -1.26171, 0.499377, 3.17345, 6.07466, -4.90021}, {0.335504, 0.336027, -2.15222, -0.481765, 1.86061, -0.736419, 0.984821, -1.35677, 2.55622, 2.51568, 2.5196, -0.997244, 0.180789, -2.71519, 3.57055, -0.62181, -0.62278, -2.2494, -1.63201, 1.26171, -0.499377, -0.720207, -0.72133, 10.8583, 3.55907, -8.70414, 3.44505, -4.12007, 8.14227, -13.7954}, {5.36656, -5.48024e-11, 5.58682e-11, 1.78885, -2.34313, 2.34313, 0, 2.34313, 0, 0, 0, -2.34313, -7.15542, 12.2688, -12.2688, -2.21115, 2.25797e-11, -2.89626, 2.21115, -12.2688, 2.30194e-11, 2.21115, -2.25797e-11, 12.2688, -2.21115, 2.89626, -2.30194e-11, 0, -2.89626, 2.89626}, {-1.78885, 1.21112e-11, -1.24669e-11, -5.36656, 7.02938, -7.02938, 0, 2.34313, 1.36297e-15, 0, 0, -2.34313, 7.15542, 2.89626, -2.89626, -2.21115, -9.3725, -2.89626, 2.21115, -2.89626, 1.54086e-11, 2.21115, -1.49702e-11, 2.89626, -2.21115, 2.89626, 9.3725, 0, -2.89626, 2.89626}, {-1.78885, 1.21094e-11, -1.24669e-11, 1.78885, -2.34313, 2.34313, 0, -7.02938, 0, 0, 0, -2.34313, 4.44089e-16, 2.89626, -2.89626, -9.36656, 9.3725, -12.2688, 9.36656, -2.89626, 6.52776e-11, 2.21115, -1.49685e-11, 2.89626, -2.21115, 2.89626, -1.54099e-11, 0, -2.89626, 12.2688}, {-1.78885, 1.21099e-11, -1.24638e-11, 1.78885, -2.34313, 2.34313, 0, 2.34313, 0, 0, 0, 7.02938, 4.44089e-16, 2.89626, -2.89626, -2.21115, 1.49689e-11, -2.89626, 2.21115, -2.89626, 1.54063e-11, 9.36656, -6.34088e-11, 2.89626, -9.36656, 12.2688, -9.3725, 0, -12.2688, 2.89626}, {5.09908, -2.42192, -2.42638, -0.488904, -1.23525, -1.23482, 1.75382, -0.670557, 0.933579, 0.434779, 1.0985, -0.507552, 4.66087, 5.46995, 5.46587, -1.56352, 2.3557, 0.372353, -7.08218, 2.51319, -5.888, -0.175592, -6.74968, 1.65786, 0.0669023, 0.169033, 2.15369, -2.70526, -0.528962, -0.526598}, {-1.69969, 0.807307, 0.808792, 1.46671, 3.70574, 3.70446, 1.75382, -0.670557, 0.933579, 0.434779, 1.0985, -0.507552, 9.50403, -2.70027, -2.70857, -8.5788, 5.03793, -3.36196, -0.0669023, -0.169033, -2.15369, 1.56352, -2.3557, -0.372353, -1.67221, -4.22495, 4.1839, -2.70526, -0.528962, -0.526598}, {-1.69969, 0.807307, 0.808792, -0.488904, -1.23525, -1.23482, -5.26146, 2.01167, -2.80074, 0.434779, 1.0985, -0.507552, 2.70526, 0.528962, 0.526598, 0.392092, 7.29669, 5.31163, 6.73188, -3.39826, -5.38886, 1.56352, -2.3557, -0.372353, 0.0669023, 0.169033, 2.15369, -4.44437, -4.92294, 1.50361}, {-1.69969, 0.807307, 0.808792, -0.488904, -1.23525, -1.23482, 1.75382, -0.670557, 0.933579, -1.30434, -3.29549, 1.52266, 2.70526, 0.528962, 0.526598, -1.56352, 2.3557, 0.372353, -0.0669023, -0.169033, -2.15369, 8.3623, -5.58493, -3.60752, 2.02252, 5.11002, 7.09296, -9.72053, 2.15326, -4.26091}, {-2.57735, 0.513092, -6.51263, -2.5578, 0.977952, -1.36155, -0.488614, -1.23536, -1.23466, 2.1873, 0.428435, 0.425336, 12.3309, -4.90922, 4.44581, 3.76558, 0.31817, 3.2091, 1.49649, 6.67982, 3.78144, -12.5148, -2.03191, -4.91044, 0.457966, -1.73839, 1.15722, -2.09969, 0.99741, 1.00039}, {0.859116, -0.171031, 2.17088, 7.67341, -2.93386, 4.08465, -0.488614, -1.23536, -1.23466, 2.1873, 0.428435, 0.425336, -1.33677, -0.313288, -9.6839, 5.72003, 5.2596, 8.14775, -0.457966, 1.73839, -1.15722, -3.76558, -0.31817, -3.2091, -8.29124, -3.45213, -0.54412, -2.09969, 0.99741, 1.00039}, {0.859116, -0.171031, 2.17088, -2.5578, 0.977952, -1.36155, 1.46584, 3.70607, 3.70399, 2.1873, 0.428435, 0.425336, 2.09969, -0.99741, -1.00039, 13.9968, -3.59364, 8.65529, -3.89443, 2.42251, -9.84073, -3.76558, -0.31817, -3.2091, 0.457966, -1.73839, 1.15722, -10.8489, -0.716331, -0.700957}, {0.859116, -0.171031, 2.17088, -2.5578, 0.977952, -1.36155, -0.488614, -1.23536, -1.23466, -6.5619, -1.28531, -1.27601, 2.09969, -0.99741, -1.00039, 3.76558, 0.31817, 3.2091, -0.457966, 1.73839, -1.15722, -7.20204, 0.365952, -11.8926, 10.6892, -5.6502, 6.60342, -0.145237, 5.93884, 5.93904}, {4.08784, 4.08784, -5.36656, -1.78885, -1.78885, -1.78885, 3.15147, 2.46559e-15, 0, 0, 3.15147, 0, 11.0508, 11.0508, 7.15542, -1.68428, 2.21115, 2.21115, -14.817, 1.68428, -2.21115, 1.68428, -14.817, -2.21115, 2.21115, -1.68428, 2.21115, -3.89543, -3.89543, 0}, {-1.36261, -1.36261, 1.78885, 5.36656, 5.36656, 5.36656, 3.15147, 0, 0, -2.46559e-15, 3.15147, 0, 9.34589, 9.34589, -7.15542, -14.2902, 2.21115, 2.21115, -2.21115, 1.68428, -2.21115, 1.68428, -2.21115, -2.21115, 2.21115, -14.2902, 2.21115, -3.89543, -3.89543, 0}, {-1.36261, -1.36261, 1.78885, -1.78885, -1.78885, -1.78885, -9.45441, 0, 0, 0, 3.15147, 0, 3.89543, 3.89543, -4.44089e-16, 5.47113, 9.36656, 9.36656, 3.23931, 7.13474, -9.36656, 1.68428, -2.21115, -2.21115, 2.21115, -1.68428, 2.21115, -3.89543, -16.5013, 0}, {-1.36261, -1.36261, 1.78885, -1.78885, -1.78885, -1.78885, 3.15147, 2.46559e-15, 0, 0, -9.45441, 0, 3.89543, 3.89543, -4.44089e-16, -1.68428, 2.21115, 2.21115, -2.21115, 1.68428, -2.21115, 7.13474, 3.23931, -9.36656, 9.36656, 5.47113, 9.36656, -16.5013, -3.89543, 0}, {-4.7272, 4.72585, -4.72855, -1.57528, -1.57573, -1.57573, 1.57528, 1.57573, -1.57573, -1.57573, 1.57528, 1.57528, 6.30058, 10.1978, 6.30238, 2.11209e-12, -2.11164e-12, 3.89543, -10.196, -6.30349, 6.30238, 6.30294, -6.30114, -10.1966, 3.89487, 0.000556685, 0.000556685, 0.000556685, -3.89487, 0.000556844}, {1.57573, -1.57528, 1.57618, 4.72585, 4.7272, 4.7272, 1.57528, 1.57573, -1.57573, -1.57573, 1.57528, 1.57528, -6.30349, 10.196, -6.3053, -6.30114, -6.30294, 10.1984, -3.89487, -0.000556685, -0.000556685, -2.11226e-12, 2.11514e-12, -3.89543, 10.1978, -6.30058, -6.30058, 0.000556685, -3.89487, 0.000556844}, {1.57573, -1.57528, 1.57618, -1.57528, -1.57573, -1.57573, -4.72585, -4.7272, 4.7272, -1.57573, 1.57528, 1.57528, -0.000556685, 3.89487, -0.000556844, 6.30114, 6.30294, 10.1984, -10.1978, 6.30058, -6.3053, -2.11581e-12, 2.11492e-12, -3.89543, 3.89487, 0.000556685, 0.000556685, 6.30349, -10.196, -6.30058}, {1.57573, -1.57528, 1.57618, -1.57528, -1.57573, -1.57573, 1.57528, 1.57573, -1.57573, 4.7272, -4.72585, -4.72585, -0.000556685, 3.89487, -0.000556844, 2.11831e-12, -2.1172e-12, 3.89543, -3.89487, -0.000556685, -0.000556685, -6.30294, 6.30114, -10.2002, 10.196, 6.30349, 6.30349, -6.30058, -10.1978, 6.30349}, {-5.22554, -0.410098, 3.98943, -1.54312, -1.54218, -0.61076, 3.95893e-17, 1.60497, -3.86599e-16, -0.198723, -0.199483, 1.94057, 5.92686, 7.906, 4.84171, 1.90741, -0.0776051, 0.754941, -2.15304, -8.57268, 1.64373, -1.11252, 0.875539, -8.51722, 2.15304, 2.15282, -1.64373, 0.245635, -1.73727, -2.39867}, {1.74185, 0.136699, -1.32981, 4.62937, 4.62655, 1.83228, 1.18768e-16, 1.60497, -1.1598e-15, -0.198723, -0.199483, 1.94057, -7.21302, 1.19047, 7.71791, 1.90741, -6.49747, 0.754941, -2.15304, -2.15282, 1.64373, -1.90741, 0.0776051, -0.754941, 2.94793, 2.95075, -9.40601, 0.245635, -1.73727, -2.39867}, {1.74185, 0.136699, -1.32981, -1.54312, -1.54218, -0.61076, 0, -4.8149, 0, -0.198723, -0.199483, 1.94057, -0.245635, 1.73727, 2.39867, 8.0799, 6.09113, 3.19798, -9.12042, -2.69962, 6.96297, -1.90741, 0.0776051, -0.754941, 2.15304, 2.15282, -1.64373, 1.04052, -0.939339, -10.1609}, {1.74185, 0.136699, -1.32981, -1.54312, -1.54218, -0.61076, -1.18768e-16, 1.60497, 1.1598e-15, 0.596168, 0.59845, -5.82171, -0.245635, 1.73727, 2.39867, 1.90741, -0.0776051, 0.754941, -2.15304, -2.15282, 1.64373, -8.87479, -0.469193, 4.5643, 8.32553, 8.32155, 0.799305, 0.245635, -8.15714, -2.39867}, {4.63127, 4.6267, 1.83083, -2.54134, -0.199443, 1.94018, 1.74197, 1.74168, -1.3299, 2.34313, 0, 0, 15.2148, 2.9506, -9.40456, 0.988073, -1.9063, -0.754342, -7.21287, -7.21323, 7.7178, -10.3606, 1.9063, 0.754342, 0.245001, 0.246525, -2.39819, -5.04945, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, 7.62401, 0.598329, -5.82053, 1.74197, 1.74168, -1.3299, 2.34313, -1.01311e-15, 7.73589e-16, 11.2245, 8.32176, 0.797254, -5.9798, -8.87301, 4.56526, -0.245001, -0.246525, 2.39819, -0.988073, 1.9063, 0.754342, -9.1275, 0.246525, -2.39819, -5.04945, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, -2.54134, -0.199443, 1.94018, -5.2259, -5.22503, 3.9897, 2.34313, 0, 0, 5.04945, 2.15283, -1.64385, 11.1534, -1.10853, -8.51505, 5.93003, 5.92241, 4.83929, -0.988073, 1.9063, 0.754342, 0.245001, 0.246525, -2.39819, -14.422, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, -2.54134, -0.199443, 1.94018, 1.74197, 1.74168, -1.3299, -7.02938, 0, 0, 5.04945, 2.15283, -1.64385, 0.988073, -1.9063, -0.754342, -0.245001, -0.246525, 2.39819, 5.18696, 8.07523, 3.19544, 10.4103, 1.0443, -10.1589, -12.0173, -9.11953, 6.96345}, {4.33994, 1.90929, -1.71772, 1.45453e-15, 1.35003, 1.01047e-16, 1.36e-12, -0.731398, -2.01922, 1.44665, 0.0177991, 1.44665, 1.78815, -6.28218, -0.707741, -1.68285e-12, -0.764672, 2.4959, 1.78815, 4.61632, 9.86504, -5.78659, 0.693475, -8.28248, -1.78815, -1.69073, -1.78815, -1.78815, 0.882056, 0.707741}, {-1.44665, -0.636431, 0.572575, -4.36359e-15, -4.05009, -2.33336e-15, 1.35855e-12, -0.731398, -2.01922, 1.44665, 0.0177991, 1.44665, 7.57474, 1.66367, -2.99804, -7.11526e-12, 2.16092, 10.5728, 1.78815, 1.69073, 1.78815, 1.68142e-12, 0.764672, -2.4959, -7.57474, -1.76193, -7.57474, -1.78815, 0.882056, 0.707741}, {-1.44665, -0.636431, 0.572575, 0, 1.35003, 0, -4.08128e-12, 2.19419, 6.05767, 1.44665, 0.0177991, 1.44665, 1.78815, -0.882056, -0.707741, -1.68158e-12, -6.16479, 2.4959, 7.57474, 4.23646, -0.502145, 1.68194e-12, 0.764672, -2.4959, -1.78815, -1.69073, -1.78815, -7.57474, 0.81086, -5.07885}, {-1.44665, -0.636431, 0.572575, -4.84843e-16, 1.35003, -4.84843e-16, 1.3596e-12, -0.731398, -2.01922, -4.33994, -0.0533972, -4.33994, 1.78815, -0.882056, -0.707741, -1.67996e-12, -0.764672, 2.4959, 1.78815, 1.69073, 1.78815, 5.78659, 3.3104, -4.7862, -1.78815, -7.09085, -1.78815, -1.78815, 3.80765, 8.78463}, {-3.79117, -3.78885, -1.50052, 0.577052, -1.02738, -1.79083, -1.45233, 0.153525, -0.574823, -0.388446, -0.389091, 1.86548, -4.58353, 3.81836, 8.75865, 1.0819, 1.08015, 2.92411, 6.04244, -2.36496, 2.39156, 0.471884, 0.476215, -10.386, -0.233129, 1.75086, -0.0922713, 2.27532, 0.291177, -1.59534}, {1.26372, 1.26295, 0.500174, -1.73116, 3.08215, 5.37248, -1.45233, 0.153525, -0.574823, -0.388446, -0.389091, 1.86548, -7.33021, -5.34298, -0.40536, 6.89121, 0.466052, 5.2234, 0.233129, -1.75086, 0.0922713, -1.0819, -1.08015, -2.92411, 1.32066, 3.30723, -7.55418, 2.27532, 0.291177, -1.59534}, {1.26372, 1.26295, 0.500174, 0.577052, -1.02738, -1.79083, 4.35698, -0.460574, 1.72447, -0.388446, -0.389091, 1.86548, -2.27532, -0.291177, 1.59534, -1.22631, 5.18969, 10.0874, -4.82176, -6.80267, -1.90843, -1.0819, -1.08015, -2.92411, -0.233129, 1.75086, -0.0922713, 3.82911, 1.84754, -9.05724}, {1.26372, 1.26295, 0.500174, 0.577052, -1.02738, -1.79083, -1.45233, 0.153525, -0.574823, 1.16534, 1.16727, -5.59643, -2.27532, -0.291177, 1.59534, 1.0819, 1.08015, 2.92411, 0.233129, -1.75086, 0.0922713, -6.13679, -6.13196, -4.9248, -2.54134, 5.8604, 7.07104, 8.08463, -0.322922, 0.703957}, {2.52504, -4.49559, -7.83624, 1.26389, 1.26265, 0.49964, -0.875592, -0.873298, -2.36467, 0.453379, -1.88788, -0.747051, -5.57746, -8.46358, -5.84486, -0.479968, -0.48126, 2.3053, 5.62503, 2.72036, 9.15287, -1.33355, 8.03278, 0.682901, -2.12267, 0.772832, 0.305817, 0.521884, 3.413, 3.8463}, {-0.841681, 1.49853, 2.61208, -3.79168, -3.78794, -1.49892, -0.875592, -0.873298, -2.36467, 0.453379, -1.88788, -0.747051, 2.84484, -9.40713, -14.2946, 3.0224, 3.01193, 11.764, 2.12267, -0.772832, -0.305817, 0.479968, 0.48126, -2.3053, -3.93618, 8.32435, 3.29402, 0.521884, 3.413, 3.8463}, {-0.841681, 1.49853, 2.61208, 1.26389, 1.26265, 0.49964, 2.62678, 2.61989, 7.09401, 0.453379, -1.88788, -0.747051, -0.521884, -3.413, -3.8463, -5.53554, -5.53184, 0.306743, 5.48939, -6.76696, -10.7541, 0.479968, 0.48126, -2.3053, -2.12267, 0.772832, 0.305817, -1.29163, 10.9645, 6.8345}, {-0.841681, 1.49853, 2.61208, 1.26389, 1.26265, 0.49964, -0.875592, -0.873298, -2.36467, -1.36014, 5.66364, 2.24115, -0.521884, -3.413, -3.8463, -0.479968, -0.48126, 2.3053, 2.12267, -0.772832, -0.305817, 3.84669, -5.51287, -12.7536, -7.17824, -4.27775, -1.69274, 4.02425, 6.90619, 13.305}, {5.37846, -0.954422, 1.65136, 0.482922, -1.73161, -0.484335, 0.65353, 0.326507, 1.69088, 0.656368, 1.08696, -0.656093, -0.312565, 8.67359, 3.21641, -1.40473, 1.7368, -1.49137, -1.20588, -2.10286, -8.17318, -1.22074, -6.08465, 4.11575, -1.40824, 0.796829, 1.40965, -1.61912, -1.74715, -1.27907}, {-1.79282, 0.318141, -0.550454, -1.44877, 5.19483, 1.45301, 0.65353, 0.326507, 1.69088, 0.656368, 1.08696, -0.656093, 8.7904, 0.474582, 3.48088, -4.01885, 0.430774, -8.2549, 1.40824, -0.796829, -1.40965, 1.40473, -1.7368, 1.49137, -4.03371, -3.55102, 4.03402, -1.61912, -1.74715, -1.27907}, {-1.79282, 0.318141, -0.550454, 0.482922, -1.73161, -0.484335, -1.96059, -0.979522, -5.07265, 0.656368, 1.08696, -0.656093, 1.61912, 1.74715, 1.27907, -3.33642, 8.66325, 0.445966, 8.57952, -2.06939, 0.792169, 1.40473, -1.7368, 1.49137, -1.40824, 0.796829, 1.40965, -4.24459, -6.095, 1.3453}, {-1.79282, 0.318141, -0.550454, 0.482922, -1.73161, -0.484335, 0.65353, 0.326507, 1.69088, -1.9691, -3.26089, 1.96828, 1.61912, 1.74715, 1.27907, -1.40473, 1.7368, -1.49137, 1.40824, -0.796829, -1.40965, 8.57601, -3.00937, 3.69319, -3.33993, 7.72327, 3.34699, -4.23324, -3.05317, -8.0426}, {-8.19974, -2.81226, -4.15773, 1.49846, -0.593081, -0.985836, -2.7214, 1.07711, -0.607179, -1.5103, -1.42145, 0.207104, -11.2245, 1.9467, 3.44883, 1.51164, -0.598298, 1.96907, 10.8709, -6.79856, 1.46615, 4.52957, 6.28411, -2.79749, 0.0146435, 2.4901, 0.962565, 5.23067, 0.425625, 0.494519}, {2.73325, 0.937419, 1.38591, -4.49537, 1.77924, 2.95751, -2.7214, 1.07711, -0.607179, -1.5103, -1.42145, 0.207104, -16.1637, -4.1753, -6.03816, 12.3972, -4.90676, 4.39779, -0.0146435, -2.4901, -0.962565, -1.51164, 0.598298, -1.96907, 6.05586, 8.17591, 0.134147, 5.23067, 0.425625, 0.494519}, {2.73325, 0.937419, 1.38591, 1.49846, -0.593081, -0.985836, 8.16419, -3.23134, 1.82154, -1.5103, -1.42145, 0.207104, -5.23067, -0.425625, -0.494519, -4.48219, 1.77402, 5.91242, -10.9476, -6.23977, -6.50621, -1.51164, 0.598298, -1.96907, 0.0146435, 2.4901, 0.962565, 11.2719, 6.11143, -0.333899}, {2.73325, 0.937419, 1.38591, 1.49846, -0.593081, -0.985836, -2.7214, 1.07711, -0.607179, 4.53091, 4.26436, -0.621313, -5.23067, -0.425625, -0.494519, 1.51164, -0.598298, 1.96907, -0.0146435, -2.4901, -0.962565, -12.4446, -3.15138, -7.51272, -5.97918, 4.86242, 4.90591, 16.1163, -3.88283, 2.92323}, {-8.88178e-16, -2.39835, -6.05767, -3.06161e-16, 0.53318, -2.01922, -1.31177, -0.650588, 1.29879, 1.31177, -0.68204, -1.29879, 1.33227e-15, -3.77994, 8.07689, 1.62143, 0.145125, 0.890503, 6.86849, 2.41835, -9.29645, -6.86849, 2.58304, 4.30465, -1.62143, 0.184002, 4.10129, 0, 1.64722, 0}, {-2.22045e-16, 0.799449, 2.01922, -9.18483e-16, -1.59954, 6.05767, -1.31177, -0.650588, 1.29879, 1.31177, -0.68204, -1.29879, 8.88178e-16, -4.84502, -8.07689, 6.86849, 2.74748, -4.30465, 1.62143, -0.184002, -4.10129, -1.62143, -0.145125, -0.890503, -6.86849, 2.91216, 9.29645, 0, 1.64722, 0}, {1.77636e-15, 0.799449, 2.01922, -2.08189e-15, 0.53318, -2.01922, 3.9353, 1.95177, -3.89637, 1.31177, -0.68204, -1.29879, 2.22045e-16, -1.64722, -6.66134e-16, 1.62143, -1.98759, 8.96739, 1.62143, -3.3818, -12.1782, -1.62143, -0.145125, -0.890503, -1.62143, 0.184002, 4.10129, -5.24706, 4.37538, 5.19516}, {-6.66134e-16, 0.799449, 2.01922, 1.04095e-15, 0.53318, -2.01922, -1.31177, -0.650588, 1.29879, -3.9353, 2.04612, 3.89637, -6.66134e-16, -1.64722, -2.22045e-16, 1.62143, 0.145125, 0.890503, 1.62143, -0.184002, -4.10129, -1.62143, -3.34292, -8.96739, -1.62143, -1.94872, 12.1782, 5.24706, 4.24957, -5.19516}, {1.77636e-15, 0, 9.45441, 1.36261, 1.78885, 1.36261, 1.78885, -1.78885, 1.78885, -3.15147, 0, 0, -7.13474, -9.36656, -3.23931, -3.89543, 0, -3.89543, -9.36656, 9.36656, -5.47113, 16.5013, 0, 3.89543, 2.21115, -2.21115, -1.68428, 1.68428, 2.21115, -2.21115}, {4.44089e-16, -4.44089e-16, -3.15147, -4.08784, -5.36656, -4.08784, 1.78885, -1.78885, 1.78885, -3.15147, 0, 0, -1.68428, -2.21115, 14.817, -11.0508, 7.15542, -11.0508, -2.21115, 2.21115, 1.68428, 3.89543, 8.88178e-16, 3.89543, 14.817, -2.21115, -1.68428, 1.68428, 2.21115, -2.21115}, {0, 2.22045e-16, -3.15147, 1.36261, 1.78885, 1.36261, -5.36656, 5.36656, -5.36656, -3.15147, 0, 0, -1.68428, -2.21115, 2.21115, -9.34589, -7.15542, -9.34589, -2.21115, 2.21115, 14.2902, 3.89543, -4.44089e-16, 3.89543, 2.21115, -2.21115, -1.68428, 14.2902, 2.21115, -2.21115}, {4.44089e-16, 2.22045e-16, -3.15147, 1.36261, 1.78885, 1.36261, 1.78885, -1.78885, 1.78885, 9.45441, 0, 0, -1.68428, -2.21115, 2.21115, -3.89543, 4.44089e-16, -3.89543, -2.21115, 2.21115, 1.68428, 3.89543, 0, 16.5013, -3.23931, -9.36656, -7.13474, -5.47113, 9.36656, -9.36656}, {-2.46108, 3.54412, -0.0109738, -0.670026, 0.174063, -1.44271, 0.904569, 1.43103, -0.00443094, -1.0549, -0.423716, 1.44348, 2.49428, 0.548851, 7.54959, -0.28991, -1.984, 1.78876, -5.7504, -6.03269, 0.0186792, 4.50952, 3.67886, -7.56268, 2.13213, 0.308587, -0.000955489, 0.185824, -1.2451, -1.77876}, {0.820361, -1.18137, 0.00365793, 2.01008, -0.52219, 4.32812, 0.904569, 1.43103, -0.00443094, -1.0549, -0.423716, 1.44348, -3.46727, 5.9706, 1.76413, -3.90819, -7.7081, 1.80648, -2.13213, -0.308587, 0.000955489, 0.28991, 1.984, -1.78876, 6.35174, 2.00345, -5.77487, 0.185824, -1.2451, -1.77876}, {0.820361, -1.18137, 0.00365793, -0.670026, 0.174063, -1.44271, -2.71371, -4.29308, 0.0132928, -1.0549, -0.423716, 1.44348, -0.185824, 1.2451, 1.77876, 2.39019, -2.68025, 7.55959, -5.41357, 4.41691, -0.0136762, 0.28991, 1.984, -1.78876, 2.13213, 0.308587, -0.000955489, 4.40544, 0.449758, -7.55268}, {0.820361, -1.18137, 0.00365793, -0.670026, 0.174063, -1.44271, 0.904569, 1.43103, -0.00443094, 3.16471, 1.27115, -4.33044, -0.185824, 1.2451, 1.77876, -0.28991, -1.984, 1.78876, -2.13213, -0.308587, 0.000955489, -2.99153, 6.7095, -1.80339, 4.81224, -0.387667, 5.76987, -3.43245, -6.96921, -1.76104}, {-4.81192, -4.81192, 0.736124, -0.501255, 1.51797, 0.85277, 0.0700522, -1.94917, 0.533356, -1.17277, -1.17277, -1.14075, 0.641985, -9.9308, -4.16186, 0.532996, 0.532996, -1.71335, -2.34942, 8.22336, -2.48939, 4.15809, 4.15809, 6.27635, 2.06921, -0.426686, 0.355964, 1.36304, 3.85893, 0.750782}, {1.60397, 1.60397, -0.245375, 1.50376, -4.5539, -2.55831, 0.0700522, -1.94917, 0.533356, -1.17277, -1.17277, -1.14075, -7.77893, -10.2748, 0.230717, 0.252787, 8.32967, -3.84677, -2.06921, 0.426686, -0.355964, -0.532996, -0.532996, 1.71335, 6.76029, 4.2644, 4.91897, 1.36304, 3.85893, 0.750782}, {1.60397, 1.60397, -0.245375, -0.501255, 1.51797, 0.85277, -0.210157, 5.84751, -1.60007, -1.17277, -1.17277, -1.14075, -1.36304, -3.85893, -0.750782, 2.53802, -5.53887, -5.12443, -8.4851, -5.98921, 0.625534, -0.532996, -0.532996, 1.71335, 2.06921, -0.426686, 0.355964, 6.05412, 8.55001, 5.31379}, {1.60397, 1.60397, -0.245375, -0.501255, 1.51797, 0.85277, 0.0700522, -1.94917, 0.533356, 3.51831, 3.51831, 3.42225, -1.36304, -3.85893, -0.750782, 0.532996, 0.532996, -1.71335, -2.06921, 0.426686, -0.355964, -6.94889, -6.94889, 2.69484, 4.07423, -6.49855, -3.05512, 1.08283, 11.6556, -1.38264}, {-4.7272, -4.7272, -4.7272, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 6.30294, 6.30294, -10.1984, -1.8181e-12, 3.89543, -1.80878e-12, -10.1984, 6.30294, 6.30294, 6.30294, -10.1984, 6.30294, 3.89543, -1.79678e-12, -1.79323e-12, 3.77476e-15, -3.77476e-15, 3.89543}, {1.57573, 1.57573, 1.57573, 4.7272, 4.7272, -4.7272, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, -6.30294, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -3.89543, 1.79323e-12, 1.80544e-12, 1.81771e-12, -3.89543, 1.82415e-12, 10.1984, -6.30294, 6.30294, 3.55271e-15, -3.55271e-15, 3.89543}, {1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 1.57573, -4.7272, 4.7272, 4.7272, -1.57573, 1.57573, -1.57573, -3.9968e-15, 3.10862e-15, -3.89543, 6.30294, 10.1984, -6.30294, -10.1984, -6.30294, -6.30294, 1.82792e-12, -3.89543, 1.81616e-12, 3.89543, -1.80234e-12, -1.79368e-12, 6.30294, -6.30294, 10.1984}, {1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 4.7272, -4.7272, 4.7272, -2.66454e-15, 1.33227e-15, -3.89543, -1.81033e-12, 3.89543, -1.81055e-12, -3.89543, 1.80367e-12, 1.80389e-12, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -6.30294, -6.30294, 6.30294, 10.1984}, {1.77636e-15, 8.88178e-16, 3.96048, -1.97452e-12, 2.01922, 0.776088, 1.44665, -0.572575, 0.322765, -1.44665, -1.44665, 0.221307, 1.03391e-11, -10.5728, -2.43184, -1.78815, -1.78815, -1.35826, -7.57474, 2.99804, -0.0582134, 7.57474, 7.57474, 0.47303, 1.78815, -0.707741, -1.23285, -2.44094e-12, 2.4959, -0.672511}, {2.22045e-16, 0, -1.32016, 5.92356e-12, -6.05767, -2.32827, 1.44665, -0.572575, 0.322765, -1.44665, -1.44665, 0.221307, 2.43894e-12, -2.4959, 5.95315, -7.57474, 0.502145, -2.64932, -1.78815, 0.707741, 1.23285, 1.78815, 1.78815, 1.35826, 7.57474, 5.07885, -2.11808, -2.44005e-12, 2.4959, -0.672511}, {4.44089e-16, 4.44089e-16, -1.32016, -1.97278e-12, 2.01922, 0.776088, -4.33994, 1.71772, -0.968296, -1.44665, -1.44665, 0.221307, 2.43805e-12, -2.4959, 0.672511, -1.78815, -9.86504, -4.46261, -1.78815, 0.707741, 6.51349, 1.78815, 1.78815, 1.35826, 1.78815, -0.707741, -1.23285, 5.78659, 8.28248, -1.55774}, {2.22045e-16, 2.22045e-16, -1.32016, -1.97211e-12, 2.01922, 0.776088, 1.44665, -0.572575, 0.322765, 4.33994, 4.33994, -0.663921, 2.43761e-12, -2.4959, 0.672511, -1.78815, -1.78815, -1.35826, -1.78815, 0.707741, 1.23285, 1.78815, 1.78815, 6.6389, 1.78815, -8.78463, -4.3372, -5.78659, 4.7862, -1.96357}, {-5.69487, 4.44089e-15, -2.66454e-15, -0.575562, 1.78885, 1.78885, 0.744968, -3.64699, -0.373467, -2.0677, 1.85814, -1.41539, 0.667265, -9.36656, -9.36656, -0.209397, 2.29678, -1.74951, -6.24712, 19.0959, 1.9555, 8.48018, -9.72932, 7.41106, 3.26725, -4.50793, -0.461631, 1.63498, 2.21115, 2.21115}, {1.89829, 2.66454e-15, -6.66134e-16, 1.72669, -5.36656, -5.36656, 0.744968, -3.64699, -0.373467, -2.0677, 1.85814, -1.41539, -9.22815, -2.21115, -2.21115, -3.18927, 16.8847, -0.255645, -3.26725, 4.50793, 0.461631, 0.209397, -2.29678, 1.74951, 11.538, -11.9405, 5.19992, 1.63498, 2.21115, 2.21115}, {1.89829, 3.55271e-15, 4.44089e-16, -0.575562, 1.78885, 1.78885, -2.2349, 10.941, 1.1204, -2.0677, 1.85814, -1.41539, -1.63498, -2.21115, -2.21115, 2.09285, -4.85864, -8.90493, -10.8604, 4.50793, 0.461631, 0.209397, -2.29678, 1.74951, 3.26725, -4.50793, -0.461631, 9.90577, -5.2214, 7.87269}, {1.89829, -2.44249e-15, 1.33227e-15, -0.575562, 1.78885, 1.78885, 0.744968, -3.64699, -0.373467, 6.20309, -5.57441, 4.24616, -1.63498, -2.21115, -2.21115, -0.209397, 2.29678, -1.74951, -3.26725, 4.50793, 0.461631, -7.38377, -2.29678, 1.74951, 5.5695, -11.6633, -7.61705, -1.34489, 16.7991, 3.70501}, {1.1885, -5.81832, -0.595821, 1.89829, -2.11601e-15, 5.39995e-16, -1.41683, -1.32819, -1.74168, -0.0852942, -0.611252, 1.54307, -9.44989, -2.39728, -0.245492, -0.59512, 1.64173, 2.15284, 7.9083, 4.5572, 8.87406, 0.936297, 0.803277, -8.32513, -2.24099, 0.755549, -1.90734, 1.85673, 2.39728, 0.245492}, {-0.396168, 1.93944, 0.198607, -5.69487, -1.01358e-15, -4.64389e-15, -1.41683, -1.32819, -1.74168, -0.0852942, -0.611252, 1.54307, -0.272056, -10.155, -1.03992, 5.0722, 6.95448, 9.11956, 2.24099, -0.755549, 1.90734, 0.59512, -1.64173, -2.15284, -1.89981, 3.20056, -8.07964, 1.85673, 2.39728, 0.245492}, {-0.396168, 1.93944, 0.198607, 1.89829, 0, 0, 4.25049, 3.98456, 5.22504, -0.0852942, -0.611252, 1.54307, -1.85673, -2.39728, -0.245492, -8.18828, 1.64173, 2.15284, 3.82566, -8.51331, 1.11292, 0.59512, -1.64173, -2.15284, -2.24099, 0.755549, -1.90734, 2.1979, 4.84229, -5.9268}, {-0.396168, 1.93944, 0.198607, 1.89829, 2.88057e-16, -7.27184e-16, -1.41683, -1.32819, -1.74168, 0.255883, 1.83376, -4.62922, -1.85673, -2.39728, -0.245492, -0.59512, 1.64173, 2.15284, 2.24099, -0.755549, 1.90734, 2.17979, -9.39949, -2.94726, -9.83415, 0.755549, -1.90734, 7.52404, 7.71003, 7.21221}, {-5.53939e-11, -0.00379978, 5.36656, -2.34313, -2.34273, 1.78885, -6.81003e-16, 2.34147, 0, 2.34313, 0, 0, 12.2688, 12.2651, -7.15542, 2.89626, 0.00156559, -2.21115, -2.28204e-11, -12.2616, 2.21115, -12.2688, -0.00156559, 2.21115, 2.28231e-11, 2.89578, -2.21115, -2.89626, -2.89421, 0}, {1.23088e-11, 0.00126659, -1.78885, 7.02938, 7.0282, -5.36656, -2.04301e-15, 2.34147, 0, 2.34313, -1.36201e-15, 0, 2.89626, 2.88915, 7.15542, 2.89626, -9.3643, -2.21115, -1.52118e-11, -2.89578, 2.21115, -2.89626, -0.00156559, 2.21115, -9.3725, 2.89578, -2.21115, -2.89626, -2.89421, 0}, {1.23057e-11, 0.00126659, -1.78885, -2.34313, -2.34273, 1.78885, 0, -7.0244, 0, 2.34313, 0, 0, 2.89626, 2.89421, 4.44089e-16, 12.2688, 9.3725, -9.36656, -6.44356e-11, -2.90084, 9.36656, -2.89626, -0.00156559, 2.21115, 1.52105e-11, 2.89578, -2.21115, -12.2688, -2.89421, 0}, {1.23084e-11, 0.00126659, -1.78885, -2.34313, -2.34273, 1.78885, 2.04301e-15, 2.34147, 0, -7.02938, 0, 0, 2.89626, 2.89421, 4.44089e-16, 2.89626, 0.00156559, -2.21115, -1.52163e-11, -2.89578, 2.21115, -2.89626, -0.00663197, 9.36656, 9.3725, 12.2667, -9.36656, -2.89626, -12.2601, 0}, {-7.02938, -5.36656, -7.02938, -1.21095e-11, -1.78885, -1.21105e-11, 0, 0, -2.34313, -2.34313, 0, 0, -2.89626, 7.15542, -2.89626, 1.49681e-11, 2.21115, 2.89626, -2.89626, -2.21115, 9.3725, 9.3725, -2.21115, -2.89626, 2.89626, 2.21115, 1.49694e-11, 2.89626, 0, 2.89626}, {2.34313, 1.78885, 2.34313, 5.47931e-11, 5.36656, 5.47978e-11, 0, 0, -2.34313, -2.34313, 0, 0, -12.2688, -7.15542, -12.2688, 2.2576e-11, 2.21115, 12.2688, -2.89626, -2.21115, -2.25785e-11, -2.25766e-11, -2.21115, -2.89626, 12.2688, 2.21115, 2.25779e-11, 2.89626, 0, 2.89626}, {2.34313, 1.78885, 2.34313, -1.21079e-11, -1.78885, -1.21105e-11, 0, 0, 7.02938, -2.34313, 0, 0, -2.89626, -4.44089e-16, -2.89626, 6.33979e-11, 9.36656, 2.89626, -12.2688, -9.36656, -9.3725, -1.49668e-11, -2.21115, -2.89626, 2.89626, 2.21115, 1.49694e-11, 12.2688, 0, 2.89626}, {2.34313, 1.78885, 2.34313, -1.21105e-11, -1.78885, -1.21079e-11, 0, 0, -2.34313, 7.02938, 0, 0, -2.89626, -4.44089e-16, -2.89626, 1.49694e-11, 2.21115, 2.89626, -2.89626, -2.21115, -1.49668e-11, -9.3725, -9.36656, -12.2688, 2.89626, 9.36656, 6.33979e-11, 2.89626, 0, 12.2688}, {6.00487, -2.5896, 0, 1.30033, -0.681296, -1.31177, -1.30033, -0.651333, 1.31177, 2.00162, 0.469428, 0, -4.33448, 2.50034, 6.86849, 0, 1.64722, 0, 9.28277, 2.34345, -6.86849, -8.00649, -3.52493, 0, -4.08144, 0.261882, 1.62143, -0.866843, 0.224847, -1.62143}, {-2.00162, 0.8632, -1.61346e-16, -3.901, 2.04389, 3.9353, -1.30033, -0.651333, 1.31177, 2.00162, 0.469428, -6.06985e-17, 8.87333, -3.67765, 1.62143, 5.20133, 4.25255, -5.24706, 4.08144, -0.261882, -1.62143, 5.28204e-17, -1.64722, 2.22045e-16, -12.0879, -1.61583, 1.62143, -0.866843, 0.224847, -1.62143}, {-2.00162, 0.8632, -1.00648e-16, 1.30033, -0.681296, -1.31177, 3.901, 1.954, -3.9353, 2.00162, 0.469428, -1.21397e-16, 0.866843, -0.224847, 1.62143, -5.20133, 4.3724, 5.24706, 12.0879, -3.71468, -1.62143, 4.9691e-16, -1.64722, 2.22045e-16, -4.08144, 0.261882, 1.62143, -8.87333, -1.65287, -1.62143}, {-2.00162, 0.8632, 0, 1.30033, -0.681296, -1.31177, -1.30033, -0.651333, 1.31177, -6.00487, -1.40829, 0, 0.866843, -0.224847, 1.62143, 0, 1.64722, 0, 4.08144, -0.261882, -1.62143, 8.00649, -5.10002, 0, -9.28277, 2.98706, 6.86849, 4.33448, 2.83018, -6.86849}, {-3.67855, 1.13524, -1.13945, -0.728854, -0.729491, 0.729491, -0.347691, -0.347995, -1.25767, -0.149637, 1.4559, 0.148365, 2.30068, 4.28741, -4.28915, 1.33068, 1.33185, 0.652868, 0.304891, 2.28987, 6.11578, -0.732135, -7.15545, -1.24633, 1.08587, -0.897892, -1.08509, 0.614731, -1.36945, 1.37118}, {1.22618, -0.378415, 0.379817, 2.18656, 2.18847, -2.18847, -0.347691, -0.347995, -1.25767, -0.149637, 1.4559, 0.148365, -5.51946, 2.8831, -2.89045, 2.72145, 2.72383, 5.68356, -1.08587, 0.897892, 1.08509, -1.33068, -1.33185, -0.652868, 1.68442, -6.72149, -1.67855, 0.614731, -1.36945, 1.37118}, {1.22618, -0.378415, 0.379817, -0.728854, -0.729491, 0.729491, 1.04307, 1.04399, 3.77302, -0.149637, 1.4559, 0.148365, -0.614731, 1.36945, -1.37118, 4.2461, 4.24981, -2.2651, -5.9906, 2.41155, -0.434178, -1.33068, -1.33185, -0.652868, 1.08587, -0.897892, -1.08509, 1.21328, -7.19305, 0.777722}, {1.22618, -0.378415, 0.379817, -0.728854, -0.729491, 0.729491, -0.347691, -0.347995, -1.25767, 0.448911, -4.3677, -0.445094, -0.614731, 1.36945, -1.37118, 1.33068, 1.33185, 0.652868, -1.08587, 0.897892, 1.08509, -6.23541, 0.181812, -2.17214, 4.00129, 2.02007, -4.00305, 2.0055, 0.0225343, 6.40187}, {-3.16808, 0, 5.09912e-16, -0.781545, 0, -1.31177, 0.234793, 1.31177, 1.31177, -0.509273, -1.31177, -1.26089e-16, 2.78691, 0, 6.86849, 0.675824, -1.62143, -2.22045e-16, -2.53471, -6.86849, -6.86849, 1.36127, 6.86849, 7.264e-16, 1.59554, 1.62143, 1.62143, 0.339276, 0, -1.62143}, {1.05603, 0, 6.58225e-17, 2.34464, 0, 3.9353, 0.234793, 1.31177, 1.31177, -0.509273, -1.31177, 3.78267e-16, -4.56338, 0, 1.62143, -0.263347, -6.86849, -5.24706, -1.59554, -1.62143, -1.62143, -0.675824, 1.62143, -4.44089e-16, 3.63263, 6.86849, 1.62143, 0.339276, 0, -1.62143}, {1.05603, -2.22045e-16, 6.02665e-17, -0.781545, 3.78267e-16, -1.31177, -0.704378, -3.9353, -3.9353, -0.509273, -1.31177, -5.04356e-16, -0.339276, -2.22045e-16, 1.62143, 3.80201, -1.62143, 5.24706, -5.81964, -1.62143, -1.62143, -0.675824, 1.62143, 4.44089e-16, 1.59554, 1.62143, 1.62143, 2.37637, 5.24706, -1.62143}, {1.05603, 0, 0, -0.781545, 0, -1.31177, 0.234793, 1.31177, 1.31177, 1.52782, 3.9353, 0, -0.339276, 0, 1.62143, 0.675824, -1.62143, 0, -1.59554, -1.62143, -1.62143, -4.89993, 1.62143, 0, 4.72172, 1.62143, 6.86849, -0.599895, -5.24706, -6.86849}, {-4.31352, 0.137385, -4.35145, -1.43784, 0.845244, 0.568738, 0, -1.33263, 0, 1.50855e-12, 0.53318, -2.01922, 5.75136, -4.36915, -4.77085, 1.77727, 0.602441, -0.702999, -1.77727, 7.03434, -1.7929, -1.77727, -2.73516, 8.77989, 1.77727, -1.70383, 1.7929, -1.86467e-12, 0.988174, 2.4959}, {1.43784, -0.0457949, 1.45048, 4.31352, -2.53573, -1.70622, 0, -1.33263, 0, 1.50567e-12, 0.53318, -2.01922, -5.75136, -0.804994, -8.29783, 1.77727, 5.93296, -0.702999, -1.77727, 1.70383, -1.7929, -1.77727, -0.602441, 0.702999, 1.77727, -3.83654, 9.86978, -1.86111e-12, 0.988174, 2.4959}, {1.43784, -0.0457949, 1.45048, -1.43784, 0.845244, 0.568738, 0, 3.99789, 0, 1.50891e-12, 0.53318, -2.01922, 1.86476e-12, -0.988174, -2.4959, 7.52863, -2.77854, -2.97795, -7.52863, 1.887, -7.59483, -1.77727, -0.602441, 0.702999, 1.77727, -1.70383, 1.7929, -7.90075e-12, -1.14454, 10.5728}, {1.43784, -0.0457949, 1.45048, -1.43784, 0.845244, 0.568738, 0, -1.33263, 0, -4.51484e-12, -1.59954, 6.05767, 1.85986e-12, -0.988174, -2.4959, 1.77727, 0.602441, -0.702999, -1.77727, 1.70383, -1.7929, -7.52863, -0.419261, -5.09894, 7.52863, -5.0848, -0.482057, -1.86021e-12, 6.31869, 2.4959}, {0, 7.02938, 1.2039e-15, 0, 0, -2.34313, 1.78885, 2.34313, 2.34059, -1.78885, -1.21095e-11, 0.00253498, 0, 2.89626, 12.2688, -2.21115, -2.89626, 0.00313341, -9.36656, -9.3725, -12.2555, 9.36656, 2.89626, -0.0132733, 2.21115, 1.49681e-11, 2.89313, 0, -2.89626, -2.89626}, {0, -2.34313, 2.70617e-16, 0, 0, 7.02938, 1.78885, 2.34313, 2.34059, -1.78885, -1.2111e-11, 0.00253498, 0, 12.2688, 2.89626, -9.36656, -12.2688, -9.35923, -2.21115, -1.49695e-11, -2.89313, 2.21115, 2.89626, -0.00313341, 9.36656, 6.34142e-11, 2.88299, 0, -2.89626, -2.89626}, {0, -2.34313, -2.48499e-16, 0, 0, -2.34313, -5.36656, -7.02938, -7.02177, -1.78885, -1.21116e-11, 0.00253498, 0, 2.89626, 2.89626, -2.21115, -2.89626, 9.37564, -2.21115, 9.3725, -2.89313, 2.21115, 2.89626, -0.00313341, 2.21115, 1.49707e-11, 2.89313, 7.15542, -2.89626, -2.9064}, {0, -2.34313, 5.31259e-16, 0, 0, -2.34313, 1.78885, 2.34313, 2.34059, 5.36656, 5.47978e-11, -0.00760494, 0, 2.89626, 2.89626, -2.21115, -2.89626, 0.00313341, -2.21115, -2.25774e-11, -2.89313, 2.21115, 12.2688, -0.00313341, 2.21115, 2.25779e-11, 12.2656, -7.15542, -12.2688, -12.2586}, {-3.23058, -0.349184, -0.349184, -0.223923, -1.25104, -1.25104, -0.552433, 1.28003, -0.0317341, -0.300503, -0.14539, 1.16638, -0.158596, 6.40664, 6.40664, 0.959628, -0.0358398, 1.58559, 1.56151, -6.8462, 0.0222906, 0.242385, 0.617398, -6.25109, 0.648226, 1.72608, 0.104646, 1.05429, -1.40249, -1.40249}, {1.07686, 0.116395, 0.116395, 0.671768, 3.75311, 3.75311, -0.552433, 1.28003, -0.0317341, -0.300503, -0.14539, 1.16638, -5.36172, 0.936916, 0.936916, 3.16936, -5.15596, 1.71253, -0.648226, -1.72608, -0.104646, -0.959628, 0.0358398, -1.58559, 1.85024, 2.30764, -4.56086, 1.05429, -1.40249, -1.40249}, {1.07686, 0.116395, 0.116395, -0.223923, -1.25104, -1.25104, 1.6573, -3.84009, 0.0952024, -0.300503, -0.14539, 1.16638, -1.05429, 1.40249, 1.40249, 1.85532, 4.96831, 6.58973, -4.95566, -2.19166, -0.570224, -0.959628, 0.0358398, -1.58559, 0.648226, 1.72608, 0.104646, 2.2563, -0.820936, -6.068}, {1.07686, 0.116395, 0.116395, -0.223923, -1.25104, -1.25104, -0.552433, 1.28003, -0.0317341, 0.90151, 0.436169, -3.49913, -1.05429, 1.40249, 1.40249, 0.959628, -0.0358398, 1.58559, -0.648226, -1.72608, -0.104646, -5.26706, -0.429738, -2.05117, 1.54392, 6.73022, 5.10879, 3.26402, -6.52262, -1.27556}, {5.36656, 7.02938, -7.02938, 0, 0, -2.34313, 1.78885, -1.02092e-11, 1.05679e-11, 0, 2.34313, 0, 2.21115, 2.89626, 9.3725, -2.21115, 1.26192e-11, 2.89626, -7.15542, 2.89626, -2.89626, 2.21115, -9.3725, -2.89626, 0, -2.89626, 2.89626, -2.21115, -2.89626, -1.30626e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, 7.02938, 1.78885, -1.02081e-11, 1.05669e-11, -1.04056e-15, 2.34313, -6.14662e-27, 9.36656, 12.2688, -9.3725, -9.36656, 5.34504e-11, 2.89626, -8.4211e-16, 2.89626, -2.89626, 2.21115, -1.26174e-11, -2.89626, 5.44843e-15, -12.2688, 2.89626, -2.21115, -2.89626, -1.30613e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, -2.34313, -5.36656, 3.06298e-11, -3.17084e-11, 0, 2.34313, 0, 2.21115, 2.89626, 1.3064e-11, -2.21115, 1.26202e-11, 12.2688, 7.15542, 12.2688, -12.2688, 2.21115, -1.26196e-11, -2.89626, 0, -2.89626, 2.89626, -2.21115, -12.2688, -1.30646e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, -2.34313, 1.78885, -1.02092e-11, 1.05658e-11, 0, -7.02938, 0, 2.21115, 2.89626, 1.30595e-11, -2.21115, 1.26192e-11, 2.89626, 4.44089e-16, 2.89626, -2.89626, 9.36656, 9.3725, -12.2688, 0, -2.89626, 12.2688, -9.36656, -2.89626, -5.53233e-11}, {0, 9.45441, 0, 3.15147, 1.39953e-15, -1.39953e-15, -1.36261, 1.36261, 1.78885, -1.78885, 1.78885, -1.78885, -16.5013, 3.89543, 7.54952e-15, -2.21115, -1.68428, -2.21115, 7.13474, -3.23931, -9.36656, 9.36656, -5.47113, 9.36656, -1.68428, -2.21115, 2.21115, 3.89543, -3.89543, -1.77636e-15}, {8.88178e-16, -3.15147, 2.22045e-16, -9.45441, -1.00042e-15, 8.3972e-15, -1.36261, 1.36261, 1.78885, -1.78885, 1.78885, -1.78885, -3.89543, 16.5013, 5.32907e-15, 3.23931, -7.13474, -9.36656, 1.68428, 2.21115, -2.21115, 2.21115, 1.68428, 2.21115, 5.47113, -9.36656, 9.36656, 3.89543, -3.89543, -3.55271e-15}, {4.44089e-16, -3.15147, 0, 3.15147, 0, 0, 4.08784, -4.08784, -5.36656, -1.78885, 1.78885, -1.78885, -3.89543, 3.89543, 0, -14.817, -1.68428, -2.21115, 1.68428, 14.817, -2.21115, 2.21115, 1.68428, 2.21115, -1.68428, -2.21115, 2.21115, 11.0508, -11.0508, 7.15542}, {6.66134e-16, -3.15147, -2.22045e-16, 3.15147, 1.39953e-15, -1.39953e-15, -1.36261, 1.36261, 1.78885, 5.36656, -5.36656, 5.36656, -3.89543, 3.89543, 1.77636e-15, -2.21115, -1.68428, -2.21115, 1.68428, 2.21115, -2.21115, 2.21115, 14.2902, 2.21115, -14.2902, -2.21115, 2.21115, 9.34589, -9.34589, -7.15542}, {4.32877, -2.26802, -4.36683, -0.571101, 0.113693, -1.4431, 0, -1.33263, 0, 2.01402, 0.462931, -0.0125109, 4.77387, -1.52978, 5.75693, 0.70592, 1.50669, 1.78377, 1.78355, 6.04326, -1.79923, -8.76202, -3.35841, -1.73373, -1.78355, -0.712746, 1.79923, -2.48947, 1.07501, 0.0154644}, {-1.44292, 0.756005, 1.45561, 1.7133, -0.34108, 4.3293, 0, -1.33263, 0, 2.01402, 0.462931, -0.0125109, 8.26116, -4.09903, -5.83791, 0.70592, 6.8372, 1.78377, 1.78355, 0.712746, -1.79923, -0.70592, -1.50669, -1.78377, -9.83965, -2.56447, 1.84928, -2.48947, 1.07501, 0.0154644}, {-1.44292, 0.756005, 1.45561, -0.571101, 0.113693, -1.4431, 0, 3.99789, 0, 2.01402, 0.462931, -0.0125109, 2.48947, -1.07501, -0.0154644, 2.99032, 1.05191, 7.55617, 7.55524, -2.31127, -7.62167, -0.70592, -1.50669, -1.78377, -1.78355, -0.712746, 1.79923, -10.5456, -0.776716, 0.0655081}, {-1.44292, 0.756005, 1.45561, -0.571101, 0.113693, -1.4431, 0, -1.33263, 0, -6.04207, -1.38879, 0.0375328, 2.48947, -1.07501, -0.0154644, 0.70592, 1.50669, 1.78377, 1.78355, 0.712746, -1.79923, 5.06577, -4.53071, -7.60621, 0.500853, -1.16752, 7.57163, -2.48947, 6.40552, 0.0154644}, {-4.70136, -8.88178e-16, -1.57513e-15, 0.134389, 1.44665, -1.44665, -0.426776, 0.569981, 1.4404, -1.27473, -2.01663, 0.00624416, -2.64074, -7.57474, 7.57474, 0.36141, -2.49269, 0.00771821, 0.297559, -2.98446, -7.54205, 4.73753, 10.5592, -0.0326948, 1.40954, 0.704535, 1.78044, 2.10318, 1.78815, -1.78815}, {1.56712, -8.88178e-16, 1.00961e-15, -0.403167, -4.33994, 4.33994, -0.426776, 0.569981, 1.4404, -1.27473, -2.01663, 0.00624416, -8.37167, -1.78815, 1.78815, 2.06851, -4.77261, -5.75389, -1.40954, -0.704535, -1.78044, -0.36141, 2.49269, -0.00771821, 6.50848, 8.77105, 1.75546, 2.10318, 1.78815, -1.78815}, {1.56712, -1.33227e-15, 1.05818e-16, 0.134389, 1.44665, -1.44665, 1.28033, -1.70994, -4.32121, -1.27473, -2.01663, 0.00624416, -2.10318, -1.78815, 1.78815, -0.176146, -8.27928, 5.79431, -7.67803, -0.704535, -1.78044, -0.36141, 2.49269, -0.00771821, 1.40954, 0.704535, 1.78044, 7.20212, 9.85467, -1.81313}, {1.56712, 0, 2.67147e-16, 0.134389, 1.44665, -1.44665, -0.426776, 0.569981, 1.4404, 3.8242, 6.04988, -0.0187325, -2.10318, -1.78815, 1.78815, 0.36141, -2.49269, 0.00771821, -1.40954, -0.704535, -1.78044, -6.6299, 2.49269, -0.00771821, 0.871989, -5.08205, 7.56702, 3.81029, -0.491769, -7.54977}, {-3.47256, 2.13004, 3.47613, -1.55533, -0.53343, -0.78864, -0.511744, 1.83496, 0.513241, 0.909554, -0.591516, 1.43411, 6.71303, 3.6707, 5.56162, 2.55504, -1.60878, 0.340411, 1.24875, -8.73034, -1.25512, -6.19326, 3.97484, -6.07685, 0.798222, 1.39051, -0.797844, -0.49172, -1.53698, -2.40706}, {1.15752, -0.710012, -1.15871, 4.66599, 1.60029, 2.36592, -0.511744, 1.83496, 0.513241, 0.909554, -0.591516, 1.43411, -4.13836, 4.37703, 7.0419, 4.60202, -8.94861, -1.71255, -0.798222, -1.39051, 0.797844, -2.55504, 1.60878, -0.340411, -2.83999, 3.75657, -6.53428, -0.49172, -1.53698, -2.40706}, {1.15752, -0.710012, -1.15871, -1.55533, -0.53343, -0.78864, 1.53523, -5.50487, -1.53972, 0.909554, -0.591516, 1.43411, 0.49172, 1.53698, 2.40706, 8.77636, 0.524942, 3.49497, -5.4283, 1.44954, 5.43269, -2.55504, 1.60878, -0.340411, 0.798222, 1.39051, -0.797844, -4.12993, 0.829086, -8.14349}, {1.15752, -0.710012, -1.15871, -1.55533, -0.53343, -0.78864, -0.511744, 1.83496, 0.513241, -2.72866, 1.77455, -4.30233, 0.49172, 1.53698, 2.40706, 2.55504, -1.60878, 0.340411, -0.798222, -1.39051, 0.797844, -7.18512, 4.44882, 4.29443, 7.01954, 3.52423, 2.35672, 1.55526, -8.87681, -4.46002}, {-0.0259854, 4.18315, -1.68926, -1.44604, -0.0976914, -0.778579, 1.44538, 0.20404, -0.351453, -0.00800116, 1.28804, 0.566947, 7.56086, 2.23507, 3.38068, 0.000816584, -0.131455, 1.3968, -7.57881, 0.655184, 1.14422, 0.031188, -5.02069, -3.66458, 1.79729, -1.47135, 0.261592, -1.7767, -1.84431, -0.266365}, {0.00866179, -1.39438, 0.563086, 4.33812, 0.293074, 2.33574, 1.44538, 0.20404, -0.351453, -0.00800116, 1.28804, 0.566947, 1.74205, 7.42184, -1.98598, -5.7807, -0.947617, 2.80261, -1.79729, 1.47135, -0.261592, -0.000816584, 0.131455, -1.3968, 1.8293, -6.62349, -2.0062, -1.7767, -1.84431, -0.266365}, {0.00866179, -1.39438, 0.563086, -1.44604, -0.0976914, -0.778579, -4.33614, -0.612121, 1.05436, -0.00800116, 1.28804, 0.566947, 1.7767, 1.84431, 0.266365, 5.78498, 0.259311, 4.51111, -1.83194, 7.04888, -2.51393, -0.000816584, 0.131455, -1.3968, 1.79729, -1.47135, 0.261592, -1.74469, -6.99645, -2.53415}, {0.00866179, -1.39438, 0.563086, -1.44604, -0.0976914, -0.778579, 1.44538, 0.20404, -0.351453, 0.0240035, -3.86411, -1.70084, 1.7767, 1.84431, 0.266365, 0.000816584, -0.131455, 1.3968, -1.79729, 1.47135, -0.261592, -0.0354637, 5.70899, -3.64914, 7.58145, -1.08058, 3.37591, -7.55822, -2.66047, 1.13945}, {5.36656, -5.36656, -5.36656, 3.15147, -4.93118e-15, 0, -1.36261, 1.36261, -1.78885, 0, -3.15147, 0, -14.2902, -2.21115, -2.21115, -2.21115, -1.68428, 2.21115, 9.34589, -9.34589, 7.15542, 2.21115, 14.2902, -2.21115, -3.89543, 3.89543, 0, 1.68428, 2.21115, 2.21115}, {-1.78885, 1.78885, 1.78885, -9.45441, 1.0595e-14, -4.1986e-15, -1.36261, 1.36261, -1.78885, 0, -3.15147, 0, 5.47113, -9.36656, -9.36656, 3.23931, -7.13474, 9.36656, 3.89543, -3.89543, 1.28583e-15, 2.21115, 1.68428, -2.21115, -3.89543, 16.5013, -1.72992e-15, 1.68428, 2.21115, 2.21115}, {-1.78885, 1.78885, 1.78885, 3.15147, 0, 0, 4.08784, -4.08784, 5.36656, 0, -3.15147, 0, -1.68428, -2.21115, -2.21115, -14.817, -1.68428, 2.21115, 11.0508, -11.0508, -7.15542, 2.21115, 1.68428, -2.21115, -3.89543, 3.89543, 0, 1.68428, 14.817, 2.21115}, {-1.78885, 1.78885, 1.78885, 3.15147, -4.93118e-15, 0, -1.36261, 1.36261, -1.78885, 0, 9.45441, 0, -1.68428, -2.21115, -2.21115, -2.21115, -1.68428, 2.21115, 3.89543, -3.89543, -4.44089e-16, 9.36656, -5.47113, -9.36656, -16.5013, 3.89543, 0, 7.13474, -3.23931, 9.36656}, {2.81269, -2.81269, -1.11325, -0.456393, -1.88673, -0.746758, 0.886018, 1.45711, 2.59594, 0.507938, -0.507938, -2.22026, 3.5486, 8.72017, 3.45139, -0.531046, 0.531046, -2.28571, -3.48036, -8.78841, -14.0512, -1.50071, 1.50071, 11.1668, -0.0637129, 2.95998, 3.66744, -1.72302, -1.17324, -0.464361}, {-0.937563, 0.937563, 0.371082, 1.36918, 5.6602, 2.24027, 0.886018, 1.45711, 2.59594, 0.507938, -0.507938, -2.22026, 5.47328, -2.57701, -1.01997, -4.07512, -5.29738, -12.6695, 0.0637129, -2.95998, -3.66744, 0.531046, -0.531046, 2.28571, -2.09546, 4.99173, 12.5485, -1.72302, -1.17324, -0.464361}, {-0.937563, 0.937563, 0.371082, -0.456393, -1.88673, -0.746758, -2.65805, -4.37132, -7.78781, 0.507938, -0.507938, -2.22026, 1.72302, 1.17324, 0.464361, 1.29453, 8.07798, 0.701322, 3.81396, -6.71023, -5.15177, 0.531046, -0.531046, 2.28571, -0.0637129, 2.95998, 3.66744, -3.75477, 0.858512, 8.41668}, {-0.937563, 0.937563, 0.371082, -0.456393, -1.88673, -0.746758, 0.886018, 1.45711, 2.59594, -1.52381, 1.52381, 6.66078, 1.72302, 1.17324, 0.464361, -0.531046, 0.531046, -2.28571, 0.0637129, -2.95998, -3.66744, 4.2813, -4.2813, 0.801382, 1.76186, 10.5069, 6.65447, -5.2671, -7.00167, -10.8481}, {8.88178e-16, 4.08096, 0.0852192, 2.97466e-16, 0.921902, -1.18196, 1.31177, 0.0265815, 1.34059, -1.31177, 0.411835, -0.130224, -1.11022e-15, -3.1457, 6.22395, -1.62143, -1.17239, -0.196078, -6.86849, 1.54226, -6.98432, 6.86849, -0.474951, 0.716974, 1.62143, -1.64859, 1.62195, 0, -0.541913, -1.4961}, {-2.22045e-16, -1.36032, -0.0284064, -4.46199e-16, -2.76571, 3.54589, 1.31177, 0.0265815, 1.34059, -1.31177, 0.411835, -0.130224, 8.88178e-16, 5.98319, 1.60972, -6.86849, -1.27872, -5.55845, -1.62143, 1.64859, -1.62195, 1.62143, 1.17239, 0.196078, 6.86849, -3.29593, 2.14285, 0, -0.541913, -1.4961}, {-1.33227e-15, -1.36032, -0.0284064, 4.46199e-16, 0.921902, -1.18196, -3.9353, -0.0797444, -4.02178, -1.31177, 0.411835, -0.130224, 8.88178e-16, 0.541913, 1.4961, -1.62143, -4.86, 4.53177, -1.62143, 7.08987, -1.50833, 1.62143, 1.17239, 0.196078, 1.62143, -1.64859, 1.62195, 5.24706, -2.18925, -0.975202}, {1.55431e-15, -1.36032, -0.0284064, -1.04113e-15, 0.921902, -1.18196, 1.31177, 0.0265815, 1.34059, 3.9353, -1.23551, 0.390672, -4.44089e-16, 0.541913, 1.4961, -1.62143, -1.17239, -0.196078, -1.62143, 1.64859, -1.62195, 1.62143, 6.61367, 0.309704, 1.62143, -5.3362, 6.3498, -5.24706, -0.648239, -6.85847}, {1.39697, -4.32433, -4.36732, 1.89829, -2.30844e-15, -1.37509e-15, 0.0801166, 0.574147, -1.4494, -1.51275, -2.01559, -0.00636856, -9.364, -1.78172, -1.79943, -2.44545, -0.709685, 1.79156, 0.156089, -4.78799, 5.78974, 8.49644, 8.77205, -1.76609, -0.476556, 2.49141, 0.00787198, 1.77083, 1.78172, 1.79943}, {-0.465658, 1.44144, 1.45577, -5.69487, 3.6613e-15, -2.04012e-15, 0.0801166, 0.574147, -1.4494, -1.51275, -2.01559, -0.00636856, 0.0918014, -7.54749, -7.62252, -2.76591, -3.00627, 7.58918, 0.476556, -2.49141, -0.00787198, 2.44545, 0.709685, -1.79156, 5.57444, 10.5538, 0.0333462, 1.77083, 1.78172, 1.79943}, {-0.465658, 1.44144, 1.45577, 1.89829, 0, 0, -0.24035, -1.72244, 4.34821, -1.51275, -2.01559, -0.00636856, -1.77083, -1.78172, -1.79943, -10.0386, -0.709685, 1.79156, 2.33919, -8.25718, -5.83096, 2.44545, 0.709685, -1.79156, -0.476556, 2.49141, 0.00787198, 7.82183, 9.84408, 1.82491}, {-0.465658, 1.44144, 1.45577, 1.89829, 9.49861e-16, 3.00123e-18, 0.0801166, 0.574147, -1.4494, 4.53825, 6.04677, 0.0191057, -1.77083, -1.78172, -1.79943, -2.44545, -0.709685, 1.79156, 0.476556, -2.49141, -0.00787198, 4.30808, -5.05609, -7.61465, -8.06972, 2.49141, 0.00787198, 1.45037, -0.514866, 7.59705}, {4.31352, -3.43679, 1.70622, 1.43784, 0.720211, -1.45048, 0, -1.33263, 0, -1.50621e-12, -0.53318, 2.01922, -5.75136, -5.18711, 8.29783, -1.77727, 0.75699, 1.7929, 1.77727, 5.5617, 0.702999, 1.77727, 1.37573, -9.86978, -1.77727, -0.231184, -0.702999, 1.86177e-12, 2.30627, -2.4959}, {-1.43784, 1.1456, -0.568738, -4.31352, -2.16063, 4.35145, 0, -1.33263, 0, -1.50909e-12, -0.53318, 2.01922, 5.75136, -6.88865, 4.77085, -1.77727, 6.08751, 1.7929, 1.77727, 0.231184, 0.702999, 1.77727, -0.75699, -1.7929, -1.77727, 1.90153, -8.77989, 1.86534e-12, 2.30627, -2.4959}, {-1.43784, 1.1456, -0.568738, 1.43784, 0.720211, -1.45048, 0, 3.99789, 0, -1.50945e-12, -0.53318, 2.01922, -1.86543e-12, -2.30627, 2.4959, -7.52863, -2.12386, 7.59483, 7.52863, -4.3512, 2.97795, 1.77727, -0.75699, -1.7929, -1.77727, -0.231184, -0.702999, 7.90358e-12, 4.43898, -10.5728}, {-1.43784, 1.1456, -0.568738, 1.43784, 0.720211, -1.45048, 0, -1.33263, 0, 4.52348e-12, 1.59954, -6.05767, -1.86342e-12, -2.30627, 2.4959, -1.77727, 0.75699, 1.7929, 1.77727, 0.231184, 0.702999, 7.52863, -5.33938, 0.482057, -7.52863, -3.11203, 5.09894, 1.86378e-12, 7.63678, -2.4959}, {-4.90958, -4.91099, -14.364, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, -1.63653, -1.637, -1.63653, -10.2723, 6.22604, 2.33354, -1.68754e-14, 1.70974e-14, 3.89543, 6.22661, -10.2729, 2.33118, 6.54611, 6.54798, 2.65068, 0.0754226, 3.97087, 3.97085, 3.9703, 0.076001, 3.9703}, {1.63653, 1.637, 4.788, -4.72653, 4.72653, 4.72788, -1.57551, 1.57551, -1.57551, -1.63653, -1.637, -1.63653, -10.5164, -6.62398, -23.1223, 6.30204, -6.30204, 10.1975, -0.0754226, -3.97087, -3.97085, 1.38046e-14, -1.50613e-14, -3.89543, 6.62153, 10.5189, 10.517, 3.9703, 0.076001, 3.9703}, {1.63653, 1.637, 4.788, 1.57551, -1.57551, -1.57596, 4.72653, -4.72653, 4.72653, -1.63653, -1.637, -1.63653, -3.9703, -0.076001, -3.9703, -6.30204, 6.30204, 10.1993, -6.62153, -10.5189, -23.1228, 1.64691e-14, -1.72818e-14, -3.89543, 0.0754226, 3.97087, 3.97085, 10.5164, 6.62398, 10.5164}, {1.63653, 1.637, 4.788, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, 4.90958, 4.91099, 4.90958, -3.9703, -0.076001, -3.9703, -1.70974e-14, 1.68754e-14, 3.89543, -0.0754226, -3.97087, -3.97085, -6.54611, -6.54798, -23.0474, -6.22661, 10.2729, 10.2747, 10.2723, -6.22604, 10.2723}, {1.1292, -10.9335, -1.11964, 0, 0, 1.60567, 1.79029, -1.78764, -1.78873, -1.41389, -1.85687, -0.190152, 0.465254, -4.50486, -8.8687, -2.21292, 2.20964, 0.226277, -8.90884, 4.85533, 8.90459, 7.8685, 5.21784, 0.53433, 1.74767, 2.29522, -1.74967, -0.465254, 4.50486, 2.44603}, {-0.376399, 3.64451, 0.373213, 3.83169e-15, 8.27924e-17, -4.817, 1.79029, -1.78764, -1.78873, -1.41389, -1.85687, -0.190152, 1.97085, -19.0829, -3.93889, -9.37409, 9.36019, 7.3812, -1.74767, -2.29522, 1.74967, 2.21292, -2.20964, -0.226277, 7.40324, 9.72271, -0.989068, -0.465254, 4.50486, 2.44603}, {-0.376399, 3.64451, 0.373213, -2.25438e-15, -2.96069e-15, 1.60567, -5.37088, 5.36291, 5.36619, -1.41389, -1.85687, -0.190152, 0.465254, -4.50486, -2.44603, -2.21292, 2.20964, -6.1964, -0.242074, -16.8733, 0.256821, 2.21292, -2.20964, -0.226277, 1.74767, 2.29522, -1.74967, 5.19032, 11.9323, 3.20664}, {-0.376399, 3.64451, 0.373213, 0, 0, 1.60567, 1.79029, -1.78764, -1.78873, 4.24168, 5.57061, 0.570455, 0.465254, -4.50486, -2.44603, -2.21292, 2.20964, 0.226277, -1.74767, -2.29522, 1.74967, 3.71852, -16.7877, -1.71913, 1.74767, 2.29522, -8.17235, -7.62642, 11.6554, 9.60095}, {-9.76996e-15, 8.88178e-16, -7.02938, 1.78885, 2.33948, -2.34059, -1.78885, 6.92504e-12, -0.00253498, 0, -2.33948, 0, -9.36656, -12.2497, 9.35923, 3.9968e-15, -2.89175, 2.89626, 9.36656, -3.62599e-11, -2.88299, -3.9968e-15, 12.2497, -2.89626, -2.21115, 8.55982e-12, 2.89313, 2.21115, 2.89175, 0.00313341}, {-2.22045e-15, -1.33227e-15, 2.34313, -5.36656, -7.01844, 7.02177, -1.78885, 6.92556e-12, -0.00253498, 0, -2.33948, 0, -2.21115, -2.89175, -9.37564, 7.15542, -2.89175, 2.9064, 2.21115, -8.55893e-12, -2.89313, 2.66454e-15, 2.89175, -2.89626, -2.21115, 9.35791, 2.89313, 2.21115, 2.89175, 0.00313341}, {3.9968e-15, 3.55271e-15, 2.34313, 1.78885, 2.33948, -2.34059, 5.36656, -2.0786e-11, 0.00760494, 0, -2.33948, 0, -2.21115, -2.89175, -0.00313341, -7.15542, -12.2497, 12.2586, 2.21115, -8.58513e-12, -12.2656, -4.88498e-15, 2.89175, -2.89626, -2.21115, 8.5687e-12, 2.89313, 2.21115, 12.2497, 0.00313341}, {0, 4.44089e-16, 2.34313, 1.78885, 2.33948, -2.34059, -1.78885, 6.92763e-12, -0.00253498, 0, 7.01844, 0, -2.21115, -2.89175, -0.00313341, 0, -2.89175, 2.89626, 2.21115, -8.56337e-12, -2.89313, 0, 2.89175, -12.2688, -9.36656, -9.35791, 12.2555, 9.36656, 2.89175, 0.0132733}, {5.21741, 5.22554, 3.98943, -2.33948, 0, 0, 1.54072, 1.54312, -0.61076, 2.53789, 0.198723, 1.94057, 14.3994, 2.15304, 1.64373, 0.987318, -1.90741, 0.754941, -5.91764, -5.92686, 4.84171, -11.1389, 1.11252, -8.51722, -0.245252, -0.245635, -2.39867, -5.04144, -2.15304, -1.64373}, {-1.73914, -1.74185, -1.32981, 7.01844, 0, 0, 1.54072, 1.54312, -0.61076, 2.53789, 0.198723, 1.94057, 11.998, 9.12042, 6.96297, -5.17557, -8.0799, 3.19798, 0.245252, 0.245635, 2.39867, -0.987318, 1.90741, -0.754941, -10.3968, -1.04052, -10.1609, -5.04144, -2.15304, -1.64373}, {-1.73914, -1.74185, -1.32981, -2.33948, 0, 0, -4.62217, -4.62937, 1.83228, 2.53789, 0.198723, 1.94057, 5.04144, 2.15304, 1.64373, 10.3452, -1.90741, 0.754941, 7.20179, 7.21302, 7.71791, -0.987318, 1.90741, -0.754941, -0.245252, -0.245635, -2.39867, -15.193, -2.94793, -9.40601}, {-1.73914, -1.74185, -1.32981, -2.33948, 0, 0, 1.54072, 1.54312, -0.61076, -7.61368, -0.596168, -5.82171, 5.04144, 2.15304, 1.64373, 0.987318, -1.90741, 0.754941, 0.245252, 0.245635, 2.39867, 5.96922, 8.87479, 4.5643, 9.11266, -0.245635, -2.39867, -11.2043, -8.32553, 0.799305}, {10.9417, 1.1195, -1.12048, -2.16738e-15, -8.61236e-16, 1.60567, 1.79007, 1.78742, -1.78898, 1.85717, -1.41425, -0.190182, 4.50824, 0.46126, -8.86905, -2.21265, -2.20937, 0.226585, -4.86469, -8.89778, 8.90555, -5.21604, 7.86637, 0.534145, -2.29559, 1.74811, -1.74964, -4.50824, -0.46126, 2.44638}, {-3.64724, -0.373167, 0.373493, -8.02431e-17, 3.82867e-15, -4.817, 1.79007, 1.78742, -1.78898, 1.85717, -1.41425, -0.190182, 19.0972, 1.95393, -3.94035, -9.37293, -9.35904, 7.3825, 2.29559, -1.74811, 1.74964, 2.21265, 2.20937, -0.226585, -9.72428, 7.40511, -0.988907, -4.50824, -0.46126, 2.44638}, {-3.64724, -0.373167, 0.373493, 2.96117e-15, -2.25495e-15, 1.60567, -5.37021, -5.36225, 5.36694, 1.85717, -1.41425, -0.190182, 4.50824, 0.46126, -2.44638, -2.21265, -2.20937, -6.19609, 16.8846, -0.25544, 0.255663, 2.21265, 2.20937, -0.226585, -2.29559, 1.74811, -1.74964, -11.9369, 5.19574, 3.20711}, {-3.64724, -0.373167, 0.373493, -7.40292e-16, 5.63738e-16, 1.60567, 1.79007, 1.78742, -1.78898, -5.57152, 4.24275, 0.570547, 4.50824, 0.46126, -2.44638, -2.21265, -2.20937, 0.226585, 2.29559, -1.74811, 1.74964, 16.8016, 3.70204, -1.72056, -2.29559, 1.74811, -8.17231, -11.6685, -7.61093, 9.60229}, {1.83228, 4.62937, -4.62937, 0, 0, -1.60567, 1.94057, -0.198723, 0.198723, -1.32981, 1.74185, -0.136178, 0.754941, 1.90741, 6.49998, -2.39867, 0.245635, 1.73908, -9.40601, 2.94793, -2.94793, 7.71791, -7.21302, -1.19437, 1.64373, -2.15304, 2.15304, -0.754941, -1.90741, -0.0773091}, {-0.61076, -1.54312, 1.54312, 0, 0, 4.817, 1.94057, -0.198723, 0.198723, -1.32981, 1.74185, -0.136178, 3.19798, 8.0799, -6.09519, -10.1609, 1.04052, 0.94419, -1.64373, 2.15304, -2.15304, 2.39867, -0.245635, -1.73908, 6.96297, -9.12042, 2.69775, -0.754941, -1.90741, -0.0773091}, {-0.61076, -1.54312, 1.54312, 0, 0, -1.60567, -5.82171, 0.596168, -0.596168, -1.32981, 1.74185, -0.136178, 0.754941, 1.90741, 0.0773091, -2.39867, 0.245635, 8.16175, 0.799305, 8.32553, -8.32553, 2.39867, -0.245635, -1.73908, 1.64373, -2.15304, 2.15304, 4.5643, -8.87479, 0.467403}, {-0.61076, -1.54312, 1.54312, 0, 0, -1.60567, 1.94057, -0.198723, 0.198723, 3.98943, -5.22554, 0.408534, 0.754941, 1.90741, 0.0773091, -2.39867, 0.245635, 1.73908, -1.64373, 2.15304, -2.15304, 4.84171, 5.92686, -7.91157, 1.64373, -2.15304, 8.57571, -8.51722, -1.11252, -0.872199}, {-1.12374, 4.33994, -1.71772, 0.422512, 1.58777e-12, -2.01922, 0.258935, 1.44665, 1.44665, -1.05603, 0, 0, -2.6753, 1.78815, 9.86504, -0.842315, -1.78815, 0.707741, -1.81881, -5.78659, -8.28248, 5.06642, 1.78815, -0.707741, 0.783066, -1.96259e-12, 2.4959, 0.985258, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, -1.26754, -4.76439e-12, 6.05767, 0.258935, 1.44665, 1.44665, -1.05603, 0, 0, -2.48357, 7.57474, -0.502145, -1.87805, -7.57474, -5.07885, -0.783066, 1.9634e-12, -2.4959, 0.842315, 1.78815, -0.707741, 5.00717, -1.96304e-12, 2.4959, 0.985258, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, 0.422512, 1.58777e-12, -2.01922, -0.776805, -4.33994, -4.33994, -1.05603, 0, 0, -0.985258, 1.78815, 1.78815, -2.53236, -1.78815, 8.78463, -2.28138, 5.78659, -4.7862, 0.842315, 1.78815, -0.707741, 0.783066, -1.96259e-12, 2.4959, 5.20936, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, 0.422512, 1.58813e-12, -2.01922, 0.258935, 1.44665, 1.44665, 3.16808, 0, 0, -0.985258, 1.78815, 1.78815, -0.842315, -1.78815, 0.707741, -0.783066, 1.9634e-12, -2.4959, -0.656, 7.57474, -2.99804, -0.906981, -8.31556e-12, 10.5728, -0.0504823, -7.57474, -7.57474}, {-4.08784, 4.08784, -5.36656, 0, 3.15147, 0, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -14.817, -2.21115, 3.89543, -3.89543, 0, 14.817, 1.68428, -2.21115, -11.0508, 11.0508, 7.15542, -2.21115, -1.68428, 2.21115, 1.68428, 2.21115, 2.21115}, {1.36261, -1.36261, 1.78885, -1.15954e-14, -9.45441, 4.1986e-15, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -7.13474, 3.23931, -9.36656, 16.5013, -3.89543, 1.72992e-15, 2.21115, 1.68428, -2.21115, -3.89543, 3.89543, -2.17401e-15, -9.36656, 5.47113, 9.36656, 1.68428, 2.21115, 2.21115}, {1.36261, -1.36261, 1.78885, 0, 3.15147, 0, 9.45441, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -2.21115, -2.21115, 3.89543, -16.5013, 0, -3.23931, 7.13474, -9.36656, -3.89543, 3.89543, -4.44089e-16, -2.21115, -1.68428, 2.21115, -5.47113, 9.36656, 9.36656}, {1.36261, -1.36261, 1.78885, 0, 3.15147, 0, -3.15147, 0, 0, -5.36656, 5.36656, 5.36656, -1.68428, -2.21115, -2.21115, 3.89543, -3.89543, 0, 2.21115, 1.68428, -2.21115, -9.34589, 9.34589, -7.15542, -2.21115, -14.2902, 2.21115, 14.2902, 2.21115, 2.21115}, {1.11747, -3.79023, -1.1121, -0.361676, -1.4194, 0.363688, 1.52298, 0.102889, 0.820003, -0.788811, 0.0531033, -1.55439, 2.35418, 5.87043, -2.3625, -1.43545, 1.6273, -1.46312, -7.51399, -2.1004, -4.7518, 4.59069, -1.83971, 7.68068, 1.42208, 1.68884, 1.47179, -0.907478, -0.192817, 0.907751}, {-0.372489, 1.26341, 0.370699, 1.08503, 4.25821, -1.09106, 1.52298, 0.102889, 0.820003, -0.788811, 0.0531033, -1.55439, 2.39743, -4.86083, -2.39055, -7.52735, 1.21575, -4.74314, -1.42208, -1.68884, -1.47179, 1.43545, -1.6273, 1.46312, 4.57732, 1.47643, 7.68935, -0.907478, -0.192817, 0.907751}, {-0.372489, 1.26341, 0.370699, -0.361676, -1.4194, 0.363688, -4.56893, -0.308667, -2.46001, -0.788811, 0.0531033, -1.55439, 0.907478, 0.192817, -0.907751, 0.0112586, 7.30492, -2.91787, 0.0678761, -6.74249, -2.95458, 1.43545, -1.6273, 1.46312, 1.42208, 1.68884, 1.47179, 2.24777, -0.40523, 7.12531}, {-0.372489, 1.26341, 0.370699, -0.361676, -1.4194, 0.363688, 1.52298, 0.102889, 0.820003, 2.36643, -0.15931, 4.66317, 0.907478, 0.192817, -0.907751, -1.43545, 1.6273, -1.46312, -1.42208, -1.68884, -1.47179, 2.9254, -6.68095, -0.0196727, 2.86879, 7.36645, 0.0170383, -6.99938, -0.604373, -2.37226}, {4.44089e-15, -4.05009, 8.88178e-16, -0.572575, -0.625677, 1.44665, 2.01922, -0.706554, 1.38558e-12, -1.44665, -0.0177991, -1.44665, 2.99804, 1.60736, -7.57474, -1.78815, 1.64673, -1.78815, -10.5728, 2.03083, -7.25442e-12, 7.57474, -1.57553, 7.57474, 2.4959, 0.79538, 1.71219e-12, -0.707741, 0.895349, 1.78815}, {-4.44089e-16, 1.35003, -2.22045e-15, 1.71772, 1.87703, -4.33994, 2.01922, -0.706554, 1.3879e-12, -1.44665, -0.0177991, -1.44665, 0.707741, -6.29547, -1.78815, -9.86504, 4.47294, -1.78815, -2.4959, -0.79538, -1.71263e-12, 1.78815, -1.64673, 1.78815, 8.28248, 0.866577, 5.78659, -0.707741, 0.895349, 1.78815}, {8.88178e-16, 1.35003, 6.66134e-16, -0.572575, -0.625677, 1.44665, -6.05767, 2.11966, -4.15591e-12, -1.44665, -0.0177991, -1.44665, 0.707741, -0.895349, -1.78815, 0.502145, 4.14944, -7.57474, -2.4959, -6.1955, -1.71596e-12, 1.78815, -1.64673, 1.78815, 2.4959, 0.79538, 1.7133e-12, 5.07885, 0.966546, 7.57474}, {4.44089e-16, 1.35003, 0, -0.572575, -0.625677, 1.44665, 2.01922, -0.706554, 1.38489e-12, 4.33994, 0.0533972, 4.33994, 0.707741, -0.895349, -1.78815, -1.78815, 1.64673, -1.78815, -2.4959, -0.79538, -1.71174e-12, 1.78815, -7.04685, 1.78815, 4.7862, 3.29809, -5.78659, -8.78463, 3.72156, 1.78815}, {1.70622, 4.31352, 1.19704, 8.51907e-16, 7.76069e-16, 1.08709, -1.45048, 1.43784, -0.312525, 2.01922, -1.65855e-12, -0.375548, 0.702999, 1.77727, -5.19885, 1.7929, -1.77727, -0.95741, 8.29783, -5.75136, 2.12961, -9.86978, 1.77727, 2.4596, -2.4959, 2.04913e-12, -0.879509, -0.702999, -1.77727, 0.850505}, {-0.568738, -1.43784, -0.399013, -2.80914e-15, 1.1641e-15, -3.26126, -1.45048, 1.43784, -0.312525, 2.01922, -1.65923e-12, -0.375548, 2.97795, 7.52863, 0.745546, 7.59483, -7.52863, 0.292691, 2.4959, -2.05105e-12, 0.879509, -1.7929, 1.77727, 0.95741, -10.5728, 8.68834e-12, 0.622683, -0.702999, -1.77727, 0.850505}, {-0.568738, -1.43784, -0.399013, 0, 0, 1.08709, 4.35145, -4.31352, 0.937576, 2.01922, -1.65685e-12, -0.375548, 0.702999, 1.77727, -0.850505, 1.7929, -1.77727, -5.30575, 4.77085, 5.75136, 2.47556, -1.7929, 1.77727, 0.95741, -2.4959, 2.04797e-12, -0.879509, -8.77989, -1.77727, 2.3527}, {-0.568738, -1.43784, -0.399013, 0, 0, 1.08709, -1.45048, 1.43784, -0.312525, -6.05767, 4.97324e-12, 1.12664, 0.702999, 1.77727, -0.850505, 1.7929, -1.77727, -0.95741, 2.4959, -2.04873e-12, 0.879509, 0.482057, 7.52863, 2.55346, -2.4959, 2.04909e-12, -5.22785, 5.09894, -7.52863, 2.10061}, {-2.41029, -2.40672, -2.40819, -0.80343, -0.802238, 0.80294, 1.63555, -1.63555, 0.0313083, -1.63555, 1.63555, -1.63698, 3.21372, 3.20895, -5.19647, -1.02855, 3.01327, -1.03119, -9.55693, 7.57221, -1.15616, 7.57074, -9.55546, 7.57909, 3.01474, -1.03003, 1.03093, 8.88178e-15, 5.77316e-15, 1.98471}, {0.80343, 0.802238, 0.802728, 2.41029, 2.40672, -2.40882, 1.63555, -1.63555, 0.0313083, -1.63555, 1.63555, -1.63698, -3.21372, -3.20895, -5.19563, -7.57074, 9.55546, -1.15642, -3.01474, 1.03003, -1.03093, 1.02855, -3.01327, 1.03119, 9.55693, -7.57221, 7.57883, 8.43769e-15, 7.54952e-15, 1.98471}, {0.80343, 0.802238, 0.802728, -0.80343, -0.802238, 0.80294, -4.90664, 4.90664, -0.0939249, -1.63555, 1.63555, -1.63698, -8.88178e-15, -7.54952e-15, -1.98471, 2.18516, 6.22222, -4.24295, -6.22846, -2.17893, -4.24184, 1.02855, -3.01327, 1.03119, 3.01474, -1.03003, 1.03093, 6.54219, -6.54219, 8.53262}, {0.80343, 0.802238, 0.802728, -0.80343, -0.802238, 0.80294, 1.63555, -1.63555, 0.0313083, 4.90664, -4.90664, 4.91093, -7.54952e-15, -8.43769e-15, -1.98471, -1.02855, 3.01327, -1.03119, -3.01474, 1.03003, -1.03093, -2.18516, -6.22222, -2.17973, 6.22846, 2.17893, -2.18083, -6.54219, 6.54219, 1.85948}, {-5.48006e-11, 5.36656, 0.00342441, 0, 0, -2.34462, 2.34313, 0, 0, -2.34313, 1.78885, 2.34576, -2.25788e-11, 2.21115, 12.278, -2.89626, 0, 2.89811, -12.2688, 2.21115, 0.00141093, 12.2688, -7.15542, -12.2812, 2.89626, -2.21115, -0.00141093, 2.25788e-11, -2.21115, -2.89952}, {1.2113e-11, -1.78885, -0.00114147, 0, 0, 7.03386, 2.34313, -1.04056e-15, -1.3645e-15, -2.34313, 1.78885, 2.34576, -6.34248e-11, 9.36656, 2.90409, -12.2688, 5.44843e-15, 2.89811, -2.89626, 2.21115, 0.00141093, 2.89626, -8.4211e-16, -2.89811, 12.2688, -9.36656, -9.38446, 1.49729e-11, -2.21115, -2.89952}, {1.2109e-11, -1.78885, -0.00114147, 0, 0, -2.34462, -7.02938, 0, 0, -2.34313, 1.78885, 2.34576, -1.49676e-11, 2.21115, 2.89952, -2.89626, 0, 12.2766, -2.89626, 9.36656, 0.00597681, 2.89626, 4.44089e-16, -2.89811, 2.89626, -2.21115, -0.00141093, 9.3725, -9.36656, -12.2826}, {1.21134e-11, -1.78885, -0.00114147, 0, 0, -2.34462, 2.34313, 0, 0, 7.02938, -5.36656, -7.03729, -1.49729e-11, 2.21115, 2.89952, -2.89626, 0, 2.89811, -2.89626, 2.21115, 0.00141093, 2.89626, 7.15542, -2.89354, 2.89626, -2.21115, 9.37707, -9.3725, -2.21115, -2.89952}, {-2.3518, -6.05767, -5.91704e-12, -0.0281756, -0.572575, -1.44665, -1.05603, 0, 0, 0.300269, -1.44665, 1.44665, -0.821464, 0.502145, 7.57474, 1.34015, 0.707741, 1.78815, 4.56043, -2.4959, -2.43827e-12, -2.54122, 5.07885, -7.57474, -0.336326, 2.4959, 2.43827e-12, 0.934166, 1.78815, -1.78815}, {0.783932, 2.01922, 1.9722e-12, 0.0845268, 1.71772, 4.33994, -1.05603, 0, 0, 0.300269, -1.44665, 1.44665, -4.06989, -9.86504, 1.78815, 5.56425, 0.707741, 1.78815, 0.336326, -2.4959, -2.43761e-12, -1.34015, -0.707741, -1.78815, -1.5374, 8.28248, -5.78659, 0.934166, 1.78815, -1.78815}, {0.783932, 2.01922, 1.97353e-12, -0.0281756, -0.572575, -1.44665, 3.16808, 0, 0, 0.300269, -1.44665, 1.44665, -0.934166, -1.78815, 1.78815, 1.45285, 2.99804, 7.57474, -2.7994, -10.5728, -1.03331e-11, -1.34015, -0.707741, -1.78815, -0.336326, 2.4959, 2.43938e-12, -0.266911, 7.57474, -7.57474}, {0.783932, 2.01922, 1.97287e-12, -0.0281756, -0.572575, -1.44665, -1.05603, 0, 0, -0.900808, 4.33994, -4.33994, -0.934166, -1.78815, 1.78815, 1.34015, 0.707741, 1.78815, 0.336326, -2.4959, -2.43872e-12, -4.47587, -8.78463, -1.78815, -0.223624, 4.7862, 5.78659, 5.15827, 1.78815, -1.78815}, {-2.45207, 5.12164, 2.36493, 0.0510009, -0.6557, 1.65667, -1.08957, 0.431245, -1.08957, 0.22121, 1.93167, 0.22121, -1.27735, 5.54352, -7.70003, 1.28374, 0.277442, -0.700975, 4.69474, -0.147797, 6.67946, -2.16858, -8.00412, -0.183865, -0.336471, -1.57718, -2.32119, 1.07335, -2.92072, 1.07335}, {0.817357, -1.70721, -0.788311, -0.153003, 1.9671, -4.97001, -1.08957, 0.431245, -1.08957, 0.22121, 1.93167, 0.22121, -4.34278, 9.74957, 2.07989, 5.64201, -1.44754, 3.6573, 0.336471, 1.57718, 2.32119, -1.28374, -0.277442, 0.700975, -1.22131, -9.30386, -3.20603, 1.07335, -2.92072, 1.07335}, {0.817357, -1.70721, -0.788311, 0.0510009, -0.6557, 1.65667, 3.2687, -1.29374, 3.2687, 0.22121, 1.93167, 0.22121, -1.07335, 2.92072, -1.07335, 1.07974, 2.90024, -7.32765, -2.93296, 8.40603, 5.47443, -1.28374, -0.277442, 0.700975, -0.336471, -1.57718, -2.32119, 0.18851, -10.6474, 0.18851}, {0.817357, -1.70721, -0.788311, 0.0510009, -0.6557, 1.65667, -1.08957, 0.431245, -1.08957, -0.66363, -5.795, -0.66363, -1.07335, 2.92072, -1.07335, 1.28374, 0.277442, -0.700975, 0.336471, 1.57718, 2.32119, -4.55317, 6.55141, 3.85422, -0.540475, 1.04562, -8.94786, 5.43162, -4.6457, 5.43162}, {-4.62937, -1.83228, -4.62937, 0.198723, -1.94057, 2.54185, 0, 0, -2.34313, -1.74185, 1.32981, -1.74185, -2.94793, 9.40601, -15.2167, -0.245635, 2.39867, -0.245635, -1.90741, -0.754941, 10.3614, 7.21302, -7.71791, 7.21302, 1.90741, 0.754941, -0.988857, 2.15304, -1.64373, 5.0493}, {1.54312, 0.61076, 1.54312, -0.596168, 5.82171, -7.62554, 0, 0, -2.34313, -1.74185, 1.32981, -1.74185, -8.32553, -0.799305, -11.2218, -0.245635, 2.39867, 9.12687, -1.90741, -0.754941, 0.988857, 0.245635, -2.39867, 0.245635, 8.87479, -4.5643, 5.97853, 2.15304, -1.64373, 5.0493}, {1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 2.54185, 0, 0, 7.02938, -1.74185, 1.32981, -1.74185, -2.15304, 1.64373, -5.0493, -1.04052, 10.1609, -10.413, -8.0799, -3.19798, -5.18364, 0.245635, -2.39867, 0.245635, 1.90741, 0.754941, -0.988857, 9.12042, -6.96297, 12.0167}, {1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 2.54185, 0, 0, -2.34313, 5.22554, -3.98943, 5.22554, -2.15304, 1.64373, -5.0493, -0.245635, 2.39867, -0.245635, -1.90741, -0.754941, 0.988857, -5.92686, -4.84171, -5.92686, 1.11252, 8.51722, -11.1562, 2.15304, -1.64373, 14.4218}, {3.9353, 3.03575, -0.94776, 1.31177, -0.633999, -0.948528, 0, 0.442478, 1.49023, 0, 1.20344, -0.85762, -5.24706, 4.57046, 4.57606, -1.62143, 0.236733, -0.669578, 1.62143, -1.06605, -8.19343, 1.62143, -5.05048, 4.10006, -1.62143, -0.703864, 2.23252, 0, -2.03446, -0.781946}, {-1.31177, -1.01192, 0.31592, -3.9353, 1.902, 2.84558, 0, 0.442478, 1.49023, 0, 1.20344, -0.85762, 5.24706, 6.08213, -0.481733, -1.62143, -1.53318, -6.63049, 1.62143, 0.703864, -2.23252, 1.62143, -0.236733, 0.669578, -1.62143, -5.51761, 5.663, 0, -2.03446, -0.781946}, {-1.31177, -1.01192, 0.31592, 1.31177, -0.633999, -0.948528, 0, -1.32743, -4.47068, 0, 1.20344, -0.85762, 3.2565e-16, 2.03446, 0.781946, -6.86849, 2.77273, 3.12453, 6.86849, 4.75153, -3.4962, 1.62143, -0.236733, 0.669578, -1.62143, -0.703864, 2.23252, 0, -6.84821, 2.64853}, {-1.31177, -1.01192, 0.31592, 1.31177, -0.633999, -0.948528, 0, 0.442478, 1.49023, 0, -3.61031, 2.57286, 3.2565e-16, 2.03446, 0.781946, -1.62143, 0.236733, -0.669578, 1.62143, 0.703864, -2.23252, 6.86849, 3.81093, -0.594102, -6.86849, 1.83213, 6.02663, 0, -3.80438, -6.74286}, {8.88178e-16, -9.65337e-16, 5.41667, 1.44665, 1.44665, 1.40715, 0.572575, -1.44665, 1.02216, -2.01922, -1.9703e-12, -0.623753, -7.57474, -7.57474, -5.13614, -2.4959, -2.43516e-12, -3.00279, -2.99804, 7.57474, -3.1203, 10.5728, 1.03164e-11, 5.4978, 0.707741, -1.78815, -0.968332, 1.78815, 1.78815, -0.492457}, {-4.44089e-16, -2.99727e-18, -1.80556, -4.33994, -4.33994, -4.22145, 0.572575, -1.44665, 1.02216, -2.01922, -1.97286e-12, -0.623753, -1.78815, -1.78815, 7.71468, -4.7862, 5.78659, -7.09142, -0.707741, 1.78815, 0.968332, 2.4959, 2.43872e-12, 3.00279, 8.78463, -1.78815, 1.52668, 1.78815, 1.78815, -0.492457}, {0, 1.65544e-16, -1.80556, 1.44665, 1.44665, 1.40715, -1.71772, 4.33994, -3.06648, -2.01922, -1.97103e-12, -0.623753, -1.78815, -1.78815, 0.492457, -8.28248, -5.78659, -8.63139, -0.707741, 1.78815, 8.19056, 2.4959, 2.43605e-12, 3.00279, 0.707741, -1.78815, -0.968332, 9.86504, 1.78815, 2.00255}, {0, 7.512e-17, -1.80556, 1.44665, 1.44665, 1.40715, 0.572575, -1.44665, 1.02216, 6.05767, 5.91749e-12, 1.87126, -1.78815, -1.78815, 0.492457, -2.4959, -2.43805e-12, -3.00279, -0.707741, 1.78815, 0.968332, 2.4959, 2.43775e-12, 10.225, -5.07885, -7.57474, -6.59693, -0.502145, 7.57474, -4.58109}, {4.36745, -2.27082, -4.32425, 1.62046e-12, 0.53318, -2.01922, 0, -1.33263, 0, 1.45582, 0.0425099, 0.577805, 1.79949, -3.72739, 8.79109, -2.00299e-12, 0.988174, 2.4959, 1.79949, 6.04211, -1.78169, -5.82327, -1.15821, -4.80711, -1.79949, -0.711591, 1.78169, -1.79949, 1.59467, -0.714206}, {-1.45582, 0.756939, 1.44142, -4.85808e-12, -1.59954, 6.05767, 0, -1.33263, 0, 1.45582, 0.0425099, 0.577805, 7.62276, -4.62243, -5.05146, -2.00164e-12, 6.31869, 2.4959, 1.79949, 0.711591, -1.78169, 2.002e-12, -0.988174, -2.4959, -7.62276, -0.881631, -0.529529, -1.79949, 1.59467, -0.714206}, {-1.45582, 0.756939, 1.44142, 1.61717e-12, 0.53318, -2.01922, 0, 3.99789, 0, 1.45582, 0.0425099, 0.577805, 1.79949, -1.59467, 0.714206, -8.46762e-12, -1.14454, 10.5728, 7.62276, -2.31617, -7.54736, 1.9993e-12, -0.988174, -2.4959, -1.79949, -0.711591, 1.78169, -7.62276, 1.42464, -3.02542}, {-1.45582, 0.756939, 1.44142, 1.61827e-12, 0.53318, -2.01922, 0, -1.33263, 0, -4.36745, -0.12753, -1.73341, 1.79949, -1.59467, 0.714206, -2.00029e-12, 0.988174, 2.4959, 1.79949, 0.711591, -1.78169, 5.82327, -4.01593, -8.26156, -1.79949, -2.84431, 9.85858, -1.79949, 6.92519, -0.714206}, {-3.26389, 1.55026, 1.55311, -0.994319, -0.995188, -0.994319, -0.203724, 1.40177, -0.203724, 0.110078, 0.110174, 1.71575, 3.86152, 5.84961, 5.84624, 1.48086, -0.502558, 1.48086, -0.278087, -6.701, 1.70663, -1.92117, 0.0618612, -8.34385, 1.09298, 1.09394, -0.891733, 0.115752, -1.86886, -1.86896}, {1.08796, -0.516753, -0.517703, 2.98296, 2.98556, 2.98296, -0.203724, 1.40177, -0.203724, 0.110078, 0.110174, 1.71575, -4.46761, 3.93587, 3.93978, 2.29576, -6.10962, 2.29576, -1.09298, -1.09394, 0.891733, -1.48086, 0.502558, -1.48086, 0.65267, 0.65324, -7.75472, 0.115752, -1.86886, -1.86896}, {1.08796, -0.516753, -0.517703, -0.994319, -0.995188, -0.994319, 0.611171, -4.2053, 0.611171, 0.110078, 0.110174, 1.71575, -0.115752, 1.86886, 1.86896, 5.45814, 3.47819, 5.45814, -5.44484, 0.973073, 2.96255, -1.48086, 0.502558, -1.48086, 1.09298, 1.09394, -0.891733, -0.32456, -2.30956, -8.73195}, {1.08796, -0.516753, -0.517703, -0.994319, -0.995188, -0.994319, -0.203724, 1.40177, -0.203724, -0.330234, -0.330523, -5.14724, -0.115752, 1.86886, 1.86896, 1.48086, -0.502558, 1.48086, -1.09298, -1.09394, 0.891733, -5.83272, 2.56957, 0.589952, 5.07026, 5.07469, 3.08554, 0.930647, -7.47593, -1.05407}, {5.37021, -5.36225, 5.37163, 3.64724, -0.373167, 0.376681, -1.85717, -1.41425, -0.191806, 0, 0, 1.60567, -16.8846, -0.25544, 0.240906, -2.21265, 2.20937, -0.228519, 11.9369, 5.19574, 3.21754, 2.21265, -2.20937, -6.19415, -4.50824, 0.46126, -2.45032, 2.29559, 1.74811, -1.74763}, {-1.79007, 1.78742, -1.79054, -10.9417, 1.1195, -1.13004, -1.85717, -1.41425, -0.191806, 7.40292e-16, 5.63738e-16, 1.60567, 4.86469, -8.89778, 8.9098, 5.21604, 7.86637, 0.538704, 4.50824, -0.46126, 2.45032, 2.21265, -2.20937, 0.228519, -4.50824, 0.46126, -8.87299, 2.29559, 1.74811, -1.74763}, {-1.79007, 1.78742, -1.79054, 3.64724, -0.373167, 0.376681, 5.57152, 4.24275, 0.575417, 0, 0, 1.60567, -2.29559, -1.74811, 1.74763, -16.8016, 3.70204, -1.73524, 11.6685, -7.61093, 9.61249, 2.21265, -2.20937, 0.228519, -4.50824, 0.46126, -2.45032, 2.29559, 1.74811, -8.1703}, {-1.79007, 1.78742, -1.79054, 3.64724, -0.373167, 0.376681, -1.85717, -1.41425, -0.191806, 0, 0, -4.817, -2.29559, -1.74811, 1.74763, -2.21265, 2.20937, -0.228519, 4.50824, -0.46126, 2.45032, 9.37293, -9.35904, 7.39069, -19.0972, 1.95393, -3.95704, 9.72428, 7.40511, -0.980408}, {-3.03198, 1.78237, 1.1993, 0.5032, 0.50364, 1.82018, -0.838801, -0.839534, 0.331788, -0.67506, 0.930018, -1.7522, -3.88404, -1.90272, -9.03645, 0.414826, 0.415188, -2.65998, 3.14277, 5.13024, -1.24312, 2.28541, -4.13526, 9.66879, 0.212431, -1.7721, -0.084027, 1.87124, -0.111844, 1.75573}, {1.01066, -0.594124, -0.399767, -1.5096, -1.51092, -5.46054, -0.838801, -0.839534, 0.331788, -0.67506, 0.930018, -1.7522, -5.91388, 2.48834, -0.156659, 3.77003, 3.77333, -3.98713, -0.212431, 1.7721, 0.084027, -0.414826, -0.415188, 2.65998, 2.91267, -5.49217, 6.92478, 1.87124, -0.111844, 1.75573}, {1.01066, -0.594124, -0.399767, 0.5032, 0.50364, 1.82018, 2.5164, 2.5186, -0.995364, -0.67506, 0.930018, -1.7522, -1.87124, 0.111844, -1.75573, -1.59797, -1.59937, -9.9407, -4.25508, 4.14859, 1.6831, -0.414826, -0.415188, 2.65998, 0.212431, -1.7721, -0.084027, 4.57148, -3.83192, 8.76454}, {1.01066, -0.594124, -0.399767, 0.5032, 0.50364, 1.82018, -0.838801, -0.839534, 0.331788, 2.02518, -2.79005, 5.25661, -1.87124, 0.111844, -1.75573, 0.414826, 0.415188, -2.65998, -0.212431, 1.7721, 0.084027, -4.45747, 1.96131, 4.25905, -1.80037, -3.78666, -7.36475, 5.22644, 3.24629, 0.428576}, {-4.62937, 1.83228, -4.62937, 0.198723, 1.94057, 2.54185, -1.74185, -1.32981, -1.74185, 0, 0, -2.34313, -2.94793, -9.40601, -15.2167, 1.90741, -0.754941, -0.988857, 7.21302, 7.71791, 7.21302, -1.90741, 0.754941, 10.3614, -0.245635, -2.39867, -0.245635, 2.15304, 1.64373, 5.0493}, {1.54312, -0.61076, 1.54312, -0.596168, -5.82171, -7.62554, -1.74185, -1.32981, -1.74185, 0, 0, -2.34313, -8.32553, 0.799305, -11.2218, 8.87479, 4.5643, 5.97853, 0.245635, 2.39867, 0.245635, -1.90741, 0.754941, 0.988857, -0.245635, -2.39867, 9.12687, 2.15304, 1.64373, 5.0493}, {1.54312, -0.61076, 1.54312, 0.198723, 1.94057, 2.54185, 5.22554, 3.98943, 5.22554, 0, 0, -2.34313, -2.15304, -1.64373, -5.0493, 1.11252, -8.51722, -11.1562, -5.92686, 4.84171, -5.92686, -1.90741, 0.754941, 0.988857, -0.245635, -2.39867, -0.245635, 2.15304, 1.64373, 14.4218}, {1.54312, -0.61076, 1.54312, 0.198723, 1.94057, 2.54185, -1.74185, -1.32981, -1.74185, 0, 0, 7.02938, -2.15304, -1.64373, -5.0493, 1.90741, -0.754941, -0.988857, 0.245635, 2.39867, 0.245635, -8.0799, 3.19798, -5.18364, -1.04052, -10.1609, -10.413, 9.12042, 6.96297, 12.0167}, {-4.33994, 0.458772, -1.71772, 0, 1.39654, 0, -1.44665, -0.27723, 1.44665, 1.76979e-12, -0.966385, -2.01922, -1.78815, -7.12335, -0.707741, 1.78815, -1.38354, -1.78815, 5.78659, 1.64062, -8.28248, -1.78815, 5.24908, 9.86504, -2.18758e-12, -0.531699, 2.4959, 1.78815, 1.53719, 0.707741}, {1.44665, -0.152924, 0.572575, 1.50464e-15, -4.18962, 4.79586e-15, -1.44665, -0.27723, 1.44665, 1.77122e-12, -0.966385, -2.01922, -7.57474, -0.925496, -2.99804, 7.57474, -0.274623, -7.57474, 2.18837e-12, 0.531699, -2.4959, -1.78815, 1.38354, 1.78815, -9.27361e-12, 3.33384, 10.5728, 1.78815, 1.53719, 0.707741}, {1.44665, -0.152924, 0.572575, 2.45632e-27, 1.39654, -2.80022e-15, 4.33994, 0.831689, -4.33994, 1.77124e-12, -0.966385, -2.01922, -1.78815, -1.53719, -0.707741, 1.78815, -6.9697, -1.78815, -5.78659, 1.1434, -4.7862, -1.78815, 1.38354, 1.78815, -2.18937e-12, -0.531699, 2.4959, 1.78815, 5.40273, 8.78463}, {1.44665, -0.152924, 0.572575, 0, 1.39654, 0, -1.44665, -0.27723, 1.44665, -5.31262e-12, 2.89915, 6.05767, -1.78815, -1.53719, -0.707741, 1.78815, -1.38354, -1.78815, 2.18856e-12, 0.531699, -2.4959, -7.57474, 1.99524, -0.502145, -2.18892e-12, -6.11785, 2.4959, 7.57474, 2.64611, -5.07885}, {3.99411, 0.408657, -5.22602, 1.94285, 0.198782, -0.198956, -0.611477, 1.5417, -1.54305, 0, -1.60427, 0, -8.52722, -0.872462, -1.11149, -1.64567, -2.15136, 2.15324, 4.8474, -7.90408, 5.92628, 1.64567, 8.56842, -2.15324, -2.40149, 1.73727, 0.245923, 0.755828, 0.0773324, 1.90731}, {-1.33137, -0.136219, 1.74201, -5.82855, -0.596347, 0.596868, -0.611477, 1.5417, -1.54305, 0, -1.60427, 0, 4.56966, 0.467544, -8.87534, 0.800244, -8.31817, 8.32544, 2.40149, -1.73727, -0.245923, 1.64567, 2.15136, -2.15324, -2.40149, 8.15434, 0.245923, 0.755828, 0.0773324, 1.90731}, {-1.33137, -0.136219, 1.74201, 1.94285, 0.198782, -0.198956, 1.83443, -4.62511, 4.62915, 0, -1.60427, 0, -0.755828, -0.0773324, -1.90731, -9.41706, -2.94649, 2.94906, 7.72698, -1.1924, -7.21395, 1.64567, 2.15136, -2.15324, -2.40149, 1.73727, 0.245923, 0.755828, 6.4944, 1.90731}, {-1.33137, -0.136219, 1.74201, 1.94285, 0.198782, -0.198956, -0.611477, 1.5417, -1.54305, 0, 4.8128, 0, -0.755828, -0.0773324, -1.90731, -1.64567, -2.15136, 2.15324, 2.40149, -1.73727, -0.245923, 6.97115, 2.69623, -9.12126, -10.1729, 0.942144, 1.04175, 3.20174, -6.08948, 8.07952}, {1.7133, -2.45292, -4.3293, -1.44292, 0.0459567, -1.45561, 0, -1.33263, 0, 2.01402, 0.469033, 0.0125109, 8.26116, -1.25129, 5.83791, 1.78355, 1.59041, 1.79923, 0.70592, 5.96708, -1.78377, -9.83965, -3.46655, -1.84928, -0.70592, -0.636563, 1.78377, -2.48947, 1.06746, -0.0154644}, {-0.571101, 0.817639, 1.4431, 4.32877, -0.13787, 4.36683, 0, -1.33263, 0, 2.01402, 0.469033, 0.0125109, 4.77387, -4.33802, -5.75693, 1.78355, 6.92093, 1.79923, 0.70592, 0.636563, -1.78377, -1.78355, -1.59041, -1.79923, -8.76202, -2.5127, 1.73373, -2.48947, 1.06746, -0.0154644}, {-0.571101, 0.817639, 1.4431, -1.44292, 0.0459567, -1.45561, 0, 3.99789, 0, 2.01402, 0.469033, 0.0125109, 2.48947, -1.06746, 0.0154644, 7.55524, 1.40659, 7.62167, 2.99032, -2.63399, -7.55617, -1.78355, -1.59041, -1.79923, -0.70592, -0.636563, 1.78377, -10.5456, -0.808671, -0.0655081}, {-0.571101, 0.817639, 1.4431, -1.44292, 0.0459567, -1.45561, 0, -1.33263, 0, -6.04207, -1.4071, -0.0375328, 2.48947, -1.06746, 0.0154644, 1.78355, 1.59041, 1.79923, 0.70592, 0.636563, -1.78377, 0.500853, -4.86097, -7.57163, 5.06577, -0.82039, 7.60621, -2.48947, 6.39798, -0.0154644}, {7.61576, -5.82053, 0.598329, -1.54462, -0.610276, -1.54223, 1.74008, -1.3299, 1.74168, 2.34313, 0, 0, 11.2256, 0.797254, 8.32176, -0.241602, 2.39819, -0.246525, -5.97333, 4.56526, -8.87301, -9.1309, -2.39819, 0.246525, -0.987004, 0.754342, 1.9063, -5.04712, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, 4.63387, 1.83083, 4.6267, 1.74008, -1.3299, 1.74168, 2.34313, 7.73589e-16, -1.01311e-15, 15.2015, -9.40456, 2.9506, -7.20193, 7.7178, -7.21323, 0.987004, -0.754342, -1.9063, 0.241602, -2.39819, 0.246525, -10.3595, 0.754342, 1.9063, -5.04712, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, -1.54462, -0.610276, -1.54223, -5.22025, 3.9897, -5.22503, 2.34313, 0, 0, 5.04712, -1.64385, 2.15283, 5.93689, 4.83929, 5.92241, 11.1413, -8.51505, -1.10853, 0.241602, -2.39819, 0.246525, -0.987004, 0.754342, 1.9063, -14.4196, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, -1.54462, -0.610276, -1.54223, 1.74008, -1.3299, 1.74168, -7.02938, 0, 0, 5.04712, -1.64385, 2.15283, -0.241602, 2.39819, -0.246525, 0.987004, -0.754342, -1.9063, 10.3959, -10.1589, 1.0443, 5.19149, 3.19544, 8.07523, -12.0075, 6.96345, -9.11953}, {2.66454e-15, -8.88178e-15, -7.0244, 0.00253498, 1.78885, -0.00126659, -2.34566, -1.78885, -2.3402, 2.34313, 0, 0, -0.0132733, -9.36656, -2.88758, 2.89626, 3.10862e-15, 2.89421, 12.282, 9.36656, 9.35923, -12.2688, -3.10862e-15, -2.89421, -2.8994, -2.21115, 0.00156559, 0.00313341, 2.21115, 2.89265}, {-4.44089e-16, -2.81691e-15, 2.34147, -0.00760494, -5.36656, 0.00379978, -2.34566, -1.78885, -2.3402, 2.34313, 1.04056e-15, 1.36127e-15, -0.00313341, -2.21115, -12.2585, 12.2789, 7.15542, 12.255, 2.8994, 2.21115, -0.00156559, -2.89626, 2.22045e-15, -2.89421, -12.2719, -2.21115, 0.00156559, 0.00313341, 2.21115, 2.89265}, {-1.33227e-15, -1.9984e-15, 2.34147, 0.00253498, 1.78885, -0.00126659, 7.03698, 5.36656, 7.0206, 2.34313, 0, 0, -0.00313341, -2.21115, -2.89265, 2.88612, -7.15542, 2.89928, 2.8994, 2.21115, -9.36743, -2.89626, 2.66454e-15, -2.89421, -2.8994, -2.21115, 0.00156559, -9.36937, 2.21115, 2.89265}, {4.44089e-16, 0, 2.34147, 0.00253498, 1.78885, -0.00126659, -2.34566, -1.78885, -2.3402, -7.02938, 0, 0, -0.00313341, -2.21115, -2.89265, 2.89626, 0, 2.89421, 2.8994, 2.21115, -0.00156559, -2.89626, 0, -12.2601, -2.90954, -9.36656, 0.00663197, 9.38578, 9.36656, 12.2534}, {3.98943, -5.22554, 5.22554, -0.61076, -1.54312, 1.54312, 0, 2.34313, 0, 1.94057, -2.54185, 0.198723, 4.84171, 5.92686, -5.92686, 0.754941, -0.988857, -1.90741, 1.64373, -14.4218, 2.15304, -8.51722, 11.1562, 1.11252, -1.64373, 5.0493, -2.15304, -2.39867, 0.245635, -0.245635}, {-1.32981, 1.74185, -1.74185, 1.83228, 4.62937, -4.62937, -1.12881e-15, 2.34313, -1.15595e-16, 1.94057, -2.54185, 0.198723, 7.71791, -7.21302, 7.21302, 0.754941, -10.3614, -1.90741, 1.64373, -5.0493, 2.15304, -0.754941, 0.988857, 1.90741, -9.40601, 15.2167, -2.94793, -2.39867, 0.245635, -0.245635}, {-1.32981, 1.74185, -1.74185, -0.61076, -1.54312, 1.54312, 0, -7.02938, 0, 1.94057, -2.54185, 0.198723, 2.39867, -0.245635, 0.245635, 3.19798, 5.18364, -8.0799, 6.96297, -12.0167, 9.12042, -0.754941, 0.988857, 1.90741, -1.64373, 5.0493, -2.15304, -10.1609, 10.413, -1.04052}, {-1.32981, 1.74185, -1.74185, -0.61076, -1.54312, 1.54312, 0, 2.34313, 0, -5.82171, 7.62554, -0.596168, 2.39867, -0.245635, 0.245635, 0.754941, -0.988857, -1.90741, 1.64373, -5.0493, 2.15304, 4.5643, -5.97853, 8.87479, 0.799305, 11.2218, -8.32553, -2.39867, -9.12687, -0.245635}, {9.45441, 0, -1.77636e-15, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, 1.36261, -1.78885, -1.36261, 3.89543, 0, -16.5013, -2.21115, -2.21115, -1.68428, -5.47113, -9.36656, 9.36656, -3.23931, 9.36656, 7.13474, -1.68428, 2.21115, -2.21115, -3.89543, 0, 3.89543}, {-3.15147, 2.22045e-16, 2.22045e-16, 1.00042e-15, 8.3972e-15, -9.45441, 1.78885, 1.78885, -1.78885, 1.36261, -1.78885, -1.36261, 16.5013, 3.55271e-15, -3.89543, -9.36656, -9.36656, 5.47113, 1.68428, -2.21115, 2.21115, 2.21115, 2.21115, 1.68428, -7.13474, 9.36656, 3.23931, -3.89543, -3.10862e-15, 3.89543}, {-3.15147, 4.44089e-16, 4.44089e-16, 0, 0, 3.15147, -5.36656, -5.36656, 5.36656, 1.36261, -1.78885, -1.36261, 3.89543, -4.44089e-16, -3.89543, -2.21115, -2.21115, -14.2902, 14.2902, -2.21115, 2.21115, 2.21115, 2.21115, 1.68428, -1.68428, 2.21115, -2.21115, -9.34589, 7.15542, 9.34589}, {-3.15147, 0, 2.22045e-16, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, -4.08784, 5.36656, 4.08784, 3.89543, 0, -3.89543, -2.21115, -2.21115, -1.68428, 1.68428, -2.21115, 2.21115, 14.817, 2.21115, 1.68428, -1.68428, 2.21115, -14.817, -11.0508, -7.15542, 11.0508}, {0.908154, -0.908154, 3.90885, -0.830764, 0.830764, 0.830764, 1.29079, 0.314875, 0.314875, -0.157311, -1.44836, 0.157311, 4.72412, -4.72412, -2.7394, -0.568628, -1.41609, -1.41609, -6.3845, -2.02289, -0.0381727, 1.19787, 7.20951, 0.786843, 1.22133, 0.763387, -1.22133, -1.40106, 1.40106, -0.583654}, {-0.302718, 0.302718, -1.30295, 2.49229, -2.49229, -2.49229, 1.29079, 0.314875, 0.314875, -0.157311, -1.44836, 0.157311, 2.61193, -2.61193, 5.79545, -5.7318, -2.67559, -2.67559, -1.22133, -0.763387, 1.22133, 0.568628, 1.41609, 1.41609, 1.85057, 6.55681, -1.85057, -1.40106, 1.40106, -0.583654}, {-0.302718, 0.302718, -1.30295, -0.830764, 0.830764, 0.830764, -3.87238, -0.944625, -0.944625, -0.157311, -1.44836, 0.157311, 1.40106, -1.40106, 0.583654, 2.75443, -4.73914, -4.73914, -0.0104551, -1.97426, 6.43313, 0.568628, 1.41609, 1.41609, 1.22133, 0.763387, -1.22133, -0.771816, 7.19449, -1.2129}, {-0.302718, 0.302718, -1.30295, -0.830764, 0.830764, 0.830764, 1.29079, 0.314875, 0.314875, 0.471934, 4.34507, -0.471934, 1.40106, -1.40106, 0.583654, -0.568628, -1.41609, -1.41609, -1.22133, -0.763387, 1.22133, 1.7795, 0.205215, 6.62789, 4.54438, -2.55967, -4.54438, -6.56423, 0.14156, -1.84315}, {-2.30283, -5.06257, 2.51418, -1.077, -0.426271, -1.077, 0.0318939, 0.648138, 1.63756, 0.277498, -1.90939, 0.277498, 4.69044, 0.146092, 6.67515, 1.29182, -0.274242, -0.692891, -1.11582, -5.47959, -7.53849, -2.40182, 7.9118, -0.417103, 0.988241, 2.88704, 0.988241, -0.38243, 1.55899, -2.36714}, {0.767609, 1.68752, -0.838059, 3.23101, 1.27881, 3.23101, 0.0318939, 0.648138, 1.63756, 0.277498, -1.90939, 0.277498, -2.68801, -8.30908, 5.71938, 1.16425, -2.86679, -7.24314, -0.988241, -2.88704, -0.988241, -1.29182, 0.274242, 0.692891, -0.121753, 10.5246, -0.121753, -0.38243, 1.55899, -2.36714}, {0.767609, 1.68752, -0.838059, -1.077, -0.426271, -1.077, -0.0956818, -1.94441, -4.91269, 0.277498, -1.90939, 0.277498, 0.38243, -1.55899, 2.36714, 5.59983, 1.43084, 3.61512, -4.05868, -9.63713, 2.36399, -1.29182, 0.274242, 0.692891, 0.988241, 2.88704, 0.988241, -1.49242, 9.19655, -3.47714}, {0.767609, 1.68752, -0.838059, -1.077, -0.426271, -1.077, 0.0318939, 0.648138, 1.63756, -0.832495, 5.72817, -0.832495, 0.38243, -1.55899, 2.36714, 1.29182, -0.274242, -0.692891, -0.988241, -2.88704, -0.988241, -4.36226, -6.47585, 4.04513, 5.29625, 4.59212, 5.29625, -0.510006, -1.03356, -8.91739}, {-4.7272, -4.7272, -4.7272, -1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 6.30294, -10.1984, 6.30294, 3.89543, 1.32738e-12, -1.3276e-12, 6.30294, 6.30294, -10.1984, -10.1984, 6.30294, 6.30294, 2.96874e-13, 3.04201e-13, 3.89543, 1.65046e-12, 3.89543, 1.64713e-12}, {1.57573, 1.57573, 1.57573, 4.7272, -4.7272, 4.7272, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -6.30294, -2.96874e-13, -3.01537e-13, -3.89543, -3.89543, -1.32644e-12, 1.32544e-12, -6.30294, 6.30294, 10.1984, 1.64713e-12, 3.89543, 1.65001e-12}, {1.57573, 1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 4.7272, 4.7272, -4.7272, 1.57573, -1.57573, -1.57573, -1.64602e-12, -3.89543, -1.64313e-12, 10.1984, -6.30294, 6.30294, -6.30294, -6.30294, -10.1984, -3.89543, -1.32733e-12, 1.32721e-12, 2.99982e-13, 3.06422e-13, 3.89543, -6.30294, 10.1984, 6.30294}, {1.57573, 1.57573, 1.57573, -1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -4.7272, 4.7272, 4.7272, -1.64313e-12, -3.89543, -1.64913e-12, 3.89543, 1.32672e-12, -1.32694e-12, -3.00648e-13, -2.97318e-13, -3.89543, -10.1984, -6.30294, -6.30294, 6.30294, -6.30294, 10.1984, 6.30294, 10.1984, -6.30294}, {-1.56775, 5.44381, 3.24545, 1.20899, 0.479095, 1.20825, -1.50445, -0.59618, 0.101437, -0.227124, 1.93169, -0.227868, -6.97629, -0.265605, -4.98928, 0.365209, 0.144724, -1.61886, 7.23144, 5.36461, 0.80607, 0.543287, -7.87147, 2.53034, -1.21365, -2.97989, -1.21182, 2.14034, -1.65078, 0.156278}, {0.522584, -1.8146, -1.08182, -3.62696, -1.43729, -3.62475, -1.50445, -0.59618, 0.101437, -0.227124, 1.93169, -0.227868, -4.23068, 8.90919, 4.171, 6.383, 2.52944, -2.02461, 1.21365, 2.97989, 1.21182, -0.365209, -0.144724, 1.61886, -0.305154, -10.7066, -0.300344, 2.14034, -1.65078, 0.156278}, {0.522584, -1.8146, -1.08182, 1.20899, 0.479095, 1.20825, 4.51334, 1.78854, -0.304311, -0.227124, 1.93169, -0.227868, -2.14034, 1.65078, -0.156278, -4.47074, -1.77166, -6.45186, -0.876686, 10.2383, 5.53909, -0.365209, -0.144724, 1.61886, -1.21365, -2.97989, -1.21182, 3.04884, -9.37752, 1.06775}, {0.522584, -1.8146, -1.08182, 1.20899, 0.479095, 1.20825, -1.50445, -0.59618, 0.101437, 0.681372, -5.79506, 0.683605, -2.14034, 1.65078, -0.156278, 0.365209, 0.144724, -1.61886, 1.21365, 2.97989, 1.21182, -2.45554, 7.11368, 5.94614, -6.0496, -4.89627, -6.04482, 8.15813, 0.733943, -0.24947}, {0.31567, 3.31084, -3.29586, 0.708828, -0.490803, -1.01172, 0.848249, 1.25814, 0.0940198, -1.45185, 0.336273, -0.18092, -3.58141, 3.93402, 3.93947, -1.92465, -0.948485, 1.13434, -4.31143, -5.22358, -1.85026, 7.73207, -0.396608, -0.41066, 0.91843, 0.191009, 1.47418, 0.746096, -1.97081, 0.107415}, {-0.105223, -1.10361, 1.09862, -2.12648, 1.47241, 3.03516, 0.848249, 1.25814, 0.0940198, -1.45185, 0.336273, -0.18092, -0.325203, 6.38527, -4.5019, -5.31765, -5.98106, 0.758261, -0.91843, -0.191009, -1.47418, 1.92465, 0.948485, -1.13434, 6.72585, -1.15408, 2.19787, 0.746096, -1.97081, 0.107415}, {-0.105223, -1.10361, 1.09862, 0.708828, -0.490803, -1.01172, -2.54475, -3.77443, -0.282059, -1.45185, 0.336273, -0.18092, -0.746096, 1.97081, -0.107415, -4.75996, 1.01473, 5.18122, -0.497537, 4.22345, -5.86867, 1.92465, 0.948485, -1.13434, 0.91843, 0.191009, 1.47418, 6.55351, -3.3159, 0.831095}, {-0.105223, -1.10361, 1.09862, 0.708828, -0.490803, -1.01172, 0.848249, 1.25814, 0.0940198, 4.35556, -1.00882, 0.54276, -0.746096, 1.97081, -0.107415, -1.92465, -0.948485, 1.13434, -0.91843, -0.191009, -1.47418, 2.34555, 5.36294, -5.52882, -1.91688, 2.15422, 5.52107, -2.6469, -7.00338, -0.268664}, {2.3172, 0.917451, -2.318, 1.00416, 1.78176, 0.599951, -0.431249, 0.464989, -1.17482, 0.199489, -1.94094, -0.197793, -4.30311, -8.95143, -4.09645, -0.708156, -2.77714, 0.710583, 3.21279, -2.0567, 5.1964, -0.0898, 10.5409, 0.0805874, -1.48779, 0.196748, -0.497096, 0.286472, 1.82437, 1.69665}, {-0.772399, -0.305817, 0.772666, -3.01248, -5.34529, -1.79985, -0.431249, 0.464989, -1.17482, 0.199489, -1.94094, -0.197793, 2.80312, -0.601104, -4.78731, 1.01684, -4.6371, 5.40988, 1.48779, -0.196748, 0.497096, 0.708156, 2.77714, -0.710583, -2.28575, 7.96049, 0.294074, 0.286472, 1.82437, 1.69665}, {-0.772399, -0.305817, 0.772666, 1.00416, 1.78176, 0.599951, 1.29375, -1.39497, 3.52447, 0.199489, -1.94094, -0.197793, -0.286472, -1.82437, -1.69665, -4.72479, -9.9042, -1.68922, 4.57739, 1.02652, -2.59357, 0.708156, 2.77714, -0.710583, -1.48779, 0.196748, -0.497096, -0.511484, 9.58812, 2.48782}, {-0.772399, -0.305817, 0.772666, 1.00416, 1.78176, 0.599951, -0.431249, 0.464989, -1.17482, -0.598467, 5.82281, 0.593378, -0.286472, -1.82437, -1.69665, -0.708156, -2.77714, 0.710583, 1.48779, -0.196748, 0.497096, 3.79775, 4.00041, -3.80125, -5.50443, -6.93031, -2.8969, 2.01147, -0.0355852, 6.39595}, {-9.63611, -0.184458, -9.63611, -0.833808, -0.834046, -2.43948, -1.57551, 1.57551, -1.57551, -0.802719, -0.802949, 0.802949, 0.39558, 4.29112, 8.80297, 2.97808, -0.916498, 4.96279, 4.27918, -8.32547, 4.27918, 0.232798, 4.12829, -8.17459, 2.02286, 2.02344, 2.02286, 2.93965, -0.954937, 0.954937}, {3.21204, 0.0614861, 3.21204, 2.50142, 2.50214, 7.31843, -1.57551, 1.57551, -1.57551, -0.802719, -0.802949, 0.802949, -15.7878, 0.708993, -13.8031, 9.28012, -7.21853, 11.2648, -2.02286, -2.02344, -2.02286, -2.97808, 0.916498, -4.96279, 5.23374, 5.23523, -1.18894, 2.93965, -0.954937, 0.954937}, {3.21204, 0.0614861, 3.21204, -0.833808, -0.834046, -2.43948, 4.72653, -4.72653, 4.72653, -0.802719, -0.802949, 0.802949, -2.93965, 0.954937, -0.954937, 6.31331, 2.41969, 14.7207, -14.871, -2.26938, -14.871, -2.97808, 0.916498, -4.96279, 2.02286, 2.02344, 2.02286, 6.15053, 2.25686, -2.25686}, {3.21204, 0.0614861, 3.21204, -0.833808, -0.834046, -2.43948, -1.57551, 1.57551, -1.57551, 2.40816, 2.40885, -2.40885, -2.93965, 0.954937, -0.954937, 2.97808, -0.916498, 4.96279, -2.02286, -2.02344, -2.02286, -15.8262, 0.670554, -17.8109, 5.35809, 5.35962, 11.7808, 9.24169, -7.25697, 7.25697}, {1.77636e-15, 3.55271e-15, -3.26126, 1.4431, -0.571101, 0.0717263, 0.0125109, 2.01402, -0.807596, -1.45561, -1.44292, -0.351216, -7.55617, 2.99032, -1.71928, -1.79923, -1.78355, 0.909586, -0.0655081, -10.5456, 2.88492, 7.62167, 7.55524, 0.495278, 0.0154644, 2.48947, 0.345468, 1.78377, -0.70592, 1.43237}, {-2.22045e-16, 6.66134e-16, 1.08709, -4.3293, 1.7133, -0.215179, 0.0125109, 2.01402, -0.807596, -1.45561, -1.44292, -0.351216, -1.78377, 0.70592, -5.78072, -1.84928, -9.83965, 4.13997, -0.0154644, -2.48947, -0.345468, 1.79923, 1.78355, -0.909586, 5.83791, 8.26116, 1.75033, 1.78377, -0.70592, 1.43237}, {-6.66134e-16, -2.22045e-16, 1.08709, 1.4431, -0.571101, 0.0717263, -0.0375328, -6.04207, 2.42279, -1.45561, -1.44292, -0.351216, -1.78377, 0.70592, -1.43237, -7.57163, 0.500853, 0.622681, -0.0154644, -2.48947, -4.69381, 1.79923, 1.78355, -0.909586, 0.0154644, 2.48947, 0.345468, 7.60621, 5.06577, 2.83723}, {-2.22045e-16, 4.44089e-16, 1.08709, 1.4431, -0.571101, 0.0717263, 0.0125109, 2.01402, -0.807596, 4.36683, 4.32877, 1.05365, -1.78377, 0.70592, -1.43237, -1.79923, -1.78355, 0.909586, -0.0154644, -2.48947, -0.345468, 1.79923, 1.78355, -5.25793, -5.75693, 4.77387, 0.0585632, 1.73373, -8.76202, 4.66276}, {4.62915, 1.83443, 4.62633, 1.74201, -1.33137, 0.13686, 3.96359e-17, -3.87053e-16, 1.60497, -0.198956, 1.94285, -0.199718, -7.21395, 7.72698, 1.18954, -2.15324, 1.64567, -2.15302, 1.90731, 0.755828, -6.49756, 2.94906, -9.41706, 2.95189, -1.90731, -0.755828, 0.0776963, 0.245923, -2.40149, -1.73698}, {-1.54305, -0.611477, -1.54211, -5.22602, 3.99411, -0.41058, 1.18908e-16, -1.16116e-15, 1.60497, -0.198956, 1.94285, -0.199718, 5.92628, 4.8474, 7.90542, -2.15324, 1.64567, -8.57288, 1.90731, 0.755828, -0.0776963, 2.15324, -1.64567, 2.15302, -1.11149, -8.52722, 0.876567, 0.245923, -2.40149, -1.73698}, {-1.54305, -0.611477, -1.54211, 1.74201, -1.33137, 0.13686, 0, 0, -4.8149, -0.198956, 1.94285, -0.199718, -0.245923, 2.40149, 1.73698, -9.12126, 6.97115, -2.70046, 8.07952, 3.20174, 6.09074, 2.15324, -1.64567, 2.15302, -1.90731, -0.755828, 0.0776963, 1.04175, -10.1729, -0.938112}, {-1.54305, -0.611477, -1.54211, 1.74201, -1.33137, 0.13686, -1.18908e-16, 1.16116e-15, 1.60497, 0.596868, -5.82855, 0.599153, -0.245923, 2.40149, 1.73698, -2.15324, 1.64567, -2.15302, 1.90731, 0.755828, -0.0776963, 8.32544, 0.800244, 8.32145, -8.87534, 4.56966, -0.469744, 0.245923, -2.40149, -8.15685}, {4.35065, -1.72407, 1.44786, 0, 0, 1.17684, 1.43763, 1.45199, 0.197849, 0.0125895, -2.02668, -0.892072, 1.79257, -0.710355, -5.56548, -1.77701, -1.79476, -1.69921, -5.73495, -8.31307, -0.439401, 1.72665, 9.90148, 5.2675, -0.0155615, 2.50511, -0.351997, -1.79257, 0.710355, 0.858106}, {-1.45022, 0.57469, -0.482621, -1.29313e-15, 4.05633e-15, -3.53053, 1.43763, 1.45199, 0.197849, 0.0125895, -2.02668, -0.892072, 7.59343, -3.00911, 1.07238, -7.52752, -7.60272, -2.49061, 0.0155615, -2.50511, 0.351997, 1.77701, 1.79476, 1.69921, -0.0659197, 10.6118, 3.21629, -1.79257, 0.710355, 0.858106}, {-1.45022, 0.57469, -0.482621, 0, 0, 1.17684, -4.31288, -4.35597, -0.593548, 0.0125895, -2.02668, -0.892072, 1.79257, -0.710355, -0.858106, -1.77701, -1.79476, -6.40659, 5.81643, -4.80387, 2.28248, 1.77701, 1.79476, 1.69921, -0.0155615, 2.50511, -0.351997, -1.84292, 8.81707, 4.42639}, {-1.45022, 0.57469, -0.482621, 0, 0, 1.17684, 1.43763, 1.45199, 0.197849, -0.0377686, 6.08004, 2.67622, 1.79257, -0.710355, -0.858106, -1.77701, -1.79476, -1.69921, 0.0155615, -2.50511, 0.351997, 7.57787, -0.504, 3.6297, -0.0155615, 2.50511, -5.05937, -7.54308, -5.09761, 0.0667081}, {2.31688, 0.916898, -2.31818, 0.572147, 2.2454, -0.575329, -1.46447, -2.59853, -0.874972, 1.66462, 0.658766, 0.677573, -2.04119, -11.3793, 2.05732, 1.10297, 0.436497, 1.79267, 8.62268, 13.9839, 3.62627, -7.76145, -3.07156, -4.50296, -2.76479, -3.58975, -0.126381, -0.247396, 2.39768, 0.243998}, {-0.772295, -0.305633, 0.772728, -1.71644, -6.7362, 1.72599, -1.46447, -2.59853, -0.874972, 1.66462, 0.658766, 0.677573, 3.33658, -1.17515, -3.33491, 6.96086, 10.8306, 5.29256, 2.76479, 3.58975, 0.126381, -1.10297, -0.436497, -1.79267, -9.42327, -6.22481, -2.83667, -0.247396, 2.39768, 0.243998}, {-0.772295, -0.305633, 0.772728, 0.572147, 2.2454, -0.575329, 4.39341, 7.7956, 2.62492, 1.66462, 0.658766, 0.677573, 0.247396, -2.39768, -0.243998, -1.18562, -8.5451, 4.09399, 5.85397, 4.81228, -2.96453, -1.10297, -0.436497, -1.79267, -2.76479, -3.58975, -0.126381, -6.90587, -0.237381, -2.46629}, {-0.772295, -0.305633, 0.772728, 0.572147, 2.2454, -0.575329, -1.46447, -2.59853, -0.874972, -4.99386, -1.9763, -2.03272, 0.247396, -2.39768, -0.243998, 1.10297, 0.436497, 1.79267, 2.76479, 3.58975, 0.126381, 1.98621, 0.786034, -4.88358, -5.05338, -12.5713, 2.17494, 5.61049, 12.7918, 3.74389}, {-7.02177, -5.36656, 7.02938, 0.00253498, -1.78885, 1.2111e-11, -2.34313, 0, 0, 0, 0, 2.34313, -2.9064, 7.15542, 2.89626, 2.89313, 2.21115, -1.49701e-11, 9.37564, -2.21115, 2.89626, -2.89313, -2.21115, -9.3725, -0.00313341, 2.21115, -2.89626, 2.89626, 0, -2.89626}, {2.34059, 1.78885, -2.34313, -0.00760494, 5.36656, -5.47978e-11, -2.34313, 0, 0, 1.36297e-15, 0, 2.34313, -12.2586, -7.15542, 12.2688, 12.2656, 2.21115, -2.25779e-11, 0.00313341, -2.21115, 2.89626, -2.89313, -2.21115, 2.25785e-11, -0.00313341, 2.21115, -12.2688, 2.89626, 0, -2.89626}, {2.34059, 1.78885, -2.34313, 0.00253498, -1.78885, 1.21079e-11, 7.02938, 0, 0, 0, 0, 2.34313, -2.89626, -4.44089e-16, 2.89626, 2.88299, 9.36656, -6.33979e-11, -9.35923, -9.36656, 12.2688, -2.89313, -2.21115, 1.49668e-11, -0.00313341, 2.21115, -2.89626, 2.89626, 0, -12.2688}, {2.34059, 1.78885, -2.34313, 0.00253498, -1.78885, 1.2111e-11, -2.34313, 0, 0, 0, 0, -7.02938, -2.89626, -4.44089e-16, 2.89626, 2.89313, 2.21115, -1.49701e-11, 0.00313341, -2.21115, 2.89626, -12.2555, -9.36656, 9.3725, -0.0132733, 9.36656, -2.89626, 12.2688, 0, -2.89626}, {0.0377686, 6.08004, 3.1372, 4.64343e-16, 1.84009e-16, 1.28977, -1.43763, 1.45199, -0.146251, 1.45022, 0.57469, -0.0977806, 0.0155615, 2.50511, -5.4607, 1.77701, -1.79476, -1.41346, 7.54308, -5.09761, 2.05838, -7.57787, -0.504, 1.80458, -1.79257, -0.710355, -1.47337, -0.0155615, -2.50511, 0.301639}, {-0.0125895, -2.02668, -1.04573, -2.77397e-15, 8.42705e-16, -3.8693, -1.43763, 1.45199, -0.146251, 1.45022, 0.57469, -0.0977806, 0.0659197, 10.6118, 3.8813, 7.52752, -7.60272, -0.82846, 1.79257, 0.710355, 1.47337, -1.77701, 1.79476, 1.41346, -7.59343, -3.00911, -1.08225, -0.0155615, -2.50511, 0.301639}, {-0.0125895, -2.02668, -1.04573, 0, 0, 1.28977, 4.31288, -4.35597, 0.438752, 1.45022, 0.57469, -0.0977806, 0.0155615, 2.50511, -0.301639, 1.77701, -1.79476, -6.57252, 1.84292, 8.81707, 5.65631, -1.77701, 1.79476, 1.41346, -1.79257, -0.710355, -1.47337, -5.81643, -4.80387, 0.692761}, {-0.0125895, -2.02668, -1.04573, 4.64343e-16, 1.84009e-16, 1.28977, -1.43763, 1.45199, -0.146251, -4.35065, -1.72407, 0.293342, 0.0155615, 2.50511, -0.301639, 1.77701, -1.79476, -1.41346, 1.79257, 0.710355, 1.47337, -1.72665, 9.90148, 5.5964, -1.79257, -0.710355, -6.63244, 5.73495, -8.31307, 0.886641}, {-4.7272, -4.7272, 4.7272, 1.57573, -1.57573, 1.57573, -1.57596, -1.57551, -1.57551, -1.57551, 1.57551, 1.57551, -10.1984, 6.30294, -6.30294, 0.000278382, 3.89515, -0.000278382, 6.30412, 6.30176, 10.1972, 6.30176, -10.1972, -6.30176, -0.000278382, 0.000278382, -3.89515, 3.89543, -9.10383e-15, 9.10383e-15}, {1.57573, 1.57573, -1.57573, -4.7272, 4.7272, -4.7272, -1.57596, -1.57551, -1.57551, -1.57551, 1.57551, 1.57551, -10.1984, -6.30294, 6.30294, 6.30412, 10.1972, 6.30176, 0.000278382, -0.000278382, 3.89515, -0.000278382, -3.89515, 0.000278382, 6.30176, -6.30176, -10.1972, 3.89543, -9.10383e-15, 9.10383e-15}, {1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 1.57573, 4.72788, 4.72653, 4.72653, -1.57551, 1.57551, 1.57551, -3.89543, 2.66454e-15, -1.44329e-14, -6.30266, 10.1981, -6.30322, -6.30266, -6.30322, 10.1981, -0.000278382, -3.89515, 0.000278382, -0.000278382, 0.000278382, -3.89515, 10.1975, -6.30204, -6.30204}, {1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 1.57573, -1.57596, -1.57551, -1.57551, 4.72653, -4.72653, -4.72653, -3.89543, 1.02141e-14, -6.66134e-16, 0.000278382, 3.89515, -0.000278382, 0.000278382, -0.000278382, 3.89515, -6.30322, -10.1981, 6.30322, -6.30322, 6.30322, -10.1981, 10.1993, 6.30204, 6.30204}, {1.83228, 4.63528, 4.62937, 1.94057, -2.54509, -0.198723, -1.32981, 1.74407, 1.74185, 0, 2.34612, 0, -9.40601, 15.2361, 2.94793, -0.754941, 0.990119, -1.90741, 7.71791, -7.22223, -7.21302, 0.754941, -10.3746, 1.90741, -2.39867, 0.245948, 0.245635, 1.64373, -5.05575, -2.15304}, {-0.61076, -1.54509, -1.54312, -5.82171, 7.63528, 0.596168, -1.32981, 1.74407, 1.74185, 7.74523e-16, 2.34612, -1.01451e-15, 0.799305, 11.2361, 8.32553, 4.5643, -5.98616, -8.87479, 2.39867, -0.245948, -0.245635, 0.754941, -0.990119, 1.90741, -2.39867, -9.13852, 0.245635, 1.64373, -5.05575, -2.15304}, {-0.61076, -1.54509, -1.54312, 1.94057, -2.54509, -0.198723, 3.98943, -5.23221, -5.22554, 0, 2.34612, 0, -1.64373, 5.05575, 2.15304, -8.51722, 11.1705, -1.11252, 4.84171, 5.93443, 5.92686, 0.754941, -0.990119, 1.90741, -2.39867, 0.245948, 0.245635, 1.64373, -14.4402, -2.15304}, {-0.61076, -1.54509, -1.54312, 1.94057, -2.54509, -0.198723, -1.32981, 1.74407, 1.74185, 0, -7.03835, 0, -1.64373, 5.05575, 2.15304, -0.754941, 0.990119, -1.90741, 2.39867, -0.245948, -0.245635, 3.19798, 5.19026, 8.0799, -10.1609, 10.4263, 1.04052, 6.96297, -12.032, -9.12042}, {-1.42344, 3.96091, -1.43084, -1.98584, -0.354449, 0.357788, 0.9893, 0.397365, -1.35371, 0.52206, 1.27739, 0.518977, 9.81149, 3.4879, -2.46294, 1.23179, -0.0530468, 1.23103, -5.76653, -0.448647, 6.49858, -3.32003, -5.0565, -3.30694, 1.80933, -1.14081, -1.08374, -1.86814, -2.07011, 1.03179}, {0.474478, -1.3203, 0.476947, 5.95751, 1.06335, -1.07336, 0.9893, 0.397365, -1.35371, 0.52206, 1.27739, 0.518977, -0.029771, 7.35132, -2.93958, -2.72541, -1.64251, 6.64587, -1.80933, 1.14081, 1.08374, -1.23179, 0.0530468, -1.23103, -0.278909, -6.25036, -3.15965, -1.86814, -2.07011, 1.03179}, {0.474478, -1.3203, 0.476947, -1.98584, -0.354449, 0.357788, -2.9679, -1.1921, 4.06113, 0.52206, 1.27739, 0.518977, 1.86814, 2.07011, -1.03179, 9.17514, 1.36475, -0.200121, -3.70724, 6.42202, -0.824048, -1.23179, 0.0530468, -1.23103, 1.80933, -1.14081, -1.08374, -3.95638, -7.17965, -1.04412}, {0.474478, -1.3203, 0.476947, -1.98584, -0.354449, 0.357788, 0.9893, 0.397365, -1.35371, -1.56618, -3.83216, -1.55693, 1.86814, 2.07011, -1.03179, 1.23179, -0.0530468, 1.23103, -1.80933, 1.14081, 1.08374, -3.1297, 5.33426, -3.13882, 9.75268, 0.276984, -2.51489, -5.82534, -3.65957, 6.44663}, {5.36656, 5.36656, -5.36656, 1.41539, 1.41492, 1.85814, 0, 3.15102, 0, 0.373467, -2.77708, -3.64699, -5.19992, -5.19747, -11.9405, -1.74951, -5.64381, -2.29678, 2.21115, -14.2878, -2.21115, 0.255645, 16.7521, 16.8847, -2.21115, 1.68373, 2.21115, -0.461631, -0.462209, 4.50793}, {-1.78885, -1.78885, 1.78885, -4.24616, -4.24476, -5.57441, -2.92145e-16, 3.15102, 2.85286e-15, 0.373467, -2.77708, -3.64699, 7.61705, 7.61763, -11.6633, -1.74951, -18.2479, -2.29678, 2.21115, -1.68373, -2.21115, 1.74951, 5.64381, 2.29678, -3.70501, 12.7921, 16.7991, -0.461631, -0.462209, 4.50793}, {-1.78885, -1.78885, 1.78885, 1.41539, 1.41492, 1.85814, 0, -9.45305, 0, 0.373467, -2.77708, -3.64699, 0.461631, 0.462209, -4.50793, -7.41106, -11.3035, -9.72932, 9.36656, 5.47169, -9.36656, 1.74951, 5.64381, 2.29678, -2.21115, 1.68373, 2.21115, -1.9555, 10.6461, 19.0959}, {-1.78885, -1.78885, 1.78885, 1.41539, 1.41492, 1.85814, 0, 3.15102, 0, -1.1204, 8.33125, 10.941, 0.461631, 0.462209, -4.50793, -1.74951, -5.64381, -2.29678, 2.21115, -1.68373, -2.21115, 8.90493, 12.7992, -4.85864, -7.87269, -3.97595, -5.2214, -0.461631, -13.0663, 4.50793}, {-4.34476, -0.77549, 0.782793, -0.00873736, -1.40655, 0.564008, -1.44688, -0.0374651, -0.914786, 0.00736434, 1.18552, 0.611709, -1.74439, 7.04528, -2.63065, 1.79924, 1.7849, 0.433585, 5.78582, -0.123349, 5.11241, -1.8287, -6.52698, -2.88042, 0.00169715, 0.27321, -1.45327, 1.77934, -1.41907, 0.374623}, {1.44825, 0.258497, -0.260931, 0.0262121, 4.21965, -1.69202, -1.44688, -0.0374651, -0.914786, 0.00736434, 1.18552, 0.611709, -7.57235, 0.385087, 0.669101, 7.58676, 1.93476, 4.09273, -0.00169715, -0.27321, 1.45327, -1.79924, -1.7849, -0.433585, -0.0277602, -4.46887, -3.9001, 1.77934, -1.41907, 0.374623}, {1.44825, 0.258497, -0.260931, -0.00873736, -1.40655, 0.564008, 4.34064, 0.112395, 2.74436, 0.00736434, 1.18552, 0.611709, -1.77934, 1.41907, -0.374623, 1.83419, 7.4111, -1.82245, -5.79471, -1.3072, 2.49699, -1.79924, -1.7849, -0.433585, 0.00169715, 0.27321, -1.45327, 1.74988, -6.16115, -2.07221}, {1.44825, 0.258497, -0.260931, -0.00873736, -1.40655, 0.564008, -1.44688, -0.0374651, -0.914786, -0.022093, -3.55656, -1.83513, -1.77934, 1.41907, -0.374623, 1.79924, 1.7849, 0.433585, -0.00169715, -0.27321, 1.45327, -7.59225, -2.81889, 0.610139, 0.0366466, 5.89941, -3.7093, 7.56686, -1.26921, 4.03377}, {-4.817, -2.66454e-15, -5.32907e-15, -1.78885, -1.78885, 1.78885, 0.373353, 0.374783, -3.64588, -0.190167, 1.41407, 1.85702, 7.38185, 9.36656, -9.36656, 1.74966, 1.74789, 2.29541, -3.93962, -1.96239, 19.0901, -0.988987, -7.40418, -9.72349, 2.4462, 0.463257, -4.50655, -0.226431, -2.21115, 2.21115}, {1.60567, 4.44089e-16, 1.77636e-15, 5.36656, 5.36656, -5.36656, 0.373353, 0.374783, -3.64588, -0.190167, 1.41407, 1.85702, -6.19624, 2.21115, -2.21115, 0.256242, 0.248757, 16.8789, -2.4462, -0.463257, 4.50655, -1.74966, -1.74789, -2.29541, 3.20687, -5.19303, -11.9346, -0.226431, -2.21115, 2.21115}, {1.60567, 0, 4.44089e-16, -1.78885, -1.78885, 1.78885, -1.12006, -1.12435, 10.9376, -0.190167, 1.41407, 1.85702, 0.226431, 2.21115, -2.21115, 8.90507, 8.90331, -4.86001, -8.86888, -0.463257, 4.50655, -1.74966, -1.74789, -2.29541, 2.4462, 0.463257, -4.50655, 0.534237, -7.86743, -5.21694}, {1.60567, 2.22045e-16, 1.11022e-15, -1.78885, -1.78885, 1.78885, 0.373353, 0.374783, -3.64588, 0.570501, -4.24221, -5.57107, 0.226431, 2.21115, -2.21115, 1.74966, 1.74789, 2.29541, -2.4462, -0.463257, 4.50655, -8.17233, -1.74789, -2.29541, 9.60162, 7.61867, -11.662, -1.71984, -3.71028, 16.7947}, {-5.36225, -5.36694, -5.37021, 0, -1.60567, 0, -0.373167, -0.373493, -3.64724, -1.41425, 0.190182, 1.85717, -2.20937, 6.19609, -2.21265, 0.46126, 2.44638, 4.50824, -0.25544, -0.255663, 16.8846, 5.19574, -3.20711, -11.9369, 1.74811, 1.74964, -2.29559, 2.20937, 0.226585, 2.21265}, {1.78742, 1.78898, 1.79007, 0, 4.817, 0, -0.373167, -0.373493, -3.64724, -1.41425, 0.190182, 1.85717, -9.35904, -7.3825, -9.37293, 1.95393, 3.94035, 19.0972, -1.74811, -1.74964, 2.29559, -0.46126, -2.44638, -4.50824, 7.40511, 0.988907, -9.72428, 2.20937, 0.226585, 2.21265}, {1.78742, 1.78898, 1.79007, 0, -1.60567, 0, 1.1195, 1.12048, 10.9417, -1.41425, 0.190182, 1.85717, -2.20937, -0.226585, -2.21265, 0.46126, 8.86905, 4.50824, -8.89778, -8.90555, -4.86469, -0.46126, -2.44638, -4.50824, 1.74811, 1.74964, -2.29559, 7.86637, -0.534145, -5.21604}, {1.78742, 1.78898, 1.79007, 0, -1.60567, 0, -0.373167, -0.373493, -3.64724, 4.24275, -0.570547, -5.57152, -2.20937, -0.226585, -2.21265, 0.46126, 2.44638, 4.50824, -1.74811, -1.74964, 2.29559, -7.61093, -9.60229, -11.6685, 1.74811, 8.17231, -2.29559, 3.70204, 1.72056, 16.8016}, {-0.829936, -0.831314, 3.98569, 1.1323, 1.13131, 1.13131, 0.168871, -1.43624, 0.169424, -1.57782, 0.027827, 0.027827, -6.27076, -6.26615, -4.28143, -1.60834, 0.376916, -1.6078, -1.22617, 7.17775, 0.755077, 7.9196, -0.488224, 1.49649, 0.550688, -1.43277, -1.43277, 1.74155, 1.7409, -0.243816}, {0.276645, 0.277105, -1.32856, -3.3969, -3.39394, -3.39394, 0.168871, -1.43624, 0.169424, -1.57782, 0.027827, 0.027827, -2.84813, -2.84932, 5.55807, -2.28382, 6.12189, -2.2855, -0.550688, 1.43277, 1.43277, 1.60834, -0.376916, 1.6078, 6.86195, -1.54408, -1.54408, 1.74155, 1.7409, -0.243816}, {0.276645, 0.277105, -1.32856, 1.1323, 1.13131, 1.13131, -0.506612, 4.30873, -0.508273, -1.57782, 0.027827, 0.027827, -1.74155, -1.7409, 0.243816, -6.13754, -4.14833, -6.13305, -1.65727, 0.324356, 6.74703, 1.60834, -0.376916, 1.6078, 0.550688, -1.43277, -1.43277, 8.05282, 1.62959, -0.355124}, {0.276645, 0.277105, -1.32856, 1.1323, 1.13131, 1.13131, 0.168871, -1.43624, 0.169424, 4.73345, -0.0834809, -0.0834809, -1.74155, -1.7409, 0.243816, -1.60834, 0.376916, -1.6078, -0.550688, 1.43277, 1.43277, 0.501756, -1.48534, 6.92205, -3.97852, -5.95802, -5.95802, 1.06607, 7.48587, -0.921513}, {-8.33162, 1.1204, 10.941, -1.41498, -1.41539, 1.85814, -3.15057, 0, 0, 1.78834, 1.78885, 1.78885, 3.97613, 7.87269, -5.2214, 5.64333, 1.74951, -2.29678, 13.0638, 0.461631, 4.50793, -12.7967, -8.90493, -4.85864, -0.461499, -0.461631, -4.50793, 1.6838, -2.21115, -2.21115}, {2.77721, -0.373467, -3.64699, 4.24495, 4.24616, -5.57441, -3.15057, 0, 0, 1.78834, 1.78885, 1.78885, -12.7926, 3.70501, 16.7991, 18.2456, 1.74951, -2.29678, 0.461499, 0.461631, 4.50793, -5.64333, -1.74951, 2.29678, -7.61487, -7.61705, -11.6633, 1.6838, -2.21115, -2.21115}, {2.77721, -0.373467, -3.64699, -1.41498, -1.41539, 1.85814, 9.4517, 0, 0, 1.78834, 1.78885, 1.78885, -1.6838, 2.21115, 2.21115, 11.3033, 7.41106, -9.72932, -10.6473, 1.9555, 19.0959, -5.64333, -1.74951, 2.29678, -0.461499, -0.461631, -4.50793, -5.46957, -9.36656, -9.36656}, {2.77721, -0.373467, -3.64699, -1.41498, -1.41539, 1.85814, -3.15057, 0, 0, -5.36503, -5.36656, -5.36656, -1.6838, 2.21115, 2.21115, 5.64333, 1.74951, -2.29678, 0.461499, 0.461631, 4.50793, -16.7522, -0.255645, 16.8847, 5.19843, 5.19992, -11.9405, 14.2861, -2.21115, -2.21115}, {-3.98391, -5.22497, -0.407969, -1.83214e-15, -1.4677e-15, 1.60567, 0.61239, -1.54296, -1.54296, -1.94036, -0.198701, -0.198701, -1.64146, -2.15281, -8.57548, -0.756955, 1.9072, -0.0775154, -4.84797, 5.92622, 7.91093, 8.51839, -1.1124, 0.87232, 2.39842, 0.245608, -1.73911, 1.64146, 2.15281, 2.15281}, {1.32797, 1.74166, 0.13599, 3.05267e-15, -1.60751e-15, -4.817, 0.61239, -1.54296, -1.54296, -1.94036, -0.198701, -0.198701, -6.95334, -9.11944, -2.69677, -3.20651, 8.07903, 6.09431, -2.39842, -0.245608, 1.73911, 0.756955, -1.9072, 0.0775154, 10.1599, 1.04041, -0.944303, 1.64146, 2.15281, 2.15281}, {1.32797, 1.74166, 0.13599, 0, 0, 1.60567, -1.83717, 4.62887, 4.62887, -1.94036, -0.198701, -0.198701, -1.64146, -2.15281, -2.15281, -0.756955, 1.9072, -6.50019, -7.71029, -7.21224, 1.19515, 0.756955, -1.9072, 0.0775154, 2.39842, 0.245608, -1.73911, 9.4029, 2.94761, 2.94761}, {1.32797, 1.74166, 0.13599, 7.73451e-16, 7.92047e-17, 1.60567, 0.61239, -1.54296, -1.54296, 5.82108, 0.596103, 0.596103, -1.64146, -2.15281, -2.15281, -0.756955, 1.9072, -0.0775154, -2.39842, -0.245608, 1.73911, -4.55492, -8.87383, -0.466443, 2.39842, 0.245608, -8.16178, -0.808098, 8.32463, 8.32463}, {-1.77636e-15, 4.817, 8.88178e-16, -0.373167, -0.373493, 3.64724, -1.41425, 0.190182, -1.85717, 1.78742, 1.78898, -1.79007, 1.95393, 3.94035, -19.0972, 2.20937, 0.226585, -2.21265, 7.40511, 0.988907, 9.72428, -9.35904, -7.3825, 9.37293, -1.74811, -1.74964, -2.29559, -0.46126, -2.44638, 4.50824}, {-2.22045e-16, -1.60567, -2.22045e-16, 1.1195, 1.12048, -10.9417, -1.41425, 0.190182, -1.85717, 1.78742, 1.78898, -1.79007, 0.46126, 8.86905, -4.50824, 7.86637, -0.534145, 5.21604, 1.74811, 1.74964, 2.29559, -2.20937, -0.226585, 2.21265, -8.89778, -8.90555, 4.86469, -0.46126, -2.44638, 4.50824}, {2.22045e-16, -1.60567, 6.66134e-16, -0.373167, -0.373493, 3.64724, 4.24275, -0.570547, 5.57152, 1.78742, 1.78898, -1.79007, 0.46126, 2.44638, -4.50824, 3.70204, 1.72056, -16.8016, 1.74811, 8.17231, 2.29559, -2.20937, -0.226585, 2.21265, -1.74811, -1.74964, -2.29559, -7.61093, -9.60229, 11.6685}, {-2.22045e-16, -1.60567, 6.66134e-16, -0.373167, -0.373493, 3.64724, -1.41425, 0.190182, -1.85717, -5.36225, -5.36694, 5.37021, 0.46126, 2.44638, -4.50824, 2.20937, 0.226585, -2.21265, 1.74811, 1.74964, 2.29559, -2.20937, 6.19609, 2.21265, -0.25544, -0.255663, -16.8846, 5.19574, -3.20711, 11.9369}, {5.57441, 0.570843, -4.24616, 1.45374e-15, 1.60567, 1.48869e-16, -1.78885, -1.78885, -1.78885, 3.64699, 0.373467, 0.373467, 2.29678, -8.17219, -1.74951, 2.21115, 0.226431, 2.21115, 11.6633, 9.60176, 7.61705, -16.7991, -1.7203, -3.70501, -4.50793, -2.44635, -0.461631, -2.29678, 1.74951, 1.74951}, {-1.85814, -0.190281, 1.41539, -6.50039e-15, -4.817, -2.58579e-15, -1.78885, -1.78885, -1.78885, 3.64699, 0.373467, 0.373467, 9.72932, -0.988391, -7.41106, 9.36656, 7.38185, 9.36656, 4.50793, 2.44635, 0.461631, -2.21115, -0.226431, -2.21115, -19.0959, -3.94022, -1.9555, -2.29678, 1.74951, 1.74951}, {-1.85814, -0.190281, 1.41539, 0, 1.60567, 0, 5.36656, 5.36656, 5.36656, 3.64699, 0.373467, 0.373467, 2.29678, -1.74951, -1.74951, 2.21115, -6.19624, 2.21115, 11.9405, 3.20747, -5.19992, -2.21115, -0.226431, -2.21115, -4.50793, -2.44635, -0.461631, -16.8847, 0.255645, 0.255645}, {-1.85814, -0.190281, 1.41539, 1.45374e-15, 1.60567, 1.48869e-16, -1.78885, -1.78885, -1.78885, -10.941, -1.1204, -1.1204, 2.29678, -1.74951, -1.74951, 2.21115, 0.226431, 2.21115, 4.50793, 2.44635, 0.461631, 5.2214, 0.534693, -7.87269, -4.50793, -8.86902, -0.461631, 4.85864, 8.90493, 8.90493}, {0.596103, -0.596103, -5.82108, 1.74166, -0.13599, -1.32797, -1.54296, 1.54296, -0.61239, 0, -1.60567, 0, -8.87383, 0.466443, 4.55492, -0.245608, -1.73911, 2.39842, 8.32463, -8.32463, 0.808098, 0.245608, 8.16178, -2.39842, -2.15281, 2.15281, 1.64146, 1.9072, 0.0775154, 0.756955}, {-0.198701, 0.198701, 1.94036, -5.22497, 0.407969, 3.98391, -1.54296, 1.54296, -0.61239, 0, -1.60567, 0, -1.1124, -0.87232, -8.51839, 5.92622, -7.91093, 4.84797, 2.15281, -2.15281, -1.64146, 0.245608, 1.73911, -2.39842, -2.15281, 8.57548, 1.64146, 1.9072, 0.0775154, 0.756955}, {-0.198701, 0.198701, 1.94036, 1.74166, -0.13599, -1.32797, 4.62887, -4.62887, 1.83717, 0, -1.60567, 0, -1.9072, -0.0775154, -0.756955, -7.21224, -1.19515, 7.71029, 2.94761, -2.94761, -9.4029, 0.245608, 1.73911, -2.39842, -2.15281, 2.15281, 1.64146, 1.9072, 6.50019, 0.756955}, {-0.198701, 0.198701, 1.94036, 1.74166, -0.13599, -1.32797, -1.54296, 1.54296, -0.61239, 0, 4.817, 0, -1.9072, -0.0775154, -0.756955, -0.245608, -1.73911, 2.39842, 2.15281, -2.15281, -1.64146, 1.04041, 0.944303, -10.1599, -9.11944, 2.69677, 6.95334, 8.07903, -6.09431, 3.20651}, {1.77636e-15, 9.45441, 0, 1.36222, 1.36261, 1.78885, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -7.1327, -3.23931, -9.36656, 2.21051, -1.68428, -2.21115, 16.4966, 3.89543, 0, -9.36389, -5.47113, 9.36656, -3.89432, -3.89543, 0, 1.6838, -2.21115, 2.21115}, {-2.22045e-16, -3.15147, 0, -4.08667, -4.08784, -5.36656, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 14.817, -2.21115, 14.8128, -1.68428, -2.21115, 3.89432, 3.89543, 0, -2.21051, 1.68428, 2.21115, -11.0477, -11.0508, 7.15542, 1.6838, -2.21115, 2.21115}, {2.22045e-16, -3.15147, 0, 1.36222, 1.36261, 1.78885, 9.4517, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 2.21115, -2.21115, -3.23838, -7.13474, -9.36656, 3.89432, 16.5013, 0, -2.21051, 1.68428, 2.21115, -3.89432, -3.89543, 0, -5.46957, -9.36656, 9.36656}, {-2.22045e-16, -3.15147, 0, 1.36222, 1.36261, 1.78885, -3.15057, 0, 0, -5.36503, -5.36656, 5.36656, -1.6838, 2.21115, -2.21115, 2.21051, -1.68428, -2.21115, 3.89432, 3.89543, 0, -2.21051, 14.2902, 2.21115, -9.34321, -9.34589, -7.15542, 14.2861, -2.21115, 2.21115}, {-2.95778e-16, 8.88178e-16, 5.41667, 1.44665, -1.44665, -0.51339, -1.44665, -0.572575, 0.978606, 1.97314e-12, 2.01922, 1.34034, -7.57474, 7.57474, 4.91993, 2.43894e-12, 2.4959, -0.575039, 7.57474, 2.99804, -2.89226, -1.03315e-11, -10.5728, -4.78632, -1.78815, -0.707741, -1.02217, 1.78815, -1.78815, -2.86637}, {1.99359e-16, 4.44089e-16, -1.80556, -4.33994, 4.33994, 1.54017, -1.44665, -0.572575, 0.978606, 1.97222e-12, 2.01922, 1.34034, -1.78815, 1.78815, 10.0886, 5.78659, 4.7862, -4.48946, 1.78815, 0.707741, 1.02217, -2.43805e-12, -2.4959, 0.575039, -1.78815, -8.78463, -6.38352, 1.78815, -1.78815, -2.86637}, {8.21831e-17, -4.44089e-16, -1.80556, 1.44665, -1.44665, -0.51339, 4.33994, 1.71772, -2.93582, 1.97167e-12, 2.01922, 1.34034, -1.78815, 1.78815, 2.86637, -5.78659, 8.28248, 1.47852, 1.78815, 0.707741, 8.24439, -2.43716e-12, -2.4959, 0.575039, -1.78815, -0.707741, -1.02217, 1.78815, -9.86504, -8.22773}, {-1.03785e-17, 0, -1.80556, 1.44665, -1.44665, -0.51339, -1.44665, -0.572575, 0.978606, -5.91996e-12, -6.05767, -4.02102, -1.78815, 1.78815, 2.86637, 2.43916e-12, 2.4959, -0.575039, 1.78815, 0.707741, 1.02217, -2.43978e-12, -2.4959, 7.79726, -7.57474, 5.07885, 1.03139, 7.57474, 0.502145, -6.7808}, {-1.83228, -4.62937, -4.62777, -1.94057, 0.198723, 0.200419, 1.32981, -1.74185, -0.13734, 0, 0, -1.60567, 9.40601, -2.94793, -2.95615, 0.754941, 1.90741, -0.0779689, -7.71791, 7.21302, -1.18762, -0.754941, -1.90741, 6.50064, 2.39867, -0.245635, 1.73698, -1.64373, 2.15304, 2.15448}, {0.61076, 1.54312, 1.54259, 5.82171, -0.596168, -0.601256, 1.32981, -1.74185, -0.13734, 0, 0, -1.60567, -0.799305, -8.32553, -8.32484, -4.5643, 8.87479, 0.471392, -2.39867, 0.245635, -1.73698, -0.754941, -1.90741, 0.0779689, 2.39867, -0.245635, 8.15966, -1.64373, 2.15304, 2.15448}, {0.61076, 1.54312, 1.54259, -1.94057, 0.198723, 0.200419, -3.98943, 5.22554, 0.412021, 0, 0, -1.60567, 1.64373, -2.15304, -2.15448, 8.51722, 1.11252, -0.879643, -4.84171, -5.92686, -7.90734, -0.754941, -1.90741, 0.0779689, 2.39867, -0.245635, 1.73698, -1.64373, 2.15304, 8.57715}, {0.61076, 1.54312, 1.54259, -1.94057, 0.198723, 0.200419, 1.32981, -1.74185, -0.13734, 0, 0, 4.817, 1.64373, -2.15304, -2.15448, 0.754941, 1.90741, -0.0779689, -2.39867, 0.245635, -1.73698, -3.19798, -8.0799, -6.09239, 10.1609, -1.04052, 0.93531, -6.96297, 9.12042, 2.70384}, {-5.36656, 5.36656, -5.36656, 0, 0, -3.15147, -0.373467, 3.64699, 2.778, -1.41539, -1.85814, -1.41539, -2.21115, 2.21115, 14.2902, 0.461631, -4.50793, 0.461631, -0.255645, -16.8847, -16.7569, 5.19992, 11.9405, 5.19992, 1.74951, 2.29678, 5.64494, 2.21115, -2.21115, -1.68428}, {1.78885, -1.78885, 1.78885, 0, 0, 9.45441, -0.373467, 3.64699, 2.778, -1.41539, -1.85814, -1.41539, -9.36656, 9.36656, -5.47113, 1.9555, -19.0959, -10.6504, -1.74951, -2.29678, -5.64494, -0.461631, 4.50793, -0.461631, 7.41106, 9.72932, 11.3065, 2.21115, -2.21115, -1.68428}, {1.78885, -1.78885, 1.78885, 0, 0, -3.15147, 1.1204, -10.941, -8.334, -1.41539, -1.85814, -1.41539, -2.21115, 2.21115, 1.68428, 0.461631, -4.50793, 13.0675, -8.90493, 4.85864, -12.8004, -0.461631, 4.50793, -0.461631, 1.74951, 2.29678, 5.64494, 7.87269, 5.2214, 3.97726}, {1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -0.373467, 3.64699, 2.778, 4.24616, 5.57441, 4.24616, -2.21115, 2.21115, 1.68428, 0.461631, -4.50793, 0.461631, -1.74951, -2.29678, -5.64494, -7.61705, 11.6633, -7.61705, 1.74951, 2.29678, 18.2508, 3.70501, -16.7991, -12.7963}, {1.64026, -3.9353, -3.8467e-12, 0.194118, 0, -1.44665, -0.509273, -1.31177, -1.28236e-12, 0.861908, 0, 1.44665, -0.34059, -1.62143, 7.57474, 0.389553, 1.62143, 1.78815, 3.34241, 5.24706, 5.12945e-12, -3.83718, -1.62143, -7.57474, -1.30532, 0, 0, -0.435881, 1.62143, -1.78815}, {-0.546753, 1.31177, 1.28098e-12, -0.582353, 3.77031e-16, 4.33994, -0.509273, -1.31177, -1.28138e-12, 0.861908, 8.26902e-17, 1.44665, 2.62289, -6.86849, 1.78815, 2.42664, 6.86849, 1.78815, 1.30532, -3.78785e-16, 4.44089e-16, -0.389553, -1.62143, -1.78815, -4.75295, -2.77626e-16, -5.78659, -0.435881, 1.62143, -1.78815}, {-0.546753, 1.31177, 1.28164e-12, 0.194118, 0, -1.44665, 1.52782, 3.9353, 3.84623e-12, 0.861908, 0, 1.44665, 0.435881, -1.62143, 1.78815, -0.386918, 1.62143, 7.57474, 3.49233, -5.24706, -5.12657e-12, -0.389553, -1.62143, -1.78815, -1.30532, 0, -4.44089e-16, -3.88351, 1.62143, -7.57474}, {-0.546753, 1.31177, 1.28164e-12, 0.194118, 0, -1.44665, -0.509273, -1.31177, -1.28138e-12, -2.58572, 0, -4.33994, 0.435881, -1.62143, 1.78815, 0.389553, 1.62143, 1.78815, 1.30532, -3.2565e-16, -2.22045e-16, 1.79746, -6.86849, -1.78815, -2.08179, 0, 5.78659, 1.60121, 6.86849, -1.78815}, {0.831641, 5.95736e-16, -6.19774, -0.482067, 1.31177, -0.482067, -0.449021, -1.31177, -0.449021, 1.2083, 1.98579e-16, -1.13482, 2.86679, -6.86849, -0.0294728, 1.15089, 0, 1.15089, 2.69376, 6.86849, -0.202503, -5.98409, -7.94315e-16, 3.38841, -0.897675, -1.62143, 1.99859, -0.938522, 1.62143, 1.95774}, {-0.277214, -1.75113e-16, 2.06591, 1.4462, -3.9353, 1.4462, -0.449021, -1.31177, -0.449021, 1.2083, 3.97157e-16, -1.13482, 2.04738, -1.62143, -10.2214, 2.94697, 5.24706, 2.94697, 0.897675, 1.62143, -1.99859, -1.15089, -2.22045e-16, -1.15089, -5.73088, -1.62143, 6.53788, -0.938522, 1.62143, 1.95774}, {-0.277214, 7.58234e-17, 2.06591, -0.482067, 1.31177, -0.482067, 1.34706, 3.9353, 1.34706, 1.2083, -2.97868e-16, -1.13482, 0.938522, -1.62143, -1.95774, 3.07916, -5.24706, 3.07916, 2.00653, 1.62143, -10.2622, -1.15089, 4.44089e-16, -1.15089, -0.897675, -1.62143, 1.99859, -5.77173, 1.62143, 6.49704}, {-0.277214, 0, 2.06591, -0.482067, 1.31177, -0.482067, -0.449021, -1.31177, -0.449021, -3.6249, 0, 3.40447, 0.938522, -1.62143, -1.95774, 1.15089, 0, 1.15089, 0.897675, 1.62143, -1.99859, -0.0420334, 0, -9.41454, 1.03059, -6.86849, 3.92685, 0.857562, 6.86849, 3.75382}, {10.941, -1.1204, -8.334, 1.78885, -1.78885, 1.78885, 1.85814, 1.41539, -1.41539, 0, 0, -3.15147, -4.85864, 8.90493, -12.8004, -4.50793, 0.461631, -0.461631, -5.2214, -7.87269, 3.97726, 4.50793, -0.461631, 13.0675, -2.21115, 2.21115, 1.68428, -2.29678, -1.74951, 5.64494}, {-3.64699, 0.373467, 2.778, -5.36656, 5.36656, -5.36656, 1.85814, 1.41539, -1.41539, 0, 0, -3.15147, 16.8847, 0.255645, -16.7569, -11.9405, -5.19992, 5.19992, 2.21115, -2.21115, -1.68428, 4.50793, -0.461631, 0.461631, -2.21115, 2.21115, 14.2902, -2.29678, -1.74951, 5.64494}, {-3.64699, 0.373467, 2.778, 1.78885, -1.78885, 1.78885, -5.57441, -4.24616, 4.24616, 0, 0, -3.15147, 2.29678, 1.74951, -5.64494, -11.6633, 7.61705, -7.61705, 16.7991, -3.70501, -12.7963, 4.50793, -0.461631, 0.461631, -2.21115, 2.21115, 1.68428, -2.29678, -1.74951, 18.2508}, {-3.64699, 0.373467, 2.778, 1.78885, -1.78885, 1.78885, 1.85814, 1.41539, -1.41539, 0, 0, 9.45441, 2.29678, 1.74951, -5.64494, -4.50793, 0.461631, -0.461631, 2.21115, -2.21115, -1.68428, 19.0959, -1.9555, -10.6504, -9.36656, 9.36656, -5.47113, -9.72932, -7.41106, 11.3065}, {1.77636e-15, 0, 9.45441, 1.78885, 1.78885, 1.78885, 1.36261, -1.78885, 1.36261, -3.15147, 0, 0, -9.36656, -9.36656, -5.47113, -3.89543, 0, -3.89543, -7.13474, 9.36656, -3.23931, 16.5013, 0, 3.89543, 1.68428, -2.21115, -2.21115, 2.21115, 2.21115, -1.68428}, {0, 0, -3.15147, -5.36656, -5.36656, -5.36656, 1.36261, -1.78885, 1.36261, -3.15147, 0, 0, -2.21115, -2.21115, 14.2902, -9.34589, 7.15542, -9.34589, -1.68428, 2.21115, 2.21115, 3.89543, 0, 3.89543, 14.2902, -2.21115, -2.21115, 2.21115, 2.21115, -1.68428}, {4.44089e-16, 0, -3.15147, 1.78885, 1.78885, 1.78885, -4.08784, 5.36656, -4.08784, -3.15147, 0, 0, -2.21115, -2.21115, 1.68428, -11.0508, -7.15542, -11.0508, -1.68428, 2.21115, 14.817, 3.89543, 0, 3.89543, 1.68428, -2.21115, -2.21115, 14.817, 2.21115, -1.68428}, {0, 0, -3.15147, 1.78885, 1.78885, 1.78885, 1.36261, -1.78885, 1.36261, 9.45441, 0, 0, -2.21115, -2.21115, 1.68428, -3.89543, 0, -3.89543, -1.68428, 2.21115, 2.21115, 3.89543, 0, 16.5013, -5.47113, -9.36656, -9.36656, -3.23931, 9.36656, -7.13474}, {5.22884, -3.98763, -5.22319, 0.200328, -1.9397, -2.54071, 8.97324e-16, 3.55112e-16, 2.34313, 1.54262, 0.610485, -1.54348, 1.10547, 8.51339, 11.1512, -0.24762, 2.3976, 0.244222, 2.1544, -1.643, -14.4208, -5.92285, -4.83954, 5.92971, -2.1544, 1.643, 5.04833, -1.90678, -0.754601, -0.988412}, {-1.74295, 1.32921, 1.74106, -0.600985, 5.81909, 7.62212, 0, 0, 2.34313, 1.54262, 0.610485, -1.54348, 8.87857, -4.56224, -5.97584, -0.24762, 2.3976, -9.12828, 2.1544, -1.643, -5.04833, 0.24762, -2.3976, -0.244222, -8.32487, -0.798945, 11.2223, -1.90678, -0.754601, -0.988412}, {-1.74295, 1.32921, 1.74106, 0.200328, -1.9397, -2.54071, 0, 0, -7.02938, 1.54262, 0.610485, -1.54348, 1.90678, 0.754601, 0.988412, -1.04893, 10.1564, 10.407, 9.12619, -6.95984, -12.0126, 0.24762, -2.3976, -0.244222, -2.1544, 1.643, 5.04833, -8.07725, -3.19654, 5.18552}, {-1.74295, 1.32921, 1.74106, 0.200328, -1.9397, -2.54071, 8.97324e-16, 3.55112e-16, 2.34313, -4.62785, -1.83146, 4.63045, 1.90678, 0.754601, 0.988412, -0.24762, 2.3976, 0.244222, 2.1544, -1.643, -5.04833, 7.21941, -7.71444, -7.20847, -2.95571, 9.40178, 15.2112, -1.90678, -0.754601, -10.3609}, {0.403167, 4.33994, -4.33994, 1.56712, -1.12319e-15, 3.41061e-16, -0.345916, 1.4404, 0.569981, -1.08682, 0.00624416, -2.01663, -8.03944, 1.78815, -1.78815, -1.50949, -1.78044, -0.704535, 1.97736, -5.75389, -4.77261, 5.85676, 1.75546, 8.77105, -0.59369, -0.00771821, 2.49269, 1.77095, -1.78815, 1.78815}, {-0.134389, -1.44665, 1.44665, -4.70136, 1.67385e-15, 3.01891e-15, -0.345916, 1.4404, 0.569981, -1.08682, 0.00624416, -2.01663, -1.2334, 7.57474, -7.57474, -0.125826, -7.54205, -2.98446, 0.59369, 0.00771821, -2.49269, 1.50949, 1.78044, 0.704535, 3.75357, -0.0326948, 10.5592, 1.77095, -1.78815, 1.78815}, {-0.134389, -1.44665, 1.44665, 1.56712, 0, 0, 1.03775, -4.32121, -1.70994, -1.08682, 0.00624416, -2.01663, -1.77095, 1.78815, -1.78815, -7.77798, -1.78044, -0.704535, 1.13125, 5.79431, -8.27928, 1.50949, 1.78044, 0.704535, -0.59369, -0.00771821, 2.49269, 6.11822, -1.81313, 9.85467}, {-0.134389, -1.44665, 1.44665, 1.56712, -2.42925e-18, 7.84555e-16, -0.345916, 1.4404, 0.569981, 3.26045, -0.0187325, 6.04988, -1.77095, 1.78815, -1.78815, -1.50949, -1.78044, -0.704535, 0.59369, 0.00771821, -2.49269, 2.04705, 7.56702, -5.08205, -6.86218, -0.00771821, 2.49269, 3.15462, -7.54977, -0.491769}, {-7.02938, 5.36656, -7.02938, -2.34313, 0, 0, 0, 0, -2.34313, 1.02097e-11, 1.78885, 1.02102e-11, 9.3725, 2.21115, -2.89626, 2.89626, 0, 2.89626, -2.89626, 2.21115, 9.3725, -2.89626, -7.15542, -2.89626, 2.89626, -2.21115, -1.26205e-11, -1.26199e-11, -2.21115, 2.89626}, {2.34313, -1.78885, 2.34313, 7.02938, 0, 0, 0, 0, -2.34313, 1.02086e-11, 1.78885, 1.02066e-11, -9.3725, 9.36656, -12.2688, 2.89626, 0, 12.2688, -2.89626, 2.21115, 1.26154e-11, -2.89626, 4.44089e-16, -2.89626, 2.89626, -9.36656, -5.34422e-11, -1.26186e-11, -2.21115, 2.89626}, {2.34313, -1.78885, 2.34313, -2.34313, 0, 0, 0, 0, 7.02938, 1.0206e-11, 1.78885, 1.02081e-11, 1.26148e-11, 2.21115, -2.89626, 12.2688, 0, 2.89626, -12.2688, 9.36656, -9.3725, -2.89626, 4.44089e-16, -2.89626, 2.89626, -2.21115, -1.26179e-11, -5.34395e-11, -9.36656, 2.89626}, {2.34313, -1.78885, 2.34313, -2.34313, 0, 0, 0, 0, -2.34313, -3.06361e-11, -5.36656, -3.06329e-11, 1.26222e-11, 2.21115, -2.89626, 2.89626, 0, 2.89626, -2.89626, 2.21115, 1.26209e-11, -12.2688, 7.15542, -12.2688, 12.2688, -2.21115, -1.26215e-11, -1.26228e-11, -2.21115, 12.2688}, {7.02938, 0, 8.88974e-16, 2.34566, -1.78885, -2.34313, -1.47457e-18, 1.04056e-15, 2.34313, -0.00253498, 1.78885, -1.02102e-11, -9.38578, 9.36656, 12.2688, -2.8994, 2.21115, -1.26206e-11, 2.89626, -4.88498e-15, -12.2688, 2.90954, -9.36656, 5.34614e-11, -2.89626, 8.88178e-16, 2.89626, 0.00313341, -2.21115, -2.89626}, {-2.34313, 0, 7.14229e-17, -7.03698, 5.36656, 7.02938, 0, 0, 2.34313, -0.00253498, 1.78885, -1.02097e-11, 9.36937, 2.21115, 2.89626, -2.8994, 2.21115, -9.3725, 2.89626, 0, -2.89626, 2.8994, -2.21115, 1.26197e-11, -2.88612, -7.15542, 2.89626, 0.00313341, -2.21115, -2.89626}, {-2.34313, 0, -3.09288e-16, 2.34566, -1.78885, -2.34313, 0, 0, -7.02938, -0.00253498, 1.78885, -1.02071e-11, -0.00313341, 2.21115, 2.89626, -12.282, 9.36656, 9.3725, 12.2688, 0, -2.89626, 2.8994, -2.21115, 1.2617e-11, -2.89626, 0, 2.89626, 0.0132733, -9.36656, -2.89626}, {-2.34313, -2.22045e-16, 6.36673e-16, 2.34566, -1.78885, -2.34313, -1.47457e-18, 1.04056e-15, 2.34313, 0.00760494, -5.36656, 3.06361e-11, -0.00313341, 2.21115, 2.89626, -2.8994, 2.21115, -1.26219e-11, 2.89626, -1.33227e-15, -2.89626, 12.2719, -2.21115, 1.26202e-11, -12.2789, 7.15542, 12.2688, 0.00313341, -2.21115, -12.2688}, {5.3029, -0.485897, 0.486322, 0.215713, 1.38996, 0.214498, 0.501223, -0.501223, -1.10401, 1.0507, -1.0507, 1.05162, 1.05543, -7.4781, -0.922752, -0.886182, -1.09853, 1.09949, -0.439523, 2.42424, 5.98103, -3.31661, 5.30132, -5.30596, -1.56537, -0.419345, -1.565, -1.91828, 1.91828, 0.0647586}, {-1.76763, 0.161966, -0.162107, -0.647139, -4.16987, -0.643495, 0.501223, -0.501223, -1.10401, 1.0507, -1.0507, 1.05162, 8.98882, -2.56614, 0.583671, -2.89107, 0.90636, 5.51552, 1.56537, 0.419345, 1.565, 0.886182, 1.09853, -1.09949, -5.76816, 3.78345, -5.77147, -1.91828, 1.91828, 0.0647586}, {-1.76763, 0.161966, -0.162107, 0.215713, 1.38996, 0.214498, -1.50367, 1.50367, 3.31202, 1.0507, -1.0507, 1.05162, 1.91828, -1.91828, -0.0647586, -1.74903, -6.65835, 0.2415, 8.63591, -0.228518, 2.21343, 0.886182, 1.09853, -1.09949, -1.56537, -0.419345, -1.565, -6.12107, 6.12107, -4.14171}, {-1.76763, 0.161966, -0.162107, 0.215713, 1.38996, 0.214498, 0.501223, -0.501223, -1.10401, -3.15209, 3.15209, -3.15485, 1.91828, -1.91828, -0.0647586, -0.886182, -1.09853, 1.09949, 1.56537, 0.419345, 1.565, 7.95672, 0.45067, -0.451064, -2.42822, -5.97917, -2.423, -3.92317, 3.92317, 4.48079}, {1.71308, 4.3282, 0.488804, 0.642112, 1.62234, -1.62234, 2.1437, 0.314496, -0.314496, -2.21478, -0.4941, 2.09977, -2.65632, -6.71135, 8.69607, -3.44345, -2.39406, 2.39406, -10.5187, 0.136594, 1.84812, 12.3026, 4.37046, -10.7931, 1.94393, -1.39458, -0.590137, 0.0878675, 0.222003, -2.20672}, {-0.571026, -1.44273, -0.162935, -1.92634, -4.86701, 4.86701, 2.1437, 0.314496, -0.314496, -2.21478, -0.4941, 2.09977, 2.19624, 5.54893, 2.85846, -12.0182, -3.65204, 3.65204, -1.94393, 1.39458, 0.590137, 3.44345, 2.39406, -2.39406, 10.8031, 0.581823, -8.98921, 0.0878675, 0.222003, -2.20672}, {-0.571026, -1.44273, -0.162935, 0.642112, 1.62234, -1.62234, -6.43109, -0.943488, 0.943488, -2.21478, -0.4941, 2.09977, -0.0878675, -0.222003, 2.20672, -6.0119, -8.88341, 8.88341, 0.340174, 7.16551, 1.24188, 3.44345, 2.39406, -2.39406, 1.94393, -1.39458, -0.590137, 8.947, 2.1984, -10.6058}, {-0.571026, -1.44273, -0.162935, 0.642112, 1.62234, -1.62234, 2.1437, 0.314496, -0.314496, 6.64435, 1.4823, -6.2993, -0.0878675, -0.222003, 2.20672, -3.44345, -2.39406, 2.39406, -1.94393, 1.39458, 0.590137, 5.72755, 8.16499, -1.74232, -0.624519, -7.88393, 5.89921, -8.48692, -1.03598, -0.948734}, {-4.62937, 4.62937, 1.83228, 0.198723, -0.198723, 1.94057, -1.74185, 0.136178, -1.32981, 0, 1.60567, 0, -2.94793, 2.94793, -9.40601, 1.90741, 0.0773091, -0.754941, 7.21302, 1.19437, 7.71791, -1.90741, -6.49998, 0.754941, -0.245635, -1.73908, -2.39867, 2.15304, -2.15304, 1.64373}, {1.54312, -1.54312, -0.61076, -0.596168, 0.596168, -5.82171, -1.74185, 0.136178, -1.32981, 6.94322e-16, 1.60567, 5.30079e-16, -8.32553, 8.32553, 0.799305, 8.87479, -0.467403, 4.5643, 0.245635, 1.73908, 2.39867, -1.90741, -0.0773091, 0.754941, -0.245635, -8.16175, -2.39867, 2.15304, -2.15304, 1.64373}, {1.54312, -1.54312, -0.61076, 0.198723, -0.198723, 1.94057, 5.22554, -0.408534, 3.98943, 0, 1.60567, 0, -2.15304, 2.15304, -1.64373, 1.11252, 0.872199, -8.51722, -5.92686, 7.91157, 4.84171, -1.90741, -0.0773091, 0.754941, -0.245635, -1.73908, -2.39867, 2.15304, -8.57571, 1.64373}, {1.54312, -1.54312, -0.61076, 0.198723, -0.198723, 1.94057, -1.74185, 0.136178, -1.32981, 0, -4.817, 0, -2.15304, 2.15304, -1.64373, 1.90741, 0.0773091, -0.754941, 0.245635, 1.73908, 2.39867, -8.0799, 6.09519, 3.19798, -1.04052, -0.94419, -10.1609, 9.12042, -2.69775, 6.96297}, {-1.38621, -1.33227e-15, 3.9353, 1.09414, 1.31177, 1.31177, 0.173581, -1.31177, 0, -1.72979, 0, 0, -6.30013, -6.86849, -5.24706, -1.56699, 4.44089e-16, -1.62143, -1.48003, 6.86849, 1.62143, 8.48614, -4.44089e-16, 1.62143, 0.785706, -1.62143, -1.62143, 1.92358, 1.62143, 0}, {0.462069, -5.96084e-17, -1.31177, -3.28242, -3.9353, -3.9353, 0.173581, -1.31177, 0, -1.72979, 2.81653e-16, 0, -3.77185, -1.62143, 5.24706, -2.26131, 5.24706, -1.62143, -0.785706, 1.62143, 1.62143, 1.56699, -2.22045e-16, 1.62143, 7.70486, -1.62143, -1.62143, 1.92358, 1.62143, 0}, {0.462069, -8.88178e-16, -1.31177, 1.09414, 1.31177, 1.31177, -0.520744, 3.9353, 0, -1.72979, 0, 0, -1.92358, -1.62143, 3.2565e-16, -5.94354, -5.24706, -6.86849, -2.63398, 1.62143, 6.86849, 1.56699, 1.11022e-15, 1.62143, 0.785706, -1.62143, -1.62143, 8.84273, 1.62143, 0}, {0.462069, 0, -1.31177, 1.09414, 1.31177, 1.31177, 0.173581, -1.31177, 0, 5.18937, 0, 0, -1.92358, -1.62143, 3.2565e-16, -1.56699, 0, -1.62143, -0.785706, 1.62143, 1.62143, -0.281287, 0, 6.86849, -3.59085, -6.86849, -6.86849, 1.22925, 6.86849, 0}, {-3.84404e-12, -3.9353, 2.80446, 1.44665, 0, 0.44688, -1.28111e-12, -1.31177, -0.870737, -1.44665, 0, 1.35868, -7.57474, -1.62143, -1.18439, -1.78815, 1.62143, 0.523916, 5.12412e-12, 5.24706, 5.71474, 7.57474, -1.62143, -5.95862, 2.22045e-16, 0, -2.23179, 1.78815, 1.62143, -0.603126}, {1.2812e-12, 1.31177, -0.934819, -4.33994, -8.15796e-16, -1.34064, -1.28111e-12, -1.31177, -0.870737, -1.44665, -1.24937e-16, 1.35868, -1.78815, -6.86849, 4.3424, -1.78815, 6.86849, 4.00686, 0, -1.43955e-16, 2.23179, 1.78815, -1.62143, -0.523916, 5.78659, 3.18053e-16, -7.66649, 1.78815, 1.62143, -0.603126}, {1.28053e-12, 1.31177, -0.934819, 1.44665, 0, 0.44688, 3.84227e-12, 3.9353, 2.61221, -1.44665, 0, 1.35868, -1.78815, -1.62143, 0.603126, -7.57474, 1.62143, -1.2636, -5.12124e-12, -5.24706, 5.97107, 1.78815, -1.62143, -0.523916, -4.44089e-16, 0, -2.23179, 7.57474, 1.62143, -6.03783}, {1.28098e-12, 1.31177, -0.934819, 1.44665, 0, 0.44688, -1.281e-12, -1.31177, -0.870737, 4.33994, 0, -4.07603, -1.78815, -1.62143, 0.603126, -1.78815, 1.62143, 0.523916, 0, -3.2565e-16, 2.23179, 1.78815, -6.86849, 3.21536, -5.78659, 0, -4.01931, 1.78815, 6.86849, 2.87982}, {5.36291, -5.36619, -5.37088, 3.64451, -0.373213, -0.376399, -1.85687, 0.190152, -1.41389, 0, -1.60567, 0, -16.8733, -0.256821, -0.242074, -2.20964, 0.226277, 2.21292, 11.9323, -3.20664, 5.19032, 2.20964, 6.1964, -2.21292, -4.50486, 2.44603, 0.465254, 2.29522, 1.74967, 1.74767}, {-1.78764, 1.78873, 1.79029, -10.9335, 1.11964, 1.1292, -1.85687, 0.190152, -1.41389, 0, -1.60567, 0, 4.85533, -8.90459, -8.90884, 5.21784, -0.53433, 7.8685, 4.50486, -2.44603, -0.465254, 2.20964, -0.226277, -2.21292, -4.50486, 8.8687, 0.465254, 2.29522, 1.74967, 1.74767}, {-1.78764, 1.78873, 1.79029, 3.64451, -0.373213, -0.376399, 5.57061, -0.570455, 4.24168, 0, -1.60567, 0, -2.29522, -1.74967, -1.74767, -16.7877, 1.71913, 3.71852, 11.6554, -9.60095, -7.62642, 2.20964, -0.226277, -2.21292, -4.50486, 2.44603, 0.465254, 2.29522, 8.17235, 1.74767}, {-1.78764, 1.78873, 1.79029, 3.64451, -0.373213, -0.376399, -1.85687, 0.190152, -1.41389, 0, 4.817, 0, -2.29522, -1.74967, -1.74767, -2.20964, 0.226277, 2.21292, 4.50486, -2.44603, -0.465254, 9.36019, -7.3812, -9.37409, -19.0829, 3.93889, 1.97085, 9.72271, 0.989068, 7.40324}, {-4.90664, -4.91093, -4.90664, 0.802238, -0.802728, -0.80343, -1.63555, -0.0313083, -1.63555, -0.802238, -0.80294, 0.80343, -6.22222, 2.17973, 2.18516, 1.03003, 1.03093, 3.01474, 6.54219, -1.85948, 6.54219, 2.17893, 2.18083, -6.22846, -3.78586e-14, 1.98471, 3.79696e-14, 3.01327, 1.03119, 1.02855}, {1.63555, 1.63698, 1.63555, -2.40672, 2.40819, 2.41029, -1.63555, -0.0313083, -1.63555, -0.802238, -0.80294, 0.80343, -9.55546, -7.57909, -7.57074, 7.57221, 1.15616, 9.55693, 3.71925e-14, -1.98471, -3.81917e-14, -1.03003, -1.03093, -3.01474, 3.20895, 5.19647, -3.21372, 3.01327, 1.03119, 1.02855}, {1.63555, 1.63698, 1.63555, 0.802238, -0.802728, -0.80343, 4.90664, 0.0939249, 4.90664, -0.802238, -0.80294, 0.80343, -3.01327, -1.03119, -1.02855, -2.17893, 4.24184, 6.22846, -6.54219, -8.53262, -6.54219, -1.03003, -1.03093, -3.01474, -3.78586e-14, 1.98471, 3.80806e-14, 6.22222, 4.24295, -2.18516}, {1.63555, 1.63698, 1.63555, 0.802238, -0.802728, -0.80343, -1.63555, -0.0313083, -1.63555, 2.40672, 2.40882, -2.41029, -3.01327, -1.03119, -1.02855, 1.03003, 1.03093, 3.01474, 3.73035e-14, -1.98471, -3.83027e-14, -7.57221, -7.57883, -9.55693, -3.20895, 5.19563, 3.21372, 9.55546, 1.15642, 7.57074}, {0.433524, 4.35281, -4.30748, -1.58383, 1.03002, -2.49725, 0.961132, -0.582294, -1.46836, 0.767201, 1.00321, 2.52978, 8.47164, -3.5998, 11.301, 0.769691, -0.553419, 4.90175, -4.85393, 4.84239, 5.91364, -3.83849, -3.45943, -15.0209, 1.0094, -2.51321, -0.0402101, -2.13634, -0.520284, -1.31199}, {-0.144508, -1.45094, 1.43583, 4.75148, -3.09006, 7.49174, 0.961132, -0.582294, -1.46836, 0.767201, 1.00321, 2.52978, 2.71437, 6.32404, -4.43132, -3.07484, 1.77576, 10.7752, -1.0094, 2.51321, 0.0402101, -0.769691, 0.553419, -4.90175, -2.0594, -6.52607, -10.1593, -2.13634, -0.520284, -1.31199}, {-0.144508, -1.45094, 1.43583, -1.58383, 1.03002, -2.49725, -2.8834, 1.74688, 4.40507, 0.767201, 1.00321, 2.52978, 2.13634, 0.520284, 1.31199, 7.10499, -4.6735, 14.8907, -0.431372, 8.31697, -5.70309, -0.769691, 0.553419, -4.90175, 1.0094, -2.51321, -0.0402101, -5.20514, -4.53314, -11.4311}, {-0.144508, -1.45094, 1.43583, -1.58383, 1.03002, -2.49725, 0.961132, -0.582294, -1.46836, -2.3016, -3.00964, -7.58933, 2.13634, 0.520284, 1.31199, 0.769691, -0.553419, 4.90175, -1.0094, 2.51321, 0.0402101, -0.191659, 6.35717, -10.6451, 7.3447, -6.63329, 9.94877, -5.98087, 1.80889, 4.56144}, {-5.22554, 3.98943, -3.78662, 0, 0, -1.80556, -0.198723, 1.94057, 0.386742, -1.54312, -0.61076, 0.156608, -2.15304, 1.64373, 7.89384, 0.245635, -2.39867, 1.75375, -1.11252, -8.51722, -3.58518, 5.92686, 4.84171, -2.38018, 1.90741, 0.754941, 2.03821, 2.15304, -1.64373, -0.671617}, {1.74185, -1.32981, 1.26221, 0, 0, 5.41667, -0.198723, 1.94057, 0.386742, -1.54312, -0.61076, 0.156608, -9.12042, 6.96297, -4.37721, 1.04052, -10.1609, 0.206785, -1.90741, -0.754941, -2.03821, -0.245635, 2.39867, -1.75375, 8.0799, 3.19798, 1.41178, 2.15304, -1.64373, -0.671617}, {1.74185, -1.32981, 1.26221, 0, 0, -1.80556, 0.596168, -5.82171, -1.16022, -1.54312, -0.61076, 0.156608, -2.15304, 1.64373, 0.671617, 0.245635, -2.39867, 8.97597, -8.87479, 4.5643, -7.08704, -0.245635, 2.39867, -1.75375, 1.90741, 0.754941, 2.03821, 8.32553, 0.799305, -1.29805}, {1.74185, -1.32981, 1.26221, 0, 0, -1.80556, -0.198723, 1.94057, 0.386742, 4.62937, 1.83228, -0.469823, -2.15304, 1.64373, 0.671617, 0.245635, -2.39867, 1.75375, -1.90741, -0.754941, -2.03821, -7.21302, 7.71791, -6.80258, 1.90741, 0.754941, 9.26043, 2.94793, -9.40601, -2.21858}, {2.47366, -6.0686, -0.0191747, -0.141226, -1.44665, 1.44665, 1.40644, 1.00594e-16, 2.53667e-16, -0.440661, -0.57622, -1.45304, 1.75867, 5.07434, -7.58264, -1.56389, 1.78815, -1.78815, -6.34501, -2.5004, -0.0079004, 3.32653, 0.516725, 7.60031, 0.719252, 2.5004, 0.0079004, -1.19377, 0.712247, 1.79605}, {-0.824552, 2.02287, 0.00639156, 0.423679, 4.33994, -4.33994, 1.40644, 3.01783e-16, 7.61e-16, -0.440661, -0.57622, -1.45304, 4.49197, -8.80371, -1.82162, -7.18964, 1.78815, -1.78815, -0.719252, -2.5004, -0.0079004, 1.56389, -1.78815, 1.78815, 2.48189, 4.80528, 5.82005, -1.19377, 0.712247, 1.79605}, {-0.824552, 2.02287, 0.00639156, -0.141226, -1.44665, 1.44665, -4.21932, 0, 0, -0.440661, -0.57622, -1.45304, 1.19377, -0.712247, -1.79605, -0.998983, 7.57474, -7.57474, 2.57896, -10.5919, -0.0334666, 1.56389, -1.78815, 1.78815, 0.719252, 2.5004, 0.0079004, 0.568875, 3.01713, 7.60821}, {-0.824552, 2.02287, 0.00639156, -0.141226, -1.44665, 1.44665, 1.40644, -3.01783e-16, -7.61e-16, 1.32198, 1.72866, 4.35912, 1.19377, -0.712247, -1.79605, -1.56389, 1.78815, -1.78815, -0.719252, -2.5004, -0.0079004, 4.8621, -9.87962, 1.76259, 1.28416, 8.28699, -5.77869, -6.81952, 0.712247, 1.79605}, {-5.82171, -0.596168, -7.61729, 0, 0, -2.34313, -0.61076, 1.54312, 1.54399, -1.32981, -1.74185, -1.73996, -2.39867, -0.245635, 9.13027, 0.754941, -1.90741, 0.987787, 0.799305, -8.32553, -11.2229, 4.5643, 8.87479, 5.97206, 1.64373, 2.15304, 5.04697, 2.39867, 0.245635, 0.242235}, {1.94057, 0.198723, 2.5391, 0, 0, 7.02938, -0.61076, 1.54312, 1.54399, -1.32981, -1.74185, -1.73996, -10.1609, -1.04052, -10.3986, 3.19798, -8.0799, -5.18817, -1.64373, -2.15304, -5.04697, -0.754941, 1.90741, -0.987787, 6.96297, 9.12042, 12.0068, 2.39867, 0.245635, 0.242235}, {1.94057, 0.198723, 2.5391, 0, 0, -2.34313, 1.83228, -4.62937, -4.63197, -1.32981, -1.74185, -1.73996, -2.39867, -0.245635, -0.242235, 0.754941, -1.90741, 10.3603, -9.40601, -2.94793, -15.2034, -0.754941, 1.90741, -0.987787, 1.64373, 2.15304, 5.04697, 7.71791, 7.21302, 7.20208}, {1.94057, 0.198723, 2.5391, 0, 0, -2.34313, -0.61076, 1.54312, 1.54399, 3.98943, 5.22554, 5.21989, -2.39867, -0.245635, -0.242235, 0.754941, -1.90741, 0.987787, -1.64373, -2.15304, -5.04697, -8.51722, 1.11252, -11.1442, 1.64373, 2.15304, 14.4195, 4.84171, -5.92686, -5.93372}, {7.02938, 8.88178e-16, -8.88178e-16, 1.54312, -1.54312, -0.61076, 2.54185, -0.198723, 1.94057, -1.74185, 1.74185, -1.32981, -5.18364, 8.0799, 3.19798, -5.0493, 2.15304, -1.64373, -10.413, 1.04052, -10.1609, 12.0167, -9.12042, 6.96297, 0.245635, -0.245635, 2.39867, -0.988857, -1.90741, -0.754941}, {-2.34313, 0, -4.44089e-16, -4.62937, 4.62937, 1.83228, 2.54185, -0.198723, 1.94057, -1.74185, 1.74185, -1.32981, 10.3614, 1.90741, 0.754941, -15.2167, 2.94793, -9.40601, -0.245635, 0.245635, -2.39867, 5.0493, -2.15304, 1.64373, 7.21302, -7.21302, 7.71791, -0.988857, -1.90741, -0.754941}, {-2.34313, 2.22045e-16, 0, 1.54312, -1.54312, -0.61076, -7.62554, 0.596168, -5.82171, -1.74185, 1.74185, -1.32981, 0.988857, 1.90741, 0.754941, -11.2218, 8.32553, 0.799305, 9.12687, 0.245635, -2.39867, 5.0493, -2.15304, 1.64373, 0.245635, -0.245635, 2.39867, 5.97853, -8.87479, 4.5643}, {-2.34313, 0, -2.22045e-16, 1.54312, -1.54312, -0.61076, 2.54185, -0.198723, 1.94057, 5.22554, -5.22554, 3.98943, 0.988857, 1.90741, 0.754941, -5.0493, 2.15304, -1.64373, -0.245635, 0.245635, -2.39867, 14.4218, -2.15304, 1.64373, -5.92686, 5.92686, 4.84171, -11.1562, -1.11252, -8.51722}, {9.45441, 8.88178e-16, 0, -1.41486, -1.85814, 1.41539, 2.77696, 3.64699, 0.373467, 1.78937, -1.78885, -1.78885, 11.3037, 9.72932, -7.41106, -1.68365, -2.21115, -2.21115, -10.6449, -19.0959, -1.9555, -5.47381, 9.36656, 9.36656, -0.46292, 4.50793, 0.461631, -5.64429, -2.29678, 1.74951}, {-3.15147, 8.88178e-16, 4.44089e-16, 4.24457, 5.57441, -4.24616, 2.77696, 3.64699, 0.373467, 1.78937, -1.78885, -1.78885, 18.2502, 2.29678, -1.74951, -12.7915, -16.7991, -3.70501, 0.46292, -4.50793, -0.461631, 1.68365, 2.21115, 2.21115, -7.62038, 11.6633, 7.61705, -5.64429, -2.29678, 1.74951}, {-3.15147, 4.44089e-16, 2.22045e-16, -1.41486, -1.85814, 1.41539, -8.33088, -10.941, -1.1204, 1.78937, -1.78885, -1.78885, 5.64429, 2.29678, -1.74951, 3.97577, 5.2214, -7.87269, 13.0688, -4.50793, -0.461631, 1.68365, 2.21115, 2.21115, -0.46292, 4.50793, 0.461631, -12.8018, 4.85864, 8.90493}, {-3.15147, -2.22045e-16, 0, -1.41486, -1.85814, 1.41539, 2.77696, 3.64699, 0.373467, -5.3681, 5.36656, 5.36656, 5.64429, 2.29678, -1.74951, -1.68365, -2.21115, -2.21115, 0.46292, -4.50793, -0.461631, 14.2895, 2.21115, 2.21115, 5.1965, 11.9405, -5.19992, -16.7521, -16.8847, 0.255645}, {-1.04981, -4.33994, -1.71772, -1.16436, 0, 0, 0.183612, -1.44665, 1.44665, 0.630806, -1.58777e-12, -2.01922, 5.6641, -1.78815, -0.707741, 1.21227, 1.78815, -1.78815, -1.39395, 5.78659, -8.28248, -3.73549, -1.78815, 9.86504, 0.659504, 1.96259e-12, 2.4959, -1.00668, 1.78815, 0.707741}, {0.349938, 1.44665, 0.572575, 3.49307, 0, 0, 0.183612, -1.44665, 1.44665, 0.630806, -1.5874e-12, -2.01922, -0.393077, -7.57474, -2.99804, 0.47782, 7.57474, -7.57474, -0.659504, -1.9625e-12, -2.4959, -1.21227, -1.78815, 1.78815, -1.86372, 8.31176e-12, 10.5728, -1.00668, 1.78815, 0.707741}, {0.349938, 1.44665, 0.572575, -1.16436, 0, 0, -0.550835, 4.33994, -4.33994, 0.630806, -1.58632e-12, -2.01922, 1.00668, -1.78815, -0.707741, 5.86969, 1.78815, -1.78815, -2.05926, -5.78659, -4.7862, -1.21227, -1.78815, 1.78815, 0.659504, 1.9608e-12, 2.4959, -3.5299, 1.78815, 8.78463}, {0.349938, 1.44665, 0.572575, -1.16436, 0, 0, 0.183612, -1.44665, 1.44665, -1.89242, 4.76004e-12, 6.05767, 1.00668, -1.78815, -0.707741, 1.21227, 1.78815, -1.78815, -0.659504, -1.9616e-12, -2.4959, -2.61202, -7.57474, -0.502145, 5.31693, 1.96124e-12, 2.4959, -1.74112, 7.57474, -5.07885}, {-5.36656, 5.36656, -5.36656, 1.85814, -0.190281, -1.41539, 0, 1.60567, 0, -3.64699, 0.373467, -0.373467, -11.9405, 3.20747, 5.19992, -2.29678, -1.74951, 1.74951, -2.21115, -6.19624, -2.21115, 16.8847, 0.255645, -0.255645, 2.21115, -0.226431, 2.21115, 4.50793, -2.44635, 0.461631}, {1.78885, -1.78885, 1.78885, -5.57441, 0.570843, 4.24616, 1.45374e-15, 1.60567, 1.48869e-16, -3.64699, 0.373467, -0.373467, -11.6633, 9.60176, -7.61705, -2.29678, -8.17219, 1.74951, -2.21115, 0.226431, -2.21115, 2.29678, 1.74951, -1.74951, 16.7991, -1.7203, 3.70501, 4.50793, -2.44635, 0.461631}, {1.78885, -1.78885, 1.78885, 1.85814, -0.190281, -1.41539, 0, -4.817, 0, -3.64699, 0.373467, -0.373467, -4.50793, 2.44635, -0.461631, -9.72932, -0.988391, 7.41106, -9.36656, 7.38185, -9.36656, 2.29678, 1.74951, -1.74951, 2.21115, -0.226431, 2.21115, 19.0959, -3.94022, 1.9555}, {1.78885, -1.78885, 1.78885, 1.85814, -0.190281, -1.41539, 0, 1.60567, 0, 10.941, -1.1204, 1.1204, -4.50793, 2.44635, -0.461631, -2.29678, -1.74951, 1.74951, -2.21115, 0.226431, -2.21115, -4.85864, 8.90493, -8.90493, -5.2214, 0.534693, 7.87269, 4.50793, -8.86902, 0.461631}, {-2.3518, -6.05767, 5.91882e-12, 0.531029, -0.572575, 1.44665, -0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -3.7495, 0.502145, -7.57474, -0.336326, 2.4959, -2.43872e-12, 0.386809, 5.07885, 7.57474, 4.56043, -2.4959, 2.43872e-12, 0.648932, 0.707741, -1.78815, 1.62538, 1.78815, 1.78815}, {0.783932, 2.01922, -1.97264e-12, -1.59309, 1.71772, -4.33994, -0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -4.76111, -9.86504, -1.78815, 0.699414, 8.28248, 5.78659, -0.648932, -0.707741, 1.78815, 0.336326, -2.4959, 2.43827e-12, 4.87303, 0.707741, -1.78815, 1.62538, 1.78815, 1.78815}, {0.783932, 2.01922, -1.9722e-12, 0.531029, -0.572575, 1.44665, 0.776805, 4.33994, 4.33994, -1.05603, 0, 0, -1.62538, -1.78815, -1.78815, -2.46044, 4.7862, -5.78659, -3.78466, -8.78463, 1.78815, 0.336326, -2.4959, 2.43783e-12, 0.648932, 0.707741, -1.78815, 5.84948, 1.78815, 1.78815}, {0.783932, 2.01922, -1.97309e-12, 0.531029, -0.572575, 1.44665, -0.258935, -1.44665, -1.44665, 3.16808, 0, 0, -1.62538, -1.78815, -1.78815, -0.336326, 2.4959, -2.43894e-12, -0.648932, -0.707741, 1.78815, -2.7994, -10.5728, 1.03313e-11, -1.47518, 2.99804, -7.57474, 2.66112, 7.57474, 7.57474}, {-5.36656, -5.36656, -5.36656, 2.778, -3.64699, -0.373467, -1.41539, 1.85814, -1.41539, -3.15147, 0, 0, -16.7569, 16.8847, -0.255645, -1.68428, 2.21115, 2.21115, 5.19992, -11.9405, 5.19992, 14.2902, -2.21115, -2.21115, 0.461631, 4.50793, 0.461631, 5.64494, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, -8.334, 10.941, 1.1204, -1.41539, 1.85814, -1.41539, -3.15147, 0, 0, -12.8004, -4.85864, -8.90493, 3.97726, -5.2214, 7.87269, -0.461631, -4.50793, -0.461631, 1.68428, -2.21115, -2.21115, 13.0675, 4.50793, 0.461631, 5.64494, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 2.778, -3.64699, -0.373467, 4.24616, -5.57441, 4.24616, -3.15147, 0, 0, -5.64494, 2.29678, -1.74951, -12.7963, 16.7991, 3.70501, -7.61705, -11.6633, -7.61705, 1.68428, -2.21115, -2.21115, 0.461631, 4.50793, 0.461631, 18.2508, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 2.778, -3.64699, -0.373467, -1.41539, 1.85814, -1.41539, 9.45441, 0, 0, -5.64494, 2.29678, -1.74951, -1.68428, 2.21115, 2.21115, -0.461631, -4.50793, -0.461631, -5.47113, -9.36656, -9.36656, -10.6504, 19.0959, 1.9555, 11.3065, -9.72932, 7.41106}, {0.408534, -3.98943, 5.22554, 1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 0.198723, -1.60567, 0, 0, -7.91157, -4.84171, -5.92686, -2.15304, 1.64373, -2.15304, -0.872199, 8.51722, 1.11252, 8.57571, -1.64373, 2.15304, 0.0773091, -0.754941, -1.90741, 1.73908, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, -4.62937, -1.83228, -4.62937, 0.198723, -1.94057, 0.198723, -1.60567, 0, 0, -1.19437, -7.71791, 7.21302, -2.94793, 9.40601, -2.94793, -0.0773091, 0.754941, 1.90741, 2.15304, -1.64373, 2.15304, 6.49998, -0.754941, -1.90741, 1.73908, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, 1.54312, 0.61076, 1.54312, -0.596168, 5.82171, -0.596168, -1.60567, 0, 0, -1.73908, -2.39867, 0.245635, -8.32553, -0.799305, -8.32553, 0.467403, -4.5643, 8.87479, 2.15304, -1.64373, 2.15304, 0.0773091, -0.754941, -1.90741, 8.16175, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, 1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 0.198723, 4.817, 0, 0, -1.73908, -2.39867, 0.245635, -2.15304, 1.64373, -2.15304, -0.0773091, 0.754941, 1.90741, 2.69775, -6.96297, 9.12042, -6.09519, -3.19798, -8.0799, 0.94419, 10.1609, -1.04052}, {-1.29949, 3.9353, 2.21079, 1.70046, 1.31177, -0.409533, -0.573592, 0, 1.62837, -1.56004, 0, -0.481907, -9.43917, -5.24706, 3.05524, -1.39289, -1.62143, -1.50656, 2.46795, 1.62143, -7.61536, 7.63304, 1.62143, 3.43419, -0.173579, -1.62143, 1.10188, 2.63731, 0, -1.4171}, {0.433164, -1.31177, -0.736929, -5.10139, -3.9353, 1.2286, -0.573592, 0, 1.62837, -1.56004, 0, -0.481907, -4.36997, 5.24706, 4.36482, 0.901477, -1.62143, -8.02004, 0.173579, 1.62143, -1.10188, 1.39289, 1.62143, 1.50656, 6.06657, -1.62143, 3.02951, 2.63731, 0, -1.4171}, {0.433164, -1.31177, -0.736929, 1.70046, 1.31177, -0.409533, 1.72078, 0, -4.88511, -1.56004, 0, -0.481907, -2.63731, 3.2565e-16, 1.4171, -8.19475, -6.86849, 0.131566, -1.55908, 6.86849, 1.84584, 1.39289, 1.62143, 1.50656, -0.173579, -1.62143, 1.10188, 8.87746, 0, 0.510523}, {0.433164, -1.31177, -0.736929, 1.70046, 1.31177, -0.409533, -0.573592, 0, 1.62837, 4.68011, 0, 1.44572, -2.63731, 3.2565e-16, 1.4171, -1.39289, -1.62143, -1.50656, 0.173579, 1.62143, -1.10188, -0.339765, 6.86849, 4.45428, -6.97544, -6.86849, 2.74001, 4.93168, 0, -7.93058}, {10.941, 1.1204, -5.07489, 1.78885, 1.78885, -0.204309, 0, 0, -2.39759, 1.85814, -1.41539, 0.910268, -4.85864, -8.90493, -1.02119, -2.21115, -2.21115, 3.21612, 4.50793, 0.461631, 10.463, -5.2214, 7.87269, -6.8572, -4.50793, -0.461631, -0.872613, -2.29678, 1.74951, 1.83843}, {-3.64699, -0.373467, 1.69163, -5.36656, -5.36656, 0.612928, 0, 0, -2.39759, 1.85814, -1.41539, 0.910268, 16.8847, -0.255645, -8.60495, -2.21115, -2.21115, 12.8065, 4.50793, 0.461631, 0.872613, 2.21115, 2.21115, -3.21612, -11.9405, 5.19992, -4.51368, -2.29678, 1.74951, 1.83843}, {-3.64699, -0.373467, 1.69163, 1.78885, 1.78885, -0.204309, 0, 0, 7.19277, 1.85814, -1.41539, 0.910268, 2.29678, -1.74951, -1.83843, -9.36656, -9.36656, 4.03336, 19.0959, 1.9555, -5.89391, 2.21115, 2.21115, -3.21612, -4.50793, -0.461631, -0.872613, -9.72932, 7.41106, -1.80264}, {-3.64699, -0.373467, 1.69163, 1.78885, 1.78885, -0.204309, 0, 0, -2.39759, -5.57441, 4.24616, -2.7308, 2.29678, -1.74951, -1.83843, -2.21115, -2.21115, 3.21612, 4.50793, 0.461631, 0.872613, 16.7991, 3.70501, -9.98265, -11.6633, -7.61705, -0.0553752, -2.29678, 1.74951, 11.4288}, {-5.36656, 5.36656, -5.36656, 3.86512e-15, 3.15147, 1.39953e-15, -3.15147, 0, 0, 1.36261, -1.36261, -1.78885, -2.21115, -14.2902, -2.21115, 3.89543, -3.89543, -1.72992e-15, 14.2902, 2.21115, -2.21115, -9.34589, 9.34589, 7.15542, -1.68428, -2.21115, 2.21115, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, -1.0595e-14, -9.45441, 4.1986e-15, -3.15147, 0, 0, 1.36261, -1.36261, -1.78885, -9.36656, 5.47113, -9.36656, 16.5013, -3.89543, 1.72992e-15, 1.68428, 2.21115, -2.21115, -3.89543, 3.89543, -2.17401e-15, -7.13474, 3.23931, 9.36656, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 9.45441, 0, 0, 1.36261, -1.36261, -1.78885, -2.21115, -1.68428, -2.21115, 3.89543, -16.5013, 0, -5.47113, 9.36656, -9.36656, -3.89543, 3.89543, -4.44089e-16, -1.68428, -2.21115, 2.21115, -3.23931, 7.13474, 9.36656}, {1.78885, -1.78885, 1.78885, -1.06606e-15, 3.15147, 1.39953e-15, -3.15147, 0, 0, -4.08784, 4.08784, 5.36656, -2.21115, -1.68428, -2.21115, 3.89543, -3.89543, -1.72992e-15, 1.68428, 2.21115, -2.21115, -11.0508, 11.0508, -7.15542, -1.68428, -14.817, 2.21115, 14.817, 1.68428, 2.21115}, {-3.13871, 2.39624, 3.14224, -1.3586, 1.03722, -0.984492, 1.05172, 0.985921, 1.29286, -0.739357, -1.22439, 0.739047, 5.8205, -4.44365, 6.44954, 0.379324, -2.50074, -0.381162, -6.8001, -4.17504, -5.47482, 2.5781, 7.39832, -2.57503, 2.59322, 0.231359, 0.303387, -0.386102, 0.294769, -2.51157}, {1.04624, -0.798747, -1.04741, 4.0758, -3.11166, 2.95348, 1.05172, 0.985921, 1.29286, -0.739357, -1.22439, 0.739047, -3.79884, 2.90022, 6.70123, -3.82756, -6.44442, -5.5526, -2.59322, -0.231359, -0.303387, -0.379324, 2.50074, 0.381162, 5.55064, 5.12894, -2.6528, -0.386102, 0.294769, -2.51157}, {1.04624, -0.798747, -1.04741, -1.3586, 1.03722, -0.984492, -3.15516, -2.95776, -3.87858, -0.739357, -1.22439, 0.739047, 0.386102, -0.294769, 2.51157, 5.81372, -6.64962, 3.55681, -6.77816, 2.96363, 3.88627, -0.379324, 2.50074, 0.381162, 2.59322, 0.231359, 0.303387, 2.57132, 5.19235, -5.46776}, {1.04624, -0.798747, -1.04741, -1.3586, 1.03722, -0.984492, 1.05172, 0.985921, 1.29286, 2.21807, 3.67318, -2.21714, 0.386102, -0.294769, 2.51157, 0.379324, -2.50074, -0.381162, -2.59322, -0.231359, -0.303387, -4.56427, 5.69573, 4.57082, 8.02762, -3.91752, 4.24135, -4.59298, -3.64891, -7.68301}, {3.49307, 0, -5.19009e-16, 0.460877, 0.572575, 1.44665, -0.183612, 1.44665, -1.44665, 0.88709, -2.01922, 1.97395e-12, -0.973962, -2.99804, -7.57474, -0.342719, -2.4959, 2.44027e-12, 2.40063, -7.57474, 7.57474, -3.20564, 10.5728, -1.03361e-11, -1.66618, 1.78815, -1.78815, -0.869547, 0.707741, 1.78815}, {-1.16436, 0, 2.63061e-17, -1.38263, -1.71772, -4.33994, -0.183612, 1.44665, -1.44665, 0.88709, -2.01922, 1.97018e-12, 5.52697, -0.707741, -1.78815, 0.391727, -8.28248, 5.78659, 1.66618, -1.78815, 1.78815, 0.342719, 2.4959, -2.43516e-12, -5.21454, 9.86504, -1.78815, -0.869547, 0.707741, 1.78815}, {-1.16436, 0, 1.0874e-16, 0.460877, 0.572575, 1.44665, 0.550835, -4.33994, 4.33994, 0.88709, -2.01922, 1.97254e-12, 0.869547, -0.707741, -1.78815, -2.18623, -4.7862, -5.78659, 6.3236, -1.78815, 1.78815, 0.342719, 2.4959, -2.43827e-12, -1.66618, 1.78815, -1.78815, -4.41791, 8.78463, 1.78815}, {-1.16436, 0, 2.47018e-16, 0.460877, 0.572575, 1.44665, -0.183612, 1.44665, -1.44665, -2.66127, 6.05767, -5.92185e-12, 0.869547, -0.707741, -1.78815, -0.342719, -2.4959, 2.44027e-12, 1.66618, -1.78815, 1.78815, 5.00014, 2.4959, -2.44081e-12, -3.50969, -0.502145, -7.57474, -0.135101, -5.07885, 7.57474}, {-4.817, 1.77636e-15, 1.9984e-15, -1.78885, 1.78885, -1.78885, -0.190167, 1.85702, 1.41407, 0.373353, -3.64588, 0.374783, 7.38185, -9.36656, 9.36656, 2.4462, -4.50655, 0.463257, -0.988987, -9.72349, -7.40418, -3.93962, 19.0901, -1.96239, 1.74966, 2.29541, 1.74789, -0.226431, 2.21115, -2.21115}, {1.60567, -4.44089e-16, -1.55431e-15, 5.36656, -5.36656, 5.36656, -0.190167, 1.85702, 1.41407, 0.373353, -3.64588, 0.374783, -6.19624, -2.21115, 2.21115, 3.20687, -11.9346, -5.19303, -1.74966, -2.29541, -1.74789, -2.4462, 4.50655, -0.463257, 0.256242, 16.8789, 0.248757, -0.226431, 2.21115, -2.21115}, {1.60567, 8.88178e-16, 0, -1.78885, 1.78885, -1.78885, 0.570501, -5.57107, -4.24221, 0.373353, -3.64588, 0.374783, 0.226431, -2.21115, 2.21115, 9.60162, -11.662, 7.61867, -8.17233, -2.29541, -1.74789, -2.4462, 4.50655, -0.463257, 1.74966, 2.29541, 1.74789, -1.71984, 16.7947, -3.71028}, {1.60567, -3.10862e-15, 1.11022e-16, -1.78885, 1.78885, -1.78885, -0.190167, 1.85702, 1.41407, -1.12006, 10.9376, -1.12435, 0.226431, -2.21115, 2.21115, 2.4462, -4.50655, 0.463257, -1.74966, -2.29541, -1.74789, -8.86888, 4.50655, -0.463257, 8.90507, -4.86001, 8.90331, 0.534237, -5.21694, -7.86743}, {-9.76996e-15, 1.33227e-14, -7.02938, 1.78885, -6.92972e-12, 0.00253498, -1.78885, 2.33948, -2.34566, 0, -2.33948, 0, -9.36656, 3.62896e-11, -2.90954, 3.9968e-15, -2.89175, 2.89626, 9.36656, -12.2497, 9.38578, -3.9968e-15, 12.2497, -2.89626, -2.21115, 2.89175, -0.00313341, 2.21115, -8.57092e-12, 2.8994}, {-1.9984e-15, 8.88178e-16, 2.34313, -5.36656, 2.07891e-11, -0.00760494, -1.78885, 2.33948, -2.34566, 0, -2.33948, 0, -2.21115, 8.55849e-12, -12.2719, 7.15542, -12.2497, 12.2789, 2.21115, -2.89175, 0.00313341, 2.66454e-15, 2.89175, -2.89626, -2.21115, 12.2497, -0.00313341, 2.21115, -8.56426e-12, 2.8994}, {4.21885e-15, -1.77636e-15, 2.34313, 1.78885, -6.9266e-12, 0.00253498, 5.36656, -7.01844, 7.03698, 0, -2.33948, 0, -2.21115, 8.56382e-12, -2.8994, -7.15542, -2.89175, 2.88612, 2.21115, -2.89175, -9.36937, -5.32907e-15, 2.89175, -2.89626, -2.21115, 2.89175, -0.00313341, 2.21115, 9.35791, 2.8994}, {0, 0, 2.34313, 1.78885, -6.92763e-12, 0.00253498, -1.78885, 2.33948, -2.34566, 0, 7.01844, 0, -2.21115, 8.56293e-12, -2.8994, 0, -2.89175, 2.89626, 2.21115, -2.89175, 0.00313341, 0, 2.89175, -12.2688, -9.36656, 2.89175, -0.0132733, 9.36656, -9.35791, 12.282}, {-2.1843e-11, 2.07647e-11, 5.36656, -2.34313, 0, 0, 0, 2.34313, 0, 2.34313, -2.34313, 1.78885, 12.2688, 8.55538e-12, 2.21115, 2.89626, -2.89626, 0, -8.99991e-12, -12.2688, 2.21115, -12.2688, 12.2688, -7.15542, 8.99991e-12, 2.89626, -2.21115, -2.89626, -8.55538e-12, -2.21115}, {7.27862e-12, -6.92069e-12, -1.78885, 7.02938, 0, 0, -1.36297e-15, 2.34313, -1.04056e-15, 2.34313, -2.34313, 1.78885, 2.89626, 3.62377e-11, 9.36656, 2.89626, -12.2688, 5.44843e-15, -8.99503e-12, -2.89626, 2.21115, -2.89626, 2.89626, -8.4211e-16, -9.3725, 12.2688, -9.36656, -2.89626, -8.55449e-12, -2.21115}, {7.2804e-12, -6.91935e-12, -1.78885, -2.34313, 0, 0, 0, -7.02938, 0, 2.34313, -2.34313, 1.78885, 2.89626, 8.55271e-12, 2.21115, 12.2688, -2.89626, 0, -3.81206e-11, -2.89626, 9.36656, -2.89626, 2.89626, 4.44089e-16, 8.99902e-12, 2.89626, -2.21115, -12.2688, 9.3725, -9.36656}, {7.27596e-12, -6.91802e-12, -1.78885, -2.34313, 0, 0, 0, 2.34313, 0, -7.02938, 7.02938, -5.36656, 2.89626, 8.55138e-12, 2.21115, 2.89626, -2.89626, 0, -8.99325e-12, -2.89626, 2.21115, -2.89626, 2.89626, 7.15542, 9.3725, 2.89626, -2.21115, -2.89626, -9.3725, -2.21115}, {6.33782, 3.11659, -8.32035, 1.25748, 1.89399, 2.48645, -0.601124, 0.601124, -3.34812, 1.45625, -1.45625, -1.91178, -3.97294, -8.63294, -16.4474, -0.811303, -3.08413, 1.06509, 5.75885, -1.86342, 14.1028, -5.01369, 8.90912, 6.58202, -3.35435, -0.541075, -0.71033, -1.05699, 1.05699, 6.50159}, {-2.11261, -1.03886, 2.77345, -3.77244, -5.68196, -7.45934, -0.601124, 0.601124, -3.34812, 1.45625, -1.45625, -1.91178, 9.50741, 3.09846, -17.5954, 1.59319, -5.48862, 14.4576, 3.35435, 0.541075, 0.71033, 0.811303, 3.08413, -1.06509, -9.17934, 5.28392, 6.93678, -1.05699, 1.05699, 6.50159}, {-2.11261, -1.03886, 2.77345, 1.25748, 1.89399, 2.48645, 1.80337, -1.80337, 10.0444, 1.45625, -1.45625, -1.91178, 1.05699, -1.05699, -6.50159, -5.84123, -10.6601, -8.8807, 11.8048, 4.69653, -10.3835, 0.811303, 3.08413, -1.06509, -3.35435, -0.541075, -0.71033, -6.88198, 6.88198, 14.1487}, {-2.11261, -1.03886, 2.77345, 1.25748, 1.89399, 2.48645, -0.601124, 0.601124, -3.34812, -4.36874, 4.36874, 5.73533, 1.05699, -1.05699, -6.50159, -0.811303, -3.08413, 1.06509, 3.35435, 0.541075, 0.71033, 9.26172, 7.23958, -12.1589, -8.38428, -8.11702, -10.6561, 1.34751, -1.34751, 19.8941}, {-4.24616, -5.57441, -4.24476, 0.373467, -3.64699, -2.77708, -1.78885, 1.78885, -1.78885, 0, 0, 3.15102, -3.70501, 16.7991, 12.7921, 1.74951, 2.29678, 5.64381, 7.61705, -11.6633, 7.61763, -1.74951, -2.29678, -18.2479, -0.461631, 4.50793, -0.462209, 2.21115, -2.21115, -1.68373}, {1.41539, 1.85814, 1.41492, -1.1204, 10.941, 8.33125, -1.78885, 1.78885, -1.78885, 1.39933e-15, -1.39933e-15, 3.15102, -7.87269, -5.2214, -3.97595, 8.90493, -4.85864, 12.7992, 0.461631, -4.50793, 0.462209, -1.74951, -2.29678, -5.64381, -0.461631, 4.50793, -13.0663, 2.21115, -2.21115, -1.68373}, {1.41539, 1.85814, 1.41492, 0.373467, -3.64699, -2.77708, 5.36656, -5.36656, 5.36656, 0, 0, 3.15102, -2.21115, 2.21115, 1.68373, 0.255645, 16.8847, 16.7521, -5.19992, -11.9405, -5.19747, -1.74951, -2.29678, -5.64381, -0.461631, 4.50793, -0.462209, 2.21115, -2.21115, -14.2878}, {1.41539, 1.85814, 1.41492, 0.373467, -3.64699, -2.77708, -1.78885, 1.78885, -1.78885, 0, 0, -9.45305, -2.21115, 2.21115, 1.68373, 1.74951, 2.29678, 5.64381, 0.461631, -4.50793, 0.462209, -7.41106, -9.72932, -11.3035, -1.9555, 19.0959, 10.6461, 9.36656, -9.36656, 5.47169}, {2.81917, 4.24616, 5.57441, -1.67083, -0.373467, 3.64699, 0.18745, 1.78885, -1.78885, 2.4231, 0, 0, 9.91012, 3.70501, -16.7991, 1.83355, -1.74951, -2.29678, 0.18006, -7.61705, 11.6633, -11.526, 1.74951, 2.29678, -0.929861, 0.461631, -4.50793, -3.22682, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, 5.01248, 1.1204, -10.941, 0.18745, 1.78885, -1.78885, 2.4231, -1.07607e-15, 1.07607e-15, 6.98571, 7.87269, 5.2214, 1.08375, -8.90493, 4.85864, 0.929861, -0.461631, 4.50793, -1.83355, 1.74951, 2.29678, -10.6223, 0.461631, -4.50793, -3.22682, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, -1.67083, -0.373467, 3.64699, -0.56235, -5.36656, 5.36656, 2.4231, 0, 0, 3.22682, 2.21115, -2.21115, 8.51686, -0.255645, -16.8847, 4.68875, 5.19992, 11.9405, -1.83355, 1.74951, 2.29678, -0.929861, 0.461631, -4.50793, -12.9192, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, -1.67083, -0.373467, 3.64699, 0.18745, 1.78885, -1.78885, -7.2693, 0, 0, 3.22682, 2.21115, -2.21115, 1.83355, -1.74951, -2.29678, 0.929861, -0.461631, 4.50793, 1.92534, 7.41106, 9.72932, 5.75345, 1.9555, -19.0959, -3.97662, -9.36656, 9.36656}, {-3.55271e-15, -7.99361e-15, -9.45441, -3.15147, 0, 0, 1.78937, -1.78885, -1.78885, 1.3621, 1.78885, -1.36261, 16.5013, -3.55271e-15, -3.89543, 1.68365, 2.21115, 2.21115, -9.36924, 9.36656, 5.47113, -7.13206, -9.36656, 3.23931, 2.21178, -2.21115, 1.68428, -3.89543, 3.55271e-15, 3.89543}, {-2.22045e-16, 2.88658e-15, 3.15147, 9.45441, 0, 0, 1.78937, -1.78885, -1.78885, 1.3621, 1.78885, -1.36261, 3.89543, -1.42109e-14, -16.5013, -5.47381, 9.36656, 9.36656, -2.21178, 2.21115, -1.68428, -1.68365, -2.21115, -2.21115, -3.23663, -9.36656, 7.13474, -3.89543, 3.55271e-15, 3.89543}, {2.22045e-16, 0, 3.15147, -3.15147, 0, 0, -5.3681, 5.36656, 5.36656, 1.3621, 1.78885, -1.36261, 3.89543, 0, -3.89543, 14.2895, 2.21115, 2.21115, -2.21178, 2.21115, -14.2902, -1.68365, -2.21115, -2.21115, 2.21178, -2.21115, 1.68428, -9.34384, -7.15542, 9.34589}, {8.88178e-16, 1.55431e-15, 3.15147, -3.15147, 0, 0, 1.78937, -1.78885, -1.78885, -4.08631, -5.36656, 4.08784, 3.89543, -2.22045e-15, -3.89543, 1.68365, 2.21115, 2.21115, -2.21178, 2.21115, -1.68428, -1.68365, -2.21115, -14.817, 14.8177, -2.21115, 1.68428, -11.0529, 7.15542, 11.0508}, {-5.22583, 5.22504, 3.98456, 2.34612, 2.92755e-15, 1.19114e-15, -2.54361, 0.198607, 1.93944, -1.54445, 1.54307, -0.611252, -14.4376, 2.15284, 1.64173, 0.244118, -0.245492, -2.39728, 11.1654, 1.11292, -8.51331, 5.93368, -5.9268, 4.84229, -0.990917, -1.90734, 0.755549, 5.05312, -2.15284, -1.64173}, {1.74194, -1.74168, -1.32819, -7.03835, -2.34918e-15, 4.45681e-15, -2.54361, 0.198607, 1.93944, -1.54445, 1.54307, -0.611252, -12.0209, 9.11956, 6.95448, 10.4186, -1.03992, -10.155, 0.990917, 1.90734, -0.755549, -0.244118, 0.245492, 2.39728, 5.18688, -8.07964, 3.20056, 5.05312, -2.15284, -1.64173}, {1.74194, -1.74168, -1.32819, 2.34612, 0, 0, 7.63084, -0.595821, -5.81832, -1.54445, 1.54307, -0.611252, -5.05312, 2.15284, 1.64173, -9.14035, -0.245492, -2.39728, -5.97686, 8.87406, 4.5572, -0.244118, 0.245492, 2.39728, -0.990917, -1.90734, 0.755549, 11.2309, -8.32513, 0.803277}, {1.74194, -1.74168, -1.32819, 2.34612, -8.98735e-16, 3.56012e-16, -2.54361, 0.198607, 1.93944, 4.63335, -4.62922, 1.83376, -5.05312, 2.15284, 1.64173, 0.244118, -0.245492, -2.39728, 0.990917, 1.90734, -0.755549, -7.21189, 7.21221, 7.71003, -10.3754, -1.90734, 0.755549, 15.2276, -2.94726, -9.39949}, {-9.45441, 1.33227e-14, -1.06581e-14, -1.78937, -1.78885, -1.78885, -1.3621, 1.78885, -1.36261, 0, 0, 3.15147, 5.47381, 9.36656, 9.36656, 3.89543, -5.32907e-15, 3.89543, 3.23663, -9.36656, 7.13474, -3.89543, 5.32907e-15, -16.5013, 2.21178, 2.21115, -1.68428, 1.68365, -2.21115, -2.21115}, {3.15147, 2.7318e-15, 0, 5.3681, 5.36656, 5.36656, -1.3621, 1.78885, -1.36261, 1.06566e-15, -1.39953e-15, 3.15147, -14.2895, 2.21115, 2.21115, 9.34384, -7.15542, 9.34589, -2.21178, -2.21115, 1.68428, -3.89543, -1.33227e-15, -3.89543, 2.21178, 2.21115, -14.2902, 1.68365, -2.21115, -2.21115}, {3.15147, 0, 2.22045e-15, -1.78937, -1.78885, -1.78885, 4.08631, -5.36656, 4.08784, 0, 0, 3.15147, -1.68365, 2.21115, 2.21115, 11.0529, 7.15542, 11.0508, -14.8177, -2.21115, 1.68428, -3.89543, 0, -3.89543, 2.21178, 2.21115, -1.68428, 1.68365, -2.21115, -14.817}, {3.15147, 0, 0, -1.78937, -1.78885, -1.78885, -1.3621, 1.78885, -1.36261, 0, 0, -9.45441, -1.68365, 2.21115, 2.21115, 3.89543, 0, 3.89543, -2.21178, -2.21115, 1.68428, -16.5013, 0, -3.89543, 9.36924, 9.36656, 5.47113, 7.13206, -9.36656, 3.23931}, {-7.03835, 0, -2.66454e-15, -2.34612, 2.34348, -1.78885, -1.03933e-11, 0.00114147, 1.78885, 0, -2.34462, 0, 9.38447, -12.2706, 9.36656, 2.89996, -2.89811, 1.33227e-15, -2.89996, -0.00597681, -9.36656, -2.89996, 12.2766, -1.33227e-15, 2.89996, 0.00141093, 2.21115, 1.28469e-11, 2.8967, -2.21115}, {2.34612, -3.9968e-15, 0, 7.03835, -7.03044, 5.36656, -1.03933e-11, 0.00114147, 1.78885, 0, -2.34462, 0, -9.38447, -2.8967, 2.21115, 2.89996, -2.90268, -7.15542, -2.89996, -0.00141093, -2.21115, -2.89996, 2.89811, 0, 2.89996, 9.37989, 2.21115, 1.28469e-11, 2.8967, -2.21115}, {2.34612, -1.77636e-15, 0, -2.34612, 2.34348, -1.78885, 3.11847e-11, -0.00342441, -5.36656, 0, -2.34462, 0, -1.28494e-11, -2.8967, 2.21115, 12.2844, -12.272, 7.15542, -12.2844, -0.00141093, -2.21115, -2.89996, 2.89811, 0, 2.89996, 0.00141093, 2.21115, 1.28488e-11, 12.2752, -2.21115}, {2.34612, 2.66454e-15, 0, -2.34612, 2.34348, -1.78885, -1.03918e-11, 0.00114147, 1.78885, 0, 7.03386, 0, -1.28455e-11, -2.8967, 2.21115, 2.89996, -2.89811, 0, -2.89996, -0.00141093, -2.21115, -12.2844, 2.89811, 0, 12.2844, -9.37251, 9.36656, 5.4412e-11, 2.89213, -9.36656}, {-4.44089e-16, 0, 5.41667, 2.01922, -1.97048e-12, 0.623753, -1.44665, -1.44665, 0.584061, -0.572575, 1.44665, 0.597742, -10.5728, 1.03177e-11, -1.03422, -0.707741, 1.78815, -1.49294, 7.57474, 7.57474, -0.826394, 2.99804, -7.57474, -0.898027, -1.78815, -1.78815, -1.50985, 2.4959, -2.43583e-12, -1.46079}, {-1.11022e-16, 2.22045e-16, -1.80556, -6.05767, 5.9153e-12, -1.87126, -1.44665, -1.44665, 0.584061, -0.572575, 1.44665, 0.597742, -2.4959, 2.43716e-12, 8.68301, 5.07885, 7.57474, -3.82918, 1.78815, 1.78815, 1.50985, 0.707741, -1.78815, 1.49294, 0.502145, -7.57474, -3.90082, 2.4959, -2.43716e-12, -1.46079}, {1.11022e-16, 0, -1.80556, 2.01922, -1.97103e-12, 0.623753, 4.33994, 4.33994, -1.75218, -0.572575, 1.44665, 0.597742, -2.4959, 2.43627e-12, 1.46079, -8.78463, 1.78815, -3.98795, 1.78815, 1.78815, 8.73207, 0.707741, -1.78815, 1.49294, -1.78815, -1.78815, -1.50985, 4.7862, -5.78659, -3.85176}, {-1.11022e-16, 2.22045e-16, -1.80556, 2.01922, -1.97085e-12, 0.623753, -1.44665, -1.44665, 0.584061, 1.71772, -4.33994, -1.79323, -2.4959, 2.43583e-12, 1.46079, -0.707741, 1.78815, -1.49294, 1.78815, 1.78815, 1.50985, 0.707741, -1.78815, 8.71516, -9.86504, -1.78815, -4.00486, 8.28248, 5.78659, -3.79703}, {8.56414, 1.25642, -1.25642, 2.63957, -0.971716, -0.633952, 1.54777, 0.0578944, 1.54777, -1.33263, 1.33263, -1.33263, -10.2923, 5.60564, 2.80174, -5.17584, 1.12955, -1.12955, -4.57563, 0.214536, -8.62192, 10.5064, -6.46006, 6.46006, -1.61547, -0.446113, 2.43083, -0.265934, -1.71878, -0.265934}, {-2.85471, -0.418807, 0.418807, -7.91871, 2.91515, 1.90186, 1.54777, 0.0578944, 1.54777, -1.33263, 1.33263, -1.33263, 11.6848, 3.39401, -1.4093, -11.3669, 0.897968, -7.32064, 1.61547, 0.446113, -2.43083, 5.17584, -1.12955, 1.12955, 3.71505, -5.77663, 7.76134, -0.265934, -1.71878, -0.265934}, {-2.85471, -0.418807, 0.418807, 2.63957, -0.971716, -0.633952, -4.64332, -0.173683, -4.64332, -1.33263, 1.33263, -1.33263, 0.265934, 1.71878, 0.265934, -15.7341, 5.01641, 1.40626, 13.0343, 2.12134, -4.10606, 5.17584, -1.12955, 1.12955, -1.61547, -0.446113, 2.43083, 5.06458, -7.0493, 5.06458}, {-2.85471, -0.418807, 0.418807, 2.63957, -0.971716, -0.633952, 1.54777, 0.0578944, 1.54777, 3.99789, -3.99789, 3.99789, 0.265934, 1.71878, 0.265934, -5.17584, 1.12955, -1.12955, 1.61547, 0.446113, -2.43083, 16.5947, 0.545684, -0.545684, -12.1737, 3.44075, 4.96664, -6.45703, -1.95036, -6.45703}, {-0.339403, 0.339403, -5.15641, -0.164984, -1.44068, -0.164984, 1.07377, 0.531894, -0.531894, -1.02192, 1.02192, -1.02192, 0.724024, 7.68336, -1.26069, -1.12333, 1.12333, 0.861388, -5.7622, -2.64519, 0.660475, 5.21103, -5.21103, 3.22631, 1.4671, 0.517615, 1.4671, -0.0640894, -1.92063, 1.92063}, {0.113134, -0.113134, 1.7188, 0.494951, 4.32205, 0.494951, 1.07377, 0.531894, -0.531894, -1.02192, 1.02192, -1.02192, -0.388448, 2.37316, -8.79583, -5.41842, -1.00425, 2.98896, -1.4671, -0.517615, -1.4671, 1.12333, -1.12333, -0.861388, 5.5548, -3.57008, 5.5548, -0.0640894, -1.92063, 1.92063}, {0.113134, -0.113134, 1.7188, -0.164984, -1.44068, -0.164984, -3.22132, -1.59568, 1.59568, -1.02192, 1.02192, -1.02192, 0.0640894, 1.92063, -1.92063, -0.463392, 6.88606, 1.52132, -1.91964, -0.0650781, -8.34231, 1.12333, -1.12333, -0.861388, 1.4671, 0.517615, 1.4671, 4.02361, -6.00832, 6.00832}, {0.113134, -0.113134, 1.7188, -0.164984, -1.44068, -0.164984, 1.07377, 0.531894, -0.531894, 3.06577, -3.06577, 3.06577, 0.0640894, 1.92063, -1.92063, -1.12333, 1.12333, 0.861388, -1.4671, -0.517615, -1.4671, 0.67079, -0.67079, -7.7366, 2.12703, 6.28035, 2.12703, -4.35919, -4.0482, 4.0482}, {-1.94182, 3.40923, 1.10711, 0.155006, 1.62575, -1.6184, 0.710689, -0.184627, 1.53026, -1.51297, -0.304717, 0.45717, -1.6117, -7.10787, 8.93018, -1.07006, -1.78133, 0.108939, -4.52129, 2.3714, -7.5564, 7.12193, 3.0002, -1.93762, 1.67853, -1.63289, 1.43535, 0.991672, 0.604862, -2.4566}, {0.647273, -1.13641, -0.369036, -0.465018, -4.87726, 4.85519, 0.710689, -0.184627, 1.53026, -1.51297, -0.304717, 0.45717, -3.58076, 3.94077, 3.93275, -3.91281, -1.04282, -6.01211, -1.67853, 1.63289, -1.43535, 1.07006, 1.78133, -0.108939, 7.73041, -0.414023, -0.393324, 0.991672, 0.604862, -2.4566}, {0.647273, -1.13641, -0.369036, 0.155006, 1.62575, -1.6184, -2.13207, 0.553881, -4.59079, -1.51297, -0.304717, 0.45717, -0.991672, -0.604862, 2.4566, -1.69008, -8.28434, 6.58252, -4.26763, 6.17852, 0.0407896, 1.07006, 1.78133, -0.108939, 1.67853, -1.63289, 1.43535, 7.04355, 1.82373, -4.28528}, {0.647273, -1.13641, -0.369036, 0.155006, 1.62575, -1.6184, 0.710689, -0.184627, 1.53026, 4.53891, 0.91415, -1.37151, -0.991672, -0.604862, 2.4566, -1.07006, -1.78133, 0.108939, -1.67853, 1.63289, -1.43535, -1.51903, 6.32696, 1.36721, 1.05851, -8.1359, 7.90894, -1.85108, 1.34337, -8.57765}, {-5.53886e-11, 0.00342441, 5.36656, 2.34612, 1.36758e-15, 3.12566e-15, 0, -2.34462, 0, -2.34612, 2.34576, 1.78885, -12.2844, 0.00141093, 2.21115, -2.89996, 2.89811, -3.86352e-15, -2.28213e-11, 12.278, 2.21115, 12.2844, -12.2812, -7.15542, 2.28213e-11, -2.89952, -2.21115, 2.89996, -0.00141093, -2.21115}, {1.22999e-11, -0.00114147, -1.78885, -7.03835, -8.19548e-15, -3.12566e-15, 0, -2.34462, 0, -2.34612, 2.34576, 1.78885, -2.89996, 0.00597681, 9.36656, -2.89996, 12.2766, -1.28784e-15, -1.52034e-11, 2.89952, 2.21115, 2.89996, -2.89811, 1.73193e-15, 9.38447, -12.2826, -9.36656, 2.89996, -0.00141093, -2.21115}, {1.22964e-11, -0.00114147, -1.78885, 2.34612, 0, 0, 0, 7.03386, 0, -2.34612, 2.34576, 1.78885, -2.89996, 0.00141093, 2.21115, -12.2844, 2.89811, 0, -6.43876e-11, 2.90409, 9.36656, 2.89996, -2.89811, 4.44089e-16, 1.51994e-11, -2.89952, -2.21115, 12.2844, -9.38446, -9.36656}, {1.22991e-11, -0.00114147, -1.78885, 2.34612, -1.36625e-15, -1.04189e-15, 0, -2.34462, 0, 7.03835, -7.03729, -5.36656, -2.89996, 0.00141093, 2.21115, -2.89996, 2.89811, 1.28784e-15, -1.52025e-11, 2.89952, 2.21115, 2.89996, -2.89354, 7.15542, -9.38447, -2.89952, -2.21115, 2.89996, 9.37707, -2.21115}, {-4.82547e-12, 4.93775, 1.89782, -1.17597e-12, 1.20344, -0.85762, 1.44665, -0.256711, 0.444168, -1.44665, 0.69919, 1.04606, 4.16911e-12, -4.26682, 5.2725, -1.78815, -1.17022, 0.511055, -7.57474, 3.37862, -1.54375, 7.57474, -1.62654, -4.69529, 1.78815, -2.35178, -0.232925, 5.34683e-13, -0.546933, -1.84202}, {1.60938e-12, -1.64592, -0.632608, 3.52988e-12, -3.61031, 2.57286, 1.44665, -0.256711, 0.444168, -1.44665, 0.69919, 1.04606, -6.97309e-12, 7.13059, 4.37245, -7.57474, -0.143371, -1.26562, -1.78815, 2.35178, 0.232925, 1.78815, 1.17022, -0.511055, 7.57474, -5.14853, -4.41716, 5.34905e-13, -0.546933, -1.84202}, {1.60738e-12, -1.64592, -0.632608, -1.17532e-12, 1.20344, -0.85762, -4.33994, 0.770134, -1.3325, -1.44665, 0.69919, 1.04606, -5.34239e-13, 0.546933, 1.84202, -1.78815, -5.98397, 3.94153, -1.78815, 8.93544, 2.76336, 1.78815, 1.17022, -0.511055, 1.78815, -2.35178, -0.232925, 5.78659, -3.34369, -6.02626}, {1.60805e-12, -1.64592, -0.632608, -1.17575e-12, 1.20344, -0.85762, 1.44665, -0.256711, 0.444168, 4.33994, -2.09757, -3.13818, -5.34461e-13, 0.546933, 1.84202, -1.78815, -1.17022, 0.511055, -1.78815, 2.35178, 0.232925, 1.78815, 7.75388, 2.01938, 1.78815, -7.16552, 3.19755, -5.78659, 0.479913, -3.61869}, {3.67809, 0.0745323, 3.75892, 1.30596, 0.948366, 0.152693, 0.0437324, -1.35943, 0.016287, -0.123659, 0.435911, 1.08399, -5.32262, -4.935, 0.74925, -1.66831, 0.508107, -0.20887, 1.28647, 7.14879, 1.46348, 2.16294, -2.25175, -4.1271, -1.4614, -1.71106, -1.52863, 0.0987948, 1.14154, -1.36002}, {-1.22603, -0.0248441, -1.25297, -3.91787, -2.8451, -0.458078, 0.0437324, -1.35943, 0.016287, -0.123659, 0.435911, 1.08399, 4.80532, -1.04216, 6.37191, -1.84323, 5.94584, -0.274019, 1.4614, 1.71106, 1.52863, 1.66831, -0.508107, 0.20887, -0.966762, -3.4547, -5.8646, 0.0987948, 1.14154, -1.36002}, {-1.22603, -0.0248441, -1.25297, 1.30596, 0.948366, 0.152693, -0.131197, 4.0783, -0.0488611, -0.123659, 0.435911, 1.08399, -0.0987948, -1.14154, 1.36002, -6.89213, -3.28536, -0.819641, 6.36551, 1.81044, 6.54052, 1.66831, -0.508107, 0.20887, -1.4614, -1.71106, -1.52863, 0.593431, -0.602108, -5.69599}, {-1.22603, -0.0248441, -1.25297, 1.30596, 0.948366, 0.152693, 0.0437324, -1.35943, 0.016287, 0.370977, -1.30773, -3.25198, -0.0987948, -1.14154, 1.36002, -1.66831, 0.508107, -0.20887, 1.4614, 1.71106, 1.52863, 6.57242, -0.40873, 5.22076, -6.68522, -5.50453, -2.1394, -0.0761347, 6.57927, -1.42517}, {5.37088, 5.36291, 5.36619, 1.99086e-15, 6.84977e-16, 1.60567, 0.376399, 3.64451, 0.373213, 1.41389, -1.85687, -0.190152, 2.21292, 2.20964, -6.1964, -0.465254, -4.50486, -2.44603, 0.242074, -16.8733, 0.256821, -5.19032, 11.9323, 3.20664, -1.74767, 2.29522, -1.74967, -2.21292, -2.20964, -0.226277}, {-1.79029, -1.78764, -1.78873, -1.24068e-15, 6.57876e-15, -4.817, 0.376399, 3.64451, 0.373213, 1.41389, -1.85687, -0.190152, 9.37409, 9.36019, 7.3812, -1.97085, -19.0829, -3.93889, 1.74767, -2.29522, 1.74967, 0.465254, 4.50486, 2.44603, -7.40324, 9.72271, -0.989068, -2.21292, -2.20964, -0.226277}, {-1.79029, -1.78764, -1.78873, 0, 0, 1.60567, -1.1292, -10.9335, -1.11964, 1.41389, -1.85687, -0.190152, 2.21292, 2.20964, 0.226277, -0.465254, -4.50486, -8.8687, 8.90884, 4.85533, 8.90459, 0.465254, 4.50486, 2.44603, -1.74767, 2.29522, -1.74967, -7.8685, 5.21784, 0.53433}, {-1.79029, -1.78764, -1.78873, -5.63596e-16, 7.40172e-16, 1.60567, 0.376399, 3.64451, 0.373213, -4.24168, 5.57061, 0.570455, 2.21292, 2.20964, 0.226277, -0.465254, -4.50486, -2.44603, 1.74767, -2.29522, 1.74967, 7.62642, 11.6554, 9.60095, -1.74767, 2.29522, -8.17235, -3.71852, -16.7877, -1.71913}, {1.24345e-14, 1.33227e-14, -9.45441, 0, -3.15057, 0, 1.78885, 1.78834, -1.78885, -1.78885, 1.36222, -1.36261, 4.88498e-15, 16.4966, -3.89543, -2.21115, 1.6838, 2.21115, -9.36656, -9.36389, 5.47113, 9.36656, -7.1327, 3.23931, 2.21115, 2.21051, 1.68428, -4.88498e-15, -3.89432, 3.89543}, {1.11022e-15, 3.77476e-15, 3.15147, 0, 9.4517, 0, 1.78885, 1.78834, -1.78885, -1.78885, 1.36222, -1.36261, -5.32907e-15, 3.89432, -16.5013, -9.36656, -5.46957, 9.36656, -2.21115, -2.21051, -1.68428, 2.21115, -1.6838, -2.21115, 9.36656, -3.23838, 7.13474, 1.33227e-15, -3.89432, 3.89543}, {-1.11022e-15, -8.65974e-15, 3.15147, 0, -3.15057, 0, -5.36656, -5.36503, 5.36656, -1.78885, 1.36222, -1.36261, 1.33227e-15, 3.89432, -3.89543, -2.21115, 14.2861, 2.21115, -2.21115, -2.21051, -14.2902, 2.21115, -1.6838, -2.21115, 2.21115, 2.21051, 1.68428, 7.15542, -9.34321, 9.34589}, {0, 2.22045e-16, 3.15147, 0, -3.15057, 0, 1.78885, 1.78834, -1.78885, 5.36656, -4.08667, 4.08784, 0, 3.89432, -3.89543, -2.21115, 1.6838, 2.21115, -2.21115, -2.21051, -1.68428, 2.21115, -1.6838, -14.817, 2.21115, 14.8128, 1.68428, -7.15542, -11.0477, 11.0508}, {-5.91616e-12, 6.05767, -4.31695, 0, 0, -1.80556, 1.44665, 0.572575, -0.146817, -1.44665, 1.44665, 0.51339, -2.43761e-12, 2.4959, 7.67533, -1.78815, -0.707741, 2.41326, -7.57474, -0.502145, -1.00994, 7.57474, -5.07885, -4.46683, 1.78815, -1.78815, 1.5972, 2.43761e-12, -2.4959, -0.45311}, {1.97087e-12, -2.01922, 1.43898, 0, 0, 5.41667, 1.44665, 0.572575, -0.146817, -1.44665, 1.44665, 0.51339, -1.03197e-11, 10.5728, -5.30282, -7.57474, -2.99804, 3.00053, -1.78815, 1.78815, -1.5972, 1.78815, 0.707741, -2.41326, 7.57474, -7.57474, -0.456356, 2.43605e-12, -2.4959, -0.45311}, {1.97242e-12, -2.01922, 1.43898, 0, 0, -1.80556, -4.33994, -1.71772, 0.44045, -1.44665, 1.44665, 0.51339, -2.43783e-12, 2.4959, 0.45311, -1.78815, -0.707741, 9.63549, -1.78815, 9.86504, -7.35313, 1.78815, 0.707741, -2.41326, 1.78815, -1.78815, 1.5972, 5.78659, -8.28248, -2.50667}, {1.97198e-12, -2.01922, 1.43898, 0, 0, -1.80556, 1.44665, 0.572575, -0.146817, 4.33994, -4.33994, -1.54017, -2.43761e-12, 2.4959, 0.45311, -1.78815, -0.707741, 2.41326, -1.78815, 1.78815, -1.5972, 1.78815, 8.78463, -8.16919, 1.78815, -1.78815, 8.81943, -5.78659, -4.7862, 0.134156}, {-4.33994, -4.33994, 1.75218, -1.97211e-12, -2.01922, 1.43898, 0, 0, -1.80556, -1.44665, 0.572575, 0.950635, -1.78815, 8.78463, -6.81267, 2.43766e-12, 2.4959, 0.45311, -1.78815, -1.78815, 10.176, 5.78659, -4.7862, -4.25565, 1.78815, 1.78815, -2.95373, 1.78815, -0.707741, 1.05674}, {1.44665, 1.44665, -0.584061, 5.92068e-12, 6.05767, -4.31695, 0, 0, -1.80556, -1.44665, 0.572575, 0.950635, -7.57474, -5.07885, 1.2795, 2.43945e-12, 2.4959, 7.67533, -1.78815, -1.78815, 2.95373, -2.43981e-12, -2.4959, -0.45311, 7.57474, -0.502145, -6.75627, 1.78815, -0.707741, 1.05674}, {1.44665, 1.44665, -0.584061, -1.97247e-12, -2.01922, 1.43898, 0, 0, 5.41667, -1.44665, 0.572575, 0.950635, -1.78815, 0.707741, -1.05674, 1.0328e-11, 10.5728, -5.30282, -7.57474, -7.57474, 5.28997, -2.43847e-12, -2.4959, -0.45311, 1.78815, 1.78815, -2.95373, 7.57474, -2.99804, -2.7458}, {1.44665, 1.44665, -0.584061, -1.97283e-12, -2.01922, 1.43898, 0, 0, -1.80556, 4.33994, -1.71772, -2.8519, -1.78815, 0.707741, -1.05674, 2.43856e-12, 2.4959, 0.45311, -1.78815, -1.78815, 2.95373, -5.78659, -8.28248, 1.88313, 1.78815, 9.86504, -8.70966, 1.78815, -0.707741, 8.27896}, {1.71772, 0.356094, 4.33994, 2.01922, -0.477594, 1.7444e-12, -1.44665, -0.786183, 1.44665, 0, 1.38248, 0, -9.86504, 2.64743, 1.78815, -0.707741, 1.56212, -1.78815, 8.28248, 4.26323, -5.78659, 0.707741, -7.09202, 1.78815, -2.4959, -1.11849, -2.1562e-12, 1.78815, -0.737058, -1.78815}, {-0.572575, -0.118698, -1.44665, -6.05767, 1.43278, -5.23264e-12, -1.44665, -0.786183, 1.44665, 4.96495e-16, 1.38248, -4.96495e-16, 0.502145, 1.21185, 7.57474, 5.07885, 4.70685, -7.57474, 2.4959, 1.11849, 2.15571e-12, 0.707741, -1.56212, 1.78815, -2.4959, -6.6484, -2.15337e-12, 1.78815, -0.737058, -1.78815}, {-0.572575, -0.118698, -1.44665, 2.01922, -0.477594, 1.7444e-12, 4.33994, 2.35855, -4.33994, 0, 1.38248, 0, -1.78815, 0.737058, 1.78815, -8.78463, 3.47249, -1.78815, 4.7862, 1.59329, 5.78659, 0.707741, -1.56212, 1.78815, -2.4959, -1.11849, -2.1562e-12, 1.78815, -6.26696, -1.78815}, {-0.572575, -0.118698, -1.44665, 2.01922, -0.477594, 1.74332e-12, -1.44665, -0.786183, 1.44665, 0, -4.14743, 0, -1.78815, 0.737058, 1.78815, -0.707741, 1.56212, -1.78815, 2.4959, 1.11849, 2.15522e-12, 2.99804, -1.08732, 7.57474, -10.5728, 0.791882, -9.12813e-12, 7.57474, 2.40768, -7.57474}, {-3.82778, -1.72626, -1.72406, -1.39459, 0.310766, 0.31037, -0.00684175, -1.71025, 0.635056, 0.125505, 0.824062, -1.52011, 5.72503, -2.33845, -2.33547, 1.73226, 1.72986, -1.16861, -1.54131, 8.24373, -4.03555, -2.23428, -5.02611, 7.24907, 1.56867, -1.40273, 1.49533, -0.146676, 1.09539, 1.09399}, {1.27593, 0.575422, 0.574688, 4.18377, -0.932299, -0.93111, -0.00684175, -1.71025, 0.635056, 0.125505, 0.824062, -1.52011, -4.95703, -3.39708, -3.39274, 1.75963, 8.57086, -3.70884, -1.56867, 1.40273, -1.49533, -1.73226, -1.72986, 1.16861, 1.06665, -4.69898, 7.57578, -0.146676, 1.09539, 1.09399}, {1.27593, 0.575422, 0.574688, -1.39459, 0.310766, 0.31037, 0.0205252, 5.13075, -1.90517, 0.125505, 0.824062, -1.52011, 0.146676, -1.09539, -1.09399, 7.31062, 0.486792, -2.41009, -6.67238, -0.898961, -3.79408, -1.73226, -1.72986, 1.16861, 1.56867, -1.40273, 1.49533, -0.648696, -2.20086, 7.17445}, {1.27593, 0.575422, 0.574688, -1.39459, 0.310766, 0.31037, -0.00684175, -1.71025, 0.635056, -0.376515, -2.47219, 4.56034, 0.146676, -1.09539, -1.09399, 1.73226, 1.72986, -1.16861, -1.56867, 1.40273, -1.49533, -6.83597, -4.03154, -1.13014, 7.14703, -2.64579, 0.253846, -0.119309, 7.93639, -1.44623}, {4.08784, 5.36656, -4.08784, 3.15147, -2.79907e-15, -3.33475e-16, -1.78885, 1.78885, 1.78885, 0, 0, -3.15147, -14.817, 2.21115, -1.68428, -1.68428, -2.21115, -2.21115, 11.0508, -7.15542, -11.0508, 1.68428, 2.21115, 14.817, -3.89543, 3.45984e-15, 3.89543, 2.21115, -2.21115, 1.68428}, {-1.36261, -1.78885, 1.36261, -9.45441, 4.1986e-15, 1.15954e-14, -1.78885, 1.78885, 1.78885, 0, 0, -3.15147, 3.23931, 9.36656, -7.13474, 5.47113, -9.36656, -9.36656, 3.89543, -1.28583e-15, -3.89543, 1.68428, 2.21115, 2.21115, -3.89543, 1.72992e-15, 16.5013, 2.21115, -2.21115, 1.68428}, {-1.36261, -1.78885, 1.36261, 3.15147, 0, 0, 5.36656, -5.36656, -5.36656, 0, 0, -3.15147, -2.21115, 2.21115, -1.68428, -14.2902, -2.21115, -2.21115, 9.34589, 7.15542, -9.34589, 1.68428, 2.21115, 2.21115, -3.89543, 0, 3.89543, 2.21115, -2.21115, 14.2902}, {-1.36261, -1.78885, 1.36261, 3.15147, 0, 2.46559e-15, -1.78885, 1.78885, 1.78885, 0, 0, 9.45441, -2.21115, 2.21115, -1.68428, -1.68428, -2.21115, -2.21115, 3.89543, 4.44089e-16, -3.89543, 7.13474, 9.36656, -3.23931, -16.5013, 0, 3.89543, 9.36656, -9.36656, -5.47113}, {1.73341, -4.36745, 1.08767, 0, 0, 1.17684, 2.01922, 1.68048e-12, -0.615915, -1.44142, -1.45582, -0.198371, 0.714206, -1.79949, -5.71389, -2.4959, -2.07719e-12, -0.693346, -9.85858, -1.79949, 3.67312, 8.26156, 5.82327, 1.48683, 1.78169, 1.79949, -1.20946, -0.714206, 1.79949, 1.00651}, {-0.577805, 1.45582, -0.362558, 2.02028e-15, 3.82793e-15, -3.53053, 2.01922, 1.68206e-12, -0.615915, -1.44142, -1.45582, -0.198371, 3.02542, -7.62276, 0.443719, -10.5728, -8.8058e-12, 1.77031, -1.78169, -1.79949, 1.20946, 2.4959, 2.0772e-12, 0.693346, 7.54736, 7.62276, -0.415974, -0.714206, 1.79949, 1.00651}, {-0.577805, 1.45582, -0.362558, 0, 0, 1.17684, -6.05767, -5.04417e-12, 1.84774, -1.44142, -1.45582, -0.198371, 0.714206, -1.79949, -1.00651, -2.4959, -2.07831e-12, -5.40072, 0.529529, -7.62276, 2.65969, 2.4959, 2.07795e-12, 0.693346, 1.78169, 1.79949, -1.20946, 5.05146, 7.62276, 1.8}, {-0.577805, 1.45582, -0.362558, 0, 0, 1.17684, 2.01922, 1.68121e-12, -0.615915, 4.32425, 4.36745, 0.595113, 0.714206, -1.79949, -1.00651, -2.4959, -2.07809e-12, -0.693346, -1.78169, -1.79949, 1.20946, 4.80711, -5.82327, 2.14358, 1.78169, 1.79949, -5.91683, -8.79109, 1.79949, 3.47017}, {-4.91714, 2.88338, 1.92681, -0.336451, -0.850591, 0.85104, -1.79955, 0.555362, -0.55742, 0.496952, 1.25636, 0.348649, -0.264293, 5.64177, -3.66222, 2.64024, 0.364922, -0.362934, 7.39658, -1.7199, 3.71258, -4.62805, -5.39034, -1.03166, -0.198389, -0.501553, -1.4829, 1.6101, -2.23941, 0.258056}, {1.63905, -0.961127, -0.642269, 1.00935, 2.55177, -2.55312, -1.79955, 0.555362, -0.55742, 0.496952, 1.25636, 0.348649, -8.16629, 6.08391, 2.31102, 9.83843, -1.85653, 1.86675, 0.198389, 0.501553, 1.4829, -2.64024, -0.364922, 0.362934, -2.1862, -5.52697, -2.87749, 1.6101, -2.23941, 0.258056}, {1.63905, -0.961127, -0.642269, -0.336451, -0.850591, 0.85104, 5.39864, -1.66609, 1.67226, 0.496952, 1.25636, 0.348649, -1.6101, 2.23941, -0.258056, 3.98605, 3.76729, -3.76709, -6.3578, 4.34606, 4.05197, -2.64024, -0.364922, 0.362934, -0.198389, -0.501553, -1.4829, -0.377708, -7.26483, -1.13654}, {1.63905, -0.961127, -0.642269, -0.336451, -0.850591, 0.85104, -1.79955, 0.555362, -0.55742, -1.49085, -3.76907, -1.04595, -1.6101, 2.23941, -0.258056, 2.64024, 0.364922, -0.362934, 0.198389, 0.501553, 1.4829, -9.19643, 3.47958, 2.93201, 1.14742, 2.90081, -4.88706, 8.80829, -4.46086, 2.48774}, {10.941, -4.49288, 1.1204, 1.85814, 0.691786, -1.41539, 0, -2.17235, 0, 1.78885, -0.0170635, 1.78885, -5.2214, -5.47341, 7.87269, -2.29678, 1.83008, 1.74951, 4.50793, 9.5234, 0.461631, -4.85864, -1.76182, -8.90493, -4.50793, -0.834003, -0.461631, -2.21115, 2.70626, -2.21115}, {-3.64699, 1.49763, -0.373467, -5.57441, -2.07536, 4.24616, 0, -2.17235, 0, 1.78885, -0.0170635, 1.78885, 16.7991, -8.69677, 3.70501, -2.29678, 10.5195, 1.74951, 4.50793, 0.834003, 0.461631, 2.29678, -1.83008, -1.74951, -11.6633, -0.76575, -7.61705, -2.21115, 2.70626, -2.21115}, {-3.64699, 1.49763, -0.373467, 1.85814, 0.691786, -1.41539, 0, 6.51705, 0, 1.78885, -0.0170635, 1.78885, 2.21115, -2.70626, 2.21115, -9.72932, -0.937068, 7.41106, 19.0959, -5.15651, 1.9555, 2.29678, -1.83008, -1.74951, -4.50793, -0.834003, -0.461631, -9.36656, 2.77452, -9.36656}, {-3.64699, 1.49763, -0.373467, 1.85814, 0.691786, -1.41539, 0, -2.17235, 0, -5.36656, 0.0511904, -5.36656, 2.21115, -2.70626, 2.21115, -2.29678, 1.83008, 1.74951, 4.50793, 0.834003, 0.461631, 16.8847, -7.82059, -0.255645, -11.9405, -3.60115, 5.19992, -2.21115, 11.3957, -2.21115}, {-4.62937, 1.83228, -4.62937, -1.60567, 0, 0, -0.136178, -1.32981, -1.74185, 0.198723, 1.94057, 0.198723, 6.49998, 0.754941, -1.90741, 2.15304, 1.64373, 2.15304, -1.19437, 7.71791, 7.21302, -2.94793, -9.40601, -2.94793, 1.73908, -2.39867, -0.245635, -0.0773091, -0.754941, 1.90741}, {1.54312, -0.61076, 1.54312, 4.817, 0, 0, -0.136178, -1.32981, -1.74185, 0.198723, 1.94057, 0.198723, -6.09519, 3.19798, -8.0799, 2.69775, 6.96297, 9.12042, -1.73908, 2.39867, 0.245635, -2.15304, -1.64373, -2.15304, 0.94419, -10.1609, -1.04052, -0.0773091, -0.754941, 1.90741}, {1.54312, -0.61076, 1.54312, -1.60567, 0, 0, 0.408534, 3.98943, 5.22554, 0.198723, 1.94057, 0.198723, 0.0773091, 0.754941, -1.90741, 8.57571, 1.64373, 2.15304, -7.91157, 4.84171, -5.92686, -2.15304, -1.64373, -2.15304, 1.73908, -2.39867, -0.245635, -0.872199, -8.51722, 1.11252}, {1.54312, -0.61076, 1.54312, -1.60567, 0, 0, -0.136178, -1.32981, -1.74185, -0.596168, -5.82171, -0.596168, 0.0773091, 0.754941, -1.90741, 2.15304, 1.64373, 2.15304, -1.73908, 2.39867, 0.245635, -8.32553, 0.799305, -8.32553, 8.16175, -2.39867, -0.245635, 0.467403, 4.5643, 8.87479}, {-5.36656, 4.08784, -4.08784, 0, 3.15147, 0, -1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -2.21115, -14.817, -1.68428, 2.21115, -1.68428, -2.21115, 7.15542, 11.0508, -11.0508, -2.21115, 1.68428, 14.817, 0, -3.89543, 3.89543, 2.21115, 2.21115, 1.68428}, {1.78885, -1.36261, 1.36261, -4.1986e-15, -9.45441, 1.15954e-14, -1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -9.36656, 3.23931, -7.13474, 9.36656, 5.47113, -9.36656, 1.28583e-15, 3.89543, -3.89543, -2.21115, 1.68428, 2.21115, -1.72992e-15, -3.89543, 16.5013, 2.21115, 2.21115, 1.68428}, {1.78885, -1.36261, 1.36261, 0, 3.15147, -9.86237e-15, 5.36656, 5.36656, -5.36656, 0, 0, -3.15147, -2.21115, -2.21115, -1.68428, 2.21115, -14.2902, -2.21115, -7.15542, 9.34589, -9.34589, -2.21115, 1.68428, 2.21115, 0, -3.89543, 3.89543, 2.21115, 2.21115, 14.2902}, {1.78885, -1.36261, 1.36261, 0, 3.15147, 0, -1.78885, -1.78885, 1.78885, 0, 0, 9.45441, -2.21115, -2.21115, -1.68428, 2.21115, -1.68428, -2.21115, -4.44089e-16, 3.89543, -3.89543, -9.36656, 7.13474, -3.23931, 0, -16.5013, 3.89543, 9.36656, 9.36656, -5.47113}, {-14.3647, 4.91028, -4.91028, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.63676, 1.63676, -1.63676, 2.33207, -6.2275, -10.2738, 3.89543, -3.193e-13, -3.19522e-13, 2.33207, 10.2738, 6.2275, 2.65162, -6.54704, 6.54704, 3.97086, -3.97086, 0.0754334, 3.97086, -0.0754334, 3.97086}, {4.78823, -1.63676, 1.63676, 4.7272, -4.7272, -4.7272, -1.57573, -1.57573, -1.57573, -1.63676, 1.63676, -1.63676, -23.1238, 6.62248, -10.5179, 10.1984, 6.30294, 6.30294, -3.97086, 3.97086, -0.0754334, -3.89543, 3.18818e-13, 3.18006e-13, 10.5179, -10.5179, 6.62248, 3.97086, -0.0754334, 3.97086}, {4.78823, -1.63676, 1.63676, -1.57573, 1.57573, 1.57573, 4.7272, 4.7272, 4.7272, -1.63676, 1.63676, -1.63676, -3.97086, 0.0754334, -3.97086, 10.1984, -6.30294, -6.30294, -23.1238, 10.5179, -6.62248, -3.89543, 3.21483e-13, 3.20892e-13, 3.97086, -3.97086, 0.0754334, 10.5179, -6.62248, 10.5179}, {4.78823, -1.63676, 1.63676, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 4.91028, -4.91028, 4.91028, -3.97086, 0.0754334, -3.97086, 3.89543, -3.19522e-13, -3.19078e-13, -3.97086, 3.97086, -0.0754334, -23.0483, 6.54704, -6.54704, 10.2738, -10.2738, -6.2275, 10.2738, 6.2275, 10.2738}, {0, -4.817, 7.10543e-15, -1.41539, -0.190281, -1.85814, -0.373467, 0.373467, 3.64699, 1.78885, -1.78885, -1.78885, 7.41106, -0.988391, 9.72932, 2.21115, -0.226431, -2.21115, 1.9555, -3.94022, -19.0959, -9.36656, 7.38185, 9.36656, -0.461631, 2.44635, 4.50793, -1.74951, 1.74951, -2.29678}, {-1.11022e-15, 1.60567, -1.55431e-15, 4.24616, 0.570843, 5.57441, -0.373467, 0.373467, 3.64699, 1.78885, -1.78885, -1.78885, 1.74951, -8.17219, 2.29678, 3.70501, -1.7203, -16.7991, 0.461631, -2.44635, -4.50793, -2.21115, 0.226431, 2.21115, -7.61705, 9.60176, 11.6633, -1.74951, 1.74951, -2.29678}, {-8.88178e-16, 1.60567, 1.11022e-15, -1.41539, -0.190281, -1.85814, 1.1204, -1.1204, -10.941, 1.78885, -1.78885, -1.78885, 1.74951, -1.74951, 2.29678, 7.87269, 0.534693, 5.2214, 0.461631, -8.86902, -4.50793, -2.21115, 0.226431, 2.21115, -0.461631, 2.44635, 4.50793, -8.90493, 8.90493, 4.85864}, {1.55431e-15, 1.60567, -4.44089e-16, -1.41539, -0.190281, -1.85814, -0.373467, 0.373467, 3.64699, -5.36656, 5.36656, 5.36656, 1.74951, -1.74951, 2.29678, 2.21115, -0.226431, -2.21115, 0.461631, -2.44635, -4.50793, -2.21115, -6.19624, 2.21115, 5.19992, 3.20747, 11.9405, -0.255645, 0.255645, -16.8847}, {-2.60507, 7.08874, -2.60507, -1.19276, 2.49131, 1.15037, -1.08957, 0.431245, -1.08957, 1.41397, -0.55964, -0.929159, 5.172, -10.1239, -7.09676, 2.82111, -3.61247, -0.0751544, 4.6317, 0.662693, 4.6317, -8.47697, 5.85103, 3.79179, -0.273431, -2.38767, -0.273431, -0.400978, 0.158705, 2.49528}, {0.868358, -2.36291, 0.868358, 3.57827, -7.47392, -3.45111, -1.08957, 0.431245, -1.08957, 1.41397, -0.55964, -0.929159, -3.07245, 9.29295, -5.96872, 7.17938, -5.33745, 4.28312, 0.273431, 2.38767, 0.273431, -2.82111, 3.61247, 0.0751544, -5.9293, -0.149113, 3.44321, -0.400978, 0.158705, 2.49528}, {0.868358, -2.36291, 0.868358, -1.19276, 2.49131, 1.15037, 3.2687, -1.29374, 3.2687, 1.41397, -0.55964, -0.929159, 0.400978, -0.158705, -2.49528, 7.59213, -13.5777, -4.67663, -3.2, 11.8393, -3.2, -2.82111, 3.61247, 0.0751544, -0.273431, -2.38767, -0.273431, -6.05684, 2.39726, 6.21192}, {0.868358, -2.36291, 0.868358, -1.19276, 2.49131, 1.15037, -1.08957, 0.431245, -1.08957, -4.2419, 1.67892, 2.78748, 0.400978, -0.158705, -2.49528, 2.82111, -3.61247, -0.0751544, 0.273431, 2.38767, 0.273431, -6.29454, 13.0641, -3.39828, 4.49759, -12.3529, -4.87491, 3.95729, -1.56628, 6.85356}, {0.133606, -1.71772, 4.33994, 0.841626, -2.01922, -1.9732e-12, -1.05603, 0, 0, 0.258935, 1.44665, 1.44665, -4.35176, 9.86504, 1.78815, 0.265013, 2.4959, 2.43901e-12, 5.58447, -0.707741, 1.78815, -1.30075, -8.28248, -5.78659, -1.36037, 0.707741, -1.78815, 0.985258, -1.78815, -1.78815}, {-0.0445353, 0.572575, -1.44665, -2.52488, 6.05767, 5.92285e-12, -1.05603, 0, 0, 0.258935, 1.44665, 1.44665, -0.807116, -0.502145, 7.57474, 4.48912, 2.4959, 2.44035e-12, 1.36037, -0.707741, 1.78815, -0.265013, -2.4959, -2.43999e-12, -2.39611, -5.07885, -7.57474, 0.985258, -1.78815, -1.78815}, {-0.0445353, 0.572575, -1.44665, 0.841626, -2.01922, -1.97392e-12, 3.16808, 0, 0, 0.258935, 1.44665, 1.44665, -0.985258, 1.78815, 1.78815, -3.10149, 10.5728, 1.03356e-11, 1.53851, -2.99804, 7.57474, -0.265013, -2.4959, -2.43954e-12, -1.36037, 0.707741, -1.78815, -0.0504837, -7.57474, -7.57474}, {-0.0445353, 0.572575, -1.44665, 0.841626, -2.01922, -1.97247e-12, -1.05603, 0, 0, -0.776806, -4.33994, -4.33994, -0.985258, 1.78815, 1.78815, 0.265013, 2.4959, 2.43811e-12, 1.36037, -0.707741, 1.78815, -0.0868717, -4.7862, 5.78659, -4.72687, 8.78463, -1.78815, 5.20936, -1.78815, -1.78815}, {-8.334, -1.1204, -10.941, -1.41539, 1.41539, -1.85814, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, 3.97726, -7.87269, 5.2214, 5.64494, -1.74951, 2.29678, 13.0675, -0.461631, -4.50793, -12.8004, 8.90493, 4.85864, -0.461631, 0.461631, 4.50793, 1.68428, 2.21115, 2.21115}, {2.778, 0.373467, 3.64699, 4.24616, -4.24616, 5.57441, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -12.7963, -3.70501, -16.7991, 18.2508, -1.74951, 2.29678, 0.461631, -0.461631, -4.50793, -5.64494, 1.74951, -2.29678, -7.61705, 7.61705, 11.6633, 1.68428, 2.21115, 2.21115}, {2.778, 0.373467, 3.64699, -1.41539, 1.41539, -1.85814, 9.45441, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -2.21115, -2.21115, 11.3065, -7.41106, 9.72932, -10.6504, -1.9555, -19.0959, -5.64494, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, -5.47113, 9.36656, 9.36656}, {2.778, 0.373467, 3.64699, -1.41539, 1.41539, -1.85814, -3.15147, 0, 0, -5.36656, 5.36656, 5.36656, -1.68428, -2.21115, -2.21115, 5.64494, -1.74951, 2.29678, 0.461631, -0.461631, -4.50793, -16.7569, 0.255645, -16.8847, 5.19992, -5.19992, 11.9405, 14.2902, 2.21115, 2.21115}, {1.01058, 2.55106, -2.5536, -2.38953, 1.40121, 0.936349, 0.591368, -0.846655, -1.49431, 2.13502, 0.295801, -0.293237, 12.9281, -6.28572, -5.95493, 2.22265, -0.685462, 0.68968, -2.68006, 5.48424, 6.77218, -10.7627, -0.497743, 0.483267, 0.314591, -2.09762, -0.794931, -3.37, 0.680893, 2.20953}, {-0.336859, -0.850352, 0.8512, 7.1686, -4.20362, -2.80905, 0.591368, -0.846655, -1.49431, 2.13502, 0.295801, -0.293237, 4.71744, 2.72051, -5.61433, -0.142821, 2.70116, 6.66693, -0.314591, 2.09762, 0.794931, -2.22265, 0.685462, -0.68968, -8.2255, -3.28082, 0.378017, -3.37, 0.680893, 2.20953}, {-0.336859, -0.850352, 0.8512, -2.38953, 1.40121, 0.936349, -1.77411, 2.53997, 4.48294, 2.13502, 0.295801, -0.293237, 3.37, -0.680893, -2.20953, 11.7808, -6.29028, -3.05572, 1.03285, 5.49902, -2.60987, -2.22265, 0.685462, -0.68968, 0.314591, -2.09762, -0.794931, -11.9101, -0.502312, 3.38248}, {-0.336859, -0.850352, 0.8512, -2.38953, 1.40121, 0.936349, 0.591368, -0.846655, -1.49431, -6.40507, -0.887404, 0.879711, 3.37, -0.680893, -2.20953, 2.22265, -0.685462, 0.68968, -0.314591, 2.09762, 0.794931, -0.875216, 4.08687, -4.09448, 9.87272, -7.70244, -4.54033, -5.73548, 4.06751, 8.18678}, {8.88178e-16, 9.4517, 0, 1.85814, -1.41498, 1.41539, -3.64699, 2.77721, 0.373467, 1.78885, 1.78834, -1.78885, -9.72932, 11.3033, -7.41106, 2.21115, -1.6838, -2.21115, 19.0959, -10.6473, -1.9555, -9.36656, -5.46957, 9.36656, -4.50793, -0.461499, 0.461631, 2.29678, -5.64333, 1.74951}, {-2.22045e-16, -3.15057, -2.22045e-16, -5.57441, 4.24495, -4.24616, -3.64699, 2.77721, 0.373467, 1.78885, 1.78834, -1.78885, -2.29678, 18.2456, -1.74951, 16.7991, -12.7926, -3.70501, 4.50793, 0.461499, -0.461631, -2.21115, 1.6838, 2.21115, -11.6633, -7.61487, 7.61705, 2.29678, -5.64333, 1.74951}, {8.88178e-16, -3.15057, 2.22045e-16, 1.85814, -1.41498, 1.41539, 10.941, -8.33162, -1.1204, 1.78885, 1.78834, -1.78885, -2.29678, 5.64333, -1.74951, -5.2214, 3.97613, -7.87269, 4.50793, 13.0638, -0.461631, -2.21115, 1.6838, 2.21115, -4.50793, -0.461499, 0.461631, -4.85864, -12.7967, 8.90493}, {2.22045e-16, -3.15057, 6.66134e-16, 1.85814, -1.41498, 1.41539, -3.64699, 2.77721, 0.373467, -5.36656, -5.36503, 5.36656, -2.29678, 5.64333, -1.74951, 2.21115, -1.6838, -2.21115, 4.50793, 0.461499, -0.461631, -2.21115, 14.2861, 2.21115, -11.9405, 5.19843, -5.19992, 16.8847, -16.7522, 0.255645}, {-3.98943, -5.23221, -5.22554, -1.94057, -2.54509, -0.198723, 0.61076, -1.54509, -1.54312, 0, 2.34612, 0, 8.51722, 11.1705, -1.11252, 1.64373, 5.05575, 2.15304, -4.84171, 5.93443, 5.92686, -1.64373, -14.4402, -2.15304, 2.39867, 0.245948, 0.245635, -0.754941, -0.990119, 1.90741}, {1.32981, 1.74407, 1.74185, 5.82171, 7.63528, 0.596168, 0.61076, -1.54509, -1.54312, -3.55726e-16, 2.34612, 8.98764e-16, -4.5643, -5.98616, -8.87479, -0.799305, 11.2361, 8.32553, -2.39867, -0.245948, -0.245635, -1.64373, -5.05575, -2.15304, 2.39867, -9.13852, 0.245635, -0.754941, -0.990119, 1.90741}, {1.32981, 1.74407, 1.74185, -1.94057, -2.54509, -0.198723, -1.83228, 4.63528, 4.62937, 0, 2.34612, 0, 0.754941, 0.990119, -1.90741, 9.40601, 15.2361, 2.94793, -7.71791, -7.22223, -7.21302, -1.64373, -5.05575, -2.15304, 2.39867, 0.245948, 0.245635, -0.754941, -10.3746, 1.90741}, {1.32981, 1.74407, 1.74185, -1.94057, -2.54509, -0.198723, 0.61076, -1.54509, -1.54312, 0, -7.03835, 0, 0.754941, 0.990119, -1.90741, 1.64373, 5.05575, 2.15304, -2.39867, -0.245948, -0.245635, -6.96297, -12.032, -9.12042, 10.1609, 10.4263, 1.04052, -3.19798, 5.19026, 8.0799}, {0, -8.88178e-15, -7.02938, -1.78885, -2.34612, -2.34313, 1.78885, 6.94391e-12, 7.11845e-12, 0, 2.34612, 0, 9.36656, 12.2844, 9.3725, 0, 2.89996, 2.89626, -9.36656, -3.63625e-11, -2.89626, 0, -12.2844, -2.89626, 2.21115, 8.58691e-12, 2.89626, -2.21115, -2.89996, -8.79889e-12}, {-9.56516e-16, 1.33227e-15, 2.34313, 5.36656, 7.03835, 7.02938, 1.78885, 6.94391e-12, 7.11845e-12, -1.04189e-15, 2.34612, -4.14601e-27, 2.21115, 2.89996, -9.3725, -7.15542, 2.89996, 2.89626, -2.21115, -8.58469e-12, -2.89626, 2.66454e-15, -2.89996, -2.89626, 2.21115, -9.38447, 2.89626, -2.21115, -2.89996, -8.79889e-12}, {0, -4.44089e-16, 2.34313, -1.78885, -2.34612, -2.34313, -5.36656, -2.08419e-11, -2.13616e-11, 0, 2.34612, 0, 2.21115, 2.89996, 8.80088e-12, 7.15542, 12.2844, 12.2688, -2.21115, -8.58691e-12, -12.2688, 0, -2.89996, -2.89626, 2.21115, 8.58691e-12, 2.89626, -2.21115, -12.2844, -8.80146e-12}, {0, 8.88178e-16, 2.34313, -1.78885, -2.34612, -2.34313, 1.78885, 6.94234e-12, 7.11741e-12, 0, -7.03835, 0, 2.21115, 2.89996, 8.79702e-12, 0, 2.89996, 2.89626, -2.21115, -8.58291e-12, -2.89626, 0, -2.89996, -12.2688, 9.36656, 9.38447, 12.2688, -9.36656, -2.89996, -3.72672e-11}, {-0.596168, 7.62554, 5.82171, -1.74185, 1.74185, 1.32981, 0, 2.34313, 0, 1.54312, -1.54312, 0.61076, 8.87479, -5.97853, -4.5643, 2.15304, -5.0493, -1.64373, -0.245635, -9.12687, 2.39867, -8.32553, 11.2218, -0.799305, 0.245635, -0.245635, -2.39867, -1.90741, -0.988857, -0.754941}, {0.198723, -2.54185, -1.94057, 5.22554, -5.22554, -3.98943, -8.97618e-16, 2.34313, -3.55272e-16, 1.54312, -1.54312, 0.61076, 1.11252, 11.1562, 8.51722, 2.15304, -14.4218, -1.64373, -0.245635, 0.245635, 2.39867, -2.15304, 5.0493, 1.64373, -5.92686, 5.92686, -4.84171, -1.90741, -0.988857, -0.754941}, {0.198723, -2.54185, -1.94057, -1.74185, 1.74185, 1.32981, 0, -7.02938, 0, 1.54312, -1.54312, 0.61076, 1.90741, 0.988857, 0.754941, 9.12042, -12.0167, -6.96297, -1.04052, 10.413, 10.1609, -2.15304, 5.0493, 1.64373, 0.245635, -0.245635, -2.39867, -8.0799, 5.18364, -3.19798}, {0.198723, -2.54185, -1.94057, -1.74185, 1.74185, 1.32981, 0, 2.34313, 0, -4.62937, 4.62937, -1.83228, 1.90741, 0.988857, 0.754941, 2.15304, -5.0493, -1.64373, -0.245635, 0.245635, 2.39867, -2.94793, 15.2167, 9.40601, 7.21302, -7.21302, -7.71791, -1.90741, -10.3614, -0.754941}, {4.7272, -4.7272, -4.7272, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 1.57573, -6.30294, -10.1984, 6.30294, 1.80456e-12, 1.805e-12, 3.89543, 10.1984, 6.30294, 6.30294, -6.30294, 6.30294, -10.1984, -3.89543, 3.19078e-13, 3.19078e-13, -2.14295e-12, 3.89543, 2.13674e-12}, {-1.57573, 1.57573, 1.57573, -4.7272, -4.7272, 4.7272, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 1.57573, 6.30294, -10.1984, -6.30294, 6.30294, 6.30294, 10.1984, 3.89543, -3.193e-13, -3.193e-13, -1.80505e-12, -1.80561e-12, -3.89543, -10.1984, 6.30294, -6.30294, -2.1394e-12, 3.89543, 2.13962e-12}, {-1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -1.57573, 4.7272, 4.7272, 4.7272, 1.57573, -1.57573, 1.57573, 2.14007e-12, -3.89543, -2.14007e-12, -6.30294, -6.30294, 10.1984, 10.1984, -6.30294, -6.30294, -1.80394e-12, -1.80428e-12, -3.89543, -3.89543, 3.20188e-13, 3.193e-13, -6.30294, 10.1984, -6.30294}, {-1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.57573, -4.7272, 4.7272, -4.7272, 2.1354e-12, -3.89543, -2.14473e-12, 1.80456e-12, 1.80456e-12, 3.89543, 3.89543, -3.19522e-13, -3.19522e-13, 6.30294, -6.30294, -10.1984, -10.1984, -6.30294, 6.30294, 6.30294, 10.1984, 6.30294}, {4.817, -8.88178e-16, 2.22045e-16, -0.136178, 1.74185, 1.32981, 0.198723, -0.198723, -1.94057, 1.54312, -1.54312, 0.61076, 2.69775, -9.12042, -6.96297, -0.0773091, -1.90741, 0.754941, 0.94419, 1.04052, 10.1609, -6.09519, 8.0799, -3.19798, -1.73908, -0.245635, -2.39867, -2.15304, 2.15304, 1.64373}, {-1.60567, 0, 2.22045e-16, 0.408534, -5.22554, -3.98943, 0.198723, -0.198723, -1.94057, 1.54312, -1.54312, 0.61076, 8.57571, -2.15304, -1.64373, -0.872199, -1.11252, 8.51722, 1.73908, 0.245635, 2.39867, 0.0773091, 1.90741, -0.754941, -7.91157, 5.92686, -4.84171, -2.15304, 2.15304, 1.64373}, {-1.60567, 0, 2.22045e-16, -0.136178, 1.74185, 1.32981, -0.596168, 0.596168, 5.82171, 1.54312, -1.54312, 0.61076, 2.15304, -2.15304, -1.64373, 0.467403, -8.87479, -4.5643, 8.16175, 0.245635, 2.39867, 0.0773091, 1.90741, -0.754941, -1.73908, -0.245635, -2.39867, -8.32553, 8.32553, -0.799305}, {-1.60567, -2.22045e-16, -2.22045e-16, -0.136178, 1.74185, 1.32981, 0.198723, -0.198723, -1.94057, -4.62937, 4.62937, -1.83228, 2.15304, -2.15304, -1.64373, -0.0773091, -1.90741, 0.754941, 1.73908, 0.245635, 2.39867, 6.49998, 1.90741, -0.754941, -1.19437, -7.21302, -7.71791, -2.94793, 2.94793, 9.40601}, {7.01844, 8.88178e-16, 0, 2.33948, 2.34313, 1.78885, 7.30061e-12, 6.91762e-12, -1.78885, 0, -2.34313, 0, -9.35791, -12.2688, -9.36656, -2.89175, -2.89626, 0, 2.89175, -3.62204e-11, 9.36656, 2.89175, 12.2688, 0, -2.89175, 8.55005e-12, -2.21115, -9.02405e-12, 2.89626, 2.21115}, {-2.33948, 0, 0, -7.01844, -7.02938, -5.36656, 7.30269e-12, 6.91918e-12, -1.78885, 0, -2.34313, 0, 9.35791, -2.89626, -2.21115, -2.89175, -2.89626, 7.15542, 2.89175, -8.55271e-12, 2.21115, 2.89175, 2.89626, 0, -2.89175, 9.3725, -2.21115, -9.02662e-12, 2.89626, 2.21115}, {-2.33948, 4.44089e-16, 2.22045e-16, 2.33948, 2.34313, 1.78885, -2.19003e-11, -2.07607e-11, 5.36656, 0, -2.34313, 0, 9.02399e-12, -2.89626, -2.21115, -12.2497, -12.2688, -7.15542, 12.2497, -8.55493e-12, 2.21115, 2.89175, 2.89626, -4.44089e-16, -2.89175, 8.55405e-12, -2.21115, -9.02341e-12, 12.2688, 2.21115}, {-2.33948, 4.44089e-16, 0, 2.33948, 2.34313, 1.78885, 7.30373e-12, 6.92178e-12, -1.78885, 0, 7.02938, 0, 9.02849e-12, -2.89626, -2.21115, -2.89175, -2.89626, 0, 2.89175, -8.55627e-12, 2.21115, 12.2497, 2.89626, 0, -12.2497, -9.3725, -9.36656, -3.82428e-11, 2.89626, 9.36656}, {-1.82966, -4.6256, 4.62804, 1.3308, -1.74043, 0.137442, -1.94068, 0.198561, -0.20043, 0, 0, 1.60567, -7.722, 7.20714, 1.1872, 0.75386, 1.90585, 0.0778573, 9.40768, -2.94553, 2.95632, -0.75386, -1.90585, -6.50053, -1.64495, 2.15129, -2.1546, 2.39881, -0.245434, -1.73697}, {0.609885, 1.54187, -1.54268, -3.99239, 5.22128, -0.412327, -1.94068, 0.198561, -0.20043, 7.7358e-16, -7.91487e-17, 1.60567, -4.83836, -5.92203, 7.90769, 8.51658, 1.11161, 0.879578, 1.64495, -2.15129, 2.1546, -0.75386, -1.90585, -0.0778573, -1.64495, 2.15129, -8.57728, 2.39881, -0.245434, -1.73697}, {0.609885, 1.54187, -1.54268, 1.3308, -1.74043, 0.137442, 5.82204, -0.595682, 0.601291, 0, 0, 1.60567, -2.39881, 0.245434, 1.73697, -4.56932, 8.86756, -0.471912, -0.794587, -8.31875, 8.32532, -0.75386, -1.90585, -0.0778573, -1.64495, 2.15129, -2.1546, 2.39881, -0.245434, -8.15964}, {0.609885, 1.54187, -1.54268, 1.3308, -1.74043, 0.137442, -1.94068, 0.198561, -0.20043, 0, 0, -4.817, -2.39881, 0.245434, 1.73697, 0.75386, 1.90585, 0.0778573, 1.64495, -2.15129, 2.1546, -3.1934, -8.07331, 6.09286, -6.96814, 9.11299, -2.70437, 10.1615, -1.03968, -0.935249}, {-4.24457, 5.57441, -4.24616, -1.78937, -1.78885, -1.78885, 3.15147, -2.85327e-15, -2.92187e-16, -2.77696, 3.64699, 0.373467, 7.62038, 11.6633, 7.61705, -1.68365, 2.21115, 2.21115, -18.2502, 2.29678, -1.74951, 12.7915, -16.7991, -3.70501, 5.64429, -2.29678, 1.74951, -0.46292, -4.50793, -0.461631}, {1.41486, -1.85814, 1.41539, 5.3681, 5.36656, 5.36656, 3.15147, 5.70654e-15, 5.84374e-16, -2.77696, 3.64699, 0.373467, -5.1965, 11.9405, -5.19992, -14.2895, 2.21115, 2.21115, -5.64429, 2.29678, -1.74951, 1.68365, -2.21115, -2.21115, 16.7521, -16.8847, 0.255645, -0.46292, -4.50793, -0.461631}, {1.41486, -1.85814, 1.41539, -1.78937, -1.78885, -1.78885, -9.45441, 0, 0, -2.77696, 3.64699, 0.373467, 0.46292, 4.50793, 0.461631, 5.47381, 9.36656, 9.36656, -11.3037, 9.72932, -7.41106, 1.68365, -2.21115, -2.21115, 5.64429, -2.29678, 1.74951, 10.6449, -19.0959, -1.9555}, {1.41486, -1.85814, 1.41539, -1.78937, -1.78885, -1.78885, 3.15147, 2.85327e-15, 2.92187e-16, 8.33088, -10.941, -1.1204, 0.46292, 4.50793, 0.461631, -1.68365, 2.21115, 2.21115, -5.64429, 2.29678, -1.74951, -3.97577, 5.2214, -7.87269, 12.8018, 4.85864, 8.90493, -13.0688, -4.50793, -0.461631}, {-4.72788, -4.72653, -4.72653, 1.57551, -1.57551, -1.57551, -1.57551, 1.57551, -1.57596, -1.57596, -1.57551, 1.57596, -10.1975, 6.30204, 6.30204, -4.83169e-13, -4.92273e-13, 3.89543, 6.30148, -10.1969, 6.30439, 6.30384, 6.30204, -10.1993, 0.000556765, 3.89487, -0.000556765, 3.89543, -1.82077e-12, -1.81766e-12}, {1.57596, 1.57551, 1.57551, -4.72653, 4.72653, 4.72653, -1.57551, 1.57551, -1.57596, -1.57596, -1.57551, 1.57596, -10.1993, -6.30204, -6.30204, 6.30204, -6.30204, 10.1993, -0.000556765, -3.89487, 0.000556765, 4.86997e-13, 4.81002e-13, -3.89543, 6.30439, 10.1969, -6.30439, 3.89543, -1.81322e-12, -1.80744e-12}, {1.57596, 1.57551, 1.57551, 1.57551, -1.57551, -1.57551, 4.72653, -4.72653, 4.72788, -1.57596, -1.57551, 1.57596, -3.89543, 1.8201e-12, 1.81388e-12, -6.30204, 6.30204, 10.1975, -6.30439, -10.1969, -6.30148, 4.87441e-13, 4.99209e-13, -3.89543, 0.000556765, 3.89487, -0.000556765, 10.1993, 6.30204, -6.30384}, {1.57596, 1.57551, 1.57551, 1.57551, -1.57551, -1.57551, -1.57551, 1.57551, -1.57596, 4.72788, 4.72653, -4.72788, -3.89543, 1.81255e-12, 1.81877e-12, -4.87832e-13, -4.87388e-13, 3.89543, -0.000556765, -3.89487, 0.000556765, -6.30384, -6.30204, -10.1975, -6.30148, 10.1969, 6.30148, 10.1975, -6.30204, 6.30384}, {5.36656, -5.36656, -5.3681, 3.64699, -0.373467, 2.77696, 0, 0, -3.15147, -1.85814, -1.41539, -1.41486, -16.8847, -0.255645, -16.7521, -4.50793, 0.461631, 0.46292, 2.21115, -2.21115, 14.2895, 11.9405, 5.19992, 5.1965, -2.21115, 2.21115, -1.68365, 2.29678, 1.74951, 5.64429}, {-1.78885, 1.78885, 1.78937, -10.941, 1.1204, -8.33088, 0, 0, -3.15147, -1.85814, -1.41539, -1.41486, 4.85864, -8.90493, -12.8018, -4.50793, 0.461631, 13.0688, 2.21115, -2.21115, 1.68365, 4.50793, -0.461631, -0.46292, 5.2214, 7.87269, 3.97577, 2.29678, 1.74951, 5.64429}, {-1.78885, 1.78885, 1.78937, 3.64699, -0.373467, 2.77696, 0, 0, 9.45441, -1.85814, -1.41539, -1.41486, -2.29678, -1.74951, -5.64429, -19.0959, 1.9555, -10.6449, 9.36656, -9.36656, -5.47381, 4.50793, -0.461631, -0.46292, -2.21115, 2.21115, -1.68365, 9.72932, 7.41106, 11.3037}, {-1.78885, 1.78885, 1.78937, 3.64699, -0.373467, 2.77696, 0, 0, -3.15147, 5.57441, 4.24616, 4.24457, -2.29678, -1.74951, -5.64429, -4.50793, 0.461631, 0.46292, 2.21115, -2.21115, 1.68365, 11.6633, -7.61705, -7.62038, -16.7991, 3.70501, -12.7915, 2.29678, 1.74951, 18.2502}, {-0.570843, 5.57441, 4.24616, -0.373467, 3.64699, -0.373467, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, 1.7203, -16.7991, 3.70501, -1.74951, -2.29678, -1.74951, -9.60176, 11.6633, -7.61705, 8.17219, 2.29678, 1.74951, 2.44635, -4.50793, 0.461631, -0.226431, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, 1.1204, -10.941, 1.1204, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, -0.534693, 5.2214, 7.87269, -8.90493, 4.85864, -8.90493, -2.44635, 4.50793, -0.461631, 1.74951, 2.29678, 1.74951, 8.86902, -4.50793, 0.461631, -0.226431, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, -0.373467, 3.64699, -0.373467, -5.36656, 5.36656, -5.36656, -1.60567, 0, 0, 0.226431, -2.21115, 2.21115, -0.255645, -16.8847, -0.255645, -3.20747, 11.9405, 5.19992, 1.74951, 2.29678, 1.74951, 2.44635, -4.50793, 0.461631, 6.19624, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, -0.373467, 3.64699, -0.373467, 1.78885, -1.78885, 1.78885, 4.817, 0, 0, 0.226431, -2.21115, 2.21115, -1.74951, -2.29678, -1.74951, -2.44635, 4.50793, -0.461631, 0.988391, 9.72932, 7.41106, 3.94022, -19.0959, 1.9555, -7.38185, 9.36656, -9.36656}, {-2.4085, 2.4085, -2.4085, 0.802834, 0.802834, -0.802834, 0.0313083, 1.63555, 1.63555, -1.63698, -1.63555, -1.63555, -5.19605, -3.21134, 3.21134, -1.03106, -3.014, -1.02929, -1.15629, -7.57148, -9.55619, 7.57896, 9.55619, 7.57148, 1.03106, 1.02929, 3.014, 1.98471, -8.43769e-15, 6.21725e-15}, {0.802834, -0.802834, 0.802834, -2.4085, -2.4085, 2.4085, 0.0313083, 1.63555, 1.63555, -1.63698, -1.63555, -1.63555, -5.19605, 3.21134, -3.21134, -1.15629, -9.55619, -7.57148, -1.03106, -1.02929, -3.014, 1.03106, 3.014, 1.02929, 7.57896, 7.57148, 9.55619, 1.98471, -7.54952e-15, 7.10543e-15}, {0.802834, -0.802834, 0.802834, 0.802834, 0.802834, -0.802834, -0.0939249, -4.90664, -4.90664, -1.63698, -1.63555, -1.63555, -1.98471, 7.10543e-15, -6.66134e-15, -4.24239, -6.22534, 2.18205, -4.24239, 2.18205, -6.22534, 1.03106, 3.014, 1.02929, 1.03106, 1.02929, 3.014, 8.53262, 6.54219, 6.54219}, {0.802834, -0.802834, 0.802834, 0.802834, 0.802834, -0.802834, 0.0313083, 1.63555, 1.63555, 4.91093, 4.90664, 4.90664, -1.98471, 6.21725e-15, -6.66134e-15, -1.03106, -3.014, -1.02929, -1.03106, -1.02929, -3.014, -2.18028, 6.22534, -2.18205, -2.18028, -2.18205, 6.22534, 1.85948, -6.54219, -6.54219}, {5.36656, 5.36656, -5.36656, 0, 0, -3.15147, 3.15147, -1.39953e-15, -1.06606e-15, -1.36261, 1.78885, 1.36261, 2.21115, 2.21115, 14.2902, -3.89543, 1.72992e-15, 3.89543, -14.2902, 2.21115, -2.21115, 9.34589, -7.15542, -9.34589, 1.68428, -2.21115, 2.21115, -2.21115, -2.21115, -1.68428}, {-1.78885, -1.78885, 1.78885, 0, 0, 9.45441, 3.15147, 2.79907e-15, 2.13212e-15, -1.36261, 1.78885, 1.36261, 9.36656, 9.36656, -5.47113, -16.5013, -1.46561e-14, 3.89543, -1.68428, 2.21115, -2.21115, 3.89543, 3.90393e-15, -3.89543, 7.13474, -9.36656, -3.23931, -2.21115, -2.21115, -1.68428}, {-1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -9.45441, 0, 0, -1.36261, 1.78885, 1.36261, 2.21115, 2.21115, 1.68428, -3.89543, 0, 16.5013, 5.47113, 9.36656, -9.36656, 3.89543, 4.44089e-16, -3.89543, 1.68428, -2.21115, 2.21115, 3.23931, -9.36656, -7.13474}, {-1.78885, -1.78885, 1.78885, 0, 0, -3.15147, 3.15147, 1.39953e-15, 1.06606e-15, 4.08784, -5.36656, -4.08784, 2.21115, 2.21115, 1.68428, -3.89543, -1.72992e-15, 3.89543, -1.68428, 2.21115, -2.21115, 11.0508, 7.15542, -11.0508, 1.68428, -2.21115, 14.817, -14.817, -2.21115, -1.68428}, {1.55756, -1.55231, 6.66925, 0.74491, 1.59978, -0.633715, 1.29557, -1.29442, 0.512752, -1.52129, -0.822804, 2.34405, -3.25865, -9.01615, 6.06606, -2.52217, -0.377453, 0.149519, -6.14194, 6.13806, 0.0630791, 8.60734, 3.66867, -9.52571, 0.95966, -0.960396, -2.11409, 0.279008, 2.61703, -3.5312}, {-0.519188, 0.517438, -2.22308, -2.23473, -4.79934, 1.90115, 1.29557, -1.29442, 0.512752, -1.52129, -0.822804, 2.34405, 1.79774, -4.68678, 12.4235, -7.70445, 4.80021, -1.90149, -0.95966, 0.960396, 2.11409, 2.52217, 0.377453, -0.149519, 7.04482, 2.33082, -11.4903, 0.279008, 2.61703, -3.5312}, {-0.519188, 0.517438, -2.22308, 0.74491, 1.59978, -0.633715, -3.88671, 3.88325, -1.53826, -1.52129, -0.822804, 2.34405, -0.279008, -2.61703, 3.5312, -5.50181, -6.77658, 2.68438, 1.11709, -1.10936, 11.0064, 2.52217, 0.377453, -0.149519, 0.95966, -0.960396, -2.11409, 6.36417, 5.90824, -12.9074}, {-0.519188, 0.517438, -2.22308, 0.74491, 1.59978, -0.633715, 1.29557, -1.29442, 0.512752, 4.56387, 2.46841, -7.03214, -0.279008, -2.61703, 3.5312, -2.52217, -0.377453, 0.149519, -0.95966, 0.960396, 2.11409, 4.59892, -1.6923, 8.74282, -2.01998, -7.35952, 0.420775, -4.90327, 7.79469, -5.58221}, {-3.62807, -1.43344, -3.62246, -0.761007, 2.64249, 1.57539, -0.983272, -2.40589, -0.977465, 0.534922, -0.714416, -1.80541, 2.48984, -14.4269, -9.74136, 2.15605, -0.292457, -0.73907, 3.65363, 12.0068, 3.62554, -4.29574, 3.15012, 7.96069, 0.279456, -2.38324, 0.28432, 0.554191, 3.85691, 3.43982}, {1.20936, 0.477813, 1.20749, 2.28302, -7.92748, -4.72616, -0.983272, -2.40589, -0.977465, 0.534922, -0.714416, -1.80541, -5.39162, -5.76816, -8.26976, 6.08913, 9.33111, 3.17079, -0.279456, 2.38324, -0.28432, -2.15605, 0.292457, 0.73907, -1.86023, 0.474427, 7.50594, 0.554191, 3.85691, 3.43982}, {1.20936, 0.477813, 1.20749, -0.761007, 2.64249, 1.57539, 2.94982, 7.21767, 2.9324, 0.534922, -0.714416, -1.80541, -0.554191, -3.85691, -3.43982, 5.20007, -10.8624, -7.04061, -5.11688, 0.471983, -5.11426, -2.15605, 0.292457, 0.73907, 0.279456, -2.38324, 0.28432, -1.5855, 6.71457, 10.6614}, {1.20936, 0.477813, 1.20749, -0.761007, 2.64249, 1.57539, -0.983272, -2.40589, -0.977465, -1.60477, 2.14325, 5.41622, -0.554191, -3.85691, -3.43982, 2.15605, -0.292457, -0.73907, -0.279456, 2.38324, -0.28432, -6.99347, -1.6188, -4.09087, 3.32348, -12.9532, -6.01722, 4.48728, 13.4805, 7.34968}, {5.81909, -7.61025, 0.600985, 0.610485, 1.54108, -1.54262, 0, -2.33948, 0, 1.32921, -1.73835, 1.74295, -0.798945, -11.2048, 8.32487, -0.754601, 0.986874, 1.90678, 2.3976, 9.11407, 0.24762, -4.56224, 5.96654, -8.87857, -2.3976, 0.243842, -0.24762, -1.643, 5.04048, -2.1544}, {-1.9397, 2.53675, -0.200328, -1.83146, -4.62324, 4.62785, 0, -2.33948, 0, 1.32921, -1.73835, 1.74295, 9.40178, -15.1875, 2.95571, -0.754601, 10.3448, 1.90678, 2.3976, -0.243842, 0.24762, 0.754601, -0.986874, -1.90678, -7.71444, 7.19725, -7.21941, -1.643, 5.04048, -2.1544}, {-1.9397, 2.53675, -0.200328, 0.610485, 1.54108, -1.54262, 0, 7.01844, 0, 1.32921, -1.73835, 1.74295, 1.643, -5.04048, 2.1544, -3.19654, -5.17745, 8.07725, 10.1564, -10.3908, 1.04893, 0.754601, -0.986874, -1.90678, -2.3976, 0.243842, -0.24762, -6.95984, 11.9939, -9.12619}, {-1.9397, 2.53675, -0.200328, 0.610485, 1.54108, -1.54262, 0, -2.33948, 0, -3.98763, 5.21506, -5.22884, 1.643, -5.04048, 2.1544, -0.754601, 0.986874, 1.90678, 2.3976, -0.243842, 0.24762, 8.51339, -11.1339, -1.10547, -4.83954, -5.92048, 5.92285, -1.643, 14.3984, -2.1544}, {4.33994, -4.33994, -1.54017, 0, 0, -1.80556, -0.572575, -1.44665, 0.668413, 2.01922, 1.97175e-12, 0.623753, 1.78815, -1.78815, 8.81943, 0.707741, 1.78815, 1.40559, 4.7862, 5.78659, -4.13444, -8.78463, -1.78815, -3.9006, -2.4959, -2.43721e-12, 1.46079, -1.78815, 1.78815, -1.5972}, {-1.44665, 1.44665, 0.51339, 0, 0, 5.41667, -0.572575, -1.44665, 0.668413, 2.01922, 1.97138e-12, 0.623753, 7.57474, -7.57474, -0.456355, 2.99804, 7.57474, -1.26807, 2.4959, 2.43641e-12, -1.46079, -0.707741, -1.78815, -1.40559, -10.5728, -1.03223e-11, -1.03422, -1.78815, 1.78815, -1.5972}, {-1.44665, 1.44665, 0.51339, 0, 0, -1.80556, 1.71772, 4.33994, -2.00524, 2.01922, 1.97175e-12, 0.623753, 1.78815, -1.78815, 1.5972, 0.707741, 1.78815, 8.62781, 8.28248, -5.78659, -3.51435, -0.707741, -1.78815, -1.40559, -2.4959, -2.43721e-12, 1.46079, -9.86504, 1.78815, -4.09222}, {-1.44665, 1.44665, 0.51339, 0, 0, -1.80556, -0.572575, -1.44665, 0.668413, -6.05767, -5.91959e-12, -1.87126, 1.78815, -1.78815, 1.5972, 0.707741, 1.78815, 1.40559, 2.4959, 2.43865e-12, -1.46079, 5.07885, -7.57474, -3.45914, -2.4959, -2.43901e-12, 8.68301, 0.502145, 7.57474, -4.27086}, {5.36656, 5.36656, 5.36656, 0.373467, 0.373467, 3.64699, 1.41048e-15, 1.60567, -1.85169e-15, 1.41539, -0.190281, -1.85814, 0.255645, 0.255645, -16.8847, -0.461631, -2.44635, -4.50793, 2.21115, -6.19624, 2.21115, -5.19992, 3.20747, 11.9405, -2.21115, -0.226431, -2.21115, -1.74951, -1.74951, 2.29678}, {-1.78885, -1.78885, -1.78885, -1.1204, -1.1204, -10.941, 8.46287e-16, 1.60567, -1.11101e-15, 1.41539, -0.190281, -1.85814, 8.90493, 8.90493, 4.85864, -0.461631, -8.86902, -4.50793, 2.21115, 0.226431, 2.21115, 0.461631, 2.44635, 4.50793, -7.87269, 0.534693, 5.2214, -1.74951, -1.74951, 2.29678}, {-1.78885, -1.78885, -1.78885, 0.373467, 0.373467, 3.64699, 0, -4.817, 0, 1.41539, -0.190281, -1.85814, 1.74951, 1.74951, -2.29678, -1.9555, -3.94022, -19.0959, 9.36656, 7.38185, 9.36656, 0.461631, 2.44635, 4.50793, -2.21115, -0.226431, -2.21115, -7.41106, -0.988391, 9.72932}, {-1.78885, -1.78885, -1.78885, 0.373467, 0.373467, 3.64699, 2.82096e-16, 1.60567, -3.70338e-16, -4.24616, 0.570843, 5.57441, 1.74951, 1.74951, -2.29678, -0.461631, -2.44635, -4.50793, 2.21115, 0.226431, 2.21115, 7.61705, 9.60176, 11.6633, -3.70501, -1.7203, -16.7991, -1.74951, -8.17219, 2.29678}, {-4.24616, -4.24616, 5.57441, 3.15147, 2.92187e-16, 2.85327e-15, -1.78885, -1.78885, -1.78885, -2.778, 0.373467, 3.64699, -18.2508, -1.74951, 2.29678, -1.68428, 2.21115, 2.21115, 7.61705, 7.61705, 11.6633, 12.7963, -3.70501, -16.7991, -0.461631, -0.461631, -4.50793, 5.64494, 1.74951, -2.29678}, {1.41539, 1.41539, -1.85814, -9.45441, -5.07516e-15, -1.27584e-14, -1.78885, -1.78885, -1.78885, -2.778, 0.373467, 3.64699, -11.3065, -7.41106, 9.72932, 5.47113, 9.36656, 9.36656, 0.461631, 0.461631, 4.50793, 1.68428, -2.21115, -2.21115, 10.6504, -1.9555, -19.0959, 5.64494, 1.74951, -2.29678}, {1.41539, 1.41539, -1.85814, 3.15147, 0, 0, 5.36656, 5.36656, 5.36656, -2.778, 0.373467, 3.64699, -5.64494, -1.74951, 2.29678, -14.2902, 2.21115, 2.21115, -5.19992, -5.19992, 11.9405, 1.68428, -2.21115, -2.21115, -0.461631, -0.461631, -4.50793, 16.7569, 0.255645, -16.8847}, {1.41539, 1.41539, -1.85814, 3.15147, 2.92187e-16, 2.85327e-15, -1.78885, -1.78885, -1.78885, 8.334, -1.1204, -10.941, -5.64494, -1.74951, 2.29678, -1.68428, 2.21115, 2.21115, 0.461631, 0.461631, 4.50793, -3.97726, -7.87269, 5.2214, -13.0675, -0.461631, -4.50793, 12.8004, 8.90493, 4.85864}, {0.972456, 0.972456, -8.84811, 1.4362, 1.4362, 1.4362, -1.66806, -0.0623937, -1.66806, 0.556017, -1.04965, -2.71751, -7.11935, -7.11935, -11.1656, 0.286601, -1.69811, 0.286601, 9.13476, 0.727372, 5.08846, -2.51067, 5.89672, 10.5834, -2.46251, -0.477797, 1.58378, 1.37456, 1.37456, 5.42086}, {-0.324152, -0.324152, 2.94937, -4.30859, -4.30859, -4.30859, -1.66806, -0.0623937, -1.66806, 0.556017, -1.04965, -2.71751, -0.0779551, -0.0779551, -17.2183, 6.95885, -1.44854, 6.95885, 2.46251, 0.477797, -1.58378, -0.286601, 1.69811, -0.286601, -4.68658, 3.72081, 12.4538, 1.37456, 1.37456, 5.42086}, {-0.324152, -0.324152, 2.94937, 1.4362, 1.4362, 1.4362, 5.00419, 0.187181, 5.00419, 0.556017, -1.04965, -2.71751, -1.37456, -1.37456, -5.42086, -5.45818, -7.4429, -5.45818, 3.75912, 1.7744, -13.3813, -0.286601, 1.69811, -0.286601, -2.46251, -0.477797, 1.58378, -0.849506, 5.57317, 16.2909}, {-0.324152, -0.324152, 2.94937, 1.4362, 1.4362, 1.4362, -1.66806, -0.0623937, -1.66806, -1.66805, 3.14895, 8.15252, -1.37456, -1.37456, -5.42086, 0.286601, -1.69811, 0.286601, 2.46251, 0.477797, -1.58378, 1.01001, 2.99472, -12.0841, -8.2073, -6.22258, -4.161, 8.04681, 1.62414, 12.0931}, {3.33613, 3.33613, 13.1567, 1.4362, 1.4362, 1.4362, 0.767151, -2.38432, -2.38432, -1.0913, 2.06017, 5.33369, -6.14546, -6.14546, -2.09916, -2.72349, 1.17194, 1.17194, -2.64229, 13.859, 17.9053, 7.0887, -9.4126, -22.5067, -0.426311, -4.32174, -8.36804, 0.400674, 0.400674, -3.64562}, {-1.11204, -1.11204, -4.38557, -4.30859, -4.30859, -4.30859, 0.767151, -2.38432, -2.38432, -1.0913, 2.06017, 5.33369, 4.0475, 4.0475, 21.1879, -5.79209, 10.7092, 10.7092, 0.426311, 4.32174, 8.36804, 2.72349, -1.17194, -1.17194, 3.9389, -12.5624, -29.7028, 0.400674, 0.400674, -3.64562}, {-1.11204, -1.11204, -4.38557, 1.4362, 1.4362, 1.4362, -2.30145, 7.15295, 7.15295, -1.0913, 2.06017, 5.33369, -0.400674, -0.400674, 3.64562, -8.46827, -4.57284, -4.57284, 4.87449, 8.76992, 25.9103, 2.72349, -1.17194, -1.17194, -0.426311, -4.32174, -8.36804, 4.76589, -7.83999, -24.9804}, {-1.11204, -1.11204, -4.38557, 1.4362, 1.4362, 1.4362, 0.767151, -2.38432, -2.38432, 3.27391, -6.1805, -16.0011, -0.400674, -0.400674, 3.64562, -2.72349, 1.17194, 1.17194, 0.426311, 4.32174, 8.36804, 7.17167, 3.27624, 16.3703, -6.1711, -10.0665, -14.1128, -2.66793, 9.93794, 5.89165}, {-6.6428, 1.48026, 1.47837, 0.647646, 0.70771, -1.63632, -0.372676, 0.942791, 0.941589, -2.48924, -1.15708, 1.18752, -6.1281, -3.09572, 9.177, -0.339882, -2.04013, 0.858732, -0.785628, -4.32662, -4.3211, 10.2968, 6.66845, -5.60881, 2.27633, 0.555453, 0.554744, 3.53752, 0.264876, -2.63172}, {2.21427, -0.493421, -0.492791, -1.94294, -2.12313, 4.90895, -0.372676, 0.942791, 0.941589, -2.48924, -1.15708, 1.18752, -12.3946, 1.70881, 4.60289, 1.15082, -5.8113, -2.90762, -2.27633, -0.555453, -0.554744, 0.339882, 2.04013, -0.858732, 12.2333, 5.18378, -4.19534, 3.53752, 0.264876, -2.63172}, {2.21427, -0.493421, -0.492791, 0.647646, 0.70771, -1.63632, 1.11803, -2.82837, -2.82477, -2.48924, -1.15708, 1.18752, -3.53752, -0.264876, 2.63172, -2.93046, -4.87097, 7.404, -11.1334, 1.41823, 1.41642, 0.339882, 2.04013, -0.858732, 2.27633, 0.555453, 0.554744, 13.4945, 4.8932, -7.38181}, {2.21427, -0.493421, -0.492791, 0.647646, 0.70771, -1.63632, -0.372676, 0.942791, 0.941589, 7.46771, 3.47124, -3.56256, -3.53752, -0.264876, 2.63172, -0.339882, -2.04013, 0.858732, -2.27633, -0.555453, -0.554744, -8.51718, 4.01381, 1.11243, -0.314251, -2.27539, 7.10002, 5.02822, -3.50629, -6.39808}, {1.12186, -2.82659, -2.82659, -1.84098, -0.449088, -0.449088, 0.510215, -1.28552, 0.320147, 1.70472, 0.792411, -0.813257, 10.1017, 1.18683, 1.18683, 1.64492, 2.14409, 0.15938, -2.20929, 5.56645, -2.84093, -8.4638, -5.31374, 3.09365, 0.16843, -0.424371, 1.56034, -2.73781, 0.609518, 0.609518}, {-0.373952, 0.942198, 0.942198, 5.52295, 1.34726, 1.34726, 0.510215, -1.28552, 0.320147, 1.70472, 0.792411, -0.813257, 4.23362, -4.37831, -4.37831, -0.395942, 7.28618, -1.12121, -0.16843, 0.424371, -1.56034, -1.64492, -2.14409, -0.15938, -6.65045, -3.59401, 4.81337, -2.73781, 0.609518, 0.609518}, {-0.373952, 0.942198, 0.942198, -1.84098, -0.449088, -0.449088, -1.53064, 3.85656, -0.960441, 1.70472, 0.792411, -0.813257, 2.73781, -0.609518, -0.609518, 9.00885, 3.94045, 1.95573, 1.32738, -3.34442, -5.32914, -1.64492, -2.14409, -0.15938, 0.16843, -0.424371, 1.56034, -9.55669, -2.56013, 3.86255}, {-0.373952, 0.942198, 0.942198, -1.84098, -0.449088, -0.449088, 0.510215, -1.28552, 0.320147, -5.11416, -2.37723, 2.43977, 2.73781, -0.609518, -0.609518, 1.64492, 2.14409, 0.15938, -0.16843, 0.424371, -1.56034, -0.149109, -5.91289, -3.92817, 7.53236, 1.37198, 3.3567, -4.77867, 5.7516, -0.67107}, {0.461366, -4.35523, -1.72378, -0.132927, -0.133043, -2.07188, -0.954792, -0.955627, -0.378232, 1.24151, -0.363075, 1.87552, 0.886107, -1.09783, 10.1383, 1.34449, 1.34567, 3.0285, 5.18945, 3.20927, 1.27021, -6.31053, 0.10663, -10.5306, -1.37028, 0.613236, 0.242715, -0.3544, 1.63001, -1.85075}, {-0.153789, 1.45174, 0.574593, 0.39878, 0.399129, 6.21564, -0.954792, -0.955627, -0.378232, 1.24151, -0.363075, 1.87552, 0.969555, -7.43698, -0.447622, 5.16366, 5.16818, 4.54143, 1.37028, -0.613236, -0.242715, -1.34449, -1.34567, -3.0285, -6.33631, 2.06554, -7.25936, -0.3544, 1.63001, -1.85075}, {-0.153789, 1.45174, 0.574593, -0.132927, -0.133043, -2.07188, 2.86438, 2.86688, 1.1347, 1.24151, -0.363075, 1.87552, 0.3544, -1.63001, 1.85075, 1.8762, 1.87784, 11.316, 1.98544, -6.42021, -2.54109, -1.34449, -1.34567, -3.0285, -1.37028, 0.613236, 0.242715, -5.32043, 3.08231, -9.35282}, {-0.153789, 1.45174, 0.574593, -0.132927, -0.133043, -2.07188, -0.954792, -0.955627, -0.378232, -3.72452, 1.08923, -5.62656, 0.3544, -1.63001, 1.85075, 1.34449, 1.34567, 3.0285, 1.37028, -0.613236, -0.242715, -0.72934, -7.15265, -5.32687, -0.838575, 1.14541, 8.53023, 3.46477, 5.45251, -0.337821}, {4.44089e-16, 7.02938, 0, 1.54187, 1.54427, 0.609885, -1.74043, -1.74314, 1.3308, 0.198561, 2.542, -1.94068, -8.07331, -5.18964, -3.1934, 0.245434, 0.245817, -2.39881, 9.11299, 12.0235, -6.96814, -1.03968, -10.4138, 10.1615, -2.15129, -5.0509, 1.64495, 1.90585, -0.987441, 0.75386}, {3.05311e-16, -2.34313, -2.22045e-16, -4.6256, -4.63281, -1.82966, -1.74043, -1.74314, 1.3308, 0.198561, 2.542, -1.94068, -1.90585, 10.3599, -0.75386, 7.20714, 7.21837, -7.722, 2.15129, 5.0509, -1.64495, -0.245434, -0.245817, 2.39881, -2.94553, -15.2189, 9.40768, 1.90585, -0.987441, 0.75386}, {-3.60822e-16, -2.34313, -2.22045e-16, 1.54187, 1.54427, 0.609885, 5.22128, 5.22942, -3.99239, 0.198561, 2.542, -1.94068, -1.90585, 0.987441, -0.75386, -5.92203, -5.93126, -4.83836, 2.15129, 14.4234, -1.64495, -0.245434, -0.245817, 2.39881, -2.15129, -5.0509, 1.64495, 1.11161, -11.1554, 8.51658}, {-5.55112e-17, -2.34313, 0, 1.54187, 1.54427, 0.609885, -1.74043, -1.74314, 1.3308, -0.595682, -7.62599, 5.82204, -1.90585, 0.987441, -0.75386, 0.245434, 0.245817, -2.39881, 2.15129, 5.0509, -1.64495, -0.245434, 9.12668, 2.39881, -8.31875, -11.228, -0.794587, 8.86756, 5.98512, -4.56932}, {4.8128, 0, 0, 1.54178, 1.54312, 0.61076, 0.198549, 0.198723, -1.94057, -0.136059, -1.74185, 1.32981, -6.08986, -8.0799, -3.19798, -2.15116, -2.15304, 1.64373, 0.943366, -1.04052, 10.1609, 2.6954, 9.12042, -6.96297, -1.73756, 0.245635, -2.39867, -0.0772416, 1.90741, 0.754941}, {-1.60427, 0, 0, -4.62533, -4.62937, -1.83228, 0.198549, 0.198723, -1.94057, -0.136059, -1.74185, 1.32981, 6.49431, -1.90741, -0.754941, -2.94536, -2.94793, 9.40601, 1.73756, -0.245635, 2.39867, 2.15116, 2.15304, -1.64373, -1.19332, 7.21302, -7.71791, -0.0772416, 1.90741, 0.754941}, {-1.60427, 2.22045e-16, -2.22045e-16, 1.54178, 1.54312, 0.61076, -0.595647, -0.596168, 5.82171, -0.136059, -1.74185, 1.32981, 0.0772416, -1.90741, -0.754941, -8.31826, -8.32553, -0.799305, 8.15463, -0.245635, 2.39867, 2.15116, 2.15304, -1.64373, -1.73756, 0.245635, -2.39867, 0.466995, 8.87479, -4.5643}, {-1.60427, 0, -2.22045e-16, 1.54178, 1.54312, 0.61076, 0.198549, 0.198723, -1.94057, 0.408178, 5.22554, -3.98943, 0.0772416, -1.90741, -0.754941, -2.15116, -2.15304, 1.64373, 1.73756, -0.245635, 2.39867, 8.56822, 2.15304, -1.64373, -7.90467, -5.92686, -4.84171, -0.871438, 1.11252, 8.51722}, {4.91028, -4.91028, -4.91028, -1.57573, -1.57573, 1.57573, 1.57573, 1.57573, 1.57573, 1.63676, -1.63676, -4.78823, 10.2738, 6.2275, -10.2738, -3.02869e-13, -3.06644e-13, -3.89543, -6.2275, -10.2738, -10.2738, -6.54704, 6.54704, 23.0483, -0.0754334, 3.97086, 3.97086, -3.97086, 0.0754334, 3.97086}, {-1.63676, 1.63676, 1.63676, 4.7272, 4.7272, -4.7272, 1.57573, 1.57573, 1.57573, 1.63676, -1.63676, -4.78823, 10.5179, -6.62248, -10.5179, -6.30294, -6.30294, -10.1984, 0.0754334, -3.97086, -3.97086, 3.01943e-13, 3.04683e-13, 3.89543, -6.62248, 10.5179, 23.1238, -3.97086, 0.0754334, 3.97086}, {-1.63676, 1.63676, 1.63676, -1.57573, -1.57573, 1.57573, -4.7272, -4.7272, -4.7272, 1.63676, -1.63676, -4.78823, 3.97086, -0.0754334, -3.97086, 6.30294, 6.30294, -10.1984, 6.62248, -10.5179, -10.5179, 3.00389e-13, 2.99798e-13, 3.89543, -0.0754334, 3.97086, 3.97086, -10.5179, 6.62248, 23.1238}, {-1.63676, 1.63676, 1.63676, -1.57573, -1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -4.91028, 4.91028, 14.3647, 3.97086, -0.0754334, -3.97086, -2.96652e-13, -3.00426e-13, -3.89543, 0.0754334, -3.97086, -3.97086, 6.54704, -6.54704, -2.65162, 6.2275, 10.2738, -2.33207, -10.2738, -6.2275, -2.33207}, {4.24616, -5.57441, -4.24616, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, -0.373467, -3.64699, -2.778, 1.74951, -2.29678, -18.2508, -2.21115, -2.21115, -1.68428, -7.61705, -11.6633, 7.61705, 3.70501, 16.7991, 12.7963, 0.461631, 4.50793, -0.461631, -1.74951, 2.29678, 5.64494}, {-1.41539, 1.85814, 1.41539, 5.07516e-15, 1.27584e-14, -9.45441, 1.78885, 1.78885, -1.78885, -0.373467, -3.64699, -2.778, 7.41106, -9.72932, -11.3065, -9.36656, -9.36656, 5.47113, -0.461631, -4.50793, 0.461631, 2.21115, 2.21115, 1.68428, 1.9555, 19.0959, 10.6504, -1.74951, 2.29678, 5.64494}, {-1.41539, 1.85814, 1.41539, 0, 0, 3.15147, -5.36656, -5.36656, 5.36656, -0.373467, -3.64699, -2.778, 1.74951, -2.29678, -5.64494, -2.21115, -2.21115, -14.2902, 5.19992, -11.9405, -5.19992, 2.21115, 2.21115, 1.68428, 0.461631, 4.50793, -0.461631, -0.255645, 16.8847, 16.7569}, {-1.41539, 1.85814, 1.41539, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, 1.1204, 10.941, 8.334, 1.74951, -2.29678, -5.64494, -2.21115, -2.21115, -1.68428, -0.461631, -4.50793, 0.461631, 7.87269, -5.2214, -3.97726, 0.461631, 4.50793, -13.0675, -8.90493, -4.85864, 12.8004}, {-5.36656, -5.36656, 5.36656, -0.373467, -3.64699, 0.373467, -1.60567, 0, 0, 0.190281, 1.85814, 1.41539, -0.255645, 16.8847, 0.255645, 2.44635, 4.50793, -0.461631, 6.19624, -2.21115, 2.21115, -3.20747, -11.9405, -5.19992, 0.226431, 2.21115, -2.21115, 1.74951, -2.29678, -1.74951}, {1.78885, 1.78885, -1.78885, 1.1204, 10.941, -1.1204, -1.60567, 0, 0, 0.190281, 1.85814, 1.41539, -8.90493, -4.85864, 8.90493, 8.86902, 4.50793, -0.461631, -0.226431, -2.21115, 2.21115, -2.44635, -4.50793, 0.461631, -0.534693, -5.2214, -7.87269, 1.74951, -2.29678, -1.74951}, {1.78885, 1.78885, -1.78885, -0.373467, -3.64699, 0.373467, 4.817, 0, 0, 0.190281, 1.85814, 1.41539, -1.74951, 2.29678, 1.74951, 3.94022, 19.0959, -1.9555, -7.38185, -9.36656, 9.36656, -2.44635, -4.50793, 0.461631, 0.226431, 2.21115, -2.21115, 0.988391, -9.72932, -7.41106}, {1.78885, 1.78885, -1.78885, -0.373467, -3.64699, 0.373467, -1.60567, 0, 0, -0.570843, -5.57441, -4.24616, -1.74951, 2.29678, 1.74951, 2.44635, 4.50793, -0.461631, -0.226431, -2.21115, 2.21115, -9.60176, -11.6633, 7.61705, 1.7203, 16.7991, -3.70501, 8.17219, -2.29678, -1.74951}, {-1.80799, -0.0150891, -4.77555, -0.827431, 1.45271, 0.471751, -0.860099, -1.45095, 0.0849431, 1.08487, -0.00678866, -2.14855, 3.58755, -7.6127, -4.43776, 2.0859, -0.00217419, -0.688112, 3.7586, 7.59105, -2.4124, -6.42536, 0.0293288, 9.28229, -0.318207, -1.78726, 2.07263, -0.277826, 1.80186, 2.55075}, {0.602665, 0.0050297, 1.59185, 2.48229, -4.35813, -1.41525, -0.860099, -1.45095, 0.0849431, 1.08487, -0.00678866, -2.14855, -2.13283, -1.82198, -8.91816, 5.5263, 5.80162, -1.02788, 0.318207, 1.78726, -2.07263, -2.0859, 0.00217419, 0.688112, -4.65767, -1.7601, 10.6668, -0.277826, 1.80186, 2.55075}, {0.602665, 0.0050297, 1.59185, -0.827431, 1.45271, 0.471751, 2.5803, 4.35285, -0.254829, 1.08487, -0.00678866, -2.14855, 0.277826, -1.80186, -2.55075, 5.39562, -5.81301, -2.57512, -2.09245, 1.76714, -8.44004, -2.0859, 0.00217419, 0.688112, -0.318207, -1.78726, 2.07263, -4.61729, 1.82902, 11.1449}, {0.602665, 0.0050297, 1.59185, -0.827431, 1.45271, 0.471751, -0.860099, -1.45095, 0.0849431, -3.2546, 0.020366, 6.44564, 0.277826, -1.80186, -2.55075, 2.0859, -0.00217419, -0.688112, 0.318207, 1.78726, -2.07263, -4.49656, -0.0179446, -5.67929, 2.99152, -7.59809, 0.185628, 3.16257, 7.60566, 2.21098}, {1.57878, 4.35912, 1.72866, 0.141226, 1.44665, -1.44665, 1.40644, -1.11582e-18, -3.53145e-16, -1.02141, 0.00639156, 2.02287, -0.0889792, -5.77869, 8.28699, -1.91302, -1.78815, 1.78815, -6.71372, 1.79605, 0.712247, 5.99864, 1.76259, -9.87962, 1.08796, -1.79605, -0.712247, -0.475926, -0.0079004, -2.5004}, {-0.526258, -1.45304, -0.57622, -0.423679, -4.33994, 4.33994, 1.40644, -3.34745e-18, -1.05944e-15, -1.02141, 0.00639156, 2.02287, 2.58096, 5.82005, 4.80528, -7.53877, -1.78815, 1.78815, -1.08796, 1.79605, 0.712247, 1.91302, 1.78815, -1.78815, 5.17359, -1.82162, -8.80371, -0.475926, -0.0079004, -2.5004}, {-0.526258, -1.45304, -0.57622, 0.141226, 1.44665, -1.44665, -4.21932, 0, 0, -1.02141, 0.00639156, 2.02287, 0.475926, 0.0079004, 2.5004, -2.47792, -7.57474, 7.57474, 1.01707, 7.60821, 3.01713, 1.91302, 1.78815, -1.78815, 1.08796, -1.79605, -0.712247, 3.6097, -0.0334666, -10.5919}, {-0.526258, -1.45304, -0.57622, 0.141226, 1.44665, -1.44665, 1.40644, 3.34745e-18, 1.05944e-15, 3.06422, -0.0191747, -6.0686, 0.475926, 0.0079004, 2.5004, -1.91302, -1.78815, 1.78815, -1.08796, 1.79605, 0.712247, 4.01805, 7.60031, 0.516725, 0.523057, -7.58264, 5.07434, -6.10168, -0.0079004, -2.5004}, {10.941, -1.1204, -1.1204, 1.78885, -1.78885, -1.78885, -3.70338e-16, -2.82096e-16, 1.60567, 1.85814, 1.41539, -0.190281, -4.85864, 8.90493, 8.90493, -2.21115, 2.21115, 0.226431, 4.50793, -0.461631, -8.86902, -5.2214, -7.87269, 0.534693, -4.50793, 0.461631, 2.44635, -2.29678, -1.74951, -1.74951}, {-3.64699, 0.373467, 0.373467, -5.36656, 5.36656, 5.36656, -1.11101e-15, -8.46287e-16, 1.60567, 1.85814, 1.41539, -0.190281, 16.8847, 0.255645, 0.255645, -2.21115, 2.21115, -6.19624, 4.50793, -0.461631, -2.44635, 2.21115, -2.21115, -0.226431, -11.9405, -5.19992, 3.20747, -2.29678, -1.74951, -1.74951}, {-3.64699, 0.373467, 0.373467, 1.78885, -1.78885, -1.78885, 0, 0, -4.817, 1.85814, 1.41539, -0.190281, 2.29678, 1.74951, 1.74951, -9.36656, 9.36656, 7.38185, 19.0959, -1.9555, -3.94022, 2.21115, -2.21115, -0.226431, -4.50793, 0.461631, 2.44635, -9.72932, -7.41106, -0.988391}, {-3.64699, 0.373467, 0.373467, 1.78885, -1.78885, -1.78885, 1.11101e-15, 8.46287e-16, 1.60567, -5.57441, -4.24616, 0.570843, 2.29678, 1.74951, 1.74951, -2.21115, 2.21115, 0.226431, 4.50793, -0.461631, -2.44635, 16.7991, -3.70501, -1.7203, -11.6633, 7.61705, 9.60176, -2.29678, -1.74951, -8.17219}, {-5.57441, -4.24616, -4.24616, 1.78885, -1.78885, -1.78885, 2.85327e-15, 3.15147, -2.92187e-16, -3.64699, -2.778, 0.373467, -11.6633, 7.61705, 7.61705, -2.21115, -1.68428, 2.21115, -2.29678, -18.2508, -1.74951, 16.7991, 12.7963, -3.70501, 2.29678, 5.64494, 1.74951, 4.50793, -0.461631, -0.461631}, {1.85814, 1.41539, 1.41539, -5.36656, 5.36656, 5.36656, -5.70654e-15, 3.15147, 5.84374e-16, -3.64699, -2.778, 0.373467, -11.9405, -5.19992, -5.19992, -2.21115, -14.2902, 2.21115, -2.29678, -5.64494, -1.74951, 2.21115, 1.68428, -2.21115, 16.8847, 16.7569, 0.255645, 4.50793, -0.461631, -0.461631}, {1.85814, 1.41539, 1.41539, 1.78885, -1.78885, -1.78885, 0, -9.45441, 0, -3.64699, -2.778, 0.373467, -4.50793, 0.461631, 0.461631, -9.36656, 5.47113, 9.36656, -9.72932, -11.3065, -7.41106, 2.21115, 1.68428, -2.21115, 2.29678, 5.64494, 1.74951, 19.0959, 10.6504, -1.9555}, {1.85814, 1.41539, 1.41539, 1.78885, -1.78885, -1.78885, -2.85327e-15, 3.15147, 2.92187e-16, 10.941, 8.334, -1.1204, -4.50793, 0.461631, 0.461631, -2.21115, -1.68428, 2.21115, -2.29678, -5.64494, -1.74951, -5.2214, -3.97726, -7.87269, -4.85864, 12.8004, 8.90493, 4.50793, -13.0675, -0.461631}, {0.184458, 9.63611, 9.63611, 0.802834, -0.802834, 0.802834, -1.57551, 1.57551, 1.57551, 0.834161, 2.43936, 0.833693, -4.12769, 8.17399, -0.233398, 0.955079, -0.955079, -2.93979, 8.32547, -4.27918, -4.27918, -4.29172, -8.80237, -0.394979, -2.02344, -2.02286, -2.02286, 0.916356, -4.96265, -2.97794}, {-0.0614861, -3.21204, -3.21204, -2.4085, 2.4085, -2.4085, -1.57551, 1.57551, 1.57551, 0.834161, 2.43936, 0.833693, -0.670412, 17.8108, 15.8261, 7.25711, -7.25711, -9.24183, 2.02344, 2.02286, 2.02286, -0.955079, 0.955079, 2.93979, -5.36008, -11.7803, -5.35763, 0.916356, -4.96265, -2.97794}, {-0.0614861, -3.21204, -3.21204, 0.802834, -0.802834, 0.802834, 4.72653, -4.72653, -4.72653, 0.834161, 2.43936, 0.833693, -0.916356, 4.96265, 2.97794, -2.25626, 2.25626, -6.15113, 2.26938, 14.871, 14.871, -0.955079, 0.955079, 2.93979, -2.02344, -2.02286, -2.02286, -2.42029, -14.7201, -6.31271}, {-0.0614861, -3.21204, -3.21204, 0.802834, -0.802834, 0.802834, -1.57551, 1.57551, 1.57551, -2.50248, -7.31808, -2.50108, -0.916356, 4.96265, 2.97794, 0.955079, -0.955079, -2.93979, 2.02344, 2.02286, 2.02286, -0.709135, 13.8032, 15.7879, -5.23477, 1.18848, -5.23419, 7.21839, -11.2647, -9.27997}, {4.72653, -4.72653, -4.72653, 1.637, 1.63653, 1.63653, 1.57573, 1.57573, -1.57573, -1.63722, -4.78777, -1.6363, -6.62398, -10.5164, -10.5164, -3.97115, -3.97057, -0.0751443, -6.30322, -10.1981, 6.30322, 10.52, 23.1217, 6.62035, 0.000278382, 3.89515, -0.000278382, 0.076001, 3.9703, 3.9703}, {-1.57551, 1.57551, 1.57551, -4.91099, -4.90958, -4.90958, 1.57573, 1.57573, -1.57573, -1.63722, -4.78777, -1.6363, 6.22604, -10.2723, -10.2723, -10.2741, -10.2735, 6.22779, -0.000278382, -3.89515, 0.000278382, 3.97115, 3.97057, 0.0751443, 6.54916, 23.0462, 6.54493, 0.076001, 3.9703, 3.9703}, {-1.57551, 1.57551, 1.57551, 1.637, 1.63653, 1.63653, -4.7272, -4.7272, 4.7272, -1.63722, -4.78777, -1.6363, -0.076001, -3.9703, -3.9703, -10.5191, -10.5167, -6.62125, 6.30176, -10.1972, -6.30176, 3.97115, 3.97057, 0.0751443, 0.000278382, 3.89515, -0.000278382, 6.62488, 23.1214, 10.5155}, {-1.57551, 1.57551, 1.57551, 1.637, 1.63653, 1.63653, 1.57573, 1.57573, -1.57573, 4.91166, 14.3633, 4.90891, -0.076001, -3.9703, -3.9703, -3.97115, -3.97057, -0.0751443, -0.000278382, -3.89515, 0.000278382, 10.2732, -2.33146, -6.22689, -6.5477, -2.65096, -6.54639, -6.22694, -2.33264, 10.2732}, {2.2538, -2.2568, -6.95596, 1.0326, -1.0322, -0.409331, 0.623613, 1.72184, 0.682817, -0.904944, -1.44191, -2.59214, -4.47814, 4.47482, -0.722725, -2.04719, -0.852443, -0.338046, -2.33666, -9.94553, -6.44129, 5.66697, 6.62007, 10.7066, -0.157789, 3.05817, 3.71002, 0.347745, -0.346017, 2.36005}, {-0.751267, 0.752267, 2.31865, -3.09779, 3.0966, 1.22799, 0.623613, 1.72184, 0.682817, -0.904944, -1.44191, -2.59214, 2.65732, -2.66305, -11.6347, -4.54164, -7.73981, -3.06931, 0.157789, -3.05817, -3.71002, 2.04719, 0.852443, 0.338046, 3.46199, 8.8258, 14.0786, 0.347745, -0.346017, 2.36005}, {-0.751267, 0.752267, 2.31865, 1.0326, -1.0322, -0.409331, -1.87084, -5.16552, -2.04845, -0.904944, -1.44191, -2.59214, -0.347745, 0.346017, -2.36005, -6.17758, 3.27636, 1.29928, 3.16286, -6.06723, -12.9846, 2.04719, 0.852443, 0.338046, -0.157789, 3.05817, 3.71002, 3.96752, 5.42161, 12.7286}, {-0.751267, 0.752267, 2.31865, 1.0326, -1.0322, -0.409331, 0.623613, 1.72184, 0.682817, 2.71483, 4.32572, 7.77641, -0.347745, 0.346017, -2.36005, -2.04719, -0.852443, -0.338046, 0.157789, -3.05817, -3.71002, 5.05226, -2.15663, -8.93656, -4.28818, 7.18697, 5.34735, -2.14671, -7.23338, -0.371216}, {4.6308, -4.62902, -1.83569, 1.74378, -1.74182, 1.32959, 2.34612, 3.47392e-16, -3.39235e-15, -2.5463, 0.198817, -1.94149, -7.22258, 7.21305, -7.71818, -5.0554, 2.15301, -1.64347, -10.3764, -1.90726, -0.756347, 15.2406, -2.94828, 9.40942, 0.991964, 1.90726, 0.756347, 0.24744, -0.245751, 2.39981}, {-1.5436, 1.54301, 0.611898, -5.23135, 5.22547, -3.98877, 2.34612, -2.31594e-16, 2.26157e-15, -2.5463, 0.198817, -1.94149, 5.92697, -5.92628, -4.8474, -14.4399, 2.15301, -1.64347, -0.991964, -1.90726, -0.756347, 5.0554, -2.15301, 1.64347, 11.1772, 1.11199, 8.5223, 0.24744, -0.245751, 2.39981}, {-1.5436, 1.54301, 0.611898, 1.74378, -1.74182, 1.32959, -7.03835, 0, 0, -2.5463, 0.198817, -1.94149, -0.24744, 0.245751, -2.39981, -12.0305, 9.12031, -6.96183, 5.18244, -8.07929, -3.20394, 5.0554, -2.15301, 1.64347, 0.991964, 1.90726, 0.756347, 10.4326, -1.04102, 10.1658}, {-1.5436, 1.54301, 0.611898, 1.74378, -1.74182, 1.32959, 2.34612, 1.15797e-16, -1.13078e-15, 7.6389, -0.59645, 5.82447, -0.24744, 0.245751, -2.39981, -5.0554, 2.15301, -1.64347, -0.991964, -1.90726, -0.756347, 11.2298, -8.32504, -0.804126, -5.98318, 8.87456, -4.56202, -9.13703, -0.245751, 2.39981}, {7.47016e-18, 3.62803, 8.88178e-16, -1.45582, 0.0794645, -1.44142, 1.45582, 0.249439, -0.577805, -1.62092e-12, 0.88044, 2.01922, 7.62276, 1.07875, 7.54736, -2.00373e-12, -0.406547, 2.4959, -7.62276, 0.188753, 3.02542, 8.48742e-12, -3.11521, -10.5728, 1.79949, -1.18651, -0.714206, -1.79949, -1.39661, -1.78169}, {-1.75097e-16, -1.20934, 0, 4.36745, -0.238394, 4.32425, 1.45582, 0.249439, -0.577805, -1.62031e-12, 0.88044, 2.01922, 1.79949, 6.23398, 1.78169, -5.82327, -1.4043, 4.80711, -1.79949, 1.18651, 0.714206, 2.00284e-12, 0.406547, -2.4959, 1.79949, -4.70827, -8.79109, -1.79949, -1.39661, -1.78169}, {-7.62205e-17, -1.20934, 0, -1.45582, 0.0794645, -1.44142, -4.36745, -0.748316, 1.73341, -1.61907e-12, 0.88044, 2.01922, 1.79949, 1.39661, 1.78169, 5.82327, -0.724405, 8.26156, -1.79949, 6.02388, 0.714206, 2.00151e-12, 0.406547, -2.4959, 1.79949, -1.18651, -0.714206, -1.79949, -4.91837, -9.85858}, {-1.9973e-16, -1.20934, 4.44089e-16, -1.45582, 0.0794645, -1.44142, 1.45582, 0.249439, -0.577805, 4.86018e-12, -2.64132, -6.05767, 1.79949, 1.39661, 1.78169, -2.00262e-12, -0.406547, 2.4959, -1.79949, 1.18651, 0.714206, 2.00364e-12, 5.24392, -2.4959, 7.62276, -1.50437, 5.05146, -7.62276, -2.39436, 0.529529}, {4.15997e-12, 1.3684, -5.1823, 1.45582, 0.310608, -0.437518, -1.45582, 0.975521, 0.61362, 1.52817e-12, -0.829997, -1.90353, -7.62276, -1.06255, 0.155649, 1.74971e-13, -1.58974, -0.217674, 7.62276, -4.54408, -5.34818, -6.28766e-12, 4.90973, 7.83181, -1.79949, 0.642, 2.8937, 1.79949, -0.179878, 1.59442}, {-1.3859e-12, -0.456132, 1.72743, -4.36745, -0.931824, 1.31255, -1.45582, 0.975521, 0.61362, 1.52713e-12, -0.829997, -1.90353, -1.79949, 2.00441, -8.50415, 5.82327, -5.49183, -2.67215, 1.79949, -0.642, -2.8937, -1.74749e-13, 1.58974, 0.217674, -1.79949, 3.96199, 10.5078, 1.79949, -0.179878, 1.59442}, {-1.38592e-12, -0.456132, 1.72743, 1.45582, 0.310608, -0.437518, 4.36745, -2.92656, -1.84086, 1.52736e-12, -0.829997, -1.90353, -1.79949, 0.179878, -1.59442, -5.82327, -2.83217, 1.5324, 1.79949, 1.18253, -9.80343, -1.74749e-13, 1.58974, 0.217674, -1.79949, 0.642, 2.8937, 1.79949, 3.14011, 9.20856}, {-1.38453e-12, -0.456132, 1.72743, 1.45582, 0.310608, -0.437518, -1.45582, 0.975521, 0.61362, -4.57858e-12, 2.48999, 5.7106, -1.79949, 0.179878, -1.59442, 1.75193e-13, -1.58974, -0.217674, 1.79949, -0.642, -2.8937, 5.36315e-12, 3.41427, -6.69206, -7.62276, -0.600431, 4.64377, 7.62276, -4.08196, -0.860057}, {3.89774, -2.39084, -3.90175, -1.08034, -0.824783, -1.26412, 1.27484, -0.81558, 1.06845, 1.10475, 0.843417, -1.10491, 7.26269, 3.33354, 5.01139, -0.240416, 2.0276, 0.241863, -5.06919, 3.28535, -7.20207, -4.17857, -5.40127, 4.17779, -0.0301684, -0.023032, 2.92828, -2.94133, -0.0344082, 0.0450763}, {-1.29925, 0.796947, 1.30058, 3.24102, 2.47435, 3.79235, 1.27484, -0.81558, 1.06845, 1.10475, 0.843417, -1.10491, 8.13832, -3.15338, -5.24742, -5.33978, 5.28992, -4.03192, 0.0301684, 0.023032, -2.92828, 0.240416, -2.0276, -0.241863, -4.44916, -3.3967, 7.34794, -2.94133, -0.0344082, 0.0450763}, {-1.29925, 0.796947, 1.30058, -1.08034, -0.824783, -1.26412, -3.82452, 2.44674, -3.20534, 1.10475, 0.843417, -1.10491, 2.94133, 0.0344082, -0.0450763, 4.08094, 5.32673, 5.29833, 5.22716, -3.16475, -8.13062, 0.240416, -2.0276, -0.241863, -0.0301684, -0.023032, 2.92828, -7.36032, -3.40808, 4.46473}, {-1.29925, 0.796947, 1.30058, -1.08034, -0.824783, -1.26412, 1.27484, -0.81558, 1.06845, -3.31424, -2.53025, 3.31474, 2.94133, 0.0344082, -0.0450763, -0.240416, 2.0276, 0.241863, 0.0301684, 0.023032, -2.92828, 5.43741, -5.21539, -5.4442, 4.29119, 3.2761, 7.98475, -8.04069, 3.22791, -4.22871}, {-7.02938, 0, 7.99361e-15, 0, 0, -2.34462, -1.02079e-11, 1.78885, 0.00114147, -2.34313, -1.78885, 2.34348, -2.89626, 0, 12.2766, 1.26176e-11, -2.21115, 2.8967, -2.89626, -9.36656, -0.00597681, 9.3725, 9.36656, -12.2706, 2.89626, 2.21115, 0.00141093, 2.89626, 0, -2.89811}, {2.34313, 0, 4.44089e-15, 0, 0, 7.03386, -1.02099e-11, 1.78885, 0.00114147, -2.34313, -1.78885, 2.34348, -12.2688, 0, 2.89811, 5.346e-11, -9.36656, 2.89213, -2.89626, -2.21115, -0.00141093, -1.26208e-11, 2.21115, -2.8967, 12.2688, 9.36656, -9.37251, 2.89626, 0, -2.89811}, {2.34313, -4.21885e-15, 2.22045e-15, 0, 0, -2.34462, 3.06361e-11, -5.36656, -0.00342441, -2.34313, -1.78885, 2.34348, -2.89626, 5.32907e-15, 2.89811, 1.26228e-11, -2.21115, 12.2752, -12.2688, -2.21115, -0.00141093, -1.26233e-11, 2.21115, -2.8967, 2.89626, 2.21115, 0.00141093, 12.2688, 7.15542, -12.272}, {2.34313, 3.10862e-15, -3.9968e-15, 0, 0, -2.34462, -1.0211e-11, 1.78885, 0.00114147, 7.02938, 5.36656, -7.03044, -2.89626, -3.55271e-15, 2.89811, 1.26215e-11, -2.21115, 2.8967, -2.89626, -2.21115, -0.00141093, -9.3725, 2.21115, -2.8967, 2.89626, 2.21115, 9.37989, 2.89626, -7.15542, -2.90268}, {-4.72653, 4.72653, 4.72653, -0.802949, -0.802719, 0.802949, -3.21204, 3.21204, -0.0614861, 2.43948, -0.833808, 0.834046, 2.25686, 6.15053, -2.25686, 4.96279, -2.97808, -0.916498, 14.871, -14.871, 2.26938, -14.7207, 6.31331, -2.41969, -2.02286, 2.02286, -2.02344, 0.954937, -2.93965, -0.954937}, {1.57551, -1.57551, -1.57551, 2.40885, 2.40816, -2.40885, -3.21204, 3.21204, -0.0614861, 2.43948, -0.833808, 0.834046, -7.25697, 9.24169, 7.25697, 17.8109, -15.8262, -0.670554, 2.02286, -2.02286, 2.02344, -4.96279, 2.97808, 0.916498, -11.7808, 5.35809, -5.35962, 0.954937, -2.93965, -0.954937}, {1.57551, -1.57551, -1.57551, -0.802949, -0.802719, 0.802949, 9.63611, -9.63611, 0.184458, 2.43948, -0.833808, 0.834046, -0.954937, 2.93965, 0.954937, 8.17459, 0.232798, -4.12829, -4.27918, 4.27918, 8.32547, -4.96279, 2.97808, 0.916498, -2.02286, 2.02286, -2.02344, -8.80297, 0.39558, -4.29112}, {1.57551, -1.57551, -1.57551, -0.802949, -0.802719, 0.802949, -3.21204, 3.21204, -0.0614861, -7.31843, 2.50142, -2.50214, -0.954937, 2.93965, 0.954937, 4.96279, -2.97808, -0.916498, 2.02286, -2.02286, 2.02344, -11.2648, 9.28012, 7.21853, 1.18894, 5.23374, -5.23523, 13.8031, -15.7878, -0.708993}, {-4.72653, 4.72653, 4.72653, 1.57596, 1.57551, 1.57551, 1.63653, -1.63653, 1.637, -4.788, 1.63653, -1.637, -10.1993, -6.30204, -6.30204, -3.97085, 0.0754226, -3.97087, -10.5164, 10.5164, -6.62398, 23.1228, -6.62153, 10.5189, 3.9703, -3.9703, 0.076001, 3.89543, -1.81144e-12, -1.80922e-12}, {1.57551, -1.57551, -1.57551, -4.72788, -4.72653, -4.72653, 1.63653, -1.63653, 1.637, -4.788, 1.63653, -1.637, -10.1975, 6.30204, 6.30204, -10.517, 6.62153, -10.5189, -3.9703, 3.9703, -0.076001, 3.97085, -0.0754226, 3.97087, 23.1223, -10.5164, 6.62398, 3.89543, -1.81766e-12, -1.81499e-12}, {1.57551, -1.57551, -1.57551, 1.57596, 1.57551, 1.57551, -4.90958, 4.90958, -4.91099, -4.788, 1.63653, -1.637, -3.89543, 1.81677e-12, 1.81988e-12, -10.2747, -6.22661, -10.2729, -10.2723, 10.2723, 6.22604, 3.97085, -0.0754226, 3.97087, 3.9703, -3.9703, 0.076001, 23.0474, -6.54611, 6.54798}, {1.57551, -1.57551, -1.57551, 1.57596, 1.57551, 1.57551, 1.63653, -1.63653, 1.637, 14.364, -4.90958, 4.91099, -3.89543, 1.81632e-12, 1.81677e-12, -3.97085, 0.0754226, -3.97087, -3.9703, 3.9703, -0.076001, -2.33118, 6.22661, 10.2729, -2.33354, -10.2723, -6.22604, -2.65068, 6.54611, -6.54798}, {-1.1204, 1.1204, 10.941, 0, -1.60567, 0, -1.78885, 1.78885, 1.78885, 1.41539, 0.190281, 1.85814, -0.461631, 8.86902, 4.50793, 2.21115, -0.226431, -2.21115, 8.90493, -8.90493, -4.85864, -7.87269, -0.534693, -5.2214, -1.74951, 1.74951, -2.29678, 0.461631, -2.44635, -4.50793}, {0.373467, -0.373467, -3.64699, 0, 4.817, 0, -1.78885, 1.78885, 1.78885, 1.41539, 0.190281, 1.85814, -1.9555, 3.94022, 19.0959, 9.36656, -7.38185, -9.36656, 1.74951, -1.74951, 2.29678, -2.21115, 0.226431, 2.21115, -7.41106, 0.988391, -9.72932, 0.461631, -2.44635, -4.50793}, {0.373467, -0.373467, -3.64699, 0, -1.60567, 0, 5.36656, -5.36656, -5.36656, 1.41539, 0.190281, 1.85814, -0.461631, 2.44635, 4.50793, 2.21115, 6.19624, -2.21115, 0.255645, -0.255645, 16.8847, -2.21115, 0.226431, 2.21115, -1.74951, 1.74951, -2.29678, -5.19992, -3.20747, -11.9405}, {0.373467, -0.373467, -3.64699, 0, -1.60567, 0, -1.78885, 1.78885, 1.78885, -4.24616, -0.570843, -5.57441, -0.461631, 2.44635, 4.50793, 2.21115, -0.226431, -2.21115, 1.74951, -1.74951, 2.29678, -3.70501, 1.7203, 16.7991, -1.74951, 8.17219, -2.29678, 7.61705, -9.60176, -11.6633}, {-9.45441, 1.33227e-15, 1.59872e-14, -1.78885, 1.78885, 1.78885, 1.41539, -1.41539, 1.85814, -2.778, -0.373467, -3.64699, 5.47113, -9.36656, -9.36656, 0.461631, -0.461631, -4.50793, -11.3065, 7.41106, -9.72932, 10.6504, 1.9555, 19.0959, 5.64494, -1.74951, 2.29678, 1.68428, 2.21115, 2.21115}, {3.15147, -1.88738e-15, -7.10543e-15, 5.36656, -5.36656, -5.36656, 1.41539, -1.41539, 1.85814, -2.778, -0.373467, -3.64699, -14.2902, -2.21115, -2.21115, -5.19992, 5.19992, -11.9405, -5.64494, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, 16.7569, -0.255645, 16.8847, 1.68428, 2.21115, 2.21115}, {3.15147, 2.55351e-15, -3.10862e-15, -1.78885, 1.78885, 1.78885, -4.24616, 4.24616, -5.57441, -2.778, -0.373467, -3.64699, -1.68428, -2.21115, -2.21115, 7.61705, -7.61705, -11.6633, -18.2508, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, 5.64494, -1.74951, 2.29678, 12.7963, 3.70501, 16.7991}, {3.15147, 6.10623e-16, 3.9968e-15, -1.78885, 1.78885, 1.78885, 1.41539, -1.41539, 1.85814, 8.334, 1.1204, 10.941, -1.68428, -2.21115, -2.21115, 0.461631, -0.461631, -4.50793, -5.64494, 1.74951, -2.29678, -13.0675, 0.461631, 4.50793, 12.8004, -8.90493, -4.85864, -3.97726, 7.87269, -5.2214}, {0.889469, 0.890856, -5.70584, -0.741046, -0.742202, -0.293121, 1.30296, -1.03813, 0.515387, -0.265426, 2.07729, -2.12421, 4.24665, 4.25327, -0.816132, -0.694566, 2.20061, -0.274736, -6.45592, 5.80278, -5.04953, 1.75627, -10.5098, 8.77158, 1.24407, -1.65026, 2.98799, -1.28247, -1.28446, 1.98862}, {-0.29649, -0.296952, 1.90195, 2.22314, 2.2266, 0.879363, 1.30296, -1.03813, 0.515387, -0.265426, 2.07729, -2.12421, 2.46842, 2.47227, -9.5964, -5.90641, 6.35314, -2.33628, -1.24407, 1.65026, -2.98799, 0.694566, -2.20061, 0.274736, 2.30577, -9.9594, 11.4848, -1.28247, -1.28446, 1.98862}, {-0.29649, -0.296952, 1.90195, -0.741046, -0.742202, -0.293121, -3.90889, 3.1144, -1.54616, -0.265426, 2.07729, -2.12421, 1.28247, 1.28446, -1.98862, 2.26962, 5.16942, 0.897749, -0.0581089, 2.83806, -10.5958, 0.694566, -2.20061, 0.274736, 1.24407, -1.65026, 2.98799, -0.220762, -9.59361, 10.4855}, {-0.29649, -0.296952, 1.90195, -0.741046, -0.742202, -0.293121, 1.30296, -1.03813, 0.515387, 0.796277, -6.23186, 6.37263, 1.28247, 1.28446, -1.98862, -0.694566, 2.20061, -0.274736, -1.24407, 1.65026, -2.98799, 1.88052, -1.01281, -7.33305, 4.20825, 1.31855, 4.16047, -6.49431, 2.86807, -0.0729313}, {1.60243, -4.68893, 4.44089e-16, 1.23856, -0.534131, 1.50236e-16, -0.868329, 0.25394, -1.31177, 0.163908, -1.28279, 1.31177, -5.82496, 0.864798, -6.66134e-16, -0.457635, 0.346335, 1.62143, 5.20686, -3.26159, 6.86849, -0.197999, 4.78481, -6.86849, -1.73355, 2.24583, -1.62143, 0.870711, 1.27173, 0}, {-0.534143, 1.56298, -2.22045e-16, -3.71569, 1.60239, -6.76061e-16, -0.868329, 0.25394, -1.31177, 0.163908, -1.28279, 1.31177, 1.26586, -7.52364, 8.88178e-16, 3.01568, -0.669425, 6.86849, 1.73355, -2.24583, 1.62143, 0.457635, -0.346335, -1.62143, -2.38918, 7.37698, -6.86849, 0.870711, 1.27173, 0}, {-0.534143, 1.56298, 2.22045e-16, 1.23856, -0.534131, -3.00472e-16, 2.60499, -0.76182, 3.9353, 0.163908, -1.28279, 1.31177, -0.870711, -1.27173, 0, -5.41189, 2.48286, 1.62143, 3.87012, -8.49775, 1.62143, 0.457635, -0.346335, -1.62143, -1.73355, 2.24583, -1.62143, 0.215077, 6.40287, -5.24706}, {-0.534143, 1.56298, 0, 1.23856, -0.534131, 4.50708e-16, -0.868329, 0.25394, -1.31177, -0.491725, 3.84836, -3.9353, -0.870711, -1.27173, -4.44089e-16, -0.457635, 0.346335, 1.62143, 1.73355, -2.24583, 1.62143, 2.59421, -6.59825, -1.62143, -6.6878, 4.38236, -1.62143, 4.34403, 0.255965, 5.24706}, {3.16808, 2.71157e-16, -8.88178e-16, -0.300269, 1.44665, -1.44665, 0.153249, -1.44665, -0.572575, 1.20305, -1.58738e-12, 2.01922, 2.87755, -7.57474, 7.57474, 0.181727, -1.96199e-12, 2.4959, 0.502898, 7.57474, 2.99804, -4.99391, 8.31151e-12, -10.5728, -1.11589, -1.78815, -0.707741, -1.67647, 1.78815, -1.78815}, {-1.05603, 1.56152e-17, 0, 0.900808, -4.33994, 4.33994, 0.153249, -1.44665, -0.572575, 1.20305, -1.58652e-12, 2.01922, 5.90057, -1.78815, 1.78815, -0.431268, 5.78659, 4.7862, 1.11589, 1.78815, 0.707741, -0.181727, 1.9611e-12, -2.4959, -5.92808, -1.78815, -8.78463, -1.67647, 1.78815, -1.78815}, {-1.05603, -4.03605e-17, 0, -0.300269, 1.44665, -1.44665, -0.459746, 4.33994, 1.71772, 1.20305, -1.58802e-12, 2.01922, 1.67647, -1.78815, 1.78815, 1.3828, -5.78659, 8.28248, 5.34, 1.78815, 0.707741, -0.181727, 1.96287e-12, -2.4959, -1.11589, -1.78815, -0.707741, -6.48866, 1.78815, -9.86504}, {-1.05603, -1.63709e-17, 4.44089e-16, -0.300269, 1.44665, -1.44665, 0.153249, -1.44665, -0.572575, -3.60914, 4.76214e-12, -6.05767, 1.67647, -1.78815, 1.78815, 0.181727, -1.96221e-12, 2.4959, 1.11589, 1.78815, 0.707741, 4.04237, 1.96294e-12, -2.4959, 0.0851836, -7.57474, 5.07885, -2.28947, 7.57474, 0.502145}, {-1.48316, 4.33994, 1.33227e-15, 0.561638, 1.44665, 4.17162e-16, -0.27448, -1.03171e-12, 1.31177, -0.781545, 1.03171e-12, -1.31177, -3.55187, -5.78659, -1.77636e-15, -0.354947, -1.78815, -1.62143, 0.8261, 1.78815, -6.86849, 3.48113, 1.78815, 6.86849, 0.27182, -1.78815, 1.62143, 1.30532, 0, 0}, {0.494387, -1.44665, 2.22045e-16, -1.68492, -4.33994, 8.34324e-16, -0.27448, -1.03124e-12, 1.31177, -0.781545, 1.03124e-12, -1.31177, -3.28287, 5.78659, -8.88178e-16, 0.742973, -1.78815, -6.86849, -0.27182, 1.78815, -1.62143, 0.354947, 1.78815, 1.62143, 3.398, -1.78815, 6.86849, 1.30532, 0, 0}, {0.494387, -1.44665, -2.22045e-16, 0.561638, 1.44665, 2.78108e-16, 0.82344, 3.09443e-12, -3.9353, -0.781545, 1.03148e-12, -1.31177, -1.30532, 3.59135e-16, 0, -2.6015, -7.57474, -1.62143, -2.24937, 7.57474, -1.62143, 0.354947, 1.78815, 1.62143, 0.27182, -1.78815, 1.62143, 4.4315, -4.1259e-12, 5.24706}, {0.494387, -1.44665, 2.22045e-16, 0.561638, 1.44665, -2.78108e-16, -0.27448, -1.03171e-12, 1.31177, 2.34464, -3.09513e-12, 3.9353, -1.30532, 3.59135e-16, 0, -0.354947, -1.78815, -1.62143, -0.27182, 1.78815, -1.62143, -1.6226, 7.57474, 1.62143, -1.97473, -7.57474, 1.62143, 2.40324, 4.12684e-12, -5.24706}, {4.33994, 0.162335, 4.33994, 0, 1.38248, 0, 1.44665, 0.246581, -0.572575, -1.76997e-12, -1.57494, 2.01922, 1.78815, -7.17185, 1.78815, -1.78815, -2.01362, 0.707741, -5.78659, -1.22423, 4.7862, 1.78815, 8.3134, -8.78463, 2.1878e-12, 0.237905, -2.4959, -1.78815, 1.64195, -1.78815}, {-1.44665, -0.0541117, -1.44665, -1.48949e-15, -4.14743, -5.64752e-15, 1.44665, 0.246581, -0.572575, -1.77017e-12, -1.57494, 2.01922, 7.57474, -1.4255, 7.57474, -7.57474, -2.99995, 2.99804, -2.18708e-12, -0.237905, 2.4959, 1.78815, 2.01362, -0.707741, 9.26812e-12, 6.53768, -10.5728, -1.78815, 1.64195, -1.78815}, {-1.44665, -0.0541117, -1.44665, -2.42885e-27, 1.38248, 2.77202e-15, -4.33994, -0.739742, 1.71772, -1.76924e-12, -1.57494, 2.01922, 1.78815, -1.64195, 1.78815, -1.78815, -7.54353, 0.707741, 5.78659, -0.021458, 8.28248, 1.78815, 2.01362, -0.707741, 2.1869e-12, 0.237905, -2.4959, -1.78815, 7.94173, -9.86504}, {-1.44665, -0.0541117, -1.44665, 0, 1.38248, 0, 1.44665, 0.246581, -0.572575, 5.31045e-12, 4.72483, -6.05767, 1.78815, -1.64195, 1.78815, -1.78815, -2.01362, 0.707741, -2.18766e-12, -0.237905, 2.4959, 7.57474, 2.23007, 5.07885, 2.18802e-12, -5.292, -2.4959, -7.57474, 0.655625, 0.502145}, {-4.33994, 1.02197, -0.540949, -9.62561e-13, 0.52571, 1.09845, -1.44665, -1.05053, -0.169142, 9.72352e-13, 0.86548, -1.10962, -1.78815, -2.33158, -5.97445, 1.78815, 0.648718, -1.14869, 5.78659, 5.92175, 0.662758, -1.78815, -4.11064, 5.58719, -1.2103e-14, -1.71961, 0.0138116, 1.78815, 0.22874, 1.58064}, {1.44665, -0.340656, 0.180316, 2.88884e-12, -1.57713, -3.29535, -1.44665, -1.05053, -0.169142, 9.72241e-13, 0.86548, -1.10962, -7.57474, 1.13389, -2.30191, 7.57474, 4.85086, -0.472119, 1.11288e-14, 1.71961, -0.0138116, -1.78815, -0.648718, 1.14869, -3.90045e-12, -5.18153, 4.45231, 1.78815, 0.22874, 1.58064}, {1.44665, -0.340656, 0.180316, -9.63744e-13, 0.52571, 1.09845, 4.33994, 3.1516, 0.507427, 9.73548e-13, 0.86548, -1.10962, -1.78815, -0.22874, -1.58064, 1.78815, -1.45412, -5.54249, -5.78659, 3.08223, -0.735077, -1.78815, -0.648718, 1.14869, -1.21179e-14, -1.71961, 0.0138116, 1.78815, -3.23318, 6.01914}, {1.44665, -0.340656, 0.180316, -9.6335e-13, 0.52571, 1.09845, -1.44665, -1.05053, -0.169142, -2.91945e-12, -2.59644, 3.32887, -1.78815, -0.22874, -1.58064, 1.78815, 0.648718, -1.14869, 1.17538e-14, 1.71961, -0.0138116, -7.57474, 0.713906, 0.427423, 3.84129e-12, -3.82245, -4.37999, 7.57474, 4.43088, 2.25721}, {-4.74899, 4.74899, 3.61742, 0.497745, -0.497745, 2.77232, -2.29648, -0.854984, 1.74929, 0.215741, 2.93573, -3.3158, -4.56292, 4.56292, -13.0256, 2.22336, 1.67207, -5.58902, 10.0679, 6.43345, -7.66893, -3.08633, -13.415, 18.8522, -0.881918, -3.01351, 0.671778, 2.57194, -2.57194, 1.93632}, {1.583, -1.583, -1.20581, -1.49324, 1.49324, -8.31697, -2.29648, -0.854984, 1.74929, 0.215741, 2.93573, -3.3158, -8.90393, 8.90393, 2.88691, 11.4093, 5.092, -12.5862, 0.881918, 3.01351, -0.671778, -2.22336, -1.67207, 5.58902, -1.74488, -14.7564, 13.935, 2.57194, -2.57194, 1.93632}, {1.583, -1.583, -1.20581, 0.497745, -0.497745, 2.77232, 6.88945, 2.56495, -5.24786, 0.215741, 2.93573, -3.3158, -2.57194, 2.57194, -1.93632, 0.232383, 3.66305, -16.6783, -5.45007, 9.3455, 4.15145, -2.22336, -1.67207, 5.58902, -0.881918, -3.01351, 0.671778, 1.70898, -14.3148, 15.1995}, {1.583, -1.583, -1.20581, 0.497745, -0.497745, 2.77232, -2.29648, -0.854984, 1.74929, -0.647223, -8.80718, 9.94741, -2.57194, 2.57194, -1.93632, 2.22336, 1.67207, -5.58902, 0.881918, 3.01351, -0.671778, -8.55536, 4.65993, 10.4123, -2.8729, -1.02253, -10.4175, 11.7579, 0.847997, -5.06083}, {6.34574, -4.8337, 3.10867, 0.725317, 2.59898, -0.725317, 1.60925, -1.2258, -1.60925, -0.219319, -2.98441, 3.37079, -1.18322, -15.6, 5.07865, -2.88568, -1.69734, 2.88568, -5.81154, 4.42679, 9.70697, 3.76295, 13.635, -16.3688, -0.625449, 0.47642, -3.26998, -1.71805, 5.20411, -2.17738}, {-2.11525, 1.61123, -1.03622, -2.17595, -7.79693, 2.17595, 1.60925, -1.2258, -1.60925, -0.219319, -2.98441, 3.37079, 10.179, -11.649, 6.32227, -9.32267, 3.20588, 9.32267, 0.625449, -0.47642, 3.26998, 2.88568, 1.69734, -2.88568, 0.251825, 12.4141, -16.7531, -1.71805, 5.20411, -2.17738}, {-2.11525, 1.61123, -1.03622, 0.725317, 2.59898, -0.725317, -4.82774, 3.67741, 4.82774, -0.219319, -2.98441, 3.37079, 1.71805, -5.20411, 2.17738, -5.78695, -12.0932, 5.78695, 9.08643, -6.92136, 7.41487, 2.88568, 1.69734, -2.88568, -0.625449, 0.47642, -3.26998, -0.840773, 17.1417, -15.6605}, {-2.11525, 1.61123, -1.03622, 0.725317, 2.59898, -0.725317, 1.60925, -1.2258, -1.60925, 0.657956, 8.95322, -10.1124, 1.71805, -5.20411, 2.17738, -2.88568, -1.69734, 2.88568, 0.625449, -0.47642, 3.26998, 11.3467, -4.7476, 1.25921, -3.52672, -9.91949, -0.36871, -8.15504, 10.1073, 4.25961}, {-5.36656, 5.36656, -5.36656, -1.78885, 1.78885, 1.36261, 0, -3.15147, 0, 0, 3.15147, -3.15147, 7.15542, -7.15542, -9.34589, 2.21115, 1.68428, -1.68428, -2.21115, 18.7124, -2.21115, -2.21115, -14.2902, 14.2902, 2.21115, -6.10657, 2.21115, 0, 3.63087e-12, 3.89543}, {1.78885, -1.78885, 1.78885, 5.36656, -5.36656, -4.08784, 0, -3.15147, 0, 0, 3.15147, -3.15147, -7.15542, 7.15542, -11.0508, 2.21115, 14.2902, -1.68428, -2.21115, 6.10657, -2.21115, -2.21115, -1.68428, 1.68428, 2.21115, -18.7124, 14.817, 0, 3.63087e-12, 3.89543}, {1.78885, -1.78885, 1.78885, -1.78885, 1.78885, 1.36261, 0, 9.45441, 0, 0, 3.15147, -3.15147, -4.44089e-16, -3.63354e-12, -3.89543, 9.36656, -5.47113, -7.13474, -9.36656, 13.262, -9.36656, -2.21115, -1.68428, 1.68428, 2.21115, -6.10657, 2.21115, 0, -12.6059, 16.5013}, {1.78885, -1.78885, 1.78885, -1.78885, 1.78885, 1.36261, 0, -3.15147, 0, 0, -9.45441, 9.45441, -4.44089e-16, -3.62865e-12, -3.89543, 2.21115, 1.68428, -1.68428, -2.21115, 6.10657, -2.21115, -9.36656, 5.47113, -5.47113, 9.36656, -13.262, -3.23931, 0, 12.6059, 3.89543}, {0, -1.77636e-15, 9.45441, -1.78885, 1.36261, 1.78885, 1.78885, 1.78885, -1.78885, 0, -3.15147, 3.15147, 9.36656, -7.13474, -5.47113, 0, -3.89543, -3.6291e-12, -9.36656, -9.36656, 13.262, 0, 16.5013, -12.6059, 2.21115, 2.21115, -6.10657, -2.21115, 1.68428, -1.68428}, {3.08199e-16, 0, -3.15147, 5.36656, -4.08784, -5.36656, 1.78885, 1.78885, -1.78885, -3.08199e-16, -3.15147, 3.15147, 2.21115, -1.68428, 14.2902, -7.15542, -11.0508, 7.15542, -2.21115, -2.21115, 6.10657, -7.65114e-32, 3.89543, 3.62544e-12, 2.21115, 14.817, -18.7124, -2.21115, 1.68428, -1.68428}, {-3.08199e-16, 8.88178e-16, -3.15147, -1.78885, 1.36261, 1.78885, -5.36656, -5.36656, 5.36656, 3.08199e-16, -3.15147, 3.15147, 2.21115, -1.68428, 1.68428, 7.15542, -9.34589, -7.15542, -2.21115, -2.21115, 18.7124, 7.65114e-32, 3.89543, 3.62633e-12, 2.21115, 2.21115, -6.10657, -2.21115, 14.2902, -14.2902}, {-3.08199e-16, 0, -3.15147, -1.78885, 1.36261, 1.78885, 1.78885, 1.78885, -1.78885, -9.24597e-16, 9.45441, -9.45441, 2.21115, -1.68428, 1.68428, 0, -3.89543, -3.62776e-12, -2.21115, -2.21115, 6.10657, 1.2328e-15, 3.89543, 12.6059, 9.36656, -3.23931, -13.262, -9.36656, -5.47113, 5.47113}, {1.6947, 4.26991, -0.547096, 2.00519, -0.0353642, -0.0353642, 0.45376, 1.14328, 1.14328, -1.89405, 0.315388, -1.29028, -9.80104, 1.94447, -0.0402465, -3.03942, -1.36946, -1.36946, -1.67766, -4.22699, -6.2117, 10.6156, 0.107907, 6.53058, -0.137376, -0.346128, 1.63859, 1.78029, -1.80301, 0.181703}, {-0.5649, -1.4233, 0.182365, -6.01556, 0.106093, 0.106093, 0.45376, 1.14328, 1.14328, -1.89405, 0.315388, -1.29028, 0.479306, 7.49622, -0.911165, -4.85446, -5.94257, -5.94257, 0.137376, 0.346128, -1.63859, 3.03942, 1.36946, 1.36946, 7.43881, -1.60768, 6.79971, 1.78029, -1.80301, 0.181703}, {-0.5649, -1.4233, 0.182365, 2.00519, -0.0353642, -0.0353642, -1.36128, -3.42984, -3.42984, -1.89405, 0.315388, -1.29028, -1.78029, 1.80301, -0.181703, -11.0602, -1.228, -1.228, 2.39697, 6.03934, -2.36805, 3.03942, 1.36946, 1.36946, -0.137376, -0.346128, 1.63859, 9.35648, -3.06456, 5.34282}, {-0.5649, -1.4233, 0.182365, 2.00519, -0.0353642, -0.0353642, 0.45376, 1.14328, 1.14328, 5.68214, -0.946164, 3.87084, -1.78029, 1.80301, -0.181703, -3.03942, -1.36946, -1.36946, 0.137376, 0.346128, -1.63859, 5.29902, 7.06267, 0.639997, -8.15812, -0.204671, 1.78004, -0.0347482, -6.37613, -4.39141}, {-1.35612, -3.4307, -3.42632, -0.759405, 0.424983, -1.91868, -2.45728, -1.10819, -1.10678, 2.76464, -0.460356, 1.88336, 3.41754, -3.63876, 8.63464, 3.97604, 0.844494, 3.73968, 12.3077, 4.38905, 4.38345, -15.0346, 0.996929, -11.2731, -2.47861, 0.0437235, 0.0436678, -0.379924, 1.93883, -0.959903}, {0.45204, 1.14357, 1.14211, 2.27821, -1.27495, 5.75605, -2.45728, -1.10819, -1.10678, 2.76464, -0.460356, 1.88336, -1.42823, -6.51309, -3.60853, 13.8052, 5.27726, 8.1668, 2.47861, -0.0437235, -0.0436678, -3.97604, -0.844494, -3.73968, -13.5372, 1.88515, -7.48976, -0.379924, 1.93883, -0.959903}, {0.45204, 1.14357, 1.14211, -0.759405, 0.424983, -1.91868, 7.37184, 3.32458, 3.32034, 2.76464, -0.460356, 1.88336, 0.379924, -1.93883, 0.959903, 7.01366, -0.855437, 11.4144, 0.670454, -4.61799, -4.6121, -3.97604, -0.844494, -3.73968, -2.47861, 0.0437235, 0.0436678, -11.4385, 3.78026, -8.49333}, {0.45204, 1.14357, 1.14211, -0.759405, 0.424983, -1.91868, -2.45728, -1.10819, -1.10678, -8.29393, 1.38107, -5.65007, 0.379924, -1.93883, 0.959903, 3.97604, 0.844494, 3.73968, 2.47861, -0.0437235, -0.0436678, -5.7842, -5.41876, -8.30811, 0.559007, -1.65621, 7.71841, 9.44919, 6.3716, 3.46721}, {-2.4085, -2.4085, 2.4085, 1.63676, -1.63676, 1.63676, -0.802834, -0.802834, -0.802834, -1.63676, 1.63676, -0.0310931, -9.56255, 7.57784, -7.57784, -1.03079, 3.01551, -1.03079, 3.21134, 3.21134, 5.19605, 7.57784, -9.56255, 1.15516, 3.73035e-14, 3.64153e-14, -1.98471, 3.01551, -1.03079, 1.03079}, {0.802834, 0.802834, -0.802834, -4.91028, 4.91028, -4.91028, -0.802834, -0.802834, -0.802834, -1.63676, 1.63676, -0.0310931, -6.22684, -2.18055, 2.18055, 2.18055, 6.22684, 2.18055, -3.73035e-14, -3.68594e-14, 1.98471, 1.03079, -3.01551, 1.03079, 6.54704, -6.54704, -1.86034, 3.01551, -1.03079, 1.03079}, {0.802834, 0.802834, -0.802834, 1.63676, -1.63676, 1.63676, 2.4085, 2.4085, 2.4085, -1.63676, 1.63676, -0.0310931, -3.01551, 1.03079, -1.03079, -7.57784, 9.56255, -7.57784, -3.21134, -3.21134, 5.19605, 1.03079, -3.01551, 1.03079, 3.77476e-14, 3.68594e-14, -1.98471, 9.56255, -7.57784, 1.15516}, {0.802834, 0.802834, -0.802834, 1.63676, -1.63676, 1.63676, -0.802834, -0.802834, -0.802834, 4.91028, -4.91028, 0.0932794, -3.01551, 1.03079, -1.03079, -1.03079, 3.01551, -1.03079, -3.68594e-14, -3.68594e-14, 1.98471, -2.18055, -6.22684, 4.24213, -6.54704, 6.54704, -8.53176, 6.22684, 2.18055, 4.24213}, {-2.4085, -2.4085, 2.4085, -2.4396, 0.833927, -0.833927, -1.57573, 1.57573, 1.57573, 3.2125, -3.2125, 0.0610269, 11.7815, -5.35886, 5.35886, 4.96322, -2.97851, -0.916924, 7.25829, -9.24301, -7.25829, -17.8132, 15.8285, 0.672816, -0.955357, 2.94007, 0.955357, -2.02315, 2.02315, -2.02315}, {0.802834, 0.802834, -0.802834, 7.31879, -2.50178, 2.50178, -1.57573, 1.57573, 1.57573, 3.2125, -3.2125, 0.0610269, -1.18819, -5.23448, 5.23448, 11.2662, -9.28144, -7.21986, 0.955357, -2.94007, -0.955357, -4.96322, 2.97851, 0.916924, -13.8053, 15.7901, 0.71125, -2.02315, 2.02315, -2.02315}, {0.802834, 0.802834, -0.802834, -2.4396, 0.833927, -0.833927, 4.7272, -4.7272, -4.7272, 3.2125, -3.2125, 0.0610269, 2.02315, -2.02315, 2.02315, 14.7216, -6.31421, 2.41878, -2.25598, -6.15141, 2.25598, -4.96322, 2.97851, 0.916924, -0.955357, 2.94007, 0.955357, -14.8731, 14.8731, -2.26726}, {0.802834, 0.802834, -0.802834, -2.4396, 0.833927, -0.833927, -1.57573, 1.57573, 1.57573, -9.63749, 9.63749, -0.183081, 2.02315, -2.02315, 2.02315, 4.96322, -2.97851, -0.916924, 0.955357, -2.94007, -0.955357, -8.17456, -0.232831, 4.12826, 8.80302, -0.395637, 4.29107, 4.27979, -4.27979, -8.32609}, {-8.88178e-16, 0, 4.817, 3.64699, 0.373467, -0.373467, -1.78885, -1.78885, 1.78885, -1.85814, 1.41539, 0.190281, -19.0959, -1.9555, 3.94022, -2.29678, 1.74951, -1.74951, 9.36656, 9.36656, -7.38185, 9.72932, -7.41106, 0.988391, -2.21115, -2.21115, 0.226431, 4.50793, 0.461631, -2.44635}, {2.22045e-16, -4.44089e-16, -1.60567, -10.941, -1.1204, 1.1204, -1.78885, -1.78885, 1.78885, -1.85814, 1.41539, 0.190281, -4.50793, -0.461631, 8.86902, 4.85864, 8.90493, -8.90493, 2.21115, 2.21115, -0.226431, 2.29678, -1.74951, 1.74951, 5.2214, -7.87269, -0.534693, 4.50793, 0.461631, -2.44635}, {-6.66134e-16, -4.44089e-16, -1.60567, 3.64699, 0.373467, -0.373467, 5.36656, 5.36656, -5.36656, -1.85814, 1.41539, 0.190281, -4.50793, -0.461631, 2.44635, -16.8847, 0.255645, -0.255645, 2.21115, 2.21115, 6.19624, 2.29678, -1.74951, 1.74951, -2.21115, -2.21115, 0.226431, 11.9405, -5.19992, -3.20747}, {-6.66134e-16, 0, -1.60567, 3.64699, 0.373467, -0.373467, -1.78885, -1.78885, 1.78885, 5.57441, -4.24616, -0.570843, -4.50793, -0.461631, 2.44635, -2.29678, 1.74951, -1.74951, 2.21115, 2.21115, -0.226431, 2.29678, -1.74951, 8.17219, -16.7991, -3.70501, 1.7203, 11.6633, 7.61705, -9.60176}, {5.57441, -4.24616, 4.24616, -1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 3.64699, -2.778, -0.373467, 11.6633, 7.61705, -7.61705, 2.21115, -1.68428, -2.21115, 2.29678, -18.2508, 1.74951, -16.7991, 12.7963, 3.70501, -2.29678, 5.64494, -1.74951, -4.50793, -0.461631, 0.461631}, {-1.85814, 1.41539, -1.41539, 5.36656, 5.36656, -5.36656, -2.85327e-15, 3.15147, 2.92187e-16, 3.64699, -2.778, -0.373467, 11.9405, -5.19992, 5.19992, 2.21115, -14.2902, -2.21115, 2.29678, -5.64494, 1.74951, -2.21115, 1.68428, 2.21115, -16.8847, 16.7569, -0.255645, -4.50793, -0.461631, 0.461631}, {-1.85814, 1.41539, -1.41539, -1.78885, -1.78885, 1.78885, 0, -9.45441, 0, 3.64699, -2.778, -0.373467, 4.50793, 0.461631, -0.461631, 9.36656, 5.47113, -9.36656, 9.72932, -11.3065, 7.41106, -2.21115, 1.68428, 2.21115, -2.29678, 5.64494, -1.74951, -19.0959, 10.6504, 1.9555}, {-1.85814, 1.41539, -1.41539, -1.78885, -1.78885, 1.78885, 0, 3.15147, 0, -10.941, 8.334, 1.1204, 4.50793, 0.461631, -0.461631, 2.21115, -1.68428, -2.21115, 2.29678, -5.64494, 1.74951, 5.2214, -3.97726, 7.87269, 4.85864, 12.8004, -8.90493, -4.50793, -13.0675, 0.461631}, {5.61089, -1.12882, 1.12882, -0.730647, 0.497098, 1.84603, 0.431092, 1.08918, -1.08918, 2.16985, -1.96255, -0.380575, 6.13753, -3.06794, -9.20083, 0.370271, -1.96075, -0.935513, 0.0545869, -6.16812, 6.16812, -9.04968, 9.81095, 2.45781, -1.77895, 1.8114, -1.8114, -3.21494, 1.07954, 1.81672}, {-1.8703, 0.376272, -0.376272, 2.19194, -1.49129, -5.53808, 0.431092, 1.08918, -1.08918, 2.16985, -1.96255, -0.380575, 10.6961, -2.58463, -0.311631, -1.3541, -6.31747, 3.42121, 1.77895, -1.8114, 1.8114, -0.370271, 1.96075, 0.935513, -10.4584, 9.6616, -0.289101, -3.21494, 1.07954, 1.81672}, {-1.8703, 0.376272, -0.376272, -0.730647, 0.497098, 1.84603, -1.29328, -3.26754, 3.26754, 2.16985, -1.96255, -0.380575, 3.21494, -1.07954, -1.81672, 3.29286, -3.94914, -8.31962, 9.26014, -3.31649, 3.31649, -0.370271, 1.96075, 0.935513, -1.77895, 1.8114, -1.8114, -11.8943, 8.92975, 3.33902}, {-1.8703, 0.376272, -0.376272, -0.730647, 0.497098, 1.84603, 0.431092, 1.08918, -1.08918, -6.50955, 5.88765, 1.14172, 3.21494, -1.07954, -1.81672, 0.370271, -1.96075, -0.935513, 1.77895, -1.8114, 1.8114, 7.11091, 0.455662, 2.4406, 1.14364, -0.176994, -9.19551, -4.93931, -3.27718, 6.17344}, {-3.9353, -0.877932, 3.73093, -2.19842e-16, -0.163745, 1.71788, -5.85173e-16, -1.31534, -0.704307, -1.31177, 1.18644, 0.230073, -1.62143, 0.495654, -7.45769, 9.95053e-16, 1.82825, -1.25284, -1.62143, 6.52549, 5.22503, 5.24706, -6.57403, 0.33255, 1.62143, -1.26412, -2.4078, 1.62143, 0.159328, 0.586185}, {1.31177, 0.292644, -1.24364, 2.59599e-16, 0.491236, -5.15363, 4.85681e-16, -1.31534, -0.704307, -1.31177, 1.18644, 0.230073, -6.86849, -1.3299, 4.38839, -2.4361e-15, 7.08962, 1.56438, -1.62143, 1.26412, 2.4078, 1.67724e-16, -1.82825, 1.25284, 6.86849, -6.0099, -3.32809, 1.62143, 0.159328, 0.586185}, {1.31177, 0.292644, -1.24364, 0, -0.163745, 1.71788, 0, 3.94603, 2.11292, -1.31177, 1.18644, 0.230073, -1.62143, -0.159328, -0.586185, 0, 2.48323, -8.12435, -6.86849, 0.0935482, 7.38238, -3.2565e-16, -1.82825, 1.25284, 1.62143, -1.26412, -2.4078, 6.86849, -4.58645, -0.334108}, {1.31177, 0.292644, -1.24364, -2.66619e-17, -0.163745, 1.71788, -2.14171e-16, -1.31534, -0.704307, 3.9353, -3.55933, -0.690219, -1.62143, -0.159328, -0.586185, 2.97685e-16, 1.82825, -1.25284, -1.62143, 1.26412, 2.4078, -5.24706, -2.99883, 6.22742, 1.62143, -0.609143, -9.27931, 1.62143, 5.4207, 3.40341}, {6.05767, -1.43278, 5.23226e-12, 0, 1.38248, 0, 0.572575, -0.389553, -1.44665, 1.44665, -1.47052, 1.44665, 2.4959, -7.82907, 2.15583e-12, -0.707741, -1.22732, 1.78815, -0.502145, 1.44939, 7.57474, -5.07885, 7.10939, -7.57474, -1.78815, 0.108825, -1.78815, -2.4959, 2.29917, -2.15583e-12}, {-2.01922, 0.477594, -1.74416e-12, -5.05799e-15, -4.14743, -2.97897e-15, 0.572575, -0.389553, -1.44665, 1.44665, -1.47052, 1.44665, 10.5728, -4.20955, 9.13047e-12, -2.99804, 0.330893, 7.57474, 1.78815, -0.108825, 1.78815, 0.707741, 1.22732, -1.78815, -7.57474, 5.99089, -7.57474, -2.4959, 2.29917, -2.15472e-12}, {-2.01922, 0.477594, -1.74438e-12, 1.98598e-15, 1.38248, 1.98598e-15, -1.71772, 1.16866, 4.33994, 1.44665, -1.47052, 1.44665, 2.4959, -2.29917, 2.15383e-12, -0.707741, -6.75722, 1.78815, 9.86504, -2.0192, 1.78815, 0.707741, 1.22732, -1.78815, -1.78815, 0.108825, -1.78815, -8.28248, 8.18124, -5.78659}, {-2.01922, 0.477594, -1.74438e-12, 0, 1.38248, 0, 0.572575, -0.389553, -1.44665, -4.33994, 4.41155, -4.33994, 2.4959, -2.29917, 2.15628e-12, -0.707741, -1.22732, 1.78815, 1.78815, -0.108825, 1.78815, 8.78463, -0.683057, -1.78815, -1.78815, -5.42108, -1.78815, -4.7862, 3.85739, 5.78659}, {-1.33227e-15, -0.577407, 6.05767, 1.31177, 0.0490665, 1.31177, 7.62271e-16, -1.57494, 2.01922, -1.31177, 1.33341, -1.31177, -6.86849, -0.49482, -4.3726, -1.62143, 1.88609, -4.11733, -4.66294e-15, 8.00861, -8.07689, 6.86849, -7.21973, 9.36439, 1.55431e-15, -1.70883, 1.33227e-15, 1.62143, 0.298554, -0.874465}, {-2.22045e-16, 0.192469, -2.01922, -3.9353, -0.147199, -3.9353, 5.0818e-16, -1.57494, 2.01922, -1.31177, 1.33341, -1.31177, -1.62143, -1.06843, 8.95135, -1.62143, 8.18587, -12.1942, -2.22045e-16, 1.70883, 1.11022e-15, 1.62143, -1.88609, 4.11733, 5.24706, -7.04247, 5.24706, 1.62143, 0.298554, -0.874465}, {0, 0.192469, -2.01922, 1.31177, 0.0490665, 1.31177, 7.62271e-16, 4.72483, -6.05767, -1.31177, 1.33341, -1.31177, -1.62143, -0.298554, 0.874465, -6.86849, 1.68982, -9.36439, 0, 0.938958, 8.07689, 1.62143, -1.88609, 4.11733, -4.44089e-16, -1.70883, -4.44089e-16, 6.86849, -5.03508, 4.3726}, {-2.22045e-16, 0.192469, -2.01922, 1.31177, 0.0490665, 1.31177, 1.52454e-15, -1.57494, 2.01922, 3.9353, -4.00023, 3.9353, -1.62143, -0.298554, 0.874465, -1.62143, 1.88609, -4.11733, -1.55431e-15, 1.70883, -1.55431e-15, 1.62143, -2.65597, 12.1942, -5.24706, -1.9051, -5.24706, 1.62143, 6.59833, -8.95135}, {5.62183, 1.10117, 1.0932, -0.543248, 1.37255, -0.969804, 0.418614, -1.05765, -1.05825, 1.99858, 0.0521603, 2.39245, 5.16081, -6.73306, 5.52839, 0.154056, -0.389233, 2.50681, 0.12443, 5.99166, 5.99148, -8.14837, 0.180592, -12.0766, -1.79889, -1.76104, -1.75849, -2.98781, 1.24286, -1.64917}, {-1.87394, -0.367057, -0.364401, 1.62974, -4.11765, 2.90941, 0.418614, -1.05765, -1.05825, 1.99858, 0.0521603, 2.39245, 10.4836, 0.225367, 3.10677, -1.5204, 3.84139, 6.7398, 1.79889, 1.76104, 1.75849, -0.154056, 0.389233, -2.50681, -9.79319, -1.96968, -11.3283, -2.98781, 1.24286, -1.64917}, {-1.87394, -0.367057, -0.364401, -0.543248, 1.37255, -0.969804, -1.25584, 3.17296, 3.17474, 1.99858, 0.0521603, 2.39245, 2.98781, -1.24286, 1.64917, 2.32705, -5.87944, 6.38603, 9.29466, 3.22927, 3.2161, -0.154056, 0.389233, -2.50681, -1.79889, -1.76104, -1.75849, -10.9821, 1.03422, -11.219}, {-1.87394, -0.367057, -0.364401, -0.543248, 1.37255, -0.969804, 0.418614, -1.05765, -1.05825, -5.99573, -0.156481, -7.17736, 2.98781, -1.24286, 1.64917, 0.154056, -0.389233, 2.50681, 1.79889, 1.76104, 1.75849, 7.34172, 1.85746, -1.04921, 0.374107, -7.25124, 2.12073, -4.66227, 5.47348, 2.58382}, {1.30457, 0.988495, -4.07489, 1.69843, -1.02425, 0.473793, -0.0497917, 1.38543, -0.379098, -1.21378, -0.0316781, -1.45299, -8.35558, 5.77034, -4.15976, -2.03783, -0.446439, -0.117049, 0.798227, -6.84692, 0.306038, 6.89295, 0.573151, 5.92901, -0.59906, 1.3052, 1.21036, 1.56186, -1.67333, 2.26459}, {-0.434858, -0.329498, 1.3583, -5.09529, 3.07276, -1.42138, -0.0497917, 1.38543, -0.379098, -1.21378, -0.0316781, -1.45299, 0.17757, 2.99132, -7.69777, -1.83866, -5.98816, 1.39934, 0.59906, -1.3052, -1.21036, 2.03783, 0.446439, 0.117049, 4.25606, 1.43192, 7.02232, 1.56186, -1.67333, 2.26459}, {-0.434858, -0.329498, 1.3583, 1.69843, -1.02425, 0.473793, 0.149375, -4.15629, 1.1373, -1.21378, -0.0316781, -1.45299, -1.56186, 1.67333, -2.26459, -8.83155, 3.65057, -2.01222, 2.33849, 0.0127912, -6.64354, 2.03783, 0.446439, 0.117049, -0.59906, 1.3052, 1.21036, 6.41699, -1.54662, 8.07655}, {-0.434858, -0.329498, 1.3583, 1.69843, -1.02425, 0.473793, -0.0497917, 1.38543, -0.379098, 3.64134, 0.0950343, 4.35897, -1.56186, 1.67333, -2.26459, -2.03783, -0.446439, -0.117049, 0.59906, -1.3052, -1.21036, 3.77726, 1.76443, -5.31614, -7.39278, 5.40222, -0.684818, 1.76103, -7.21505, 3.78098}, {-3.43097, 1.35687, -3.43142, 0.931473, 0.558277, -1.41184, -0.847096, 2.35716, -0.851503, -1.22803, -2.46315, 1.11954, -6.29089, -2.36411, 5.97866, -0.104296, -3.60368, 2.79764, 3.02181, -11.7832, 3.0447, 5.01642, 13.4563, -7.27579, 0.366568, 2.35455, 0.361307, 2.565, 0.131007, -0.331307}, {1.14366, -0.45229, 1.14381, -2.79442, -1.67483, 4.23552, -0.847096, 2.35716, -0.851503, -1.22803, -2.46315, 1.11954, -7.13962, 1.67815, -4.24392, 3.28409, -13.0323, 6.20366, -0.366568, -2.35455, -0.361307, 0.104296, 3.60368, -2.79764, 5.2787, 12.2071, -4.11684, 2.565, 0.131007, -0.331307}, {1.14366, -0.45229, 1.14381, 0.931473, 0.558277, -1.41184, 2.54129, -7.07148, 2.55451, -1.22803, -2.46315, 1.11954, -2.565, -0.131007, 0.331307, -3.83019, -5.83679, 8.445, -4.94119, -0.545391, -4.93653, 0.104296, 3.60368, -2.79764, 0.366568, 2.35455, 0.361307, 7.47713, 9.9836, -4.80945}, {1.14366, -0.45229, 1.14381, 0.931473, 0.558277, -1.41184, -0.847096, 2.35716, -0.851503, 3.6841, 7.38945, -3.35861, -2.565, -0.131007, 0.331307, -0.104296, -3.60368, 2.79764, -0.366568, -2.35455, -0.361307, -4.47033, 5.41284, -7.37287, -3.35932, 0.121443, 6.00866, 5.95338, -9.29764, 3.0747}, {5.0671, -2.00529, 0.25185, -0.295203, -1.90215, -0.29354, 1.14353, -0.452546, 1.14392, 0.840709, 1.68627, -0.766433, 3.63346, 9.13356, 1.64076, -1.04859, 2.91057, -1.05113, -3.89983, 1.54334, -5.88589, -2.31425, -9.65564, 4.11686, -0.674283, 0.266845, 1.3102, -2.45265, -1.52496, -0.466604}, {-1.68903, 0.668429, -0.0839499, 0.885608, 5.70645, 0.880621, 1.14353, -0.452546, 1.14392, 0.840709, 1.68627, -0.766433, 9.20879, -1.14875, 0.802403, -5.6227, 4.72075, -5.62682, 0.674283, -0.266845, -1.3102, 1.04859, -2.91057, 1.05113, -4.03712, -6.47823, 4.37593, -2.45265, -1.52496, -0.466604}, {-1.68903, 0.668429, -0.0839499, -0.295203, -1.90215, -0.29354, -3.43058, 1.35764, -3.43177, 0.840709, 1.68627, -0.766433, 2.45265, 1.52496, 0.466604, 0.132224, 10.5192, 0.123031, 7.43042, -2.94056, -0.974399, 1.04859, -2.91057, 1.05113, -0.674283, 0.266845, 1.3102, -5.81549, -8.27004, 2.59913}, {-1.68903, 0.668429, -0.0839499, -0.295203, -1.90215, -0.29354, 1.14353, -0.452546, 1.14392, -2.52213, -5.0588, 2.2993, 2.45265, 1.52496, 0.466604, -1.04859, 2.91057, -1.05113, 0.674283, -0.266845, -1.3102, 7.80472, -5.58428, 1.38693, 0.506528, 7.87545, 2.48436, -7.02676, 0.285222, -5.04229}, {-7.02938, 6.21725e-15, 4.44089e-16, -1.54298, 0.610212, -1.54318, 1.7461, 1.33161, 1.74203, -2.54625, -1.94182, -0.198851, 5.18286, -3.19511, 8.08019, -0.25107, -2.40023, -0.245794, -12.0389, -6.97241, -9.12139, 10.4361, 10.1675, 1.0412, 5.05456, 1.64596, 2.15327, 0.989039, 0.754264, -1.90748}, {2.34313, -1.77636e-15, -1.22125e-15, 4.62893, -1.83064, 4.62954, 1.7461, 1.33161, 1.74203, -2.54625, -1.94182, -0.198851, -10.3615, -0.754264, 1.90748, -7.23545, -7.72668, -7.21392, -5.05456, -1.64596, -2.15327, 0.25107, 2.40023, 0.245794, 15.2395, 9.41326, 2.94867, 0.989039, 0.754264, -1.90748}, {2.34313, 0, 1.38778e-16, -1.54298, 0.610212, -1.54318, -5.23829, -3.99484, -5.22609, -2.54625, -1.94182, -0.198851, -0.989039, -0.754264, 1.90748, 5.92083, -4.84108, 5.92693, -14.4271, -1.64596, -2.15327, 0.25107, 2.40023, 0.245794, 5.05456, 1.64596, 2.15327, 11.174, 8.52156, -1.11207}, {2.34313, -1.11022e-15, -3.05311e-16, -1.54298, 0.610212, -1.54318, 1.7461, 1.33161, 1.74203, 7.63874, 5.82547, 0.596554, -0.989039, -0.754264, 1.90748, -0.25107, -2.40023, -0.245794, -5.05456, -1.64596, -2.15327, -9.12143, 2.40023, 0.245794, 11.2265, -0.794885, 8.32599, -5.99534, -4.57219, -8.8756}, {2.66454e-15, 3.55271e-15, -4.817, -1.54262, 0.610485, -1.54315, -0.200328, -1.9397, -0.198633, 1.74295, 1.32921, 0.136117, 8.07725, -3.19654, 6.09533, 2.1544, 1.643, 2.15296, 1.04893, 10.1564, -0.944658, -9.12619, -6.95984, -2.69743, -0.24762, -2.3976, 1.73919, -1.90678, 0.754601, 0.0772744}, {1.55431e-15, 8.88178e-16, 1.60567, 4.62785, -1.83146, 4.62946, -0.200328, -1.9397, -0.198633, 1.74295, 1.32921, 0.136117, 1.90678, -0.754601, -6.49995, 2.95571, 9.40178, 2.9475, 0.24762, 2.3976, -1.73919, -2.1544, -1.643, -2.15296, -7.21941, -7.71444, 1.19472, -1.90678, 0.754601, 0.0772744}, {2.22045e-16, 2.22045e-16, 1.60567, -1.54262, 0.610485, -1.54315, 0.600985, 5.81909, 0.5959, 1.74295, 1.32921, 0.136117, 1.90678, -0.754601, -0.0772744, 8.32487, -0.798945, 8.32557, 0.24762, 2.3976, -8.16186, -2.1544, -1.643, -2.15296, -0.24762, -2.3976, 1.73919, -8.87857, -4.56224, -0.467193}, {-1.33227e-15, -1.11022e-15, 1.60567, -1.54262, 0.610485, -1.54315, -0.200328, -1.9397, -0.198633, -5.22884, -3.98763, -0.408351, 1.90678, -0.754601, -0.0772744, 2.1544, 1.643, 2.15296, 0.24762, 2.3976, -1.73919, -2.1544, -1.643, -8.57564, 5.92285, -4.83954, 7.9118, -1.10547, 8.51339, 0.871807}, {5.74294, 0.795668, -0.78877, 0.30138, -0.761926, 0.76354, -0.6496, 1.64227, 0.697377, 2.26253, -0.61512, -1.72384, 0.788176, 4.31733, -4.32294, 0.430423, -1.08816, -1.80579, 5.76757, -8.2712, -3.9765, -9.48055, 3.54864, 8.70115, -3.16917, 1.70212, 1.187, -1.9937, -1.26962, 1.26878}, {-1.91431, -0.265223, 0.262923, -0.904139, 2.28578, -2.29062, -0.6496, 1.64227, 0.697377, 2.26253, -0.61512, -1.72384, 9.65095, 2.33052, -2.32047, 3.02882, -7.65724, -4.5953, 3.16917, -1.70212, -1.187, -0.430423, 1.08816, 1.80579, -12.2193, 4.1626, 8.08236, -1.9937, -1.26962, 1.26878}, {-1.91431, -0.265223, 0.262923, 0.30138, -0.761926, 0.76354, 1.9488, -4.9268, -2.09213, 2.26253, -0.61512, -1.72384, 1.9937, 1.26962, -1.26878, -0.775096, 1.95954, -4.85995, 10.8264, -0.641232, -2.23869, -0.430423, 1.08816, 1.80579, -3.16917, 1.70212, 1.187, -11.0438, 1.19086, 8.16414}, {-1.91431, -0.265223, 0.262923, 0.30138, -0.761926, 0.76354, -0.6496, 1.64227, 0.697377, -6.7876, 1.84536, 5.17152, 1.9937, 1.26962, -1.26878, 0.430423, -1.08816, -1.80579, 3.16917, -1.70212, -1.187, 7.22683, 2.14905, 0.7541, -4.37469, 4.74982, -1.86717, 0.604703, -7.8387, -1.52073}, {1.33227e-15, 6.00487, 0.829413, -3.96116e-16, 2.00162, -0.810615, 1.31177, 1.30033, 0.316508, -1.31177, -1.30033, 0.770578, 2.66454e-15, -8.00649, 4.58617, -1.62143, -4.08144, 0.61075, -6.86849, -4.33448, -1.31552, 6.86849, 9.28277, -3.69306, 1.62143, -0.866843, 0.0494889, -1.11022e-15, -6.66134e-16, -1.34371}, {4.44089e-16, -2.00162, -0.276471, -2.97087e-15, -6.00487, 2.43185, 1.31177, 1.30033, 0.316508, -1.31177, -1.30033, 0.770578, -2.66454e-15, 8.00649, 2.4496, -6.86849, -9.28277, -0.655284, -1.62143, 0.866843, -0.0494889, 1.62143, 4.08144, -0.61075, 6.86849, 4.33448, -3.03282, 1.55431e-15, 1.33227e-15, -1.34371}, {-2.22045e-16, -2.00162, -0.276471, 1.38641e-15, 2.00162, -0.810615, -3.9353, -3.901, -0.949525, -1.31177, -1.30033, 0.770578, -1.33227e-15, -1.11022e-15, 1.34371, -1.62143, -12.0879, 3.85321, -1.62143, 8.87333, 1.0564, 1.62143, 4.08144, -0.61075, 1.62143, -0.866843, 0.0494889, 5.24706, 5.20133, -4.42602}, {-6.66134e-16, -2.00162, -0.276471, -1.18835e-15, 2.00162, -0.810615, 1.31177, 1.30033, 0.316508, 3.9353, 3.901, -2.31173, 2.22045e-15, 2.66454e-15, 1.34371, -1.62143, -4.08144, 0.61075, -1.62143, 0.866843, -0.0494889, 1.62143, 12.0879, 0.495134, 1.62143, -8.87333, 3.29195, -5.24706, -5.20133, -2.60975}, {-1.70622, 4.31352, 1.8317, 8.44721e-17, 1.1641e-15, 1.08709, -2.01922, 1.65815e-12, 0.375548, 1.45048, 1.43784, -0.852066, -0.702999, 1.77727, -4.93735, 2.4959, -2.05102e-12, -1.80792, 9.86978, 1.77727, -1.21169, -8.29783, -5.75136, 5.21618, -1.7929, -1.77727, -0.290501, 0.702999, -1.77727, 0.589009}, {0.568738, -1.43784, -0.610568, -2.80914e-15, -1.1641e-15, -3.26126, -2.01922, 1.65896e-12, 0.375548, 1.45048, 1.43784, -0.852066, -2.97795, 7.52863, 1.85326, 10.5728, -8.68691e-12, -3.31011, 1.7929, 1.77727, 0.290501, -2.4959, 2.05143e-12, 1.80792, -7.59483, -7.52863, 3.11776, 0.702999, -1.77727, 0.589009}, {0.568738, -1.43784, -0.610568, 0, 0, 1.08709, 6.05767, -4.97324e-12, -1.12664, 1.45048, 1.43784, -0.852066, -0.702999, 1.77727, -0.589009, 2.4959, -2.04909e-12, -6.15626, -0.482057, 7.52863, 2.73277, -2.4959, 2.04944e-12, 1.80792, -1.7929, -1.77727, -0.290501, -5.09894, -7.52863, 3.99727}, {0.568738, -1.43784, -0.610568, 0, 0, 1.08709, -2.01922, 1.6563e-12, 0.375548, -4.35145, -4.31352, 2.5562, -0.702999, 1.77727, -0.589009, 2.4959, -2.04731e-12, -1.80792, 1.7929, 1.77727, 0.290501, -4.77085, 5.75136, 4.25019, -1.7929, -1.77727, -4.63885, 8.77989, -1.77727, -0.913184}, {1.27077, -1.27077, -5.5547, 1.35703, 0.9861, 0.537103, -0.781872, 0.781872, -0.309461, -0.151563, -2.19156, -2.07921, -6.58189, -5.68687, -5.10097, -0.710928, -2.18533, -0.281381, 4.61752, -4.61752, -0.668306, 1.31718, 10.9516, 8.59822, -1.49003, 1.49003, 1.90615, 1.15379, 1.74247, 2.95256}, {-0.42359, 0.42359, 1.85157, -4.07108, -2.9583, -1.61131, -0.781872, 0.781872, -0.309461, -0.151563, -2.19156, -2.07921, 0.540572, -3.43683, -10.3588, 2.41656, -5.31282, 0.956461, 1.49003, -1.49003, -1.90615, 0.710928, 2.18533, 0.281381, -0.883782, 10.2563, 10.223, 1.15379, 1.74247, 2.95256}, {-0.42359, 0.42359, 1.85157, 1.35703, 0.9861, 0.537103, 2.34562, -2.34562, 0.928382, -0.151563, -2.19156, -2.07921, -1.15379, -1.74247, -2.95256, -6.13903, -6.12973, -2.42979, 3.18439, -3.18439, -9.31242, 0.710928, 2.18533, 0.281381, -1.49003, 1.49003, 1.90615, 1.76004, 10.5087, 11.2694}, {-0.42359, 0.42359, 1.85157, 1.35703, 0.9861, 0.537103, -0.781872, 0.781872, -0.309461, 0.454689, 6.57469, 6.23763, -1.15379, -1.74247, -2.95256, -0.710928, -2.18533, -0.281381, 1.49003, -1.49003, -1.90615, 2.40529, 0.490973, -7.12489, -6.91814, -2.45437, -0.242264, 4.28128, -1.38502, 4.1904}, {2.56157, 0.777047, 3.89096, 1.32901, 0.581011, 0.152782, -0.565397, -1.62691, -0.0938093, 0.0902443, 1.30491, 1.23801, -5.90336, -2.72205, 0.803187, -0.943878, 1.2928, -0.0728941, 4.01589, 8.83876, 2.09436, 0.5829, -6.51244, -4.87916, -1.7543, -2.33113, -1.71912, 0.587321, 0.398009, -1.41431}, {-0.853857, -0.259016, -1.29699, -3.98703, -1.74303, -0.458346, -0.565397, -1.62691, -0.0938093, 0.0902443, 1.30491, 1.23801, 2.82811, 0.638054, 6.60226, 1.31771, 7.80043, 0.302343, 1.7543, 2.33113, 1.71912, 0.943878, -1.2928, 0.0728941, -2.11527, -7.55078, -6.67117, 0.587321, 0.398009, -1.41431}, {-0.853857, -0.259016, -1.29699, 1.32901, 0.581011, 0.152782, 1.69619, 4.88072, 0.281428, 0.0902443, 1.30491, 1.23801, -0.587321, -0.398009, 1.41431, -6.25992, -1.03125, -0.684022, 5.16973, 3.36719, 6.90706, 0.943878, -1.2928, 0.0728941, -1.7543, -2.33113, -1.71912, 0.226344, -4.82164, -6.36637}, {-0.853857, -0.259016, -1.29699, 1.32901, 0.581011, 0.152782, -0.565397, -1.62691, -0.0938093, -0.270733, -3.91473, -3.71404, -0.587321, -0.398009, 1.41431, -0.943878, 1.2928, -0.0728941, 1.7543, 2.33113, 1.71912, 4.35931, -0.256736, 5.26084, -7.07034, -4.65518, -2.33025, 2.84891, 6.90564, -1.03908}, {4.07496e-12, -2.19419, -6.05767, 4.84843e-16, 1.35003, -1.83833e-15, -1.44665, -1.05122, -0.572575, 1.44665, -1.0302, -1.44665, 1.67644e-12, -7.97291, -2.4959, 1.78815, -0.369344, 0.707741, 7.57474, 4.60023, 0.502145, -7.57474, 4.49015, 5.07885, -1.78815, -0.395328, 1.78815, -1.67844e-12, 2.57279, 2.4959}, {-1.3598e-12, 0.731398, 2.01922, -2.90906e-15, -4.05009, 4.93928e-15, -1.44665, -1.05122, -0.572575, 1.44665, -1.0302, -1.44665, 7.11964e-12, -5.49838, -10.5728, 7.57474, 3.83556, 2.99804, 1.78815, 0.395328, -1.78815, -1.78815, 0.369344, -0.707741, -7.57474, 3.72548, 7.57474, -1.67977e-12, 2.57279, 2.4959}, {-1.36091e-12, 0.731398, 2.01922, 0, 1.35003, 0, 4.33994, 3.15367, 1.71772, 1.44665, -1.0302, -1.44665, 1.68221e-12, -2.57279, -2.4959, 1.78815, -5.76946, 0.707741, 1.78815, -2.53026, -9.86504, -1.78815, 0.369344, -0.707741, -1.78815, -0.395328, 1.78815, -5.78659, 6.6936, 8.28248}, {-1.36047e-12, 0.731398, 2.01922, -4.84843e-16, 1.35003, 4.84843e-16, -1.44665, -1.05122, -0.572575, -4.33994, 3.09061, 4.33994, 1.68221e-12, -2.57279, -2.4959, 1.78815, -0.369344, 0.707741, 1.78815, 0.395328, -1.78815, -1.78815, -2.55625, -8.78463, -1.78815, -5.79545, 1.78815, 5.78659, 6.77769, 4.7862}, {5.43308, 2.37521, 0.624583, 1.07522, 0.584331, -1.07522, 1.83687, -0.576694, 0.182353, -1.10106, 0.784101, 1.10106, -3.39138, -2.08096, 5.88727, -3.59954, -0.00943971, 1.10365, -7.37942, 3.99825, -0.697471, 8.00379, -3.12696, -5.50789, 0.0319413, -1.69148, -0.0319413, -0.909507, -0.256369, -1.58639}, {-1.81103, -0.791738, -0.208194, -3.22566, -1.75299, 3.22566, 1.83687, -0.576694, 0.182353, -1.10106, 0.784101, 1.10106, 8.15362, 3.42332, 2.41917, -10.947, 2.29734, 0.374233, -0.0319413, 1.69148, 0.0319413, 3.59954, 0.00943971, -1.10365, 4.43619, -4.82788, -4.43619, -0.909507, -0.256369, -1.58639}, {-1.81103, -0.791738, -0.208194, 1.07522, 0.584331, -1.07522, -5.51061, 1.73008, -0.547059, -1.10106, 0.784101, 1.10106, 0.909507, 0.256369, 1.58639, -7.90043, -2.34676, 5.40453, 7.21217, 4.85843, 0.864718, 3.59954, 0.00943971, -1.10365, 0.0319413, -1.69148, -0.0319413, 3.49474, -3.39277, -5.99064}, {-1.81103, -0.791738, -0.208194, 1.07522, 0.584331, -1.07522, 1.83687, -0.576694, 0.182353, 3.30319, -2.3523, -3.30319, 0.909507, 0.256369, 1.58639, -3.59954, -0.00943971, 1.10365, -0.0319413, 1.69148, 0.0319413, 10.8437, 3.17639, -0.270869, -4.26894, -4.0288, 4.26894, -8.25698, 2.05041, -2.3158}, {1.1204, -1.1204, 10.941, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, 0.190281, 1.41539, 1.85814, -8.90493, 8.90493, -4.85864, -0.226431, 2.21115, -2.21115, 8.86902, -0.461631, 4.50793, -0.534693, -7.87269, -5.2214, -2.44635, 0.461631, -4.50793, 1.74951, -1.74951, -2.29678}, {-0.373467, 0.373467, -3.64699, -5.36656, 5.36656, -5.36656, -1.60567, 0, 0, 0.190281, 1.41539, 1.85814, -0.255645, 0.255645, 16.8847, 6.19624, 2.21115, -2.21115, 2.44635, -0.461631, 4.50793, 0.226431, -2.21115, 2.21115, -3.20747, -5.19992, -11.9405, 1.74951, -1.74951, -2.29678}, {-0.373467, 0.373467, -3.64699, 1.78885, -1.78885, 1.78885, 4.817, 0, 0, 0.190281, 1.41539, 1.85814, -1.74951, 1.74951, 2.29678, -7.38185, 9.36656, -9.36656, 3.94022, -1.9555, 19.0959, 0.226431, -2.21115, 2.21115, -2.44635, 0.461631, -4.50793, 0.988391, -7.41106, -9.72932}, {-0.373467, 0.373467, -3.64699, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, -0.570843, -4.24616, -5.57441, -1.74951, 1.74951, 2.29678, -0.226431, 2.21115, -2.21115, 2.44635, -0.461631, 4.50793, 1.7203, -3.70501, 16.7991, -9.60176, 7.61705, -11.6633, 8.17219, -1.74951, -2.29678}, {4.24616, -4.24616, -5.57441, 1.78885, -1.78885, 1.78885, 2.92187e-16, 3.15147, 2.85327e-15, -0.373467, -2.778, -3.64699, -7.61705, 7.61705, -11.6633, -2.21115, -1.68428, -2.21115, 1.74951, -18.2508, -2.29678, 3.70501, 12.7963, 16.7991, -1.74951, 5.64494, 2.29678, 0.461631, -0.461631, 4.50793}, {-1.41539, 1.41539, 1.85814, -5.36656, 5.36656, -5.36656, -5.84374e-16, 3.15147, -5.70654e-15, -0.373467, -2.778, -3.64699, 5.19992, -5.19992, -11.9405, -2.21115, -14.2902, -2.21115, 1.74951, -5.64494, -2.29678, 2.21115, 1.68428, 2.21115, -0.255645, 16.7569, 16.8847, 0.461631, -0.461631, 4.50793}, {-1.41539, 1.41539, 1.85814, 1.78885, -1.78885, 1.78885, 0, -9.45441, 0, -0.373467, -2.778, -3.64699, -0.461631, 0.461631, -4.50793, -9.36656, 5.47113, -9.36656, 7.41106, -11.3065, -9.72932, 2.21115, 1.68428, 2.21115, -1.74951, 5.64494, 2.29678, 1.9555, 10.6504, 19.0959}, {-1.41539, 1.41539, 1.85814, 1.78885, -1.78885, 1.78885, -2.92187e-16, 3.15147, -2.85327e-15, 1.1204, 8.334, 10.941, -0.461631, 0.461631, -4.50793, -2.21115, -1.68428, -2.21115, 1.74951, -5.64494, -2.29678, 7.87269, -3.97726, -5.2214, -8.90493, 12.8004, -4.85864, 0.461631, -13.0675, 4.50793}, {-4.91028, 4.91028, 4.91028, -0.802834, -0.802834, 0.802834, -0.802834, 0.802834, -0.802834, -0.0310931, 1.63676, 1.63676, 2.18055, 6.22684, -2.18055, 1.98471, -5.77316e-15, 5.88418e-15, 2.18055, -2.18055, 6.22684, -1.86034, -6.54704, -6.54704, 1.03079, -1.03079, -3.01551, 1.03079, -3.01551, -1.03079}, {1.63676, -1.63676, -1.63676, 2.4085, 2.4085, -2.4085, -0.802834, 0.802834, -0.802834, -0.0310931, 1.63676, 1.63676, -7.57784, 9.56255, 7.57784, 5.19605, -3.21134, 3.21134, -1.03079, 1.03079, 3.01551, -1.98471, 6.51256e-15, -5.03376e-15, 1.15516, -7.57784, -9.56255, 1.03079, -3.01551, -1.03079}, {1.63676, -1.63676, -1.63676, -0.802834, -0.802834, 0.802834, 2.4085, -2.4085, 2.4085, -0.0310931, 1.63676, 1.63676, -1.03079, 3.01551, 1.03079, 5.19605, 3.21134, -3.21134, -7.57784, 7.57784, 9.56255, -1.98471, 6.51256e-15, -5.58887e-15, 1.03079, -1.03079, -3.01551, 1.15516, -9.56255, -7.57784}, {1.63676, -1.63676, -1.63676, -0.802834, -0.802834, 0.802834, -0.802834, 0.802834, -0.802834, 0.0932794, -4.91028, -4.91028, -1.03079, 3.01551, 1.03079, 1.98471, -5.55112e-15, 5.66214e-15, -1.03079, 1.03079, 3.01551, -8.53176, 6.54704, 6.54704, 4.24213, 2.18055, -6.22684, 4.24213, -6.22684, 2.18055}, {2.4085, -2.4085, 2.4085, -0.833927, 0.833927, 2.4396, 1.57573, 1.57573, 1.57573, 0.0610269, -3.2125, -3.2125, 5.35886, -5.35886, -11.7815, -0.916924, -2.97851, -4.96322, -7.25829, -9.24301, -7.25829, 0.672816, 15.8285, 17.8132, 0.955357, 2.94007, 0.955357, -2.02315, 2.02315, 2.02315}, {-0.802834, 0.802834, -0.802834, 2.50178, -2.50178, -7.31879, 1.57573, 1.57573, 1.57573, 0.0610269, -3.2125, -3.2125, 5.23448, -5.23448, 1.18819, -7.21986, -9.28144, -11.2662, -0.955357, -2.94007, -0.955357, 0.916924, 2.97851, 4.96322, 0.71125, 15.7901, 13.8053, -2.02315, 2.02315, 2.02315}, {-0.802834, 0.802834, -0.802834, -0.833927, 0.833927, 2.4396, -4.7272, -4.7272, -4.7272, 0.0610269, -3.2125, -3.2125, 2.02315, -2.02315, -2.02315, 2.41878, -6.31421, -14.7216, 2.25598, -6.15141, 2.25598, 0.916924, 2.97851, 4.96322, 0.955357, 2.94007, 0.955357, -2.26726, 14.8731, 14.8731}, {-0.802834, 0.802834, -0.802834, -0.833927, 0.833927, 2.4396, 1.57573, 1.57573, 1.57573, -0.183081, 9.63749, 9.63749, 2.02315, -2.02315, -2.02315, -0.916924, -2.97851, -4.96322, -0.955357, -2.94007, -0.955357, 4.12826, -0.232831, 8.17456, 4.29107, -0.395637, -8.80302, -8.32609, -4.27979, -4.27979}, {4.10689, -1.43706, 2.8235e-12, 0.16503, -0.581747, -1.44665, -0.119439, -0.784236, 1.44665, 1.32337, 0.886963, 9.09785e-13, 0.828026, 2.45397, 7.57474, -0.0563528, 1.68845, -3.88578e-14, 2.31753, 3.51421, -7.57474, -5.23714, -5.2363, -3.60028e-12, -1.83977, -0.377268, 1.78815, -1.48814, -0.126978, -1.78815}, {-1.36896, 0.47902, -9.395e-13, -0.495089, 1.74524, 4.33994, -0.119439, -0.784236, 1.44665, 1.32337, 0.886963, 9.08857e-13, 6.964, -1.7891, 1.78815, 0.421405, 4.82539, -5.78659, 1.83977, 0.377268, -1.78815, 0.0563528, -1.68845, 3.79696e-14, -7.13326, -3.92512, 1.78815, -1.48814, -0.126978, -1.78815}, {-1.36896, 0.47902, -9.39941e-13, 0.16503, -0.581747, -1.44665, 0.358318, 2.35271, -4.33994, 1.32337, 0.886963, 9.07744e-13, 1.48814, 0.126978, 1.78815, -0.716472, 4.01544, 5.78659, 7.31562, -1.53881, -1.78815, 0.0563528, -1.68845, 3.9968e-14, -1.83977, -0.377268, 1.78815, -6.78164, -3.67483, -1.78815}, {-1.36896, 0.47902, -9.38462e-13, 0.16503, -0.581747, -1.44665, -0.119439, -0.784236, 1.44665, -3.97012, -2.66089, -2.72546e-12, 1.48814, 0.126978, 1.78815, -0.0563528, 1.68845, -3.70814e-14, 1.83977, 0.377268, -1.78815, 5.53221, -3.60453, 3.79027e-12, -2.49989, 1.94972, 7.57474, -1.01039, 3.00996, -7.57474}, {-1.71772, 0.961283, -4.33994, 1.44665, 0.27723, -1.44665, 0, 1.39654, 0, -2.01922, -1.35334, -1.38544e-12, -8.28248, -1.05552, 5.78659, -1.78815, -2.06889, 1.78815, -0.707741, -6.9163, -1.78815, 9.86504, 7.48225, -1.78815, 0.707741, 1.33015, 1.78815, 2.4959, -0.0533958, 1.7125e-12}, {0.572575, -0.320428, 1.44665, -4.33994, -0.831689, 4.33994, 7.00055e-16, 1.39654, 4.80579e-28, -2.01922, -1.35334, -1.38617e-12, -4.7862, 1.33511, -5.78659, -1.78815, -7.65505, 1.78815, -0.707741, -1.33015, -1.78815, 1.78815, 2.06889, -1.78815, 8.78463, 6.74351, 1.78815, 2.4959, -0.0533958, 1.7134e-12}, {0.572575, -0.320428, 1.44665, 1.44665, 0.27723, -1.44665, 4.20033e-15, -4.18962, 2.88423e-27, -2.01922, -1.35334, -1.38653e-12, -2.4959, 0.0533958, -1.71421e-12, -7.57474, -3.17781, 7.57474, -2.99804, -0.0484352, -7.57474, 1.78815, 2.06889, -1.78815, 0.707741, 1.33015, 1.78815, 10.5728, 5.35997, 7.25997e-12}, {0.572575, -0.320428, 1.44665, 1.44665, 0.27723, -1.44665, 0, 1.39654, 0, 6.05767, 4.06002, 4.16395e-12, -2.4959, 0.0533958, -1.716e-12, -1.78815, -2.06889, 1.78815, -0.707741, -1.33015, -1.78815, -0.502145, 3.3506, -7.57474, -5.07885, 0.221228, 7.57474, 2.4959, -5.63955, 1.71564e-12}, {-4.35597, 0.237767, -4.31288, 0, -1.20934, 0, 0.57469, 0.297534, -1.45022, -2.02668, 0.991065, 0.0125895, -1.79476, 6.43017, -1.77701, -0.710355, 1.12706, 1.79257, -4.80387, -1.45994, 5.81643, 8.81707, -5.09132, -1.84292, 2.50511, 0.269807, -0.0155615, 1.79476, -1.5928, 1.77701}, {1.45199, -0.0792556, 1.43763, 0, 3.62803, 0, 0.57469, 0.297534, -1.45022, -2.02668, 0.991065, 0.0125895, -7.60272, 1.90982, -7.52752, -3.00911, -0.0630793, 7.59343, -2.50511, -0.269807, 0.0155615, 0.710355, -1.12706, -1.79257, 10.6118, -3.69445, -0.0659197, 1.79476, -1.5928, 1.77701}, {1.45199, -0.0792556, 1.43763, 0, -1.20934, 0, -1.72407, -0.892603, 4.35065, -2.02668, 0.991065, 0.0125895, -1.79476, 1.5928, -1.77701, -0.710355, 5.96443, 1.79257, -8.31307, 0.047215, -5.73495, 0.710355, -1.12706, -1.79257, 2.50511, 0.269807, -0.0155615, 9.90148, -5.55705, 1.72665}, {1.45199, -0.0792556, 1.43763, 0, -1.20934, 0, 0.57469, 0.297534, -1.45022, 6.08004, -2.97319, -0.0377686, -1.79476, 1.5928, -1.77701, -0.710355, 1.12706, 1.79257, -2.50511, -0.269807, 0.0155615, -5.09761, -0.810036, -7.54308, 2.50511, 5.10718, -0.0155615, -0.504, -2.78293, 7.57787}, {-1.3922, -1.05489, 4.34859, -1.6823, -0.386683, 0.0104503, -0.635567, 0.941579, 1.4506, 1.8538, -0.906526, -0.0115156, 8.23503, 1.59006, 1.737, 2.86504, -0.685889, -1.80595, 2.75426, -5.36481, -5.8037, -10.2803, 4.31199, 1.85201, -0.211987, 1.59849, 0.00131684, -1.50582, -0.0433277, -1.7788}, {0.464066, 0.35163, -1.44953, 5.0469, 1.16005, -0.0313509, -0.635567, 0.941579, 1.4506, 1.8538, -0.906526, -0.0115156, -0.350444, -1.36319, 7.57692, 5.40731, -4.4522, -7.60833, 0.211987, -1.59849, -0.00131684, -2.86504, 0.685889, 1.80595, -7.6272, 5.2246, 0.0473794, -1.50582, -0.0433277, -1.7788}, {0.464066, 0.35163, -1.44953, -1.6823, -0.386683, 0.0104503, 1.9067, -2.82474, -4.35179, 1.8538, -0.906526, -0.0115156, 1.50582, 0.0433277, 1.7788, 9.59425, 0.860843, -1.84775, -1.64428, -3.00501, 5.7968, -2.86504, 0.685889, 1.80595, -0.211987, 1.59849, 0.00131684, -8.92103, 3.58278, -1.73274}, {0.464066, 0.35163, -1.44953, -1.6823, -0.386683, 0.0104503, -0.635567, 0.941579, 1.4506, -5.56141, 2.71958, 0.0345469, 1.50582, 0.0433277, 1.7788, 2.86504, -0.685889, -1.80595, 0.211987, -1.59849, -0.00131684, -4.72131, -0.720632, 7.60407, 6.51722, 3.14523, -0.0404844, 1.03645, -3.80964, -7.58118}, {-4.91028, -4.91028, 4.91028, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, -1.63676, -1.63676, 4.78823, -10.2738, 6.2275, 10.2738, 3.77476e-15, -3.10862e-15, 3.89543, 6.2275, -10.2738, 10.2738, 6.54704, 6.54704, -23.0483, 0.0754334, 3.97086, -3.97086, 3.97086, 0.0754334, -3.97086}, {1.63676, 1.63676, -1.63676, -4.7272, 4.7272, 4.7272, -1.57573, 1.57573, -1.57573, -1.63676, -1.63676, 4.78823, -10.5179, -6.62248, 10.5179, 6.30294, -6.30294, 10.1984, -0.0754334, -3.97086, 3.97086, -3.07087e-15, 3.59047e-15, -3.89543, 6.62248, 10.5179, -23.1238, 3.97086, 0.0754334, -3.97086}, {1.63676, 1.63676, -1.63676, 1.57573, -1.57573, -1.57573, 4.7272, -4.7272, 4.7272, -1.63676, -1.63676, 4.78823, -3.97086, -0.0754334, 3.97086, -6.30294, 6.30294, 10.1984, -6.62248, -10.5179, 10.5179, -1.51655e-15, 1.81411e-15, -3.89543, 0.0754334, 3.97086, -3.97086, 10.5179, 6.62248, -23.1238}, {1.63676, 1.63676, -1.63676, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 4.91028, 4.91028, -14.3647, -3.97086, -0.0754334, 3.97086, 3.10862e-15, -2.44249e-15, 3.89543, -0.0754334, -3.97086, 3.97086, -6.54704, -6.54704, 2.65162, -6.2275, 10.2738, 2.33207, 10.2738, -6.2275, 2.33207}, {-1.37636, -1.37636, -5.42796, -2.30348, 0.847989, 0.553233, 1.22922, -1.92224, -0.562043, 0.615468, 0.615468, -1.80051, 11.4941, -5.00722, -5.1332, 1.32785, 1.32785, 0.0108901, -7.00339, 9.49791, 0.706454, -3.78972, -3.78972, 7.19114, 2.0865, -1.80893, 1.54172, -2.28016, 1.61526, 2.92027}, {0.458787, 0.458787, 1.80932, 6.91044, -2.54397, -1.6597, 1.22922, -1.92224, -0.562043, 0.615468, 0.615468, -1.80051, 0.445015, -3.45041, -10.1575, -3.58904, 9.01683, 2.25906, -2.0865, 1.80893, -1.54172, -1.32785, -1.32785, -0.0108901, -0.375375, -4.2708, 8.74375, -2.28016, 1.61526, 2.92027}, {0.458787, 0.458787, 1.80932, -2.30348, 0.847989, 0.553233, -3.68767, 5.76673, 1.68613, 0.615468, 0.615468, -1.80051, 2.28016, -1.61526, -2.92027, 10.5418, -2.0641, -2.20204, -3.92165, -0.0262169, -8.77899, -1.32785, -1.32785, -0.0108901, 2.0865, -1.80893, 1.54172, -4.74204, -0.846607, 10.1223}, {0.458787, 0.458787, 1.80932, -2.30348, 0.847989, 0.553233, 1.22922, -1.92224, -0.562043, -1.8464, -1.8464, 5.40152, 2.28016, -1.61526, -2.92027, 1.32785, 1.32785, 0.0108901, -2.0865, 1.80893, -1.54172, -3.163, -3.163, -7.24816, 11.3004, -5.20089, -0.671213, -7.19706, 9.30424, 5.16845}, {5.36656, -5.36656, -5.36656, 1.41539, 1.85814, -1.41539, 0, 0, -3.15147, 0.373467, -3.64699, 2.778, -5.19992, -11.9405, 5.19992, -1.74951, -2.29678, 5.64494, 2.21115, -2.21115, 14.2902, 0.255645, 16.8847, -16.7569, -2.21115, 2.21115, -1.68428, -0.461631, 4.50793, 0.461631}, {-1.78885, 1.78885, 1.78885, -4.24616, -5.57441, 4.24616, 0, 0, -3.15147, 0.373467, -3.64699, 2.778, 7.61705, -11.6633, -7.61705, -1.74951, -2.29678, 18.2508, 2.21115, -2.21115, 1.68428, 1.74951, 2.29678, -5.64494, -3.70501, 16.7991, -12.7963, -0.461631, 4.50793, 0.461631}, {-1.78885, 1.78885, 1.78885, 1.41539, 1.85814, -1.41539, 0, 0, 9.45441, 0.373467, -3.64699, 2.778, 0.461631, -4.50793, -0.461631, -7.41106, -9.72932, 11.3065, 9.36656, -9.36656, -5.47113, 1.74951, 2.29678, -5.64494, -2.21115, 2.21115, -1.68428, -1.9555, 19.0959, -10.6504}, {-1.78885, 1.78885, 1.78885, 1.41539, 1.85814, -1.41539, 0, 0, -3.15147, -1.1204, 10.941, -8.334, 0.461631, -4.50793, -0.461631, -1.74951, -2.29678, 5.64494, 2.21115, -2.21115, 1.68428, 8.90493, -4.85864, -12.8004, -7.87269, -5.2214, 3.97726, -0.461631, 4.50793, 13.0675}, {5.73547, -8.96906, -2.62245, 0.335815, -3.2793, -0.653542, 1.76841, -1.58918, 1.21052, -0.192397, 1.8788, -1.43113, 0.604796, 13.4752, 2.34148, -2.60096, 6.01778, -0.688458, -6.89635, 4.62559, -7.41885, 3.37055, -13.533, 6.41296, -0.177274, 1.73112, 2.57679, -1.94806, -0.357987, 0.272688}, {-1.91182, 2.98969, 0.874151, -1.00744, 9.83791, 1.96063, 1.76841, -1.58918, 1.21052, -0.192397, 1.8788, -1.43113, 9.59535, -11.6008, -3.76929, -9.67459, 12.3745, -5.53052, 0.177274, -1.73112, -2.57679, 2.60096, -6.01778, 0.688458, 0.592313, -5.78406, 8.30129, -1.94806, -0.357987, 0.272688}, {-1.91182, 2.98969, 0.874151, 0.335815, -3.2793, -0.653542, -5.30522, 4.76754, -3.63155, -0.192397, 1.8788, -1.43113, 1.94806, 0.357987, -0.272688, -3.94422, 19.135, 1.92571, 7.82457, -13.6899, -6.07339, 2.60096, -6.01778, 0.688458, -0.177274, 1.73112, 2.57679, -1.17847, -7.87317, 5.99719}, {-1.91182, 2.98969, 0.874151, 0.335815, -3.2793, -0.653542, 1.76841, -1.58918, 1.21052, 0.57719, -5.63639, 4.29338, 1.94806, 0.357987, -0.272688, -2.60096, 6.01778, -0.688458, 0.177274, -1.73112, -2.57679, 10.2483, -17.9765, -2.80815, -1.52053, 14.8483, 5.19096, -9.02168, 5.99873, -4.56938}, {-0.906892, 2.28653, -2.28852, -1.55284, 0.422175, 1.18312, -0.363916, -0.686733, -0.918335, 1.61446, 1.02673, -1.02763, 7.75714, -1.26844, -7.13784, 2.36925, 0.327011, -0.327296, 1.53183, 4.53788, 3.86554, -8.8271, -4.43394, 4.43781, -0.0761652, -1.79095, -0.192201, -1.54576, -0.420263, 2.40534}, {0.302297, -0.762175, 0.762841, 4.65853, -1.26653, -3.54937, -0.363916, -0.686733, -0.918335, 1.61446, 1.02673, -1.02763, 0.336571, 3.46896, -5.45671, 3.82491, 3.07394, 3.34604, 0.0761652, 1.79095, 0.192201, -2.36925, -0.327011, 0.327296, -6.53402, -5.89788, 3.91832, -1.54576, -0.420263, 2.40534}, {0.302297, -0.762175, 0.762841, -1.55284, 0.422175, 1.18312, 1.09175, 2.0602, 2.75501, 1.61446, 1.02673, -1.02763, 1.54576, 0.420263, -2.40534, 8.58063, -1.36169, -5.05979, -1.13302, 4.83965, -2.85916, -2.36925, -0.327011, 0.327296, -0.0761652, -1.79095, -0.192201, -8.00362, -4.52719, 6.51586}, {0.302297, -0.762175, 0.762841, -1.55284, 0.422175, 1.18312, -0.363916, -0.686733, -0.918335, -4.84339, -3.0802, 3.08289, 1.54576, 0.420263, -2.40534, 2.36925, 0.327011, -0.327296, 0.0761652, 1.79095, 0.192201, -3.57844, 2.72169, -2.72407, 6.13521, -3.47965, -4.9247, -0.0900956, 2.32667, 6.07869}, {-3.9353, 0.360586, -0.360901, -2.42845e-16, -0.455297, -1.14997, 2.03858e-16, 1.40972, 0.194715, -1.31177, -0.834228, 0.834958, -1.62143, 2.53253, 5.87264, 4.81904e-17, -1.17973, 1.18076, -1.62143, -7.23282, -1.16824, 5.24706, 4.51665, -4.52059, 1.62143, 1.59394, 0.389381, 1.62143, -0.711347, -1.27275}, {1.31177, -0.120195, 0.1203, 7.28534e-16, 1.36589, 3.44992, 2.03858e-16, 1.40972, 0.194715, -1.31177, -0.834228, 0.834958, -6.86849, 1.19213, 0.791545, -7.67241e-16, -6.81861, 0.401902, -1.62143, -1.59394, -0.389381, -3.73841e-16, 1.17973, -1.18076, 6.86849, 4.93085, -2.95045, 1.62143, -0.711347, -1.27275}, {1.31177, -0.120195, 0.1203, 7.41337e-17, -0.455297, -1.14997, 6.88614e-16, -4.22916, -0.584146, -1.31177, -0.834228, 0.834958, -1.62143, 0.711347, 1.27275, -1.04445e-16, 0.641455, 5.78066, -6.86849, -1.11316, -0.870582, -5.1774e-16, 1.17973, -1.18076, 1.62143, 1.59394, 0.389381, 6.86849, 2.62557, -4.61258}, {1.31177, -0.120195, 0.1203, -1.68711e-16, -0.455297, -1.14997, -2.56799e-17, 1.40972, 0.194715, 3.9353, 2.50269, -2.50487, -1.62143, 0.711347, 1.27275, 2.4028e-16, -1.17973, 1.18076, -1.62143, -1.59394, -0.389381, -5.24706, 1.66051, -1.66196, 1.62143, 3.41513, 4.98927, 1.62143, -6.35023, -2.05161}, {3.9353, -3.83942e-12, 1.21564, 0, -1.44665, 1.03094, 0, 1.44665, 0.774615, 1.31177, -1.27981e-12, -1.40034, 1.62143, 7.57474, -4.89721, 0, 0, -2.23179, 1.62143, -7.57474, -3.55506, -5.24706, 5.11922e-12, 7.83316, -1.62143, 1.78815, 0.456604, -1.62143, -1.78815, 0.773441}, {-1.31177, 1.28052e-12, -0.405214, 3.53326e-15, 4.33994, -3.09282, 1.17775e-15, 1.44665, 0.774615, 1.31177, -1.28052e-12, -1.40034, 6.86849, 1.78815, 0.847415, -4.71101e-15, -5.78659, -5.33025, 1.62143, -1.78815, -0.456604, 3.2565e-16, -3.17893e-28, 2.23179, -6.86849, 1.78815, 6.05797, -1.62143, -1.78815, 0.773441}, {-1.31177, 1.28099e-12, -0.405214, -9.42202e-16, -1.44665, 1.03094, -2.82661e-15, -4.33994, -2.32384, 1.31177, -1.28099e-12, -1.40034, 1.62143, 1.78815, -0.773441, 3.76881e-15, 5.78659, -6.35555, 6.86849, -1.78815, 1.16425, 3.2565e-16, -3.18011e-28, 2.23179, -1.62143, 1.78815, 0.456604, -6.86849, -1.78815, 6.37481}, {-1.31177, 1.27957e-12, -0.405214, 0, -1.44665, 1.03094, 0, 1.44665, 0.774615, -3.9353, 3.83871e-12, 4.20103, 1.62143, 1.78815, -0.773441, 0, 0, -2.23179, 1.62143, -1.78815, -0.456604, 5.24706, -5.11827e-12, 3.85265, -1.62143, 7.57474, -3.66716, -1.62143, -7.57474, -2.32502}, {-1.71772, -4.33994, -0.49013, 1.44665, -1.44665, -0.51339, 0, 0, -1.80556, -2.01922, 1.97175e-12, 2.15557, -8.28248, 5.78659, 2.4862, -1.78815, 1.78815, 2.86637, -0.707741, -1.78815, 9.25207, 9.86504, -1.78815, -11.4887, 0.707741, 1.78815, -2.02984, 2.4959, -2.43721e-12, -0.432641}, {0.572575, 1.44665, 0.163377, -4.33994, 4.33994, 1.54017, 0, 0, -1.80556, -2.01922, 1.97102e-12, 2.15557, -4.7862, -5.78659, -0.220866, -1.78815, 1.78815, 10.0886, -0.707741, -1.78815, 2.02984, 1.78815, -1.78815, -2.86637, 8.78463, 1.78815, -10.6521, 2.4959, -2.43632e-12, -0.432641}, {0.572575, 1.44665, 0.163377, 1.44665, -1.44665, -0.51339, 0, 0, 5.41667, -2.01922, 1.97175e-12, 2.15557, -2.4959, 2.43685e-12, 0.432641, -7.57474, 7.57474, 4.91994, -2.99804, -7.57474, 1.37634, 1.78815, -1.78815, -2.86637, 0.707741, 1.78815, -2.02984, 10.5728, -1.03242e-11, -9.05492}, {0.572575, 1.44665, 0.163377, 1.44665, -1.44665, -0.51339, 0, 0, -1.80556, 6.05767, -5.91306e-12, -6.46671, -2.4959, 2.43596e-12, 0.432641, -1.78815, 1.78815, 2.86637, -0.707741, -1.78815, 2.02984, -0.502145, -7.57474, -3.51988, -5.07885, 7.57474, 0.0237159, 2.4959, -2.43632e-12, 6.78958}, {5.80677, 0.989763, -2.29829, 1.66654, 1.66654, -0.659606, 0.232016, 0.232016, -2.11105, 0.0370362, -1.56863, 2.00456, -6.33358, -8.31829, 2.5068, -2.34674, -2.34674, 3.42472, 1.17767, -0.807048, 10.1067, 2.1986, 8.62127, -11.443, -2.10573, -0.121017, -1.66246, -0.332567, 1.65215, 0.131628}, {-1.93559, -0.329921, 0.766095, -4.99961, -4.99961, 1.97882, 0.232016, 0.232016, -2.11105, 0.0370362, -1.56863, 2.00456, 8.07492, -0.332464, -3.19601, -3.2748, -3.2748, 11.8689, 2.10573, 0.121017, 1.66246, 2.34674, 2.34674, -3.42472, -2.25388, 6.15351, -9.68071, -0.332567, 1.65215, 0.131628}, {-1.93559, -0.329921, 0.766095, 1.66654, 1.66654, -0.659606, -0.696049, -0.696049, 6.33316, 0.0370362, -1.56863, 2.00456, 0.332567, -1.65215, -0.131628, -9.01289, -9.01289, 6.06315, 9.84809, 1.4407, -1.40192, 2.34674, 2.34674, -3.42472, -2.10573, -0.121017, -1.66246, -0.480712, 7.92668, -7.88662}, {-1.93559, -0.329921, 0.766095, 1.66654, 1.66654, -0.659606, 0.232016, 0.232016, -2.11105, -0.111109, 4.7059, -6.01369, 0.332567, -1.65215, -0.131628, -2.34674, -2.34674, 3.42472, 2.10573, 0.121017, 1.66246, 10.0891, 3.66642, -6.4891, -8.77188, -6.78716, 0.975965, -1.26063, 0.724083, 8.57584}, {-7.02938, -6.32827e-15, -4.44089e-15, 1.74421, 1.74203, 1.33161, -1.54384, -1.54318, 0.610212, -2.54349, -0.198851, -1.94182, -12.0291, -9.12139, -6.97241, -0.247668, -0.245794, -2.40023, 5.18739, 8.08019, -3.19511, 10.4216, 1.0412, 10.1675, 0.98797, -1.90748, 0.754264, 5.05222, 2.15327, 1.64596}, {2.34313, -1.05471e-15, -8.88178e-16, -5.23263, -5.22609, -3.99484, -1.54384, -1.54318, 0.610212, -2.54349, -0.198851, -1.94182, -14.4247, -2.15327, -1.64596, 5.92769, 5.92693, -4.84108, -0.98797, 1.90748, -0.754264, 0.247668, 0.245794, 2.40023, 11.1619, -1.11207, 8.52156, 5.05222, 2.15327, 1.64596}, {2.34313, 2.33147e-15, 1.77636e-15, 1.74421, 1.74203, 1.33161, 4.63152, 4.62954, -1.83064, -2.54349, -0.198851, -1.94182, -5.05222, -2.15327, -1.64596, -7.2245, -7.21392, -7.72668, -10.3605, 1.90748, -0.754264, 0.247668, 0.245794, 2.40023, 0.98797, -1.90748, 0.754264, 15.2262, 2.94867, 9.41326}, {2.34313, -2.77556e-16, -8.88178e-16, 1.74421, 1.74203, 1.33161, -1.54384, -1.54318, 0.610212, 7.63048, 0.596554, 5.82547, -5.05222, -2.15327, -1.64596, -0.247668, -0.245794, -2.40023, -0.98797, 1.90748, -0.754264, -9.12483, 0.245794, 2.40023, -5.98886, -8.8756, -4.57219, 11.2276, 8.32599, -0.794885}, {4.62937, 4.62937, -1.83228, 1.92454e-15, 1.60567, 4.31655e-17, -0.198723, -0.198723, -1.94057, 1.74185, 0.136178, 1.32981, 1.90741, -6.49998, -0.754941, 0.245635, -1.73908, 2.39867, 2.94793, 2.94793, 9.40601, -7.21302, 1.19437, -7.71791, -2.15304, -2.15304, -1.64373, -1.90741, 0.0773091, 0.754941}, {-1.54312, -1.54312, 0.61076, -2.32061e-15, -4.817, -3.91084e-15, -0.198723, -0.198723, -1.94057, 1.74185, 0.136178, 1.32981, 8.0799, 6.09519, -3.19798, 1.04052, -0.94419, 10.1609, 2.15304, 2.15304, 1.64373, -0.245635, 1.73908, -2.39867, -9.12042, -2.69775, -6.96297, -1.90741, 0.0773091, 0.754941}, {-1.54312, -1.54312, 0.61076, 0, 1.60567, 0, 0.596168, 0.596168, 5.82171, 1.74185, 0.136178, 1.32981, 1.90741, -0.0773091, -0.754941, 0.245635, -8.16175, 2.39867, 8.32553, 8.32553, -0.799305, -0.245635, 1.73908, -2.39867, -2.15304, -2.15304, -1.64373, -8.87479, -0.467403, -4.5643}, {-1.54312, -1.54312, 0.61076, -6.94322e-16, 1.60567, -5.30079e-16, -0.198723, -0.198723, -1.94057, -5.22554, -0.408534, -3.98943, 1.90741, -0.0773091, -0.754941, 0.245635, -1.73908, 2.39867, 2.15304, 2.15304, 1.64373, 5.92686, 7.91157, -4.84171, -2.15304, -8.57571, -1.64373, -1.11252, 0.872199, 8.51722}, {-8.88178e-16, 3.03985e-15, -3.8693, 1.44142, -1.45582, 0.146636, 0.577805, 1.45582, -0.186531, -2.01922, -1.68031e-12, -1.24987, -7.54736, 7.62276, -2.36203, -2.4959, -2.07812e-12, 0.0493134, -3.02542, -7.62276, -0.617546, 10.5728, 8.79935e-12, 4.95017, 0.714206, 1.79949, 1.36367, 1.78169, -1.79949, 1.77549}, {0, -1.49289e-16, 1.28977, -4.32425, 4.36745, -0.439908, 0.577805, 1.45582, -0.186531, -2.01922, -1.67873e-12, -1.24987, -1.78169, 1.79949, -6.93455, -4.80711, -5.82327, 0.795439, -0.714206, -1.79949, -1.36367, 2.4959, 2.07523e-12, -0.0493134, 8.79109, 1.79949, 6.36315, 1.78169, -1.79949, 1.77549}, {8.88178e-16, 3.43166e-16, 1.28977, 1.44142, -1.45582, 0.146636, -1.73341, -4.36745, 0.559594, -2.01922, -1.68189e-12, -1.24987, -1.78169, 1.79949, -1.77549, -8.26156, 5.82327, -0.537231, -0.714206, -1.79949, -6.52273, 2.4959, 2.07834e-12, -0.0493134, 0.714206, 1.79949, 1.36367, 9.85858, -1.79949, 6.77497}, {0, 1.48625e-17, 1.28977, 1.44142, -1.45582, 0.146636, 0.577805, 1.45582, -0.186531, 6.05767, 5.03935e-12, 3.74961, -1.78169, 1.79949, -1.77549, -2.4959, -2.07634e-12, 0.0493134, -0.714206, -1.79949, -1.36367, 2.4959, 2.0765e-12, -5.20838, -5.05146, 7.62276, 0.777128, -0.529529, -7.62276, 2.52162}, {-0.0174717, -4.36745, 1.62174, 0.116385, -1.45582, -0.673541, -1.39583, -1.1623e-12, 0.425765, 1.27362, 1.06054e-12, 0.788355, -0.616596, 5.82327, 4.1949, 1.58148, 1.79949, 0.306268, 7.30147, -1.79949, -1.56114, -6.67598, -1.79949, -3.45969, -1.71815, 1.79949, -0.141919, 0.151058, 1.25785e-13, -1.50074}, {0.0058239, 1.45582, -0.54058, -0.349154, 4.36745, 2.02062, -1.39583, -1.1623e-12, 0.425765, 1.27362, 1.06054e-12, 0.788355, -0.174354, -5.82327, 3.66305, 7.16481, 1.79949, -1.39679, 1.71815, -1.79949, 0.141919, -1.58148, -1.79949, -0.306268, -6.81264, 1.79949, -3.29534, 0.151058, 1.25785e-13, -1.50074}, {0.0058239, 1.45582, -0.54058, 0.116385, -1.45582, -0.673541, 4.1875, 3.48841e-12, -1.27729, 1.27362, 1.061e-12, 0.788355, -0.151058, -1.26201e-13, 1.50074, 1.11595, 7.62276, 3.00043, 1.69485, -7.62276, 2.30424, -1.58148, -1.79949, -0.306268, -1.71815, 1.79949, -0.141919, -4.94344, -4.11815e-12, -4.65416}, {0.0058239, 1.45582, -0.54058, 0.116385, -1.45582, -0.673541, -1.39583, -1.16331e-12, 0.425765, -3.82087, -3.18437e-12, -2.36507, -0.151058, -1.26255e-13, 1.50074, 1.58148, 1.79949, 0.306268, 1.71815, -1.79949, 0.141919, -1.60478, -7.62276, 1.85605, -2.18368, 7.62276, 2.55224, 5.73439, 4.77913e-12, -3.20379}, {0.776806, 4.33994, 4.33994, -1.05603, 0, 0, 0.111915, 1.44665, -0.572575, 1.20305, 1.58813e-12, 2.01922, 5.84948, 1.78815, 1.78815, 1.16698, -1.78815, 0.707741, -0.265932, -5.78659, 4.7862, -5.97917, 1.78815, -8.78463, -0.181727, -1.96304e-12, -2.4959, -1.62538, -1.78815, -1.78815}, {-0.258935, -1.44665, -1.44665, 3.16808, 0, 0, 0.111915, 1.44665, -0.572575, 1.20305, 1.58704e-12, 2.01922, 2.66112, 7.57474, 7.57474, 0.719326, -7.57474, 2.99804, 0.181727, 1.96205e-12, 2.4959, -1.16698, 1.78815, -0.707741, -4.99391, -8.30986e-12, -10.5728, -1.62538, -1.78815, -1.78815}, {-0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -0.335745, -4.33994, 1.71772, 1.20305, 1.58813e-12, 2.01922, 1.62538, 1.78815, 1.78815, 5.39109, -1.78815, 0.707741, 1.21747, 5.78659, 8.28248, -1.16698, 1.78815, -0.707741, -0.181727, -1.96304e-12, -2.4959, -6.43757, -1.78815, -9.86504}, {-0.258935, -1.44665, -1.44665, -1.05603, 0, 0, 0.111915, 1.44665, -0.572575, -3.60914, -4.76221e-12, -6.05767, 1.62538, 1.78815, 1.78815, 1.16698, -1.78815, 0.707741, 0.181727, 1.9625e-12, 2.4959, -0.131244, 7.57474, 5.07885, 4.04237, -1.96214e-12, -2.4959, -2.07304, -7.57474, 0.502145}, {-1.50826, -4.33994, -0.250246, -0.36325, 9.14735e-13, 1.16277, 0.624341, -1.44665, 0.0358648, -0.763842, -1.00857e-12, -1.28205, 1.28057, -1.78815, -6.19146, -0.322725, 1.78815, -1.4816, -3.89052, 5.78659, -0.290898, 3.37809, -1.78815, 6.6098, 1.39316, 1.15988e-13, 0.147438, 0.172433, 1.78815, 1.54037}, {0.502752, 1.44665, 0.0834153, 1.08975, -2.74233e-12, -3.48831, 0.624341, -1.44665, 0.0358648, -0.763842, -1.00788e-12, -1.28205, -2.18344, -7.57474, -1.87403, -2.82009, 7.57474, -1.62505, -1.39316, -1.16267e-13, -0.147438, 0.322725, -1.78815, 1.4816, 4.44853, 4.14743e-12, 5.27564, 0.172433, 1.78815, 1.54037}, {0.502752, 1.44665, 0.0834153, -0.36325, 9.139e-13, 1.16277, -1.87302, 4.33994, -0.107594, -0.763842, -1.00765e-12, -1.28205, -0.172433, -1.78815, -1.54037, 1.13028, 1.78815, -6.13268, -3.40417, -5.78659, -0.4811, 0.322725, -1.78815, 1.4816, 1.39316, 1.15882e-13, 0.147438, 3.2278, 1.78815, 6.66858}, {0.502752, 1.44665, 0.0834153, -0.36325, 9.14526e-13, 1.16277, 0.624341, -1.44665, 0.0358648, 2.29153, 3.02502e-12, 3.84615, -0.172433, -1.78815, -1.54037, -0.322725, 1.78815, -1.4816, -1.39316, -1.1632e-13, -0.147438, -1.68828, -7.57474, 1.14793, 2.84616, -3.54214e-12, -4.50365, -2.32493, 7.57474, 1.39691}, {-5.2764, 2.09092, -1.75594, -0.883363, 0.350058, 0.882867, 0.674903, -2.28914, -0.671659, -1.55034, 2.63606, -0.796523, 2.45135, -0.971419, -5.34624, 0.257671, 2.39684, -0.261068, -5.70783, 12.8476, 2.79336, 5.94368, -12.9411, 3.44716, 3.00822, -3.69104, -0.106727, 1.0821, -0.428812, 1.81477}, {1.7588, -0.696974, 0.585315, 2.65009, -1.05017, -2.6486, 0.674903, -2.28914, -0.671659, -1.55034, 2.63606, -0.796523, -8.11729, 3.21671, -4.15603, -2.44194, 11.5534, 2.42557, -3.00822, 3.69104, 0.106727, -0.257671, -2.39684, 0.261068, 9.20957, -14.2353, 3.07936, 1.0821, -0.428812, 1.81477}, {1.7588, -0.696974, 0.585315, -0.883363, 0.350058, 0.882867, -2.02471, 6.86742, 2.01498, -1.55034, 2.63606, -0.796523, -1.0821, 0.428812, -1.81477, 3.79112, 0.996607, -3.79254, -10.0434, 6.47894, -2.23453, -0.257671, -2.39684, 0.261068, 3.00822, -3.69104, -0.106727, 7.28345, -10.973, 5.00086}, {1.7588, -0.696974, 0.585315, -0.883363, 0.350058, 0.882867, 0.674903, -2.28914, -0.671659, 4.65101, -7.90817, 2.38957, -1.0821, 0.428812, -1.81477, 0.257671, 2.39684, -0.261068, -3.00822, 3.69104, 0.106727, -7.29286, 0.391057, -2.08019, 6.54167, -5.09127, -3.6382, -1.61751, 8.72775, 4.50141}, {-0.630826, -5.80799, 0.630826, -0.387946, -0.481968, -1.21772, -0.883035, 0.3495, 0.883035, 1.06071, -1.80353, 0.544962, 1.7714, 0.130593, 6.63599, 1.57102, 0.163739, 0.413696, 4.36372, -4.22303, -4.36372, -5.81384, 7.05038, -2.59355, -0.831577, 2.82503, 0.831577, -0.219612, 1.79728, -1.7651}, {0.210275, 1.936, -0.210275, 1.16384, 1.4459, 3.65317, -0.883035, 0.3495, 0.883035, 1.06071, -1.80353, 0.544962, -0.621489, -9.54126, 2.6062, 5.10316, -1.23426, -3.11845, 0.831577, -2.82503, -0.831577, -1.57102, -0.163739, -0.413696, -5.0744, 10.0391, -1.34827, -0.219612, 1.79728, -1.7651}, {0.210275, 1.936, -0.210275, -0.387946, -0.481968, -1.21772, 2.64911, -1.0485, -2.64911, 1.06071, -1.80353, 0.544962, 0.219612, -1.79728, 1.7651, 3.1228, 2.09161, 5.28459, -0.00952469, -10.569, 0.00952469, -1.57102, -0.163739, -0.413696, -0.831577, 2.82503, 0.831577, -4.46243, 9.01139, -3.94495}, {0.210275, 1.936, -0.210275, -0.387946, -0.481968, -1.21772, -0.883035, 0.3495, 0.883035, -3.18212, 5.41059, -1.63489, 0.219612, -1.79728, 1.7651, 1.57102, 0.163739, 0.413696, 0.831577, -2.82503, -0.831577, -2.41212, -7.90772, 0.427406, 0.720206, 4.7529, 5.70247, 3.31253, 0.399276, -5.29724}, {-4.62915, 1.83443, 4.62655, 1.15731e-16, 1.13013e-15, 2.34313, -1.74201, -1.33137, 1.74389, 0.198956, 1.94285, -2.54483, -1.90731, 0.755828, -10.3625, 2.15324, 1.64567, -5.05183, 7.21395, 7.72698, -7.2249, -2.94906, -9.41706, 15.2312, -0.245923, -2.40149, 0.249326, 1.90731, -0.755828, 0.990019}, {1.54305, -0.611477, -1.54218, -3.38711e-15, -5.71373e-15, -7.02938, -1.74201, -1.33137, 1.74389, 0.198956, 1.94285, -2.54483, -8.07952, 3.20174, 5.17872, 9.12126, 6.97115, -12.0274, 0.245923, 2.40149, -0.249326, -2.15324, -1.64567, 5.05183, -1.04175, -10.1729, 10.4287, 1.90731, -0.755828, 0.990019}, {1.54305, -0.611477, -1.54218, 0, 0, 2.34313, 5.22602, 3.99411, -5.23168, 0.198956, 1.94285, -2.54483, -1.90731, 0.755828, -0.990019, 2.15324, 1.64567, -14.4243, -5.92628, 4.8474, 5.91941, -2.15324, -1.64567, 5.05183, -0.245923, -2.40149, 0.249326, 1.11149, -8.52722, 11.1694}, {1.54305, -0.611477, -1.54218, 1.15731e-16, 1.13013e-15, 2.34313, -1.74201, -1.33137, 1.74389, -0.596868, -5.82855, 7.6345, -1.90731, 0.755828, -0.990019, 2.15324, 1.64567, -5.05183, 0.245923, 2.40149, -0.249326, -8.32544, 0.800244, 11.2206, -0.245923, -2.40149, -9.12318, 8.87534, 4.56966, -5.98555}, {-4.62937, 1.83228, 4.62937, -1.60567, 0, 0, 0.198723, 1.94057, -0.198723, -0.136178, -1.32981, 1.74185, 6.49998, 0.754941, 1.90741, 1.73908, -2.39867, 0.245635, -2.94793, -9.40601, 2.94793, -1.19437, 7.71791, -7.21302, 2.15304, 1.64373, -2.15304, -0.0773091, -0.754941, -1.90741}, {1.54312, -0.61076, -1.54312, 4.817, 0, 0, 0.198723, 1.94057, -0.198723, -0.136178, -1.32981, 1.74185, -6.09519, 3.19798, 8.0799, 0.94419, -10.1609, 1.04052, -2.15304, -1.64373, 2.15304, -1.73908, 2.39867, -0.245635, 2.69775, 6.96297, -9.12042, -0.0773091, -0.754941, -1.90741}, {1.54312, -0.61076, -1.54312, -1.60567, 0, 0, -0.596168, -5.82171, 0.596168, -0.136178, -1.32981, 1.74185, 0.0773091, 0.754941, 1.90741, 8.16175, -2.39867, 0.245635, -8.32553, 0.799305, 8.32553, -1.73908, 2.39867, -0.245635, 2.15304, 1.64373, -2.15304, 0.467403, 4.5643, -8.87479}, {1.54312, -0.61076, -1.54312, -1.60567, 0, 0, 0.198723, 1.94057, -0.198723, 0.408534, 3.98943, -5.22554, 0.0773091, 0.754941, 1.90741, 1.73908, -2.39867, 0.245635, -2.15304, -1.64373, 2.15304, -7.91157, 4.84171, 5.92686, 8.57571, 1.64373, -2.15304, -0.872199, -8.51722, -1.11252}, {3.22749, -4.51945, -2.90569, 1.79579, -0.140217, 1.36925, 0.607375, 0.135762, -1.32575, -1.32734, -1.50203, -1.01206, -8.0731, -1.12793, -8.36668, -2.97048, 0.00550629, -0.0537701, -1.85046, -2.57298, 5.74449, 8.27985, 6.00261, 4.10202, -0.57904, 2.02993, -0.441503, 0.889927, 1.6888, 2.88969}, {-1.07583, 1.50648, 0.968563, -5.38738, 0.42065, -4.10774, 0.607375, 0.135762, -1.32575, -1.32734, -1.50203, -1.01206, 3.41339, -7.71473, -6.76394, -5.39998, -0.537542, 5.24921, 0.57904, -2.02993, 0.441503, 2.97048, -0.00550629, 0.0537701, 4.73032, 8.03804, 3.60675, 0.889927, 1.6888, 2.88969}, {-1.07583, 1.50648, 0.968563, 1.79579, -0.140217, 1.36925, -1.82213, -0.407286, 3.97724, -1.32734, -1.50203, -1.01206, -0.889927, -1.6888, -2.88969, -10.1537, 0.566373, -5.53076, 4.88236, -8.05586, -3.43275, 2.97048, -0.00550629, 0.0537701, -0.57904, 2.02993, -0.441503, 6.19929, 7.69691, 6.93795}, {-1.07583, 1.50648, 0.968563, 1.79579, -0.140217, 1.36925, 0.607375, 0.135762, -1.32575, 3.98202, 4.50609, 3.03619, -0.889927, -1.6888, -2.88969, -2.97048, 0.00550629, -0.0537701, 0.57904, -2.02993, 0.441503, 7.2738, -6.03144, -3.82048, -7.76222, 2.59079, -5.91849, -1.53958, 1.14575, 8.19268}, {0.596103, 2.3292, 5.82108, 0, -2.17235, 0, -1.54296, 0.977878, 0.61239, 1.74166, 1.97087, 1.32797, 0.245608, 12.3343, 2.39842, 1.9072, 1.47645, -0.756955, 8.32463, -4.16055, -0.808098, -8.87383, -9.35994, -4.55492, -2.15281, 0.249041, -1.64146, -0.245608, -3.64486, -2.39842}, {-0.198701, -0.7764, -1.94036, 0, 6.51705, 0, -1.54296, 0.977878, 0.61239, 1.74166, 1.97087, 1.32797, 1.04041, 6.75045, 10.1599, 8.07903, -2.43506, -3.20651, 2.15281, -0.249041, 1.64146, -1.9072, -1.47645, 0.756955, -9.11944, -7.63445, -6.95334, -0.245608, -3.64486, -2.39842}, {-0.198701, -0.7764, -1.94036, 0, -2.17235, 0, 4.62887, -2.93363, -1.83717, 1.74166, 1.97087, 1.32797, 0.245608, 3.64486, 2.39842, 1.9072, 10.1659, -0.756955, 2.94761, 2.85656, 9.4029, -1.9072, -1.47645, 0.756955, -2.15281, 0.249041, -1.64146, -7.21224, -11.5283, -7.71029}, {-0.198701, -0.7764, -1.94036, 0, -2.17235, 0, -1.54296, 0.977878, 0.61239, -5.22497, -5.91262, -3.98391, 0.245608, 3.64486, 2.39842, 1.9072, 1.47645, -0.756955, 2.15281, -0.249041, 1.64146, -1.1124, 1.62915, 8.51839, -2.15281, 8.93844, -1.64146, 5.92622, -7.55637, -4.84797}, {-2.37946, -3.79135, -6.81576, 0.894391, -1.25242, -0.805215, 0.086206, 0.865556, -0.85654, -1.77375, -0.876923, -0.610165, -5.66348, 4.99561, 1.40791, -1.21208, 0.478185, 2.05404, -1.43177, -6.09423, 1.67666, 8.30708, 3.02951, 0.386615, 1.08695, 2.63201, 1.74951, 2.08592, 0.0140506, 1.81295}, {0.793153, 1.26378, 2.27192, -2.68317, 3.75725, 2.41565, 0.086206, 0.865556, -0.85654, -1.77375, -0.876923, -0.610165, -5.25853, -5.06918, -10.9006, -1.55691, -2.98404, 5.4802, -1.08695, -2.63201, -1.74951, 1.21208, -0.478185, -2.05404, 8.18195, 6.1397, 4.19016, 2.08592, 0.0140506, 1.81295}, {0.793153, 1.26378, 2.27192, 0.894391, -1.25242, -0.805215, -0.258618, -2.59667, 2.56962, -1.77375, -0.876923, -0.610165, -2.08592, -0.0140506, -1.81295, -4.78965, 5.48785, 5.2749, -4.25956, -7.68714, -10.8372, 1.21208, -0.478185, -2.05404, 1.08695, 2.63201, 1.74951, 9.18092, 3.52174, 4.25361}, {0.793153, 1.26378, 2.27192, 0.894391, -1.25242, -0.805215, 0.086206, 0.865556, -0.85654, 5.32125, 2.63077, 1.83049, -2.08592, -0.0140506, -1.81295, -1.21208, 0.478185, 2.05404, -1.08695, -2.63201, -1.74951, -1.96053, -5.53332, -11.1417, -2.49062, 7.64167, 4.97037, 1.74109, -3.44817, 5.23911}, {4.58783, -0.200634, 4.23679, 1.50209, -0.951977, -0.596169, -2.69821, -0.462309, 1.0709, 2.7254, 1.34741, 0.937529, -5.97475, 4.90195, 4.86723, 1.47849, 1.74815, -0.586802, 16.0183, 2.33802, -3.86166, -12.3801, -7.13778, -3.16331, -5.22546, -0.48878, -0.421944, -0.0336074, -1.09404, -2.48256}, {-1.52928, 0.0668781, -1.41226, -4.50626, 2.85593, 1.78851, -2.69821, -0.462309, 1.0709, 2.7254, 1.34741, 0.937529, 6.15072, 0.82653, 8.1316, 12.2713, 3.59739, -4.87041, 5.22546, 0.48878, 0.421944, -1.47849, -1.74815, 0.586802, -16.1271, -5.87841, -4.17206, -0.0336074, -1.09404, -2.48256}, {-1.52928, 0.0668781, -1.41226, 1.50209, -0.951977, -0.596169, 8.09463, 1.38693, -3.21271, 2.7254, 1.34741, 0.937529, 0.0336074, 1.09404, 2.48256, -4.52987, 5.55606, 1.79787, 11.3426, 0.221267, 6.07099, -1.47849, -1.74815, 0.586802, -5.22546, -0.48878, -0.421944, -10.9352, -6.48367, -6.23267}, {-1.52928, 0.0668781, -1.41226, 1.50209, -0.951977, -0.596169, -2.69821, -0.462309, 1.0709, -8.1762, -4.04222, -2.81259, 0.0336074, 1.09404, 2.48256, 1.47849, 1.74815, -0.586802, 5.22546, 0.48878, 0.421944, 4.63862, -2.01567, 6.23585, -11.2338, 3.31913, 1.96273, 10.7592, 0.755194, -6.76616}, {1.83443, -2.90588, -4.62915, 0, -2.17235, 0, 1.94285, -0.797826, 0.198956, -1.33137, 2.00155, -1.74201, 0.755828, 10.1773, -1.90731, -2.40149, 3.67134, -0.245923, -9.41706, 2.98018, -2.94906, 7.72698, -11.6775, 7.21395, 1.64567, 0.211121, 2.15324, -0.755828, -1.48788, 1.90731}, {-0.611477, 0.968627, 1.54305, 0, 6.51705, 0, 1.94285, -0.797826, 0.198956, -1.33137, 2.00155, -1.74201, 3.20174, -2.38662, -8.07952, -10.1729, 6.86264, -1.04175, -1.64567, -0.211121, -2.15324, 2.40149, -3.67134, 0.245923, 6.97115, -7.79508, 9.12126, -0.755828, -1.48788, 1.90731}, {-0.611477, 0.968627, 1.54305, 0, -2.17235, 0, -5.82855, 2.39348, -0.596868, -1.33137, 2.00155, -1.74201, 0.755828, 1.48788, -1.90731, -2.40149, 12.3607, -0.245923, 0.800244, -4.08563, -8.32544, 2.40149, -3.67134, 0.245923, 1.64567, 0.211121, 2.15324, 4.56966, -9.49408, 8.87534}, {-0.611477, 0.968627, 1.54305, 0, -2.17235, 0, 1.94285, -0.797826, 0.198956, 3.99411, -6.00465, 5.22602, 0.755828, 1.48788, -1.90731, -2.40149, 3.67134, -0.245923, -1.64567, -0.211121, -2.15324, 4.8474, -7.54585, -5.92628, 1.64567, 8.90052, 2.15324, -8.52722, 1.70342, 1.11149}, {-3.96631, -0.406167, 1.83974, -1.35283, -0.138536, -1.77009, -0.9692, 1.50642, 1.075, 0.999931, -1.50327, 1.30834, 5.44932, 0.558033, 10.0263, 2.87019, -1.6908, 0.859181, 3.44059, -8.05506, -4.87073, -6.86992, 7.70388, -6.09254, 0.436211, 2.02938, 0.570751, -0.0379859, -0.00388992, -2.94596}, {1.3221, 0.135389, -0.613248, 4.0585, 0.415608, 5.31026, -0.9692, 1.50642, 1.075, 0.999931, -1.50327, 1.30834, -5.25042, -0.537666, 5.39896, 6.74699, -7.71647, -3.4408, -0.436211, -2.02938, -0.570751, -2.87019, 1.6908, -0.859181, -3.56351, 8.04247, -4.66261, -0.0379859, -0.00388992, -2.94596}, {1.3221, 0.135389, -0.613248, -1.35283, -0.138536, -1.77009, 2.9076, -4.51925, -3.22499, 0.999931, -1.50327, 1.30834, 0.0379859, 0.00388992, 2.94596, 8.28152, -1.13665, 7.93953, -5.72462, -2.57094, 1.88224, -2.87019, 1.6908, -0.859181, 0.436211, 2.02938, 0.570751, -4.03771, 6.00919, -8.17932}, {1.3221, 0.135389, -0.613248, -1.35283, -0.138536, -1.77009, -0.9692, 1.50642, 1.075, -2.99979, 4.50981, -3.92502, 0.0379859, 0.00388992, 2.94596, 2.87019, -1.6908, 0.859181, -0.436211, -2.02938, -0.570751, -8.1586, 1.14924, 1.59381, 5.84754, 2.58353, 7.6511, 3.83881, -6.02956, -7.24594}, {3.10069, 1.60532, -7.82452, 0.575383, -0.91145, -1.45197, 1.48006, -0.0647255, 1.36681, -1.02187, 1.51128, -2.52301, -1.73519, 5.43384, 4.37871, -2.54066, 1.20662, 0.105263, -6.47211, 1.00034, -10.3806, 6.62816, -7.25175, 9.9868, 0.551894, -0.741434, 4.91335, -0.566342, -1.78804, 1.42915}, {-1.03356, -0.535107, 2.60817, -1.72615, 2.73435, 4.3559, 1.48006, -0.0647255, 1.36681, -1.02187, 1.51128, -2.52301, 4.7006, 3.92847, -11.8619, -8.46088, 1.46552, -5.36196, -0.551894, 0.741434, -4.91335, 2.54066, -1.20662, -0.105263, 4.63939, -6.78657, 15.0054, -0.566342, -1.78804, 1.42915}, {-1.03356, -0.535107, 2.60817, 0.575383, -0.91145, -1.45197, -4.44017, 0.194177, -4.10042, -1.02187, 1.51128, -2.52301, 0.566342, 1.78804, -1.42915, -4.84219, 4.85242, 5.91313, 3.58236, 2.88186, -15.346, 2.54066, -1.20662, -0.105263, 0.551894, -0.741434, 4.91335, 3.52116, -7.83317, 11.5212}, {-1.03356, -0.535107, 2.60817, 0.575383, -0.91145, -1.45197, 1.48006, -0.0647255, 1.36681, 3.06562, -4.53385, 7.56904, 0.566342, 1.78804, -1.42915, -2.54066, 1.20662, 0.105263, -0.551894, 0.741434, -4.91335, 6.67491, 0.933809, -10.538, -1.74964, 2.90437, 10.7212, -6.48656, -1.52914, -4.03807}, {-2.63316, -2.47826, 0.36108, 0.802811, -1.2478, -0.890444, -2.35614, 1.42089, -0.657266, 0.675604, -0.999172, 1.66807, -5.2885, 5.51247, 4.8112, 1.92002, -0.213947, 1.91307, 11.252, -8.46096, 3.59026, -4.62243, 4.21063, -8.58536, -1.82742, 2.77741, -0.961199, 2.07725, -0.52127, -1.24942}, {0.877721, 0.826085, -0.12036, -2.40843, 3.7434, 2.67133, -2.35614, 1.42089, -0.657266, 0.675604, -0.999172, 1.66807, -5.58814, -2.78307, 1.73086, 11.3446, -5.8975, 4.54214, 1.82742, -2.77741, 0.961199, -1.92002, 0.213947, -1.91307, -4.52984, 6.7741, -7.63348, 2.07725, -0.52127, -1.24942}, {0.877721, 0.826085, -0.12036, 0.802811, -1.2478, -0.890444, 7.06841, -4.26266, 1.9718, 0.675604, -0.999172, 1.66807, -2.07725, 0.52127, 1.24942, -1.29123, 4.77726, 5.47485, -1.68346, -6.08175, 1.44264, -1.92002, 0.213947, -1.91307, -1.82742, 2.77741, -0.961199, -0.625163, 3.47542, -7.9217}, {0.877721, 0.826085, -0.12036, 0.802811, -1.2478, -0.890444, -2.35614, 1.42089, -0.657266, -2.02681, 2.99752, -5.00421, -2.07725, 0.52127, 1.24942, 1.92002, -0.213947, 1.91307, 1.82742, -2.77741, 0.961199, -5.4309, -3.09039, -1.43164, -5.03867, 7.76862, 2.60058, 11.5018, -6.20482, 1.37964}, {-0.815557, 4.36562, -0.135176, -1.95424, 0.460185, -0.243585, -0.0205487, 0.870319, -1.11219, 1.70294, 0.124702, 1.31071, 9.89652, -0.610825, 1.21973, 2.44098, -1.64459, 1.67583, -0.228434, -2.75832, 5.76778, -9.25274, 1.14578, -6.91867, 0.310628, -0.722961, -1.31904, -2.07955, -1.22991, -0.245392}, {0.271852, -1.45521, 0.0450587, 5.86273, -1.38055, 0.730756, -0.0205487, 0.870319, -1.11219, 1.70294, 0.124702, 1.31071, 0.99214, 7.05074, 0.0651576, 2.52317, -5.12587, 6.12457, -0.310628, 0.722961, 1.31904, -2.44098, 1.64459, -1.67583, -6.50113, -1.22177, -6.56189, -2.07955, -1.22991, -0.245392}, {0.271852, -1.45521, 0.0450587, -1.95424, 0.460185, -0.243585, 0.0616461, -2.61096, 3.33656, 1.70294, 0.124702, 1.31071, 2.07955, 1.22991, 0.245392, 10.258, -3.48533, 2.65017, -1.39804, 6.54379, 1.13881, -2.44098, 1.64459, -1.67583, 0.310628, -0.722961, -1.31904, -8.89131, -1.72872, -5.48824}, {0.271852, -1.45521, 0.0450587, -1.95424, 0.460185, -0.243585, -0.0205487, 0.870319, -1.11219, -5.10882, -0.374107, -3.93214, 2.07955, 1.22991, 0.245392, 2.44098, -1.64459, 1.67583, -0.310628, 0.722961, 1.31904, -3.52839, 7.46542, -1.85606, 8.1276, -2.5637, -0.344701, -1.99736, -4.71119, 4.20335}, {-2.82343, -2.82223, 1.11598, 0.652804, 0.651093, 1.763, 0.935946, -1.40658, 0.556196, -2.52989, -0.185258, -1.9472, -4.58144, -4.57199, -8.77136, -1.9638, 0.933829, -2.86668, -6.064, 6.20211, -2.45247, 12.0834, -0.192795, 10.6555, 2.32021, -0.575803, 0.227687, 1.97023, 1.96762, 1.71938}, {0.941145, 0.940742, -0.371993, -1.95841, -1.95328, -5.28899, 0.935946, -1.40658, 0.556196, -2.52989, -0.185258, -1.9472, -5.73481, -5.73058, -0.231403, -5.70759, 6.56014, -5.09146, -2.32021, 0.575803, -0.227687, 1.9638, -0.933829, 2.86668, 12.4398, 0.165231, 8.01649, 1.97023, 1.96762, 1.71938}, {0.941145, 0.940742, -0.371993, 0.652804, 0.651093, 1.763, -2.80784, 4.21973, -1.66859, -2.52989, -0.185258, -1.9472, -1.97023, -1.96762, -1.71938, -4.57502, -1.67054, -9.91867, -6.08479, -3.18716, 1.26029, 1.9638, -0.933829, 2.86668, 2.32021, -0.575803, 0.227687, 12.0898, 2.70865, 9.50817}, {0.941145, 0.940742, -0.371993, 0.652804, 0.651093, 1.763, 0.935946, -1.40658, 0.556196, 7.58968, 0.555775, 5.8416, -1.97023, -1.96762, -1.71938, -1.9638, 0.933829, -2.86668, -2.32021, 0.575803, -0.227687, -1.80078, -4.6968, 4.35465, -0.291002, -3.18018, -6.8243, -1.77356, 7.59392, -0.505409}, {4.38876, 6.50951, 0.486449, -0.364196, 1.94951, -0.0603643, 0.336809, -1.04259, -1.05295, 1.49031, 1.26291, 1.27547, 3.71522, -7.52572, 0.5165, 0.0338521, -1.12102, 1.37614, 0.0447138, 8.14114, 5.71377, -5.99508, -3.93064, -6.47801, -1.39195, -3.97078, -1.50195, -2.25844, -0.272335, -0.275043}, {-1.46292, -2.16984, -0.16215, 1.09259, -5.84854, 0.181093, 0.336809, -1.04259, -1.05295, 1.49031, 1.26291, 1.27547, 8.11012, 8.95169, 0.923642, -1.31338, 3.04934, 5.58796, 1.39195, 3.97078, 1.50195, -0.0338521, 1.12102, -1.37614, -7.35318, -9.02244, -6.60383, -2.25844, -0.272335, -0.275043}, {-1.46292, -2.16984, -0.16215, -0.364196, 1.94951, -0.0603643, -1.01043, 3.12777, 3.15886, 1.49031, 1.26291, 1.27547, 2.25844, 0.272335, 0.275043, 1.49064, -8.91908, 1.6176, 7.24363, 12.6501, 2.15055, -0.0338521, 1.12102, -1.37614, -1.39195, -3.97078, -1.50195, -8.21966, -5.32399, -5.37692}, {-1.46292, -2.16984, -0.16215, -0.364196, 1.94951, -0.0603643, 0.336809, -1.04259, -1.05295, -4.47092, -3.78874, -3.82641, 2.25844, 0.272335, 0.275043, 0.0338521, -1.12102, 1.37614, 1.39195, 3.97078, 1.50195, 5.81783, 9.80037, -0.727539, 0.0648337, -11.7688, -1.26049, -3.60567, 3.89803, 3.93678}, {-4.70136, 0, -1.77636e-15, -0.960805, 1.44394, -0.570969, 1.09021, -0.00626368, 2.02293, -1.69653, -1.43767, -1.45196, 3.09377, -7.56055, 2.98963, -0.159958, -1.77706, -1.79473, -7.6455, 0.0327971, -10.5922, 6.94608, 7.52775, 7.60258, 3.28465, -0.00774234, 2.50048, 0.749448, 1.7848, -0.705756}, {1.56712, -2.22045e-16, 1.11022e-15, 2.88242, -4.33181, 1.71291, 1.09021, -0.00626368, 2.02293, -1.69653, -1.43767, -1.45196, -7.01793, -1.7848, 0.705756, -4.52081, -1.75201, -9.88646, -3.28465, 0.00774234, -2.50048, 0.159958, 1.77706, 1.79473, 10.0708, 5.74295, 8.30834, 0.749448, 1.7848, -0.705756}, {1.56712, -8.88178e-16, -8.88178e-16, -0.960805, 1.44394, -0.570969, -3.27064, 0.018791, -6.0688, -1.69653, -1.43767, -1.45196, -0.749448, -1.7848, 0.705756, 3.68326, -7.5528, 0.489149, -9.55313, 0.00774234, -2.50048, 0.159958, 1.77706, 1.79473, 3.28465, -0.00774234, 2.50048, 7.53557, 7.53549, 5.1021}, {1.56712, 0, 0, -0.960805, 1.44394, -0.570969, 1.09021, -0.00626368, 2.02293, 5.08959, 4.31302, 4.35589, -0.749448, -1.7848, 0.705756, -0.159958, -1.77706, -1.79473, -3.28465, 0.00774234, -2.50048, -6.10853, 1.77706, 1.79473, 7.12787, -5.78349, 4.78436, -3.61141, 1.80986, -8.79749}}
+ + values : {{-3.9353, -4.55601, 0.673815, 0, -1.32529, -0.181463, -1.31177, -0.0269554, -1.36103, 0, -0.166427, 1.7671, -1.62143, 5.06211, 1.22778, 1.62143, 1.67146, 1.90663, 5.24706, -1.73604, 7.40408, -1.62143, -1.00576, -8.97503, 0, 1.84386, -1.95995, 1.62143, 0.239033, -0.501928}, {1.31177, 1.51867, -0.224605, 4.12325e-16, 3.97586, 0.54439, -1.31177, -0.0269554, -1.36103, 2.74179e-16, -0.166427, 1.7671, -6.86849, -6.31371, 1.40035, 6.86849, 1.77928, 7.35076, -1.56634e-16, -1.84386, 1.95995, -1.62143, -1.67146, -1.90663, -1.26573e-15, 2.50957, -9.02835, 1.62143, 0.239033, -0.501928}, {1.31177, 1.51867, -0.224605, 0, -1.32529, -0.181463, 3.9353, 0.0808662, 4.08309, 0, -0.166427, 1.7671, -1.62143, -0.239033, 0.501928, 1.62143, 6.97261, 2.63248, -5.24706, -7.91853, 2.85837, -1.62143, -1.67146, -1.90663, 0, 1.84386, -1.95995, 1.62143, 0.90474, -7.57033}, {1.31177, 1.51867, -0.224605, 0, -1.32529, -0.181463, -1.31177, -0.0269554, -1.36103, 0, 0.49928, -5.3013, -1.62143, -0.239033, 0.501928, 1.62143, 1.67146, 1.90663, -3.2565e-16, -1.84386, 1.95995, -6.86849, -7.74614, -1.00821, 0, 7.14501, -1.2341, 6.86849, 0.346855, 4.9422}, {4.62937, -1.83228, -3.04567, 1.74185, 1.32981, 2.03815, 0, 0, -2.39759, -0.198723, -1.94057, -0.655786, -7.21302, -7.71791, -11.9268, -2.15304, -1.64373, 0.444288, 1.90741, -0.754941, 11.2991, 2.94793, 9.40601, 2.17885, -1.90741, 0.754941, -1.7087, 0.245635, 2.39867, 3.77418}, {-1.54312, 0.61076, 1.01522, -5.22554, -3.98943, -6.11446, 0, 0, -2.39759, -0.198723, -1.94057, -0.655786, 5.92686, -4.84171, -7.83507, -2.15304, -1.64373, 10.0346, 1.90741, -0.754941, 1.7087, 2.15304, 1.64373, -0.444288, -1.11252, 8.51722, 0.914444, 0.245635, 2.39867, 3.77418}, {-1.54312, 0.61076, 1.01522, 1.74185, 1.32981, 2.03815, 0, 0, 7.19277, -0.198723, -1.94057, -0.655786, -0.245635, -2.39867, -3.77418, -9.12042, -6.96297, -7.70832, 8.0799, -3.19798, -2.35219, 2.15304, 1.64373, -0.444288, -1.90741, 0.754941, -1.7087, 1.04052, 10.1609, 6.39732}, {-1.54312, 0.61076, 1.01522, 1.74185, 1.32981, 2.03815, 0, 0, -2.39759, 0.596168, 5.82171, 1.96736, -0.245635, -2.39867, -3.77418, -2.15304, -1.64373, 0.444288, 1.90741, -0.754941, 1.7087, 8.32553, -0.799305, -4.50518, -8.87479, -4.5643, -9.86131, 0.245635, 2.39867, 13.3645}, {0.513102, -3.87755, -4.44089e-16, 0.57474, -0.851464, -1.31177, -1.67772, -0.393466, -9.15774e-16, 1.27402, -0.0475867, 1.31177, -2.79797, 2.86069, 6.86849, 1.36336, 1.53882, 1.62143, 8.99608, 0.462577, 4.44089e-15, -6.45943, -1.34847, -6.86849, -2.28519, 1.11129, -8.88178e-16, 0.499008, 0.545171, -1.62143}, {-0.171034, 1.29252, -2.22045e-16, -1.72422, 2.55439, 3.9353, -1.67772, -0.393466, -8.14021e-16, 1.27402, -0.0475867, 1.31177, 0.185129, -5.71524, 1.62143, 8.07425, 3.11268, 1.62143, 2.28519, -1.11129, 1.33227e-15, -1.36336, -1.53882, -1.62143, -7.38126, 1.30164, -5.24706, 0.499008, 0.545171, -1.62143}, {-0.171034, 1.29252, 4.44089e-16, 0.57474, -0.851464, -1.31177, 5.03317, 1.1804, 1.22103e-15, 1.27402, -0.0475867, 1.31177, -0.499008, -0.545171, 1.62143, -0.935598, 4.94468, 6.86849, 2.96933, -6.28136, -1.77636e-15, -1.36336, -1.53882, -1.62143, -2.28519, 1.11129, 0, -4.59706, 0.735518, -6.86849}, {-0.171034, 1.29252, 0, 0.57474, -0.851464, -1.31177, -1.67772, -0.393466, 5.5964e-16, -3.82205, 0.14276, -3.9353, -0.499008, -0.545171, 1.62143, 1.36336, 1.53882, 1.62143, 2.28519, -1.11129, -8.88178e-16, -0.679225, -6.70889, -1.62143, -4.58415, 4.51715, 5.24706, 7.2099, 2.11904, -1.62143}, {3.99239, 5.22128, -5.22376, -4.19346e-16, -1.90927e-15, 2.34313, -0.609885, 1.54187, -1.54513, 1.94068, 0.198561, -2.53925, 1.64495, 2.15129, -14.4211, 0.75386, -1.90585, -0.986372, 4.83836, -5.92203, 5.93812, -8.51658, 1.11161, 11.1434, -2.39881, -0.245434, 0.242418, -1.64495, -2.15129, 5.04857}, {-1.3308, -1.74043, 1.74125, -4.45091e-15, 2.34416e-15, -7.02938, -0.609885, 1.54187, -1.54513, 1.94068, 0.198561, -2.53925, 6.96814, 9.11299, -12.0136, 3.1934, -8.07331, 5.19416, 2.39881, 0.245434, -0.242418, -0.75386, 1.90585, 0.986372, -10.1615, -1.03968, 10.3994, -1.64495, -2.15129, 5.04857}, {-1.3308, -1.74043, 1.74125, 0, 0, 2.34313, 1.82966, -4.6256, 4.6354, 1.94068, 0.198561, -2.53925, 1.64495, 2.15129, -5.04857, 0.75386, -1.90585, -10.3589, 7.722, 7.20714, -7.20743, -0.75386, 1.90585, 0.986372, -2.39881, -0.245434, 0.242418, -9.40768, -2.94553, 15.2056}, {-1.3308, -1.74043, 1.74125, -1.12887e-15, -1.155e-16, 2.34313, -0.609885, 1.54187, -1.54513, -5.82204, -0.595682, 7.61774, 1.64495, 2.15129, -5.04857, 0.75386, -1.90585, -0.986372, 2.39881, 0.245434, -0.242418, 4.56932, 8.86756, -5.97864, -2.39881, -0.245434, -9.13008, 0.794587, -8.31875, 11.2291}, {5.36656, -5.36656, -5.3681, 1.78885, 1.36261, 1.3621, 0, 0, -3.15147, 0, -3.15147, 0, -7.15542, -9.34589, -9.34384, -2.21115, -1.68428, 2.21178, 2.21115, -2.21115, 14.2895, 2.21115, 14.2902, -2.21178, -2.21115, 2.21115, -1.68365, 0, 3.89543, 3.89543}, {-1.78885, 1.78885, 1.78937, -5.36656, -4.08784, -4.08631, 0, 0, -3.15147, 0, -3.15147, 0, 7.15542, -11.0508, -11.0529, -2.21115, -1.68428, 14.8177, 2.21115, -2.21115, 1.68365, 2.21115, 1.68428, -2.21178, -2.21115, 14.817, -1.68365, 0, 3.89543, 3.89543}, {-1.78885, 1.78885, 1.78937, 1.78885, 1.36261, 1.3621, 0, 0, 9.45441, 0, -3.15147, 0, 4.44089e-16, -3.89543, -3.89543, -9.36656, -7.13474, -3.23663, 9.36656, -9.36656, -5.47381, 2.21115, 1.68428, -2.21178, -2.21115, 2.21115, -1.68365, 0, 16.5013, 3.89543}, {-1.78885, 1.78885, 1.78937, 1.78885, 1.36261, 1.3621, 0, 0, -3.15147, 0, 9.45441, 0, 4.44089e-16, -3.89543, -3.89543, -2.21115, -1.68428, 2.21178, 2.21115, -2.21115, 1.68365, 9.36656, -5.47113, -9.36924, -9.36656, -3.23931, -7.13206, 0, 3.89543, 16.5013}, {-4.72653, -4.72788, -4.72653, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, -1.57551, -1.57596, 1.57596, -10.1969, 6.30148, 6.30439, -1.73195e-14, 1.73195e-14, 3.89543, 6.30204, -10.1975, 6.30204, 6.30204, 6.30384, -10.1993, 2.1394e-12, 3.89543, -2.14051e-12, 3.89487, 0.000556765, -0.000556765}, {1.57551, 1.57596, 1.57551, -4.72653, 4.72653, 4.72788, -1.57551, 1.57551, -1.57551, -1.57551, -1.57596, 1.57596, -10.1969, -6.30439, -6.30148, 6.30204, -6.30204, 10.1975, -2.13851e-12, -3.89543, 2.13829e-12, 1.42638e-14, -1.48241e-14, -3.89543, 6.30204, 10.1993, -6.30384, 3.89487, 0.000556765, -0.000556765}, {1.57551, 1.57596, 1.57551, 1.57551, -1.57551, -1.57596, 4.72653, -4.72653, 4.72653, -1.57551, -1.57596, 1.57596, -3.89487, -0.000556765, 0.000556765, -6.30204, 6.30204, 10.1993, -6.30204, -10.1993, -6.30204, 1.62622e-14, -1.70446e-14, -3.89543, 2.13984e-12, 3.89543, -2.14007e-12, 10.1969, 6.30439, -6.30439}, {1.57551, 1.57596, 1.57551, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, 4.72653, 4.72788, -4.72788, -3.89487, -0.000556765, 0.000556765, -1.73195e-14, 1.70974e-14, 3.89543, -2.14206e-12, -3.89543, 2.14162e-12, -6.30204, -6.30384, -10.1975, -6.30204, 10.1975, 6.30384, 10.1969, -6.30148, 6.30148}, {3.23101, 1.27881, 3.23101, -1.12016, -2.46258, 1.22297, 0.799503, 2.33566, 0.799503, 1.39766, 0.553185, -0.945467, 7.19648, 13.4211, -5.07228, 0.396353, 0.156874, -2.49991, -2.85501, -11.7028, -2.85501, -5.98699, -2.36962, 6.28178, -0.343007, 2.36014, -0.343007, -2.71584, -3.57081, 0.180421}, {-1.077, -0.426271, -1.077, 3.36048, 7.38773, -3.6689, 0.799503, 2.33566, 0.799503, 1.39766, 0.553185, -0.945467, 7.02385, 5.2759, 4.12759, -2.80166, -9.18577, -5.69792, 0.343007, -2.36014, 0.343007, -0.396353, -0.156874, 2.49991, -5.93364, 0.147394, 3.43886, -2.71584, -3.57081, 0.180421}, {-1.077, -0.426271, -1.077, -1.12016, -2.46258, 1.22297, -2.39851, -7.00698, -2.39851, 1.39766, 0.553185, -0.945467, 2.71584, 3.57081, -0.180421, 4.87699, 10.0072, -7.39177, 4.65101, -0.65505, 4.65101, -0.396353, -0.156874, 2.49991, -0.343007, 2.36014, -0.343007, -8.30647, -5.78355, 3.96229}, {-1.077, -0.426271, -1.077, -1.12016, -2.46258, 1.22297, 0.799503, 2.33566, 0.799503, -4.19298, -1.65956, 2.8364, 2.71584, 3.57081, -0.180421, 0.396353, 0.156874, -2.49991, 0.343007, -2.36014, 0.343007, 3.91165, 1.54821, 6.80792, 4.13763, 12.2104, -5.23487, -5.91385, -12.9135, -3.01759}, {-3.9353, 2.63698, 1.65871, 7.60332e-17, 1.28613, 0.176102, -3.18404e-16, -0.456132, 1.72743, -1.31177, 0.0489967, -1.35063, -1.62143, -5.64776, -0.238656, 2.99587e-16, -1.02593, -2.3529, -1.62143, 3.47483, -8.36153, 5.24706, 0.829946, 7.75543, 1.62143, -1.65031, 1.4518, 1.62143, 0.503247, -0.465751}, {1.31177, -0.878994, -0.552902, 8.56342e-16, -3.85839, -0.528305, 3.92674e-16, -0.456132, 1.72743, -1.31177, 0.0489967, -1.35063, -6.86849, 3.01273, 2.67736, -1.70324e-15, 0.798596, -9.26263, -1.62143, 1.65031, -1.4518, -1.93111e-16, 1.02593, 2.3529, 6.86849, -1.84629, 6.85433, 1.62143, 0.503247, -0.465751}, {1.31177, -0.878994, -0.552902, -5.33523e-16, 1.28613, 0.176102, 2.92961e-15, 1.3684, -5.1823, -1.31177, 0.0489967, -1.35063, -1.62143, -0.503247, 0.465751, 4.00063e-15, -6.17045, -3.0573, -6.86849, 5.16628, 0.75981, -2.19219e-15, 1.02593, 2.3529, 1.62143, -1.65031, 1.4518, 6.86849, 0.30726, 4.93678}, {1.31177, -0.878994, -0.552902, 7.60332e-17, 1.28613, 0.176102, -3.18404e-16, -0.456132, 1.72743, 3.9353, -0.14699, 4.0519, -1.62143, -0.503247, 0.465751, 2.99587e-16, -1.02593, -2.3529, -1.62143, 1.65031, -1.4518, -5.24706, 4.54191, 4.56451, 1.62143, -6.79482, 0.747392, 1.62143, 2.32778, -7.37548}, {0.56235, 5.36656, -5.36656, -1.24953, 3.64699, -0.373467, -0.986118, -1.85814, -1.41539, 2.4231, 0, 0, 6.77433, -16.8847, -0.255645, 2.76341, -2.21115, 2.21115, 5.39508, 11.9405, 5.19992, -12.4558, 2.21115, -2.21115, -1.45061, -4.50793, 0.461631, -1.77621, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, 3.74859, -10.941, 1.1204, -0.986118, -1.85814, -1.41539, 2.4231, 1.11775e-15, 8.51416e-16, 2.52601, 4.85864, -8.90493, 6.70789, 5.2214, 7.87269, 1.45061, 4.50793, -0.461631, -2.76341, 2.21115, -2.21115, -11.143, -4.50793, 0.461631, -1.77621, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, -1.24953, 3.64699, -0.373467, 2.95835, 5.57441, 4.24616, 2.4231, 0, 0, 1.77621, -2.29678, -1.74951, 7.76154, -16.7991, 3.70501, 2.20041, 11.6633, -7.61705, -2.76341, 2.21115, -2.21115, -1.45061, -4.50793, 0.461631, -11.4686, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, -1.24953, 3.64699, -0.373467, -0.986118, -1.85814, -1.41539, -7.2693, 0, 0, 1.77621, -2.29678, -1.74951, 2.76341, -2.21115, 2.21115, 1.45061, 4.50793, -0.461631, -2.01361, 9.36656, -9.36656, 3.54752, -19.0959, 1.9555, 2.16826, 9.72932, 7.41106}, {4.72585, 4.7272, 4.7272, -1.63629, -1.63676, 1.63676, -1.57573, 1.57528, 1.57528, 4.78731, 1.63721, -1.63631, 10.5149, 10.5179, -6.62248, 3.97028, 0.0759901, -3.97031, 10.1978, -6.30058, -6.30058, -23.1195, -6.62484, 10.5155, -3.89487, -0.000556685, -0.000556685, -3.96973, -3.97086, 0.0754336}, {-1.57528, -1.57573, -1.57573, 4.90888, 4.91028, -4.91028, -1.57573, 1.57528, 1.57528, 4.78731, 1.63721, -1.63631, 10.2709, 10.2738, 6.2275, 10.2732, -6.22515, -10.2714, 3.89487, 0.000556685, 0.000556685, -3.97028, -0.0759901, 3.97031, -23.0441, -6.5494, 6.54469, -3.96973, -3.97086, 0.0754336}, {-1.57528, -1.57573, -1.57573, -1.63629, -1.63676, 1.63676, 4.7272, -4.72585, -4.72585, 4.78731, 1.63721, -1.63631, 3.96973, 3.97086, -0.0754336, 10.5155, 6.62303, -10.5174, 10.196, 6.30349, 6.30349, -3.97028, -0.0759901, 3.97031, -3.89487, -0.000556685, -0.000556685, -23.119, -10.5197, 6.62068}, {-1.57528, -1.57573, -1.57573, -1.63629, -1.63676, 1.63676, -1.57573, 1.57528, 1.57528, -14.3619, -4.91163, 4.90893, 3.96973, 3.97086, -0.0754336, 3.97028, 0.0759901, -3.97031, 3.89487, 0.000556685, 0.000556685, 2.33085, 6.22695, 10.2732, 2.6503, 6.54649, -6.5476, 2.33321, -10.272, -6.2257}, {-2.40635, 2.40855, -2.40993, -1.57388, -1.57525, -1.57621, 3.20871, 3.21151, -0.0600473, -2.43695, -0.833412, 0.832954, 7.24946, 9.24051, 7.26022, -2.02076, -2.02253, 2.02253, -17.7925, -15.8233, -0.678532, 11.7686, 5.35618, -5.35435, 4.95766, 2.97727, 0.918721, -0.953948, -2.9395, -0.955365}, {0.802117, -0.80285, 0.803308, 4.72163, 4.72576, 4.72864, 3.20871, 3.21151, -0.0600473, -2.43695, -0.833412, 0.832954, -2.25452, 6.1509, -2.25787, -14.8556, -14.8686, 2.26272, -4.95766, -2.97727, -0.918721, 2.02076, 2.02253, -2.02253, 14.7055, 6.31092, -2.41309, -0.953948, -2.9395, -0.955365}, {0.802117, -0.80285, 0.803308, -1.57388, -1.57525, -1.57621, -9.62613, -9.63454, 0.180142, -2.43695, -0.833412, 0.832954, 0.953948, 2.9395, 0.955365, 4.27475, 4.27848, 8.32739, -8.16613, 0.234124, -4.13196, 2.02076, 2.02253, -2.02253, 4.95766, 2.97727, 0.918721, 8.79385, 0.394151, -4.28718}, {0.802117, -0.80285, 0.803308, -1.57388, -1.57525, -1.57621, 3.20871, 3.21151, -0.0600473, 7.31085, 2.50024, -2.49886, 0.953948, 2.9395, 0.955365, -2.02076, -2.02253, 2.02253, -4.95766, -2.97727, -0.918721, -1.18771, 5.23393, -5.23576, 11.2532, 9.27829, 7.22358, -13.7888, -15.7856, -0.715176}, {5.36291, -5.36781, 5.37088, 0, -3.15057, 0, -1.85687, -1.41402, 1.41389, 3.64451, 2.77532, 0.376399, 2.20964, 14.2849, 2.21292, 2.29522, 5.64214, -1.74767, 11.9323, 5.19225, -5.19032, -16.8733, -16.7434, 0.242074, -4.50486, 0.463834, -0.465254, -2.20964, -1.68266, -2.21292}, {-1.78764, 1.78927, -1.79029, 0, 9.4517, 0, -1.85687, -1.41402, 1.41389, 3.64451, 2.77532, 0.376399, 9.36019, -5.47442, 9.37409, 9.72271, 11.2982, -7.40324, 4.50486, -0.463834, 0.465254, -2.29522, -5.64214, 1.74767, -19.0829, -10.6374, -1.97085, -2.20964, -1.68266, -2.21292}, {-1.78764, 1.78927, -1.79029, 0, -3.15057, 0, 5.57061, 4.24206, -4.24168, 3.64451, 2.77532, 0.376399, 2.20964, 1.68266, 2.21292, 2.29522, 18.2444, -1.74767, 11.6554, -7.62091, 7.62642, -2.29522, -5.64214, 1.74767, -4.50486, 0.463834, -0.465254, -16.7877, -12.7839, -3.71852}, {-1.78764, 1.78927, -1.79029, 0, -3.15057, 0, -1.85687, -1.41402, 1.41389, -10.9335, -8.32596, -1.1292, 2.20964, 1.68266, 2.21292, 2.29522, 5.64214, -1.74767, 4.50486, -0.463834, 0.465254, 4.85533, -12.7992, 8.90884, -4.50486, 13.0661, -0.465254, 5.21784, 3.97342, -7.8685}, {-3.12618, -1.69082, 4.8169, -0.776768, 0.776768, 1.71093, 1.29482, -1.29482, 0.513906, -1.56011, -0.0455553, -0.619199, 2.77915, -4.76387, -6.97386, -0.640348, 0.640348, -2.75005, -8.06782, 6.08311, -0.706171, 6.8808, -0.458127, 5.22684, 2.88854, -0.903828, -1.34945, 0.32792, 1.6568, 0.130149}, {1.04206, 0.563608, -1.60563, 2.3303, -2.3303, -5.13278, 1.29482, -1.29482, 0.513906, -1.56011, -0.0455553, -0.619199, -4.49616, -3.91123, 6.29239, -5.81963, 5.81963, -4.80567, -2.88854, 0.903828, 1.34945, 0.640348, -0.640348, 2.75005, 9.12899, -0.721607, 1.12734, 0.32792, 1.6568, 0.130149}, {1.04206, 0.563608, -1.60563, -0.776768, 0.776768, 1.71093, -3.88446, 3.88446, -1.54172, -1.56011, -0.0455553, -0.619199, -0.32792, -1.6568, -0.130149, 2.46672, -2.46672, -9.59376, -7.05678, -1.3506, 7.77199, 0.640348, -0.640348, 2.75005, 2.88854, -0.903828, -1.34945, 6.56837, 1.83902, 2.60694}, {1.04206, 0.563608, -1.60563, -0.776768, 0.776768, 1.71093, 1.29482, -1.29482, 0.513906, 4.68034, 0.136666, 1.8576, -0.32792, -1.6568, -0.130149, -0.640348, 0.640348, -2.75005, -2.88854, 0.903828, 1.34945, -3.52789, -2.89478, 9.17259, 5.99561, -4.0109, -8.19316, -4.85136, 6.83608, -1.92547}, {0, 4.18682, -1.69558, 0, 0.106442, -1.13019, 1.31177, 1.47434, 0.246037, -1.31177, -0.185178, 0.318964, 0, 1.16773, 5.21915, -1.62143, -1.95396, 1.09288, -6.86849, -5.9947, -1.98688, 6.86849, 2.69467, -2.36873, 1.62143, 0.0973232, 1.00273, 0, -1.5935, -0.69838}, {6.66134e-16, -1.39561, 0.565192, -4.14281e-16, -0.319327, 3.39058, 1.31177, 1.47434, 0.246037, -1.31177, -0.185178, 0.318964, -3.55271e-15, 7.17592, -1.56239, -6.86849, -7.85133, 0.108727, -1.62143, -0.0973232, -1.00273, 1.62143, 1.95396, -1.09288, 6.86849, 0.838037, -0.273122, 1.11022e-15, -1.5935, -0.69838}, {4.44089e-16, -1.39561, 0.565192, -3.97019e-16, 0.106442, -1.13019, -3.9353, -4.42303, -0.738112, -1.31177, -0.185178, 0.318964, -2.22045e-16, 1.5935, 0.69838, -1.62143, -2.37973, 5.61365, -1.62143, 5.48511, -3.2635, 1.62143, 1.95396, -1.09288, 1.62143, 0.0973232, 1.00273, 5.24706, -0.852781, -1.97424}, {-2.22045e-16, -1.39561, 0.565192, 3.45234e-17, 0.106442, -1.13019, 1.31177, 1.47434, 0.246037, 3.9353, 0.555535, -0.956892, 2.22045e-16, 1.5935, 0.69838, -1.62143, -1.95396, 1.09288, -1.62143, -0.0973232, -1.00273, 1.62143, 7.53639, -3.35364, 1.62143, -0.328446, 5.52351, -5.24706, -7.49087, -1.68253}, {3.02999, -1.83569, -4.62902, -2.0783, 1.32959, -1.74182, 0.665193, -1.94149, 0.198817, 2.4231, 0, 0, 12.1305, -7.71818, 7.21305, 1.74669, 0.756347, 1.90726, -2.23457, 9.40942, -2.94828, -11.4391, -0.756347, -1.90726, -0.4262, -1.64347, 2.15301, -3.81734, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, 6.23489, -3.98877, 5.22547, 0.665193, -1.94149, 0.198817, 2.4231, 1.16789e-15, -1.19597e-16, 7.85732, -4.8474, -5.92628, -0.91408, 8.5223, 1.11199, 0.4262, 1.64347, -2.15301, -1.74669, -0.756347, -1.90726, -10.1186, -1.64347, 2.15301, -3.81734, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, -2.0783, 1.32959, -1.74182, -1.99558, 5.82447, -0.59645, 2.4231, 0, 0, 3.81734, -2.39981, 0.245751, 10.0599, -4.56202, 8.87456, 4.46618, -0.804126, -8.32504, -1.74669, -0.756347, -1.90726, -0.4262, -1.64347, 2.15301, -13.5097, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, -2.0783, 1.32959, -1.74182, 0.665193, -1.94149, 0.198817, -7.2693, 0, 0, 3.81734, -2.39981, 0.245751, 1.74669, 0.756347, 1.90726, 0.4262, 1.64347, -2.15301, 2.29329, -3.20394, -8.07929, 7.88699, -6.96183, 9.12031, -6.47811, 10.1658, -1.04102}, {-1.1204, -10.941, -3.69733, -1.78885, -1.78885, 0.204309, 1.41539, -1.85814, 0.960835, 0, 0, -2.39759, 8.90493, 4.85864, -2.59316, 0.461631, 4.50793, -1.4402, -7.87269, 5.2214, -6.55438, -0.461631, -4.50793, 11.0306, 2.21115, 2.21115, 2.71104, -1.74951, 2.29678, 1.77593}, {0.373467, 3.64699, 1.23244, 5.36656, 5.36656, -0.612928, 1.41539, -1.85814, 0.960835, 0, 0, -2.39759, 0.255645, -16.8847, -6.70571, -5.19992, 11.9405, -5.28354, -2.21115, -2.21115, -2.71104, -0.461631, -4.50793, 1.4402, 2.21115, 2.21115, 12.3014, -1.74951, 2.29678, 1.77593}, {0.373467, 3.64699, 1.23244, -1.78885, -1.78885, 0.204309, -4.24616, 5.57441, -2.88251, 0, 0, -2.39759, 1.74951, -2.29678, -1.77593, 7.61705, 11.6633, -2.25744, -3.70501, -16.7991, -7.64082, -0.461631, -4.50793, 1.4402, 2.21115, 2.21115, 2.71104, -1.74951, 2.29678, 11.3663}, {0.373467, 3.64699, 1.23244, -1.78885, -1.78885, 0.204309, 1.41539, -1.85814, 0.960835, 0, 0, 7.19277, 1.74951, -2.29678, -1.77593, 0.461631, 4.50793, -1.4402, -2.21115, -2.21115, -2.71104, -1.9555, -19.0959, -3.48958, 9.36656, 9.36656, 1.89381, -7.41106, 9.72932, -2.06741}, {3.67635, 0.128375, 3.75827, 1.3465, -0.311871, 0.167791, -0.0738998, -1.11087, 1.10252, -0.0471455, 1.46553, -0.0175582, -5.53561, 1.68587, 0.669927, -1.57302, 1.7586, -1.5702, 1.90169, 5.86948, -4.2244, 1.7616, -7.62073, 1.64043, -1.60609, -1.426, -0.185698, 0.14962, -0.438387, -1.34109}, {-1.22545, -0.0427917, -1.25276, -4.03949, 0.935613, -0.503374, -0.0738998, -1.11087, 1.10252, -0.0471455, 1.46553, -0.0175582, 4.75218, 0.609554, 6.35212, -1.27742, 6.20208, -5.98029, 1.60609, 1.426, 0.185698, 1.57302, -1.7586, 1.5702, -1.4175, -7.28813, -0.115465, 0.14962, -0.438387, -1.34109}, {-1.22545, -0.0427917, -1.25276, 1.3465, -0.311871, 0.167791, 0.221699, 3.33261, -3.30757, -0.0471455, 1.46553, -0.0175582, -0.14962, 0.438387, 1.34109, -6.959, 3.00609, -2.24136, 6.50789, 1.59717, 5.19673, 1.57302, -1.7586, 1.5702, -1.60609, -1.426, -0.185698, 0.338202, -6.30052, -1.27086}, {-1.22545, -0.0427917, -1.25276, 1.3465, -0.311871, 0.167791, -0.0738998, -1.11087, 1.10252, 0.141437, -4.3966, 0.0526746, -0.14962, 0.438387, 1.34109, -1.57302, 1.7586, -1.5702, 1.60609, 1.426, 0.185698, 6.47482, -1.58744, 6.58122, -6.99207, -0.17852, -0.856863, 0.445219, 4.00509, -5.75119}, {3.98391, -5.22497, -0.407969, -0.61239, -1.54296, -1.54296, -3.86726e-16, 3.96024e-17, 1.60567, 1.94036, -0.198701, -0.198701, 4.84797, 5.92622, 7.91093, 0.756955, 1.9072, -0.0775154, 1.64146, -2.15281, -8.57548, -8.51839, -1.1124, 0.87232, -1.64146, 2.15281, 2.15281, -2.39842, 0.245608, -1.73911}, {-1.32797, 1.74166, 0.13599, 1.83717, 4.62887, 4.62887, -1.16018e-15, 1.18807e-16, 1.60567, 1.94036, -0.198701, -0.198701, 7.71029, -7.21224, 1.19515, 0.756955, 1.9072, -6.50019, 1.64146, -2.15281, -2.15281, -0.756955, -1.9072, 0.0775154, -9.4029, 2.94761, 2.94761, -2.39842, 0.245608, -1.73911}, {-1.32797, 1.74166, 0.13599, -0.61239, -1.54296, -1.54296, 0, 0, -4.817, 1.94036, -0.198701, -0.198701, 2.39842, -0.245608, 1.73911, 3.20651, 8.07903, 6.09431, 6.95334, -9.11944, -2.69677, -0.756955, -1.9072, 0.0775154, -1.64146, 2.15281, 2.15281, -10.1599, 1.04041, -0.944303}, {-1.32797, 1.74166, 0.13599, -0.61239, -1.54296, -1.54296, 1.16018e-15, -1.18807e-16, 1.60567, -5.82108, 0.596103, 0.596103, 2.39842, -0.245608, 1.73911, 0.756955, 1.9072, -0.0775154, 1.64146, -2.15281, -2.15281, 4.55492, -8.87383, -0.466443, 0.808098, 8.32463, 8.32463, -2.39842, 0.245608, -8.16178}, {4.24495, 4.24616, 5.57441, 2.77721, -0.373467, 3.64699, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -12.7926, 3.70501, -16.7991, 0.461499, 0.461631, -4.50793, 18.2456, 1.74951, 2.29678, -7.61487, -7.61705, 11.6633, -5.64333, -1.74951, -2.29678, 1.6838, -2.21115, 2.21115}, {-1.41498, -1.41539, -1.85814, -8.33162, 1.1204, -10.941, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, 3.97613, 7.87269, 5.2214, 13.0638, 0.461631, -4.50793, 5.64333, 1.74951, 2.29678, -0.461499, -0.461631, 4.50793, -12.7967, -8.90493, 4.85864, 1.6838, -2.21115, 2.21115}, {-1.41498, -1.41539, -1.85814, 2.77721, -0.373467, 3.64699, 9.4517, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 2.21115, -2.21115, -10.6473, 1.9555, -19.0959, 11.3033, 7.41106, 9.72932, -0.461499, -0.461631, 4.50793, -5.64333, -1.74951, -2.29678, -5.46957, -9.36656, 9.36656}, {-1.41498, -1.41539, -1.85814, 2.77721, -0.373467, 3.64699, -3.15057, 0, 0, -5.36503, -5.36656, 5.36656, -1.6838, 2.21115, -2.21115, 0.461499, 0.461631, -4.50793, 5.64333, 1.74951, 2.29678, 5.19843, 5.19992, 11.9405, -16.7522, -0.255645, -16.8847, 14.2861, -2.21115, 2.21115}, {-5.69487, -2.66454e-15, -2.22045e-16, -0.76309, -0.00636856, -2.01559, -0.460311, 1.45577, 1.44144, -0.67489, -1.4494, 0.574147, 1.64917, 0.0333462, 10.5538, 1.51221, -1.79156, 0.709685, 0.063805, -7.62252, -7.54749, 1.18735, 7.58918, -3.00627, 1.77744, 1.79943, 1.78172, 1.40319, -0.00787198, -2.49141}, {1.89829, -1.55431e-15, 3.33067e-16, 2.28927, 0.0191057, 6.04677, -0.460311, 1.45577, 1.44144, -0.67489, -1.4494, 0.574147, -8.99635, 0.00787198, 2.49141, 3.35345, -7.61465, -5.05609, -1.77744, -1.79943, -1.78172, -1.51221, 1.79156, -0.709685, 4.477, 7.59705, -0.514866, 1.40319, -0.00787198, -2.49141}, {1.89829, -1.9984e-15, -1.22125e-15, -0.76309, -0.00636856, -2.01559, 1.38093, -4.36732, -4.32433, -0.67489, -1.4494, 0.574147, -1.40319, 0.00787198, 2.49141, 4.56457, -1.76609, 8.77205, -9.3706, -1.79943, -1.78172, -1.51221, 1.79156, -0.709685, 1.77744, 1.79943, 1.78172, 4.10275, 5.78974, -4.78799}, {1.89829, 1.33227e-15, -5.55112e-16, -0.76309, -0.00636856, -2.01559, -0.460311, 1.45577, 1.44144, 2.02467, 4.34821, -1.72244, -1.40319, 0.00787198, 2.49141, 1.51221, -1.79156, 0.709685, -1.77744, -1.79943, -1.78172, -9.10537, 1.79156, -0.709685, 4.8298, 1.82491, 9.84408, 3.24443, -5.83096, -8.25718}, {-1.1204, -4.37783, -10.941, 1.41539, 0.69601, -1.85814, -1.78885, 0.0170635, -1.78885, 0, -2.17235, 0, -7.87269, -5.44812, 5.2214, 0.461631, -0.881407, 4.50793, 8.90493, -1.89311, 4.85864, -0.461631, 9.57081, -4.50793, -1.74951, 1.82486, 2.29678, 2.21115, 2.66408, 2.21115}, {0.373467, 1.45928, 3.64699, -4.24616, -2.08803, 5.57441, -1.78885, 0.0170635, -1.78885, 0, -2.17235, 0, -3.70501, -8.50119, -16.7991, 7.61705, -0.949661, 11.6633, 1.74951, -1.82486, -2.29678, -0.461631, 0.881407, -4.50793, -1.74951, 10.5143, 2.29678, 2.21115, 2.66408, 2.21115}, {0.373467, 1.45928, 3.64699, 1.41539, 0.69601, -1.85814, 5.36656, -0.0511904, 5.36656, 0, -2.17235, 0, -2.21115, -2.66408, -2.21115, -5.19992, -3.66545, 11.9405, 0.255645, -7.66197, -16.8847, -0.461631, 0.881407, -4.50793, -1.74951, 1.82486, 2.29678, 2.21115, 11.3535, 2.21115}, {0.373467, 1.45928, 3.64699, 1.41539, 0.69601, -1.85814, -1.78885, 0.0170635, -1.78885, 0, 6.51705, 0, -2.21115, -2.66408, -2.21115, 0.461631, -0.881407, 4.50793, 1.74951, -1.82486, -2.29678, -1.9555, -4.9557, -19.0959, -7.41106, -0.959181, 9.72932, 9.36656, 2.59583, 9.36656}, {-4.15743, -0.83732, 1.25624, -1.32462, -1.53355, 0.226806, 0.107516, 1.61619, -1.60405, -0.168703, -0.361739, 1.79599, 5.22286, 7.6848, -0.669975, 1.50443, -0.10214, 1.70236, -2.27592, -8.80746, 8.91649, -0.829614, 1.5491, -8.88631, 1.84585, 2.34271, -2.50031, 0.0756322, -1.55058, -0.237251}, {1.38581, 0.279107, -0.418747, 3.97387, 4.60066, -0.680419, 0.107516, 1.61619, -1.60405, -0.168703, -0.361739, 1.79599, -5.61888, 0.434156, 1.91224, 1.07436, -6.56689, 8.11854, -1.84585, -2.34271, 2.50031, -1.50443, 0.10214, -1.70236, 2.52067, 3.78967, -9.68425, 0.0756322, -1.55058, -0.237251}, {1.38581, 0.279107, -0.418747, -1.32462, -1.53355, 0.226806, -0.322547, -4.84856, 4.81214, -0.168703, -0.361739, 1.79599, -0.0756322, 1.55058, 0.237251, 6.80292, 6.03208, 0.795135, -7.3891, -3.45914, 4.1753, -1.50443, 0.10214, -1.70236, 1.84585, 2.34271, -2.50031, 0.750446, -0.103625, -7.4212}, {1.38581, 0.279107, -0.418747, -1.32462, -1.53355, 0.226806, 0.107516, 1.61619, -1.60405, 0.50611, 1.08522, -5.38796, -0.0756322, 1.55058, 0.237251, 1.50443, -0.10214, 1.70236, -1.84585, -2.34271, 2.50031, -7.04767, -1.01429, -0.0273746, 7.14434, 8.47693, -3.40753, -0.354431, -8.01533, 6.17893}, {-9.45441, -1.42109e-14, 0, -1.78885, -1.78885, 1.78885, -1.36261, -1.36216, -1.78885, 0, 3.15102, 0, 5.47113, 9.36656, -9.36656, 3.89543, 3.89487, 0, 3.23931, 7.13238, 9.36656, -3.89543, -16.4989, 0, 2.21115, -1.68373, -2.21115, 1.68428, -2.21115, 2.21115}, {3.15147, 5.77316e-15, -1.39933e-15, 5.36656, 5.36656, -5.36656, -1.36261, -1.36216, -1.78885, 1.06591e-15, 3.15102, 1.39933e-15, -14.2902, 2.21115, -2.21115, 9.34589, 9.34353, 7.15542, -2.21115, 1.68373, 2.21115, -3.89543, -3.89487, 3.47389e-31, 2.21115, -14.2878, -2.21115, 1.68428, -2.21115, 2.21115}, {3.15147, 1.77636e-15, 2.66454e-15, -1.78885, -1.78885, 1.78885, 4.08784, 4.08649, 5.36656, 0, 3.15102, 0, -1.68428, 2.21115, -2.21115, 11.0508, 11.0503, -7.15542, -14.817, 1.68373, 2.21115, -3.89543, -3.89487, -3.55271e-15, 2.21115, -1.68373, -2.21115, 1.68428, -14.8152, 2.21115}, {3.15147, -2.66454e-15, 0, -1.78885, -1.78885, 1.78885, -1.36261, -1.36216, -1.78885, 0, -9.45305, 0, -1.68428, 2.21115, -2.21115, 3.89543, 3.89487, 0, -2.21115, 1.68373, 2.21115, -16.5013, -3.89487, 0, 9.36656, 5.47169, -9.36656, 7.13474, 3.23751, 9.36656}, {1.36235e-15, 1.07667, 3.62612, 1.31177, 0.0458057, 1.34099, -1.31177, -1.15409, -0.162924, 1.0026e-17, 1.46718, 0.0306378, -6.86849, 0.20377, -5.52749, -6.66134e-16, 1.36992, -1.45618, 6.86849, 6.48653, 2.34713, 6.2603e-16, -7.23863, 1.33362, -1.62143, -1.87015, -1.69543, 1.62143, -0.386993, 0.163515}, {-7.28501e-17, -0.358889, -1.20871, -3.9353, -0.137417, -4.02298, -1.31177, -1.15409, -0.162924, 1.18307e-15, 1.46718, 0.0306378, -1.62143, 1.82255, 4.67132, 5.24706, 5.9863, -0.804479, 1.62143, 1.87015, 1.69543, -1.55431e-15, -1.36992, 1.45618, -1.62143, -7.73886, -1.81798, 1.62143, -0.386993, 0.163515}, {5.92827e-17, -0.358889, -1.20871, 1.31177, 0.0458057, 1.34099, 3.9353, 3.46228, 0.488772, -9.47461e-16, 1.46718, 0.0306378, -1.62143, 0.386993, -0.163515, -5.24706, 1.1867, -6.82015, 1.62143, 3.30571, 6.53026, 1.11022e-15, -1.36992, 1.45618, -1.62143, -1.87015, -1.69543, 1.62143, -6.25571, 0.0409633}, {0, -0.358889, -1.20871, 1.31177, 0.0458057, 1.34099, -1.31177, -1.15409, -0.162924, 0, -4.40153, -0.0919135, -1.62143, 0.386993, -0.163515, 0, 1.36992, -1.45618, 1.62143, 1.87015, 1.69543, 0, 0.0656375, 6.29101, -6.86849, -2.05337, -7.05941, 6.86849, 4.22939, 0.815211}, {1.26288e-15, -3.55271e-15, -3.26126, -1.4431, -0.571101, -0.587405, 1.45561, -1.44292, 0.31363, -0.0125109, 2.01402, -0.813311, 7.55617, 2.99032, 1.73198, -0.0154644, 2.48947, 0.338405, -7.62167, 7.55524, -2.9859, 0.0655081, -10.5456, 2.91484, 1.79923, -1.78355, 1.73138, -1.78377, -0.70592, 0.61764}, {9.0726e-16, -4.44089e-16, 1.08709, 4.3293, 1.7133, 1.76222, 1.45561, -1.44292, 0.31363, -0.0125109, 2.01402, -0.813311, 1.78377, 0.70592, -4.96598, -5.83791, 8.26116, -0.916114, -1.79923, 1.78355, -1.73138, 0.0154644, -2.48947, -0.338405, 1.84928, -9.83965, 4.98462, -1.78377, -0.70592, 0.61764}, {4.59702e-16, 8.88178e-16, 1.08709, -1.4431, -0.571101, -0.587405, -4.36683, 4.32877, -0.940889, -0.0125109, 2.01402, -0.813311, 1.78377, 0.70592, -0.61764, 5.75693, 4.77387, 2.68803, -1.79923, 1.78355, -6.07972, 0.0154644, -2.48947, -0.338405, 1.79923, -1.78355, 1.73138, -1.73373, -8.76202, 3.87088}, {0, -4.44089e-16, 1.08709, -1.4431, -0.571101, -0.587405, 1.45561, -1.44292, 0.31363, 0.0375328, -6.04207, 2.43993, 1.78377, 0.70592, -0.61764, -0.0154644, 2.48947, 0.338405, -1.79923, 1.78355, -1.73138, 0.0154644, -2.48947, -4.68675, 7.57163, 0.500853, 4.081, -7.60621, 5.06577, -0.63688}, {2.18368e-11, -2.07612e-11, -5.36656, -2.34313, 0, 0, 2.34313, -2.34313, -1.78885, 0, 2.34313, 0, 12.2688, -8.55449e-12, -2.21115, -8.99725e-12, 2.89626, 2.21115, -12.2688, 12.2688, 7.15542, 8.99725e-12, -12.2688, -2.21115, 2.89626, -2.89626, 0, -2.89626, 8.55449e-12, 2.21115}, {-7.27948e-12, 6.92291e-12, 1.78885, 7.02938, 0, 0, 2.34313, -2.34313, -1.78885, -1.36297e-15, 2.34313, 1.04056e-15, 2.89626, -3.62483e-11, -9.36656, -9.3725, 12.2688, 9.36656, -2.89626, 2.89626, 8.4211e-16, 8.99947e-12, -2.89626, -2.21115, 2.89626, -12.2688, -5.44843e-15, -2.89626, 8.55715e-12, 2.21115}, {-7.27773e-12, 6.92024e-12, 1.78885, -2.34313, 0, 0, -7.02938, 7.02938, 5.36656, 0, 2.34313, 0, 2.89626, -8.55405e-12, -2.21115, 9.3725, 2.89626, 2.21115, -2.89626, 2.89626, -7.15542, 8.99636e-12, -2.89626, -2.21115, 2.89626, -2.89626, 0, -2.89626, -9.3725, 2.21115}, {-7.27951e-12, 6.9198e-12, 1.78885, -2.34313, 0, 0, 2.34313, -2.34313, -1.78885, 0, -7.02938, 0, 2.89626, -8.55316e-12, -2.21115, -8.99814e-12, 2.89626, 2.21115, -2.89626, 2.89626, -4.44089e-16, 3.81171e-11, -2.89626, -9.36656, 12.2688, -2.89626, 0, -12.2688, 9.3725, 9.36656}, {0, -2.67212e-17, 7.02938, 0, -2.34313, 0, -1.78885, 2.34313, 2.34566, 1.78885, 1.02081e-11, -0.00253498, 0, 12.2688, 2.89626, 2.21115, 1.26184e-11, -2.8994, 9.36656, -12.2688, -9.38578, -9.36656, -5.34508e-11, 2.90954, -2.21115, 2.89626, 0.00313341, 0, -2.89626, -2.89626}, {0, 3.72666e-16, -2.34313, 0, 7.02938, 0, -1.78885, 2.34313, 2.34566, 1.78885, 1.02097e-11, -0.00253498, 0, 2.89626, 12.2688, 9.36656, -9.3725, -12.282, 2.21115, -2.89626, -0.00313341, -2.21115, -1.26201e-11, 2.8994, -9.36656, 2.89626, 0.0132733, 0, -2.89626, -2.89626}, {0, -1.47432e-16, -2.34313, 0, -2.34313, 0, 5.36656, -7.02938, -7.03698, 1.78885, 1.02102e-11, -0.00253498, 0, 2.89626, 2.89626, 2.21115, 9.3725, -2.8994, 2.21115, -2.89626, 9.36937, -2.21115, -1.26201e-11, 2.8994, -2.21115, 2.89626, 0.00313341, -7.15542, -2.89626, -2.88612}, {-2.22045e-16, -3.98999e-17, -2.34313, 0, -2.34313, 0, -1.78885, 2.34313, 2.34566, -5.36656, -3.06329e-11, 0.00760494, 4.44089e-16, 2.89626, 2.89626, 2.21115, 1.26215e-11, -2.8994, 2.21115, -2.89626, -0.00313341, -2.21115, -1.26209e-11, 12.2719, -2.21115, 12.2688, 0.00313341, 7.15542, -12.2688, -12.2789}, {3.55271e-15, -9.45441, -2.66454e-14, 1.78885, -1.78885, -1.78885, -1.78885, -1.36261, -1.36261, 0, 0, 3.15147, -9.36656, 5.47113, 9.36656, -1.77636e-15, 3.89543, 3.89543, 9.36656, 3.23931, 7.13474, 1.77636e-15, -3.89543, -16.5013, -2.21115, 2.21115, -1.68428, 2.21115, 1.68428, -2.21115}, {3.76824e-16, 3.15147, -2.22045e-15, -5.36656, 5.36656, 5.36656, -1.78885, -1.36261, -1.36261, 1.39953e-15, 1.06606e-15, 3.15147, -2.21115, -14.2902, 2.21115, 7.15542, 9.34589, 9.34589, 2.21115, -2.21115, 1.68428, -2.22045e-15, -3.89543, -3.89543, -2.21115, 2.21115, -14.2902, 2.21115, 1.68428, -2.21115}, {0, 3.15147, -7.10543e-15, 1.78885, -1.78885, -1.78885, 5.36656, 4.08784, 4.08784, 0, 0, 3.15147, -2.21115, -1.68428, 2.21115, -7.15542, 11.0508, 11.0508, 2.21115, -14.817, 1.68428, 0, -3.89543, -3.89543, -2.21115, 2.21115, -1.68428, 2.21115, 1.68428, -14.817}, {-5.55112e-15, 3.15147, 4.44089e-16, 1.78885, -1.78885, -1.78885, -1.78885, -1.36261, -1.36261, 0, 0, -9.45441, -2.21115, -1.68428, 2.21115, -7.10543e-15, 3.89543, 3.89543, 2.21115, -2.21115, 1.68428, 3.01981e-14, -16.5013, -3.89543, -9.36656, 9.36656, 5.47113, 9.36656, 7.13474, 3.23931}, {-5.36656, 7.03835, 7.02938, -1.78885, -6.94208e-12, -7.11741e-12, 0, 2.34612, 2.72942e-15, 0, 0, 2.34313, 7.15542, 2.89996, 2.89626, 2.21115, -2.89996, 8.79423e-12, -2.21115, -9.38447, 2.89626, -2.21115, 2.89996, -9.3725, 2.21115, 8.58089e-12, -2.89626, 0, -2.89996, -2.89626}, {1.78885, -2.34612, -2.34313, 5.36656, 2.08278e-11, 2.13522e-11, 0, 2.34612, 1.36471e-15, 0, -1.36471e-15, 2.34313, -7.15542, 12.2844, 12.2688, 2.21115, -12.2844, 8.79045e-12, -2.21115, -8.58264e-12, 2.89626, -2.21115, 2.89996, -8.79533e-12, 2.21115, 8.58868e-12, -12.2688, 0, -2.89996, -2.89626}, {1.78885, -2.34612, -2.34313, -1.78885, -6.94417e-12, -7.11741e-12, 0, -7.03835, 0, 0, 0, 2.34313, -4.44089e-16, 2.89996, 2.89626, 9.36656, -2.89996, 3.72672e-11, -9.36656, 9.38447, 12.2688, -2.21115, 2.89996, -8.79702e-12, 2.21115, 8.58346e-12, -2.89626, 0, -2.89996, -12.2688}, {1.78885, -2.34612, -2.34313, -1.78885, -6.94104e-12, -7.11845e-12, 0, 2.34612, 2.72942e-15, 0, 0, -7.02938, -4.44089e-16, 2.89996, 2.89626, 2.21115, -2.89996, 8.79551e-12, -2.21115, -8.57902e-12, 2.89626, -9.36656, 12.2844, 9.3725, 9.36656, 3.63438e-11, -2.89626, 0, -12.2844, -2.89626}, {5.36656, -5.36656, 5.36656, 3.15147, 0, 0, -1.36261, -1.78885, -1.36216, 0, 0, 3.15102, -14.2902, -2.21115, 2.21115, -2.21115, 2.21115, 1.68373, 9.34589, 7.15542, 9.34353, 2.21115, -2.21115, -14.2878, -3.89543, 0, -3.89487, 1.68428, 2.21115, -2.21115}, {-1.78885, 1.78885, -1.78885, -9.45441, -4.1986e-15, -1.05928e-14, -1.36261, -1.78885, -1.36216, 1.06591e-15, 1.39933e-15, 3.15102, 5.47113, -9.36656, 9.36656, 3.23931, 9.36656, 7.13238, 3.89543, 3.0155e-15, 3.89487, 2.21115, -2.21115, -1.68373, -3.89543, -9.05692e-15, -16.4989, 1.68428, 2.21115, -2.21115}, {-1.78885, 1.78885, -1.78885, 3.15147, 0, 0, 4.08784, 5.36656, 4.08649, 0, 0, 3.15102, -1.68428, -2.21115, 2.21115, -14.817, 2.21115, 1.68373, 11.0508, -7.15542, 11.0503, 2.21115, -2.21115, -1.68373, -3.89543, 0, -3.89487, 1.68428, 2.21115, -14.8152}, {-1.78885, 1.78885, -1.78885, 3.15147, 0, 0, -1.36261, -1.78885, -1.36216, 0, 0, -9.45305, -1.68428, -2.21115, 2.21115, -2.21115, 2.21115, 1.68373, 3.89543, -4.44089e-16, 3.89487, 9.36656, -9.36656, 5.47169, -16.5013, 0, -3.89487, 7.13474, 9.36656, 3.23751}, {3.37408, 4.04519, 4.04519, 1.73606, 1.52739, 0.215622, 1.28983, 0.0265046, 1.33827, -1.90119, -0.205494, -0.205494, -7.69991, -6.33079, 0.5377, -3.7402, -1.92072, -1.92072, -5.36342, 1.52793, -5.34056, 11.345, 2.74269, 2.74269, 0.204116, -1.63395, -0.0125188, 0.755686, 0.221243, -1.40019}, {-1.12469, -1.3484, -1.3484, -5.20817, -4.58216, -0.646866, 1.28983, 0.0265046, 1.33827, -1.90119, -0.205494, -0.205494, 3.74309, 5.17235, 6.79378, -8.89951, -2.02673, -7.27379, -0.204116, 1.63395, 0.0125188, 3.7402, 1.92072, 1.92072, 7.80888, -0.811974, 0.809457, 0.755686, 0.221243, -1.40019}, {-1.12469, -1.3484, -1.3484, 1.73606, 1.52739, 0.215622, -3.86948, -0.0795138, -4.01481, -1.90119, -0.205494, -0.205494, -0.755686, -0.221243, 1.40019, -10.6844, -8.03027, -2.7832, 4.29466, 7.02754, 5.40611, 3.7402, 1.92072, 1.92072, 0.204116, -1.63395, -0.0125188, 8.36045, 1.04322, -0.578212}, {-1.12469, -1.3484, -1.3484, 1.73606, 1.52739, 0.215622, 1.28983, 0.0265046, 1.33827, 5.70357, 0.616482, 0.616482, -0.755686, -0.221243, 1.40019, -3.7402, -1.92072, -1.92072, -0.204116, 1.63395, 0.0125188, 8.23897, 7.31431, 7.31431, -6.74011, -7.7435, -0.875007, -4.40362, 0.115225, -6.75327}, {7.02938, 7.0206, 5.36656, -2.72401e-15, 2.34147, -1.03982e-15, 2.34313, 0, 0, -1.04066e-11, -0.00126659, 1.78885, 2.89626, -9.36743, 2.21115, -2.89626, -2.89421, 1.28529e-15, -9.3725, 2.89265, 2.21115, 2.89626, 2.89928, -7.15542, 1.28666e-11, -2.89265, -2.21115, -2.89626, 0.00156559, -2.21115}, {-2.34313, -2.3402, -1.78885, 4.08602e-15, -7.0244, -3.11946e-15, 2.34313, 7.36763e-19, -1.04056e-15, -1.0403e-11, -0.00126659, 1.78885, 12.2688, 9.35923, 9.36656, -12.2688, -2.89421, 4.16314e-15, -1.28599e-11, 2.89265, 2.21115, 2.89626, 2.89421, 4.43179e-16, 5.44723e-11, -2.88758, -9.36656, -2.89626, 0.00156559, -2.21115}, {-2.34313, -2.3402, -1.78885, -2.41965e-26, 2.34147, 4.15928e-15, -7.02938, 0, 0, -1.04066e-11, -0.00126659, 1.78885, 2.89626, -0.00156559, 2.21115, -2.89626, -12.2601, -2.17783e-14, 9.3725, 12.2534, 9.36656, 2.89626, 2.89421, 5.58524e-15, 1.28633e-11, -2.89265, -2.21115, -2.89626, 0.00663197, -9.36656}, {-2.34313, -2.3402, -1.78885, 6.05094e-27, 2.34147, -1.03982e-15, 2.34313, 0, 0, 3.12292e-11, 0.00379978, -5.36656, 2.89626, -0.00156559, 2.21115, -2.89626, -2.89421, 1.28529e-15, -1.28666e-11, 2.89265, 2.21115, 12.2688, 12.255, 7.15542, 1.28671e-11, -12.2585, -2.21115, -12.2688, 0.00156559, -2.21115}, {-3.69587, -1.12113, -5.61393, -0.115297, -1.49037, 0.58988, -0.136463, 0.136463, -2.07323, -0.980196, 0.980196, -0.387956, -0.919078, 7.34175, -5.40172, 0.311194, 1.67352, 1.83353, -0.80825, -1.17646, 8.54253, 3.60959, -5.59431, -0.281701, 1.3541, 0.630611, -0.249592, 1.38027, -1.38027, 3.0422}, {1.23196, 0.373711, 1.87131, 0.345892, 4.47111, -1.76964, -0.136463, 0.136463, -2.07323, -0.980196, 0.980196, -0.387956, -6.30809, -0.114578, -10.5274, 0.857047, 1.12767, 10.1265, -1.3541, -0.630611, 0.249592, -0.311194, -1.67352, -1.83353, 5.27489, -3.29017, 1.30223, 1.38027, -1.38027, 3.0422}, {1.23196, 0.373711, 1.87131, -0.115297, -1.49037, 0.58988, 0.40939, -0.40939, 6.2197, -0.980196, 0.980196, -0.387956, -1.38027, 1.38027, -3.0422, 0.772383, 7.635, -0.525997, -6.28193, -2.12546, -7.23564, -0.311194, -1.67352, -1.83353, 1.3541, 0.630611, -0.249592, 5.30105, -5.30105, 4.59402}, {1.23196, 0.373711, 1.87131, -0.115297, -1.49037, 0.58988, -0.136463, 0.136463, -2.07323, 2.94059, -2.94059, 1.16387, -1.38027, 1.38027, -3.0422, 0.311194, 1.67352, 1.83353, -1.3541, -0.630611, 0.249592, -5.23902, -3.16837, -9.31876, 1.81529, 6.59209, -2.60911, 1.92612, -1.92612, 11.3351}, {5.57441, -4.24616, -4.24616, 3.64699, 0.373467, -2.778, -1.78885, -1.78885, -1.78885, 0, 0, 3.15147, -16.7991, -3.70501, 12.7963, -2.29678, 1.74951, 5.64494, 11.6633, 7.61705, 7.61705, 2.29678, -1.74951, -18.2508, -4.50793, -0.461631, -0.461631, 2.21115, 2.21115, -1.68428}, {-1.85814, 1.41539, 1.41539, -10.941, -1.1204, 8.334, -1.78885, -1.78885, -1.78885, 1.39953e-15, 1.39953e-15, 3.15147, 5.2214, -7.87269, -3.97726, 4.85864, 8.90493, 12.8004, 4.50793, 0.461631, 0.461631, 2.29678, -1.74951, -5.64494, -4.50793, -0.461631, -13.0675, 2.21115, 2.21115, -1.68428}, {-1.85814, 1.41539, 1.41539, 3.64699, 0.373467, -2.778, 5.36656, 5.36656, 5.36656, 0, 0, 3.15147, -2.21115, -2.21115, 1.68428, -16.8847, 0.255645, 16.7569, 11.9405, -5.19992, -5.19992, 2.29678, -1.74951, -5.64494, -4.50793, -0.461631, -0.461631, 2.21115, 2.21115, -14.2902}, {-1.85814, 1.41539, 1.41539, 3.64699, 0.373467, -2.778, -1.78885, -1.78885, -1.78885, 0, 0, -9.45441, -2.21115, -2.21115, 1.68428, -2.29678, 1.74951, 5.64494, 4.50793, 0.461631, 0.461631, 9.72932, -7.41106, -11.3065, -19.0959, -1.9555, 10.6504, 9.36656, 9.36656, 5.47113}, {0.00760494, 5.36656, -0.00379978, 1.35906e-15, -2.07964e-15, 2.34147, -2.34059, 1.78885, -2.34273, 2.34313, 0, 0, 0.00313341, 2.21115, -12.2616, 2.89313, -2.21115, 0.00156559, 12.2586, -7.15542, 12.2651, -12.2656, 2.21115, -0.00156559, -2.89626, 2.57058e-15, -2.89421, -0.00313341, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, -8.16761e-15, 3.11946e-15, -7.0244, -2.34059, 1.78885, -2.34273, 2.34313, -1.04056e-15, 1.36274e-15, 0.0132733, 9.36656, -2.90084, 12.2555, -9.36656, 9.3725, 2.89626, -2.1274e-15, 2.89421, -2.89313, 2.21115, -0.00156559, -12.2688, 6.73371e-15, -2.89421, -0.00313341, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, 5.44802e-15, 0, 2.34147, 7.02177, -5.36656, 7.0282, 2.34313, 0, 0, 0.00313341, 2.21115, -2.89578, 2.89313, -2.21115, -9.3643, 2.9064, 7.15542, 2.88915, -2.89313, 2.21115, -0.00156559, -2.89626, 0, -2.89421, -9.37564, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, -1.36201e-15, 0, 2.34147, -2.34059, 1.78885, -2.34273, -7.02938, 0, 0, 0.00313341, 2.21115, -2.89578, 2.89313, -2.21115, 0.00156559, 2.89626, 4.44089e-16, 2.89421, -2.88299, 9.36656, -0.00663197, -2.89626, 0, -12.2601, 9.35923, -9.36656, 12.2667}, {-2.0499, 2.05263, 6.32666, 0.872781, 1.47234, -0.0861955, 0.376973, -0.375702, 1.61414, -1.93305, -0.412429, 0.580942, -5.41454, -6.86355, 3.05805, -1.54478, -1.35552, -1.88864, -2.81846, 2.81293, -5.84502, 9.277, 3.00524, -0.435124, 1.31057, -1.31012, -0.61154, 1.92342, 0.974184, -2.71327}, {0.683301, -0.68421, -2.10889, -2.61834, -4.41703, 0.258586, 0.376973, -0.375702, 1.61414, -1.93305, -0.412429, 0.580942, -4.65662, 1.76266, 11.1488, -3.05267, 0.147289, -8.34521, -1.31057, 1.31012, 0.61154, 1.54478, 1.35552, 1.88864, 9.04279, 0.339593, -2.93531, 1.92342, 0.974184, -2.71327}, {0.683301, -0.68421, -2.10889, 0.872781, 1.47234, -0.0861955, -1.13092, 1.12711, -4.84242, -1.93305, -0.412429, 0.580942, -1.92342, -0.974184, 2.71327, -5.0359, -7.24489, -1.54386, -4.04377, 4.04697, 9.04709, 1.54478, 1.35552, 1.88864, 1.31057, -1.31012, -0.61154, 9.65564, 2.6239, -5.03704}, {0.683301, -0.68421, -2.10889, 0.872781, 1.47234, -0.0861955, 0.376973, -0.375702, 1.61414, 5.79916, 1.23729, -1.74283, -1.92342, -0.974184, 2.71327, -1.54478, -1.35552, -1.88864, -1.31057, 1.31012, 0.61154, -1.18842, 4.09236, 10.3242, -2.18055, -7.19949, -0.266758, 0.41553, 2.47699, -9.16983}, {3.84226, 4.31846, 0.720662, 0.104325, 0.223697, -1.11063, 1.27099, 0.0329107, 0.803582, -0.0945646, 1.18288, 0.547265, 1.03685, 0.608011, 6.11224, -1.69999, -0.317185, 0.379527, -5.07191, 1.60698, -3.91068, 2.07825, -4.41433, -2.56859, -0.0120645, -1.73863, 0.696352, -1.45415, -1.5028, -1.66974}, {-1.28075, -1.43949, -0.240221, -0.312975, -0.671092, 3.33188, 1.27099, 0.0329107, 0.803582, -0.0945646, 1.18288, 0.547265, 6.57716, 7.26075, 2.63062, -6.78396, -0.448828, -2.8348, 0.0120645, 1.73863, -0.696352, 1.69999, 0.317185, -0.379527, 0.366194, -6.47014, -1.49271, -1.45415, -1.5028, -1.66974}, {-1.28075, -1.43949, -0.240221, 0.104325, 0.223697, -1.11063, -3.81298, -0.0987322, -2.41075, -0.0945646, 1.18288, 0.547265, 1.45415, 1.5028, 1.66974, -2.11729, -1.21197, 4.82203, 5.13508, 7.49658, 0.26453, 1.69999, 0.317185, -0.379527, -0.0120645, -1.73863, 0.696352, -1.07589, -6.23432, -3.8588}, {-1.28075, -1.43949, -0.240221, 0.104325, 0.223697, -1.11063, 1.27099, 0.0329107, 0.803582, 0.283694, -3.54864, -1.64179, 1.45415, 1.5028, 1.66974, -1.69999, -0.317185, 0.379527, 0.0120645, 1.73863, -0.696352, 6.823, 6.07514, 0.581356, -0.429365, -2.63341, 5.13886, -6.53812, -1.63444, -4.88406}, {6.08004, 1.41594, 0.0377686, 0.57469, 1.08447, 1.45022, 1.45199, 0.720135, -1.43763, 0, -1.33263, 0, -0.504, -5.09498, -7.57787, -2.50511, -2.23062, -0.0155615, -5.09761, -3.18728, 7.54308, 2.50511, 7.56114, 0.0155615, -0.710355, 0.306735, -1.79257, -1.79476, 0.757084, 1.77701}, {-2.02668, -0.471981, -0.0125895, -1.72407, -3.25342, -4.35065, 1.45199, 0.720135, -1.43763, 0, -1.33263, 0, 9.90148, 1.13084, -1.72665, -8.31307, -5.11116, 5.73495, 0.710355, -0.306735, 1.79257, 2.50511, 2.23062, 0.0155615, -0.710355, 5.63725, -1.79257, -1.79476, 0.757084, 1.77701}, {-2.02668, -0.471981, -0.0125895, 0.57469, 1.08447, 1.45022, -4.35597, -2.1604, 4.31288, 0, -1.33263, 0, 1.79476, -0.757084, -1.77701, -4.80387, -6.56852, -5.81643, 8.81707, 1.58119, 1.84292, 2.50511, 2.23062, 0.0155615, -0.710355, 0.306735, -1.79257, -1.79476, 6.0876, 1.77701}, {-2.02668, -0.471981, -0.0125895, 0.57469, 1.08447, 1.45022, 1.45199, 0.720135, -1.43763, 0, 3.99789, 0, 1.79476, -0.757084, -1.77701, -2.50511, -2.23062, -0.0155615, 0.710355, -0.306735, 1.79257, 10.6118, 4.11854, 0.0659197, -3.00911, -4.03116, -7.59343, -7.60272, -2.12346, 7.52752}, {-1.37732, 4.35589, 4.31302, -1.40475, 2.02293, -0.00626368, 1.89829, -6.72683e-16, 1.70116e-15, -0.952649, -0.570969, 1.44394, 6.78788, -8.79749, 1.80986, -0.610051, -2.50048, 0.00774234, -10.5071, 1.79473, 1.77706, 4.42065, 4.78436, -5.78349, 2.9139, -1.79473, -1.77706, -1.16888, 0.705756, -1.7848}, {0.459107, -1.45196, -1.43767, 4.21425, -6.0688, 0.018791, 1.89829, -4.0361e-16, 1.0207e-15, -0.952649, -0.570969, 1.44394, -0.66755, 5.1021, 7.53549, -8.20322, -2.50048, 0.00774234, -2.9139, 1.79473, 1.77706, 0.610051, 2.50048, -0.00774234, 6.7245, 0.489149, -7.5528, -1.16888, 0.705756, -1.7848}, {0.459107, -1.45196, -1.43767, -1.40475, 2.02293, -0.00626368, -5.69487, 0, 0, -0.952649, -0.570969, 1.44394, 1.16888, -0.705756, 1.7848, 5.00895, -10.5922, 0.0327971, -4.75033, 7.60258, 7.52775, 0.610051, 2.50048, -0.00774234, 2.9139, -1.79473, -1.77706, 2.64172, 2.98963, -7.56055}, {0.459107, -1.45196, -1.43767, -1.40475, 2.02293, -0.00626368, 1.89829, -1.34537e-16, 3.40233e-16, 2.85795, 1.71291, -4.33181, 1.16888, -0.705756, 1.7848, -0.610051, -2.50048, 0.00774234, -2.9139, 1.79473, 1.77706, -1.22638, 8.30834, 5.74295, 8.5329, -9.88646, -1.75201, -8.76204, 0.705756, -1.7848}, {-5.36656, -5.36656, -5.36656, -0.373467, -3.64699, -0.373467, 0, 0, -1.60567, -1.41539, 1.85814, 0.190281, -0.255645, 16.8847, -0.255645, 0.461631, 4.50793, 2.44635, -2.21115, -2.21115, 6.19624, 5.19992, -11.9405, -3.20747, 2.21115, 2.21115, 0.226431, 1.74951, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 1.1204, 10.941, 1.1204, 0, 0, -1.60567, -1.41539, 1.85814, 0.190281, -8.90493, -4.85864, -8.90493, 0.461631, 4.50793, 8.86902, -2.21115, -2.21115, -0.226431, -0.461631, -4.50793, -2.44635, 7.87269, -5.2214, -0.534693, 1.74951, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, -0.373467, -3.64699, -0.373467, 0, 0, 4.817, -1.41539, 1.85814, 0.190281, -1.74951, 2.29678, -1.74951, 1.9555, 19.0959, 3.94022, -9.36656, -9.36656, -7.38185, -0.461631, -4.50793, -2.44635, 2.21115, 2.21115, 0.226431, 7.41106, -9.72932, 0.988391}, {1.78885, 1.78885, 1.78885, -0.373467, -3.64699, -0.373467, 0, 0, -1.60567, 4.24616, -5.57441, -0.570843, -1.74951, 2.29678, -1.74951, 0.461631, 4.50793, 2.44635, -2.21115, -2.21115, -0.226431, -7.61705, -11.6633, -9.60176, 3.70501, 16.7991, 1.7203, 1.74951, -2.29678, 8.17219}, {-7.99361e-15, -9.45441, 7.10543e-15, 1.78885, -1.36261, -1.36261, -1.78885, -1.78885, -1.78885, 0, 0, 3.15147, -9.36656, 3.23931, 7.13474, 3.55271e-15, 3.89543, 3.89543, 9.36656, 5.47113, 9.36656, -3.55271e-15, -3.89543, -16.5013, -2.21115, 1.68428, -2.21115, 2.21115, 2.21115, -1.68428}, {1.48705e-15, 3.15147, -8.88178e-16, -5.36656, 4.08784, 4.08784, -1.78885, -1.78885, -1.78885, 1.39953e-15, 1.39953e-15, 3.15147, -2.21115, -14.817, 1.68428, 7.15542, 11.0508, 11.0508, 2.21115, -1.68428, 2.21115, -3.55271e-15, -3.89543, -3.89543, -2.21115, 1.68428, -14.817, 2.21115, 2.21115, -1.68428}, {2.88658e-15, 3.15147, -2.22045e-15, 1.78885, -1.36261, -1.36261, 5.36656, 5.36656, 5.36656, 0, 0, 3.15147, -2.21115, -2.21115, 1.68428, -7.15542, 9.34589, 9.34589, 2.21115, -14.2902, 2.21115, -3.55271e-15, -3.89543, -3.89543, -2.21115, 1.68428, -2.21115, 2.21115, 2.21115, -14.2902}, {0, 3.15147, 2.22045e-15, 1.78885, -1.36261, -1.36261, -1.78885, -1.78885, -1.78885, 0, 0, -9.45441, -2.21115, -2.21115, 1.68428, 0, 3.89543, 3.89543, 2.21115, -1.68428, 2.21115, 0, -16.5013, -3.89543, -9.36656, 7.13474, 3.23931, 9.36656, 9.36656, 5.47113}, {3.05492, -2.11527, -4.36034, 0.668117, -1.63909, -0.00517894, 0.911433, 1.21439, 0.00383706, -0.561241, -0.2804, -1.4521, -2.23961, 7.71083, -1.76944, -1.95243, 0.524948, 0.00165865, -3.51362, -7.23019, -1.81665, 4.1974, 0.59665, 5.80676, -0.132105, 2.37262, 1.8013, -0.43286, -1.15448, 1.79016}, {-1.01831, 0.705091, 1.45345, -2.00435, 4.91726, 0.0155368, 0.911433, 1.21439, 0.00383706, -0.561241, -0.2804, -1.4521, 4.50609, -1.66588, -7.60394, -5.59816, -4.33263, -0.0136896, 0.132105, -2.37262, -1.8013, 1.95243, -0.524948, -0.00165865, 2.11286, 3.49421, 7.60972, -0.43286, -1.15448, 1.79016}, {-1.01831, 0.705091, 1.45345, 0.668117, -1.63909, -0.00517894, -2.7343, -3.64318, -0.0115112, -0.561241, -0.2804, -1.4521, 0.43286, 1.15448, -1.79016, -4.6249, 7.08129, 0.0223744, 4.20534, -5.19298, -7.61508, 1.95243, -0.524948, -0.00165865, -0.132105, 2.37262, 1.8013, 1.81211, -0.0328828, 7.59857}, {-1.01831, 0.705091, 1.45345, 0.668117, -1.63909, -0.00517894, 0.911433, 1.21439, 0.00383706, 1.68372, 0.841199, 4.35631, 0.43286, 1.15448, -1.79016, -1.95243, 0.524948, 0.00165865, 0.132105, -2.37262, -1.8013, 6.02566, -3.34531, -5.81544, -2.80457, 8.92896, 1.82202, -4.07859, -6.01206, 1.77481}, {5.82171, 7.62554, -0.596168, 1.32981, 1.74185, -1.74185, 0.61076, -1.54312, 1.54312, 0, 2.34313, 0, -4.5643, -5.97853, 8.87479, -2.39867, -0.245635, 0.245635, -0.799305, 11.2218, -8.32553, 2.39867, -9.12687, -0.245635, -1.64373, -5.0493, 2.15304, -0.754941, -0.988857, -1.90741}, {-1.94057, -2.54185, 0.198723, -3.98943, -5.22554, 5.22554, 0.61076, -1.54312, 1.54312, -3.55272e-16, 2.34313, -8.97618e-16, 8.51722, 11.1562, 1.11252, -4.84171, 5.92686, -5.92686, 1.64373, 5.0493, -2.15304, 2.39867, 0.245635, -0.245635, -1.64373, -14.4218, 2.15304, -0.754941, -0.988857, -1.90741}, {-1.94057, -2.54185, 0.198723, 1.32981, 1.74185, -1.74185, -1.83228, 4.62937, -4.62937, 0, 2.34313, 0, 0.754941, 0.988857, 1.90741, -7.71791, -7.21302, 7.21302, 9.40601, 15.2167, -2.94793, 2.39867, 0.245635, -0.245635, -1.64373, -5.0493, 2.15304, -0.754941, -10.3614, -1.90741}, {-1.94057, -2.54185, 0.198723, 1.32981, 1.74185, -1.74185, 0.61076, -1.54312, 1.54312, 0, -7.02938, 0, 0.754941, 0.988857, 1.90741, -2.39867, -0.245635, 0.245635, 1.64373, 5.0493, -2.15304, 10.1609, 10.413, -1.04052, -6.96297, -12.0167, 9.12042, -3.19798, 5.18364, -8.0799}, {5.81909, -7.62212, -0.600985, 0, -2.34313, 0, 0.610485, 1.54348, 1.54262, 1.32921, -1.74106, -1.74295, 2.3976, 9.12828, -0.24762, -0.754601, 0.988412, -1.90678, -0.798945, -11.2223, -8.32487, -4.56224, 5.97584, 8.87857, -1.643, 5.04833, 2.1544, -2.3976, 0.244222, 0.24762}, {-1.9397, 2.54071, 0.200328, 0, 7.02938, 0, 0.610485, 1.54348, 1.54262, 1.32921, -1.74106, -1.74295, 10.1564, -10.407, -1.04893, -3.19654, -5.18552, -8.07725, 1.643, -5.04833, -2.1544, 0.754601, -0.988412, 1.90678, -6.95984, 12.0126, 9.12619, -2.3976, 0.244222, 0.24762}, {-1.9397, 2.54071, 0.200328, 0, -2.34313, 0, -1.83146, -4.63045, -4.62785, 1.32921, -1.74106, -1.74295, 2.3976, -0.244222, -0.24762, -0.754601, 10.3609, -1.90678, 9.40178, -15.2112, -2.95571, 0.754601, -0.988412, 1.90678, -1.643, 5.04833, 2.1544, -7.71444, 7.20847, 7.21941}, {-1.9397, 2.54071, 0.200328, 0, -2.34313, 0, 0.610485, 1.54348, 1.54262, -3.98763, 5.22319, 5.22884, 2.3976, -0.244222, -0.24762, -0.754601, 0.988412, -1.90678, 1.643, -5.04833, -2.1544, 8.51339, -11.1512, 1.10547, -1.643, 14.4208, 2.1544, -4.83954, -5.92971, -5.92285}, {8.88178e-16, -4.44089e-16, 4.817, 1.32981, 1.74185, -0.136178, 0.61076, -1.54312, 1.54312, -1.94057, -0.198723, 0.198723, -6.96297, -9.12042, 2.69775, -2.39867, -0.245635, -1.73908, -3.19798, 8.0799, -6.09519, 10.1609, 1.04052, 0.94419, 0.754941, -1.90741, -0.0773091, 1.64373, 2.15304, -2.15304}, {4.44089e-16, -8.32667e-17, -1.60567, -3.98943, -5.22554, 0.408534, 0.61076, -1.54312, 1.54312, -1.94057, -0.198723, 0.198723, -1.64373, -2.15304, 8.57571, -4.84171, 5.92686, -7.91157, -0.754941, 1.90741, 0.0773091, 2.39867, 0.245635, 1.73908, 8.51722, -1.11252, -0.872199, 1.64373, 2.15304, -2.15304}, {0, -3.05311e-16, -1.60567, 1.32981, 1.74185, -0.136178, -1.83228, 4.62937, -4.62937, -1.94057, -0.198723, 0.198723, -1.64373, -2.15304, 2.15304, -7.71791, -7.21302, -1.19437, -0.754941, 1.90741, 6.49998, 2.39867, 0.245635, 1.73908, 0.754941, -1.90741, -0.0773091, 9.40601, 2.94793, -2.94793}, {-6.66134e-16, -1.94289e-16, -1.60567, 1.32981, 1.74185, -0.136178, 0.61076, -1.54312, 1.54312, 5.82171, 0.596168, -0.596168, -1.64373, -2.15304, 2.15304, -2.39867, -0.245635, -1.73908, -0.754941, 1.90741, 0.0773091, 2.39867, 0.245635, 8.16175, -4.5643, -8.87479, 0.467403, -0.799305, 8.32553, -8.32553}, {-1.28888, 1.28888, -5.54754, -0.937563, 0.937563, 0.371082, -0.607159, -0.998509, -1.77891, 1.1151, 0.490571, -0.441349, 4.3781, -4.3781, -4.22872, 1.90938, 0.0753332, 1.74017, 2.64808, 5.7593, 7.02879, -6.36977, -2.03762, 0.0252242, -0.219445, -1.76527, 0.0868549, -0.627846, 0.627846, 2.74439}, {0.429625, -0.429625, 1.84918, 2.81269, -2.81269, -1.11325, -0.607159, -0.998509, -1.77891, 1.1151, 0.490571, -0.441349, -1.09065, 1.09065, -10.1411, 4.33802, 4.06937, 8.85582, 0.219445, 1.76527, -0.0868549, -1.90938, -0.0753332, -1.74017, -4.67983, -3.72755, 1.85225, -0.627846, 0.627846, 2.74439}, {0.429625, -0.429625, 1.84918, -0.937563, 0.937563, 0.371082, 1.82148, 2.99553, 5.33673, 1.1151, 0.490571, -0.441349, 0.627846, -0.627846, -2.74439, 5.65963, -3.67492, 0.255844, -1.49906, 3.48377, -7.48357, -1.90938, -0.0753332, -1.74017, -0.219445, -1.76527, 0.0868549, -5.08823, -1.33444, 4.50979}, {0.429625, -0.429625, 1.84918, -0.937563, 0.937563, 0.371082, -0.607159, -0.998509, -1.77891, -3.34529, -1.47171, 1.32405, 0.627846, -0.627846, -2.74439, 1.90938, 0.0753332, 1.74017, 0.219445, 1.76527, -0.0868549, -3.62788, 1.64317, -9.13689, 3.53081, -5.51552, -1.39747, 1.80079, 4.62188, 9.86004}, {-4.9045, -4.90878, 4.90879, 0.803078, -0.801888, 0.80329, -1.63483, -1.63626, 0.030594, -0.803078, 0.801888, 0.802378, -6.22574, 2.17621, -2.18355, 1.0281, 3.01372, -1.03074, 6.53933, 6.54504, 1.86234, 2.18421, -6.22127, -2.17877, 7.60503e-14, -7.58282e-14, -1.98471, 3.01342, 1.03134, -1.02961}, {1.63483, 1.63626, -1.63626, -2.40924, 2.40566, -2.40987, -1.63483, -1.63626, 0.030594, -0.803078, 0.801888, 0.802378, -9.55275, -7.57638, 7.57466, 7.56743, 9.55876, -1.15311, -7.62723e-14, 7.68274e-14, 1.98471, -1.0281, -3.01372, 1.03074, 3.21231, -3.20755, -5.19423, 3.01342, 1.03134, -1.02961}, {1.63483, 1.63626, -1.63626, 0.803078, -0.801888, 0.80329, 4.9045, 4.90878, -0.0917819, -0.803078, 0.801888, 0.802378, -3.01342, -1.03134, 1.02961, -2.18421, 6.22127, -4.2439, -6.53933, -6.54504, 8.52976, -1.0281, -3.01372, 1.03074, 7.52731e-14, -7.53841e-14, -1.98471, 6.22574, -2.17621, -4.23912}, {1.63483, 1.63626, -1.63626, 0.803078, -0.801888, 0.80329, -1.63483, -1.63626, 0.030594, 2.40924, -2.40566, -2.40713, -3.01342, -1.03134, 1.02961, 1.0281, 3.01372, -1.03074, -7.52731e-14, 7.43849e-14, 1.98471, -7.56743, -9.55876, 7.57579, -3.21231, 3.20755, -5.19788, 9.55275, 7.57638, -1.15199}, {0.412021, -3.98943, -5.22554, -1.60567, 0, 0, 0.200419, -1.94057, -0.198723, 1.54259, 0.61076, -1.54312, 8.57715, -1.64373, -2.15304, 1.73698, 2.39867, 0.245635, -0.879643, 8.51722, -1.11252, -7.90734, -4.84171, 5.92686, 0.0779689, -0.754941, 1.90741, -2.15448, 1.64373, 2.15304}, {-0.13734, 1.32981, 1.74185, 4.817, 0, 0, 0.200419, -1.94057, -0.198723, 1.54259, 0.61076, -1.54312, 2.70384, -6.96297, -9.12042, 0.93531, 10.1609, 1.04052, -0.0779689, 0.754941, -1.90741, -1.73698, -2.39867, -0.245635, -6.09239, -3.19798, 8.0799, -2.15448, 1.64373, 2.15304}, {-0.13734, 1.32981, 1.74185, -1.60567, 0, 0, -0.601256, 5.82171, 0.596168, 1.54259, 0.61076, -1.54312, 2.15448, -1.64373, -2.15304, 8.15966, 2.39867, 0.245635, 0.471392, -4.5643, -8.87479, -1.73698, -2.39867, -0.245635, 0.0779689, -0.754941, 1.90741, -8.32484, -0.799305, 8.32553}, {-0.13734, 1.32981, 1.74185, -1.60567, 0, 0, 0.200419, -1.94057, -0.198723, -4.62777, -1.83228, 4.62937, 2.15448, -1.64373, -2.15304, 1.73698, 2.39867, 0.245635, -0.0779689, 0.754941, -1.90741, -1.18762, -7.71791, -7.21302, 6.50064, -0.754941, 1.90741, -2.95615, 9.40601, 2.94793}, {-2.2024, 0.148267, -4.33994, -0.546238, -1.40698, 1.37428e-12, 0.372712, 0.180326, -1.44665, -0.560609, 1.27608, -1.24642e-12, 1.9527, 7.42813, -1.78815, 0.21449, 1.51623, 1.78815, -2.85899, -0.883108, 5.78659, 2.02795, -6.62053, -1.78815, 1.36814, 0.161805, -1.58045e-13, 0.232253, -1.80021, 1.78815}, {0.734135, -0.0494224, 1.44665, 1.63871, 4.22094, -4.12207e-12, 0.372712, 0.180326, -1.44665, -0.560609, 1.27608, -1.24619e-12, -3.16879, 1.9979, -7.57474, -1.27636, 0.794924, 7.57474, -1.36814, -0.161805, 1.57656e-13, -0.21449, -1.51623, -1.78815, 3.61057, -4.9425, 4.82673e-12, 0.232253, -1.80021, 1.78815}, {0.734135, -0.0494224, 1.44665, -0.546238, -1.40698, 1.37428e-12, -1.11814, -0.540977, 4.33994, -0.560609, 1.27608, -1.24642e-12, -0.232253, 1.80021, -1.78815, 2.39944, 7.14414, 1.78815, -4.30468, 0.0358845, -5.78659, -0.21449, -1.51623, -1.78815, 1.36814, 0.161805, -1.58045e-13, 2.47469, -6.90451, 1.78815}, {0.734135, -0.0494224, 1.44665, -0.546238, -1.40698, 1.3744e-12, 0.372712, 0.180326, -1.44665, 1.68183, -3.82823, 3.73959e-12, -0.232253, 1.80021, -1.78815, 0.21449, 1.51623, 1.78815, -1.36814, -0.161805, 1.577e-13, -3.15103, -1.31854, -7.57474, 3.55309, 5.78972, -5.65567e-12, -1.25859, -2.52151, 7.57474}, {0, 9.4517, 0, -1.78885, 1.78834, -1.78937, 1.78885, 1.36222, -1.3621, 0, 0, 3.15147, 9.36656, -5.46957, 9.36924, 0, -3.89432, 3.89543, -9.36656, -3.23838, 7.13206, 0, 3.89432, -16.5013, 2.21115, -2.21051, -1.68365, -2.21115, -1.6838, -2.21178}, {-1.54779e-16, -3.15057, 0, 5.36656, -5.36503, 5.3681, 1.78885, 1.36222, -1.3621, -1.39953e-15, -1.06575e-15, 3.15147, 2.21115, 14.2861, 2.21178, -7.15542, -9.34321, 9.34384, -2.21115, 2.21051, 1.68365, 1.77636e-15, 3.89432, -3.89543, 2.21115, -2.21051, -14.2895, -2.21115, -1.6838, -2.21178}, {0, -3.15057, -4.44089e-16, -1.78885, 1.78834, -1.78937, -5.36656, -4.08667, 4.08631, 0, 0, 3.15147, 2.21115, 1.6838, 2.21178, 7.15542, -11.0477, 11.0529, -2.21115, 14.8128, 1.68365, 0, 3.89432, -3.89543, 2.21115, -2.21051, -1.68365, -2.21115, -1.6838, -14.8177}, {0, -3.15057, 0, -1.78885, 1.78834, -1.78937, 1.78885, 1.36222, -1.3621, 0, 0, -9.45441, 2.21115, 1.6838, 2.21178, 0, -3.89432, 3.89543, -2.21115, 2.21051, 1.68365, 0, 16.4966, -3.89543, 9.36656, -9.36389, 5.47381, -9.36656, -7.1327, 3.23663}, {-0.595682, -0.596202, -5.82204, 0, -1.60567, 0, 1.54187, 1.54321, -0.609885, -1.74043, -0.136279, -1.3308, -0.245434, 8.16174, -2.39881, -1.90585, 0.0771985, 0.75386, -8.31875, -8.32602, 0.794587, 8.86756, 0.467918, 4.56932, 2.15129, 2.15317, 1.64495, 0.245434, -1.73907, 2.39881}, {0.198561, 0.198734, 1.94068, 0, 4.817, 0, 1.54187, 1.54321, -0.609885, -1.74043, -0.136279, -1.3308, -1.03968, 0.94413, -10.1615, -8.07331, -6.09565, 3.1934, -2.15129, -2.15317, -1.64495, 1.90585, -0.0771985, -0.75386, 9.11299, 2.69828, 6.96814, 0.245434, -1.73907, 2.39881}, {0.198561, 0.198734, 1.94068, 0, -1.60567, 0, -4.6256, -4.62964, 1.82966, -1.74043, -0.136279, -1.3308, -0.245434, 1.73907, -2.39881, -1.90585, 6.49987, 0.75386, -2.94553, -2.9481, -9.40768, 1.90585, -0.0771985, -0.75386, 2.15129, 2.15317, 1.64495, 7.20714, -1.19395, 7.722}, {0.198561, 0.198734, 1.94068, 0, -1.60567, 0, 1.54187, 1.54321, -0.609885, 5.22128, 0.408838, 3.99239, -0.245434, 1.73907, -2.39881, -1.90585, 0.0771985, 0.75386, -2.15129, -2.15317, -1.64495, 1.11161, -0.872135, -8.51658, 2.15129, 8.57584, 1.64495, -5.92203, -7.91192, 4.83836}, {-1.34911, 3.4086, 1.4084, 1.74422, 0.694821, 0.910847, -1.68823, -0.836265, 0.836265, -0.505685, 1.27764, -1.27764, -9.68869, -2.23371, -4.18896, -0.0691986, 0.174835, -2.15955, 8.28384, 5.78316, -3.79845, 2.09194, -5.28541, 7.27013, -1.53091, -2.4381, 0.453387, 2.71183, -0.545574, 0.545574}, {0.449702, -1.1362, -0.469468, -5.23265, -2.08446, -2.73254, -1.68823, -0.836265, 0.836265, -0.505685, 1.27764, -1.27764, -4.51064, 5.09037, 1.3323, 6.68373, 3.5199, -5.50461, 1.53091, 2.4381, -0.453387, 0.0691986, -0.174835, 2.15955, 0.49183, -7.54868, 5.56396, 2.71183, -0.545574, 0.545574}, {0.449702, -1.1362, -0.469468, 1.74422, 0.694821, 0.910847, 5.0647, 2.5088, -2.5088, -0.505685, 1.27764, -1.27764, -2.71183, 0.545574, -0.545574, -7.04606, -2.60445, -5.80294, -0.267898, 6.9829, 1.42448, 0.0691986, -0.174835, 2.15955, -1.53091, -2.4381, 0.453387, 4.73457, -5.65615, 5.65615}, {0.449702, -1.1362, -0.469468, 1.74422, 0.694821, 0.910847, -1.68823, -0.836265, 0.836265, 1.51705, -3.83293, 3.83293, -2.71183, 0.545574, -0.545574, -0.0691986, 0.174835, -2.15955, 1.53091, 2.4381, -0.453387, -1.72961, 4.36997, 4.03742, -8.50777, -5.21739, -3.19, 9.46476, 2.79949, -2.79949}, {-6.58175, 1.32414, -1.32414, -0.505685, 1.27764, -1.27764, 0.857073, 0.177676, 2.16545, -2.54531, -1.01394, -1.32918, -0.0640323, -6.14426, 6.14426, -0.43434, -1.79887, -1.09739, -7.19952, -0.384749, -11.884, 10.6156, 5.85464, 6.41412, 3.77123, -0.325955, 3.22222, 2.08677, 1.03368, -1.03368}, {2.19392, -0.441379, 0.441379, 1.51705, -3.83293, 3.83293, 0.857073, 0.177676, 2.16545, -2.54531, -1.01394, -1.32918, -10.8624, 0.731834, -0.731834, -3.86263, -2.50958, -9.75919, -3.77123, 0.325955, -3.22222, 0.43434, 1.79887, 1.09739, 13.9525, 3.72981, 8.53895, 2.08677, 1.03368, -1.03368}, {2.19392, -0.441379, 0.441379, -0.505685, 1.27764, -1.27764, -2.57122, -0.533028, -6.49635, -2.54531, -1.01394, -1.32918, -2.08677, -1.03368, 1.03368, 1.5884, -6.90945, 4.01319, -12.5469, 2.09147, -4.98773, 0.43434, 1.79887, 1.09739, 3.77123, -0.325955, 3.22222, 12.268, 5.08945, 4.28305}, {2.19392, -0.441379, 0.441379, -0.505685, 1.27764, -1.27764, 0.857073, 0.177676, 2.16545, 7.63592, 3.04182, 3.98755, -2.08677, -1.03368, 1.03368, -0.43434, -1.79887, -1.09739, -3.77123, 0.325955, -3.22222, -8.34133, 3.56439, -0.668128, 5.79397, -5.43653, 8.33279, -1.34152, 0.322977, -9.69548}, {5.63148, -7.39306, 3.82293, -0.845027, -3.02792, 0.845027, 1.29407, 2.43841, 1.8574, 1.42811, -1.87484, -1.42811, 6.74491, 12.8083, -2.84948, -0.55505, 0.728676, -3.34038, -4.45555, -15.8138, -8.15032, -5.15741, 6.7707, 9.05284, -0.720736, 6.06015, 0.720736, -3.36481, -0.696607, -0.530622}, {-1.87716, 2.46435, -1.27431, 2.53508, 9.08376, -2.53508, 1.29407, 2.43841, 1.8574, 1.42811, -1.87484, -1.42811, 10.8734, -9.16081, 5.62786, -5.73134, -9.02497, -10.77, 0.720736, -6.06015, -0.720736, 0.55505, -0.728676, 3.34038, -6.43319, 13.5595, 6.43319, -3.36481, -0.696607, -0.530622}, {-1.87716, 2.46435, -1.27431, -0.845027, -3.02792, 0.845027, -3.88221, -7.31523, -5.57219, 1.42811, -1.87484, -1.42811, 3.36481, 0.696607, 0.530622, 2.82506, 12.8404, -6.72049, 8.22937, -15.9176, 4.3765, 0.55505, -0.728676, 3.34038, -0.720736, 6.06015, 0.720736, -9.07726, 6.80277, 5.18184}, {-1.87716, 2.46435, -1.27431, -0.845027, -3.02792, 0.845027, 1.29407, 2.43841, 1.8574, -4.28434, 5.62453, 4.28434, 3.36481, 0.696607, 0.530622, -0.55505, 0.728676, -3.34038, 0.720736, -6.06015, -0.720736, 8.06369, -10.5861, 8.43762, 2.65937, 18.1718, -2.65937, -8.54109, -10.4502, -7.96021}, {0, 9.45441, 0, 1.78834, 1.78885, 1.78885, -3.15057, 0, 0, 1.36222, 1.36261, -1.78885, -9.36389, -5.47113, -9.36656, 1.6838, -2.21115, -2.21115, 16.4966, 3.89543, -4.44089e-16, -7.1327, -3.23931, 9.36656, -3.89432, -3.89543, 4.44089e-16, 2.21051, -1.68428, 2.21115}, {2.22045e-16, -3.15147, 2.22045e-16, -5.36503, -5.36656, -5.36656, -3.15057, 0, 0, 1.36222, 1.36261, -1.78885, -2.21051, 14.2902, -2.21115, 14.2861, -2.21115, -2.21115, 3.89432, 3.89543, -4.44089e-16, -1.6838, 2.21115, 2.21115, -9.34321, -9.34589, 7.15542, 2.21051, -1.68428, 2.21115}, {-8.88178e-16, -3.15147, 0, 1.78834, 1.78885, 1.78885, 9.4517, 0, 0, 1.36222, 1.36261, -1.78885, -2.21051, 1.68428, -2.21115, -5.46957, -9.36656, -9.36656, 3.89432, 16.5013, 0, -1.6838, 2.21115, 2.21115, -3.89432, -3.89543, 0, -3.23838, -7.13474, 9.36656}, {4.44089e-16, -3.15147, -2.22045e-16, 1.78834, 1.78885, 1.78885, -3.15057, 0, 0, -4.08667, -4.08784, 5.36656, -2.21051, 1.68428, -2.21115, 1.6838, -2.21115, -2.21115, 3.89432, 3.89543, 0, -1.6838, 14.817, 2.21115, -11.0477, -11.0508, -7.15542, 14.8128, -1.68428, 2.21115}, {-5.36656, 5.36656, -5.36656, 2.79907e-15, 3.15147, 3.33475e-16, -1.78885, -1.36261, 1.36261, 0, 0, -3.15147, -2.21115, -14.2902, -2.21115, 2.21115, -2.21115, -1.68428, 7.15542, 9.34589, -9.34589, -2.21115, 2.21115, 14.2902, -3.45984e-15, -3.89543, 3.89543, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, -4.1986e-15, -9.45441, 1.0595e-14, -1.78885, -1.36261, 1.36261, 0, 0, -3.15147, -9.36656, 5.47113, -9.36656, 9.36656, 3.23931, -7.13474, 1.28583e-15, 3.89543, -3.89543, -2.21115, 2.21115, 1.68428, -1.72992e-15, -3.89543, 16.5013, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 5.36656, 4.08784, -4.08784, 0, 0, -3.15147, -2.21115, -1.68428, -2.21115, 2.21115, -14.817, -1.68428, -7.15542, 11.0508, -11.0508, -2.21115, 2.21115, 1.68428, 0, -3.89543, 3.89543, 2.21115, 1.68428, 14.817}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 2.46559e-15, -1.78885, -1.36261, 1.36261, 0, 0, 9.45441, -2.21115, -1.68428, -2.21115, 2.21115, -2.21115, -1.68428, -4.44089e-16, 3.89543, -3.89543, -9.36656, 9.36656, -5.47113, 0, -16.5013, 3.89543, 9.36656, 7.13474, -3.23931}, {7.01844, 1.17551e-15, 0, 2.33948, 2.34313, -1.78885, 0, -2.34313, 0, -7.30165e-12, -6.9197e-12, 1.78885, -9.35791, -12.2688, 9.36656, -2.89175, -8.55405e-12, 2.21115, 2.89175, 12.2688, 0, 2.89175, 3.62329e-11, -9.36656, -2.89175, -2.89626, 0, 9.02534e-12, 2.89626, -2.21115}, {-2.33948, -1.95894e-17, 0, -7.01844, -7.02938, 5.36656, 0, -2.34313, 0, -7.30373e-12, -6.92022e-12, 1.78885, 9.35791, -2.89626, 2.21115, -2.89175, 9.3725, 2.21115, 2.89175, 2.89626, 0, 2.89175, 8.5536e-12, -2.21115, -2.89175, -2.89626, -7.15542, 9.02791e-12, 2.89626, -2.21115}, {-2.33948, 1.32789e-16, -4.44089e-16, 2.33948, 2.34313, -1.78885, 0, 7.02938, 0, -7.30321e-12, -6.92126e-12, 1.78885, -9.02668e-12, -2.89626, 2.21115, -12.2497, -9.3725, 9.36656, 12.2497, 2.89626, 1.77636e-15, 2.89175, 8.55493e-12, -2.21115, -2.89175, -2.89626, -4.44089e-16, 3.82401e-11, 2.89626, -9.36656}, {-2.33948, -8.31579e-16, -4.44089e-16, 2.33948, 2.34313, -1.78885, 0, -2.34313, 0, 2.19143e-11, 2.07622e-11, -5.36656, -9.02861e-12, -2.89626, 2.21115, -2.89175, -8.55538e-12, 2.21115, 2.89175, 2.89626, 4.44089e-16, 12.2497, 8.55648e-12, -2.21115, -12.2497, -12.2688, 7.15542, 9.02919e-12, 12.2688, -2.21115}, {-1.00651, -1.00808, 6.45666, -0.481765, 1.86061, -0.736419, 0.984821, -1.35677, 2.55622, -0.83856, -0.839867, 0.332415, 2.10785, -10.1576, 6.51623, -0.62181, -0.62278, -2.2494, -5.57129, 6.68879, -10.7243, 3.97605, 3.98225, 0.919744, 1.63201, -1.26171, 0.499377, -0.180789, 2.71519, -3.57055}, {0.335504, 0.336027, -2.15222, 1.4453, -5.58183, 2.20926, 0.984821, -1.35677, 2.55622, -0.83856, -0.839867, 0.332415, -1.16123, -4.0593, 12.1794, -4.56109, 4.8043, -12.4743, -1.63201, 1.26171, -0.499377, 0.62181, 0.62278, 2.2494, 4.98625, 2.09776, -0.830282, -0.180789, 2.71519, -3.57055}, {0.335504, 0.336027, -2.15222, -0.481765, 1.86061, -0.736419, -2.95446, 4.07031, -7.66867, -0.83856, -0.839867, 0.332415, 0.180789, -2.71519, 3.57055, 1.30525, -8.06522, 0.696272, -2.97403, -0.0824032, 8.1095, 0.62181, 0.62278, 2.2494, 1.63201, -1.26171, 0.499377, 3.17345, 6.07466, -4.90021}, {0.335504, 0.336027, -2.15222, -0.481765, 1.86061, -0.736419, 0.984821, -1.35677, 2.55622, 2.51568, 2.5196, -0.997244, 0.180789, -2.71519, 3.57055, -0.62181, -0.62278, -2.2494, -1.63201, 1.26171, -0.499377, -0.720207, -0.72133, 10.8583, 3.55907, -8.70414, 3.44505, -4.12007, 8.14227, -13.7954}, {5.36656, -5.48024e-11, 5.58682e-11, 1.78885, -2.34313, 2.34313, 0, 2.34313, 0, 0, 0, -2.34313, -7.15542, 12.2688, -12.2688, -2.21115, 2.25797e-11, -2.89626, 2.21115, -12.2688, 2.30194e-11, 2.21115, -2.25797e-11, 12.2688, -2.21115, 2.89626, -2.30194e-11, 0, -2.89626, 2.89626}, {-1.78885, 1.21112e-11, -1.24669e-11, -5.36656, 7.02938, -7.02938, 0, 2.34313, 1.36297e-15, 0, 0, -2.34313, 7.15542, 2.89626, -2.89626, -2.21115, -9.3725, -2.89626, 2.21115, -2.89626, 1.54086e-11, 2.21115, -1.49702e-11, 2.89626, -2.21115, 2.89626, 9.3725, 0, -2.89626, 2.89626}, {-1.78885, 1.21094e-11, -1.24669e-11, 1.78885, -2.34313, 2.34313, 0, -7.02938, 0, 0, 0, -2.34313, 4.44089e-16, 2.89626, -2.89626, -9.36656, 9.3725, -12.2688, 9.36656, -2.89626, 6.52776e-11, 2.21115, -1.49685e-11, 2.89626, -2.21115, 2.89626, -1.54099e-11, 0, -2.89626, 12.2688}, {-1.78885, 1.21099e-11, -1.24638e-11, 1.78885, -2.34313, 2.34313, 0, 2.34313, 0, 0, 0, 7.02938, 4.44089e-16, 2.89626, -2.89626, -2.21115, 1.49689e-11, -2.89626, 2.21115, -2.89626, 1.54063e-11, 9.36656, -6.34088e-11, 2.89626, -9.36656, 12.2688, -9.3725, 0, -12.2688, 2.89626}, {5.09908, -2.42192, -2.42638, -0.488904, -1.23525, -1.23482, 1.75382, -0.670557, 0.933579, 0.434779, 1.0985, -0.507552, 4.66087, 5.46995, 5.46587, -1.56352, 2.3557, 0.372353, -7.08218, 2.51319, -5.888, -0.175592, -6.74968, 1.65786, 0.0669023, 0.169033, 2.15369, -2.70526, -0.528962, -0.526598}, {-1.69969, 0.807307, 0.808792, 1.46671, 3.70574, 3.70446, 1.75382, -0.670557, 0.933579, 0.434779, 1.0985, -0.507552, 9.50403, -2.70027, -2.70857, -8.5788, 5.03793, -3.36196, -0.0669023, -0.169033, -2.15369, 1.56352, -2.3557, -0.372353, -1.67221, -4.22495, 4.1839, -2.70526, -0.528962, -0.526598}, {-1.69969, 0.807307, 0.808792, -0.488904, -1.23525, -1.23482, -5.26146, 2.01167, -2.80074, 0.434779, 1.0985, -0.507552, 2.70526, 0.528962, 0.526598, 0.392092, 7.29669, 5.31163, 6.73188, -3.39826, -5.38886, 1.56352, -2.3557, -0.372353, 0.0669023, 0.169033, 2.15369, -4.44437, -4.92294, 1.50361}, {-1.69969, 0.807307, 0.808792, -0.488904, -1.23525, -1.23482, 1.75382, -0.670557, 0.933579, -1.30434, -3.29549, 1.52266, 2.70526, 0.528962, 0.526598, -1.56352, 2.3557, 0.372353, -0.0669023, -0.169033, -2.15369, 8.3623, -5.58493, -3.60752, 2.02252, 5.11002, 7.09296, -9.72053, 2.15326, -4.26091}, {-2.57735, 0.513092, -6.51263, -2.5578, 0.977952, -1.36155, -0.488614, -1.23536, -1.23466, 2.1873, 0.428435, 0.425336, 12.3309, -4.90922, 4.44581, 3.76558, 0.31817, 3.2091, 1.49649, 6.67982, 3.78144, -12.5148, -2.03191, -4.91044, 0.457966, -1.73839, 1.15722, -2.09969, 0.99741, 1.00039}, {0.859116, -0.171031, 2.17088, 7.67341, -2.93386, 4.08465, -0.488614, -1.23536, -1.23466, 2.1873, 0.428435, 0.425336, -1.33677, -0.313288, -9.6839, 5.72003, 5.2596, 8.14775, -0.457966, 1.73839, -1.15722, -3.76558, -0.31817, -3.2091, -8.29124, -3.45213, -0.54412, -2.09969, 0.99741, 1.00039}, {0.859116, -0.171031, 2.17088, -2.5578, 0.977952, -1.36155, 1.46584, 3.70607, 3.70399, 2.1873, 0.428435, 0.425336, 2.09969, -0.99741, -1.00039, 13.9968, -3.59364, 8.65529, -3.89443, 2.42251, -9.84073, -3.76558, -0.31817, -3.2091, 0.457966, -1.73839, 1.15722, -10.8489, -0.716331, -0.700957}, {0.859116, -0.171031, 2.17088, -2.5578, 0.977952, -1.36155, -0.488614, -1.23536, -1.23466, -6.5619, -1.28531, -1.27601, 2.09969, -0.99741, -1.00039, 3.76558, 0.31817, 3.2091, -0.457966, 1.73839, -1.15722, -7.20204, 0.365952, -11.8926, 10.6892, -5.6502, 6.60342, -0.145237, 5.93884, 5.93904}, {4.08784, 4.08784, -5.36656, -1.78885, -1.78885, -1.78885, 3.15147, 2.46559e-15, 0, 0, 3.15147, 0, 11.0508, 11.0508, 7.15542, -1.68428, 2.21115, 2.21115, -14.817, 1.68428, -2.21115, 1.68428, -14.817, -2.21115, 2.21115, -1.68428, 2.21115, -3.89543, -3.89543, 0}, {-1.36261, -1.36261, 1.78885, 5.36656, 5.36656, 5.36656, 3.15147, 0, 0, -2.46559e-15, 3.15147, 0, 9.34589, 9.34589, -7.15542, -14.2902, 2.21115, 2.21115, -2.21115, 1.68428, -2.21115, 1.68428, -2.21115, -2.21115, 2.21115, -14.2902, 2.21115, -3.89543, -3.89543, 0}, {-1.36261, -1.36261, 1.78885, -1.78885, -1.78885, -1.78885, -9.45441, 0, 0, 0, 3.15147, 0, 3.89543, 3.89543, -4.44089e-16, 5.47113, 9.36656, 9.36656, 3.23931, 7.13474, -9.36656, 1.68428, -2.21115, -2.21115, 2.21115, -1.68428, 2.21115, -3.89543, -16.5013, 0}, {-1.36261, -1.36261, 1.78885, -1.78885, -1.78885, -1.78885, 3.15147, 2.46559e-15, 0, 0, -9.45441, 0, 3.89543, 3.89543, -4.44089e-16, -1.68428, 2.21115, 2.21115, -2.21115, 1.68428, -2.21115, 7.13474, 3.23931, -9.36656, 9.36656, 5.47113, 9.36656, -16.5013, -3.89543, 0}, {-4.7272, 4.72585, -4.72855, -1.57528, -1.57573, -1.57573, 1.57528, 1.57573, -1.57573, -1.57573, 1.57528, 1.57528, 6.30058, 10.1978, 6.30238, 2.11209e-12, -2.11142e-12, 3.89543, -10.196, -6.30349, 6.30238, 6.30294, -6.30114, -10.1966, 3.89487, 0.000556685, 0.000556685, 0.000556685, -3.89487, 0.000556844}, {1.57573, -1.57528, 1.57618, 4.72585, 4.7272, 4.7272, 1.57528, 1.57573, -1.57573, -1.57573, 1.57528, 1.57528, -6.30349, 10.196, -6.3053, -6.30114, -6.30294, 10.1984, -3.89487, -0.000556685, -0.000556685, -2.11226e-12, 2.1147e-12, -3.89543, 10.1978, -6.30058, -6.30058, 0.000556685, -3.89487, 0.000556844}, {1.57573, -1.57528, 1.57618, -1.57528, -1.57573, -1.57573, -4.72585, -4.7272, 4.7272, -1.57573, 1.57528, 1.57528, -0.000556685, 3.89487, -0.000556844, 6.30114, 6.30294, 10.1984, -10.1978, 6.30058, -6.3053, -2.11559e-12, 2.1147e-12, -3.89543, 3.89487, 0.000556685, 0.000556685, 6.30349, -10.196, -6.30058}, {1.57573, -1.57528, 1.57618, -1.57528, -1.57573, -1.57573, 1.57528, 1.57573, -1.57573, 4.7272, -4.72585, -4.72585, -0.000556685, 3.89487, -0.000556844, 2.11831e-12, -2.1172e-12, 3.89543, -3.89487, -0.000556685, -0.000556685, -6.30294, 6.30114, -10.2002, 10.196, 6.30349, 6.30349, -6.30058, -10.1978, 6.30349}, {-5.22554, -0.410098, 3.98943, -1.54312, -1.54218, -0.61076, 3.95893e-17, 1.60497, -3.86599e-16, -0.198723, -0.199483, 1.94057, 5.92686, 7.906, 4.84171, 1.90741, -0.0776051, 0.754941, -2.15304, -8.57268, 1.64373, -1.11252, 0.875539, -8.51722, 2.15304, 2.15282, -1.64373, 0.245635, -1.73727, -2.39867}, {1.74185, 0.136699, -1.32981, 4.62937, 4.62655, 1.83228, 1.18768e-16, 1.60497, -1.1598e-15, -0.198723, -0.199483, 1.94057, -7.21302, 1.19047, 7.71791, 1.90741, -6.49747, 0.754941, -2.15304, -2.15282, 1.64373, -1.90741, 0.0776051, -0.754941, 2.94793, 2.95075, -9.40601, 0.245635, -1.73727, -2.39867}, {1.74185, 0.136699, -1.32981, -1.54312, -1.54218, -0.61076, 0, -4.8149, 0, -0.198723, -0.199483, 1.94057, -0.245635, 1.73727, 2.39867, 8.0799, 6.09113, 3.19798, -9.12042, -2.69962, 6.96297, -1.90741, 0.0776051, -0.754941, 2.15304, 2.15282, -1.64373, 1.04052, -0.939339, -10.1609}, {1.74185, 0.136699, -1.32981, -1.54312, -1.54218, -0.61076, -1.18768e-16, 1.60497, 1.1598e-15, 0.596168, 0.59845, -5.82171, -0.245635, 1.73727, 2.39867, 1.90741, -0.0776051, 0.754941, -2.15304, -2.15282, 1.64373, -8.87479, -0.469193, 4.5643, 8.32553, 8.32155, 0.799305, 0.245635, -8.15714, -2.39867}, {4.63127, 4.6267, 1.83083, -2.54134, -0.199443, 1.94018, 1.74197, 1.74168, -1.3299, 2.34313, 0, 0, 15.2148, 2.9506, -9.40456, 0.988073, -1.9063, -0.754342, -7.21287, -7.21323, 7.7178, -10.3606, 1.9063, 0.754342, 0.245001, 0.246525, -2.39819, -5.04945, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, 7.62401, 0.598329, -5.82053, 1.74197, 1.74168, -1.3299, 2.34313, -1.01311e-15, 7.73589e-16, 11.2245, 8.32176, 0.797254, -5.9798, -8.87301, 4.56526, -0.245001, -0.246525, 2.39819, -0.988073, 1.9063, 0.754342, -9.1275, 0.246525, -2.39819, -5.04945, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, -2.54134, -0.199443, 1.94018, -5.2259, -5.22503, 3.9897, 2.34313, 0, 0, 5.04945, 2.15283, -1.64385, 11.1534, -1.10853, -8.51505, 5.93003, 5.92241, 4.83929, -0.988073, 1.9063, 0.754342, 0.245001, 0.246525, -2.39819, -14.422, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, -2.54134, -0.199443, 1.94018, 1.74197, 1.74168, -1.3299, -7.02938, 0, 0, 5.04945, 2.15283, -1.64385, 0.988073, -1.9063, -0.754342, -0.245001, -0.246525, 2.39819, 5.18696, 8.07523, 3.19544, 10.4103, 1.0443, -10.1589, -12.0173, -9.11953, 6.96345}, {4.33994, 1.90929, -1.71772, 1.45453e-15, 1.35003, 1.01047e-16, 1.36e-12, -0.731398, -2.01922, 1.44665, 0.0177991, 1.44665, 1.78815, -6.28218, -0.707741, -1.68285e-12, -0.764672, 2.4959, 1.78815, 4.61632, 9.86504, -5.78659, 0.693475, -8.28248, -1.78815, -1.69073, -1.78815, -1.78815, 0.882056, 0.707741}, {-1.44665, -0.636431, 0.572575, -4.36359e-15, -4.05009, -2.33336e-15, 1.35855e-12, -0.731398, -2.01922, 1.44665, 0.0177991, 1.44665, 7.57474, 1.66367, -2.99804, -7.11526e-12, 2.16092, 10.5728, 1.78815, 1.69073, 1.78815, 1.68142e-12, 0.764672, -2.4959, -7.57474, -1.76193, -7.57474, -1.78815, 0.882056, 0.707741}, {-1.44665, -0.636431, 0.572575, 0, 1.35003, 0, -4.08128e-12, 2.19419, 6.05767, 1.44665, 0.0177991, 1.44665, 1.78815, -0.882056, -0.707741, -1.68158e-12, -6.16479, 2.4959, 7.57474, 4.23646, -0.502145, 1.68194e-12, 0.764672, -2.4959, -1.78815, -1.69073, -1.78815, -7.57474, 0.81086, -5.07885}, {-1.44665, -0.636431, 0.572575, -4.84843e-16, 1.35003, -4.84843e-16, 1.3596e-12, -0.731398, -2.01922, -4.33994, -0.0533972, -4.33994, 1.78815, -0.882056, -0.707741, -1.67996e-12, -0.764672, 2.4959, 1.78815, 1.69073, 1.78815, 5.78659, 3.3104, -4.7862, -1.78815, -7.09085, -1.78815, -1.78815, 3.80765, 8.78463}, {-3.79117, -3.78885, -1.50052, 0.577052, -1.02738, -1.79083, -1.45233, 0.153525, -0.574823, -0.388446, -0.389091, 1.86548, -4.58353, 3.81836, 8.75865, 1.0819, 1.08015, 2.92411, 6.04244, -2.36496, 2.39156, 0.471884, 0.476215, -10.386, -0.233129, 1.75086, -0.0922713, 2.27532, 0.291177, -1.59534}, {1.26372, 1.26295, 0.500174, -1.73116, 3.08215, 5.37248, -1.45233, 0.153525, -0.574823, -0.388446, -0.389091, 1.86548, -7.33021, -5.34298, -0.40536, 6.89121, 0.466052, 5.2234, 0.233129, -1.75086, 0.0922713, -1.0819, -1.08015, -2.92411, 1.32066, 3.30723, -7.55418, 2.27532, 0.291177, -1.59534}, {1.26372, 1.26295, 0.500174, 0.577052, -1.02738, -1.79083, 4.35698, -0.460574, 1.72447, -0.388446, -0.389091, 1.86548, -2.27532, -0.291177, 1.59534, -1.22631, 5.18969, 10.0874, -4.82176, -6.80267, -1.90843, -1.0819, -1.08015, -2.92411, -0.233129, 1.75086, -0.0922713, 3.82911, 1.84754, -9.05724}, {1.26372, 1.26295, 0.500174, 0.577052, -1.02738, -1.79083, -1.45233, 0.153525, -0.574823, 1.16534, 1.16727, -5.59643, -2.27532, -0.291177, 1.59534, 1.0819, 1.08015, 2.92411, 0.233129, -1.75086, 0.0922713, -6.13679, -6.13196, -4.9248, -2.54134, 5.8604, 7.07104, 8.08463, -0.322922, 0.703957}, {2.52504, -4.49559, -7.83624, 1.26389, 1.26265, 0.49964, -0.875592, -0.873298, -2.36467, 0.453379, -1.88788, -0.747051, -5.57746, -8.46358, -5.84486, -0.479968, -0.48126, 2.3053, 5.62503, 2.72036, 9.15287, -1.33355, 8.03278, 0.682901, -2.12267, 0.772832, 0.305817, 0.521884, 3.413, 3.8463}, {-0.841681, 1.49853, 2.61208, -3.79168, -3.78794, -1.49892, -0.875592, -0.873298, -2.36467, 0.453379, -1.88788, -0.747051, 2.84484, -9.40713, -14.2946, 3.0224, 3.01193, 11.764, 2.12267, -0.772832, -0.305817, 0.479968, 0.48126, -2.3053, -3.93618, 8.32435, 3.29402, 0.521884, 3.413, 3.8463}, {-0.841681, 1.49853, 2.61208, 1.26389, 1.26265, 0.49964, 2.62678, 2.61989, 7.09401, 0.453379, -1.88788, -0.747051, -0.521884, -3.413, -3.8463, -5.53554, -5.53184, 0.306743, 5.48939, -6.76696, -10.7541, 0.479968, 0.48126, -2.3053, -2.12267, 0.772832, 0.305817, -1.29163, 10.9645, 6.8345}, {-0.841681, 1.49853, 2.61208, 1.26389, 1.26265, 0.49964, -0.875592, -0.873298, -2.36467, -1.36014, 5.66364, 2.24115, -0.521884, -3.413, -3.8463, -0.479968, -0.48126, 2.3053, 2.12267, -0.772832, -0.305817, 3.84669, -5.51287, -12.7536, -7.17824, -4.27775, -1.69274, 4.02425, 6.90619, 13.305}, {5.37846, -0.954422, 1.65136, 0.482922, -1.73161, -0.484335, 0.65353, 0.326507, 1.69088, 0.656368, 1.08696, -0.656093, -0.312565, 8.67359, 3.21641, -1.40473, 1.7368, -1.49137, -1.20588, -2.10286, -8.17318, -1.22074, -6.08465, 4.11575, -1.40824, 0.796829, 1.40965, -1.61912, -1.74715, -1.27907}, {-1.79282, 0.318141, -0.550454, -1.44877, 5.19483, 1.45301, 0.65353, 0.326507, 1.69088, 0.656368, 1.08696, -0.656093, 8.7904, 0.474582, 3.48088, -4.01885, 0.430774, -8.2549, 1.40824, -0.796829, -1.40965, 1.40473, -1.7368, 1.49137, -4.03371, -3.55102, 4.03402, -1.61912, -1.74715, -1.27907}, {-1.79282, 0.318141, -0.550454, 0.482922, -1.73161, -0.484335, -1.96059, -0.979522, -5.07265, 0.656368, 1.08696, -0.656093, 1.61912, 1.74715, 1.27907, -3.33642, 8.66325, 0.445966, 8.57952, -2.06939, 0.792169, 1.40473, -1.7368, 1.49137, -1.40824, 0.796829, 1.40965, -4.24459, -6.095, 1.3453}, {-1.79282, 0.318141, -0.550454, 0.482922, -1.73161, -0.484335, 0.65353, 0.326507, 1.69088, -1.9691, -3.26089, 1.96828, 1.61912, 1.74715, 1.27907, -1.40473, 1.7368, -1.49137, 1.40824, -0.796829, -1.40965, 8.57601, -3.00937, 3.69319, -3.33993, 7.72327, 3.34699, -4.23324, -3.05317, -8.0426}, {-8.19974, -2.81226, -4.15773, 1.49846, -0.593081, -0.985836, -2.7214, 1.07711, -0.607179, -1.5103, -1.42145, 0.207104, -11.2245, 1.9467, 3.44883, 1.51164, -0.598298, 1.96907, 10.8709, -6.79856, 1.46615, 4.52957, 6.28411, -2.79749, 0.0146435, 2.4901, 0.962565, 5.23067, 0.425625, 0.494519}, {2.73325, 0.937419, 1.38591, -4.49537, 1.77924, 2.95751, -2.7214, 1.07711, -0.607179, -1.5103, -1.42145, 0.207104, -16.1637, -4.1753, -6.03816, 12.3972, -4.90676, 4.39779, -0.0146435, -2.4901, -0.962565, -1.51164, 0.598298, -1.96907, 6.05586, 8.17591, 0.134147, 5.23067, 0.425625, 0.494519}, {2.73325, 0.937419, 1.38591, 1.49846, -0.593081, -0.985836, 8.16419, -3.23134, 1.82154, -1.5103, -1.42145, 0.207104, -5.23067, -0.425625, -0.494519, -4.48219, 1.77402, 5.91242, -10.9476, -6.23977, -6.50621, -1.51164, 0.598298, -1.96907, 0.0146435, 2.4901, 0.962565, 11.2719, 6.11143, -0.333899}, {2.73325, 0.937419, 1.38591, 1.49846, -0.593081, -0.985836, -2.7214, 1.07711, -0.607179, 4.53091, 4.26436, -0.621313, -5.23067, -0.425625, -0.494519, 1.51164, -0.598298, 1.96907, -0.0146435, -2.4901, -0.962565, -12.4446, -3.15138, -7.51272, -5.97918, 4.86242, 4.90591, 16.1163, -3.88283, 2.92323}, {-8.88178e-16, -2.39835, -6.05767, -3.06161e-16, 0.53318, -2.01922, -1.31177, -0.650588, 1.29879, 1.31177, -0.68204, -1.29879, 1.33227e-15, -3.77994, 8.07689, 1.62143, 0.145125, 0.890503, 6.86849, 2.41835, -9.29645, -6.86849, 2.58304, 4.30465, -1.62143, 0.184002, 4.10129, 0, 1.64722, 0}, {-2.22045e-16, 0.799449, 2.01922, -9.18483e-16, -1.59954, 6.05767, -1.31177, -0.650588, 1.29879, 1.31177, -0.68204, -1.29879, 8.88178e-16, -4.84502, -8.07689, 6.86849, 2.74748, -4.30465, 1.62143, -0.184002, -4.10129, -1.62143, -0.145125, -0.890503, -6.86849, 2.91216, 9.29645, 0, 1.64722, 0}, {1.77636e-15, 0.799449, 2.01922, -2.08189e-15, 0.53318, -2.01922, 3.9353, 1.95177, -3.89637, 1.31177, -0.68204, -1.29879, 2.22045e-16, -1.64722, -6.66134e-16, 1.62143, -1.98759, 8.96739, 1.62143, -3.3818, -12.1782, -1.62143, -0.145125, -0.890503, -1.62143, 0.184002, 4.10129, -5.24706, 4.37538, 5.19516}, {-6.66134e-16, 0.799449, 2.01922, 1.04095e-15, 0.53318, -2.01922, -1.31177, -0.650588, 1.29879, -3.9353, 2.04612, 3.89637, -6.66134e-16, -1.64722, -2.22045e-16, 1.62143, 0.145125, 0.890503, 1.62143, -0.184002, -4.10129, -1.62143, -3.34292, -8.96739, -1.62143, -1.94872, 12.1782, 5.24706, 4.24957, -5.19516}, {1.77636e-15, 0, 9.45441, 1.36261, 1.78885, 1.36261, 1.78885, -1.78885, 1.78885, -3.15147, 0, 0, -7.13474, -9.36656, -3.23931, -3.89543, 0, -3.89543, -9.36656, 9.36656, -5.47113, 16.5013, 0, 3.89543, 2.21115, -2.21115, -1.68428, 1.68428, 2.21115, -2.21115}, {4.44089e-16, -4.44089e-16, -3.15147, -4.08784, -5.36656, -4.08784, 1.78885, -1.78885, 1.78885, -3.15147, 0, 0, -1.68428, -2.21115, 14.817, -11.0508, 7.15542, -11.0508, -2.21115, 2.21115, 1.68428, 3.89543, 8.88178e-16, 3.89543, 14.817, -2.21115, -1.68428, 1.68428, 2.21115, -2.21115}, {4.44089e-16, 4.44089e-16, -3.15147, 1.36261, 1.78885, 1.36261, -5.36656, 5.36656, -5.36656, -3.15147, 0, 0, -1.68428, -2.21115, 2.21115, -9.34589, -7.15542, -9.34589, -2.21115, 2.21115, 14.2902, 3.89543, -4.44089e-16, 3.89543, 2.21115, -2.21115, -1.68428, 14.2902, 2.21115, -2.21115}, {0, 2.22045e-16, -3.15147, 1.36261, 1.78885, 1.36261, 1.78885, -1.78885, 1.78885, 9.45441, 0, 0, -1.68428, -2.21115, 2.21115, -3.89543, 4.44089e-16, -3.89543, -2.21115, 2.21115, 1.68428, 3.89543, -1.77636e-15, 16.5013, -3.23931, -9.36656, -7.13474, -5.47113, 9.36656, -9.36656}, {-2.46108, 3.54412, -0.0109738, -0.670026, 0.174063, -1.44271, 0.904569, 1.43103, -0.00443094, -1.0549, -0.423716, 1.44348, 2.49428, 0.548851, 7.54959, -0.28991, -1.984, 1.78876, -5.7504, -6.03269, 0.0186792, 4.50952, 3.67886, -7.56268, 2.13213, 0.308587, -0.000955489, 0.185824, -1.2451, -1.77876}, {0.820361, -1.18137, 0.00365793, 2.01008, -0.52219, 4.32812, 0.904569, 1.43103, -0.00443094, -1.0549, -0.423716, 1.44348, -3.46727, 5.9706, 1.76413, -3.90819, -7.7081, 1.80648, -2.13213, -0.308587, 0.000955489, 0.28991, 1.984, -1.78876, 6.35174, 2.00345, -5.77487, 0.185824, -1.2451, -1.77876}, {0.820361, -1.18137, 0.00365793, -0.670026, 0.174063, -1.44271, -2.71371, -4.29308, 0.0132928, -1.0549, -0.423716, 1.44348, -0.185824, 1.2451, 1.77876, 2.39019, -2.68025, 7.55959, -5.41357, 4.41691, -0.0136762, 0.28991, 1.984, -1.78876, 2.13213, 0.308587, -0.000955489, 4.40544, 0.449758, -7.55268}, {0.820361, -1.18137, 0.00365793, -0.670026, 0.174063, -1.44271, 0.904569, 1.43103, -0.00443094, 3.16471, 1.27115, -4.33044, -0.185824, 1.2451, 1.77876, -0.28991, -1.984, 1.78876, -2.13213, -0.308587, 0.000955489, -2.99153, 6.7095, -1.80339, 4.81224, -0.387667, 5.76987, -3.43245, -6.96921, -1.76104}, {-4.81192, -4.81192, 0.736124, -0.501255, 1.51797, 0.85277, 0.0700522, -1.94917, 0.533356, -1.17277, -1.17277, -1.14075, 0.641985, -9.9308, -4.16186, 0.532996, 0.532996, -1.71335, -2.34942, 8.22336, -2.48939, 4.15809, 4.15809, 6.27635, 2.06921, -0.426686, 0.355964, 1.36304, 3.85893, 0.750782}, {1.60397, 1.60397, -0.245375, 1.50376, -4.5539, -2.55831, 0.0700522, -1.94917, 0.533356, -1.17277, -1.17277, -1.14075, -7.77893, -10.2748, 0.230717, 0.252787, 8.32967, -3.84677, -2.06921, 0.426686, -0.355964, -0.532996, -0.532996, 1.71335, 6.76029, 4.2644, 4.91897, 1.36304, 3.85893, 0.750782}, {1.60397, 1.60397, -0.245375, -0.501255, 1.51797, 0.85277, -0.210157, 5.84751, -1.60007, -1.17277, -1.17277, -1.14075, -1.36304, -3.85893, -0.750782, 2.53802, -5.53887, -5.12443, -8.4851, -5.98921, 0.625534, -0.532996, -0.532996, 1.71335, 2.06921, -0.426686, 0.355964, 6.05412, 8.55001, 5.31379}, {1.60397, 1.60397, -0.245375, -0.501255, 1.51797, 0.85277, 0.0700522, -1.94917, 0.533356, 3.51831, 3.51831, 3.42225, -1.36304, -3.85893, -0.750782, 0.532996, 0.532996, -1.71335, -2.06921, 0.426686, -0.355964, -6.94889, -6.94889, 2.69484, 4.07423, -6.49855, -3.05512, 1.08283, 11.6556, -1.38264}, {-4.7272, -4.7272, -4.7272, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 6.30294, 6.30294, -10.1984, -1.8181e-12, 3.89543, -1.80878e-12, -10.1984, 6.30294, 6.30294, 6.30294, -10.1984, 6.30294, 3.89543, -1.79678e-12, -1.79323e-12, 3.77476e-15, -3.77476e-15, 3.89543}, {1.57573, 1.57573, 1.57573, 4.7272, 4.7272, -4.7272, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, -6.30294, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -3.89543, 1.79323e-12, 1.80544e-12, 1.81771e-12, -3.89543, 1.82415e-12, 10.1984, -6.30294, 6.30294, 3.55271e-15, -3.55271e-15, 3.89543}, {1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 1.57573, -4.7272, 4.7272, 4.7272, -1.57573, 1.57573, -1.57573, -3.9968e-15, 3.10862e-15, -3.89543, 6.30294, 10.1984, -6.30294, -10.1984, -6.30294, -6.30294, 1.82792e-12, -3.89543, 1.81616e-12, 3.89543, -1.80234e-12, -1.79368e-12, 6.30294, -6.30294, 10.1984}, {1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 4.7272, -4.7272, 4.7272, -2.66454e-15, 1.33227e-15, -3.89543, -1.81033e-12, 3.89543, -1.81055e-12, -3.89543, 1.80367e-12, 1.80389e-12, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -6.30294, -6.30294, 6.30294, 10.1984}, {1.77636e-15, 8.88178e-16, 3.96048, -1.97452e-12, 2.01922, 0.776088, 1.44665, -0.572575, 0.322765, -1.44665, -1.44665, 0.221307, 1.03391e-11, -10.5728, -2.43184, -1.78815, -1.78815, -1.35826, -7.57474, 2.99804, -0.0582134, 7.57474, 7.57474, 0.47303, 1.78815, -0.707741, -1.23285, -2.44094e-12, 2.4959, -0.672511}, {2.22045e-16, 0, -1.32016, 5.92356e-12, -6.05767, -2.32827, 1.44665, -0.572575, 0.322765, -1.44665, -1.44665, 0.221307, 2.43894e-12, -2.4959, 5.95315, -7.57474, 0.502145, -2.64932, -1.78815, 0.707741, 1.23285, 1.78815, 1.78815, 1.35826, 7.57474, 5.07885, -2.11808, -2.44005e-12, 2.4959, -0.672511}, {4.44089e-16, 4.44089e-16, -1.32016, -1.97278e-12, 2.01922, 0.776088, -4.33994, 1.71772, -0.968296, -1.44665, -1.44665, 0.221307, 2.43805e-12, -2.4959, 0.672511, -1.78815, -9.86504, -4.46261, -1.78815, 0.707741, 6.51349, 1.78815, 1.78815, 1.35826, 1.78815, -0.707741, -1.23285, 5.78659, 8.28248, -1.55774}, {2.22045e-16, 2.22045e-16, -1.32016, -1.97211e-12, 2.01922, 0.776088, 1.44665, -0.572575, 0.322765, 4.33994, 4.33994, -0.663921, 2.43761e-12, -2.4959, 0.672511, -1.78815, -1.78815, -1.35826, -1.78815, 0.707741, 1.23285, 1.78815, 1.78815, 6.6389, 1.78815, -8.78463, -4.3372, -5.78659, 4.7862, -1.96357}, {-5.69487, 4.44089e-15, -2.66454e-15, -0.575562, 1.78885, 1.78885, 0.744968, -3.64699, -0.373467, -2.0677, 1.85814, -1.41539, 0.667265, -9.36656, -9.36656, -0.209397, 2.29678, -1.74951, -6.24712, 19.0959, 1.9555, 8.48018, -9.72932, 7.41106, 3.26725, -4.50793, -0.461631, 1.63498, 2.21115, 2.21115}, {1.89829, 2.66454e-15, -6.66134e-16, 1.72669, -5.36656, -5.36656, 0.744968, -3.64699, -0.373467, -2.0677, 1.85814, -1.41539, -9.22815, -2.21115, -2.21115, -3.18927, 16.8847, -0.255645, -3.26725, 4.50793, 0.461631, 0.209397, -2.29678, 1.74951, 11.538, -11.9405, 5.19992, 1.63498, 2.21115, 2.21115}, {1.89829, 3.55271e-15, 4.44089e-16, -0.575562, 1.78885, 1.78885, -2.2349, 10.941, 1.1204, -2.0677, 1.85814, -1.41539, -1.63498, -2.21115, -2.21115, 2.09285, -4.85864, -8.90493, -10.8604, 4.50793, 0.461631, 0.209397, -2.29678, 1.74951, 3.26725, -4.50793, -0.461631, 9.90577, -5.2214, 7.87269}, {1.89829, -2.66454e-15, 1.77636e-15, -0.575562, 1.78885, 1.78885, 0.744968, -3.64699, -0.373467, 6.20309, -5.57441, 4.24616, -1.63498, -2.21115, -2.21115, -0.209397, 2.29678, -1.74951, -3.26725, 4.50793, 0.461631, -7.38377, -2.29678, 1.74951, 5.5695, -11.6633, -7.61705, -1.34489, 16.7991, 3.70501}, {1.1885, -5.81832, -0.595821, 1.89829, -2.11601e-15, 5.39995e-16, -1.41683, -1.32819, -1.74168, -0.0852942, -0.611252, 1.54307, -9.44989, -2.39728, -0.245492, -0.59512, 1.64173, 2.15284, 7.9083, 4.5572, 8.87406, 0.936297, 0.803277, -8.32513, -2.24099, 0.755549, -1.90734, 1.85673, 2.39728, 0.245492}, {-0.396168, 1.93944, 0.198607, -5.69487, -1.01358e-15, -4.64389e-15, -1.41683, -1.32819, -1.74168, -0.0852942, -0.611252, 1.54307, -0.272056, -10.155, -1.03992, 5.0722, 6.95448, 9.11956, 2.24099, -0.755549, 1.90734, 0.59512, -1.64173, -2.15284, -1.89981, 3.20056, -8.07964, 1.85673, 2.39728, 0.245492}, {-0.396168, 1.93944, 0.198607, 1.89829, 0, 0, 4.25049, 3.98456, 5.22504, -0.0852942, -0.611252, 1.54307, -1.85673, -2.39728, -0.245492, -8.18828, 1.64173, 2.15284, 3.82566, -8.51331, 1.11292, 0.59512, -1.64173, -2.15284, -2.24099, 0.755549, -1.90734, 2.1979, 4.84229, -5.9268}, {-0.396168, 1.93944, 0.198607, 1.89829, 2.88057e-16, -7.27184e-16, -1.41683, -1.32819, -1.74168, 0.255883, 1.83376, -4.62922, -1.85673, -2.39728, -0.245492, -0.59512, 1.64173, 2.15284, 2.24099, -0.755549, 1.90734, 2.17979, -9.39949, -2.94726, -9.83415, 0.755549, -1.90734, 7.52404, 7.71003, 7.21221}, {-5.53939e-11, -0.00379978, 5.36656, -2.34313, -2.34273, 1.78885, -6.81003e-16, 2.34147, 0, 2.34313, 0, 0, 12.2688, 12.2651, -7.15542, 2.89626, 0.00156559, -2.21115, -2.28204e-11, -12.2616, 2.21115, -12.2688, -0.00156559, 2.21115, 2.28231e-11, 2.89578, -2.21115, -2.89626, -2.89421, 0}, {1.23088e-11, 0.00126659, -1.78885, 7.02938, 7.0282, -5.36656, -2.04301e-15, 2.34147, 0, 2.34313, -1.36201e-15, 0, 2.89626, 2.88915, 7.15542, 2.89626, -9.3643, -2.21115, -1.52118e-11, -2.89578, 2.21115, -2.89626, -0.00156559, 2.21115, -9.3725, 2.89578, -2.21115, -2.89626, -2.89421, 0}, {1.23057e-11, 0.00126659, -1.78885, -2.34313, -2.34273, 1.78885, 0, -7.0244, 0, 2.34313, 0, 0, 2.89626, 2.89421, 4.44089e-16, 12.2688, 9.3725, -9.36656, -6.44356e-11, -2.90084, 9.36656, -2.89626, -0.00156559, 2.21115, 1.52105e-11, 2.89578, -2.21115, -12.2688, -2.89421, 0}, {1.23084e-11, 0.00126659, -1.78885, -2.34313, -2.34273, 1.78885, 2.04301e-15, 2.34147, 0, -7.02938, 0, 0, 2.89626, 2.89421, 4.44089e-16, 2.89626, 0.00156559, -2.21115, -1.52163e-11, -2.89578, 2.21115, -2.89626, -0.00663197, 9.36656, 9.3725, 12.2667, -9.36656, -2.89626, -12.2601, 0}, {-7.02938, -5.36656, -7.02938, -1.21095e-11, -1.78885, -1.21105e-11, 0, 0, -2.34313, -2.34313, 0, 0, -2.89626, 7.15542, -2.89626, 1.49681e-11, 2.21115, 2.89626, -2.89626, -2.21115, 9.3725, 9.3725, -2.21115, -2.89626, 2.89626, 2.21115, 1.49694e-11, 2.89626, 0, 2.89626}, {2.34313, 1.78885, 2.34313, 5.47931e-11, 5.36656, 5.47978e-11, 0, 0, -2.34313, -2.34313, 0, 0, -12.2688, -7.15542, -12.2688, 2.2576e-11, 2.21115, 12.2688, -2.89626, -2.21115, -2.25785e-11, -2.25766e-11, -2.21115, -2.89626, 12.2688, 2.21115, 2.25779e-11, 2.89626, 0, 2.89626}, {2.34313, 1.78885, 2.34313, -1.21079e-11, -1.78885, -1.21105e-11, 0, 0, 7.02938, -2.34313, 0, 0, -2.89626, -4.44089e-16, -2.89626, 6.33979e-11, 9.36656, 2.89626, -12.2688, -9.36656, -9.3725, -1.49668e-11, -2.21115, -2.89626, 2.89626, 2.21115, 1.49694e-11, 12.2688, 0, 2.89626}, {2.34313, 1.78885, 2.34313, -1.21105e-11, -1.78885, -1.21079e-11, 0, 0, -2.34313, 7.02938, 0, 0, -2.89626, -4.44089e-16, -2.89626, 1.49694e-11, 2.21115, 2.89626, -2.89626, -2.21115, -1.49668e-11, -9.3725, -9.36656, -12.2688, 2.89626, 9.36656, 6.33979e-11, 2.89626, 0, 12.2688}, {6.00487, -2.5896, 0, 1.30033, -0.681296, -1.31177, -1.30033, -0.651333, 1.31177, 2.00162, 0.469428, 0, -4.33448, 2.50034, 6.86849, 0, 1.64722, 0, 9.28277, 2.34345, -6.86849, -8.00649, -3.52493, 0, -4.08144, 0.261882, 1.62143, -0.866843, 0.224847, -1.62143}, {-2.00162, 0.8632, -1.61346e-16, -3.901, 2.04389, 3.9353, -1.30033, -0.651333, 1.31177, 2.00162, 0.469428, -6.06985e-17, 8.87333, -3.67765, 1.62143, 5.20133, 4.25255, -5.24706, 4.08144, -0.261882, -1.62143, 5.28204e-17, -1.64722, 4.44089e-16, -12.0879, -1.61583, 1.62143, -0.866843, 0.224847, -1.62143}, {-2.00162, 0.8632, -1.00648e-16, 1.30033, -0.681296, -1.31177, 3.901, 1.954, -3.9353, 2.00162, 0.469428, -1.21397e-16, 0.866843, -0.224847, 1.62143, -5.20133, 4.3724, 5.24706, 12.0879, -3.71468, -1.62143, 4.9691e-16, -1.64722, 2.22045e-16, -4.08144, 0.261882, 1.62143, -8.87333, -1.65287, -1.62143}, {-2.00162, 0.8632, 0, 1.30033, -0.681296, -1.31177, -1.30033, -0.651333, 1.31177, -6.00487, -1.40829, 0, 0.866843, -0.224847, 1.62143, 0, 1.64722, 0, 4.08144, -0.261882, -1.62143, 8.00649, -5.10002, 0, -9.28277, 2.98706, 6.86849, 4.33448, 2.83018, -6.86849}, {-3.67855, 1.13524, -1.13945, -0.728854, -0.729491, 0.729491, -0.347691, -0.347995, -1.25767, -0.149637, 1.4559, 0.148365, 2.30068, 4.28741, -4.28915, 1.33068, 1.33185, 0.652868, 0.304891, 2.28987, 6.11578, -0.732135, -7.15545, -1.24633, 1.08587, -0.897892, -1.08509, 0.614731, -1.36945, 1.37118}, {1.22618, -0.378415, 0.379817, 2.18656, 2.18847, -2.18847, -0.347691, -0.347995, -1.25767, -0.149637, 1.4559, 0.148365, -5.51946, 2.8831, -2.89045, 2.72145, 2.72383, 5.68356, -1.08587, 0.897892, 1.08509, -1.33068, -1.33185, -0.652868, 1.68442, -6.72149, -1.67855, 0.614731, -1.36945, 1.37118}, {1.22618, -0.378415, 0.379817, -0.728854, -0.729491, 0.729491, 1.04307, 1.04399, 3.77302, -0.149637, 1.4559, 0.148365, -0.614731, 1.36945, -1.37118, 4.2461, 4.24981, -2.2651, -5.9906, 2.41155, -0.434178, -1.33068, -1.33185, -0.652868, 1.08587, -0.897892, -1.08509, 1.21328, -7.19305, 0.777722}, {1.22618, -0.378415, 0.379817, -0.728854, -0.729491, 0.729491, -0.347691, -0.347995, -1.25767, 0.448911, -4.3677, -0.445094, -0.614731, 1.36945, -1.37118, 1.33068, 1.33185, 0.652868, -1.08587, 0.897892, 1.08509, -6.23541, 0.181812, -2.17214, 4.00129, 2.02007, -4.00305, 2.0055, 0.0225343, 6.40187}, {-3.16808, 0, 5.09912e-16, -0.781545, 0, -1.31177, 0.234793, 1.31177, 1.31177, -0.509273, -1.31177, -1.26089e-16, 2.78691, 0, 6.86849, 0.675824, -1.62143, -2.22045e-16, -2.53471, -6.86849, -6.86849, 1.36127, 6.86849, 7.264e-16, 1.59554, 1.62143, 1.62143, 0.339276, 0, -1.62143}, {1.05603, 0, 6.58225e-17, 2.34464, 0, 3.9353, 0.234793, 1.31177, 1.31177, -0.509273, -1.31177, 3.78267e-16, -4.56338, 0, 1.62143, -0.263347, -6.86849, -5.24706, -1.59554, -1.62143, -1.62143, -0.675824, 1.62143, -4.44089e-16, 3.63263, 6.86849, 1.62143, 0.339276, 0, -1.62143}, {1.05603, -2.22045e-16, 6.02665e-17, -0.781545, 3.78267e-16, -1.31177, -0.704378, -3.9353, -3.9353, -0.509273, -1.31177, -5.04356e-16, -0.339276, -2.22045e-16, 1.62143, 3.80201, -1.62143, 5.24706, -5.81964, -1.62143, -1.62143, -0.675824, 1.62143, 4.44089e-16, 1.59554, 1.62143, 1.62143, 2.37637, 5.24706, -1.62143}, {1.05603, 0, 0, -0.781545, 0, -1.31177, 0.234793, 1.31177, 1.31177, 1.52782, 3.9353, 0, -0.339276, 0, 1.62143, 0.675824, -1.62143, 0, -1.59554, -1.62143, -1.62143, -4.89993, 1.62143, 0, 4.72172, 1.62143, 6.86849, -0.599895, -5.24706, -6.86849}, {-4.31352, 0.137385, -4.35145, -1.43784, 0.845244, 0.568738, 0, -1.33263, 0, 1.50855e-12, 0.53318, -2.01922, 5.75136, -4.36915, -4.77085, 1.77727, 0.602441, -0.702999, -1.77727, 7.03434, -1.7929, -1.77727, -2.73516, 8.77989, 1.77727, -1.70383, 1.7929, -1.86467e-12, 0.988174, 2.4959}, {1.43784, -0.0457949, 1.45048, 4.31352, -2.53573, -1.70622, 0, -1.33263, 0, 1.50567e-12, 0.53318, -2.01922, -5.75136, -0.804994, -8.29783, 1.77727, 5.93296, -0.702999, -1.77727, 1.70383, -1.7929, -1.77727, -0.602441, 0.702999, 1.77727, -3.83654, 9.86978, -1.86111e-12, 0.988174, 2.4959}, {1.43784, -0.0457949, 1.45048, -1.43784, 0.845244, 0.568738, 0, 3.99789, 0, 1.50891e-12, 0.53318, -2.01922, 1.86476e-12, -0.988174, -2.4959, 7.52863, -2.77854, -2.97795, -7.52863, 1.887, -7.59483, -1.77727, -0.602441, 0.702999, 1.77727, -1.70383, 1.7929, -7.90075e-12, -1.14454, 10.5728}, {1.43784, -0.0457949, 1.45048, -1.43784, 0.845244, 0.568738, 0, -1.33263, 0, -4.51484e-12, -1.59954, 6.05767, 1.85986e-12, -0.988174, -2.4959, 1.77727, 0.602441, -0.702999, -1.77727, 1.70383, -1.7929, -7.52863, -0.419261, -5.09894, 7.52863, -5.0848, -0.482057, -1.86021e-12, 6.31869, 2.4959}, {0, 7.02938, 1.2039e-15, 0, 0, -2.34313, 1.78885, 2.34313, 2.34059, -1.78885, -1.21095e-11, 0.00253498, 0, 2.89626, 12.2688, -2.21115, -2.89626, 0.00313341, -9.36656, -9.3725, -12.2555, 9.36656, 2.89626, -0.0132733, 2.21115, 1.49681e-11, 2.89313, 0, -2.89626, -2.89626}, {0, -2.34313, 2.70617e-16, 0, 0, 7.02938, 1.78885, 2.34313, 2.34059, -1.78885, -1.2111e-11, 0.00253498, 0, 12.2688, 2.89626, -9.36656, -12.2688, -9.35923, -2.21115, -1.49695e-11, -2.89313, 2.21115, 2.89626, -0.00313341, 9.36656, 6.34142e-11, 2.88299, 0, -2.89626, -2.89626}, {0, -2.34313, -2.48933e-16, 0, 0, -2.34313, -5.36656, -7.02938, -7.02177, -1.78885, -1.21116e-11, 0.00253498, 0, 2.89626, 2.89626, -2.21115, -2.89626, 9.37564, -2.21115, 9.3725, -2.89313, 2.21115, 2.89626, -0.00313341, 2.21115, 1.49707e-11, 2.89313, 7.15542, -2.89626, -2.9064}, {0, -2.34313, 8.76035e-17, 0, 0, -2.34313, 1.78885, 2.34313, 2.34059, 5.36656, 5.47978e-11, -0.00760494, 0, 2.89626, 2.89626, -2.21115, -2.89626, 0.00313341, -2.21115, -2.25774e-11, -2.89313, 2.21115, 12.2688, -0.00313341, 2.21115, 2.25779e-11, 12.2656, -7.15542, -12.2688, -12.2586}, {-3.23058, -0.349184, -0.349184, -0.223923, -1.25104, -1.25104, -0.552433, 1.28003, -0.0317341, -0.300503, -0.14539, 1.16638, -0.158596, 6.40664, 6.40664, 0.959628, -0.0358398, 1.58559, 1.56151, -6.8462, 0.0222906, 0.242385, 0.617398, -6.25109, 0.648226, 1.72608, 0.104646, 1.05429, -1.40249, -1.40249}, {1.07686, 0.116395, 0.116395, 0.671768, 3.75311, 3.75311, -0.552433, 1.28003, -0.0317341, -0.300503, -0.14539, 1.16638, -5.36172, 0.936916, 0.936916, 3.16936, -5.15596, 1.71253, -0.648226, -1.72608, -0.104646, -0.959628, 0.0358398, -1.58559, 1.85024, 2.30764, -4.56086, 1.05429, -1.40249, -1.40249}, {1.07686, 0.116395, 0.116395, -0.223923, -1.25104, -1.25104, 1.6573, -3.84009, 0.0952024, -0.300503, -0.14539, 1.16638, -1.05429, 1.40249, 1.40249, 1.85532, 4.96831, 6.58973, -4.95566, -2.19166, -0.570224, -0.959628, 0.0358398, -1.58559, 0.648226, 1.72608, 0.104646, 2.2563, -0.820936, -6.068}, {1.07686, 0.116395, 0.116395, -0.223923, -1.25104, -1.25104, -0.552433, 1.28003, -0.0317341, 0.90151, 0.436169, -3.49913, -1.05429, 1.40249, 1.40249, 0.959628, -0.0358398, 1.58559, -0.648226, -1.72608, -0.104646, -5.26706, -0.429738, -2.05117, 1.54392, 6.73022, 5.10879, 3.26402, -6.52262, -1.27556}, {5.36656, 7.02938, -7.02938, 0, 0, -2.34313, 1.78885, -1.02092e-11, 1.05679e-11, 0, 2.34313, 0, 2.21115, 2.89626, 9.3725, -2.21115, 1.26192e-11, 2.89626, -7.15542, 2.89626, -2.89626, 2.21115, -9.3725, -2.89626, 0, -2.89626, 2.89626, -2.21115, -2.89626, -1.30626e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, 7.02938, 1.78885, -1.02081e-11, 1.05669e-11, -1.04056e-15, 2.34313, -6.14662e-27, 9.36656, 12.2688, -9.3725, -9.36656, 5.34504e-11, 2.89626, -8.4211e-16, 2.89626, -2.89626, 2.21115, -1.26174e-11, -2.89626, 5.44843e-15, -12.2688, 2.89626, -2.21115, -2.89626, -1.30613e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, -2.34313, -5.36656, 3.06298e-11, -3.17084e-11, 0, 2.34313, 0, 2.21115, 2.89626, 1.3064e-11, -2.21115, 1.26202e-11, 12.2688, 7.15542, 12.2688, -12.2688, 2.21115, -1.26196e-11, -2.89626, 0, -2.89626, 2.89626, -2.21115, -12.2688, -1.30646e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, -2.34313, 1.78885, -1.02092e-11, 1.05658e-11, 0, -7.02938, 0, 2.21115, 2.89626, 1.30595e-11, -2.21115, 1.26192e-11, 2.89626, 4.44089e-16, 2.89626, -2.89626, 9.36656, 9.3725, -12.2688, 0, -2.89626, 12.2688, -9.36656, -2.89626, -5.53233e-11}, {0, 9.45441, 0, 3.15147, 1.39953e-15, -1.39953e-15, -1.36261, 1.36261, 1.78885, -1.78885, 1.78885, -1.78885, -16.5013, 3.89543, 7.54952e-15, -2.21115, -1.68428, -2.21115, 7.13474, -3.23931, -9.36656, 9.36656, -5.47113, 9.36656, -1.68428, -2.21115, 2.21115, 3.89543, -3.89543, -1.77636e-15}, {8.88178e-16, -3.15147, 2.22045e-16, -9.45441, -1.00042e-15, 8.3972e-15, -1.36261, 1.36261, 1.78885, -1.78885, 1.78885, -1.78885, -3.89543, 16.5013, 5.32907e-15, 3.23931, -7.13474, -9.36656, 1.68428, 2.21115, -2.21115, 2.21115, 1.68428, 2.21115, 5.47113, -9.36656, 9.36656, 3.89543, -3.89543, -3.55271e-15}, {4.44089e-16, -3.15147, 0, 3.15147, 0, 0, 4.08784, -4.08784, -5.36656, -1.78885, 1.78885, -1.78885, -3.89543, 3.89543, 0, -14.817, -1.68428, -2.21115, 1.68428, 14.817, -2.21115, 2.21115, 1.68428, 2.21115, -1.68428, -2.21115, 2.21115, 11.0508, -11.0508, 7.15542}, {6.66134e-16, -3.15147, -2.22045e-16, 3.15147, 1.39953e-15, -1.39953e-15, -1.36261, 1.36261, 1.78885, 5.36656, -5.36656, 5.36656, -3.89543, 3.89543, 1.77636e-15, -2.21115, -1.68428, -2.21115, 1.68428, 2.21115, -2.21115, 2.21115, 14.2902, 2.21115, -14.2902, -2.21115, 2.21115, 9.34589, -9.34589, -7.15542}, {4.32877, -2.26802, -4.36683, -0.571101, 0.113693, -1.4431, 0, -1.33263, 0, 2.01402, 0.462931, -0.0125109, 4.77387, -1.52978, 5.75693, 0.70592, 1.50669, 1.78377, 1.78355, 6.04326, -1.79923, -8.76202, -3.35841, -1.73373, -1.78355, -0.712746, 1.79923, -2.48947, 1.07501, 0.0154644}, {-1.44292, 0.756005, 1.45561, 1.7133, -0.34108, 4.3293, 0, -1.33263, 0, 2.01402, 0.462931, -0.0125109, 8.26116, -4.09903, -5.83791, 0.70592, 6.8372, 1.78377, 1.78355, 0.712746, -1.79923, -0.70592, -1.50669, -1.78377, -9.83965, -2.56447, 1.84928, -2.48947, 1.07501, 0.0154644}, {-1.44292, 0.756005, 1.45561, -0.571101, 0.113693, -1.4431, 0, 3.99789, 0, 2.01402, 0.462931, -0.0125109, 2.48947, -1.07501, -0.0154644, 2.99032, 1.05191, 7.55617, 7.55524, -2.31127, -7.62167, -0.70592, -1.50669, -1.78377, -1.78355, -0.712746, 1.79923, -10.5456, -0.776716, 0.0655081}, {-1.44292, 0.756005, 1.45561, -0.571101, 0.113693, -1.4431, 0, -1.33263, 0, -6.04207, -1.38879, 0.0375328, 2.48947, -1.07501, -0.0154644, 0.70592, 1.50669, 1.78377, 1.78355, 0.712746, -1.79923, 5.06577, -4.53071, -7.60621, 0.500853, -1.16752, 7.57163, -2.48947, 6.40552, 0.0154644}, {-4.70136, -8.88178e-16, -1.57513e-15, 0.134389, 1.44665, -1.44665, -0.426776, 0.569981, 1.4404, -1.27473, -2.01663, 0.00624416, -2.64074, -7.57474, 7.57474, 0.36141, -2.49269, 0.00771821, 0.297559, -2.98446, -7.54205, 4.73753, 10.5592, -0.0326948, 1.40954, 0.704535, 1.78044, 2.10318, 1.78815, -1.78815}, {1.56712, -8.88178e-16, 1.00961e-15, -0.403167, -4.33994, 4.33994, -0.426776, 0.569981, 1.4404, -1.27473, -2.01663, 0.00624416, -8.37167, -1.78815, 1.78815, 2.06851, -4.77261, -5.75389, -1.40954, -0.704535, -1.78044, -0.36141, 2.49269, -0.00771821, 6.50848, 8.77105, 1.75546, 2.10318, 1.78815, -1.78815}, {1.56712, -1.33227e-15, 1.05818e-16, 0.134389, 1.44665, -1.44665, 1.28033, -1.70994, -4.32121, -1.27473, -2.01663, 0.00624416, -2.10318, -1.78815, 1.78815, -0.176146, -8.27928, 5.79431, -7.67803, -0.704535, -1.78044, -0.36141, 2.49269, -0.00771821, 1.40954, 0.704535, 1.78044, 7.20212, 9.85467, -1.81313}, {1.56712, 0, 4.33681e-17, 0.134389, 1.44665, -1.44665, -0.426776, 0.569981, 1.4404, 3.8242, 6.04988, -0.0187325, -2.10318, -1.78815, 1.78815, 0.36141, -2.49269, 0.00771821, -1.40954, -0.704535, -1.78044, -6.6299, 2.49269, -0.00771821, 0.871989, -5.08205, 7.56702, 3.81029, -0.491769, -7.54977}, {-3.47256, 2.13004, 3.47613, -1.55533, -0.53343, -0.78864, -0.511744, 1.83496, 0.513241, 0.909554, -0.591516, 1.43411, 6.71303, 3.6707, 5.56162, 2.55504, -1.60878, 0.340411, 1.24875, -8.73034, -1.25512, -6.19326, 3.97484, -6.07685, 0.798222, 1.39051, -0.797844, -0.49172, -1.53698, -2.40706}, {1.15752, -0.710012, -1.15871, 4.66599, 1.60029, 2.36592, -0.511744, 1.83496, 0.513241, 0.909554, -0.591516, 1.43411, -4.13836, 4.37703, 7.0419, 4.60202, -8.94861, -1.71255, -0.798222, -1.39051, 0.797844, -2.55504, 1.60878, -0.340411, -2.83999, 3.75657, -6.53428, -0.49172, -1.53698, -2.40706}, {1.15752, -0.710012, -1.15871, -1.55533, -0.53343, -0.78864, 1.53523, -5.50487, -1.53972, 0.909554, -0.591516, 1.43411, 0.49172, 1.53698, 2.40706, 8.77636, 0.524942, 3.49497, -5.4283, 1.44954, 5.43269, -2.55504, 1.60878, -0.340411, 0.798222, 1.39051, -0.797844, -4.12993, 0.829086, -8.14349}, {1.15752, -0.710012, -1.15871, -1.55533, -0.53343, -0.78864, -0.511744, 1.83496, 0.513241, -2.72866, 1.77455, -4.30233, 0.49172, 1.53698, 2.40706, 2.55504, -1.60878, 0.340411, -0.798222, -1.39051, 0.797844, -7.18512, 4.44882, 4.29443, 7.01954, 3.52423, 2.35672, 1.55526, -8.87681, -4.46002}, {-0.0259854, 4.18315, -1.68926, -1.44604, -0.0976914, -0.778579, 1.44538, 0.20404, -0.351453, -0.00800116, 1.28804, 0.566947, 7.56086, 2.23507, 3.38068, 0.000816584, -0.131455, 1.3968, -7.57881, 0.655184, 1.14422, 0.031188, -5.02069, -3.66458, 1.79729, -1.47135, 0.261592, -1.7767, -1.84431, -0.266365}, {0.00866179, -1.39438, 0.563086, 4.33812, 0.293074, 2.33574, 1.44538, 0.20404, -0.351453, -0.00800116, 1.28804, 0.566947, 1.74205, 7.42184, -1.98598, -5.7807, -0.947617, 2.80261, -1.79729, 1.47135, -0.261592, -0.000816584, 0.131455, -1.3968, 1.8293, -6.62349, -2.0062, -1.7767, -1.84431, -0.266365}, {0.00866179, -1.39438, 0.563086, -1.44604, -0.0976914, -0.778579, -4.33614, -0.612121, 1.05436, -0.00800116, 1.28804, 0.566947, 1.7767, 1.84431, 0.266365, 5.78498, 0.259311, 4.51111, -1.83194, 7.04888, -2.51393, -0.000816584, 0.131455, -1.3968, 1.79729, -1.47135, 0.261592, -1.74469, -6.99645, -2.53415}, {0.00866179, -1.39438, 0.563086, -1.44604, -0.0976914, -0.778579, 1.44538, 0.20404, -0.351453, 0.0240035, -3.86411, -1.70084, 1.7767, 1.84431, 0.266365, 0.000816584, -0.131455, 1.3968, -1.79729, 1.47135, -0.261592, -0.0354637, 5.70899, -3.64914, 7.58145, -1.08058, 3.37591, -7.55822, -2.66047, 1.13945}, {5.36656, -5.36656, -5.36656, 3.15147, -4.93118e-15, 0, -1.36261, 1.36261, -1.78885, 0, -3.15147, 0, -14.2902, -2.21115, -2.21115, -2.21115, -1.68428, 2.21115, 9.34589, -9.34589, 7.15542, 2.21115, 14.2902, -2.21115, -3.89543, 3.89543, 0, 1.68428, 2.21115, 2.21115}, {-1.78885, 1.78885, 1.78885, -9.45441, 1.0595e-14, -4.1986e-15, -1.36261, 1.36261, -1.78885, 0, -3.15147, 0, 5.47113, -9.36656, -9.36656, 3.23931, -7.13474, 9.36656, 3.89543, -3.89543, 1.28583e-15, 2.21115, 1.68428, -2.21115, -3.89543, 16.5013, -1.72992e-15, 1.68428, 2.21115, 2.21115}, {-1.78885, 1.78885, 1.78885, 3.15147, 0, 0, 4.08784, -4.08784, 5.36656, 0, -3.15147, 0, -1.68428, -2.21115, -2.21115, -14.817, -1.68428, 2.21115, 11.0508, -11.0508, -7.15542, 2.21115, 1.68428, -2.21115, -3.89543, 3.89543, 0, 1.68428, 14.817, 2.21115}, {-1.78885, 1.78885, 1.78885, 3.15147, -4.93118e-15, 0, -1.36261, 1.36261, -1.78885, 0, 9.45441, 0, -1.68428, -2.21115, -2.21115, -2.21115, -1.68428, 2.21115, 3.89543, -3.89543, -4.44089e-16, 9.36656, -5.47113, -9.36656, -16.5013, 3.89543, 0, 7.13474, -3.23931, 9.36656}, {2.81269, -2.81269, -1.11325, -0.456393, -1.88673, -0.746758, 0.886018, 1.45711, 2.59594, 0.507938, -0.507938, -2.22026, 3.5486, 8.72017, 3.45139, -0.531046, 0.531046, -2.28571, -3.48036, -8.78841, -14.0512, -1.50071, 1.50071, 11.1668, -0.0637129, 2.95998, 3.66744, -1.72302, -1.17324, -0.464361}, {-0.937563, 0.937563, 0.371082, 1.36918, 5.6602, 2.24027, 0.886018, 1.45711, 2.59594, 0.507938, -0.507938, -2.22026, 5.47328, -2.57701, -1.01997, -4.07512, -5.29738, -12.6695, 0.0637129, -2.95998, -3.66744, 0.531046, -0.531046, 2.28571, -2.09546, 4.99173, 12.5485, -1.72302, -1.17324, -0.464361}, {-0.937563, 0.937563, 0.371082, -0.456393, -1.88673, -0.746758, -2.65805, -4.37132, -7.78781, 0.507938, -0.507938, -2.22026, 1.72302, 1.17324, 0.464361, 1.29453, 8.07798, 0.701322, 3.81396, -6.71023, -5.15177, 0.531046, -0.531046, 2.28571, -0.0637129, 2.95998, 3.66744, -3.75477, 0.858512, 8.41668}, {-0.937563, 0.937563, 0.371082, -0.456393, -1.88673, -0.746758, 0.886018, 1.45711, 2.59594, -1.52381, 1.52381, 6.66078, 1.72302, 1.17324, 0.464361, -0.531046, 0.531046, -2.28571, 0.0637129, -2.95998, -3.66744, 4.2813, -4.2813, 0.801382, 1.76186, 10.5069, 6.65447, -5.2671, -7.00167, -10.8481}, {8.88178e-16, 4.08096, 0.0852192, 2.97466e-16, 0.921902, -1.18196, 1.31177, 0.0265815, 1.34059, -1.31177, 0.411835, -0.130224, -1.11022e-15, -3.1457, 6.22395, -1.62143, -1.17239, -0.196078, -6.86849, 1.54226, -6.98432, 6.86849, -0.474951, 0.716974, 1.62143, -1.64859, 1.62195, 0, -0.541913, -1.4961}, {-2.22045e-16, -1.36032, -0.0284064, -4.46199e-16, -2.76571, 3.54589, 1.31177, 0.0265815, 1.34059, -1.31177, 0.411835, -0.130224, 8.88178e-16, 5.98319, 1.60972, -6.86849, -1.27872, -5.55845, -1.62143, 1.64859, -1.62195, 1.62143, 1.17239, 0.196078, 6.86849, -3.29593, 2.14285, 0, -0.541913, -1.4961}, {-1.33227e-15, -1.36032, -0.0284064, 4.46199e-16, 0.921902, -1.18196, -3.9353, -0.0797444, -4.02178, -1.31177, 0.411835, -0.130224, 1.11022e-15, 0.541913, 1.4961, -1.62143, -4.86, 4.53177, -1.62143, 7.08987, -1.50833, 1.62143, 1.17239, 0.196078, 1.62143, -1.64859, 1.62195, 5.24706, -2.18925, -0.975202}, {1.55431e-15, -1.36032, -0.0284064, -1.04113e-15, 0.921902, -1.18196, 1.31177, 0.0265815, 1.34059, 3.9353, -1.23551, 0.390672, -4.44089e-16, 0.541913, 1.4961, -1.62143, -1.17239, -0.196078, -1.62143, 1.64859, -1.62195, 1.62143, 6.61367, 0.309704, 1.62143, -5.3362, 6.3498, -5.24706, -0.648239, -6.85847}, {1.39697, -4.32433, -4.36732, 1.89829, -2.30844e-15, -1.37509e-15, 0.0801166, 0.574147, -1.4494, -1.51275, -2.01559, -0.00636856, -9.364, -1.78172, -1.79943, -2.44545, -0.709685, 1.79156, 0.156089, -4.78799, 5.78974, 8.49644, 8.77205, -1.76609, -0.476556, 2.49141, 0.00787198, 1.77083, 1.78172, 1.79943}, {-0.465658, 1.44144, 1.45577, -5.69487, 3.6613e-15, -2.04012e-15, 0.0801166, 0.574147, -1.4494, -1.51275, -2.01559, -0.00636856, 0.0918014, -7.54749, -7.62252, -2.76591, -3.00627, 7.58918, 0.476556, -2.49141, -0.00787198, 2.44545, 0.709685, -1.79156, 5.57444, 10.5538, 0.0333462, 1.77083, 1.78172, 1.79943}, {-0.465658, 1.44144, 1.45577, 1.89829, 0, 0, -0.24035, -1.72244, 4.34821, -1.51275, -2.01559, -0.00636856, -1.77083, -1.78172, -1.79943, -10.0386, -0.709685, 1.79156, 2.33919, -8.25718, -5.83096, 2.44545, 0.709685, -1.79156, -0.476556, 2.49141, 0.00787198, 7.82183, 9.84408, 1.82491}, {-0.465658, 1.44144, 1.45577, 1.89829, 9.49861e-16, 3.00123e-18, 0.0801166, 0.574147, -1.4494, 4.53825, 6.04677, 0.0191057, -1.77083, -1.78172, -1.79943, -2.44545, -0.709685, 1.79156, 0.476556, -2.49141, -0.00787198, 4.30808, -5.05609, -7.61465, -8.06972, 2.49141, 0.00787198, 1.45037, -0.514866, 7.59705}, {4.31352, -3.43679, 1.70622, 1.43784, 0.720211, -1.45048, 0, -1.33263, 0, -1.50621e-12, -0.53318, 2.01922, -5.75136, -5.18711, 8.29783, -1.77727, 0.75699, 1.7929, 1.77727, 5.5617, 0.702999, 1.77727, 1.37573, -9.86978, -1.77727, -0.231184, -0.702999, 1.86177e-12, 2.30627, -2.4959}, {-1.43784, 1.1456, -0.568738, -4.31352, -2.16063, 4.35145, 0, -1.33263, 0, -1.50909e-12, -0.53318, 2.01922, 5.75136, -6.88865, 4.77085, -1.77727, 6.08751, 1.7929, 1.77727, 0.231184, 0.702999, 1.77727, -0.75699, -1.7929, -1.77727, 1.90153, -8.77989, 1.86534e-12, 2.30627, -2.4959}, {-1.43784, 1.1456, -0.568738, 1.43784, 0.720211, -1.45048, 0, 3.99789, 0, -1.50945e-12, -0.53318, 2.01922, -1.86543e-12, -2.30627, 2.4959, -7.52863, -2.12386, 7.59483, 7.52863, -4.3512, 2.97795, 1.77727, -0.75699, -1.7929, -1.77727, -0.231184, -0.702999, 7.90358e-12, 4.43898, -10.5728}, {-1.43784, 1.1456, -0.568738, 1.43784, 0.720211, -1.45048, 0, -1.33263, 0, 4.52348e-12, 1.59954, -6.05767, -1.86342e-12, -2.30627, 2.4959, -1.77727, 0.75699, 1.7929, 1.77727, 0.231184, 0.702999, 7.52863, -5.33938, 0.482057, -7.52863, -3.11203, 5.09894, 1.86378e-12, 7.63678, -2.4959}, {-4.90958, -4.91099, -14.364, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, -1.63653, -1.637, -1.63653, -10.2723, 6.22604, 2.33354, -1.70974e-14, 1.68754e-14, 3.89543, 6.22661, -10.2729, 2.33118, 6.54611, 6.54798, 2.65068, 0.0754226, 3.97087, 3.97085, 3.9703, 0.076001, 3.9703}, {1.63653, 1.637, 4.788, -4.72653, 4.72653, 4.72788, -1.57551, 1.57551, -1.57551, -1.63653, -1.637, -1.63653, -10.5164, -6.62398, -23.1223, 6.30204, -6.30204, 10.1975, -0.0754226, -3.97087, -3.97085, 1.38046e-14, -1.50613e-14, -3.89543, 6.62153, 10.5189, 10.517, 3.9703, 0.076001, 3.9703}, {1.63653, 1.637, 4.788, 1.57551, -1.57551, -1.57596, 4.72653, -4.72653, 4.72653, -1.63653, -1.637, -1.63653, -3.9703, -0.076001, -3.9703, -6.30204, 6.30204, 10.1993, -6.62153, -10.5189, -23.1228, 1.64691e-14, -1.72818e-14, -3.89543, 0.0754226, 3.97087, 3.97085, 10.5164, 6.62398, 10.5164}, {1.63653, 1.637, 4.788, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, 4.90958, 4.91099, 4.90958, -3.9703, -0.076001, -3.9703, -1.70974e-14, 1.68754e-14, 3.89543, -0.0754226, -3.97087, -3.97085, -6.54611, -6.54798, -23.0474, -6.22661, 10.2729, 10.2747, 10.2723, -6.22604, 10.2723}, {1.1292, -10.9335, -1.11964, 0, 0, 1.60567, 1.79029, -1.78764, -1.78873, -1.41389, -1.85687, -0.190152, 0.465254, -4.50486, -8.8687, -2.21292, 2.20964, 0.226277, -8.90884, 4.85533, 8.90459, 7.8685, 5.21784, 0.53433, 1.74767, 2.29522, -1.74967, -0.465254, 4.50486, 2.44603}, {-0.376399, 3.64451, 0.373213, 3.83169e-15, 8.27924e-17, -4.817, 1.79029, -1.78764, -1.78873, -1.41389, -1.85687, -0.190152, 1.97085, -19.0829, -3.93889, -9.37409, 9.36019, 7.3812, -1.74767, -2.29522, 1.74967, 2.21292, -2.20964, -0.226277, 7.40324, 9.72271, -0.989068, -0.465254, 4.50486, 2.44603}, {-0.376399, 3.64451, 0.373213, -2.25438e-15, -2.96069e-15, 1.60567, -5.37088, 5.36291, 5.36619, -1.41389, -1.85687, -0.190152, 0.465254, -4.50486, -2.44603, -2.21292, 2.20964, -6.1964, -0.242074, -16.8733, 0.256821, 2.21292, -2.20964, -0.226277, 1.74767, 2.29522, -1.74967, 5.19032, 11.9323, 3.20664}, {-0.376399, 3.64451, 0.373213, 0, 0, 1.60567, 1.79029, -1.78764, -1.78873, 4.24168, 5.57061, 0.570455, 0.465254, -4.50486, -2.44603, -2.21292, 2.20964, 0.226277, -1.74767, -2.29522, 1.74967, 3.71852, -16.7877, -1.71913, 1.74767, 2.29522, -8.17235, -7.62642, 11.6554, 9.60095}, {-9.76996e-15, 8.88178e-16, -7.02938, 1.78885, 2.33948, -2.34059, -1.78885, 6.92504e-12, -0.00253498, 0, -2.33948, 0, -9.36656, -12.2497, 9.35923, 3.9968e-15, -2.89175, 2.89626, 9.36656, -3.62599e-11, -2.88299, -3.9968e-15, 12.2497, -2.89626, -2.21115, 8.55982e-12, 2.89313, 2.21115, 2.89175, 0.00313341}, {-2.22045e-15, -1.33227e-15, 2.34313, -5.36656, -7.01844, 7.02177, -1.78885, 6.92556e-12, -0.00253498, 0, -2.33948, 0, -2.21115, -2.89175, -9.37564, 7.15542, -2.89175, 2.9064, 2.21115, -8.55893e-12, -2.89313, 2.66454e-15, 2.89175, -2.89626, -2.21115, 9.35791, 2.89313, 2.21115, 2.89175, 0.00313341}, {4.21885e-15, 3.55271e-15, 2.34313, 1.78885, 2.33948, -2.34059, 5.36656, -2.0786e-11, 0.00760494, 0, -2.33948, 0, -2.21115, -2.89175, -0.00313341, -7.15542, -12.2497, 12.2586, 2.21115, -8.58513e-12, -12.2656, -5.32907e-15, 2.89175, -2.89626, -2.21115, 8.5687e-12, 2.89313, 2.21115, 12.2497, 0.00313341}, {0, -4.44089e-16, 2.34313, 1.78885, 2.33948, -2.34059, -1.78885, 6.92763e-12, -0.00253498, 0, 7.01844, 0, -2.21115, -2.89175, -0.00313341, 0, -2.89175, 2.89626, 2.21115, -8.56293e-12, -2.89313, 0, 2.89175, -12.2688, -9.36656, -9.35791, 12.2555, 9.36656, 2.89175, 0.0132733}, {5.21741, 5.22554, 3.98943, -2.33948, 0, 0, 1.54072, 1.54312, -0.61076, 2.53789, 0.198723, 1.94057, 14.3994, 2.15304, 1.64373, 0.987318, -1.90741, 0.754941, -5.91764, -5.92686, 4.84171, -11.1389, 1.11252, -8.51722, -0.245252, -0.245635, -2.39867, -5.04144, -2.15304, -1.64373}, {-1.73914, -1.74185, -1.32981, 7.01844, 0, 0, 1.54072, 1.54312, -0.61076, 2.53789, 0.198723, 1.94057, 11.998, 9.12042, 6.96297, -5.17557, -8.0799, 3.19798, 0.245252, 0.245635, 2.39867, -0.987318, 1.90741, -0.754941, -10.3968, -1.04052, -10.1609, -5.04144, -2.15304, -1.64373}, {-1.73914, -1.74185, -1.32981, -2.33948, 0, 0, -4.62217, -4.62937, 1.83228, 2.53789, 0.198723, 1.94057, 5.04144, 2.15304, 1.64373, 10.3452, -1.90741, 0.754941, 7.20179, 7.21302, 7.71791, -0.987318, 1.90741, -0.754941, -0.245252, -0.245635, -2.39867, -15.193, -2.94793, -9.40601}, {-1.73914, -1.74185, -1.32981, -2.33948, 0, 0, 1.54072, 1.54312, -0.61076, -7.61368, -0.596168, -5.82171, 5.04144, 2.15304, 1.64373, 0.987318, -1.90741, 0.754941, 0.245252, 0.245635, 2.39867, 5.96922, 8.87479, 4.5643, 9.11266, -0.245635, -2.39867, -11.2043, -8.32553, 0.799305}, {10.9417, 1.1195, -1.12048, -2.16738e-15, -8.61236e-16, 1.60567, 1.79007, 1.78742, -1.78898, 1.85717, -1.41425, -0.190182, 4.50824, 0.46126, -8.86905, -2.21265, -2.20937, 0.226585, -4.86469, -8.89778, 8.90555, -5.21604, 7.86637, 0.534145, -2.29559, 1.74811, -1.74964, -4.50824, -0.46126, 2.44638}, {-3.64724, -0.373167, 0.373493, -8.02431e-17, 3.82867e-15, -4.817, 1.79007, 1.78742, -1.78898, 1.85717, -1.41425, -0.190182, 19.0972, 1.95393, -3.94035, -9.37293, -9.35904, 7.3825, 2.29559, -1.74811, 1.74964, 2.21265, 2.20937, -0.226585, -9.72428, 7.40511, -0.988907, -4.50824, -0.46126, 2.44638}, {-3.64724, -0.373167, 0.373493, 2.96117e-15, -2.25495e-15, 1.60567, -5.37021, -5.36225, 5.36694, 1.85717, -1.41425, -0.190182, 4.50824, 0.46126, -2.44638, -2.21265, -2.20937, -6.19609, 16.8846, -0.25544, 0.255663, 2.21265, 2.20937, -0.226585, -2.29559, 1.74811, -1.74964, -11.9369, 5.19574, 3.20711}, {-3.64724, -0.373167, 0.373493, -7.40292e-16, 5.63738e-16, 1.60567, 1.79007, 1.78742, -1.78898, -5.57152, 4.24275, 0.570547, 4.50824, 0.46126, -2.44638, -2.21265, -2.20937, 0.226585, 2.29559, -1.74811, 1.74964, 16.8016, 3.70204, -1.72056, -2.29559, 1.74811, -8.17231, -11.6685, -7.61093, 9.60229}, {1.83228, 4.62937, -4.62937, 0, 0, -1.60567, 1.94057, -0.198723, 0.198723, -1.32981, 1.74185, -0.136178, 0.754941, 1.90741, 6.49998, -2.39867, 0.245635, 1.73908, -9.40601, 2.94793, -2.94793, 7.71791, -7.21302, -1.19437, 1.64373, -2.15304, 2.15304, -0.754941, -1.90741, -0.0773091}, {-0.61076, -1.54312, 1.54312, 0, 0, 4.817, 1.94057, -0.198723, 0.198723, -1.32981, 1.74185, -0.136178, 3.19798, 8.0799, -6.09519, -10.1609, 1.04052, 0.94419, -1.64373, 2.15304, -2.15304, 2.39867, -0.245635, -1.73908, 6.96297, -9.12042, 2.69775, -0.754941, -1.90741, -0.0773091}, {-0.61076, -1.54312, 1.54312, 0, 0, -1.60567, -5.82171, 0.596168, -0.596168, -1.32981, 1.74185, -0.136178, 0.754941, 1.90741, 0.0773091, -2.39867, 0.245635, 8.16175, 0.799305, 8.32553, -8.32553, 2.39867, -0.245635, -1.73908, 1.64373, -2.15304, 2.15304, 4.5643, -8.87479, 0.467403}, {-0.61076, -1.54312, 1.54312, 0, 0, -1.60567, 1.94057, -0.198723, 0.198723, 3.98943, -5.22554, 0.408534, 0.754941, 1.90741, 0.0773091, -2.39867, 0.245635, 1.73908, -1.64373, 2.15304, -2.15304, 4.84171, 5.92686, -7.91157, 1.64373, -2.15304, 8.57571, -8.51722, -1.11252, -0.872199}, {-1.12374, 4.33994, -1.71772, 0.422512, 1.58777e-12, -2.01922, 0.258935, 1.44665, 1.44665, -1.05603, 0, 0, -2.6753, 1.78815, 9.86504, -0.842315, -1.78815, 0.707741, -1.81881, -5.78659, -8.28248, 5.06642, 1.78815, -0.707741, 0.783066, -1.96259e-12, 2.4959, 0.985258, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, -1.26754, -4.76439e-12, 6.05767, 0.258935, 1.44665, 1.44665, -1.05603, 0, 0, -2.48357, 7.57474, -0.502145, -1.87805, -7.57474, -5.07885, -0.783066, 1.9634e-12, -2.4959, 0.842315, 1.78815, -0.707741, 5.00717, -1.96304e-12, 2.4959, 0.985258, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, 0.422512, 1.58777e-12, -2.01922, -0.776805, -4.33994, -4.33994, -1.05603, 0, 0, -0.985258, 1.78815, 1.78815, -2.53236, -1.78815, 8.78463, -2.28138, 5.78659, -4.7862, 0.842315, 1.78815, -0.707741, 0.783066, -1.96259e-12, 2.4959, 5.20936, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, 0.422512, 1.58813e-12, -2.01922, 0.258935, 1.44665, 1.44665, 3.16808, 0, 0, -0.985258, 1.78815, 1.78815, -0.842315, -1.78815, 0.707741, -0.783066, 1.9634e-12, -2.4959, -0.656, 7.57474, -2.99804, -0.906981, -8.31556e-12, 10.5728, -0.0504823, -7.57474, -7.57474}, {-4.08784, 4.08784, -5.36656, 0, 3.15147, 0, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -14.817, -2.21115, 3.89543, -3.89543, 0, 14.817, 1.68428, -2.21115, -11.0508, 11.0508, 7.15542, -2.21115, -1.68428, 2.21115, 1.68428, 2.21115, 2.21115}, {1.36261, -1.36261, 1.78885, -1.15954e-14, -9.45441, 4.1986e-15, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -7.13474, 3.23931, -9.36656, 16.5013, -3.89543, 1.72992e-15, 2.21115, 1.68428, -2.21115, -3.89543, 3.89543, -2.17401e-15, -9.36656, 5.47113, 9.36656, 1.68428, 2.21115, 2.21115}, {1.36261, -1.36261, 1.78885, 0, 3.15147, 0, 9.45441, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -2.21115, -2.21115, 3.89543, -16.5013, 0, -3.23931, 7.13474, -9.36656, -3.89543, 3.89543, -4.44089e-16, -2.21115, -1.68428, 2.21115, -5.47113, 9.36656, 9.36656}, {1.36261, -1.36261, 1.78885, 0, 3.15147, 0, -3.15147, 0, 0, -5.36656, 5.36656, 5.36656, -1.68428, -2.21115, -2.21115, 3.89543, -3.89543, 0, 2.21115, 1.68428, -2.21115, -9.34589, 9.34589, -7.15542, -2.21115, -14.2902, 2.21115, 14.2902, 2.21115, 2.21115}, {1.11747, -3.79023, -1.1121, -0.361676, -1.4194, 0.363688, 1.52298, 0.102889, 0.820003, -0.788811, 0.0531033, -1.55439, 2.35418, 5.87043, -2.3625, -1.43545, 1.6273, -1.46312, -7.51399, -2.1004, -4.7518, 4.59069, -1.83971, 7.68068, 1.42208, 1.68884, 1.47179, -0.907478, -0.192817, 0.907751}, {-0.372489, 1.26341, 0.370699, 1.08503, 4.25821, -1.09106, 1.52298, 0.102889, 0.820003, -0.788811, 0.0531033, -1.55439, 2.39743, -4.86083, -2.39055, -7.52735, 1.21575, -4.74314, -1.42208, -1.68884, -1.47179, 1.43545, -1.6273, 1.46312, 4.57732, 1.47643, 7.68935, -0.907478, -0.192817, 0.907751}, {-0.372489, 1.26341, 0.370699, -0.361676, -1.4194, 0.363688, -4.56893, -0.308667, -2.46001, -0.788811, 0.0531033, -1.55439, 0.907478, 0.192817, -0.907751, 0.0112586, 7.30492, -2.91787, 0.0678761, -6.74249, -2.95458, 1.43545, -1.6273, 1.46312, 1.42208, 1.68884, 1.47179, 2.24777, -0.40523, 7.12531}, {-0.372489, 1.26341, 0.370699, -0.361676, -1.4194, 0.363688, 1.52298, 0.102889, 0.820003, 2.36643, -0.15931, 4.66317, 0.907478, 0.192817, -0.907751, -1.43545, 1.6273, -1.46312, -1.42208, -1.68884, -1.47179, 2.9254, -6.68095, -0.0196727, 2.86879, 7.36645, 0.0170383, -6.99938, -0.604373, -2.37226}, {4.44089e-15, -4.05009, 8.88178e-16, -0.572575, -0.625677, 1.44665, 2.01922, -0.706554, 1.38558e-12, -1.44665, -0.0177991, -1.44665, 2.99804, 1.60736, -7.57474, -1.78815, 1.64673, -1.78815, -10.5728, 2.03083, -7.25442e-12, 7.57474, -1.57553, 7.57474, 2.4959, 0.79538, 1.71219e-12, -0.707741, 0.895349, 1.78815}, {-4.44089e-16, 1.35003, -2.22045e-15, 1.71772, 1.87703, -4.33994, 2.01922, -0.706554, 1.3879e-12, -1.44665, -0.0177991, -1.44665, 0.707741, -6.29547, -1.78815, -9.86504, 4.47294, -1.78815, -2.4959, -0.79538, -1.71263e-12, 1.78815, -1.64673, 1.78815, 8.28248, 0.866577, 5.78659, -0.707741, 0.895349, 1.78815}, {8.88178e-16, 1.35003, 6.66134e-16, -0.572575, -0.625677, 1.44665, -6.05767, 2.11966, -4.15591e-12, -1.44665, -0.0177991, -1.44665, 0.707741, -0.895349, -1.78815, 0.502145, 4.14944, -7.57474, -2.4959, -6.1955, -1.71596e-12, 1.78815, -1.64673, 1.78815, 2.4959, 0.79538, 1.7133e-12, 5.07885, 0.966546, 7.57474}, {2.22045e-16, 1.35003, 0, -0.572575, -0.625677, 1.44665, 2.01922, -0.706554, 1.38489e-12, 4.33994, 0.0533972, 4.33994, 0.707741, -0.895349, -1.78815, -1.78815, 1.64673, -1.78815, -2.4959, -0.79538, -1.71196e-12, 1.78815, -7.04685, 1.78815, 4.7862, 3.29809, -5.78659, -8.78463, 3.72156, 1.78815}, {1.70622, 4.31352, 1.19704, 8.51907e-16, 7.76069e-16, 1.08709, -1.45048, 1.43784, -0.312525, 2.01922, -1.65855e-12, -0.375548, 0.702999, 1.77727, -5.19885, 1.7929, -1.77727, -0.95741, 8.29783, -5.75136, 2.12961, -9.86978, 1.77727, 2.4596, -2.4959, 2.04913e-12, -0.879509, -0.702999, -1.77727, 0.850505}, {-0.568738, -1.43784, -0.399013, -2.80914e-15, 1.1641e-15, -3.26126, -1.45048, 1.43784, -0.312525, 2.01922, -1.65923e-12, -0.375548, 2.97795, 7.52863, 0.745546, 7.59483, -7.52863, 0.292691, 2.4959, -2.05105e-12, 0.879509, -1.7929, 1.77727, 0.95741, -10.5728, 8.68834e-12, 0.622683, -0.702999, -1.77727, 0.850505}, {-0.568738, -1.43784, -0.399013, 0, 0, 1.08709, 4.35145, -4.31352, 0.937576, 2.01922, -1.65685e-12, -0.375548, 0.702999, 1.77727, -0.850505, 1.7929, -1.77727, -5.30575, 4.77085, 5.75136, 2.47556, -1.7929, 1.77727, 0.95741, -2.4959, 2.04797e-12, -0.879509, -8.77989, -1.77727, 2.3527}, {-0.568738, -1.43784, -0.399013, 0, 0, 1.08709, -1.45048, 1.43784, -0.312525, -6.05767, 4.97324e-12, 1.12664, 0.702999, 1.77727, -0.850505, 1.7929, -1.77727, -0.95741, 2.4959, -2.04873e-12, 0.879509, 0.482057, 7.52863, 2.55346, -2.4959, 2.04909e-12, -5.22785, 5.09894, -7.52863, 2.10061}, {-2.41029, -2.40672, -2.40819, -0.80343, -0.802238, 0.80294, 1.63555, -1.63555, 0.0313083, -1.63555, 1.63555, -1.63698, 3.21372, 3.20895, -5.19647, -1.02855, 3.01327, -1.03119, -9.55693, 7.57221, -1.15616, 7.57074, -9.55546, 7.57909, 3.01474, -1.03003, 1.03093, 8.88178e-15, 5.77316e-15, 1.98471}, {0.80343, 0.802238, 0.802728, 2.41029, 2.40672, -2.40882, 1.63555, -1.63555, 0.0313083, -1.63555, 1.63555, -1.63698, -3.21372, -3.20895, -5.19563, -7.57074, 9.55546, -1.15642, -3.01474, 1.03003, -1.03093, 1.02855, -3.01327, 1.03119, 9.55693, -7.57221, 7.57883, 8.88178e-15, 7.54952e-15, 1.98471}, {0.80343, 0.802238, 0.802728, -0.80343, -0.802238, 0.80294, -4.90664, 4.90664, -0.0939249, -1.63555, 1.63555, -1.63698, -8.88178e-15, -7.54952e-15, -1.98471, 2.18516, 6.22222, -4.24295, -6.22846, -2.17893, -4.24184, 1.02855, -3.01327, 1.03119, 3.01474, -1.03003, 1.03093, 6.54219, -6.54219, 8.53262}, {0.80343, 0.802238, 0.802728, -0.80343, -0.802238, 0.80294, 1.63555, -1.63555, 0.0313083, 4.90664, -4.90664, 4.91093, -7.99361e-15, -8.43769e-15, -1.98471, -1.02855, 3.01327, -1.03119, -3.01474, 1.03003, -1.03093, -2.18516, -6.22222, -2.17973, 6.22846, 2.17893, -2.18083, -6.54219, 6.54219, 1.85948}, {-5.48006e-11, 5.36656, 0.00342441, 0, 0, -2.34462, 2.34313, 0, 0, -2.34313, 1.78885, 2.34576, -2.25788e-11, 2.21115, 12.278, -2.89626, 0, 2.89811, -12.2688, 2.21115, 0.00141093, 12.2688, -7.15542, -12.2812, 2.89626, -2.21115, -0.00141093, 2.25788e-11, -2.21115, -2.89952}, {1.2113e-11, -1.78885, -0.00114147, 0, 0, 7.03386, 2.34313, -1.04056e-15, -1.3645e-15, -2.34313, 1.78885, 2.34576, -6.34248e-11, 9.36656, 2.90409, -12.2688, 5.44843e-15, 2.89811, -2.89626, 2.21115, 0.00141093, 2.89626, -8.4211e-16, -2.89811, 12.2688, -9.36656, -9.38446, 1.49729e-11, -2.21115, -2.89952}, {1.2109e-11, -1.78885, -0.00114147, 0, 0, -2.34462, -7.02938, 0, 0, -2.34313, 1.78885, 2.34576, -1.49676e-11, 2.21115, 2.89952, -2.89626, 0, 12.2766, -2.89626, 9.36656, 0.00597681, 2.89626, 4.44089e-16, -2.89811, 2.89626, -2.21115, -0.00141093, 9.3725, -9.36656, -12.2826}, {1.21134e-11, -1.78885, -0.00114147, 0, 0, -2.34462, 2.34313, 0, 0, 7.02938, -5.36656, -7.03729, -1.49729e-11, 2.21115, 2.89952, -2.89626, 0, 2.89811, -2.89626, 2.21115, 0.00141093, 2.89626, 7.15542, -2.89354, 2.89626, -2.21115, 9.37707, -9.3725, -2.21115, -2.89952}, {-2.3518, -6.05767, -5.91704e-12, -0.0281756, -0.572575, -1.44665, -1.05603, 0, 0, 0.300269, -1.44665, 1.44665, -0.821464, 0.502145, 7.57474, 1.34015, 0.707741, 1.78815, 4.56043, -2.4959, -2.43827e-12, -2.54122, 5.07885, -7.57474, -0.336326, 2.4959, 2.43827e-12, 0.934166, 1.78815, -1.78815}, {0.783932, 2.01922, 1.9722e-12, 0.0845268, 1.71772, 4.33994, -1.05603, 0, 0, 0.300269, -1.44665, 1.44665, -4.06989, -9.86504, 1.78815, 5.56425, 0.707741, 1.78815, 0.336326, -2.4959, -2.43761e-12, -1.34015, -0.707741, -1.78815, -1.5374, 8.28248, -5.78659, 0.934166, 1.78815, -1.78815}, {0.783932, 2.01922, 1.97353e-12, -0.0281756, -0.572575, -1.44665, 3.16808, 0, 0, 0.300269, -1.44665, 1.44665, -0.934166, -1.78815, 1.78815, 1.45285, 2.99804, 7.57474, -2.7994, -10.5728, -1.03331e-11, -1.34015, -0.707741, -1.78815, -0.336326, 2.4959, 2.43938e-12, -0.266911, 7.57474, -7.57474}, {0.783932, 2.01922, 1.97287e-12, -0.0281756, -0.572575, -1.44665, -1.05603, 0, 0, -0.900808, 4.33994, -4.33994, -0.934166, -1.78815, 1.78815, 1.34015, 0.707741, 1.78815, 0.336326, -2.4959, -2.43872e-12, -4.47587, -8.78463, -1.78815, -0.223624, 4.7862, 5.78659, 5.15827, 1.78815, -1.78815}, {-2.45207, 5.12164, 2.36493, 0.0510009, -0.6557, 1.65667, -1.08957, 0.431245, -1.08957, 0.22121, 1.93167, 0.22121, -1.27735, 5.54352, -7.70003, 1.28374, 0.277442, -0.700975, 4.69474, -0.147797, 6.67946, -2.16858, -8.00412, -0.183865, -0.336471, -1.57718, -2.32119, 1.07335, -2.92072, 1.07335}, {0.817357, -1.70721, -0.788311, -0.153003, 1.9671, -4.97001, -1.08957, 0.431245, -1.08957, 0.22121, 1.93167, 0.22121, -4.34278, 9.74957, 2.07989, 5.64201, -1.44754, 3.6573, 0.336471, 1.57718, 2.32119, -1.28374, -0.277442, 0.700975, -1.22131, -9.30386, -3.20603, 1.07335, -2.92072, 1.07335}, {0.817357, -1.70721, -0.788311, 0.0510009, -0.6557, 1.65667, 3.2687, -1.29374, 3.2687, 0.22121, 1.93167, 0.22121, -1.07335, 2.92072, -1.07335, 1.07974, 2.90024, -7.32765, -2.93296, 8.40603, 5.47443, -1.28374, -0.277442, 0.700975, -0.336471, -1.57718, -2.32119, 0.18851, -10.6474, 0.18851}, {0.817357, -1.70721, -0.788311, 0.0510009, -0.6557, 1.65667, -1.08957, 0.431245, -1.08957, -0.66363, -5.795, -0.66363, -1.07335, 2.92072, -1.07335, 1.28374, 0.277442, -0.700975, 0.336471, 1.57718, 2.32119, -4.55317, 6.55141, 3.85422, -0.540475, 1.04562, -8.94786, 5.43162, -4.6457, 5.43162}, {-4.62937, -1.83228, -4.62937, 0.198723, -1.94057, 2.54185, 0, 0, -2.34313, -1.74185, 1.32981, -1.74185, -2.94793, 9.40601, -15.2167, -0.245635, 2.39867, -0.245635, -1.90741, -0.754941, 10.3614, 7.21302, -7.71791, 7.21302, 1.90741, 0.754941, -0.988857, 2.15304, -1.64373, 5.0493}, {1.54312, 0.61076, 1.54312, -0.596168, 5.82171, -7.62554, 0, 0, -2.34313, -1.74185, 1.32981, -1.74185, -8.32553, -0.799305, -11.2218, -0.245635, 2.39867, 9.12687, -1.90741, -0.754941, 0.988857, 0.245635, -2.39867, 0.245635, 8.87479, -4.5643, 5.97853, 2.15304, -1.64373, 5.0493}, {1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 2.54185, 0, 0, 7.02938, -1.74185, 1.32981, -1.74185, -2.15304, 1.64373, -5.0493, -1.04052, 10.1609, -10.413, -8.0799, -3.19798, -5.18364, 0.245635, -2.39867, 0.245635, 1.90741, 0.754941, -0.988857, 9.12042, -6.96297, 12.0167}, {1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 2.54185, 0, 0, -2.34313, 5.22554, -3.98943, 5.22554, -2.15304, 1.64373, -5.0493, -0.245635, 2.39867, -0.245635, -1.90741, -0.754941, 0.988857, -5.92686, -4.84171, -5.92686, 1.11252, 8.51722, -11.1562, 2.15304, -1.64373, 14.4218}, {3.9353, 3.03575, -0.94776, 1.31177, -0.633999, -0.948528, 0, 0.442478, 1.49023, 0, 1.20344, -0.85762, -5.24706, 4.57046, 4.57606, -1.62143, 0.236733, -0.669578, 1.62143, -1.06605, -8.19343, 1.62143, -5.05048, 4.10006, -1.62143, -0.703864, 2.23252, 0, -2.03446, -0.781946}, {-1.31177, -1.01192, 0.31592, -3.9353, 1.902, 2.84558, 0, 0.442478, 1.49023, 0, 1.20344, -0.85762, 5.24706, 6.08213, -0.481733, -1.62143, -1.53318, -6.63049, 1.62143, 0.703864, -2.23252, 1.62143, -0.236733, 0.669578, -1.62143, -5.51761, 5.663, 0, -2.03446, -0.781946}, {-1.31177, -1.01192, 0.31592, 1.31177, -0.633999, -0.948528, 0, -1.32743, -4.47068, 0, 1.20344, -0.85762, 3.2565e-16, 2.03446, 0.781946, -6.86849, 2.77273, 3.12453, 6.86849, 4.75153, -3.4962, 1.62143, -0.236733, 0.669578, -1.62143, -0.703864, 2.23252, 0, -6.84821, 2.64853}, {-1.31177, -1.01192, 0.31592, 1.31177, -0.633999, -0.948528, 0, 0.442478, 1.49023, 0, -3.61031, 2.57286, 3.2565e-16, 2.03446, 0.781946, -1.62143, 0.236733, -0.669578, 1.62143, 0.703864, -2.23252, 6.86849, 3.81093, -0.594102, -6.86849, 1.83213, 6.02663, 0, -3.80438, -6.74286}, {8.88178e-16, -9.65337e-16, 5.41667, 1.44665, 1.44665, 1.40715, 0.572575, -1.44665, 1.02216, -2.01922, -1.9703e-12, -0.623753, -7.57474, -7.57474, -5.13614, -2.4959, -2.43516e-12, -3.00279, -2.99804, 7.57474, -3.1203, 10.5728, 1.03164e-11, 5.4978, 0.707741, -1.78815, -0.968332, 1.78815, 1.78815, -0.492457}, {-4.44089e-16, -2.99727e-18, -1.80556, -4.33994, -4.33994, -4.22145, 0.572575, -1.44665, 1.02216, -2.01922, -1.97286e-12, -0.623753, -1.78815, -1.78815, 7.71468, -4.7862, 5.78659, -7.09142, -0.707741, 1.78815, 0.968332, 2.4959, 2.43872e-12, 3.00279, 8.78463, -1.78815, 1.52668, 1.78815, 1.78815, -0.492457}, {0, 1.65544e-16, -1.80556, 1.44665, 1.44665, 1.40715, -1.71772, 4.33994, -3.06648, -2.01922, -1.97103e-12, -0.623753, -1.78815, -1.78815, 0.492457, -8.28248, -5.78659, -8.63139, -0.707741, 1.78815, 8.19056, 2.4959, 2.43605e-12, 3.00279, 0.707741, -1.78815, -0.968332, 9.86504, 1.78815, 2.00255}, {0, 7.512e-17, -1.80556, 1.44665, 1.44665, 1.40715, 0.572575, -1.44665, 1.02216, 6.05767, 5.91749e-12, 1.87126, -1.78815, -1.78815, 0.492457, -2.4959, -2.43805e-12, -3.00279, -0.707741, 1.78815, 0.968332, 2.4959, 2.43775e-12, 10.225, -5.07885, -7.57474, -6.59693, -0.502145, 7.57474, -4.58109}, {4.36745, -2.27082, -4.32425, 1.62046e-12, 0.53318, -2.01922, 0, -1.33263, 0, 1.45582, 0.0425099, 0.577805, 1.79949, -3.72739, 8.79109, -2.00299e-12, 0.988174, 2.4959, 1.79949, 6.04211, -1.78169, -5.82327, -1.15821, -4.80711, -1.79949, -0.711591, 1.78169, -1.79949, 1.59467, -0.714206}, {-1.45582, 0.756939, 1.44142, -4.85808e-12, -1.59954, 6.05767, 0, -1.33263, 0, 1.45582, 0.0425099, 0.577805, 7.62276, -4.62243, -5.05146, -2.00164e-12, 6.31869, 2.4959, 1.79949, 0.711591, -1.78169, 2.002e-12, -0.988174, -2.4959, -7.62276, -0.881631, -0.529529, -1.79949, 1.59467, -0.714206}, {-1.45582, 0.756939, 1.44142, 1.61717e-12, 0.53318, -2.01922, 0, 3.99789, 0, 1.45582, 0.0425099, 0.577805, 1.79949, -1.59467, 0.714206, -8.46762e-12, -1.14454, 10.5728, 7.62276, -2.31617, -7.54736, 1.9993e-12, -0.988174, -2.4959, -1.79949, -0.711591, 1.78169, -7.62276, 1.42464, -3.02542}, {-1.45582, 0.756939, 1.44142, 1.61827e-12, 0.53318, -2.01922, 0, -1.33263, 0, -4.36745, -0.12753, -1.73341, 1.79949, -1.59467, 0.714206, -2.00029e-12, 0.988174, 2.4959, 1.79949, 0.711591, -1.78169, 5.82327, -4.01593, -8.26156, -1.79949, -2.84431, 9.85858, -1.79949, 6.92519, -0.714206}, {-3.26389, 1.55026, 1.55311, -0.994319, -0.995188, -0.994319, -0.203724, 1.40177, -0.203724, 0.110078, 0.110174, 1.71575, 3.86152, 5.84961, 5.84624, 1.48086, -0.502558, 1.48086, -0.278087, -6.701, 1.70663, -1.92117, 0.0618612, -8.34385, 1.09298, 1.09394, -0.891733, 0.115752, -1.86886, -1.86896}, {1.08796, -0.516753, -0.517703, 2.98296, 2.98556, 2.98296, -0.203724, 1.40177, -0.203724, 0.110078, 0.110174, 1.71575, -4.46761, 3.93587, 3.93978, 2.29576, -6.10962, 2.29576, -1.09298, -1.09394, 0.891733, -1.48086, 0.502558, -1.48086, 0.65267, 0.65324, -7.75472, 0.115752, -1.86886, -1.86896}, {1.08796, -0.516753, -0.517703, -0.994319, -0.995188, -0.994319, 0.611171, -4.2053, 0.611171, 0.110078, 0.110174, 1.71575, -0.115752, 1.86886, 1.86896, 5.45814, 3.47819, 5.45814, -5.44484, 0.973073, 2.96255, -1.48086, 0.502558, -1.48086, 1.09298, 1.09394, -0.891733, -0.32456, -2.30956, -8.73195}, {1.08796, -0.516753, -0.517703, -0.994319, -0.995188, -0.994319, -0.203724, 1.40177, -0.203724, -0.330234, -0.330523, -5.14724, -0.115752, 1.86886, 1.86896, 1.48086, -0.502558, 1.48086, -1.09298, -1.09394, 0.891733, -5.83272, 2.56957, 0.589952, 5.07026, 5.07469, 3.08554, 0.930647, -7.47593, -1.05407}, {5.37021, -5.36225, 5.37163, 3.64724, -0.373167, 0.376681, -1.85717, -1.41425, -0.191806, 0, 0, 1.60567, -16.8846, -0.25544, 0.240906, -2.21265, 2.20937, -0.228519, 11.9369, 5.19574, 3.21754, 2.21265, -2.20937, -6.19415, -4.50824, 0.46126, -2.45032, 2.29559, 1.74811, -1.74763}, {-1.79007, 1.78742, -1.79054, -10.9417, 1.1195, -1.13004, -1.85717, -1.41425, -0.191806, 7.40292e-16, 5.63738e-16, 1.60567, 4.86469, -8.89778, 8.9098, 5.21604, 7.86637, 0.538704, 4.50824, -0.46126, 2.45032, 2.21265, -2.20937, 0.228519, -4.50824, 0.46126, -8.87299, 2.29559, 1.74811, -1.74763}, {-1.79007, 1.78742, -1.79054, 3.64724, -0.373167, 0.376681, 5.57152, 4.24275, 0.575417, 0, 0, 1.60567, -2.29559, -1.74811, 1.74763, -16.8016, 3.70204, -1.73524, 11.6685, -7.61093, 9.61249, 2.21265, -2.20937, 0.228519, -4.50824, 0.46126, -2.45032, 2.29559, 1.74811, -8.1703}, {-1.79007, 1.78742, -1.79054, 3.64724, -0.373167, 0.376681, -1.85717, -1.41425, -0.191806, 0, 0, -4.817, -2.29559, -1.74811, 1.74763, -2.21265, 2.20937, -0.228519, 4.50824, -0.46126, 2.45032, 9.37293, -9.35904, 7.39069, -19.0972, 1.95393, -3.95704, 9.72428, 7.40511, -0.980408}, {-3.03198, 1.78237, 1.1993, 0.5032, 0.50364, 1.82018, -0.838801, -0.839534, 0.331788, -0.67506, 0.930018, -1.7522, -3.88404, -1.90272, -9.03645, 0.414826, 0.415188, -2.65998, 3.14277, 5.13024, -1.24312, 2.28541, -4.13526, 9.66879, 0.212431, -1.7721, -0.084027, 1.87124, -0.111844, 1.75573}, {1.01066, -0.594124, -0.399767, -1.5096, -1.51092, -5.46054, -0.838801, -0.839534, 0.331788, -0.67506, 0.930018, -1.7522, -5.91388, 2.48834, -0.156659, 3.77003, 3.77333, -3.98713, -0.212431, 1.7721, 0.084027, -0.414826, -0.415188, 2.65998, 2.91267, -5.49217, 6.92478, 1.87124, -0.111844, 1.75573}, {1.01066, -0.594124, -0.399767, 0.5032, 0.50364, 1.82018, 2.5164, 2.5186, -0.995364, -0.67506, 0.930018, -1.7522, -1.87124, 0.111844, -1.75573, -1.59797, -1.59937, -9.9407, -4.25508, 4.14859, 1.6831, -0.414826, -0.415188, 2.65998, 0.212431, -1.7721, -0.084027, 4.57148, -3.83192, 8.76454}, {1.01066, -0.594124, -0.399767, 0.5032, 0.50364, 1.82018, -0.838801, -0.839534, 0.331788, 2.02518, -2.79005, 5.25661, -1.87124, 0.111844, -1.75573, 0.414826, 0.415188, -2.65998, -0.212431, 1.7721, 0.084027, -4.45747, 1.96131, 4.25905, -1.80037, -3.78666, -7.36475, 5.22644, 3.24629, 0.428576}, {-4.62937, 1.83228, -4.62937, 0.198723, 1.94057, 2.54185, -1.74185, -1.32981, -1.74185, 0, 0, -2.34313, -2.94793, -9.40601, -15.2167, 1.90741, -0.754941, -0.988857, 7.21302, 7.71791, 7.21302, -1.90741, 0.754941, 10.3614, -0.245635, -2.39867, -0.245635, 2.15304, 1.64373, 5.0493}, {1.54312, -0.61076, 1.54312, -0.596168, -5.82171, -7.62554, -1.74185, -1.32981, -1.74185, 0, 0, -2.34313, -8.32553, 0.799305, -11.2218, 8.87479, 4.5643, 5.97853, 0.245635, 2.39867, 0.245635, -1.90741, 0.754941, 0.988857, -0.245635, -2.39867, 9.12687, 2.15304, 1.64373, 5.0493}, {1.54312, -0.61076, 1.54312, 0.198723, 1.94057, 2.54185, 5.22554, 3.98943, 5.22554, 0, 0, -2.34313, -2.15304, -1.64373, -5.0493, 1.11252, -8.51722, -11.1562, -5.92686, 4.84171, -5.92686, -1.90741, 0.754941, 0.988857, -0.245635, -2.39867, -0.245635, 2.15304, 1.64373, 14.4218}, {1.54312, -0.61076, 1.54312, 0.198723, 1.94057, 2.54185, -1.74185, -1.32981, -1.74185, 0, 0, 7.02938, -2.15304, -1.64373, -5.0493, 1.90741, -0.754941, -0.988857, 0.245635, 2.39867, 0.245635, -8.0799, 3.19798, -5.18364, -1.04052, -10.1609, -10.413, 9.12042, 6.96297, 12.0167}, {-4.33994, 0.458772, -1.71772, 0, 1.39654, 0, -1.44665, -0.27723, 1.44665, 1.76979e-12, -0.966385, -2.01922, -1.78815, -7.12335, -0.707741, 1.78815, -1.38354, -1.78815, 5.78659, 1.64062, -8.28248, -1.78815, 5.24908, 9.86504, -2.18758e-12, -0.531699, 2.4959, 1.78815, 1.53719, 0.707741}, {1.44665, -0.152924, 0.572575, 1.50464e-15, -4.18962, 4.79586e-15, -1.44665, -0.27723, 1.44665, 1.77122e-12, -0.966385, -2.01922, -7.57474, -0.925496, -2.99804, 7.57474, -0.274623, -7.57474, 2.18837e-12, 0.531699, -2.4959, -1.78815, 1.38354, 1.78815, -9.27361e-12, 3.33384, 10.5728, 1.78815, 1.53719, 0.707741}, {1.44665, -0.152924, 0.572575, 2.45632e-27, 1.39654, -2.80022e-15, 4.33994, 0.831689, -4.33994, 1.77124e-12, -0.966385, -2.01922, -1.78815, -1.53719, -0.707741, 1.78815, -6.9697, -1.78815, -5.78659, 1.1434, -4.7862, -1.78815, 1.38354, 1.78815, -2.18937e-12, -0.531699, 2.4959, 1.78815, 5.40273, 8.78463}, {1.44665, -0.152924, 0.572575, 0, 1.39654, 0, -1.44665, -0.27723, 1.44665, -5.31262e-12, 2.89915, 6.05767, -1.78815, -1.53719, -0.707741, 1.78815, -1.38354, -1.78815, 2.18856e-12, 0.531699, -2.4959, -7.57474, 1.99524, -0.502145, -2.18892e-12, -6.11785, 2.4959, 7.57474, 2.64611, -5.07885}, {3.99411, 0.408657, -5.22602, 1.94285, 0.198782, -0.198956, -0.611477, 1.5417, -1.54305, 0, -1.60427, 0, -8.52722, -0.872462, -1.11149, -1.64567, -2.15136, 2.15324, 4.8474, -7.90408, 5.92628, 1.64567, 8.56842, -2.15324, -2.40149, 1.73727, 0.245923, 0.755828, 0.0773324, 1.90731}, {-1.33137, -0.136219, 1.74201, -5.82855, -0.596347, 0.596868, -0.611477, 1.5417, -1.54305, 0, -1.60427, 0, 4.56966, 0.467544, -8.87534, 0.800244, -8.31817, 8.32544, 2.40149, -1.73727, -0.245923, 1.64567, 2.15136, -2.15324, -2.40149, 8.15434, 0.245923, 0.755828, 0.0773324, 1.90731}, {-1.33137, -0.136219, 1.74201, 1.94285, 0.198782, -0.198956, 1.83443, -4.62511, 4.62915, 0, -1.60427, 0, -0.755828, -0.0773324, -1.90731, -9.41706, -2.94649, 2.94906, 7.72698, -1.1924, -7.21395, 1.64567, 2.15136, -2.15324, -2.40149, 1.73727, 0.245923, 0.755828, 6.4944, 1.90731}, {-1.33137, -0.136219, 1.74201, 1.94285, 0.198782, -0.198956, -0.611477, 1.5417, -1.54305, 0, 4.8128, 0, -0.755828, -0.0773324, -1.90731, -1.64567, -2.15136, 2.15324, 2.40149, -1.73727, -0.245923, 6.97115, 2.69623, -9.12126, -10.1729, 0.942144, 1.04175, 3.20174, -6.08948, 8.07952}, {1.7133, -2.45292, -4.3293, -1.44292, 0.0459567, -1.45561, 0, -1.33263, 0, 2.01402, 0.469033, 0.0125109, 8.26116, -1.25129, 5.83791, 1.78355, 1.59041, 1.79923, 0.70592, 5.96708, -1.78377, -9.83965, -3.46655, -1.84928, -0.70592, -0.636563, 1.78377, -2.48947, 1.06746, -0.0154644}, {-0.571101, 0.817639, 1.4431, 4.32877, -0.13787, 4.36683, 0, -1.33263, 0, 2.01402, 0.469033, 0.0125109, 4.77387, -4.33802, -5.75693, 1.78355, 6.92093, 1.79923, 0.70592, 0.636563, -1.78377, -1.78355, -1.59041, -1.79923, -8.76202, -2.5127, 1.73373, -2.48947, 1.06746, -0.0154644}, {-0.571101, 0.817639, 1.4431, -1.44292, 0.0459567, -1.45561, 0, 3.99789, 0, 2.01402, 0.469033, 0.0125109, 2.48947, -1.06746, 0.0154644, 7.55524, 1.40659, 7.62167, 2.99032, -2.63399, -7.55617, -1.78355, -1.59041, -1.79923, -0.70592, -0.636563, 1.78377, -10.5456, -0.808671, -0.0655081}, {-0.571101, 0.817639, 1.4431, -1.44292, 0.0459567, -1.45561, 0, -1.33263, 0, -6.04207, -1.4071, -0.0375328, 2.48947, -1.06746, 0.0154644, 1.78355, 1.59041, 1.79923, 0.70592, 0.636563, -1.78377, 0.500853, -4.86097, -7.57163, 5.06577, -0.82039, 7.60621, -2.48947, 6.39798, -0.0154644}, {7.61576, -5.82053, 0.598329, -1.54462, -0.610276, -1.54223, 1.74008, -1.3299, 1.74168, 2.34313, 0, 0, 11.2256, 0.797254, 8.32176, -0.241602, 2.39819, -0.246525, -5.97333, 4.56526, -8.87301, -9.1309, -2.39819, 0.246525, -0.987004, 0.754342, 1.9063, -5.04712, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, 4.63387, 1.83083, 4.6267, 1.74008, -1.3299, 1.74168, 2.34313, 7.73589e-16, -1.01311e-15, 15.2015, -9.40456, 2.9506, -7.20193, 7.7178, -7.21323, 0.987004, -0.754342, -1.9063, 0.241602, -2.39819, 0.246525, -10.3595, 0.754342, 1.9063, -5.04712, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, -1.54462, -0.610276, -1.54223, -5.22025, 3.9897, -5.22503, 2.34313, 0, 0, 5.04712, -1.64385, 2.15283, 5.93689, 4.83929, 5.92241, 11.1413, -8.51505, -1.10853, 0.241602, -2.39819, 0.246525, -0.987004, 0.754342, 1.9063, -14.4196, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, -1.54462, -0.610276, -1.54223, 1.74008, -1.3299, 1.74168, -7.02938, 0, 0, 5.04712, -1.64385, 2.15283, -0.241602, 2.39819, -0.246525, 0.987004, -0.754342, -1.9063, 10.3959, -10.1589, 1.0443, 5.19149, 3.19544, 8.07523, -12.0075, 6.96345, -9.11953}, {2.66454e-15, -8.88178e-15, -7.0244, 0.00253498, 1.78885, -0.00126659, -2.34566, -1.78885, -2.3402, 2.34313, 0, 0, -0.0132733, -9.36656, -2.88758, 2.89626, 3.10862e-15, 2.89421, 12.282, 9.36656, 9.35923, -12.2688, -3.10862e-15, -2.89421, -2.8994, -2.21115, 0.00156559, 0.00313341, 2.21115, 2.89265}, {-4.44089e-16, -2.81691e-15, 2.34147, -0.00760494, -5.36656, 0.00379978, -2.34566, -1.78885, -2.3402, 2.34313, 1.04056e-15, 1.36127e-15, -0.00313341, -2.21115, -12.2585, 12.2789, 7.15542, 12.255, 2.8994, 2.21115, -0.00156559, -2.89626, 2.22045e-15, -2.89421, -12.2719, -2.21115, 0.00156559, 0.00313341, 2.21115, 2.89265}, {-8.88178e-16, -1.9984e-15, 2.34147, 0.00253498, 1.78885, -0.00126659, 7.03698, 5.36656, 7.0206, 2.34313, 0, 0, -0.00313341, -2.21115, -2.89265, 2.88612, -7.15542, 2.89928, 2.8994, 2.21115, -9.36743, -2.89626, 2.66454e-15, -2.89421, -2.8994, -2.21115, 0.00156559, -9.36937, 2.21115, 2.89265}, {4.44089e-16, 0, 2.34147, 0.00253498, 1.78885, -0.00126659, -2.34566, -1.78885, -2.3402, -7.02938, 0, 0, -0.00313341, -2.21115, -2.89265, 2.89626, 0, 2.89421, 2.8994, 2.21115, -0.00156559, -2.89626, 0, -12.2601, -2.90954, -9.36656, 0.00663197, 9.38578, 9.36656, 12.2534}, {3.98943, -5.22554, 5.22554, -0.61076, -1.54312, 1.54312, 0, 2.34313, 0, 1.94057, -2.54185, 0.198723, 4.84171, 5.92686, -5.92686, 0.754941, -0.988857, -1.90741, 1.64373, -14.4218, 2.15304, -8.51722, 11.1562, 1.11252, -1.64373, 5.0493, -2.15304, -2.39867, 0.245635, -0.245635}, {-1.32981, 1.74185, -1.74185, 1.83228, 4.62937, -4.62937, -1.12881e-15, 2.34313, -1.15595e-16, 1.94057, -2.54185, 0.198723, 7.71791, -7.21302, 7.21302, 0.754941, -10.3614, -1.90741, 1.64373, -5.0493, 2.15304, -0.754941, 0.988857, 1.90741, -9.40601, 15.2167, -2.94793, -2.39867, 0.245635, -0.245635}, {-1.32981, 1.74185, -1.74185, -0.61076, -1.54312, 1.54312, 0, -7.02938, 0, 1.94057, -2.54185, 0.198723, 2.39867, -0.245635, 0.245635, 3.19798, 5.18364, -8.0799, 6.96297, -12.0167, 9.12042, -0.754941, 0.988857, 1.90741, -1.64373, 5.0493, -2.15304, -10.1609, 10.413, -1.04052}, {-1.32981, 1.74185, -1.74185, -0.61076, -1.54312, 1.54312, 0, 2.34313, 0, -5.82171, 7.62554, -0.596168, 2.39867, -0.245635, 0.245635, 0.754941, -0.988857, -1.90741, 1.64373, -5.0493, 2.15304, 4.5643, -5.97853, 8.87479, 0.799305, 11.2218, -8.32553, -2.39867, -9.12687, -0.245635}, {9.45441, 0, -1.77636e-15, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, 1.36261, -1.78885, -1.36261, 3.89543, 0, -16.5013, -2.21115, -2.21115, -1.68428, -5.47113, -9.36656, 9.36656, -3.23931, 9.36656, 7.13474, -1.68428, 2.21115, -2.21115, -3.89543, 0, 3.89543}, {-3.15147, 2.22045e-16, 2.22045e-16, 1.00042e-15, 8.3972e-15, -9.45441, 1.78885, 1.78885, -1.78885, 1.36261, -1.78885, -1.36261, 16.5013, 5.32907e-15, -3.89543, -9.36656, -9.36656, 5.47113, 1.68428, -2.21115, 2.21115, 2.21115, 2.21115, 1.68428, -7.13474, 9.36656, 3.23931, -3.89543, -3.10862e-15, 3.89543}, {-3.15147, 4.44089e-16, 6.66134e-16, 0, 0, 3.15147, -5.36656, -5.36656, 5.36656, 1.36261, -1.78885, -1.36261, 3.89543, -8.88178e-16, -3.89543, -2.21115, -2.21115, -14.2902, 14.2902, -2.21115, 2.21115, 2.21115, 2.21115, 1.68428, -1.68428, 2.21115, -2.21115, -9.34589, 7.15542, 9.34589}, {-3.15147, 0, 2.22045e-16, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, -4.08784, 5.36656, 4.08784, 3.89543, 0, -3.89543, -2.21115, -2.21115, -1.68428, 1.68428, -2.21115, 2.21115, 14.817, 2.21115, 1.68428, -1.68428, 2.21115, -14.817, -11.0508, -7.15542, 11.0508}, {0.908154, -0.908154, 3.90885, -0.830764, 0.830764, 0.830764, 1.29079, 0.314875, 0.314875, -0.157311, -1.44836, 0.157311, 4.72412, -4.72412, -2.7394, -0.568628, -1.41609, -1.41609, -6.3845, -2.02289, -0.0381727, 1.19787, 7.20951, 0.786843, 1.22133, 0.763387, -1.22133, -1.40106, 1.40106, -0.583654}, {-0.302718, 0.302718, -1.30295, 2.49229, -2.49229, -2.49229, 1.29079, 0.314875, 0.314875, -0.157311, -1.44836, 0.157311, 2.61193, -2.61193, 5.79545, -5.7318, -2.67559, -2.67559, -1.22133, -0.763387, 1.22133, 0.568628, 1.41609, 1.41609, 1.85057, 6.55681, -1.85057, -1.40106, 1.40106, -0.583654}, {-0.302718, 0.302718, -1.30295, -0.830764, 0.830764, 0.830764, -3.87238, -0.944625, -0.944625, -0.157311, -1.44836, 0.157311, 1.40106, -1.40106, 0.583654, 2.75443, -4.73914, -4.73914, -0.0104551, -1.97426, 6.43313, 0.568628, 1.41609, 1.41609, 1.22133, 0.763387, -1.22133, -0.771816, 7.19449, -1.2129}, {-0.302718, 0.302718, -1.30295, -0.830764, 0.830764, 0.830764, 1.29079, 0.314875, 0.314875, 0.471934, 4.34507, -0.471934, 1.40106, -1.40106, 0.583654, -0.568628, -1.41609, -1.41609, -1.22133, -0.763387, 1.22133, 1.7795, 0.205215, 6.62789, 4.54438, -2.55967, -4.54438, -6.56423, 0.14156, -1.84315}, {-2.30283, -5.06257, 2.51418, -1.077, -0.426271, -1.077, 0.0318939, 0.648138, 1.63756, 0.277498, -1.90939, 0.277498, 4.69044, 0.146092, 6.67515, 1.29182, -0.274242, -0.692891, -1.11582, -5.47959, -7.53849, -2.40182, 7.9118, -0.417103, 0.988241, 2.88704, 0.988241, -0.38243, 1.55899, -2.36714}, {0.767609, 1.68752, -0.838059, 3.23101, 1.27881, 3.23101, 0.0318939, 0.648138, 1.63756, 0.277498, -1.90939, 0.277498, -2.68801, -8.30908, 5.71938, 1.16425, -2.86679, -7.24314, -0.988241, -2.88704, -0.988241, -1.29182, 0.274242, 0.692891, -0.121753, 10.5246, -0.121753, -0.38243, 1.55899, -2.36714}, {0.767609, 1.68752, -0.838059, -1.077, -0.426271, -1.077, -0.0956818, -1.94441, -4.91269, 0.277498, -1.90939, 0.277498, 0.38243, -1.55899, 2.36714, 5.59983, 1.43084, 3.61512, -4.05868, -9.63713, 2.36399, -1.29182, 0.274242, 0.692891, 0.988241, 2.88704, 0.988241, -1.49242, 9.19655, -3.47714}, {0.767609, 1.68752, -0.838059, -1.077, -0.426271, -1.077, 0.0318939, 0.648138, 1.63756, -0.832495, 5.72817, -0.832495, 0.38243, -1.55899, 2.36714, 1.29182, -0.274242, -0.692891, -0.988241, -2.88704, -0.988241, -4.36226, -6.47585, 4.04513, 5.29625, 4.59212, 5.29625, -0.510006, -1.03356, -8.91739}, {-4.7272, -4.7272, -4.7272, -1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 6.30294, -10.1984, 6.30294, 3.89543, 1.32716e-12, -1.3276e-12, 6.30294, 6.30294, -10.1984, -10.1984, 6.30294, 6.30294, 2.9643e-13, 3.03979e-13, 3.89543, 1.65001e-12, 3.89543, 1.64713e-12}, {1.57573, 1.57573, 1.57573, 4.7272, -4.7272, 4.7272, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -6.30294, -2.96874e-13, -3.01537e-13, -3.89543, -3.89543, -1.32644e-12, 1.32544e-12, -6.30294, 6.30294, 10.1984, 1.64713e-12, 3.89543, 1.65001e-12}, {1.57573, 1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 4.7272, 4.7272, -4.7272, 1.57573, -1.57573, -1.57573, -1.64579e-12, -3.89543, -1.64313e-12, 10.1984, -6.30294, 6.30294, -6.30294, -6.30294, -10.1984, -3.89543, -1.32711e-12, 1.32721e-12, 2.99982e-13, 3.06422e-13, 3.89543, -6.30294, 10.1984, 6.30294}, {1.57573, 1.57573, 1.57573, -1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -4.7272, 4.7272, 4.7272, -1.64313e-12, -3.89543, -1.64913e-12, 3.89543, 1.32694e-12, -1.32694e-12, -3.0087e-13, -2.9754e-13, -3.89543, -10.1984, -6.30294, -6.30294, 6.30294, -6.30294, 10.1984, 6.30294, 10.1984, -6.30294}, {-1.56775, 5.44381, 3.24545, 1.20899, 0.479095, 1.20825, -1.50445, -0.59618, 0.101437, -0.227124, 1.93169, -0.227868, -6.97629, -0.265605, -4.98928, 0.365209, 0.144724, -1.61886, 7.23144, 5.36461, 0.80607, 0.543287, -7.87147, 2.53034, -1.21365, -2.97989, -1.21182, 2.14034, -1.65078, 0.156278}, {0.522584, -1.8146, -1.08182, -3.62696, -1.43729, -3.62475, -1.50445, -0.59618, 0.101437, -0.227124, 1.93169, -0.227868, -4.23068, 8.90919, 4.171, 6.383, 2.52944, -2.02461, 1.21365, 2.97989, 1.21182, -0.365209, -0.144724, 1.61886, -0.305154, -10.7066, -0.300344, 2.14034, -1.65078, 0.156278}, {0.522584, -1.8146, -1.08182, 1.20899, 0.479095, 1.20825, 4.51334, 1.78854, -0.304311, -0.227124, 1.93169, -0.227868, -2.14034, 1.65078, -0.156278, -4.47074, -1.77166, -6.45186, -0.876686, 10.2383, 5.53909, -0.365209, -0.144724, 1.61886, -1.21365, -2.97989, -1.21182, 3.04884, -9.37752, 1.06775}, {0.522584, -1.8146, -1.08182, 1.20899, 0.479095, 1.20825, -1.50445, -0.59618, 0.101437, 0.681372, -5.79506, 0.683605, -2.14034, 1.65078, -0.156278, 0.365209, 0.144724, -1.61886, 1.21365, 2.97989, 1.21182, -2.45554, 7.11368, 5.94614, -6.0496, -4.89627, -6.04482, 8.15813, 0.733943, -0.24947}, {0.31567, 3.31084, -3.29586, 0.708828, -0.490803, -1.01172, 0.848249, 1.25814, 0.0940198, -1.45185, 0.336273, -0.18092, -3.58141, 3.93402, 3.93947, -1.92465, -0.948485, 1.13434, -4.31143, -5.22358, -1.85026, 7.73207, -0.396608, -0.41066, 0.91843, 0.191009, 1.47418, 0.746096, -1.97081, 0.107415}, {-0.105223, -1.10361, 1.09862, -2.12648, 1.47241, 3.03516, 0.848249, 1.25814, 0.0940198, -1.45185, 0.336273, -0.18092, -0.325203, 6.38527, -4.5019, -5.31765, -5.98106, 0.758261, -0.91843, -0.191009, -1.47418, 1.92465, 0.948485, -1.13434, 6.72585, -1.15408, 2.19787, 0.746096, -1.97081, 0.107415}, {-0.105223, -1.10361, 1.09862, 0.708828, -0.490803, -1.01172, -2.54475, -3.77443, -0.282059, -1.45185, 0.336273, -0.18092, -0.746096, 1.97081, -0.107415, -4.75996, 1.01473, 5.18122, -0.497537, 4.22345, -5.86867, 1.92465, 0.948485, -1.13434, 0.91843, 0.191009, 1.47418, 6.55351, -3.3159, 0.831095}, {-0.105223, -1.10361, 1.09862, 0.708828, -0.490803, -1.01172, 0.848249, 1.25814, 0.0940198, 4.35556, -1.00882, 0.54276, -0.746096, 1.97081, -0.107415, -1.92465, -0.948485, 1.13434, -0.91843, -0.191009, -1.47418, 2.34555, 5.36294, -5.52882, -1.91688, 2.15422, 5.52107, -2.6469, -7.00338, -0.268664}, {2.3172, 0.917451, -2.318, 1.00416, 1.78176, 0.599951, -0.431249, 0.464989, -1.17482, 0.199489, -1.94094, -0.197793, -4.30311, -8.95143, -4.09645, -0.708156, -2.77714, 0.710583, 3.21279, -2.0567, 5.1964, -0.0898, 10.5409, 0.0805874, -1.48779, 0.196748, -0.497096, 0.286472, 1.82437, 1.69665}, {-0.772399, -0.305817, 0.772666, -3.01248, -5.34529, -1.79985, -0.431249, 0.464989, -1.17482, 0.199489, -1.94094, -0.197793, 2.80312, -0.601104, -4.78731, 1.01684, -4.6371, 5.40988, 1.48779, -0.196748, 0.497096, 0.708156, 2.77714, -0.710583, -2.28575, 7.96049, 0.294074, 0.286472, 1.82437, 1.69665}, {-0.772399, -0.305817, 0.772666, 1.00416, 1.78176, 0.599951, 1.29375, -1.39497, 3.52447, 0.199489, -1.94094, -0.197793, -0.286472, -1.82437, -1.69665, -4.72479, -9.9042, -1.68922, 4.57739, 1.02652, -2.59357, 0.708156, 2.77714, -0.710583, -1.48779, 0.196748, -0.497096, -0.511484, 9.58812, 2.48782}, {-0.772399, -0.305817, 0.772666, 1.00416, 1.78176, 0.599951, -0.431249, 0.464989, -1.17482, -0.598467, 5.82281, 0.593378, -0.286472, -1.82437, -1.69665, -0.708156, -2.77714, 0.710583, 1.48779, -0.196748, 0.497096, 3.79775, 4.00041, -3.80125, -5.50443, -6.93031, -2.8969, 2.01147, -0.0355852, 6.39595}, {-9.63611, -0.184458, -9.63611, -0.833808, -0.834046, -2.43948, -1.57551, 1.57551, -1.57551, -0.802719, -0.802949, 0.802949, 0.39558, 4.29112, 8.80297, 2.97808, -0.916498, 4.96279, 4.27918, -8.32547, 4.27918, 0.232798, 4.12829, -8.17459, 2.02286, 2.02344, 2.02286, 2.93965, -0.954937, 0.954937}, {3.21204, 0.0614861, 3.21204, 2.50142, 2.50214, 7.31843, -1.57551, 1.57551, -1.57551, -0.802719, -0.802949, 0.802949, -15.7878, 0.708993, -13.8031, 9.28012, -7.21853, 11.2648, -2.02286, -2.02344, -2.02286, -2.97808, 0.916498, -4.96279, 5.23374, 5.23523, -1.18894, 2.93965, -0.954937, 0.954937}, {3.21204, 0.0614861, 3.21204, -0.833808, -0.834046, -2.43948, 4.72653, -4.72653, 4.72653, -0.802719, -0.802949, 0.802949, -2.93965, 0.954937, -0.954937, 6.31331, 2.41969, 14.7207, -14.871, -2.26938, -14.871, -2.97808, 0.916498, -4.96279, 2.02286, 2.02344, 2.02286, 6.15053, 2.25686, -2.25686}, {3.21204, 0.0614861, 3.21204, -0.833808, -0.834046, -2.43948, -1.57551, 1.57551, -1.57551, 2.40816, 2.40885, -2.40885, -2.93965, 0.954937, -0.954937, 2.97808, -0.916498, 4.96279, -2.02286, -2.02344, -2.02286, -15.8262, 0.670554, -17.8109, 5.35809, 5.35962, 11.7808, 9.24169, -7.25697, 7.25697}, {8.88178e-16, 4.44089e-15, -3.26126, 1.4431, -0.571101, 0.0717263, 0.0125109, 2.01402, -0.807596, -1.45561, -1.44292, -0.351216, -7.55617, 2.99032, -1.71928, -1.79923, -1.78355, 0.909586, -0.0655081, -10.5456, 2.88492, 7.62167, 7.55524, 0.495278, 0.0154644, 2.48947, 0.345468, 1.78377, -0.70592, 1.43237}, {-2.22045e-16, 6.66134e-16, 1.08709, -4.3293, 1.7133, -0.215179, 0.0125109, 2.01402, -0.807596, -1.45561, -1.44292, -0.351216, -1.78377, 0.70592, -5.78072, -1.84928, -9.83965, 4.13997, -0.0154644, -2.48947, -0.345468, 1.79923, 1.78355, -0.909586, 5.83791, 8.26116, 1.75033, 1.78377, -0.70592, 1.43237}, {-6.66134e-16, -2.22045e-16, 1.08709, 1.4431, -0.571101, 0.0717263, -0.0375328, -6.04207, 2.42279, -1.45561, -1.44292, -0.351216, -1.78377, 0.70592, -1.43237, -7.57163, 0.500853, 0.622681, -0.0154644, -2.48947, -4.69381, 1.79923, 1.78355, -0.909586, 0.0154644, 2.48947, 0.345468, 7.60621, 5.06577, 2.83723}, {0, 4.44089e-16, 1.08709, 1.4431, -0.571101, 0.0717263, 0.0125109, 2.01402, -0.807596, 4.36683, 4.32877, 1.05365, -1.78377, 0.70592, -1.43237, -1.79923, -1.78355, 0.909586, -0.0154644, -2.48947, -0.345468, 1.79923, 1.78355, -5.25793, -5.75693, 4.77387, 0.0585632, 1.73373, -8.76202, 4.66276}, {4.62915, 1.83443, 4.62633, 1.74201, -1.33137, 0.13686, 3.96359e-17, -3.87053e-16, 1.60497, -0.198956, 1.94285, -0.199718, -7.21395, 7.72698, 1.18954, -2.15324, 1.64567, -2.15302, 1.90731, 0.755828, -6.49756, 2.94906, -9.41706, 2.95189, -1.90731, -0.755828, 0.0776963, 0.245923, -2.40149, -1.73698}, {-1.54305, -0.611477, -1.54211, -5.22602, 3.99411, -0.41058, 1.18908e-16, -1.16116e-15, 1.60497, -0.198956, 1.94285, -0.199718, 5.92628, 4.8474, 7.90542, -2.15324, 1.64567, -8.57288, 1.90731, 0.755828, -0.0776963, 2.15324, -1.64567, 2.15302, -1.11149, -8.52722, 0.876567, 0.245923, -2.40149, -1.73698}, {-1.54305, -0.611477, -1.54211, 1.74201, -1.33137, 0.13686, 0, 0, -4.8149, -0.198956, 1.94285, -0.199718, -0.245923, 2.40149, 1.73698, -9.12126, 6.97115, -2.70046, 8.07952, 3.20174, 6.09074, 2.15324, -1.64567, 2.15302, -1.90731, -0.755828, 0.0776963, 1.04175, -10.1729, -0.938112}, {-1.54305, -0.611477, -1.54211, 1.74201, -1.33137, 0.13686, -1.18908e-16, 1.16116e-15, 1.60497, 0.596868, -5.82855, 0.599153, -0.245923, 2.40149, 1.73698, -2.15324, 1.64567, -2.15302, 1.90731, 0.755828, -0.0776963, 8.32544, 0.800244, 8.32145, -8.87534, 4.56966, -0.469744, 0.245923, -2.40149, -8.15685}, {4.35065, -1.72407, 1.44786, 0, 0, 1.17684, 1.43763, 1.45199, 0.197849, 0.0125895, -2.02668, -0.892072, 1.79257, -0.710355, -5.56548, -1.77701, -1.79476, -1.69921, -5.73495, -8.31307, -0.439401, 1.72665, 9.90148, 5.2675, -0.0155615, 2.50511, -0.351997, -1.79257, 0.710355, 0.858106}, {-1.45022, 0.57469, -0.482621, -1.29313e-15, 4.05633e-15, -3.53053, 1.43763, 1.45199, 0.197849, 0.0125895, -2.02668, -0.892072, 7.59343, -3.00911, 1.07238, -7.52752, -7.60272, -2.49061, 0.0155615, -2.50511, 0.351997, 1.77701, 1.79476, 1.69921, -0.0659197, 10.6118, 3.21629, -1.79257, 0.710355, 0.858106}, {-1.45022, 0.57469, -0.482621, 0, 0, 1.17684, -4.31288, -4.35597, -0.593548, 0.0125895, -2.02668, -0.892072, 1.79257, -0.710355, -0.858106, -1.77701, -1.79476, -6.40659, 5.81643, -4.80387, 2.28248, 1.77701, 1.79476, 1.69921, -0.0155615, 2.50511, -0.351997, -1.84292, 8.81707, 4.42639}, {-1.45022, 0.57469, -0.482621, 0, 0, 1.17684, 1.43763, 1.45199, 0.197849, -0.0377686, 6.08004, 2.67622, 1.79257, -0.710355, -0.858106, -1.77701, -1.79476, -1.69921, 0.0155615, -2.50511, 0.351997, 7.57787, -0.504, 3.6297, -0.0155615, 2.50511, -5.05937, -7.54308, -5.09761, 0.0667081}, {2.31688, 0.916898, -2.31818, 0.572147, 2.2454, -0.575329, -1.46447, -2.59853, -0.874972, 1.66462, 0.658766, 0.677573, -2.04119, -11.3793, 2.05732, 1.10297, 0.436497, 1.79267, 8.62268, 13.9839, 3.62627, -7.76145, -3.07156, -4.50296, -2.76479, -3.58975, -0.126381, -0.247396, 2.39768, 0.243998}, {-0.772295, -0.305633, 0.772728, -1.71644, -6.7362, 1.72599, -1.46447, -2.59853, -0.874972, 1.66462, 0.658766, 0.677573, 3.33658, -1.17515, -3.33491, 6.96086, 10.8306, 5.29256, 2.76479, 3.58975, 0.126381, -1.10297, -0.436497, -1.79267, -9.42327, -6.22481, -2.83667, -0.247396, 2.39768, 0.243998}, {-0.772295, -0.305633, 0.772728, 0.572147, 2.2454, -0.575329, 4.39341, 7.7956, 2.62492, 1.66462, 0.658766, 0.677573, 0.247396, -2.39768, -0.243998, -1.18562, -8.5451, 4.09399, 5.85397, 4.81228, -2.96453, -1.10297, -0.436497, -1.79267, -2.76479, -3.58975, -0.126381, -6.90587, -0.237381, -2.46629}, {-0.772295, -0.305633, 0.772728, 0.572147, 2.2454, -0.575329, -1.46447, -2.59853, -0.874972, -4.99386, -1.9763, -2.03272, 0.247396, -2.39768, -0.243998, 1.10297, 0.436497, 1.79267, 2.76479, 3.58975, 0.126381, 1.98621, 0.786034, -4.88358, -5.05338, -12.5713, 2.17494, 5.61049, 12.7918, 3.74389}, {-7.02177, -5.36656, 7.02938, 0.00253498, -1.78885, 1.2111e-11, -2.34313, 0, 0, 0, 0, 2.34313, -2.9064, 7.15542, 2.89626, 2.89313, 2.21115, -1.49701e-11, 9.37564, -2.21115, 2.89626, -2.89313, -2.21115, -9.3725, -0.00313341, 2.21115, -2.89626, 2.89626, 0, -2.89626}, {2.34059, 1.78885, -2.34313, -0.00760494, 5.36656, -5.47978e-11, -2.34313, 0, 0, 1.36297e-15, 0, 2.34313, -12.2586, -7.15542, 12.2688, 12.2656, 2.21115, -2.25779e-11, 0.00313341, -2.21115, 2.89626, -2.89313, -2.21115, 2.25785e-11, -0.00313341, 2.21115, -12.2688, 2.89626, 0, -2.89626}, {2.34059, 1.78885, -2.34313, 0.00253498, -1.78885, 1.21079e-11, 7.02938, 0, 0, 0, 0, 2.34313, -2.89626, -4.44089e-16, 2.89626, 2.88299, 9.36656, -6.33979e-11, -9.35923, -9.36656, 12.2688, -2.89313, -2.21115, 1.49668e-11, -0.00313341, 2.21115, -2.89626, 2.89626, 0, -12.2688}, {2.34059, 1.78885, -2.34313, 0.00253498, -1.78885, 1.2111e-11, -2.34313, 0, 0, 0, 0, -7.02938, -2.89626, -4.44089e-16, 2.89626, 2.89313, 2.21115, -1.49701e-11, 0.00313341, -2.21115, 2.89626, -12.2555, -9.36656, 9.3725, -0.0132733, 9.36656, -2.89626, 12.2688, 0, -2.89626}, {0.0377686, 6.08004, 3.1372, 4.64343e-16, 1.84009e-16, 1.28977, -1.43763, 1.45199, -0.146251, 1.45022, 0.57469, -0.0977806, 0.0155615, 2.50511, -5.4607, 1.77701, -1.79476, -1.41346, 7.54308, -5.09761, 2.05838, -7.57787, -0.504, 1.80458, -1.79257, -0.710355, -1.47337, -0.0155615, -2.50511, 0.301639}, {-0.0125895, -2.02668, -1.04573, -2.77397e-15, 8.42705e-16, -3.8693, -1.43763, 1.45199, -0.146251, 1.45022, 0.57469, -0.0977806, 0.0659197, 10.6118, 3.8813, 7.52752, -7.60272, -0.82846, 1.79257, 0.710355, 1.47337, -1.77701, 1.79476, 1.41346, -7.59343, -3.00911, -1.08225, -0.0155615, -2.50511, 0.301639}, {-0.0125895, -2.02668, -1.04573, 0, 0, 1.28977, 4.31288, -4.35597, 0.438752, 1.45022, 0.57469, -0.0977806, 0.0155615, 2.50511, -0.301639, 1.77701, -1.79476, -6.57252, 1.84292, 8.81707, 5.65631, -1.77701, 1.79476, 1.41346, -1.79257, -0.710355, -1.47337, -5.81643, -4.80387, 0.692761}, {-0.0125895, -2.02668, -1.04573, 4.64343e-16, 1.84009e-16, 1.28977, -1.43763, 1.45199, -0.146251, -4.35065, -1.72407, 0.293342, 0.0155615, 2.50511, -0.301639, 1.77701, -1.79476, -1.41346, 1.79257, 0.710355, 1.47337, -1.72665, 9.90148, 5.5964, -1.79257, -0.710355, -6.63244, 5.73495, -8.31307, 0.886641}, {-4.7272, -4.7272, 4.7272, 1.57573, -1.57573, 1.57573, -1.57596, -1.57551, -1.57551, -1.57551, 1.57551, 1.57551, -10.1984, 6.30294, -6.30294, 0.000278382, 3.89515, -0.000278382, 6.30412, 6.30176, 10.1972, 6.30176, -10.1972, -6.30176, -0.000278382, 0.000278382, -3.89515, 3.89543, -9.10383e-15, 9.10383e-15}, {1.57573, 1.57573, -1.57573, -4.7272, 4.7272, -4.7272, -1.57596, -1.57551, -1.57551, -1.57551, 1.57551, 1.57551, -10.1984, -6.30294, 6.30294, 6.30412, 10.1972, 6.30176, 0.000278382, -0.000278382, 3.89515, -0.000278382, -3.89515, 0.000278382, 6.30176, -6.30176, -10.1972, 3.89543, -9.10383e-15, 9.10383e-15}, {1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 1.57573, 4.72788, 4.72653, 4.72653, -1.57551, 1.57551, 1.57551, -3.89543, 2.66454e-15, -1.44329e-14, -6.30266, 10.1981, -6.30322, -6.30266, -6.30322, 10.1981, -0.000278382, -3.89515, 0.000278382, -0.000278382, 0.000278382, -3.89515, 10.1975, -6.30204, -6.30204}, {1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 1.57573, -1.57596, -1.57551, -1.57551, 4.72653, -4.72653, -4.72653, -3.89543, 1.02141e-14, -6.66134e-16, 0.000278382, 3.89515, -0.000278382, 0.000278382, -0.000278382, 3.89515, -6.30322, -10.1981, 6.30322, -6.30322, 6.30322, -10.1981, 10.1993, 6.30204, 6.30204}, {1.83228, 4.63528, 4.62937, 1.94057, -2.54509, -0.198723, -1.32981, 1.74407, 1.74185, 0, 2.34612, 0, -9.40601, 15.2361, 2.94793, -0.754941, 0.990119, -1.90741, 7.71791, -7.22223, -7.21302, 0.754941, -10.3746, 1.90741, -2.39867, 0.245948, 0.245635, 1.64373, -5.05575, -2.15304}, {-0.61076, -1.54509, -1.54312, -5.82171, 7.63528, 0.596168, -1.32981, 1.74407, 1.74185, 7.74523e-16, 2.34612, -1.01451e-15, 0.799305, 11.2361, 8.32553, 4.5643, -5.98616, -8.87479, 2.39867, -0.245948, -0.245635, 0.754941, -0.990119, 1.90741, -2.39867, -9.13852, 0.245635, 1.64373, -5.05575, -2.15304}, {-0.61076, -1.54509, -1.54312, 1.94057, -2.54509, -0.198723, 3.98943, -5.23221, -5.22554, 0, 2.34612, 0, -1.64373, 5.05575, 2.15304, -8.51722, 11.1705, -1.11252, 4.84171, 5.93443, 5.92686, 0.754941, -0.990119, 1.90741, -2.39867, 0.245948, 0.245635, 1.64373, -14.4402, -2.15304}, {-0.61076, -1.54509, -1.54312, 1.94057, -2.54509, -0.198723, -1.32981, 1.74407, 1.74185, 0, -7.03835, 0, -1.64373, 5.05575, 2.15304, -0.754941, 0.990119, -1.90741, 2.39867, -0.245948, -0.245635, 3.19798, 5.19026, 8.0799, -10.1609, 10.4263, 1.04052, 6.96297, -12.032, -9.12042}, {-1.42344, 3.96091, -1.43084, -1.98584, -0.354449, 0.357788, 0.9893, 0.397365, -1.35371, 0.52206, 1.27739, 0.518977, 9.81149, 3.4879, -2.46294, 1.23179, -0.0530468, 1.23103, -5.76653, -0.448647, 6.49858, -3.32003, -5.0565, -3.30694, 1.80933, -1.14081, -1.08374, -1.86814, -2.07011, 1.03179}, {0.474478, -1.3203, 0.476947, 5.95751, 1.06335, -1.07336, 0.9893, 0.397365, -1.35371, 0.52206, 1.27739, 0.518977, -0.029771, 7.35132, -2.93958, -2.72541, -1.64251, 6.64587, -1.80933, 1.14081, 1.08374, -1.23179, 0.0530468, -1.23103, -0.278909, -6.25036, -3.15965, -1.86814, -2.07011, 1.03179}, {0.474478, -1.3203, 0.476947, -1.98584, -0.354449, 0.357788, -2.9679, -1.1921, 4.06113, 0.52206, 1.27739, 0.518977, 1.86814, 2.07011, -1.03179, 9.17514, 1.36475, -0.200121, -3.70724, 6.42202, -0.824048, -1.23179, 0.0530468, -1.23103, 1.80933, -1.14081, -1.08374, -3.95638, -7.17965, -1.04412}, {0.474478, -1.3203, 0.476947, -1.98584, -0.354449, 0.357788, 0.9893, 0.397365, -1.35371, -1.56618, -3.83216, -1.55693, 1.86814, 2.07011, -1.03179, 1.23179, -0.0530468, 1.23103, -1.80933, 1.14081, 1.08374, -3.1297, 5.33426, -3.13882, 9.75268, 0.276984, -2.51489, -5.82534, -3.65957, 6.44663}, {5.36656, 5.36656, -5.36656, 1.41539, 1.41492, 1.85814, 0, 3.15102, 0, 0.373467, -2.77708, -3.64699, -5.19992, -5.19747, -11.9405, -1.74951, -5.64381, -2.29678, 2.21115, -14.2878, -2.21115, 0.255645, 16.7521, 16.8847, -2.21115, 1.68373, 2.21115, -0.461631, -0.462209, 4.50793}, {-1.78885, -1.78885, 1.78885, -4.24616, -4.24476, -5.57441, -2.92145e-16, 3.15102, 2.85286e-15, 0.373467, -2.77708, -3.64699, 7.61705, 7.61763, -11.6633, -1.74951, -18.2479, -2.29678, 2.21115, -1.68373, -2.21115, 1.74951, 5.64381, 2.29678, -3.70501, 12.7921, 16.7991, -0.461631, -0.462209, 4.50793}, {-1.78885, -1.78885, 1.78885, 1.41539, 1.41492, 1.85814, 0, -9.45305, 0, 0.373467, -2.77708, -3.64699, 0.461631, 0.462209, -4.50793, -7.41106, -11.3035, -9.72932, 9.36656, 5.47169, -9.36656, 1.74951, 5.64381, 2.29678, -2.21115, 1.68373, 2.21115, -1.9555, 10.6461, 19.0959}, {-1.78885, -1.78885, 1.78885, 1.41539, 1.41492, 1.85814, 0, 3.15102, 0, -1.1204, 8.33125, 10.941, 0.461631, 0.462209, -4.50793, -1.74951, -5.64381, -2.29678, 2.21115, -1.68373, -2.21115, 8.90493, 12.7992, -4.85864, -7.87269, -3.97595, -5.2214, -0.461631, -13.0663, 4.50793}, {-4.34476, -0.77549, 0.782793, -0.00873736, -1.40655, 0.564008, -1.44688, -0.0374651, -0.914786, 0.00736434, 1.18552, 0.611709, -1.74439, 7.04528, -2.63065, 1.79924, 1.7849, 0.433585, 5.78582, -0.123349, 5.11241, -1.8287, -6.52698, -2.88042, 0.00169715, 0.27321, -1.45327, 1.77934, -1.41907, 0.374623}, {1.44825, 0.258497, -0.260931, 0.0262121, 4.21965, -1.69202, -1.44688, -0.0374651, -0.914786, 0.00736434, 1.18552, 0.611709, -7.57235, 0.385087, 0.669101, 7.58676, 1.93476, 4.09273, -0.00169715, -0.27321, 1.45327, -1.79924, -1.7849, -0.433585, -0.0277602, -4.46887, -3.9001, 1.77934, -1.41907, 0.374623}, {1.44825, 0.258497, -0.260931, -0.00873736, -1.40655, 0.564008, 4.34064, 0.112395, 2.74436, 0.00736434, 1.18552, 0.611709, -1.77934, 1.41907, -0.374623, 1.83419, 7.4111, -1.82245, -5.79471, -1.3072, 2.49699, -1.79924, -1.7849, -0.433585, 0.00169715, 0.27321, -1.45327, 1.74988, -6.16115, -2.07221}, {1.44825, 0.258497, -0.260931, -0.00873736, -1.40655, 0.564008, -1.44688, -0.0374651, -0.914786, -0.022093, -3.55656, -1.83513, -1.77934, 1.41907, -0.374623, 1.79924, 1.7849, 0.433585, -0.00169715, -0.27321, 1.45327, -7.59225, -2.81889, 0.610139, 0.0366466, 5.89941, -3.7093, 7.56686, -1.26921, 4.03377}, {-4.817, -2.66454e-15, -5.32907e-15, -1.78885, -1.78885, 1.78885, 0.373353, 0.374783, -3.64588, -0.190167, 1.41407, 1.85702, 7.38185, 9.36656, -9.36656, 1.74966, 1.74789, 2.29541, -3.93962, -1.96239, 19.0901, -0.988987, -7.40418, -9.72349, 2.4462, 0.463257, -4.50655, -0.226431, -2.21115, 2.21115}, {1.60567, 6.66134e-16, 2.66454e-15, 5.36656, 5.36656, -5.36656, 0.373353, 0.374783, -3.64588, -0.190167, 1.41407, 1.85702, -6.19624, 2.21115, -2.21115, 0.256242, 0.248757, 16.8789, -2.4462, -0.463257, 4.50655, -1.74966, -1.74789, -2.29541, 3.20687, -5.19303, -11.9346, -0.226431, -2.21115, 2.21115}, {1.60567, 0, 0, -1.78885, -1.78885, 1.78885, -1.12006, -1.12435, 10.9376, -0.190167, 1.41407, 1.85702, 0.226431, 2.21115, -2.21115, 8.90507, 8.90331, -4.86001, -8.86888, -0.463257, 4.50655, -1.74966, -1.74789, -2.29541, 2.4462, 0.463257, -4.50655, 0.534237, -7.86743, -5.21694}, {1.60567, 2.22045e-16, 1.11022e-15, -1.78885, -1.78885, 1.78885, 0.373353, 0.374783, -3.64588, 0.570501, -4.24221, -5.57107, 0.226431, 2.21115, -2.21115, 1.74966, 1.74789, 2.29541, -2.4462, -0.463257, 4.50655, -8.17233, -1.74789, -2.29541, 9.60162, 7.61867, -11.662, -1.71984, -3.71028, 16.7947}, {-5.36225, -5.36694, -5.37021, 0, -1.60567, 0, -0.373167, -0.373493, -3.64724, -1.41425, 0.190182, 1.85717, -2.20937, 6.19609, -2.21265, 0.46126, 2.44638, 4.50824, -0.25544, -0.255663, 16.8846, 5.19574, -3.20711, -11.9369, 1.74811, 1.74964, -2.29559, 2.20937, 0.226585, 2.21265}, {1.78742, 1.78898, 1.79007, 0, 4.817, 0, -0.373167, -0.373493, -3.64724, -1.41425, 0.190182, 1.85717, -9.35904, -7.3825, -9.37293, 1.95393, 3.94035, 19.0972, -1.74811, -1.74964, 2.29559, -0.46126, -2.44638, -4.50824, 7.40511, 0.988907, -9.72428, 2.20937, 0.226585, 2.21265}, {1.78742, 1.78898, 1.79007, 0, -1.60567, 0, 1.1195, 1.12048, 10.9417, -1.41425, 0.190182, 1.85717, -2.20937, -0.226585, -2.21265, 0.46126, 8.86905, 4.50824, -8.89778, -8.90555, -4.86469, -0.46126, -2.44638, -4.50824, 1.74811, 1.74964, -2.29559, 7.86637, -0.534145, -5.21604}, {1.78742, 1.78898, 1.79007, 0, -1.60567, 0, -0.373167, -0.373493, -3.64724, 4.24275, -0.570547, -5.57152, -2.20937, -0.226585, -2.21265, 0.46126, 2.44638, 4.50824, -1.74811, -1.74964, 2.29559, -7.61093, -9.60229, -11.6685, 1.74811, 8.17231, -2.29559, 3.70204, 1.72056, 16.8016}, {-0.829936, -0.831314, 3.98569, 1.1323, 1.13131, 1.13131, 0.168871, -1.43624, 0.169424, -1.57782, 0.027827, 0.027827, -6.27076, -6.26615, -4.28143, -1.60834, 0.376916, -1.6078, -1.22617, 7.17775, 0.755077, 7.9196, -0.488224, 1.49649, 0.550688, -1.43277, -1.43277, 1.74155, 1.7409, -0.243816}, {0.276645, 0.277105, -1.32856, -3.3969, -3.39394, -3.39394, 0.168871, -1.43624, 0.169424, -1.57782, 0.027827, 0.027827, -2.84813, -2.84932, 5.55807, -2.28382, 6.12189, -2.2855, -0.550688, 1.43277, 1.43277, 1.60834, -0.376916, 1.6078, 6.86195, -1.54408, -1.54408, 1.74155, 1.7409, -0.243816}, {0.276645, 0.277105, -1.32856, 1.1323, 1.13131, 1.13131, -0.506612, 4.30873, -0.508273, -1.57782, 0.027827, 0.027827, -1.74155, -1.7409, 0.243816, -6.13754, -4.14833, -6.13305, -1.65727, 0.324356, 6.74703, 1.60834, -0.376916, 1.6078, 0.550688, -1.43277, -1.43277, 8.05282, 1.62959, -0.355124}, {0.276645, 0.277105, -1.32856, 1.1323, 1.13131, 1.13131, 0.168871, -1.43624, 0.169424, 4.73345, -0.0834809, -0.0834809, -1.74155, -1.7409, 0.243816, -1.60834, 0.376916, -1.6078, -0.550688, 1.43277, 1.43277, 0.501756, -1.48534, 6.92205, -3.97852, -5.95802, -5.95802, 1.06607, 7.48587, -0.921513}, {-8.33162, 1.1204, 10.941, -1.41498, -1.41539, 1.85814, -3.15057, 0, 0, 1.78834, 1.78885, 1.78885, 3.97613, 7.87269, -5.2214, 5.64333, 1.74951, -2.29678, 13.0638, 0.461631, 4.50793, -12.7967, -8.90493, -4.85864, -0.461499, -0.461631, -4.50793, 1.6838, -2.21115, -2.21115}, {2.77721, -0.373467, -3.64699, 4.24495, 4.24616, -5.57441, -3.15057, 0, 0, 1.78834, 1.78885, 1.78885, -12.7926, 3.70501, 16.7991, 18.2456, 1.74951, -2.29678, 0.461499, 0.461631, 4.50793, -5.64333, -1.74951, 2.29678, -7.61487, -7.61705, -11.6633, 1.6838, -2.21115, -2.21115}, {2.77721, -0.373467, -3.64699, -1.41498, -1.41539, 1.85814, 9.4517, 0, 0, 1.78834, 1.78885, 1.78885, -1.6838, 2.21115, 2.21115, 11.3033, 7.41106, -9.72932, -10.6473, 1.9555, 19.0959, -5.64333, -1.74951, 2.29678, -0.461499, -0.461631, -4.50793, -5.46957, -9.36656, -9.36656}, {2.77721, -0.373467, -3.64699, -1.41498, -1.41539, 1.85814, -3.15057, 0, 0, -5.36503, -5.36656, -5.36656, -1.6838, 2.21115, 2.21115, 5.64333, 1.74951, -2.29678, 0.461499, 0.461631, 4.50793, -16.7522, -0.255645, 16.8847, 5.19843, 5.19992, -11.9405, 14.2861, -2.21115, -2.21115}, {-3.98391, -5.22497, -0.407969, -1.83214e-15, -1.4677e-15, 1.60567, 0.61239, -1.54296, -1.54296, -1.94036, -0.198701, -0.198701, -1.64146, -2.15281, -8.57548, -0.756955, 1.9072, -0.0775154, -4.84797, 5.92622, 7.91093, 8.51839, -1.1124, 0.87232, 2.39842, 0.245608, -1.73911, 1.64146, 2.15281, 2.15281}, {1.32797, 1.74166, 0.13599, 3.05267e-15, -1.60751e-15, -4.817, 0.61239, -1.54296, -1.54296, -1.94036, -0.198701, -0.198701, -6.95334, -9.11944, -2.69677, -3.20651, 8.07903, 6.09431, -2.39842, -0.245608, 1.73911, 0.756955, -1.9072, 0.0775154, 10.1599, 1.04041, -0.944303, 1.64146, 2.15281, 2.15281}, {1.32797, 1.74166, 0.13599, 0, 0, 1.60567, -1.83717, 4.62887, 4.62887, -1.94036, -0.198701, -0.198701, -1.64146, -2.15281, -2.15281, -0.756955, 1.9072, -6.50019, -7.71029, -7.21224, 1.19515, 0.756955, -1.9072, 0.0775154, 2.39842, 0.245608, -1.73911, 9.4029, 2.94761, 2.94761}, {1.32797, 1.74166, 0.13599, 7.73451e-16, 7.92047e-17, 1.60567, 0.61239, -1.54296, -1.54296, 5.82108, 0.596103, 0.596103, -1.64146, -2.15281, -2.15281, -0.756955, 1.9072, -0.0775154, -2.39842, -0.245608, 1.73911, -4.55492, -8.87383, -0.466443, 2.39842, 0.245608, -8.16178, -0.808098, 8.32463, 8.32463}, {-1.77636e-15, 4.817, 8.88178e-16, -0.373167, -0.373493, 3.64724, -1.41425, 0.190182, -1.85717, 1.78742, 1.78898, -1.79007, 1.95393, 3.94035, -19.0972, 2.20937, 0.226585, -2.21265, 7.40511, 0.988907, 9.72428, -9.35904, -7.3825, 9.37293, -1.74811, -1.74964, -2.29559, -0.46126, -2.44638, 4.50824}, {0, -1.60567, 0, 1.1195, 1.12048, -10.9417, -1.41425, 0.190182, -1.85717, 1.78742, 1.78898, -1.79007, 0.46126, 8.86905, -4.50824, 7.86637, -0.534145, 5.21604, 1.74811, 1.74964, 2.29559, -2.20937, -0.226585, 2.21265, -8.89778, -8.90555, 4.86469, -0.46126, -2.44638, 4.50824}, {2.22045e-16, -1.60567, 6.66134e-16, -0.373167, -0.373493, 3.64724, 4.24275, -0.570547, 5.57152, 1.78742, 1.78898, -1.79007, 0.46126, 2.44638, -4.50824, 3.70204, 1.72056, -16.8016, 1.74811, 8.17231, 2.29559, -2.20937, -0.226585, 2.21265, -1.74811, -1.74964, -2.29559, -7.61093, -9.60229, 11.6685}, {-2.22045e-16, -1.60567, 6.66134e-16, -0.373167, -0.373493, 3.64724, -1.41425, 0.190182, -1.85717, -5.36225, -5.36694, 5.37021, 0.46126, 2.44638, -4.50824, 2.20937, 0.226585, -2.21265, 1.74811, 1.74964, 2.29559, -2.20937, 6.19609, 2.21265, -0.25544, -0.255663, -16.8846, 5.19574, -3.20711, 11.9369}, {5.57441, 0.570843, -4.24616, 1.45374e-15, 1.60567, 1.48869e-16, -1.78885, -1.78885, -1.78885, 3.64699, 0.373467, 0.373467, 2.29678, -8.17219, -1.74951, 2.21115, 0.226431, 2.21115, 11.6633, 9.60176, 7.61705, -16.7991, -1.7203, -3.70501, -4.50793, -2.44635, -0.461631, -2.29678, 1.74951, 1.74951}, {-1.85814, -0.190281, 1.41539, -6.50039e-15, -4.817, -2.58579e-15, -1.78885, -1.78885, -1.78885, 3.64699, 0.373467, 0.373467, 9.72932, -0.988391, -7.41106, 9.36656, 7.38185, 9.36656, 4.50793, 2.44635, 0.461631, -2.21115, -0.226431, -2.21115, -19.0959, -3.94022, -1.9555, -2.29678, 1.74951, 1.74951}, {-1.85814, -0.190281, 1.41539, 0, 1.60567, 0, 5.36656, 5.36656, 5.36656, 3.64699, 0.373467, 0.373467, 2.29678, -1.74951, -1.74951, 2.21115, -6.19624, 2.21115, 11.9405, 3.20747, -5.19992, -2.21115, -0.226431, -2.21115, -4.50793, -2.44635, -0.461631, -16.8847, 0.255645, 0.255645}, {-1.85814, -0.190281, 1.41539, 1.45374e-15, 1.60567, 1.48869e-16, -1.78885, -1.78885, -1.78885, -10.941, -1.1204, -1.1204, 2.29678, -1.74951, -1.74951, 2.21115, 0.226431, 2.21115, 4.50793, 2.44635, 0.461631, 5.2214, 0.534693, -7.87269, -4.50793, -8.86902, -0.461631, 4.85864, 8.90493, 8.90493}, {0.596103, -0.596103, -5.82108, 1.74166, -0.13599, -1.32797, -1.54296, 1.54296, -0.61239, 0, -1.60567, 0, -8.87383, 0.466443, 4.55492, -0.245608, -1.73911, 2.39842, 8.32463, -8.32463, 0.808098, 0.245608, 8.16178, -2.39842, -2.15281, 2.15281, 1.64146, 1.9072, 0.0775154, 0.756955}, {-0.198701, 0.198701, 1.94036, -5.22497, 0.407969, 3.98391, -1.54296, 1.54296, -0.61239, 0, -1.60567, 0, -1.1124, -0.87232, -8.51839, 5.92622, -7.91093, 4.84797, 2.15281, -2.15281, -1.64146, 0.245608, 1.73911, -2.39842, -2.15281, 8.57548, 1.64146, 1.9072, 0.0775154, 0.756955}, {-0.198701, 0.198701, 1.94036, 1.74166, -0.13599, -1.32797, 4.62887, -4.62887, 1.83717, 0, -1.60567, 0, -1.9072, -0.0775154, -0.756955, -7.21224, -1.19515, 7.71029, 2.94761, -2.94761, -9.4029, 0.245608, 1.73911, -2.39842, -2.15281, 2.15281, 1.64146, 1.9072, 6.50019, 0.756955}, {-0.198701, 0.198701, 1.94036, 1.74166, -0.13599, -1.32797, -1.54296, 1.54296, -0.61239, 0, 4.817, 0, -1.9072, -0.0775154, -0.756955, -0.245608, -1.73911, 2.39842, 2.15281, -2.15281, -1.64146, 1.04041, 0.944303, -10.1599, -9.11944, 2.69677, 6.95334, 8.07903, -6.09431, 3.20651}, {0, 9.45441, 0, 1.36222, 1.36261, 1.78885, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -7.1327, -3.23931, -9.36656, 2.21051, -1.68428, -2.21115, 16.4966, 3.89543, 0, -9.36389, -5.47113, 9.36656, -3.89432, -3.89543, 0, 1.6838, -2.21115, 2.21115}, {-2.22045e-16, -3.15147, 0, -4.08667, -4.08784, -5.36656, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 14.817, -2.21115, 14.8128, -1.68428, -2.21115, 3.89432, 3.89543, 0, -2.21051, 1.68428, 2.21115, -11.0477, -11.0508, 7.15542, 1.6838, -2.21115, 2.21115}, {2.22045e-16, -3.15147, 0, 1.36222, 1.36261, 1.78885, 9.4517, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 2.21115, -2.21115, -3.23838, -7.13474, -9.36656, 3.89432, 16.5013, 0, -2.21051, 1.68428, 2.21115, -3.89432, -3.89543, 0, -5.46957, -9.36656, 9.36656}, {-2.22045e-16, -3.15147, 0, 1.36222, 1.36261, 1.78885, -3.15057, 0, 0, -5.36503, -5.36656, 5.36656, -1.6838, 2.21115, -2.21115, 2.21051, -1.68428, -2.21115, 3.89432, 3.89543, 0, -2.21051, 14.2902, 2.21115, -9.34321, -9.34589, -7.15542, 14.2861, -2.21115, 2.21115}, {-2.95778e-16, 8.88178e-16, 5.41667, 1.44665, -1.44665, -0.51339, -1.44665, -0.572575, 0.978606, 1.97314e-12, 2.01922, 1.34034, -7.57474, 7.57474, 4.91993, 2.43894e-12, 2.4959, -0.575039, 7.57474, 2.99804, -2.89226, -1.03315e-11, -10.5728, -4.78632, -1.78815, -0.707741, -1.02217, 1.78815, -1.78815, -2.86637}, {1.99359e-16, 4.44089e-16, -1.80556, -4.33994, 4.33994, 1.54017, -1.44665, -0.572575, 0.978606, 1.97222e-12, 2.01922, 1.34034, -1.78815, 1.78815, 10.0886, 5.78659, 4.7862, -4.48946, 1.78815, 0.707741, 1.02217, -2.43805e-12, -2.4959, 0.575039, -1.78815, -8.78463, -6.38352, 1.78815, -1.78815, -2.86637}, {8.21831e-17, -4.44089e-16, -1.80556, 1.44665, -1.44665, -0.51339, 4.33994, 1.71772, -2.93582, 1.97167e-12, 2.01922, 1.34034, -1.78815, 1.78815, 2.86637, -5.78659, 8.28248, 1.47852, 1.78815, 0.707741, 8.24439, -2.43716e-12, -2.4959, 0.575039, -1.78815, -0.707741, -1.02217, 1.78815, -9.86504, -8.22773}, {-1.03785e-17, 0, -1.80556, 1.44665, -1.44665, -0.51339, -1.44665, -0.572575, 0.978606, -5.91996e-12, -6.05767, -4.02102, -1.78815, 1.78815, 2.86637, 2.43916e-12, 2.4959, -0.575039, 1.78815, 0.707741, 1.02217, -2.43978e-12, -2.4959, 7.79726, -7.57474, 5.07885, 1.03139, 7.57474, 0.502145, -6.7808}, {-1.83228, -4.62937, -4.62777, -1.94057, 0.198723, 0.200419, 1.32981, -1.74185, -0.13734, 0, 0, -1.60567, 9.40601, -2.94793, -2.95615, 0.754941, 1.90741, -0.0779689, -7.71791, 7.21302, -1.18762, -0.754941, -1.90741, 6.50064, 2.39867, -0.245635, 1.73698, -1.64373, 2.15304, 2.15448}, {0.61076, 1.54312, 1.54259, 5.82171, -0.596168, -0.601256, 1.32981, -1.74185, -0.13734, 0, 0, -1.60567, -0.799305, -8.32553, -8.32484, -4.5643, 8.87479, 0.471392, -2.39867, 0.245635, -1.73698, -0.754941, -1.90741, 0.0779689, 2.39867, -0.245635, 8.15966, -1.64373, 2.15304, 2.15448}, {0.61076, 1.54312, 1.54259, -1.94057, 0.198723, 0.200419, -3.98943, 5.22554, 0.412021, 0, 0, -1.60567, 1.64373, -2.15304, -2.15448, 8.51722, 1.11252, -0.879643, -4.84171, -5.92686, -7.90734, -0.754941, -1.90741, 0.0779689, 2.39867, -0.245635, 1.73698, -1.64373, 2.15304, 8.57715}, {0.61076, 1.54312, 1.54259, -1.94057, 0.198723, 0.200419, 1.32981, -1.74185, -0.13734, 0, 0, 4.817, 1.64373, -2.15304, -2.15448, 0.754941, 1.90741, -0.0779689, -2.39867, 0.245635, -1.73698, -3.19798, -8.0799, -6.09239, 10.1609, -1.04052, 0.93531, -6.96297, 9.12042, 2.70384}, {-5.36656, 5.36656, -5.36656, 0, 0, -3.15147, -0.373467, 3.64699, 2.778, -1.41539, -1.85814, -1.41539, -2.21115, 2.21115, 14.2902, 0.461631, -4.50793, 0.461631, -0.255645, -16.8847, -16.7569, 5.19992, 11.9405, 5.19992, 1.74951, 2.29678, 5.64494, 2.21115, -2.21115, -1.68428}, {1.78885, -1.78885, 1.78885, 0, 0, 9.45441, -0.373467, 3.64699, 2.778, -1.41539, -1.85814, -1.41539, -9.36656, 9.36656, -5.47113, 1.9555, -19.0959, -10.6504, -1.74951, -2.29678, -5.64494, -0.461631, 4.50793, -0.461631, 7.41106, 9.72932, 11.3065, 2.21115, -2.21115, -1.68428}, {1.78885, -1.78885, 1.78885, 0, 0, -3.15147, 1.1204, -10.941, -8.334, -1.41539, -1.85814, -1.41539, -2.21115, 2.21115, 1.68428, 0.461631, -4.50793, 13.0675, -8.90493, 4.85864, -12.8004, -0.461631, 4.50793, -0.461631, 1.74951, 2.29678, 5.64494, 7.87269, 5.2214, 3.97726}, {1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -0.373467, 3.64699, 2.778, 4.24616, 5.57441, 4.24616, -2.21115, 2.21115, 1.68428, 0.461631, -4.50793, 0.461631, -1.74951, -2.29678, -5.64494, -7.61705, 11.6633, -7.61705, 1.74951, 2.29678, 18.2508, 3.70501, -16.7991, -12.7963}, {1.64026, -3.9353, -3.8467e-12, 0.194118, 0, -1.44665, -0.509273, -1.31177, -1.28236e-12, 0.861908, 0, 1.44665, -0.34059, -1.62143, 7.57474, 0.389553, 1.62143, 1.78815, 3.34241, 5.24706, 5.12945e-12, -3.83718, -1.62143, -7.57474, -1.30532, 0, 0, -0.435881, 1.62143, -1.78815}, {-0.546753, 1.31177, 1.28098e-12, -0.582353, 3.77031e-16, 4.33994, -0.509273, -1.31177, -1.28138e-12, 0.861908, 8.26902e-17, 1.44665, 2.62289, -6.86849, 1.78815, 2.42664, 6.86849, 1.78815, 1.30532, -3.78785e-16, 4.44089e-16, -0.389553, -1.62143, -1.78815, -4.75295, -2.77626e-16, -5.78659, -0.435881, 1.62143, -1.78815}, {-0.546753, 1.31177, 1.28164e-12, 0.194118, 0, -1.44665, 1.52782, 3.9353, 3.84623e-12, 0.861908, 0, 1.44665, 0.435881, -1.62143, 1.78815, -0.386918, 1.62143, 7.57474, 3.49233, -5.24706, -5.12657e-12, -0.389553, -1.62143, -1.78815, -1.30532, 0, -4.44089e-16, -3.88351, 1.62143, -7.57474}, {-0.546753, 1.31177, 1.28164e-12, 0.194118, 0, -1.44665, -0.509273, -1.31177, -1.28138e-12, -2.58572, 0, -4.33994, 0.435881, -1.62143, 1.78815, 0.389553, 1.62143, 1.78815, 1.30532, -3.2565e-16, -2.22045e-16, 1.79746, -6.86849, -1.78815, -2.08179, 0, 5.78659, 1.60121, 6.86849, -1.78815}, {0.831641, 5.95736e-16, -6.19774, -0.482067, 1.31177, -0.482067, -0.449021, -1.31177, -0.449021, 1.2083, 1.98579e-16, -1.13482, 2.86679, -6.86849, -0.0294728, 1.15089, 0, 1.15089, 2.69376, 6.86849, -0.202503, -5.98409, -7.94315e-16, 3.38841, -0.897675, -1.62143, 1.99859, -0.938522, 1.62143, 1.95774}, {-0.277214, -1.75113e-16, 2.06591, 1.4462, -3.9353, 1.4462, -0.449021, -1.31177, -0.449021, 1.2083, 3.97157e-16, -1.13482, 2.04738, -1.62143, -10.2214, 2.94697, 5.24706, 2.94697, 0.897675, 1.62143, -1.99859, -1.15089, -2.22045e-16, -1.15089, -5.73088, -1.62143, 6.53788, -0.938522, 1.62143, 1.95774}, {-0.277214, 7.58234e-17, 2.06591, -0.482067, 1.31177, -0.482067, 1.34706, 3.9353, 1.34706, 1.2083, -2.97868e-16, -1.13482, 0.938522, -1.62143, -1.95774, 3.07916, -5.24706, 3.07916, 2.00653, 1.62143, -10.2622, -1.15089, 4.44089e-16, -1.15089, -0.897675, -1.62143, 1.99859, -5.77173, 1.62143, 6.49704}, {-0.277214, 0, 2.06591, -0.482067, 1.31177, -0.482067, -0.449021, -1.31177, -0.449021, -3.6249, 0, 3.40447, 0.938522, -1.62143, -1.95774, 1.15089, 0, 1.15089, 0.897675, 1.62143, -1.99859, -0.0420334, 0, -9.41454, 1.03059, -6.86849, 3.92685, 0.857562, 6.86849, 3.75382}, {10.941, -1.1204, -8.334, 1.78885, -1.78885, 1.78885, 1.85814, 1.41539, -1.41539, 0, 0, -3.15147, -4.85864, 8.90493, -12.8004, -4.50793, 0.461631, -0.461631, -5.2214, -7.87269, 3.97726, 4.50793, -0.461631, 13.0675, -2.21115, 2.21115, 1.68428, -2.29678, -1.74951, 5.64494}, {-3.64699, 0.373467, 2.778, -5.36656, 5.36656, -5.36656, 1.85814, 1.41539, -1.41539, 0, 0, -3.15147, 16.8847, 0.255645, -16.7569, -11.9405, -5.19992, 5.19992, 2.21115, -2.21115, -1.68428, 4.50793, -0.461631, 0.461631, -2.21115, 2.21115, 14.2902, -2.29678, -1.74951, 5.64494}, {-3.64699, 0.373467, 2.778, 1.78885, -1.78885, 1.78885, -5.57441, -4.24616, 4.24616, 0, 0, -3.15147, 2.29678, 1.74951, -5.64494, -11.6633, 7.61705, -7.61705, 16.7991, -3.70501, -12.7963, 4.50793, -0.461631, 0.461631, -2.21115, 2.21115, 1.68428, -2.29678, -1.74951, 18.2508}, {-3.64699, 0.373467, 2.778, 1.78885, -1.78885, 1.78885, 1.85814, 1.41539, -1.41539, 0, 0, 9.45441, 2.29678, 1.74951, -5.64494, -4.50793, 0.461631, -0.461631, 2.21115, -2.21115, -1.68428, 19.0959, -1.9555, -10.6504, -9.36656, 9.36656, -5.47113, -9.72932, -7.41106, 11.3065}, {1.77636e-15, 0, 9.45441, 1.78885, 1.78885, 1.78885, 1.36261, -1.78885, 1.36261, -3.15147, 0, 0, -9.36656, -9.36656, -5.47113, -3.89543, 0, -3.89543, -7.13474, 9.36656, -3.23931, 16.5013, 0, 3.89543, 1.68428, -2.21115, -2.21115, 2.21115, 2.21115, -1.68428}, {0, 0, -3.15147, -5.36656, -5.36656, -5.36656, 1.36261, -1.78885, 1.36261, -3.15147, 0, 0, -2.21115, -2.21115, 14.2902, -9.34589, 7.15542, -9.34589, -1.68428, 2.21115, 2.21115, 3.89543, 0, 3.89543, 14.2902, -2.21115, -2.21115, 2.21115, 2.21115, -1.68428}, {4.44089e-16, 0, -3.15147, 1.78885, 1.78885, 1.78885, -4.08784, 5.36656, -4.08784, -3.15147, 0, 0, -2.21115, -2.21115, 1.68428, -11.0508, -7.15542, -11.0508, -1.68428, 2.21115, 14.817, 3.89543, 0, 3.89543, 1.68428, -2.21115, -2.21115, 14.817, 2.21115, -1.68428}, {-4.44089e-16, 0, -3.15147, 1.78885, 1.78885, 1.78885, 1.36261, -1.78885, 1.36261, 9.45441, 0, 0, -2.21115, -2.21115, 1.68428, -3.89543, 0, -3.89543, -1.68428, 2.21115, 2.21115, 3.89543, 0, 16.5013, -5.47113, -9.36656, -9.36656, -3.23931, 9.36656, -7.13474}, {5.22884, -3.98763, -5.22319, 0.200328, -1.9397, -2.54071, 8.97324e-16, 3.55112e-16, 2.34313, 1.54262, 0.610485, -1.54348, 1.10547, 8.51339, 11.1512, -0.24762, 2.3976, 0.244222, 2.1544, -1.643, -14.4208, -5.92285, -4.83954, 5.92971, -2.1544, 1.643, 5.04833, -1.90678, -0.754601, -0.988412}, {-1.74295, 1.32921, 1.74106, -0.600985, 5.81909, 7.62212, 0, 0, 2.34313, 1.54262, 0.610485, -1.54348, 8.87857, -4.56224, -5.97584, -0.24762, 2.3976, -9.12828, 2.1544, -1.643, -5.04833, 0.24762, -2.3976, -0.244222, -8.32487, -0.798945, 11.2223, -1.90678, -0.754601, -0.988412}, {-1.74295, 1.32921, 1.74106, 0.200328, -1.9397, -2.54071, 0, 0, -7.02938, 1.54262, 0.610485, -1.54348, 1.90678, 0.754601, 0.988412, -1.04893, 10.1564, 10.407, 9.12619, -6.95984, -12.0126, 0.24762, -2.3976, -0.244222, -2.1544, 1.643, 5.04833, -8.07725, -3.19654, 5.18552}, {-1.74295, 1.32921, 1.74106, 0.200328, -1.9397, -2.54071, 8.97324e-16, 3.55112e-16, 2.34313, -4.62785, -1.83146, 4.63045, 1.90678, 0.754601, 0.988412, -0.24762, 2.3976, 0.244222, 2.1544, -1.643, -5.04833, 7.21941, -7.71444, -7.20847, -2.95571, 9.40178, 15.2112, -1.90678, -0.754601, -10.3609}, {0.403167, 4.33994, -4.33994, 1.56712, -1.12319e-15, 3.41061e-16, -0.345916, 1.4404, 0.569981, -1.08682, 0.00624416, -2.01663, -8.03944, 1.78815, -1.78815, -1.50949, -1.78044, -0.704535, 1.97736, -5.75389, -4.77261, 5.85676, 1.75546, 8.77105, -0.59369, -0.00771821, 2.49269, 1.77095, -1.78815, 1.78815}, {-0.134389, -1.44665, 1.44665, -4.70136, 1.67385e-15, 3.01891e-15, -0.345916, 1.4404, 0.569981, -1.08682, 0.00624416, -2.01663, -1.2334, 7.57474, -7.57474, -0.125826, -7.54205, -2.98446, 0.59369, 0.00771821, -2.49269, 1.50949, 1.78044, 0.704535, 3.75357, -0.0326948, 10.5592, 1.77095, -1.78815, 1.78815}, {-0.134389, -1.44665, 1.44665, 1.56712, 0, 0, 1.03775, -4.32121, -1.70994, -1.08682, 0.00624416, -2.01663, -1.77095, 1.78815, -1.78815, -7.77798, -1.78044, -0.704535, 1.13125, 5.79431, -8.27928, 1.50949, 1.78044, 0.704535, -0.59369, -0.00771821, 2.49269, 6.11822, -1.81313, 9.85467}, {-0.134389, -1.44665, 1.44665, 1.56712, -2.42925e-18, 7.84555e-16, -0.345916, 1.4404, 0.569981, 3.26045, -0.0187325, 6.04988, -1.77095, 1.78815, -1.78815, -1.50949, -1.78044, -0.704535, 0.59369, 0.00771821, -2.49269, 2.04705, 7.56702, -5.08205, -6.86218, -0.00771821, 2.49269, 3.15462, -7.54977, -0.491769}, {-7.02938, 5.36656, -7.02938, -2.34313, 0, 0, 0, 0, -2.34313, 1.02097e-11, 1.78885, 1.02102e-11, 9.3725, 2.21115, -2.89626, 2.89626, 0, 2.89626, -2.89626, 2.21115, 9.3725, -2.89626, -7.15542, -2.89626, 2.89626, -2.21115, -1.26205e-11, -1.26199e-11, -2.21115, 2.89626}, {2.34313, -1.78885, 2.34313, 7.02938, 0, 0, 0, 0, -2.34313, 1.02086e-11, 1.78885, 1.02066e-11, -9.3725, 9.36656, -12.2688, 2.89626, 0, 12.2688, -2.89626, 2.21115, 1.26154e-11, -2.89626, 4.44089e-16, -2.89626, 2.89626, -9.36656, -5.34422e-11, -1.26186e-11, -2.21115, 2.89626}, {2.34313, -1.78885, 2.34313, -2.34313, 0, 0, 0, 0, 7.02938, 1.0206e-11, 1.78885, 1.02081e-11, 1.26148e-11, 2.21115, -2.89626, 12.2688, 0, 2.89626, -12.2688, 9.36656, -9.3725, -2.89626, 4.44089e-16, -2.89626, 2.89626, -2.21115, -1.26179e-11, -5.34395e-11, -9.36656, 2.89626}, {2.34313, -1.78885, 2.34313, -2.34313, 0, 0, 0, 0, -2.34313, -3.06361e-11, -5.36656, -3.06329e-11, 1.26222e-11, 2.21115, -2.89626, 2.89626, 0, 2.89626, -2.89626, 2.21115, 1.26209e-11, -12.2688, 7.15542, -12.2688, 12.2688, -2.21115, -1.26215e-11, -1.26228e-11, -2.21115, 12.2688}, {7.02938, 0, 8.88974e-16, 2.34566, -1.78885, -2.34313, -1.47457e-18, 1.04056e-15, 2.34313, -0.00253498, 1.78885, -1.02102e-11, -9.38578, 9.36656, 12.2688, -2.8994, 2.21115, -1.26206e-11, 2.89626, -4.88498e-15, -12.2688, 2.90954, -9.36656, 5.34614e-11, -2.89626, 8.88178e-16, 2.89626, 0.00313341, -2.21115, -2.89626}, {-2.34313, 0, 7.14229e-17, -7.03698, 5.36656, 7.02938, 0, 0, 2.34313, -0.00253498, 1.78885, -1.02097e-11, 9.36937, 2.21115, 2.89626, -2.8994, 2.21115, -9.3725, 2.89626, 0, -2.89626, 2.8994, -2.21115, 1.26197e-11, -2.88612, -7.15542, 2.89626, 0.00313341, -2.21115, -2.89626}, {-2.34313, 0, -3.09288e-16, 2.34566, -1.78885, -2.34313, 0, 0, -7.02938, -0.00253498, 1.78885, -1.02071e-11, -0.00313341, 2.21115, 2.89626, -12.282, 9.36656, 9.3725, 12.2688, 0, -2.89626, 2.8994, -2.21115, 1.2617e-11, -2.89626, 0, 2.89626, 0.0132733, -9.36656, -2.89626}, {-2.34313, -2.22045e-16, 6.36673e-16, 2.34566, -1.78885, -2.34313, -1.47457e-18, 1.04056e-15, 2.34313, 0.00760494, -5.36656, 3.06361e-11, -0.00313341, 2.21115, 2.89626, -2.8994, 2.21115, -1.26219e-11, 2.89626, -1.33227e-15, -2.89626, 12.2719, -2.21115, 1.26202e-11, -12.2789, 7.15542, 12.2688, 0.00313341, -2.21115, -12.2688}, {5.3029, -0.485897, 0.486322, 0.215713, 1.38996, 0.214498, 0.501223, -0.501223, -1.10401, 1.0507, -1.0507, 1.05162, 1.05543, -7.4781, -0.922752, -0.886182, -1.09853, 1.09949, -0.439523, 2.42424, 5.98103, -3.31661, 5.30132, -5.30596, -1.56537, -0.419345, -1.565, -1.91828, 1.91828, 0.0647586}, {-1.76763, 0.161966, -0.162107, -0.647139, -4.16987, -0.643495, 0.501223, -0.501223, -1.10401, 1.0507, -1.0507, 1.05162, 8.98882, -2.56614, 0.583671, -2.89107, 0.90636, 5.51552, 1.56537, 0.419345, 1.565, 0.886182, 1.09853, -1.09949, -5.76816, 3.78345, -5.77147, -1.91828, 1.91828, 0.0647586}, {-1.76763, 0.161966, -0.162107, 0.215713, 1.38996, 0.214498, -1.50367, 1.50367, 3.31202, 1.0507, -1.0507, 1.05162, 1.91828, -1.91828, -0.0647586, -1.74903, -6.65835, 0.2415, 8.63591, -0.228518, 2.21343, 0.886182, 1.09853, -1.09949, -1.56537, -0.419345, -1.565, -6.12107, 6.12107, -4.14171}, {-1.76763, 0.161966, -0.162107, 0.215713, 1.38996, 0.214498, 0.501223, -0.501223, -1.10401, -3.15209, 3.15209, -3.15485, 1.91828, -1.91828, -0.0647586, -0.886182, -1.09853, 1.09949, 1.56537, 0.419345, 1.565, 7.95672, 0.45067, -0.451064, -2.42822, -5.97917, -2.423, -3.92317, 3.92317, 4.48079}, {1.71308, 4.3282, 0.488804, 0.642112, 1.62234, -1.62234, 2.1437, 0.314496, -0.314496, -2.21478, -0.4941, 2.09977, -2.65632, -6.71135, 8.69607, -3.44345, -2.39406, 2.39406, -10.5187, 0.136594, 1.84812, 12.3026, 4.37046, -10.7931, 1.94393, -1.39458, -0.590137, 0.0878675, 0.222003, -2.20672}, {-0.571026, -1.44273, -0.162935, -1.92634, -4.86701, 4.86701, 2.1437, 0.314496, -0.314496, -2.21478, -0.4941, 2.09977, 2.19624, 5.54893, 2.85846, -12.0182, -3.65204, 3.65204, -1.94393, 1.39458, 0.590137, 3.44345, 2.39406, -2.39406, 10.8031, 0.581823, -8.98921, 0.0878675, 0.222003, -2.20672}, {-0.571026, -1.44273, -0.162935, 0.642112, 1.62234, -1.62234, -6.43109, -0.943488, 0.943488, -2.21478, -0.4941, 2.09977, -0.0878675, -0.222003, 2.20672, -6.0119, -8.88341, 8.88341, 0.340174, 7.16551, 1.24188, 3.44345, 2.39406, -2.39406, 1.94393, -1.39458, -0.590137, 8.947, 2.1984, -10.6058}, {-0.571026, -1.44273, -0.162935, 0.642112, 1.62234, -1.62234, 2.1437, 0.314496, -0.314496, 6.64435, 1.4823, -6.2993, -0.0878675, -0.222003, 2.20672, -3.44345, -2.39406, 2.39406, -1.94393, 1.39458, 0.590137, 5.72755, 8.16499, -1.74232, -0.624519, -7.88393, 5.89921, -8.48692, -1.03598, -0.948734}, {-4.62937, 4.62937, 1.83228, 0.198723, -0.198723, 1.94057, -1.74185, 0.136178, -1.32981, 0, 1.60567, 0, -2.94793, 2.94793, -9.40601, 1.90741, 0.0773091, -0.754941, 7.21302, 1.19437, 7.71791, -1.90741, -6.49998, 0.754941, -0.245635, -1.73908, -2.39867, 2.15304, -2.15304, 1.64373}, {1.54312, -1.54312, -0.61076, -0.596168, 0.596168, -5.82171, -1.74185, 0.136178, -1.32981, 6.94322e-16, 1.60567, 5.30079e-16, -8.32553, 8.32553, 0.799305, 8.87479, -0.467403, 4.5643, 0.245635, 1.73908, 2.39867, -1.90741, -0.0773091, 0.754941, -0.245635, -8.16175, -2.39867, 2.15304, -2.15304, 1.64373}, {1.54312, -1.54312, -0.61076, 0.198723, -0.198723, 1.94057, 5.22554, -0.408534, 3.98943, 0, 1.60567, 0, -2.15304, 2.15304, -1.64373, 1.11252, 0.872199, -8.51722, -5.92686, 7.91157, 4.84171, -1.90741, -0.0773091, 0.754941, -0.245635, -1.73908, -2.39867, 2.15304, -8.57571, 1.64373}, {1.54312, -1.54312, -0.61076, 0.198723, -0.198723, 1.94057, -1.74185, 0.136178, -1.32981, 0, -4.817, 0, -2.15304, 2.15304, -1.64373, 1.90741, 0.0773091, -0.754941, 0.245635, 1.73908, 2.39867, -8.0799, 6.09519, 3.19798, -1.04052, -0.94419, -10.1609, 9.12042, -2.69775, 6.96297}, {-1.38621, -1.33227e-15, 3.9353, 1.09414, 1.31177, 1.31177, 0.173581, -1.31177, 0, -1.72979, 0, 0, -6.30013, -6.86849, -5.24706, -1.56699, 4.44089e-16, -1.62143, -1.48003, 6.86849, 1.62143, 8.48614, -4.44089e-16, 1.62143, 0.785706, -1.62143, -1.62143, 1.92358, 1.62143, 0}, {0.462069, -5.96084e-17, -1.31177, -3.28242, -3.9353, -3.9353, 0.173581, -1.31177, 0, -1.72979, 2.81653e-16, 0, -3.77185, -1.62143, 5.24706, -2.26131, 5.24706, -1.62143, -0.785706, 1.62143, 1.62143, 1.56699, -2.22045e-16, 1.62143, 7.70486, -1.62143, -1.62143, 1.92358, 1.62143, 0}, {0.462069, -8.88178e-16, -1.31177, 1.09414, 1.31177, 1.31177, -0.520744, 3.9353, 0, -1.72979, 0, 0, -1.92358, -1.62143, 3.2565e-16, -5.94354, -5.24706, -6.86849, -2.63398, 1.62143, 6.86849, 1.56699, 1.11022e-15, 1.62143, 0.785706, -1.62143, -1.62143, 8.84273, 1.62143, 0}, {0.462069, 0, -1.31177, 1.09414, 1.31177, 1.31177, 0.173581, -1.31177, 0, 5.18937, 0, 0, -1.92358, -1.62143, 3.2565e-16, -1.56699, 0, -1.62143, -0.785706, 1.62143, 1.62143, -0.281287, 0, 6.86849, -3.59085, -6.86849, -6.86849, 1.22925, 6.86849, 0}, {-3.84404e-12, -3.9353, 2.80446, 1.44665, 0, 0.44688, -1.28111e-12, -1.31177, -0.870737, -1.44665, 0, 1.35868, -7.57474, -1.62143, -1.18439, -1.78815, 1.62143, 0.523916, 5.12412e-12, 5.24706, 5.71474, 7.57474, -1.62143, -5.95862, 2.22045e-16, 0, -2.23179, 1.78815, 1.62143, -0.603126}, {1.2812e-12, 1.31177, -0.934819, -4.33994, -8.15796e-16, -1.34064, -1.28111e-12, -1.31177, -0.870737, -1.44665, -1.24937e-16, 1.35868, -1.78815, -6.86849, 4.3424, -1.78815, 6.86849, 4.00686, 0, -1.43955e-16, 2.23179, 1.78815, -1.62143, -0.523916, 5.78659, 3.18053e-16, -7.66649, 1.78815, 1.62143, -0.603126}, {1.28053e-12, 1.31177, -0.934819, 1.44665, 0, 0.44688, 3.84227e-12, 3.9353, 2.61221, -1.44665, 0, 1.35868, -1.78815, -1.62143, 0.603126, -7.57474, 1.62143, -1.2636, -5.12124e-12, -5.24706, 5.97107, 1.78815, -1.62143, -0.523916, -4.44089e-16, 0, -2.23179, 7.57474, 1.62143, -6.03783}, {1.28098e-12, 1.31177, -0.934819, 1.44665, 0, 0.44688, -1.281e-12, -1.31177, -0.870737, 4.33994, 0, -4.07603, -1.78815, -1.62143, 0.603126, -1.78815, 1.62143, 0.523916, 0, -3.2565e-16, 2.23179, 1.78815, -6.86849, 3.21536, -5.78659, 0, -4.01931, 1.78815, 6.86849, 2.87982}, {5.36291, -5.36619, -5.37088, 3.64451, -0.373213, -0.376399, -1.85687, 0.190152, -1.41389, 0, -1.60567, 0, -16.8733, -0.256821, -0.242074, -2.20964, 0.226277, 2.21292, 11.9323, -3.20664, 5.19032, 2.20964, 6.1964, -2.21292, -4.50486, 2.44603, 0.465254, 2.29522, 1.74967, 1.74767}, {-1.78764, 1.78873, 1.79029, -10.9335, 1.11964, 1.1292, -1.85687, 0.190152, -1.41389, 0, -1.60567, 0, 4.85533, -8.90459, -8.90884, 5.21784, -0.53433, 7.8685, 4.50486, -2.44603, -0.465254, 2.20964, -0.226277, -2.21292, -4.50486, 8.8687, 0.465254, 2.29522, 1.74967, 1.74767}, {-1.78764, 1.78873, 1.79029, 3.64451, -0.373213, -0.376399, 5.57061, -0.570455, 4.24168, 0, -1.60567, 0, -2.29522, -1.74967, -1.74767, -16.7877, 1.71913, 3.71852, 11.6554, -9.60095, -7.62642, 2.20964, -0.226277, -2.21292, -4.50486, 2.44603, 0.465254, 2.29522, 8.17235, 1.74767}, {-1.78764, 1.78873, 1.79029, 3.64451, -0.373213, -0.376399, -1.85687, 0.190152, -1.41389, 0, 4.817, 0, -2.29522, -1.74967, -1.74767, -2.20964, 0.226277, 2.21292, 4.50486, -2.44603, -0.465254, 9.36019, -7.3812, -9.37409, -19.0829, 3.93889, 1.97085, 9.72271, 0.989068, 7.40324}, {-4.90664, -4.91093, -4.90664, 0.802238, -0.802728, -0.80343, -1.63555, -0.0313083, -1.63555, -0.802238, -0.80294, 0.80343, -6.22222, 2.17973, 2.18516, 1.03003, 1.03093, 3.01474, 6.54219, -1.85948, 6.54219, 2.17893, 2.18083, -6.22846, -3.78586e-14, 1.98471, 3.79696e-14, 3.01327, 1.03119, 1.02855}, {1.63555, 1.63698, 1.63555, -2.40672, 2.40819, 2.41029, -1.63555, -0.0313083, -1.63555, -0.802238, -0.80294, 0.80343, -9.55546, -7.57909, -7.57074, 7.57221, 1.15616, 9.55693, 3.71925e-14, -1.98471, -3.81917e-14, -1.03003, -1.03093, -3.01474, 3.20895, 5.19647, -3.21372, 3.01327, 1.03119, 1.02855}, {1.63555, 1.63698, 1.63555, 0.802238, -0.802728, -0.80343, 4.90664, 0.0939249, 4.90664, -0.802238, -0.80294, 0.80343, -3.01327, -1.03119, -1.02855, -2.17893, 4.24184, 6.22846, -6.54219, -8.53262, -6.54219, -1.03003, -1.03093, -3.01474, -3.78586e-14, 1.98471, 3.80806e-14, 6.22222, 4.24295, -2.18516}, {1.63555, 1.63698, 1.63555, 0.802238, -0.802728, -0.80343, -1.63555, -0.0313083, -1.63555, 2.40672, 2.40882, -2.41029, -3.01327, -1.03119, -1.02855, 1.03003, 1.03093, 3.01474, 3.73035e-14, -1.98471, -3.83027e-14, -7.57221, -7.57883, -9.55693, -3.20895, 5.19563, 3.21372, 9.55546, 1.15642, 7.57074}, {0.433524, 4.35281, -4.30748, -1.58383, 1.03002, -2.49725, 0.961132, -0.582294, -1.46836, 0.767201, 1.00321, 2.52978, 8.47164, -3.5998, 11.301, 0.769691, -0.553419, 4.90175, -4.85393, 4.84239, 5.91364, -3.83849, -3.45943, -15.0209, 1.0094, -2.51321, -0.0402101, -2.13634, -0.520284, -1.31199}, {-0.144508, -1.45094, 1.43583, 4.75148, -3.09006, 7.49174, 0.961132, -0.582294, -1.46836, 0.767201, 1.00321, 2.52978, 2.71437, 6.32404, -4.43132, -3.07484, 1.77576, 10.7752, -1.0094, 2.51321, 0.0402101, -0.769691, 0.553419, -4.90175, -2.0594, -6.52607, -10.1593, -2.13634, -0.520284, -1.31199}, {-0.144508, -1.45094, 1.43583, -1.58383, 1.03002, -2.49725, -2.8834, 1.74688, 4.40507, 0.767201, 1.00321, 2.52978, 2.13634, 0.520284, 1.31199, 7.10499, -4.6735, 14.8907, -0.431372, 8.31697, -5.70309, -0.769691, 0.553419, -4.90175, 1.0094, -2.51321, -0.0402101, -5.20514, -4.53314, -11.4311}, {-0.144508, -1.45094, 1.43583, -1.58383, 1.03002, -2.49725, 0.961132, -0.582294, -1.46836, -2.3016, -3.00964, -7.58933, 2.13634, 0.520284, 1.31199, 0.769691, -0.553419, 4.90175, -1.0094, 2.51321, 0.0402101, -0.191659, 6.35717, -10.6451, 7.3447, -6.63329, 9.94877, -5.98087, 1.80889, 4.56144}, {-5.22554, 3.98943, -3.78662, 0, 0, -1.80556, -0.198723, 1.94057, 0.386742, -1.54312, -0.61076, 0.156608, -2.15304, 1.64373, 7.89384, 0.245635, -2.39867, 1.75375, -1.11252, -8.51722, -3.58518, 5.92686, 4.84171, -2.38018, 1.90741, 0.754941, 2.03821, 2.15304, -1.64373, -0.671617}, {1.74185, -1.32981, 1.26221, 0, 0, 5.41667, -0.198723, 1.94057, 0.386742, -1.54312, -0.61076, 0.156608, -9.12042, 6.96297, -4.37721, 1.04052, -10.1609, 0.206785, -1.90741, -0.754941, -2.03821, -0.245635, 2.39867, -1.75375, 8.0799, 3.19798, 1.41178, 2.15304, -1.64373, -0.671617}, {1.74185, -1.32981, 1.26221, 0, 0, -1.80556, 0.596168, -5.82171, -1.16022, -1.54312, -0.61076, 0.156608, -2.15304, 1.64373, 0.671617, 0.245635, -2.39867, 8.97597, -8.87479, 4.5643, -7.08704, -0.245635, 2.39867, -1.75375, 1.90741, 0.754941, 2.03821, 8.32553, 0.799305, -1.29805}, {1.74185, -1.32981, 1.26221, 0, 0, -1.80556, -0.198723, 1.94057, 0.386742, 4.62937, 1.83228, -0.469823, -2.15304, 1.64373, 0.671617, 0.245635, -2.39867, 1.75375, -1.90741, -0.754941, -2.03821, -7.21302, 7.71791, -6.80258, 1.90741, 0.754941, 9.26043, 2.94793, -9.40601, -2.21858}, {2.47366, -6.0686, -0.0191747, -0.141226, -1.44665, 1.44665, 1.40644, 1.00594e-16, 2.53667e-16, -0.440661, -0.57622, -1.45304, 1.75867, 5.07434, -7.58264, -1.56389, 1.78815, -1.78815, -6.34501, -2.5004, -0.0079004, 3.32653, 0.516725, 7.60031, 0.719252, 2.5004, 0.0079004, -1.19377, 0.712247, 1.79605}, {-0.824552, 2.02287, 0.00639156, 0.423679, 4.33994, -4.33994, 1.40644, 3.01783e-16, 7.61e-16, -0.440661, -0.57622, -1.45304, 4.49197, -8.80371, -1.82162, -7.18964, 1.78815, -1.78815, -0.719252, -2.5004, -0.0079004, 1.56389, -1.78815, 1.78815, 2.48189, 4.80528, 5.82005, -1.19377, 0.712247, 1.79605}, {-0.824552, 2.02287, 0.00639156, -0.141226, -1.44665, 1.44665, -4.21932, 0, 0, -0.440661, -0.57622, -1.45304, 1.19377, -0.712247, -1.79605, -0.998983, 7.57474, -7.57474, 2.57896, -10.5919, -0.0334666, 1.56389, -1.78815, 1.78815, 0.719252, 2.5004, 0.0079004, 0.568875, 3.01713, 7.60821}, {-0.824552, 2.02287, 0.00639156, -0.141226, -1.44665, 1.44665, 1.40644, -3.01783e-16, -7.61e-16, 1.32198, 1.72866, 4.35912, 1.19377, -0.712247, -1.79605, -1.56389, 1.78815, -1.78815, -0.719252, -2.5004, -0.0079004, 4.8621, -9.87962, 1.76259, 1.28416, 8.28699, -5.77869, -6.81952, 0.712247, 1.79605}, {-5.82171, -0.596168, -7.61729, 0, 0, -2.34313, -0.61076, 1.54312, 1.54399, -1.32981, -1.74185, -1.73996, -2.39867, -0.245635, 9.13027, 0.754941, -1.90741, 0.987787, 0.799305, -8.32553, -11.2229, 4.5643, 8.87479, 5.97206, 1.64373, 2.15304, 5.04697, 2.39867, 0.245635, 0.242235}, {1.94057, 0.198723, 2.5391, 0, 0, 7.02938, -0.61076, 1.54312, 1.54399, -1.32981, -1.74185, -1.73996, -10.1609, -1.04052, -10.3986, 3.19798, -8.0799, -5.18817, -1.64373, -2.15304, -5.04697, -0.754941, 1.90741, -0.987787, 6.96297, 9.12042, 12.0068, 2.39867, 0.245635, 0.242235}, {1.94057, 0.198723, 2.5391, 0, 0, -2.34313, 1.83228, -4.62937, -4.63197, -1.32981, -1.74185, -1.73996, -2.39867, -0.245635, -0.242235, 0.754941, -1.90741, 10.3603, -9.40601, -2.94793, -15.2034, -0.754941, 1.90741, -0.987787, 1.64373, 2.15304, 5.04697, 7.71791, 7.21302, 7.20208}, {1.94057, 0.198723, 2.5391, 0, 0, -2.34313, -0.61076, 1.54312, 1.54399, 3.98943, 5.22554, 5.21989, -2.39867, -0.245635, -0.242235, 0.754941, -1.90741, 0.987787, -1.64373, -2.15304, -5.04697, -8.51722, 1.11252, -11.1442, 1.64373, 2.15304, 14.4195, 4.84171, -5.92686, -5.93372}, {7.02938, 8.88178e-16, -1.33227e-15, 1.54312, -1.54312, -0.61076, 2.54185, -0.198723, 1.94057, -1.74185, 1.74185, -1.32981, -5.18364, 8.0799, 3.19798, -5.0493, 2.15304, -1.64373, -10.413, 1.04052, -10.1609, 12.0167, -9.12042, 6.96297, 0.245635, -0.245635, 2.39867, -0.988857, -1.90741, -0.754941}, {-2.34313, 0, 0, -4.62937, 4.62937, 1.83228, 2.54185, -0.198723, 1.94057, -1.74185, 1.74185, -1.32981, 10.3614, 1.90741, 0.754941, -15.2167, 2.94793, -9.40601, -0.245635, 0.245635, -2.39867, 5.0493, -2.15304, 1.64373, 7.21302, -7.21302, 7.71791, -0.988857, -1.90741, -0.754941}, {-2.34313, 2.22045e-16, 0, 1.54312, -1.54312, -0.61076, -7.62554, 0.596168, -5.82171, -1.74185, 1.74185, -1.32981, 0.988857, 1.90741, 0.754941, -11.2218, 8.32553, 0.799305, 9.12687, 0.245635, -2.39867, 5.0493, -2.15304, 1.64373, 0.245635, -0.245635, 2.39867, 5.97853, -8.87479, 4.5643}, {-2.34313, 0, -2.22045e-16, 1.54312, -1.54312, -0.61076, 2.54185, -0.198723, 1.94057, 5.22554, -5.22554, 3.98943, 0.988857, 1.90741, 0.754941, -5.0493, 2.15304, -1.64373, -0.245635, 0.245635, -2.39867, 14.4218, -2.15304, 1.64373, -5.92686, 5.92686, 4.84171, -11.1562, -1.11252, -8.51722}, {9.45441, 8.88178e-16, 0, -1.41486, -1.85814, 1.41539, 2.77696, 3.64699, 0.373467, 1.78937, -1.78885, -1.78885, 11.3037, 9.72932, -7.41106, -1.68365, -2.21115, -2.21115, -10.6449, -19.0959, -1.9555, -5.47381, 9.36656, 9.36656, -0.46292, 4.50793, 0.461631, -5.64429, -2.29678, 1.74951}, {-3.15147, 8.88178e-16, 4.44089e-16, 4.24457, 5.57441, -4.24616, 2.77696, 3.64699, 0.373467, 1.78937, -1.78885, -1.78885, 18.2502, 2.29678, -1.74951, -12.7915, -16.7991, -3.70501, 0.46292, -4.50793, -0.461631, 1.68365, 2.21115, 2.21115, -7.62038, 11.6633, 7.61705, -5.64429, -2.29678, 1.74951}, {-3.15147, 4.44089e-16, 2.22045e-16, -1.41486, -1.85814, 1.41539, -8.33088, -10.941, -1.1204, 1.78937, -1.78885, -1.78885, 5.64429, 2.29678, -1.74951, 3.97577, 5.2214, -7.87269, 13.0688, -4.50793, -0.461631, 1.68365, 2.21115, 2.21115, -0.46292, 4.50793, 0.461631, -12.8018, 4.85864, 8.90493}, {-3.15147, -2.22045e-16, 0, -1.41486, -1.85814, 1.41539, 2.77696, 3.64699, 0.373467, -5.3681, 5.36656, 5.36656, 5.64429, 2.29678, -1.74951, -1.68365, -2.21115, -2.21115, 0.46292, -4.50793, -0.461631, 14.2895, 2.21115, 2.21115, 5.1965, 11.9405, -5.19992, -16.7521, -16.8847, 0.255645}, {-1.04981, -4.33994, -1.71772, -1.16436, 0, 0, 0.183612, -1.44665, 1.44665, 0.630806, -1.58777e-12, -2.01922, 5.6641, -1.78815, -0.707741, 1.21227, 1.78815, -1.78815, -1.39395, 5.78659, -8.28248, -3.73549, -1.78815, 9.86504, 0.659504, 1.96259e-12, 2.4959, -1.00668, 1.78815, 0.707741}, {0.349938, 1.44665, 0.572575, 3.49307, 0, 0, 0.183612, -1.44665, 1.44665, 0.630806, -1.5874e-12, -2.01922, -0.393077, -7.57474, -2.99804, 0.47782, 7.57474, -7.57474, -0.659504, -1.9625e-12, -2.4959, -1.21227, -1.78815, 1.78815, -1.86372, 8.31176e-12, 10.5728, -1.00668, 1.78815, 0.707741}, {0.349938, 1.44665, 0.572575, -1.16436, 0, 0, -0.550835, 4.33994, -4.33994, 0.630806, -1.58632e-12, -2.01922, 1.00668, -1.78815, -0.707741, 5.86969, 1.78815, -1.78815, -2.05926, -5.78659, -4.7862, -1.21227, -1.78815, 1.78815, 0.659504, 1.9608e-12, 2.4959, -3.5299, 1.78815, 8.78463}, {0.349938, 1.44665, 0.572575, -1.16436, 0, 0, 0.183612, -1.44665, 1.44665, -1.89242, 4.76004e-12, 6.05767, 1.00668, -1.78815, -0.707741, 1.21227, 1.78815, -1.78815, -0.659504, -1.9616e-12, -2.4959, -2.61202, -7.57474, -0.502145, 5.31693, 1.96124e-12, 2.4959, -1.74112, 7.57474, -5.07885}, {-5.36656, 5.36656, -5.36656, 1.85814, -0.190281, -1.41539, 0, 1.60567, 0, -3.64699, 0.373467, -0.373467, -11.9405, 3.20747, 5.19992, -2.29678, -1.74951, 1.74951, -2.21115, -6.19624, -2.21115, 16.8847, 0.255645, -0.255645, 2.21115, -0.226431, 2.21115, 4.50793, -2.44635, 0.461631}, {1.78885, -1.78885, 1.78885, -5.57441, 0.570843, 4.24616, 1.45374e-15, 1.60567, 1.48869e-16, -3.64699, 0.373467, -0.373467, -11.6633, 9.60176, -7.61705, -2.29678, -8.17219, 1.74951, -2.21115, 0.226431, -2.21115, 2.29678, 1.74951, -1.74951, 16.7991, -1.7203, 3.70501, 4.50793, -2.44635, 0.461631}, {1.78885, -1.78885, 1.78885, 1.85814, -0.190281, -1.41539, 0, -4.817, 0, -3.64699, 0.373467, -0.373467, -4.50793, 2.44635, -0.461631, -9.72932, -0.988391, 7.41106, -9.36656, 7.38185, -9.36656, 2.29678, 1.74951, -1.74951, 2.21115, -0.226431, 2.21115, 19.0959, -3.94022, 1.9555}, {1.78885, -1.78885, 1.78885, 1.85814, -0.190281, -1.41539, 0, 1.60567, 0, 10.941, -1.1204, 1.1204, -4.50793, 2.44635, -0.461631, -2.29678, -1.74951, 1.74951, -2.21115, 0.226431, -2.21115, -4.85864, 8.90493, -8.90493, -5.2214, 0.534693, 7.87269, 4.50793, -8.86902, 0.461631}, {-2.3518, -6.05767, 5.91882e-12, 0.531029, -0.572575, 1.44665, -0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -3.7495, 0.502145, -7.57474, -0.336326, 2.4959, -2.43872e-12, 0.386809, 5.07885, 7.57474, 4.56043, -2.4959, 2.43872e-12, 0.648932, 0.707741, -1.78815, 1.62538, 1.78815, 1.78815}, {0.783932, 2.01922, -1.97264e-12, -1.59309, 1.71772, -4.33994, -0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -4.76111, -9.86504, -1.78815, 0.699414, 8.28248, 5.78659, -0.648932, -0.707741, 1.78815, 0.336326, -2.4959, 2.43827e-12, 4.87303, 0.707741, -1.78815, 1.62538, 1.78815, 1.78815}, {0.783932, 2.01922, -1.9722e-12, 0.531029, -0.572575, 1.44665, 0.776805, 4.33994, 4.33994, -1.05603, 0, 0, -1.62538, -1.78815, -1.78815, -2.46044, 4.7862, -5.78659, -3.78466, -8.78463, 1.78815, 0.336326, -2.4959, 2.43783e-12, 0.648932, 0.707741, -1.78815, 5.84948, 1.78815, 1.78815}, {0.783932, 2.01922, -1.97331e-12, 0.531029, -0.572575, 1.44665, -0.258935, -1.44665, -1.44665, 3.16808, 0, 0, -1.62538, -1.78815, -1.78815, -0.336326, 2.4959, -2.43894e-12, -0.648932, -0.707741, 1.78815, -2.7994, -10.5728, 1.03313e-11, -1.47518, 2.99804, -7.57474, 2.66112, 7.57474, 7.57474}, {-5.36656, -5.36656, -5.36656, 2.778, -3.64699, -0.373467, -1.41539, 1.85814, -1.41539, -3.15147, 0, 0, -16.7569, 16.8847, -0.255645, -1.68428, 2.21115, 2.21115, 5.19992, -11.9405, 5.19992, 14.2902, -2.21115, -2.21115, 0.461631, 4.50793, 0.461631, 5.64494, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, -8.334, 10.941, 1.1204, -1.41539, 1.85814, -1.41539, -3.15147, 0, 0, -12.8004, -4.85864, -8.90493, 3.97726, -5.2214, 7.87269, -0.461631, -4.50793, -0.461631, 1.68428, -2.21115, -2.21115, 13.0675, 4.50793, 0.461631, 5.64494, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 2.778, -3.64699, -0.373467, 4.24616, -5.57441, 4.24616, -3.15147, 0, 0, -5.64494, 2.29678, -1.74951, -12.7963, 16.7991, 3.70501, -7.61705, -11.6633, -7.61705, 1.68428, -2.21115, -2.21115, 0.461631, 4.50793, 0.461631, 18.2508, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 2.778, -3.64699, -0.373467, -1.41539, 1.85814, -1.41539, 9.45441, 0, 0, -5.64494, 2.29678, -1.74951, -1.68428, 2.21115, 2.21115, -0.461631, -4.50793, -0.461631, -5.47113, -9.36656, -9.36656, -10.6504, 19.0959, 1.9555, 11.3065, -9.72932, 7.41106}, {0.408534, -3.98943, 5.22554, 1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 0.198723, -1.60567, 0, 0, -7.91157, -4.84171, -5.92686, -2.15304, 1.64373, -2.15304, -0.872199, 8.51722, 1.11252, 8.57571, -1.64373, 2.15304, 0.0773091, -0.754941, -1.90741, 1.73908, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, -4.62937, -1.83228, -4.62937, 0.198723, -1.94057, 0.198723, -1.60567, 0, 0, -1.19437, -7.71791, 7.21302, -2.94793, 9.40601, -2.94793, -0.0773091, 0.754941, 1.90741, 2.15304, -1.64373, 2.15304, 6.49998, -0.754941, -1.90741, 1.73908, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, 1.54312, 0.61076, 1.54312, -0.596168, 5.82171, -0.596168, -1.60567, 0, 0, -1.73908, -2.39867, 0.245635, -8.32553, -0.799305, -8.32553, 0.467403, -4.5643, 8.87479, 2.15304, -1.64373, 2.15304, 0.0773091, -0.754941, -1.90741, 8.16175, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, 1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 0.198723, 4.817, 0, 0, -1.73908, -2.39867, 0.245635, -2.15304, 1.64373, -2.15304, -0.0773091, 0.754941, 1.90741, 2.69775, -6.96297, 9.12042, -6.09519, -3.19798, -8.0799, 0.94419, 10.1609, -1.04052}, {-1.29949, 3.9353, 2.21079, 1.70046, 1.31177, -0.409533, -0.573592, 0, 1.62837, -1.56004, 0, -0.481907, -9.43917, -5.24706, 3.05524, -1.39289, -1.62143, -1.50656, 2.46795, 1.62143, -7.61536, 7.63304, 1.62143, 3.43419, -0.173579, -1.62143, 1.10188, 2.63731, 0, -1.4171}, {0.433164, -1.31177, -0.736929, -5.10139, -3.9353, 1.2286, -0.573592, 0, 1.62837, -1.56004, 0, -0.481907, -4.36997, 5.24706, 4.36482, 0.901477, -1.62143, -8.02004, 0.173579, 1.62143, -1.10188, 1.39289, 1.62143, 1.50656, 6.06657, -1.62143, 3.02951, 2.63731, 0, -1.4171}, {0.433164, -1.31177, -0.736929, 1.70046, 1.31177, -0.409533, 1.72078, 0, -4.88511, -1.56004, 0, -0.481907, -2.63731, 3.2565e-16, 1.4171, -8.19475, -6.86849, 0.131566, -1.55908, 6.86849, 1.84584, 1.39289, 1.62143, 1.50656, -0.173579, -1.62143, 1.10188, 8.87746, 0, 0.510523}, {0.433164, -1.31177, -0.736929, 1.70046, 1.31177, -0.409533, -0.573592, 0, 1.62837, 4.68011, 0, 1.44572, -2.63731, 3.2565e-16, 1.4171, -1.39289, -1.62143, -1.50656, 0.173579, 1.62143, -1.10188, -0.339765, 6.86849, 4.45428, -6.97544, -6.86849, 2.74001, 4.93168, 0, -7.93058}, {10.941, 1.1204, -5.07489, 1.78885, 1.78885, -0.204309, 0, 0, -2.39759, 1.85814, -1.41539, 0.910268, -4.85864, -8.90493, -1.02119, -2.21115, -2.21115, 3.21612, 4.50793, 0.461631, 10.463, -5.2214, 7.87269, -6.8572, -4.50793, -0.461631, -0.872613, -2.29678, 1.74951, 1.83843}, {-3.64699, -0.373467, 1.69163, -5.36656, -5.36656, 0.612928, 0, 0, -2.39759, 1.85814, -1.41539, 0.910268, 16.8847, -0.255645, -8.60495, -2.21115, -2.21115, 12.8065, 4.50793, 0.461631, 0.872613, 2.21115, 2.21115, -3.21612, -11.9405, 5.19992, -4.51368, -2.29678, 1.74951, 1.83843}, {-3.64699, -0.373467, 1.69163, 1.78885, 1.78885, -0.204309, 0, 0, 7.19277, 1.85814, -1.41539, 0.910268, 2.29678, -1.74951, -1.83843, -9.36656, -9.36656, 4.03336, 19.0959, 1.9555, -5.89391, 2.21115, 2.21115, -3.21612, -4.50793, -0.461631, -0.872613, -9.72932, 7.41106, -1.80264}, {-3.64699, -0.373467, 1.69163, 1.78885, 1.78885, -0.204309, 0, 0, -2.39759, -5.57441, 4.24616, -2.7308, 2.29678, -1.74951, -1.83843, -2.21115, -2.21115, 3.21612, 4.50793, 0.461631, 0.872613, 16.7991, 3.70501, -9.98265, -11.6633, -7.61705, -0.0553752, -2.29678, 1.74951, 11.4288}, {-5.36656, 5.36656, -5.36656, 3.86512e-15, 3.15147, 1.39953e-15, -3.15147, 0, 0, 1.36261, -1.36261, -1.78885, -2.21115, -14.2902, -2.21115, 3.89543, -3.89543, -1.72992e-15, 14.2902, 2.21115, -2.21115, -9.34589, 9.34589, 7.15542, -1.68428, -2.21115, 2.21115, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, -1.0595e-14, -9.45441, 4.1986e-15, -3.15147, 0, 0, 1.36261, -1.36261, -1.78885, -9.36656, 5.47113, -9.36656, 16.5013, -3.89543, 1.72992e-15, 1.68428, 2.21115, -2.21115, -3.89543, 3.89543, -2.17401e-15, -7.13474, 3.23931, 9.36656, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 9.45441, 0, 0, 1.36261, -1.36261, -1.78885, -2.21115, -1.68428, -2.21115, 3.89543, -16.5013, 0, -5.47113, 9.36656, -9.36656, -3.89543, 3.89543, -4.44089e-16, -1.68428, -2.21115, 2.21115, -3.23931, 7.13474, 9.36656}, {1.78885, -1.78885, 1.78885, -1.06606e-15, 3.15147, 1.39953e-15, -3.15147, 0, 0, -4.08784, 4.08784, 5.36656, -2.21115, -1.68428, -2.21115, 3.89543, -3.89543, -1.72992e-15, 1.68428, 2.21115, -2.21115, -11.0508, 11.0508, -7.15542, -1.68428, -14.817, 2.21115, 14.817, 1.68428, 2.21115}, {-3.13871, 2.39624, 3.14224, -1.3586, 1.03722, -0.984492, 1.05172, 0.985921, 1.29286, -0.739357, -1.22439, 0.739047, 5.8205, -4.44365, 6.44954, 0.379324, -2.50074, -0.381162, -6.8001, -4.17504, -5.47482, 2.5781, 7.39832, -2.57503, 2.59322, 0.231359, 0.303387, -0.386102, 0.294769, -2.51157}, {1.04624, -0.798747, -1.04741, 4.0758, -3.11166, 2.95348, 1.05172, 0.985921, 1.29286, -0.739357, -1.22439, 0.739047, -3.79884, 2.90022, 6.70123, -3.82756, -6.44442, -5.5526, -2.59322, -0.231359, -0.303387, -0.379324, 2.50074, 0.381162, 5.55064, 5.12894, -2.6528, -0.386102, 0.294769, -2.51157}, {1.04624, -0.798747, -1.04741, -1.3586, 1.03722, -0.984492, -3.15516, -2.95776, -3.87858, -0.739357, -1.22439, 0.739047, 0.386102, -0.294769, 2.51157, 5.81372, -6.64962, 3.55681, -6.77816, 2.96363, 3.88627, -0.379324, 2.50074, 0.381162, 2.59322, 0.231359, 0.303387, 2.57132, 5.19235, -5.46776}, {1.04624, -0.798747, -1.04741, -1.3586, 1.03722, -0.984492, 1.05172, 0.985921, 1.29286, 2.21807, 3.67318, -2.21714, 0.386102, -0.294769, 2.51157, 0.379324, -2.50074, -0.381162, -2.59322, -0.231359, -0.303387, -4.56427, 5.69573, 4.57082, 8.02762, -3.91752, 4.24135, -4.59298, -3.64891, -7.68301}, {3.49307, 0, -5.19009e-16, 0.460877, 0.572575, 1.44665, -0.183612, 1.44665, -1.44665, 0.88709, -2.01922, 1.97395e-12, -0.973962, -2.99804, -7.57474, -0.342719, -2.4959, 2.44027e-12, 2.40063, -7.57474, 7.57474, -3.20564, 10.5728, -1.03361e-11, -1.66618, 1.78815, -1.78815, -0.869547, 0.707741, 1.78815}, {-1.16436, 0, 2.63061e-17, -1.38263, -1.71772, -4.33994, -0.183612, 1.44665, -1.44665, 0.88709, -2.01922, 1.97018e-12, 5.52697, -0.707741, -1.78815, 0.391727, -8.28248, 5.78659, 1.66618, -1.78815, 1.78815, 0.342719, 2.4959, -2.43516e-12, -5.21454, 9.86504, -1.78815, -0.869547, 0.707741, 1.78815}, {-1.16436, 0, 1.0874e-16, 0.460877, 0.572575, 1.44665, 0.550835, -4.33994, 4.33994, 0.88709, -2.01922, 1.97254e-12, 0.869547, -0.707741, -1.78815, -2.18623, -4.7862, -5.78659, 6.3236, -1.78815, 1.78815, 0.342719, 2.4959, -2.43827e-12, -1.66618, 1.78815, -1.78815, -4.41791, 8.78463, 1.78815}, {-1.16436, 0, 2.47018e-16, 0.460877, 0.572575, 1.44665, -0.183612, 1.44665, -1.44665, -2.66127, 6.05767, -5.92185e-12, 0.869547, -0.707741, -1.78815, -0.342719, -2.4959, 2.44005e-12, 1.66618, -1.78815, 1.78815, 5.00014, 2.4959, -2.44081e-12, -3.50969, -0.502145, -7.57474, -0.135101, -5.07885, 7.57474}, {-4.817, 1.77636e-15, 1.9984e-15, -1.78885, 1.78885, -1.78885, -0.190167, 1.85702, 1.41407, 0.373353, -3.64588, 0.374783, 7.38185, -9.36656, 9.36656, 2.4462, -4.50655, 0.463257, -0.988987, -9.72349, -7.40418, -3.93962, 19.0901, -1.96239, 1.74966, 2.29541, 1.74789, -0.226431, 2.21115, -2.21115}, {1.60567, -4.44089e-16, -1.55431e-15, 5.36656, -5.36656, 5.36656, -0.190167, 1.85702, 1.41407, 0.373353, -3.64588, 0.374783, -6.19624, -2.21115, 2.21115, 3.20687, -11.9346, -5.19303, -1.74966, -2.29541, -1.74789, -2.4462, 4.50655, -0.463257, 0.256242, 16.8789, 0.248757, -0.226431, 2.21115, -2.21115}, {1.60567, 8.88178e-16, 0, -1.78885, 1.78885, -1.78885, 0.570501, -5.57107, -4.24221, 0.373353, -3.64588, 0.374783, 0.226431, -2.21115, 2.21115, 9.60162, -11.662, 7.61867, -8.17233, -2.29541, -1.74789, -2.4462, 4.50655, -0.463257, 1.74966, 2.29541, 1.74789, -1.71984, 16.7947, -3.71028}, {1.60567, -3.10862e-15, 1.11022e-16, -1.78885, 1.78885, -1.78885, -0.190167, 1.85702, 1.41407, -1.12006, 10.9376, -1.12435, 0.226431, -2.21115, 2.21115, 2.4462, -4.50655, 0.463257, -1.74966, -2.29541, -1.74789, -8.86888, 4.50655, -0.463257, 8.90507, -4.86001, 8.90331, 0.534237, -5.21694, -7.86743}, {-9.76996e-15, 1.33227e-14, -7.02938, 1.78885, -6.92972e-12, 0.00253498, -1.78885, 2.33948, -2.34566, 0, -2.33948, 0, -9.36656, 3.62896e-11, -2.90954, 3.9968e-15, -2.89175, 2.89626, 9.36656, -12.2497, 9.38578, -3.9968e-15, 12.2497, -2.89626, -2.21115, 2.89175, -0.00313341, 2.21115, -8.57092e-12, 2.8994}, {-1.9984e-15, 8.88178e-16, 2.34313, -5.36656, 2.07891e-11, -0.00760494, -1.78885, 2.33948, -2.34566, 0, -2.33948, 0, -2.21115, 8.55849e-12, -12.2719, 7.15542, -12.2497, 12.2789, 2.21115, -2.89175, 0.00313341, 2.66454e-15, 2.89175, -2.89626, -2.21115, 12.2497, -0.00313341, 2.21115, -8.56426e-12, 2.8994}, {4.21885e-15, -1.77636e-15, 2.34313, 1.78885, -6.9266e-12, 0.00253498, 5.36656, -7.01844, 7.03698, 0, -2.33948, 0, -2.21115, 8.56382e-12, -2.8994, -7.15542, -2.89175, 2.88612, 2.21115, -2.89175, -9.36937, -5.32907e-15, 2.89175, -2.89626, -2.21115, 2.89175, -0.00313341, 2.21115, 9.35791, 2.8994}, {0, 0, 2.34313, 1.78885, -6.92763e-12, 0.00253498, -1.78885, 2.33948, -2.34566, 0, 7.01844, 0, -2.21115, 8.56293e-12, -2.8994, 0, -2.89175, 2.89626, 2.21115, -2.89175, 0.00313341, 0, 2.89175, -12.2688, -9.36656, 2.89175, -0.0132733, 9.36656, -9.35791, 12.282}, {-2.1843e-11, 2.07647e-11, 5.36656, -2.34313, 0, 0, 0, 2.34313, 0, 2.34313, -2.34313, 1.78885, 12.2688, 8.55538e-12, 2.21115, 2.89626, -2.89626, 0, -8.99991e-12, -12.2688, 2.21115, -12.2688, 12.2688, -7.15542, 8.99991e-12, 2.89626, -2.21115, -2.89626, -8.55538e-12, -2.21115}, {7.27862e-12, -6.92069e-12, -1.78885, 7.02938, 0, 0, -1.36297e-15, 2.34313, -1.04056e-15, 2.34313, -2.34313, 1.78885, 2.89626, 3.62377e-11, 9.36656, 2.89626, -12.2688, 5.44843e-15, -8.99503e-12, -2.89626, 2.21115, -2.89626, 2.89626, -8.4211e-16, -9.3725, 12.2688, -9.36656, -2.89626, -8.55449e-12, -2.21115}, {7.2804e-12, -6.91935e-12, -1.78885, -2.34313, 0, 0, 0, -7.02938, 0, 2.34313, -2.34313, 1.78885, 2.89626, 8.55271e-12, 2.21115, 12.2688, -2.89626, 0, -3.81206e-11, -2.89626, 9.36656, -2.89626, 2.89626, 4.44089e-16, 8.99902e-12, 2.89626, -2.21115, -12.2688, 9.3725, -9.36656}, {7.27596e-12, -6.91802e-12, -1.78885, -2.34313, 0, 0, 0, 2.34313, 0, -7.02938, 7.02938, -5.36656, 2.89626, 8.55138e-12, 2.21115, 2.89626, -2.89626, 0, -8.99325e-12, -2.89626, 2.21115, -2.89626, 2.89626, 7.15542, 9.3725, 2.89626, -2.21115, -2.89626, -9.3725, -2.21115}, {6.33782, 3.11659, -8.32035, 1.25748, 1.89399, 2.48645, -0.601124, 0.601124, -3.34812, 1.45625, -1.45625, -1.91178, -3.97294, -8.63294, -16.4474, -0.811303, -3.08413, 1.06509, 5.75885, -1.86342, 14.1028, -5.01369, 8.90912, 6.58202, -3.35435, -0.541075, -0.71033, -1.05699, 1.05699, 6.50159}, {-2.11261, -1.03886, 2.77345, -3.77244, -5.68196, -7.45934, -0.601124, 0.601124, -3.34812, 1.45625, -1.45625, -1.91178, 9.50741, 3.09846, -17.5954, 1.59319, -5.48862, 14.4576, 3.35435, 0.541075, 0.71033, 0.811303, 3.08413, -1.06509, -9.17934, 5.28392, 6.93678, -1.05699, 1.05699, 6.50159}, {-2.11261, -1.03886, 2.77345, 1.25748, 1.89399, 2.48645, 1.80337, -1.80337, 10.0444, 1.45625, -1.45625, -1.91178, 1.05699, -1.05699, -6.50159, -5.84123, -10.6601, -8.8807, 11.8048, 4.69653, -10.3835, 0.811303, 3.08413, -1.06509, -3.35435, -0.541075, -0.71033, -6.88198, 6.88198, 14.1487}, {-2.11261, -1.03886, 2.77345, 1.25748, 1.89399, 2.48645, -0.601124, 0.601124, -3.34812, -4.36874, 4.36874, 5.73533, 1.05699, -1.05699, -6.50159, -0.811303, -3.08413, 1.06509, 3.35435, 0.541075, 0.71033, 9.26172, 7.23958, -12.1589, -8.38428, -8.11702, -10.6561, 1.34751, -1.34751, 19.8941}, {-4.24616, -5.57441, -4.24476, 0.373467, -3.64699, -2.77708, -1.78885, 1.78885, -1.78885, 0, 0, 3.15102, -3.70501, 16.7991, 12.7921, 1.74951, 2.29678, 5.64381, 7.61705, -11.6633, 7.61763, -1.74951, -2.29678, -18.2479, -0.461631, 4.50793, -0.462209, 2.21115, -2.21115, -1.68373}, {1.41539, 1.85814, 1.41492, -1.1204, 10.941, 8.33125, -1.78885, 1.78885, -1.78885, 1.39933e-15, -1.39933e-15, 3.15102, -7.87269, -5.2214, -3.97595, 8.90493, -4.85864, 12.7992, 0.461631, -4.50793, 0.462209, -1.74951, -2.29678, -5.64381, -0.461631, 4.50793, -13.0663, 2.21115, -2.21115, -1.68373}, {1.41539, 1.85814, 1.41492, 0.373467, -3.64699, -2.77708, 5.36656, -5.36656, 5.36656, 0, 0, 3.15102, -2.21115, 2.21115, 1.68373, 0.255645, 16.8847, 16.7521, -5.19992, -11.9405, -5.19747, -1.74951, -2.29678, -5.64381, -0.461631, 4.50793, -0.462209, 2.21115, -2.21115, -14.2878}, {1.41539, 1.85814, 1.41492, 0.373467, -3.64699, -2.77708, -1.78885, 1.78885, -1.78885, 0, 0, -9.45305, -2.21115, 2.21115, 1.68373, 1.74951, 2.29678, 5.64381, 0.461631, -4.50793, 0.462209, -7.41106, -9.72932, -11.3035, -1.9555, 19.0959, 10.6461, 9.36656, -9.36656, 5.47169}, {2.81917, 4.24616, 5.57441, -1.67083, -0.373467, 3.64699, 0.18745, 1.78885, -1.78885, 2.4231, 0, 0, 9.91012, 3.70501, -16.7991, 1.83355, -1.74951, -2.29678, 0.18006, -7.61705, 11.6633, -11.526, 1.74951, 2.29678, -0.929861, 0.461631, -4.50793, -3.22682, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, 5.01248, 1.1204, -10.941, 0.18745, 1.78885, -1.78885, 2.4231, -1.07607e-15, 1.07607e-15, 6.98571, 7.87269, 5.2214, 1.08375, -8.90493, 4.85864, 0.929861, -0.461631, 4.50793, -1.83355, 1.74951, 2.29678, -10.6223, 0.461631, -4.50793, -3.22682, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, -1.67083, -0.373467, 3.64699, -0.56235, -5.36656, 5.36656, 2.4231, 0, 0, 3.22682, 2.21115, -2.21115, 8.51686, -0.255645, -16.8847, 4.68875, 5.19992, 11.9405, -1.83355, 1.74951, 2.29678, -0.929861, 0.461631, -4.50793, -12.9192, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, -1.67083, -0.373467, 3.64699, 0.18745, 1.78885, -1.78885, -7.2693, 0, 0, 3.22682, 2.21115, -2.21115, 1.83355, -1.74951, -2.29678, 0.929861, -0.461631, 4.50793, 1.92534, 7.41106, 9.72932, 5.75345, 1.9555, -19.0959, -3.97662, -9.36656, 9.36656}, {-3.55271e-15, -7.99361e-15, -9.45441, -3.15147, 0, 0, 1.78937, -1.78885, -1.78885, 1.3621, 1.78885, -1.36261, 16.5013, -3.55271e-15, -3.89543, 1.68365, 2.21115, 2.21115, -9.36924, 9.36656, 5.47113, -7.13206, -9.36656, 3.23931, 2.21178, -2.21115, 1.68428, -3.89543, 3.55271e-15, 3.89543}, {-2.22045e-16, 2.88658e-15, 3.15147, 9.45441, 0, 0, 1.78937, -1.78885, -1.78885, 1.3621, 1.78885, -1.36261, 3.89543, -1.42109e-14, -16.5013, -5.47381, 9.36656, 9.36656, -2.21178, 2.21115, -1.68428, -1.68365, -2.21115, -2.21115, -3.23663, -9.36656, 7.13474, -3.89543, 3.55271e-15, 3.89543}, {2.22045e-16, 0, 3.15147, -3.15147, 0, 0, -5.3681, 5.36656, 5.36656, 1.3621, 1.78885, -1.36261, 3.89543, 0, -3.89543, 14.2895, 2.21115, 2.21115, -2.21178, 2.21115, -14.2902, -1.68365, -2.21115, -2.21115, 2.21178, -2.21115, 1.68428, -9.34384, -7.15542, 9.34589}, {8.88178e-16, 1.55431e-15, 3.15147, -3.15147, 0, 0, 1.78937, -1.78885, -1.78885, -4.08631, -5.36656, 4.08784, 3.89543, -2.22045e-15, -3.89543, 1.68365, 2.21115, 2.21115, -2.21178, 2.21115, -1.68428, -1.68365, -2.21115, -14.817, 14.8177, -2.21115, 1.68428, -11.0529, 7.15542, 11.0508}, {-5.22583, 5.22504, 3.98456, 2.34612, 2.92755e-15, 1.19114e-15, -2.54361, 0.198607, 1.93944, -1.54445, 1.54307, -0.611252, -14.4376, 2.15284, 1.64173, 0.244118, -0.245492, -2.39728, 11.1654, 1.11292, -8.51331, 5.93368, -5.9268, 4.84229, -0.990917, -1.90734, 0.755549, 5.05312, -2.15284, -1.64173}, {1.74194, -1.74168, -1.32819, -7.03835, -2.34918e-15, 4.45681e-15, -2.54361, 0.198607, 1.93944, -1.54445, 1.54307, -0.611252, -12.0209, 9.11956, 6.95448, 10.4186, -1.03992, -10.155, 0.990917, 1.90734, -0.755549, -0.244118, 0.245492, 2.39728, 5.18688, -8.07964, 3.20056, 5.05312, -2.15284, -1.64173}, {1.74194, -1.74168, -1.32819, 2.34612, 0, 0, 7.63084, -0.595821, -5.81832, -1.54445, 1.54307, -0.611252, -5.05312, 2.15284, 1.64173, -9.14035, -0.245492, -2.39728, -5.97686, 8.87406, 4.5572, -0.244118, 0.245492, 2.39728, -0.990917, -1.90734, 0.755549, 11.2309, -8.32513, 0.803277}, {1.74194, -1.74168, -1.32819, 2.34612, -8.98735e-16, 3.56012e-16, -2.54361, 0.198607, 1.93944, 4.63335, -4.62922, 1.83376, -5.05312, 2.15284, 1.64173, 0.244118, -0.245492, -2.39728, 0.990917, 1.90734, -0.755549, -7.21189, 7.21221, 7.71003, -10.3754, -1.90734, 0.755549, 15.2276, -2.94726, -9.39949}, {-9.45441, 1.33227e-14, -1.06581e-14, -1.78937, -1.78885, -1.78885, -1.3621, 1.78885, -1.36261, 0, 0, 3.15147, 5.47381, 9.36656, 9.36656, 3.89543, -5.32907e-15, 3.89543, 3.23663, -9.36656, 7.13474, -3.89543, 5.32907e-15, -16.5013, 2.21178, 2.21115, -1.68428, 1.68365, -2.21115, -2.21115}, {3.15147, 2.7318e-15, 0, 5.3681, 5.36656, 5.36656, -1.3621, 1.78885, -1.36261, 1.06566e-15, -1.39953e-15, 3.15147, -14.2895, 2.21115, 2.21115, 9.34384, -7.15542, 9.34589, -2.21178, -2.21115, 1.68428, -3.89543, -1.33227e-15, -3.89543, 2.21178, 2.21115, -14.2902, 1.68365, -2.21115, -2.21115}, {3.15147, 0, 2.22045e-15, -1.78937, -1.78885, -1.78885, 4.08631, -5.36656, 4.08784, 0, 0, 3.15147, -1.68365, 2.21115, 2.21115, 11.0529, 7.15542, 11.0508, -14.8177, -2.21115, 1.68428, -3.89543, 0, -3.89543, 2.21178, 2.21115, -1.68428, 1.68365, -2.21115, -14.817}, {3.15147, 0, 0, -1.78937, -1.78885, -1.78885, -1.3621, 1.78885, -1.36261, 0, 0, -9.45441, -1.68365, 2.21115, 2.21115, 3.89543, 0, 3.89543, -2.21178, -2.21115, 1.68428, -16.5013, 0, -3.89543, 9.36924, 9.36656, 5.47113, 7.13206, -9.36656, 3.23931}, {-7.03835, 0, -2.66454e-15, -2.34612, 2.34348, -1.78885, -1.03933e-11, 0.00114147, 1.78885, 0, -2.34462, 0, 9.38447, -12.2706, 9.36656, 2.89996, -2.89811, 1.33227e-15, -2.89996, -0.00597681, -9.36656, -2.89996, 12.2766, -1.33227e-15, 2.89996, 0.00141093, 2.21115, 1.28469e-11, 2.8967, -2.21115}, {2.34612, -3.9968e-15, 0, 7.03835, -7.03044, 5.36656, -1.03933e-11, 0.00114147, 1.78885, 0, -2.34462, 0, -9.38447, -2.8967, 2.21115, 2.89996, -2.90268, -7.15542, -2.89996, -0.00141093, -2.21115, -2.89996, 2.89811, 0, 2.89996, 9.37989, 2.21115, 1.28469e-11, 2.8967, -2.21115}, {2.34612, -1.77636e-15, 0, -2.34612, 2.34348, -1.78885, 3.11847e-11, -0.00342441, -5.36656, 0, -2.34462, 0, -1.28494e-11, -2.8967, 2.21115, 12.2844, -12.272, 7.15542, -12.2844, -0.00141093, -2.21115, -2.89996, 2.89811, 0, 2.89996, 0.00141093, 2.21115, 1.28488e-11, 12.2752, -2.21115}, {2.34612, 2.66454e-15, 0, -2.34612, 2.34348, -1.78885, -1.03918e-11, 0.00114147, 1.78885, 0, 7.03386, 0, -1.28455e-11, -2.8967, 2.21115, 2.89996, -2.89811, 0, -2.89996, -0.00141093, -2.21115, -12.2844, 2.89811, 0, 12.2844, -9.37251, 9.36656, 5.4412e-11, 2.89213, -9.36656}, {-1.11022e-15, 0, 5.41667, 2.01922, -1.97048e-12, 0.623753, -1.44665, -1.44665, 0.584061, -0.572575, 1.44665, 0.597742, -10.5728, 1.03175e-11, -1.03422, -0.707741, 1.78815, -1.49294, 7.57474, 7.57474, -0.826394, 2.99804, -7.57474, -0.898027, -1.78815, -1.78815, -1.50985, 2.4959, -2.43561e-12, -1.46079}, {-1.11022e-16, 2.22045e-16, -1.80556, -6.05767, 5.9153e-12, -1.87126, -1.44665, -1.44665, 0.584061, -0.572575, 1.44665, 0.597742, -2.4959, 2.43716e-12, 8.68301, 5.07885, 7.57474, -3.82918, 1.78815, 1.78815, 1.50985, 0.707741, -1.78815, 1.49294, 0.502145, -7.57474, -3.90082, 2.4959, -2.43716e-12, -1.46079}, {0, 2.22045e-16, -1.80556, 2.01922, -1.97103e-12, 0.623753, 4.33994, 4.33994, -1.75218, -0.572575, 1.44665, 0.597742, -2.4959, 2.43627e-12, 1.46079, -8.78463, 1.78815, -3.98795, 1.78815, 1.78815, 8.73207, 0.707741, -1.78815, 1.49294, -1.78815, -1.78815, -1.50985, 4.7862, -5.78659, -3.85176}, {1.11022e-16, 2.22045e-16, -1.80556, 2.01922, -1.97085e-12, 0.623753, -1.44665, -1.44665, 0.584061, 1.71772, -4.33994, -1.79323, -2.4959, 2.43583e-12, 1.46079, -0.707741, 1.78815, -1.49294, 1.78815, 1.78815, 1.50985, 0.707741, -1.78815, 8.71516, -9.86504, -1.78815, -4.00486, 8.28248, 5.78659, -3.79703}, {8.56414, 1.25642, -1.25642, 2.63957, -0.971716, -0.633952, 1.54777, 0.0578944, 1.54777, -1.33263, 1.33263, -1.33263, -10.2923, 5.60564, 2.80174, -5.17584, 1.12955, -1.12955, -4.57563, 0.214536, -8.62192, 10.5064, -6.46006, 6.46006, -1.61547, -0.446113, 2.43083, -0.265934, -1.71878, -0.265934}, {-2.85471, -0.418807, 0.418807, -7.91871, 2.91515, 1.90186, 1.54777, 0.0578944, 1.54777, -1.33263, 1.33263, -1.33263, 11.6848, 3.39401, -1.4093, -11.3669, 0.897968, -7.32064, 1.61547, 0.446113, -2.43083, 5.17584, -1.12955, 1.12955, 3.71505, -5.77663, 7.76134, -0.265934, -1.71878, -0.265934}, {-2.85471, -0.418807, 0.418807, 2.63957, -0.971716, -0.633952, -4.64332, -0.173683, -4.64332, -1.33263, 1.33263, -1.33263, 0.265934, 1.71878, 0.265934, -15.7341, 5.01641, 1.40626, 13.0343, 2.12134, -4.10606, 5.17584, -1.12955, 1.12955, -1.61547, -0.446113, 2.43083, 5.06458, -7.0493, 5.06458}, {-2.85471, -0.418807, 0.418807, 2.63957, -0.971716, -0.633952, 1.54777, 0.0578944, 1.54777, 3.99789, -3.99789, 3.99789, 0.265934, 1.71878, 0.265934, -5.17584, 1.12955, -1.12955, 1.61547, 0.446113, -2.43083, 16.5947, 0.545684, -0.545684, -12.1737, 3.44075, 4.96664, -6.45703, -1.95036, -6.45703}, {-0.339403, 0.339403, -5.15641, -0.164984, -1.44068, -0.164984, 1.07377, 0.531894, -0.531894, -1.02192, 1.02192, -1.02192, 0.724024, 7.68336, -1.26069, -1.12333, 1.12333, 0.861388, -5.7622, -2.64519, 0.660475, 5.21103, -5.21103, 3.22631, 1.4671, 0.517615, 1.4671, -0.0640894, -1.92063, 1.92063}, {0.113134, -0.113134, 1.7188, 0.494951, 4.32205, 0.494951, 1.07377, 0.531894, -0.531894, -1.02192, 1.02192, -1.02192, -0.388448, 2.37316, -8.79583, -5.41842, -1.00425, 2.98896, -1.4671, -0.517615, -1.4671, 1.12333, -1.12333, -0.861388, 5.5548, -3.57008, 5.5548, -0.0640894, -1.92063, 1.92063}, {0.113134, -0.113134, 1.7188, -0.164984, -1.44068, -0.164984, -3.22132, -1.59568, 1.59568, -1.02192, 1.02192, -1.02192, 0.0640894, 1.92063, -1.92063, -0.463392, 6.88606, 1.52132, -1.91964, -0.0650781, -8.34231, 1.12333, -1.12333, -0.861388, 1.4671, 0.517615, 1.4671, 4.02361, -6.00832, 6.00832}, {0.113134, -0.113134, 1.7188, -0.164984, -1.44068, -0.164984, 1.07377, 0.531894, -0.531894, 3.06577, -3.06577, 3.06577, 0.0640894, 1.92063, -1.92063, -1.12333, 1.12333, 0.861388, -1.4671, -0.517615, -1.4671, 0.67079, -0.67079, -7.7366, 2.12703, 6.28035, 2.12703, -4.35919, -4.0482, 4.0482}, {-1.94182, 3.40923, 1.10711, 0.155006, 1.62575, -1.6184, 0.710689, -0.184627, 1.53026, -1.51297, -0.304717, 0.45717, -1.6117, -7.10787, 8.93018, -1.07006, -1.78133, 0.108939, -4.52129, 2.3714, -7.5564, 7.12193, 3.0002, -1.93762, 1.67853, -1.63289, 1.43535, 0.991672, 0.604862, -2.4566}, {0.647273, -1.13641, -0.369036, -0.465018, -4.87726, 4.85519, 0.710689, -0.184627, 1.53026, -1.51297, -0.304717, 0.45717, -3.58076, 3.94077, 3.93275, -3.91281, -1.04282, -6.01211, -1.67853, 1.63289, -1.43535, 1.07006, 1.78133, -0.108939, 7.73041, -0.414023, -0.393324, 0.991672, 0.604862, -2.4566}, {0.647273, -1.13641, -0.369036, 0.155006, 1.62575, -1.6184, -2.13207, 0.553881, -4.59079, -1.51297, -0.304717, 0.45717, -0.991672, -0.604862, 2.4566, -1.69008, -8.28434, 6.58252, -4.26763, 6.17852, 0.0407896, 1.07006, 1.78133, -0.108939, 1.67853, -1.63289, 1.43535, 7.04355, 1.82373, -4.28528}, {0.647273, -1.13641, -0.369036, 0.155006, 1.62575, -1.6184, 0.710689, -0.184627, 1.53026, 4.53891, 0.91415, -1.37151, -0.991672, -0.604862, 2.4566, -1.07006, -1.78133, 0.108939, -1.67853, 1.63289, -1.43535, -1.51903, 6.32696, 1.36721, 1.05851, -8.1359, 7.90894, -1.85108, 1.34337, -8.57765}, {-5.53886e-11, 0.00342441, 5.36656, 2.34612, 1.36758e-15, 3.12566e-15, 0, -2.34462, 0, -2.34612, 2.34576, 1.78885, -12.2844, 0.00141093, 2.21115, -2.89996, 2.89811, -3.86352e-15, -2.28213e-11, 12.278, 2.21115, 12.2844, -12.2812, -7.15542, 2.28213e-11, -2.89952, -2.21115, 2.89996, -0.00141093, -2.21115}, {1.22999e-11, -0.00114147, -1.78885, -7.03835, -8.19548e-15, -3.12566e-15, 0, -2.34462, 0, -2.34612, 2.34576, 1.78885, -2.89996, 0.00597681, 9.36656, -2.89996, 12.2766, -1.28784e-15, -1.52034e-11, 2.89952, 2.21115, 2.89996, -2.89811, 1.73193e-15, 9.38447, -12.2826, -9.36656, 2.89996, -0.00141093, -2.21115}, {1.22964e-11, -0.00114147, -1.78885, 2.34612, 0, 0, 0, 7.03386, 0, -2.34612, 2.34576, 1.78885, -2.89996, 0.00141093, 2.21115, -12.2844, 2.89811, 0, -6.43876e-11, 2.90409, 9.36656, 2.89996, -2.89811, 4.44089e-16, 1.51994e-11, -2.89952, -2.21115, 12.2844, -9.38446, -9.36656}, {1.22991e-11, -0.00114147, -1.78885, 2.34612, -1.36625e-15, -1.04189e-15, 0, -2.34462, 0, 7.03835, -7.03729, -5.36656, -2.89996, 0.00141093, 2.21115, -2.89996, 2.89811, 1.28784e-15, -1.52025e-11, 2.89952, 2.21115, 2.89996, -2.89354, 7.15542, -9.38447, -2.89952, -2.21115, 2.89996, 9.37707, -2.21115}, {-4.82547e-12, 4.93775, 1.89782, -1.17597e-12, 1.20344, -0.85762, 1.44665, -0.256711, 0.444168, -1.44665, 0.69919, 1.04606, 4.16933e-12, -4.26682, 5.2725, -1.78815, -1.17022, 0.511055, -7.57474, 3.37862, -1.54375, 7.57474, -1.62654, -4.69529, 1.78815, -2.35178, -0.232925, 5.34461e-13, -0.546933, -1.84202}, {1.60938e-12, -1.64592, -0.632608, 3.52988e-12, -3.61031, 2.57286, 1.44665, -0.256711, 0.444168, -1.44665, 0.69919, 1.04606, -6.97309e-12, 7.13059, 4.37245, -7.57474, -0.143371, -1.26562, -1.78815, 2.35178, 0.232925, 1.78815, 1.17022, -0.511055, 7.57474, -5.14853, -4.41716, 5.34905e-13, -0.546933, -1.84202}, {1.60738e-12, -1.64592, -0.632608, -1.17532e-12, 1.20344, -0.85762, -4.33994, 0.770134, -1.3325, -1.44665, 0.69919, 1.04606, -5.34239e-13, 0.546933, 1.84202, -1.78815, -5.98397, 3.94153, -1.78815, 8.93544, 2.76336, 1.78815, 1.17022, -0.511055, 1.78815, -2.35178, -0.232925, 5.78659, -3.34369, -6.02626}, {1.60805e-12, -1.64592, -0.632608, -1.17575e-12, 1.20344, -0.85762, 1.44665, -0.256711, 0.444168, 4.33994, -2.09757, -3.13818, -5.34461e-13, 0.546933, 1.84202, -1.78815, -1.17022, 0.511055, -1.78815, 2.35178, 0.232925, 1.78815, 7.75388, 2.01938, 1.78815, -7.16552, 3.19755, -5.78659, 0.479913, -3.61869}, {3.67809, 0.0745323, 3.75892, 1.30596, 0.948366, 0.152693, 0.0437324, -1.35943, 0.016287, -0.123659, 0.435911, 1.08399, -5.32262, -4.935, 0.74925, -1.66831, 0.508107, -0.20887, 1.28647, 7.14879, 1.46348, 2.16294, -2.25175, -4.1271, -1.4614, -1.71106, -1.52863, 0.0987948, 1.14154, -1.36002}, {-1.22603, -0.0248441, -1.25297, -3.91787, -2.8451, -0.458078, 0.0437324, -1.35943, 0.016287, -0.123659, 0.435911, 1.08399, 4.80532, -1.04216, 6.37191, -1.84323, 5.94584, -0.274019, 1.4614, 1.71106, 1.52863, 1.66831, -0.508107, 0.20887, -0.966762, -3.4547, -5.8646, 0.0987948, 1.14154, -1.36002}, {-1.22603, -0.0248441, -1.25297, 1.30596, 0.948366, 0.152693, -0.131197, 4.0783, -0.0488611, -0.123659, 0.435911, 1.08399, -0.0987948, -1.14154, 1.36002, -6.89213, -3.28536, -0.819641, 6.36551, 1.81044, 6.54052, 1.66831, -0.508107, 0.20887, -1.4614, -1.71106, -1.52863, 0.593431, -0.602108, -5.69599}, {-1.22603, -0.0248441, -1.25297, 1.30596, 0.948366, 0.152693, 0.0437324, -1.35943, 0.016287, 0.370977, -1.30773, -3.25198, -0.0987948, -1.14154, 1.36002, -1.66831, 0.508107, -0.20887, 1.4614, 1.71106, 1.52863, 6.57242, -0.40873, 5.22076, -6.68522, -5.50453, -2.1394, -0.0761347, 6.57927, -1.42517}, {5.37088, 5.36291, 5.36619, 1.99086e-15, 6.84977e-16, 1.60567, 0.376399, 3.64451, 0.373213, 1.41389, -1.85687, -0.190152, 2.21292, 2.20964, -6.1964, -0.465254, -4.50486, -2.44603, 0.242074, -16.8733, 0.256821, -5.19032, 11.9323, 3.20664, -1.74767, 2.29522, -1.74967, -2.21292, -2.20964, -0.226277}, {-1.79029, -1.78764, -1.78873, -1.24068e-15, 6.57876e-15, -4.817, 0.376399, 3.64451, 0.373213, 1.41389, -1.85687, -0.190152, 9.37409, 9.36019, 7.3812, -1.97085, -19.0829, -3.93889, 1.74767, -2.29522, 1.74967, 0.465254, 4.50486, 2.44603, -7.40324, 9.72271, -0.989068, -2.21292, -2.20964, -0.226277}, {-1.79029, -1.78764, -1.78873, 0, 0, 1.60567, -1.1292, -10.9335, -1.11964, 1.41389, -1.85687, -0.190152, 2.21292, 2.20964, 0.226277, -0.465254, -4.50486, -8.8687, 8.90884, 4.85533, 8.90459, 0.465254, 4.50486, 2.44603, -1.74767, 2.29522, -1.74967, -7.8685, 5.21784, 0.53433}, {-1.79029, -1.78764, -1.78873, -5.63596e-16, 7.40172e-16, 1.60567, 0.376399, 3.64451, 0.373213, -4.24168, 5.57061, 0.570455, 2.21292, 2.20964, 0.226277, -0.465254, -4.50486, -2.44603, 1.74767, -2.29522, 1.74967, 7.62642, 11.6554, 9.60095, -1.74767, 2.29522, -8.17235, -3.71852, -16.7877, -1.71913}, {1.24345e-14, 1.42109e-14, -9.45441, 0, -3.15057, 0, 1.78885, 1.78834, -1.78885, -1.78885, 1.36222, -1.36261, 4.88498e-15, 16.4966, -3.89543, -2.21115, 1.6838, 2.21115, -9.36656, -9.36389, 5.47113, 9.36656, -7.1327, 3.23931, 2.21115, 2.21051, 1.68428, -4.88498e-15, -3.89432, 3.89543}, {1.33227e-15, 3.33067e-15, 3.15147, 0, 9.4517, 0, 1.78885, 1.78834, -1.78885, -1.78885, 1.36222, -1.36261, -5.32907e-15, 3.89432, -16.5013, -9.36656, -5.46957, 9.36656, -2.21115, -2.21051, -1.68428, 2.21115, -1.6838, -2.21115, 9.36656, -3.23838, 7.13474, 1.33227e-15, -3.89432, 3.89543}, {-1.11022e-15, -8.43769e-15, 3.15147, 0, -3.15057, 0, -5.36656, -5.36503, 5.36656, -1.78885, 1.36222, -1.36261, 1.33227e-15, 3.89432, -3.89543, -2.21115, 14.2861, 2.21115, -2.21115, -2.21051, -14.2902, 2.21115, -1.6838, -2.21115, 2.21115, 2.21051, 1.68428, 7.15542, -9.34321, 9.34589}, {0, -2.22045e-16, 3.15147, 0, -3.15057, 0, 1.78885, 1.78834, -1.78885, 5.36656, -4.08667, 4.08784, 0, 3.89432, -3.89543, -2.21115, 1.6838, 2.21115, -2.21115, -2.21051, -1.68428, 2.21115, -1.6838, -14.817, 2.21115, 14.8128, 1.68428, -7.15542, -11.0477, 11.0508}, {-5.91616e-12, 6.05767, -4.31695, 0, 0, -1.80556, 1.44665, 0.572575, -0.146817, -1.44665, 1.44665, 0.51339, -2.43761e-12, 2.4959, 7.67533, -1.78815, -0.707741, 2.41326, -7.57474, -0.502145, -1.00994, 7.57474, -5.07885, -4.46683, 1.78815, -1.78815, 1.5972, 2.43761e-12, -2.4959, -0.45311}, {1.97087e-12, -2.01922, 1.43898, 0, 0, 5.41667, 1.44665, 0.572575, -0.146817, -1.44665, 1.44665, 0.51339, -1.03206e-11, 10.5728, -5.30282, -7.57474, -2.99804, 3.00053, -1.78815, 1.78815, -1.5972, 1.78815, 0.707741, -2.41326, 7.57474, -7.57474, -0.456356, 2.43627e-12, -2.4959, -0.45311}, {1.97242e-12, -2.01922, 1.43898, 0, 0, -1.80556, -4.33994, -1.71772, 0.44045, -1.44665, 1.44665, 0.51339, -2.43783e-12, 2.4959, 0.45311, -1.78815, -0.707741, 9.63549, -1.78815, 9.86504, -7.35313, 1.78815, 0.707741, -2.41326, 1.78815, -1.78815, 1.5972, 5.78659, -8.28248, -2.50667}, {1.97198e-12, -2.01922, 1.43898, 0, 0, -1.80556, 1.44665, 0.572575, -0.146817, 4.33994, -4.33994, -1.54017, -2.43761e-12, 2.4959, 0.45311, -1.78815, -0.707741, 2.41326, -1.78815, 1.78815, -1.5972, 1.78815, 8.78463, -8.16919, 1.78815, -1.78815, 8.81943, -5.78659, -4.7862, 0.134156}, {-4.33994, -4.33994, 1.75218, -1.97211e-12, -2.01922, 1.43898, 0, 0, -1.80556, -1.44665, 0.572575, 0.950635, -1.78815, 8.78463, -6.81267, 2.43766e-12, 2.4959, 0.45311, -1.78815, -1.78815, 10.176, 5.78659, -4.7862, -4.25565, 1.78815, 1.78815, -2.95373, 1.78815, -0.707741, 1.05674}, {1.44665, 1.44665, -0.584061, 5.92068e-12, 6.05767, -4.31695, 0, 0, -1.80556, -1.44665, 0.572575, 0.950635, -7.57474, -5.07885, 1.2795, 2.43945e-12, 2.4959, 7.67533, -1.78815, -1.78815, 2.95373, -2.43981e-12, -2.4959, -0.45311, 7.57474, -0.502145, -6.75627, 1.78815, -0.707741, 1.05674}, {1.44665, 1.44665, -0.584061, -1.97247e-12, -2.01922, 1.43898, 0, 0, 5.41667, -1.44665, 0.572575, 0.950635, -1.78815, 0.707741, -1.05674, 1.0328e-11, 10.5728, -5.30282, -7.57474, -7.57474, 5.28997, -2.43847e-12, -2.4959, -0.45311, 1.78815, 1.78815, -2.95373, 7.57474, -2.99804, -2.7458}, {1.44665, 1.44665, -0.584061, -1.97283e-12, -2.01922, 1.43898, 0, 0, -1.80556, 4.33994, -1.71772, -2.8519, -1.78815, 0.707741, -1.05674, 2.43856e-12, 2.4959, 0.45311, -1.78815, -1.78815, 2.95373, -5.78659, -8.28248, 1.88313, 1.78815, 9.86504, -8.70966, 1.78815, -0.707741, 8.27896}, {1.71772, 0.356094, 4.33994, 2.01922, -0.477594, 1.7444e-12, -1.44665, -0.786183, 1.44665, 0, 1.38248, 0, -9.86504, 2.64743, 1.78815, -0.707741, 1.56212, -1.78815, 8.28248, 4.26323, -5.78659, 0.707741, -7.09202, 1.78815, -2.4959, -1.11849, -2.1562e-12, 1.78815, -0.737058, -1.78815}, {-0.572575, -0.118698, -1.44665, -6.05767, 1.43278, -5.23264e-12, -1.44665, -0.786183, 1.44665, 4.96495e-16, 1.38248, -4.96495e-16, 0.502145, 1.21185, 7.57474, 5.07885, 4.70685, -7.57474, 2.4959, 1.11849, 2.15571e-12, 0.707741, -1.56212, 1.78815, -2.4959, -6.6484, -2.15337e-12, 1.78815, -0.737058, -1.78815}, {-0.572575, -0.118698, -1.44665, 2.01922, -0.477594, 1.7444e-12, 4.33994, 2.35855, -4.33994, 0, 1.38248, 0, -1.78815, 0.737058, 1.78815, -8.78463, 3.47249, -1.78815, 4.7862, 1.59329, 5.78659, 0.707741, -1.56212, 1.78815, -2.4959, -1.11849, -2.1562e-12, 1.78815, -6.26696, -1.78815}, {-0.572575, -0.118698, -1.44665, 2.01922, -0.477594, 1.74332e-12, -1.44665, -0.786183, 1.44665, 0, -4.14743, 0, -1.78815, 0.737058, 1.78815, -0.707741, 1.56212, -1.78815, 2.4959, 1.11849, 2.15522e-12, 2.99804, -1.08732, 7.57474, -10.5728, 0.791882, -9.12813e-12, 7.57474, 2.40768, -7.57474}, {-3.82778, -1.72626, -1.72406, -1.39459, 0.310766, 0.31037, -0.00684175, -1.71025, 0.635056, 0.125505, 0.824062, -1.52011, 5.72503, -2.33845, -2.33547, 1.73226, 1.72986, -1.16861, -1.54131, 8.24373, -4.03555, -2.23428, -5.02611, 7.24907, 1.56867, -1.40273, 1.49533, -0.146676, 1.09539, 1.09399}, {1.27593, 0.575422, 0.574688, 4.18377, -0.932299, -0.93111, -0.00684175, -1.71025, 0.635056, 0.125505, 0.824062, -1.52011, -4.95703, -3.39708, -3.39274, 1.75963, 8.57086, -3.70884, -1.56867, 1.40273, -1.49533, -1.73226, -1.72986, 1.16861, 1.06665, -4.69898, 7.57578, -0.146676, 1.09539, 1.09399}, {1.27593, 0.575422, 0.574688, -1.39459, 0.310766, 0.31037, 0.0205252, 5.13075, -1.90517, 0.125505, 0.824062, -1.52011, 0.146676, -1.09539, -1.09399, 7.31062, 0.486792, -2.41009, -6.67238, -0.898961, -3.79408, -1.73226, -1.72986, 1.16861, 1.56867, -1.40273, 1.49533, -0.648696, -2.20086, 7.17445}, {1.27593, 0.575422, 0.574688, -1.39459, 0.310766, 0.31037, -0.00684175, -1.71025, 0.635056, -0.376515, -2.47219, 4.56034, 0.146676, -1.09539, -1.09399, 1.73226, 1.72986, -1.16861, -1.56867, 1.40273, -1.49533, -6.83597, -4.03154, -1.13014, 7.14703, -2.64579, 0.253846, -0.119309, 7.93639, -1.44623}, {4.08784, 5.36656, -4.08784, 3.15147, -2.79907e-15, -3.33475e-16, -1.78885, 1.78885, 1.78885, 0, 0, -3.15147, -14.817, 2.21115, -1.68428, -1.68428, -2.21115, -2.21115, 11.0508, -7.15542, -11.0508, 1.68428, 2.21115, 14.817, -3.89543, 3.45984e-15, 3.89543, 2.21115, -2.21115, 1.68428}, {-1.36261, -1.78885, 1.36261, -9.45441, 4.1986e-15, 1.15954e-14, -1.78885, 1.78885, 1.78885, 0, 0, -3.15147, 3.23931, 9.36656, -7.13474, 5.47113, -9.36656, -9.36656, 3.89543, -1.28583e-15, -3.89543, 1.68428, 2.21115, 2.21115, -3.89543, 1.72992e-15, 16.5013, 2.21115, -2.21115, 1.68428}, {-1.36261, -1.78885, 1.36261, 3.15147, 0, 0, 5.36656, -5.36656, -5.36656, 0, 0, -3.15147, -2.21115, 2.21115, -1.68428, -14.2902, -2.21115, -2.21115, 9.34589, 7.15542, -9.34589, 1.68428, 2.21115, 2.21115, -3.89543, 0, 3.89543, 2.21115, -2.21115, 14.2902}, {-1.36261, -1.78885, 1.36261, 3.15147, 0, 2.46559e-15, -1.78885, 1.78885, 1.78885, 0, 0, 9.45441, -2.21115, 2.21115, -1.68428, -1.68428, -2.21115, -2.21115, 3.89543, 4.44089e-16, -3.89543, 7.13474, 9.36656, -3.23931, -16.5013, 0, 3.89543, 9.36656, -9.36656, -5.47113}, {1.73341, -4.36745, 1.08767, 0, 0, 1.17684, 2.01922, 1.68048e-12, -0.615915, -1.44142, -1.45582, -0.198371, 0.714206, -1.79949, -5.71389, -2.4959, -2.07719e-12, -0.693346, -9.85858, -1.79949, 3.67312, 8.26156, 5.82327, 1.48683, 1.78169, 1.79949, -1.20946, -0.714206, 1.79949, 1.00651}, {-0.577805, 1.45582, -0.362558, 2.02028e-15, 3.82793e-15, -3.53053, 2.01922, 1.68206e-12, -0.615915, -1.44142, -1.45582, -0.198371, 3.02542, -7.62276, 0.443719, -10.5728, -8.8058e-12, 1.77031, -1.78169, -1.79949, 1.20946, 2.4959, 2.0772e-12, 0.693346, 7.54736, 7.62276, -0.415974, -0.714206, 1.79949, 1.00651}, {-0.577805, 1.45582, -0.362558, 0, 0, 1.17684, -6.05767, -5.04417e-12, 1.84774, -1.44142, -1.45582, -0.198371, 0.714206, -1.79949, -1.00651, -2.4959, -2.07831e-12, -5.40072, 0.529529, -7.62276, 2.65969, 2.4959, 2.07795e-12, 0.693346, 1.78169, 1.79949, -1.20946, 5.05146, 7.62276, 1.8}, {-0.577805, 1.45582, -0.362558, 0, 0, 1.17684, 2.01922, 1.68121e-12, -0.615915, 4.32425, 4.36745, 0.595113, 0.714206, -1.79949, -1.00651, -2.4959, -2.07809e-12, -0.693346, -1.78169, -1.79949, 1.20946, 4.80711, -5.82327, 2.14358, 1.78169, 1.79949, -5.91683, -8.79109, 1.79949, 3.47017}, {-4.91714, 2.88338, 1.92681, -0.336451, -0.850591, 0.85104, -1.79955, 0.555362, -0.55742, 0.496952, 1.25636, 0.348649, -0.264293, 5.64177, -3.66222, 2.64024, 0.364922, -0.362934, 7.39658, -1.7199, 3.71258, -4.62805, -5.39034, -1.03166, -0.198389, -0.501553, -1.4829, 1.6101, -2.23941, 0.258056}, {1.63905, -0.961127, -0.642269, 1.00935, 2.55177, -2.55312, -1.79955, 0.555362, -0.55742, 0.496952, 1.25636, 0.348649, -8.16629, 6.08391, 2.31102, 9.83843, -1.85653, 1.86675, 0.198389, 0.501553, 1.4829, -2.64024, -0.364922, 0.362934, -2.1862, -5.52697, -2.87749, 1.6101, -2.23941, 0.258056}, {1.63905, -0.961127, -0.642269, -0.336451, -0.850591, 0.85104, 5.39864, -1.66609, 1.67226, 0.496952, 1.25636, 0.348649, -1.6101, 2.23941, -0.258056, 3.98605, 3.76729, -3.76709, -6.3578, 4.34606, 4.05197, -2.64024, -0.364922, 0.362934, -0.198389, -0.501553, -1.4829, -0.377708, -7.26483, -1.13654}, {1.63905, -0.961127, -0.642269, -0.336451, -0.850591, 0.85104, -1.79955, 0.555362, -0.55742, -1.49085, -3.76907, -1.04595, -1.6101, 2.23941, -0.258056, 2.64024, 0.364922, -0.362934, 0.198389, 0.501553, 1.4829, -9.19643, 3.47958, 2.93201, 1.14742, 2.90081, -4.88706, 8.80829, -4.46086, 2.48774}, {10.941, -4.49288, 1.1204, 1.85814, 0.691786, -1.41539, 0, -2.17235, 0, 1.78885, -0.0170635, 1.78885, -5.2214, -5.47341, 7.87269, -2.29678, 1.83008, 1.74951, 4.50793, 9.5234, 0.461631, -4.85864, -1.76182, -8.90493, -4.50793, -0.834003, -0.461631, -2.21115, 2.70626, -2.21115}, {-3.64699, 1.49763, -0.373467, -5.57441, -2.07536, 4.24616, 0, -2.17235, 0, 1.78885, -0.0170635, 1.78885, 16.7991, -8.69677, 3.70501, -2.29678, 10.5195, 1.74951, 4.50793, 0.834003, 0.461631, 2.29678, -1.83008, -1.74951, -11.6633, -0.76575, -7.61705, -2.21115, 2.70626, -2.21115}, {-3.64699, 1.49763, -0.373467, 1.85814, 0.691786, -1.41539, 0, 6.51705, 0, 1.78885, -0.0170635, 1.78885, 2.21115, -2.70626, 2.21115, -9.72932, -0.937068, 7.41106, 19.0959, -5.15651, 1.9555, 2.29678, -1.83008, -1.74951, -4.50793, -0.834003, -0.461631, -9.36656, 2.77452, -9.36656}, {-3.64699, 1.49763, -0.373467, 1.85814, 0.691786, -1.41539, 0, -2.17235, 0, -5.36656, 0.0511904, -5.36656, 2.21115, -2.70626, 2.21115, -2.29678, 1.83008, 1.74951, 4.50793, 0.834003, 0.461631, 16.8847, -7.82059, -0.255645, -11.9405, -3.60115, 5.19992, -2.21115, 11.3957, -2.21115}, {-4.62937, 1.83228, -4.62937, -1.60567, 0, 0, -0.136178, -1.32981, -1.74185, 0.198723, 1.94057, 0.198723, 6.49998, 0.754941, -1.90741, 2.15304, 1.64373, 2.15304, -1.19437, 7.71791, 7.21302, -2.94793, -9.40601, -2.94793, 1.73908, -2.39867, -0.245635, -0.0773091, -0.754941, 1.90741}, {1.54312, -0.61076, 1.54312, 4.817, 0, 0, -0.136178, -1.32981, -1.74185, 0.198723, 1.94057, 0.198723, -6.09519, 3.19798, -8.0799, 2.69775, 6.96297, 9.12042, -1.73908, 2.39867, 0.245635, -2.15304, -1.64373, -2.15304, 0.94419, -10.1609, -1.04052, -0.0773091, -0.754941, 1.90741}, {1.54312, -0.61076, 1.54312, -1.60567, 0, 0, 0.408534, 3.98943, 5.22554, 0.198723, 1.94057, 0.198723, 0.0773091, 0.754941, -1.90741, 8.57571, 1.64373, 2.15304, -7.91157, 4.84171, -5.92686, -2.15304, -1.64373, -2.15304, 1.73908, -2.39867, -0.245635, -0.872199, -8.51722, 1.11252}, {1.54312, -0.61076, 1.54312, -1.60567, 0, 0, -0.136178, -1.32981, -1.74185, -0.596168, -5.82171, -0.596168, 0.0773091, 0.754941, -1.90741, 2.15304, 1.64373, 2.15304, -1.73908, 2.39867, 0.245635, -8.32553, 0.799305, -8.32553, 8.16175, -2.39867, -0.245635, 0.467403, 4.5643, 8.87479}, {-5.36656, 4.08784, -4.08784, 0, 3.15147, 0, -1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -2.21115, -14.817, -1.68428, 2.21115, -1.68428, -2.21115, 7.15542, 11.0508, -11.0508, -2.21115, 1.68428, 14.817, 0, -3.89543, 3.89543, 2.21115, 2.21115, 1.68428}, {1.78885, -1.36261, 1.36261, -4.1986e-15, -9.45441, 1.15954e-14, -1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -9.36656, 3.23931, -7.13474, 9.36656, 5.47113, -9.36656, 1.28583e-15, 3.89543, -3.89543, -2.21115, 1.68428, 2.21115, -1.72992e-15, -3.89543, 16.5013, 2.21115, 2.21115, 1.68428}, {1.78885, -1.36261, 1.36261, 0, 3.15147, -9.86237e-15, 5.36656, 5.36656, -5.36656, 0, 0, -3.15147, -2.21115, -2.21115, -1.68428, 2.21115, -14.2902, -2.21115, -7.15542, 9.34589, -9.34589, -2.21115, 1.68428, 2.21115, 0, -3.89543, 3.89543, 2.21115, 2.21115, 14.2902}, {1.78885, -1.36261, 1.36261, 0, 3.15147, 0, -1.78885, -1.78885, 1.78885, 0, 0, 9.45441, -2.21115, -2.21115, -1.68428, 2.21115, -1.68428, -2.21115, -4.44089e-16, 3.89543, -3.89543, -9.36656, 7.13474, -3.23931, 0, -16.5013, 3.89543, 9.36656, 9.36656, -5.47113}, {-14.3647, 4.91028, -4.91028, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.63676, 1.63676, -1.63676, 2.33207, -6.2275, -10.2738, 3.89543, -3.19522e-13, -3.19522e-13, 2.33207, 10.2738, 6.2275, 2.65162, -6.54704, 6.54704, 3.97086, -3.97086, 0.0754334, 3.97086, -0.0754334, 3.97086}, {4.78823, -1.63676, 1.63676, 4.7272, -4.7272, -4.7272, -1.57573, -1.57573, -1.57573, -1.63676, 1.63676, -1.63676, -23.1238, 6.62248, -10.5179, 10.1984, 6.30294, 6.30294, -3.97086, 3.97086, -0.0754334, -3.89543, 3.18596e-13, 3.18228e-13, 10.5179, -10.5179, 6.62248, 3.97086, -0.0754334, 3.97086}, {4.78823, -1.63676, 1.63676, -1.57573, 1.57573, 1.57573, 4.7272, 4.7272, 4.7272, -1.63676, 1.63676, -1.63676, -3.97086, 0.0754334, -3.97086, 10.1984, -6.30294, -6.30294, -23.1238, 10.5179, -6.62248, -3.89543, 3.21483e-13, 3.20892e-13, 3.97086, -3.97086, 0.0754334, 10.5179, -6.62248, 10.5179}, {4.78823, -1.63676, 1.63676, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 4.91028, -4.91028, 4.91028, -3.97086, 0.0754334, -3.97086, 3.89543, -3.19522e-13, -3.19078e-13, -3.97086, 3.97086, -0.0754334, -23.0483, 6.54704, -6.54704, 10.2738, -10.2738, -6.2275, 10.2738, 6.2275, 10.2738}, {0, -4.817, 7.10543e-15, -1.41539, -0.190281, -1.85814, -0.373467, 0.373467, 3.64699, 1.78885, -1.78885, -1.78885, 7.41106, -0.988391, 9.72932, 2.21115, -0.226431, -2.21115, 1.9555, -3.94022, -19.0959, -9.36656, 7.38185, 9.36656, -0.461631, 2.44635, 4.50793, -1.74951, 1.74951, -2.29678}, {-1.11022e-15, 1.60567, -1.55431e-15, 4.24616, 0.570843, 5.57441, -0.373467, 0.373467, 3.64699, 1.78885, -1.78885, -1.78885, 1.74951, -8.17219, 2.29678, 3.70501, -1.7203, -16.7991, 0.461631, -2.44635, -4.50793, -2.21115, 0.226431, 2.21115, -7.61705, 9.60176, 11.6633, -1.74951, 1.74951, -2.29678}, {-8.88178e-16, 1.60567, 1.11022e-15, -1.41539, -0.190281, -1.85814, 1.1204, -1.1204, -10.941, 1.78885, -1.78885, -1.78885, 1.74951, -1.74951, 2.29678, 7.87269, 0.534693, 5.2214, 0.461631, -8.86902, -4.50793, -2.21115, 0.226431, 2.21115, -0.461631, 2.44635, 4.50793, -8.90493, 8.90493, 4.85864}, {1.55431e-15, 1.60567, -4.44089e-16, -1.41539, -0.190281, -1.85814, -0.373467, 0.373467, 3.64699, -5.36656, 5.36656, 5.36656, 1.74951, -1.74951, 2.29678, 2.21115, -0.226431, -2.21115, 0.461631, -2.44635, -4.50793, -2.21115, -6.19624, 2.21115, 5.19992, 3.20747, 11.9405, -0.255645, 0.255645, -16.8847}, {-2.60507, 7.08874, -2.60507, -1.19276, 2.49131, 1.15037, -1.08957, 0.431245, -1.08957, 1.41397, -0.55964, -0.929159, 5.172, -10.1239, -7.09676, 2.82111, -3.61247, -0.0751544, 4.6317, 0.662693, 4.6317, -8.47697, 5.85103, 3.79179, -0.273431, -2.38767, -0.273431, -0.400978, 0.158705, 2.49528}, {0.868358, -2.36291, 0.868358, 3.57827, -7.47392, -3.45111, -1.08957, 0.431245, -1.08957, 1.41397, -0.55964, -0.929159, -3.07245, 9.29295, -5.96872, 7.17938, -5.33745, 4.28312, 0.273431, 2.38767, 0.273431, -2.82111, 3.61247, 0.0751544, -5.9293, -0.149113, 3.44321, -0.400978, 0.158705, 2.49528}, {0.868358, -2.36291, 0.868358, -1.19276, 2.49131, 1.15037, 3.2687, -1.29374, 3.2687, 1.41397, -0.55964, -0.929159, 0.400978, -0.158705, -2.49528, 7.59213, -13.5777, -4.67663, -3.2, 11.8393, -3.2, -2.82111, 3.61247, 0.0751544, -0.273431, -2.38767, -0.273431, -6.05684, 2.39726, 6.21192}, {0.868358, -2.36291, 0.868358, -1.19276, 2.49131, 1.15037, -1.08957, 0.431245, -1.08957, -4.2419, 1.67892, 2.78748, 0.400978, -0.158705, -2.49528, 2.82111, -3.61247, -0.0751544, 0.273431, 2.38767, 0.273431, -6.29454, 13.0641, -3.39828, 4.49759, -12.3529, -4.87491, 3.95729, -1.56628, 6.85356}, {0.133606, -1.71772, 4.33994, 0.841626, -2.01922, -1.9732e-12, -1.05603, 0, 0, 0.258935, 1.44665, 1.44665, -4.35176, 9.86504, 1.78815, 0.265013, 2.4959, 2.43901e-12, 5.58447, -0.707741, 1.78815, -1.30075, -8.28248, -5.78659, -1.36037, 0.707741, -1.78815, 0.985258, -1.78815, -1.78815}, {-0.0445353, 0.572575, -1.44665, -2.52488, 6.05767, 5.92285e-12, -1.05603, 0, 0, 0.258935, 1.44665, 1.44665, -0.807116, -0.502145, 7.57474, 4.48912, 2.4959, 2.44035e-12, 1.36037, -0.707741, 1.78815, -0.265013, -2.4959, -2.43999e-12, -2.39611, -5.07885, -7.57474, 0.985258, -1.78815, -1.78815}, {-0.0445353, 0.572575, -1.44665, 0.841626, -2.01922, -1.97392e-12, 3.16808, 0, 0, 0.258935, 1.44665, 1.44665, -0.985258, 1.78815, 1.78815, -3.10149, 10.5728, 1.03356e-11, 1.53851, -2.99804, 7.57474, -0.265013, -2.4959, -2.43954e-12, -1.36037, 0.707741, -1.78815, -0.0504837, -7.57474, -7.57474}, {-0.0445353, 0.572575, -1.44665, 0.841626, -2.01922, -1.97247e-12, -1.05603, 0, 0, -0.776806, -4.33994, -4.33994, -0.985258, 1.78815, 1.78815, 0.265013, 2.4959, 2.43811e-12, 1.36037, -0.707741, 1.78815, -0.0868717, -4.7862, 5.78659, -4.72687, 8.78463, -1.78815, 5.20936, -1.78815, -1.78815}, {-8.334, -1.1204, -10.941, -1.41539, 1.41539, -1.85814, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, 3.97726, -7.87269, 5.2214, 5.64494, -1.74951, 2.29678, 13.0675, -0.461631, -4.50793, -12.8004, 8.90493, 4.85864, -0.461631, 0.461631, 4.50793, 1.68428, 2.21115, 2.21115}, {2.778, 0.373467, 3.64699, 4.24616, -4.24616, 5.57441, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -12.7963, -3.70501, -16.7991, 18.2508, -1.74951, 2.29678, 0.461631, -0.461631, -4.50793, -5.64494, 1.74951, -2.29678, -7.61705, 7.61705, 11.6633, 1.68428, 2.21115, 2.21115}, {2.778, 0.373467, 3.64699, -1.41539, 1.41539, -1.85814, 9.45441, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -2.21115, -2.21115, 11.3065, -7.41106, 9.72932, -10.6504, -1.9555, -19.0959, -5.64494, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, -5.47113, 9.36656, 9.36656}, {2.778, 0.373467, 3.64699, -1.41539, 1.41539, -1.85814, -3.15147, 0, 0, -5.36656, 5.36656, 5.36656, -1.68428, -2.21115, -2.21115, 5.64494, -1.74951, 2.29678, 0.461631, -0.461631, -4.50793, -16.7569, 0.255645, -16.8847, 5.19992, -5.19992, 11.9405, 14.2902, 2.21115, 2.21115}, {1.01058, 2.55106, -2.5536, -2.38953, 1.40121, 0.936349, 0.591368, -0.846655, -1.49431, 2.13502, 0.295801, -0.293237, 12.9281, -6.28572, -5.95493, 2.22265, -0.685462, 0.68968, -2.68006, 5.48424, 6.77218, -10.7627, -0.497743, 0.483267, 0.314591, -2.09762, -0.794931, -3.37, 0.680893, 2.20953}, {-0.336859, -0.850352, 0.8512, 7.1686, -4.20362, -2.80905, 0.591368, -0.846655, -1.49431, 2.13502, 0.295801, -0.293237, 4.71744, 2.72051, -5.61433, -0.142821, 2.70116, 6.66693, -0.314591, 2.09762, 0.794931, -2.22265, 0.685462, -0.68968, -8.2255, -3.28082, 0.378017, -3.37, 0.680893, 2.20953}, {-0.336859, -0.850352, 0.8512, -2.38953, 1.40121, 0.936349, -1.77411, 2.53997, 4.48294, 2.13502, 0.295801, -0.293237, 3.37, -0.680893, -2.20953, 11.7808, -6.29028, -3.05572, 1.03285, 5.49902, -2.60987, -2.22265, 0.685462, -0.68968, 0.314591, -2.09762, -0.794931, -11.9101, -0.502312, 3.38248}, {-0.336859, -0.850352, 0.8512, -2.38953, 1.40121, 0.936349, 0.591368, -0.846655, -1.49431, -6.40507, -0.887404, 0.879711, 3.37, -0.680893, -2.20953, 2.22265, -0.685462, 0.68968, -0.314591, 2.09762, 0.794931, -0.875216, 4.08687, -4.09448, 9.87272, -7.70244, -4.54033, -5.73548, 4.06751, 8.18678}, {8.88178e-16, 9.4517, 0, 1.85814, -1.41498, 1.41539, -3.64699, 2.77721, 0.373467, 1.78885, 1.78834, -1.78885, -9.72932, 11.3033, -7.41106, 2.21115, -1.6838, -2.21115, 19.0959, -10.6473, -1.9555, -9.36656, -5.46957, 9.36656, -4.50793, -0.461499, 0.461631, 2.29678, -5.64333, 1.74951}, {-2.22045e-16, -3.15057, -2.22045e-16, -5.57441, 4.24495, -4.24616, -3.64699, 2.77721, 0.373467, 1.78885, 1.78834, -1.78885, -2.29678, 18.2456, -1.74951, 16.7991, -12.7926, -3.70501, 4.50793, 0.461499, -0.461631, -2.21115, 1.6838, 2.21115, -11.6633, -7.61487, 7.61705, 2.29678, -5.64333, 1.74951}, {8.88178e-16, -3.15057, 2.22045e-16, 1.85814, -1.41498, 1.41539, 10.941, -8.33162, -1.1204, 1.78885, 1.78834, -1.78885, -2.29678, 5.64333, -1.74951, -5.2214, 3.97613, -7.87269, 4.50793, 13.0638, -0.461631, -2.21115, 1.6838, 2.21115, -4.50793, -0.461499, 0.461631, -4.85864, -12.7967, 8.90493}, {4.44089e-16, -3.15057, 2.22045e-16, 1.85814, -1.41498, 1.41539, -3.64699, 2.77721, 0.373467, -5.36656, -5.36503, 5.36656, -2.29678, 5.64333, -1.74951, 2.21115, -1.6838, -2.21115, 4.50793, 0.461499, -0.461631, -2.21115, 14.2861, 2.21115, -11.9405, 5.19843, -5.19992, 16.8847, -16.7522, 0.255645}, {-3.98943, -5.23221, -5.22554, -1.94057, -2.54509, -0.198723, 0.61076, -1.54509, -1.54312, 0, 2.34612, 0, 8.51722, 11.1705, -1.11252, 1.64373, 5.05575, 2.15304, -4.84171, 5.93443, 5.92686, -1.64373, -14.4402, -2.15304, 2.39867, 0.245948, 0.245635, -0.754941, -0.990119, 1.90741}, {1.32981, 1.74407, 1.74185, 5.82171, 7.63528, 0.596168, 0.61076, -1.54509, -1.54312, -3.55726e-16, 2.34612, 8.98764e-16, -4.5643, -5.98616, -8.87479, -0.799305, 11.2361, 8.32553, -2.39867, -0.245948, -0.245635, -1.64373, -5.05575, -2.15304, 2.39867, -9.13852, 0.245635, -0.754941, -0.990119, 1.90741}, {1.32981, 1.74407, 1.74185, -1.94057, -2.54509, -0.198723, -1.83228, 4.63528, 4.62937, 0, 2.34612, 0, 0.754941, 0.990119, -1.90741, 9.40601, 15.2361, 2.94793, -7.71791, -7.22223, -7.21302, -1.64373, -5.05575, -2.15304, 2.39867, 0.245948, 0.245635, -0.754941, -10.3746, 1.90741}, {1.32981, 1.74407, 1.74185, -1.94057, -2.54509, -0.198723, 0.61076, -1.54509, -1.54312, 0, -7.03835, 0, 0.754941, 0.990119, -1.90741, 1.64373, 5.05575, 2.15304, -2.39867, -0.245948, -0.245635, -6.96297, -12.032, -9.12042, 10.1609, 10.4263, 1.04052, -3.19798, 5.19026, 8.0799}, {0, -8.88178e-15, -7.02938, -1.78885, -2.34612, -2.34313, 1.78885, 6.94391e-12, 7.11845e-12, 0, 2.34612, 0, 9.36656, 12.2844, 9.3725, 0, 2.89996, 2.89626, -9.36656, -3.63625e-11, -2.89626, 0, -12.2844, -2.89626, 2.21115, 8.58691e-12, 2.89626, -2.21115, -2.89996, -8.79889e-12}, {-9.56516e-16, 1.33227e-15, 2.34313, 5.36656, 7.03835, 7.02938, 1.78885, 6.94391e-12, 7.11845e-12, -1.04189e-15, 2.34612, -4.14601e-27, 2.21115, 2.89996, -9.3725, -7.15542, 2.89996, 2.89626, -2.21115, -8.58469e-12, -2.89626, 2.66454e-15, -2.89996, -2.89626, 2.21115, -9.38447, 2.89626, -2.21115, -2.89996, -8.79889e-12}, {0, -4.44089e-16, 2.34313, -1.78885, -2.34612, -2.34313, -5.36656, -2.08419e-11, -2.13616e-11, 0, 2.34612, 0, 2.21115, 2.89996, 8.80088e-12, 7.15542, 12.2844, 12.2688, -2.21115, -8.58691e-12, -12.2688, 0, -2.89996, -2.89626, 2.21115, 8.58691e-12, 2.89626, -2.21115, -12.2844, -8.80146e-12}, {0, 1.33227e-15, 2.34313, -1.78885, -2.34612, -2.34313, 1.78885, 6.94234e-12, 7.11741e-12, 0, -7.03835, 0, 2.21115, 2.89996, 8.79702e-12, 0, 2.89996, 2.89626, -2.21115, -8.58291e-12, -2.89626, 0, -2.89996, -12.2688, 9.36656, 9.38447, 12.2688, -9.36656, -2.89996, -3.72672e-11}, {-0.596168, 7.62554, 5.82171, -1.74185, 1.74185, 1.32981, 0, 2.34313, 0, 1.54312, -1.54312, 0.61076, 8.87479, -5.97853, -4.5643, 2.15304, -5.0493, -1.64373, -0.245635, -9.12687, 2.39867, -8.32553, 11.2218, -0.799305, 0.245635, -0.245635, -2.39867, -1.90741, -0.988857, -0.754941}, {0.198723, -2.54185, -1.94057, 5.22554, -5.22554, -3.98943, -8.97618e-16, 2.34313, -3.55272e-16, 1.54312, -1.54312, 0.61076, 1.11252, 11.1562, 8.51722, 2.15304, -14.4218, -1.64373, -0.245635, 0.245635, 2.39867, -2.15304, 5.0493, 1.64373, -5.92686, 5.92686, -4.84171, -1.90741, -0.988857, -0.754941}, {0.198723, -2.54185, -1.94057, -1.74185, 1.74185, 1.32981, 0, -7.02938, 0, 1.54312, -1.54312, 0.61076, 1.90741, 0.988857, 0.754941, 9.12042, -12.0167, -6.96297, -1.04052, 10.413, 10.1609, -2.15304, 5.0493, 1.64373, 0.245635, -0.245635, -2.39867, -8.0799, 5.18364, -3.19798}, {0.198723, -2.54185, -1.94057, -1.74185, 1.74185, 1.32981, 0, 2.34313, 0, -4.62937, 4.62937, -1.83228, 1.90741, 0.988857, 0.754941, 2.15304, -5.0493, -1.64373, -0.245635, 0.245635, 2.39867, -2.94793, 15.2167, 9.40601, 7.21302, -7.21302, -7.71791, -1.90741, -10.3614, -0.754941}, {4.7272, -4.7272, -4.7272, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 1.57573, -6.30294, -10.1984, 6.30294, 1.80456e-12, 1.805e-12, 3.89543, 10.1984, 6.30294, 6.30294, -6.30294, 6.30294, -10.1984, -3.89543, 3.19078e-13, 3.19078e-13, -2.14295e-12, 3.89543, 2.13674e-12}, {-1.57573, 1.57573, 1.57573, -4.7272, -4.7272, 4.7272, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 1.57573, 6.30294, -10.1984, -6.30294, 6.30294, 6.30294, 10.1984, 3.89543, -3.193e-13, -3.193e-13, -1.80505e-12, -1.80561e-12, -3.89543, -10.1984, 6.30294, -6.30294, -2.1394e-12, 3.89543, 2.13962e-12}, {-1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -1.57573, 4.7272, 4.7272, 4.7272, 1.57573, -1.57573, 1.57573, 2.14007e-12, -3.89543, -2.14007e-12, -6.30294, -6.30294, 10.1984, 10.1984, -6.30294, -6.30294, -1.80394e-12, -1.80428e-12, -3.89543, -3.89543, 3.20188e-13, 3.193e-13, -6.30294, 10.1984, -6.30294}, {-1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.57573, -4.7272, 4.7272, -4.7272, 2.1354e-12, -3.89543, -2.14473e-12, 1.80456e-12, 1.80456e-12, 3.89543, 3.89543, -3.19522e-13, -3.19522e-13, 6.30294, -6.30294, -10.1984, -10.1984, -6.30294, 6.30294, 6.30294, 10.1984, 6.30294}, {4.817, -1.77636e-15, 4.44089e-16, -0.136178, 1.74185, 1.32981, 0.198723, -0.198723, -1.94057, 1.54312, -1.54312, 0.61076, 2.69775, -9.12042, -6.96297, -0.0773091, -1.90741, 0.754941, 0.94419, 1.04052, 10.1609, -6.09519, 8.0799, -3.19798, -1.73908, -0.245635, -2.39867, -2.15304, 2.15304, 1.64373}, {-1.60567, 0, 2.22045e-16, 0.408534, -5.22554, -3.98943, 0.198723, -0.198723, -1.94057, 1.54312, -1.54312, 0.61076, 8.57571, -2.15304, -1.64373, -0.872199, -1.11252, 8.51722, 1.73908, 0.245635, 2.39867, 0.0773091, 1.90741, -0.754941, -7.91157, 5.92686, -4.84171, -2.15304, 2.15304, 1.64373}, {-1.60567, 2.22045e-16, 0, -0.136178, 1.74185, 1.32981, -0.596168, 0.596168, 5.82171, 1.54312, -1.54312, 0.61076, 2.15304, -2.15304, -1.64373, 0.467403, -8.87479, -4.5643, 8.16175, 0.245635, 2.39867, 0.0773091, 1.90741, -0.754941, -1.73908, -0.245635, -2.39867, -8.32553, 8.32553, -0.799305}, {-1.60567, -2.22045e-16, -2.22045e-16, -0.136178, 1.74185, 1.32981, 0.198723, -0.198723, -1.94057, -4.62937, 4.62937, -1.83228, 2.15304, -2.15304, -1.64373, -0.0773091, -1.90741, 0.754941, 1.73908, 0.245635, 2.39867, 6.49998, 1.90741, -0.754941, -1.19437, -7.21302, -7.71791, -2.94793, 2.94793, 9.40601}, {7.01844, 8.88178e-16, 0, 2.33948, 2.34313, 1.78885, 7.30061e-12, 6.91762e-12, -1.78885, 0, -2.34313, 0, -9.35791, -12.2688, -9.36656, -2.89175, -2.89626, 0, 2.89175, -3.62204e-11, 9.36656, 2.89175, 12.2688, 0, -2.89175, 8.55005e-12, -2.21115, -9.02405e-12, 2.89626, 2.21115}, {-2.33948, 0, 0, -7.01844, -7.02938, -5.36656, 7.30269e-12, 6.91918e-12, -1.78885, 0, -2.34313, 0, 9.35791, -2.89626, -2.21115, -2.89175, -2.89626, 7.15542, 2.89175, -8.55271e-12, 2.21115, 2.89175, 2.89626, 0, -2.89175, 9.3725, -2.21115, -9.02662e-12, 2.89626, 2.21115}, {-2.33948, 4.44089e-16, 2.22045e-16, 2.33948, 2.34313, 1.78885, -2.19003e-11, -2.07607e-11, 5.36656, 0, -2.34313, 0, 9.02399e-12, -2.89626, -2.21115, -12.2497, -12.2688, -7.15542, 12.2497, -8.55493e-12, 2.21115, 2.89175, 2.89626, -4.44089e-16, -2.89175, 8.55405e-12, -2.21115, -9.02341e-12, 12.2688, 2.21115}, {-2.33948, 4.44089e-16, 0, 2.33948, 2.34313, 1.78885, 7.30373e-12, 6.92178e-12, -1.78885, 0, 7.02938, 0, 9.02849e-12, -2.89626, -2.21115, -2.89175, -2.89626, 0, 2.89175, -8.55627e-12, 2.21115, 12.2497, 2.89626, 0, -12.2497, -9.3725, -9.36656, -3.82428e-11, 2.89626, 9.36656}, {-1.82966, -4.6256, 4.62804, 1.3308, -1.74043, 0.137442, -1.94068, 0.198561, -0.20043, 0, 0, 1.60567, -7.722, 7.20714, 1.1872, 0.75386, 1.90585, 0.0778573, 9.40768, -2.94553, 2.95632, -0.75386, -1.90585, -6.50053, -1.64495, 2.15129, -2.1546, 2.39881, -0.245434, -1.73697}, {0.609885, 1.54187, -1.54268, -3.99239, 5.22128, -0.412327, -1.94068, 0.198561, -0.20043, 7.7358e-16, -7.91487e-17, 1.60567, -4.83836, -5.92203, 7.90769, 8.51658, 1.11161, 0.879578, 1.64495, -2.15129, 2.1546, -0.75386, -1.90585, -0.0778573, -1.64495, 2.15129, -8.57728, 2.39881, -0.245434, -1.73697}, {0.609885, 1.54187, -1.54268, 1.3308, -1.74043, 0.137442, 5.82204, -0.595682, 0.601291, 0, 0, 1.60567, -2.39881, 0.245434, 1.73697, -4.56932, 8.86756, -0.471912, -0.794587, -8.31875, 8.32532, -0.75386, -1.90585, -0.0778573, -1.64495, 2.15129, -2.1546, 2.39881, -0.245434, -8.15964}, {0.609885, 1.54187, -1.54268, 1.3308, -1.74043, 0.137442, -1.94068, 0.198561, -0.20043, 0, 0, -4.817, -2.39881, 0.245434, 1.73697, 0.75386, 1.90585, 0.0778573, 1.64495, -2.15129, 2.1546, -3.1934, -8.07331, 6.09286, -6.96814, 9.11299, -2.70437, 10.1615, -1.03968, -0.935249}, {-4.24457, 5.57441, -4.24616, -1.78937, -1.78885, -1.78885, 3.15147, -2.85327e-15, -2.92187e-16, -2.77696, 3.64699, 0.373467, 7.62038, 11.6633, 7.61705, -1.68365, 2.21115, 2.21115, -18.2502, 2.29678, -1.74951, 12.7915, -16.7991, -3.70501, 5.64429, -2.29678, 1.74951, -0.46292, -4.50793, -0.461631}, {1.41486, -1.85814, 1.41539, 5.3681, 5.36656, 5.36656, 3.15147, 5.70654e-15, 5.84374e-16, -2.77696, 3.64699, 0.373467, -5.1965, 11.9405, -5.19992, -14.2895, 2.21115, 2.21115, -5.64429, 2.29678, -1.74951, 1.68365, -2.21115, -2.21115, 16.7521, -16.8847, 0.255645, -0.46292, -4.50793, -0.461631}, {1.41486, -1.85814, 1.41539, -1.78937, -1.78885, -1.78885, -9.45441, 0, 0, -2.77696, 3.64699, 0.373467, 0.46292, 4.50793, 0.461631, 5.47381, 9.36656, 9.36656, -11.3037, 9.72932, -7.41106, 1.68365, -2.21115, -2.21115, 5.64429, -2.29678, 1.74951, 10.6449, -19.0959, -1.9555}, {1.41486, -1.85814, 1.41539, -1.78937, -1.78885, -1.78885, 3.15147, 2.85327e-15, 2.92187e-16, 8.33088, -10.941, -1.1204, 0.46292, 4.50793, 0.461631, -1.68365, 2.21115, 2.21115, -5.64429, 2.29678, -1.74951, -3.97577, 5.2214, -7.87269, 12.8018, 4.85864, 8.90493, -13.0688, -4.50793, -0.461631}, {-4.72788, -4.72653, -4.72653, 1.57551, -1.57551, -1.57551, -1.57551, 1.57551, -1.57596, -1.57596, -1.57551, 1.57596, -10.1975, 6.30204, 6.30204, -4.83169e-13, -4.92273e-13, 3.89543, 6.30148, -10.1969, 6.30439, 6.30384, 6.30204, -10.1993, 0.000556765, 3.89487, -0.000556765, 3.89543, -1.82077e-12, -1.81766e-12}, {1.57596, 1.57551, 1.57551, -4.72653, 4.72653, 4.72653, -1.57551, 1.57551, -1.57596, -1.57596, -1.57551, 1.57596, -10.1993, -6.30204, -6.30204, 6.30204, -6.30204, 10.1993, -0.000556765, -3.89487, 0.000556765, 4.86997e-13, 4.81002e-13, -3.89543, 6.30439, 10.1969, -6.30439, 3.89543, -1.81322e-12, -1.80744e-12}, {1.57596, 1.57551, 1.57551, 1.57551, -1.57551, -1.57551, 4.72653, -4.72653, 4.72788, -1.57596, -1.57551, 1.57596, -3.89543, 1.8201e-12, 1.81388e-12, -6.30204, 6.30204, 10.1975, -6.30439, -10.1969, -6.30148, 4.87441e-13, 4.99209e-13, -3.89543, 0.000556765, 3.89487, -0.000556765, 10.1993, 6.30204, -6.30384}, {1.57596, 1.57551, 1.57551, 1.57551, -1.57551, -1.57551, -1.57551, 1.57551, -1.57596, 4.72788, 4.72653, -4.72788, -3.89543, 1.81255e-12, 1.81899e-12, -4.87832e-13, -4.87388e-13, 3.89543, -0.000556765, -3.89487, 0.000556765, -6.30384, -6.30204, -10.1975, -6.30148, 10.1969, 6.30148, 10.1975, -6.30204, 6.30384}, {5.36656, -5.36656, -5.3681, 3.64699, -0.373467, 2.77696, 0, 0, -3.15147, -1.85814, -1.41539, -1.41486, -16.8847, -0.255645, -16.7521, -4.50793, 0.461631, 0.46292, 2.21115, -2.21115, 14.2895, 11.9405, 5.19992, 5.1965, -2.21115, 2.21115, -1.68365, 2.29678, 1.74951, 5.64429}, {-1.78885, 1.78885, 1.78937, -10.941, 1.1204, -8.33088, 0, 0, -3.15147, -1.85814, -1.41539, -1.41486, 4.85864, -8.90493, -12.8018, -4.50793, 0.461631, 13.0688, 2.21115, -2.21115, 1.68365, 4.50793, -0.461631, -0.46292, 5.2214, 7.87269, 3.97577, 2.29678, 1.74951, 5.64429}, {-1.78885, 1.78885, 1.78937, 3.64699, -0.373467, 2.77696, 0, 0, 9.45441, -1.85814, -1.41539, -1.41486, -2.29678, -1.74951, -5.64429, -19.0959, 1.9555, -10.6449, 9.36656, -9.36656, -5.47381, 4.50793, -0.461631, -0.46292, -2.21115, 2.21115, -1.68365, 9.72932, 7.41106, 11.3037}, {-1.78885, 1.78885, 1.78937, 3.64699, -0.373467, 2.77696, 0, 0, -3.15147, 5.57441, 4.24616, 4.24457, -2.29678, -1.74951, -5.64429, -4.50793, 0.461631, 0.46292, 2.21115, -2.21115, 1.68365, 11.6633, -7.61705, -7.62038, -16.7991, 3.70501, -12.7915, 2.29678, 1.74951, 18.2502}, {-0.570843, 5.57441, 4.24616, -0.373467, 3.64699, -0.373467, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, 1.7203, -16.7991, 3.70501, -1.74951, -2.29678, -1.74951, -9.60176, 11.6633, -7.61705, 8.17219, 2.29678, 1.74951, 2.44635, -4.50793, 0.461631, -0.226431, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, 1.1204, -10.941, 1.1204, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, -0.534693, 5.2214, 7.87269, -8.90493, 4.85864, -8.90493, -2.44635, 4.50793, -0.461631, 1.74951, 2.29678, 1.74951, 8.86902, -4.50793, 0.461631, -0.226431, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, -0.373467, 3.64699, -0.373467, -5.36656, 5.36656, -5.36656, -1.60567, 0, 0, 0.226431, -2.21115, 2.21115, -0.255645, -16.8847, -0.255645, -3.20747, 11.9405, 5.19992, 1.74951, 2.29678, 1.74951, 2.44635, -4.50793, 0.461631, 6.19624, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, -0.373467, 3.64699, -0.373467, 1.78885, -1.78885, 1.78885, 4.817, 0, 0, 0.226431, -2.21115, 2.21115, -1.74951, -2.29678, -1.74951, -2.44635, 4.50793, -0.461631, 0.988391, 9.72932, 7.41106, 3.94022, -19.0959, 1.9555, -7.38185, 9.36656, -9.36656}, {-2.4085, 2.4085, -2.4085, 0.802834, 0.802834, -0.802834, 0.0313083, 1.63555, 1.63555, -1.63698, -1.63555, -1.63555, -5.19605, -3.21134, 3.21134, -1.03106, -3.014, -1.02929, -1.15629, -7.57148, -9.55619, 7.57896, 9.55619, 7.57148, 1.03106, 1.02929, 3.014, 1.98471, -7.99361e-15, 6.66134e-15}, {0.802834, -0.802834, 0.802834, -2.4085, -2.4085, 2.4085, 0.0313083, 1.63555, 1.63555, -1.63698, -1.63555, -1.63555, -5.19605, 3.21134, -3.21134, -1.15629, -9.55619, -7.57148, -1.03106, -1.02929, -3.014, 1.03106, 3.014, 1.02929, 7.57896, 7.57148, 9.55619, 1.98471, -7.54952e-15, 7.54952e-15}, {0.802834, -0.802834, 0.802834, 0.802834, 0.802834, -0.802834, -0.0939249, -4.90664, -4.90664, -1.63698, -1.63555, -1.63555, -1.98471, 7.10543e-15, -6.66134e-15, -4.24239, -6.22534, 2.18205, -4.24239, 2.18205, -6.22534, 1.03106, 3.014, 1.02929, 1.03106, 1.02929, 3.014, 8.53262, 6.54219, 6.54219}, {0.802834, -0.802834, 0.802834, 0.802834, 0.802834, -0.802834, 0.0313083, 1.63555, 1.63555, 4.91093, 4.90664, 4.90664, -1.98471, 6.21725e-15, -6.21725e-15, -1.03106, -3.014, -1.02929, -1.03106, -1.02929, -3.014, -2.18028, 6.22534, -2.18205, -2.18028, -2.18205, 6.22534, 1.85948, -6.54219, -6.54219}, {5.36656, 5.36656, -5.36656, 0, 0, -3.15147, 3.15147, -1.39953e-15, -1.06606e-15, -1.36261, 1.78885, 1.36261, 2.21115, 2.21115, 14.2902, -3.89543, 1.72992e-15, 3.89543, -14.2902, 2.21115, -2.21115, 9.34589, -7.15542, -9.34589, 1.68428, -2.21115, 2.21115, -2.21115, -2.21115, -1.68428}, {-1.78885, -1.78885, 1.78885, 0, 0, 9.45441, 3.15147, 2.79907e-15, 2.13212e-15, -1.36261, 1.78885, 1.36261, 9.36656, 9.36656, -5.47113, -16.5013, -1.46561e-14, 3.89543, -1.68428, 2.21115, -2.21115, 3.89543, 3.90393e-15, -3.89543, 7.13474, -9.36656, -3.23931, -2.21115, -2.21115, -1.68428}, {-1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -9.45441, 0, 0, -1.36261, 1.78885, 1.36261, 2.21115, 2.21115, 1.68428, -3.89543, 0, 16.5013, 5.47113, 9.36656, -9.36656, 3.89543, 4.44089e-16, -3.89543, 1.68428, -2.21115, 2.21115, 3.23931, -9.36656, -7.13474}, {-1.78885, -1.78885, 1.78885, 0, 0, -3.15147, 3.15147, 1.39953e-15, 1.06606e-15, 4.08784, -5.36656, -4.08784, 2.21115, 2.21115, 1.68428, -3.89543, -1.72992e-15, 3.89543, -1.68428, 2.21115, -2.21115, 11.0508, 7.15542, -11.0508, 1.68428, -2.21115, 14.817, -14.817, -2.21115, -1.68428}, {1.55756, -1.55231, 6.66925, 0.74491, 1.59978, -0.633715, 1.29557, -1.29442, 0.512752, -1.52129, -0.822804, 2.34405, -3.25865, -9.01615, 6.06606, -2.52217, -0.377453, 0.149519, -6.14194, 6.13806, 0.0630791, 8.60734, 3.66867, -9.52571, 0.95966, -0.960396, -2.11409, 0.279008, 2.61703, -3.5312}, {-0.519188, 0.517438, -2.22308, -2.23473, -4.79934, 1.90115, 1.29557, -1.29442, 0.512752, -1.52129, -0.822804, 2.34405, 1.79774, -4.68678, 12.4235, -7.70445, 4.80021, -1.90149, -0.95966, 0.960396, 2.11409, 2.52217, 0.377453, -0.149519, 7.04482, 2.33082, -11.4903, 0.279008, 2.61703, -3.5312}, {-0.519188, 0.517438, -2.22308, 0.74491, 1.59978, -0.633715, -3.88671, 3.88325, -1.53826, -1.52129, -0.822804, 2.34405, -0.279008, -2.61703, 3.5312, -5.50181, -6.77658, 2.68438, 1.11709, -1.10936, 11.0064, 2.52217, 0.377453, -0.149519, 0.95966, -0.960396, -2.11409, 6.36417, 5.90824, -12.9074}, {-0.519188, 0.517438, -2.22308, 0.74491, 1.59978, -0.633715, 1.29557, -1.29442, 0.512752, 4.56387, 2.46841, -7.03214, -0.279008, -2.61703, 3.5312, -2.52217, -0.377453, 0.149519, -0.95966, 0.960396, 2.11409, 4.59892, -1.6923, 8.74282, -2.01998, -7.35952, 0.420775, -4.90327, 7.79469, -5.58221}, {-3.62807, -1.43344, -3.62246, -0.761007, 2.64249, 1.57539, -0.983272, -2.40589, -0.977465, 0.534922, -0.714416, -1.80541, 2.48984, -14.4269, -9.74136, 2.15605, -0.292457, -0.73907, 3.65363, 12.0068, 3.62554, -4.29574, 3.15012, 7.96069, 0.279456, -2.38324, 0.28432, 0.554191, 3.85691, 3.43982}, {1.20936, 0.477813, 1.20749, 2.28302, -7.92748, -4.72616, -0.983272, -2.40589, -0.977465, 0.534922, -0.714416, -1.80541, -5.39162, -5.76816, -8.26976, 6.08913, 9.33111, 3.17079, -0.279456, 2.38324, -0.28432, -2.15605, 0.292457, 0.73907, -1.86023, 0.474427, 7.50594, 0.554191, 3.85691, 3.43982}, {1.20936, 0.477813, 1.20749, -0.761007, 2.64249, 1.57539, 2.94982, 7.21767, 2.9324, 0.534922, -0.714416, -1.80541, -0.554191, -3.85691, -3.43982, 5.20007, -10.8624, -7.04061, -5.11688, 0.471983, -5.11426, -2.15605, 0.292457, 0.73907, 0.279456, -2.38324, 0.28432, -1.5855, 6.71457, 10.6614}, {1.20936, 0.477813, 1.20749, -0.761007, 2.64249, 1.57539, -0.983272, -2.40589, -0.977465, -1.60477, 2.14325, 5.41622, -0.554191, -3.85691, -3.43982, 2.15605, -0.292457, -0.73907, -0.279456, 2.38324, -0.28432, -6.99347, -1.6188, -4.09087, 3.32348, -12.9532, -6.01722, 4.48728, 13.4805, 7.34968}, {5.81909, -7.61025, 0.600985, 0.610485, 1.54108, -1.54262, 0, -2.33948, 0, 1.32921, -1.73835, 1.74295, -0.798945, -11.2048, 8.32487, -0.754601, 0.986874, 1.90678, 2.3976, 9.11407, 0.24762, -4.56224, 5.96654, -8.87857, -2.3976, 0.243842, -0.24762, -1.643, 5.04048, -2.1544}, {-1.9397, 2.53675, -0.200328, -1.83146, -4.62324, 4.62785, 0, -2.33948, 0, 1.32921, -1.73835, 1.74295, 9.40178, -15.1875, 2.95571, -0.754601, 10.3448, 1.90678, 2.3976, -0.243842, 0.24762, 0.754601, -0.986874, -1.90678, -7.71444, 7.19725, -7.21941, -1.643, 5.04048, -2.1544}, {-1.9397, 2.53675, -0.200328, 0.610485, 1.54108, -1.54262, 0, 7.01844, 0, 1.32921, -1.73835, 1.74295, 1.643, -5.04048, 2.1544, -3.19654, -5.17745, 8.07725, 10.1564, -10.3908, 1.04893, 0.754601, -0.986874, -1.90678, -2.3976, 0.243842, -0.24762, -6.95984, 11.9939, -9.12619}, {-1.9397, 2.53675, -0.200328, 0.610485, 1.54108, -1.54262, 0, -2.33948, 0, -3.98763, 5.21506, -5.22884, 1.643, -5.04048, 2.1544, -0.754601, 0.986874, 1.90678, 2.3976, -0.243842, 0.24762, 8.51339, -11.1339, -1.10547, -4.83954, -5.92048, 5.92285, -1.643, 14.3984, -2.1544}, {4.33994, -4.33994, -1.54017, 0, 0, -1.80556, -0.572575, -1.44665, 0.668413, 2.01922, 1.97175e-12, 0.623753, 1.78815, -1.78815, 8.81943, 0.707741, 1.78815, 1.40559, 4.7862, 5.78659, -4.13444, -8.78463, -1.78815, -3.9006, -2.4959, -2.43721e-12, 1.46079, -1.78815, 1.78815, -1.5972}, {-1.44665, 1.44665, 0.51339, 0, 0, 5.41667, -0.572575, -1.44665, 0.668413, 2.01922, 1.97138e-12, 0.623753, 7.57474, -7.57474, -0.456355, 2.99804, 7.57474, -1.26807, 2.4959, 2.43641e-12, -1.46079, -0.707741, -1.78815, -1.40559, -10.5728, -1.03223e-11, -1.03422, -1.78815, 1.78815, -1.5972}, {-1.44665, 1.44665, 0.51339, 0, 0, -1.80556, 1.71772, 4.33994, -2.00524, 2.01922, 1.97175e-12, 0.623753, 1.78815, -1.78815, 1.5972, 0.707741, 1.78815, 8.62781, 8.28248, -5.78659, -3.51435, -0.707741, -1.78815, -1.40559, -2.4959, -2.43721e-12, 1.46079, -9.86504, 1.78815, -4.09222}, {-1.44665, 1.44665, 0.51339, 0, 0, -1.80556, -0.572575, -1.44665, 0.668413, -6.05767, -5.91959e-12, -1.87126, 1.78815, -1.78815, 1.5972, 0.707741, 1.78815, 1.40559, 2.4959, 2.43865e-12, -1.46079, 5.07885, -7.57474, -3.45914, -2.4959, -2.43901e-12, 8.68301, 0.502145, 7.57474, -4.27086}, {5.36656, 5.36656, 5.36656, 0.373467, 0.373467, 3.64699, 1.41048e-15, 1.60567, -1.85169e-15, 1.41539, -0.190281, -1.85814, 0.255645, 0.255645, -16.8847, -0.461631, -2.44635, -4.50793, 2.21115, -6.19624, 2.21115, -5.19992, 3.20747, 11.9405, -2.21115, -0.226431, -2.21115, -1.74951, -1.74951, 2.29678}, {-1.78885, -1.78885, -1.78885, -1.1204, -1.1204, -10.941, 8.46287e-16, 1.60567, -1.11101e-15, 1.41539, -0.190281, -1.85814, 8.90493, 8.90493, 4.85864, -0.461631, -8.86902, -4.50793, 2.21115, 0.226431, 2.21115, 0.461631, 2.44635, 4.50793, -7.87269, 0.534693, 5.2214, -1.74951, -1.74951, 2.29678}, {-1.78885, -1.78885, -1.78885, 0.373467, 0.373467, 3.64699, 0, -4.817, 0, 1.41539, -0.190281, -1.85814, 1.74951, 1.74951, -2.29678, -1.9555, -3.94022, -19.0959, 9.36656, 7.38185, 9.36656, 0.461631, 2.44635, 4.50793, -2.21115, -0.226431, -2.21115, -7.41106, -0.988391, 9.72932}, {-1.78885, -1.78885, -1.78885, 0.373467, 0.373467, 3.64699, 2.82096e-16, 1.60567, -3.70338e-16, -4.24616, 0.570843, 5.57441, 1.74951, 1.74951, -2.29678, -0.461631, -2.44635, -4.50793, 2.21115, 0.226431, 2.21115, 7.61705, 9.60176, 11.6633, -3.70501, -1.7203, -16.7991, -1.74951, -8.17219, 2.29678}, {-4.24616, -4.24616, 5.57441, 3.15147, 2.92187e-16, 2.85327e-15, -1.78885, -1.78885, -1.78885, -2.778, 0.373467, 3.64699, -18.2508, -1.74951, 2.29678, -1.68428, 2.21115, 2.21115, 7.61705, 7.61705, 11.6633, 12.7963, -3.70501, -16.7991, -0.461631, -0.461631, -4.50793, 5.64494, 1.74951, -2.29678}, {1.41539, 1.41539, -1.85814, -9.45441, -5.07516e-15, -1.27584e-14, -1.78885, -1.78885, -1.78885, -2.778, 0.373467, 3.64699, -11.3065, -7.41106, 9.72932, 5.47113, 9.36656, 9.36656, 0.461631, 0.461631, 4.50793, 1.68428, -2.21115, -2.21115, 10.6504, -1.9555, -19.0959, 5.64494, 1.74951, -2.29678}, {1.41539, 1.41539, -1.85814, 3.15147, 0, 0, 5.36656, 5.36656, 5.36656, -2.778, 0.373467, 3.64699, -5.64494, -1.74951, 2.29678, -14.2902, 2.21115, 2.21115, -5.19992, -5.19992, 11.9405, 1.68428, -2.21115, -2.21115, -0.461631, -0.461631, -4.50793, 16.7569, 0.255645, -16.8847}, {1.41539, 1.41539, -1.85814, 3.15147, 2.92187e-16, 2.85327e-15, -1.78885, -1.78885, -1.78885, 8.334, -1.1204, -10.941, -5.64494, -1.74951, 2.29678, -1.68428, 2.21115, 2.21115, 0.461631, 0.461631, 4.50793, -3.97726, -7.87269, 5.2214, -13.0675, -0.461631, -4.50793, 12.8004, 8.90493, 4.85864}, {0.972456, 0.972456, -8.84811, 1.4362, 1.4362, 1.4362, -1.66806, -0.0623937, -1.66806, 0.556017, -1.04965, -2.71751, -7.11935, -7.11935, -11.1656, 0.286601, -1.69811, 0.286601, 9.13476, 0.727372, 5.08846, -2.51067, 5.89672, 10.5834, -2.46251, -0.477797, 1.58378, 1.37456, 1.37456, 5.42086}, {-0.324152, -0.324152, 2.94937, -4.30859, -4.30859, -4.30859, -1.66806, -0.0623937, -1.66806, 0.556017, -1.04965, -2.71751, -0.0779551, -0.0779551, -17.2183, 6.95885, -1.44854, 6.95885, 2.46251, 0.477797, -1.58378, -0.286601, 1.69811, -0.286601, -4.68658, 3.72081, 12.4538, 1.37456, 1.37456, 5.42086}, {-0.324152, -0.324152, 2.94937, 1.4362, 1.4362, 1.4362, 5.00419, 0.187181, 5.00419, 0.556017, -1.04965, -2.71751, -1.37456, -1.37456, -5.42086, -5.45818, -7.4429, -5.45818, 3.75912, 1.7744, -13.3813, -0.286601, 1.69811, -0.286601, -2.46251, -0.477797, 1.58378, -0.849506, 5.57317, 16.2909}, {-0.324152, -0.324152, 2.94937, 1.4362, 1.4362, 1.4362, -1.66806, -0.0623937, -1.66806, -1.66805, 3.14895, 8.15252, -1.37456, -1.37456, -5.42086, 0.286601, -1.69811, 0.286601, 2.46251, 0.477797, -1.58378, 1.01001, 2.99472, -12.0841, -8.2073, -6.22258, -4.161, 8.04681, 1.62414, 12.0931}, {3.33613, 3.33613, 13.1567, 1.4362, 1.4362, 1.4362, 0.767151, -2.38432, -2.38432, -1.0913, 2.06017, 5.33369, -6.14546, -6.14546, -2.09916, -2.72349, 1.17194, 1.17194, -2.64229, 13.859, 17.9053, 7.0887, -9.4126, -22.5067, -0.426311, -4.32174, -8.36804, 0.400674, 0.400674, -3.64562}, {-1.11204, -1.11204, -4.38557, -4.30859, -4.30859, -4.30859, 0.767151, -2.38432, -2.38432, -1.0913, 2.06017, 5.33369, 4.0475, 4.0475, 21.1879, -5.79209, 10.7092, 10.7092, 0.426311, 4.32174, 8.36804, 2.72349, -1.17194, -1.17194, 3.9389, -12.5624, -29.7028, 0.400674, 0.400674, -3.64562}, {-1.11204, -1.11204, -4.38557, 1.4362, 1.4362, 1.4362, -2.30145, 7.15295, 7.15295, -1.0913, 2.06017, 5.33369, -0.400674, -0.400674, 3.64562, -8.46827, -4.57284, -4.57284, 4.87449, 8.76992, 25.9103, 2.72349, -1.17194, -1.17194, -0.426311, -4.32174, -8.36804, 4.76589, -7.83999, -24.9804}, {-1.11204, -1.11204, -4.38557, 1.4362, 1.4362, 1.4362, 0.767151, -2.38432, -2.38432, 3.27391, -6.1805, -16.0011, -0.400674, -0.400674, 3.64562, -2.72349, 1.17194, 1.17194, 0.426311, 4.32174, 8.36804, 7.17167, 3.27624, 16.3703, -6.1711, -10.0665, -14.1128, -2.66793, 9.93794, 5.89165}, {-6.6428, 1.48026, 1.47837, 0.647646, 0.70771, -1.63632, -0.372676, 0.942791, 0.941589, -2.48924, -1.15708, 1.18752, -6.1281, -3.09572, 9.177, -0.339882, -2.04013, 0.858732, -0.785628, -4.32662, -4.3211, 10.2968, 6.66845, -5.60881, 2.27633, 0.555453, 0.554744, 3.53752, 0.264876, -2.63172}, {2.21427, -0.493421, -0.492791, -1.94294, -2.12313, 4.90895, -0.372676, 0.942791, 0.941589, -2.48924, -1.15708, 1.18752, -12.3946, 1.70881, 4.60289, 1.15082, -5.8113, -2.90762, -2.27633, -0.555453, -0.554744, 0.339882, 2.04013, -0.858732, 12.2333, 5.18378, -4.19534, 3.53752, 0.264876, -2.63172}, {2.21427, -0.493421, -0.492791, 0.647646, 0.70771, -1.63632, 1.11803, -2.82837, -2.82477, -2.48924, -1.15708, 1.18752, -3.53752, -0.264876, 2.63172, -2.93046, -4.87097, 7.404, -11.1334, 1.41823, 1.41642, 0.339882, 2.04013, -0.858732, 2.27633, 0.555453, 0.554744, 13.4945, 4.8932, -7.38181}, {2.21427, -0.493421, -0.492791, 0.647646, 0.70771, -1.63632, -0.372676, 0.942791, 0.941589, 7.46771, 3.47124, -3.56256, -3.53752, -0.264876, 2.63172, -0.339882, -2.04013, 0.858732, -2.27633, -0.555453, -0.554744, -8.51718, 4.01381, 1.11243, -0.314251, -2.27539, 7.10002, 5.02822, -3.50629, -6.39808}, {1.12186, -2.82659, -2.82659, -1.84098, -0.449088, -0.449088, 0.510215, -1.28552, 0.320147, 1.70472, 0.792411, -0.813257, 10.1017, 1.18683, 1.18683, 1.64492, 2.14409, 0.15938, -2.20929, 5.56645, -2.84093, -8.4638, -5.31374, 3.09365, 0.16843, -0.424371, 1.56034, -2.73781, 0.609518, 0.609518}, {-0.373952, 0.942198, 0.942198, 5.52295, 1.34726, 1.34726, 0.510215, -1.28552, 0.320147, 1.70472, 0.792411, -0.813257, 4.23362, -4.37831, -4.37831, -0.395942, 7.28618, -1.12121, -0.16843, 0.424371, -1.56034, -1.64492, -2.14409, -0.15938, -6.65045, -3.59401, 4.81337, -2.73781, 0.609518, 0.609518}, {-0.373952, 0.942198, 0.942198, -1.84098, -0.449088, -0.449088, -1.53064, 3.85656, -0.960441, 1.70472, 0.792411, -0.813257, 2.73781, -0.609518, -0.609518, 9.00885, 3.94045, 1.95573, 1.32738, -3.34442, -5.32914, -1.64492, -2.14409, -0.15938, 0.16843, -0.424371, 1.56034, -9.55669, -2.56013, 3.86255}, {-0.373952, 0.942198, 0.942198, -1.84098, -0.449088, -0.449088, 0.510215, -1.28552, 0.320147, -5.11416, -2.37723, 2.43977, 2.73781, -0.609518, -0.609518, 1.64492, 2.14409, 0.15938, -0.16843, 0.424371, -1.56034, -0.149109, -5.91289, -3.92817, 7.53236, 1.37198, 3.3567, -4.77867, 5.7516, -0.67107}, {0.461366, -4.35523, -1.72378, -0.132927, -0.133043, -2.07188, -0.954792, -0.955627, -0.378232, 1.24151, -0.363075, 1.87552, 0.886107, -1.09783, 10.1383, 1.34449, 1.34567, 3.0285, 5.18945, 3.20927, 1.27021, -6.31053, 0.10663, -10.5306, -1.37028, 0.613236, 0.242715, -0.3544, 1.63001, -1.85075}, {-0.153789, 1.45174, 0.574593, 0.39878, 0.399129, 6.21564, -0.954792, -0.955627, -0.378232, 1.24151, -0.363075, 1.87552, 0.969555, -7.43698, -0.447622, 5.16366, 5.16818, 4.54143, 1.37028, -0.613236, -0.242715, -1.34449, -1.34567, -3.0285, -6.33631, 2.06554, -7.25936, -0.3544, 1.63001, -1.85075}, {-0.153789, 1.45174, 0.574593, -0.132927, -0.133043, -2.07188, 2.86438, 2.86688, 1.1347, 1.24151, -0.363075, 1.87552, 0.3544, -1.63001, 1.85075, 1.8762, 1.87784, 11.316, 1.98544, -6.42021, -2.54109, -1.34449, -1.34567, -3.0285, -1.37028, 0.613236, 0.242715, -5.32043, 3.08231, -9.35282}, {-0.153789, 1.45174, 0.574593, -0.132927, -0.133043, -2.07188, -0.954792, -0.955627, -0.378232, -3.72452, 1.08923, -5.62656, 0.3544, -1.63001, 1.85075, 1.34449, 1.34567, 3.0285, 1.37028, -0.613236, -0.242715, -0.72934, -7.15265, -5.32687, -0.838575, 1.14541, 8.53023, 3.46477, 5.45251, -0.337821}, {4.44089e-16, 7.02938, 0, 1.54187, 1.54427, 0.609885, -1.74043, -1.74314, 1.3308, 0.198561, 2.542, -1.94068, -8.07331, -5.18964, -3.1934, 0.245434, 0.245817, -2.39881, 9.11299, 12.0235, -6.96814, -1.03968, -10.4138, 10.1615, -2.15129, -5.0509, 1.64495, 1.90585, -0.987441, 0.75386}, {2.77556e-17, -2.34313, 0, -4.6256, -4.63281, -1.82966, -1.74043, -1.74314, 1.3308, 0.198561, 2.542, -1.94068, -1.90585, 10.3599, -0.75386, 7.20714, 7.21837, -7.722, 2.15129, 5.0509, -1.64495, -0.245434, -0.245817, 2.39881, -2.94553, -15.2189, 9.40768, 1.90585, -0.987441, 0.75386}, {-3.60822e-16, -2.34313, -2.22045e-16, 1.54187, 1.54427, 0.609885, 5.22128, 5.22942, -3.99239, 0.198561, 2.542, -1.94068, -1.90585, 0.987441, -0.75386, -5.92203, -5.93126, -4.83836, 2.15129, 14.4234, -1.64495, -0.245434, -0.245817, 2.39881, -2.15129, -5.0509, 1.64495, 1.11161, -11.1554, 8.51658}, {-5.55112e-17, -2.34313, 0, 1.54187, 1.54427, 0.609885, -1.74043, -1.74314, 1.3308, -0.595682, -7.62599, 5.82204, -1.90585, 0.987441, -0.75386, 0.245434, 0.245817, -2.39881, 2.15129, 5.0509, -1.64495, -0.245434, 9.12668, 2.39881, -8.31875, -11.228, -0.794587, 8.86756, 5.98512, -4.56932}, {4.8128, 0, 0, 1.54178, 1.54312, 0.61076, 0.198549, 0.198723, -1.94057, -0.136059, -1.74185, 1.32981, -6.08986, -8.0799, -3.19798, -2.15116, -2.15304, 1.64373, 0.943366, -1.04052, 10.1609, 2.6954, 9.12042, -6.96297, -1.73756, 0.245635, -2.39867, -0.0772416, 1.90741, 0.754941}, {-1.60427, -2.22045e-16, 0, -4.62533, -4.62937, -1.83228, 0.198549, 0.198723, -1.94057, -0.136059, -1.74185, 1.32981, 6.49431, -1.90741, -0.754941, -2.94536, -2.94793, 9.40601, 1.73756, -0.245635, 2.39867, 2.15116, 2.15304, -1.64373, -1.19332, 7.21302, -7.71791, -0.0772416, 1.90741, 0.754941}, {-1.60427, 2.22045e-16, -2.22045e-16, 1.54178, 1.54312, 0.61076, -0.595647, -0.596168, 5.82171, -0.136059, -1.74185, 1.32981, 0.0772416, -1.90741, -0.754941, -8.31826, -8.32553, -0.799305, 8.15463, -0.245635, 2.39867, 2.15116, 2.15304, -1.64373, -1.73756, 0.245635, -2.39867, 0.466995, 8.87479, -4.5643}, {-1.60427, 0, 0, 1.54178, 1.54312, 0.61076, 0.198549, 0.198723, -1.94057, 0.408178, 5.22554, -3.98943, 0.0772416, -1.90741, -0.754941, -2.15116, -2.15304, 1.64373, 1.73756, -0.245635, 2.39867, 8.56822, 2.15304, -1.64373, -7.90467, -5.92686, -4.84171, -0.871438, 1.11252, 8.51722}, {4.91028, -4.91028, -4.91028, -1.57573, -1.57573, 1.57573, 1.57573, 1.57573, 1.57573, 1.63676, -1.63676, -4.78823, 10.2738, 6.2275, -10.2738, -3.02869e-13, -3.06644e-13, -3.89543, -6.2275, -10.2738, -10.2738, -6.54704, 6.54704, 23.0483, -0.0754334, 3.97086, 3.97086, -3.97086, 0.0754334, 3.97086}, {-1.63676, 1.63676, 1.63676, 4.7272, 4.7272, -4.7272, 1.57573, 1.57573, 1.57573, 1.63676, -1.63676, -4.78823, 10.5179, -6.62248, -10.5179, -6.30294, -6.30294, -10.1984, 0.0754334, -3.97086, -3.97086, 3.01943e-13, 3.04461e-13, 3.89543, -6.62248, 10.5179, 23.1238, -3.97086, 0.0754334, 3.97086}, {-1.63676, 1.63676, 1.63676, -1.57573, -1.57573, 1.57573, -4.7272, -4.7272, -4.7272, 1.63676, -1.63676, -4.78823, 3.97086, -0.0754334, -3.97086, 6.30294, 6.30294, -10.1984, 6.62248, -10.5179, -10.5179, 3.00389e-13, 2.99798e-13, 3.89543, -0.0754334, 3.97086, 3.97086, -10.5179, 6.62248, 23.1238}, {-1.63676, 1.63676, 1.63676, -1.57573, -1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -4.91028, 4.91028, 14.3647, 3.97086, -0.0754334, -3.97086, -2.97096e-13, -3.00426e-13, -3.89543, 0.0754334, -3.97086, -3.97086, 6.54704, -6.54704, -2.65162, 6.2275, 10.2738, -2.33207, -10.2738, -6.2275, -2.33207}, {4.24616, -5.57441, -4.24616, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, -0.373467, -3.64699, -2.778, 1.74951, -2.29678, -18.2508, -2.21115, -2.21115, -1.68428, -7.61705, -11.6633, 7.61705, 3.70501, 16.7991, 12.7963, 0.461631, 4.50793, -0.461631, -1.74951, 2.29678, 5.64494}, {-1.41539, 1.85814, 1.41539, 5.07516e-15, 1.27584e-14, -9.45441, 1.78885, 1.78885, -1.78885, -0.373467, -3.64699, -2.778, 7.41106, -9.72932, -11.3065, -9.36656, -9.36656, 5.47113, -0.461631, -4.50793, 0.461631, 2.21115, 2.21115, 1.68428, 1.9555, 19.0959, 10.6504, -1.74951, 2.29678, 5.64494}, {-1.41539, 1.85814, 1.41539, 0, 0, 3.15147, -5.36656, -5.36656, 5.36656, -0.373467, -3.64699, -2.778, 1.74951, -2.29678, -5.64494, -2.21115, -2.21115, -14.2902, 5.19992, -11.9405, -5.19992, 2.21115, 2.21115, 1.68428, 0.461631, 4.50793, -0.461631, -0.255645, 16.8847, 16.7569}, {-1.41539, 1.85814, 1.41539, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, 1.1204, 10.941, 8.334, 1.74951, -2.29678, -5.64494, -2.21115, -2.21115, -1.68428, -0.461631, -4.50793, 0.461631, 7.87269, -5.2214, -3.97726, 0.461631, 4.50793, -13.0675, -8.90493, -4.85864, 12.8004}, {-5.36656, -5.36656, 5.36656, -0.373467, -3.64699, 0.373467, -1.60567, 0, 0, 0.190281, 1.85814, 1.41539, -0.255645, 16.8847, 0.255645, 2.44635, 4.50793, -0.461631, 6.19624, -2.21115, 2.21115, -3.20747, -11.9405, -5.19992, 0.226431, 2.21115, -2.21115, 1.74951, -2.29678, -1.74951}, {1.78885, 1.78885, -1.78885, 1.1204, 10.941, -1.1204, -1.60567, 0, 0, 0.190281, 1.85814, 1.41539, -8.90493, -4.85864, 8.90493, 8.86902, 4.50793, -0.461631, -0.226431, -2.21115, 2.21115, -2.44635, -4.50793, 0.461631, -0.534693, -5.2214, -7.87269, 1.74951, -2.29678, -1.74951}, {1.78885, 1.78885, -1.78885, -0.373467, -3.64699, 0.373467, 4.817, 0, 0, 0.190281, 1.85814, 1.41539, -1.74951, 2.29678, 1.74951, 3.94022, 19.0959, -1.9555, -7.38185, -9.36656, 9.36656, -2.44635, -4.50793, 0.461631, 0.226431, 2.21115, -2.21115, 0.988391, -9.72932, -7.41106}, {1.78885, 1.78885, -1.78885, -0.373467, -3.64699, 0.373467, -1.60567, 0, 0, -0.570843, -5.57441, -4.24616, -1.74951, 2.29678, 1.74951, 2.44635, 4.50793, -0.461631, -0.226431, -2.21115, 2.21115, -9.60176, -11.6633, 7.61705, 1.7203, 16.7991, -3.70501, 8.17219, -2.29678, -1.74951}, {-1.80799, -0.0150891, -4.77555, -0.827431, 1.45271, 0.471751, -0.860099, -1.45095, 0.0849431, 1.08487, -0.00678866, -2.14855, 3.58755, -7.6127, -4.43776, 2.0859, -0.00217419, -0.688112, 3.7586, 7.59105, -2.4124, -6.42536, 0.0293288, 9.28229, -0.318207, -1.78726, 2.07263, -0.277826, 1.80186, 2.55075}, {0.602665, 0.0050297, 1.59185, 2.48229, -4.35813, -1.41525, -0.860099, -1.45095, 0.0849431, 1.08487, -0.00678866, -2.14855, -2.13283, -1.82198, -8.91816, 5.5263, 5.80162, -1.02788, 0.318207, 1.78726, -2.07263, -2.0859, 0.00217419, 0.688112, -4.65767, -1.7601, 10.6668, -0.277826, 1.80186, 2.55075}, {0.602665, 0.0050297, 1.59185, -0.827431, 1.45271, 0.471751, 2.5803, 4.35285, -0.254829, 1.08487, -0.00678866, -2.14855, 0.277826, -1.80186, -2.55075, 5.39562, -5.81301, -2.57512, -2.09245, 1.76714, -8.44004, -2.0859, 0.00217419, 0.688112, -0.318207, -1.78726, 2.07263, -4.61729, 1.82902, 11.1449}, {0.602665, 0.0050297, 1.59185, -0.827431, 1.45271, 0.471751, -0.860099, -1.45095, 0.0849431, -3.2546, 0.020366, 6.44564, 0.277826, -1.80186, -2.55075, 2.0859, -0.00217419, -0.688112, 0.318207, 1.78726, -2.07263, -4.49656, -0.0179446, -5.67929, 2.99152, -7.59809, 0.185628, 3.16257, 7.60566, 2.21098}, {1.57878, 4.35912, 1.72866, 0.141226, 1.44665, -1.44665, 1.40644, -1.11582e-18, -3.53145e-16, -1.02141, 0.00639156, 2.02287, -0.0889792, -5.77869, 8.28699, -1.91302, -1.78815, 1.78815, -6.71372, 1.79605, 0.712247, 5.99864, 1.76259, -9.87962, 1.08796, -1.79605, -0.712247, -0.475926, -0.0079004, -2.5004}, {-0.526258, -1.45304, -0.57622, -0.423679, -4.33994, 4.33994, 1.40644, -3.34745e-18, -1.05944e-15, -1.02141, 0.00639156, 2.02287, 2.58096, 5.82005, 4.80528, -7.53877, -1.78815, 1.78815, -1.08796, 1.79605, 0.712247, 1.91302, 1.78815, -1.78815, 5.17359, -1.82162, -8.80371, -0.475926, -0.0079004, -2.5004}, {-0.526258, -1.45304, -0.57622, 0.141226, 1.44665, -1.44665, -4.21932, 0, 0, -1.02141, 0.00639156, 2.02287, 0.475926, 0.0079004, 2.5004, -2.47792, -7.57474, 7.57474, 1.01707, 7.60821, 3.01713, 1.91302, 1.78815, -1.78815, 1.08796, -1.79605, -0.712247, 3.6097, -0.0334666, -10.5919}, {-0.526258, -1.45304, -0.57622, 0.141226, 1.44665, -1.44665, 1.40644, 3.34745e-18, 1.05944e-15, 3.06422, -0.0191747, -6.0686, 0.475926, 0.0079004, 2.5004, -1.91302, -1.78815, 1.78815, -1.08796, 1.79605, 0.712247, 4.01805, 7.60031, 0.516725, 0.523057, -7.58264, 5.07434, -6.10168, -0.0079004, -2.5004}, {10.941, -1.1204, -1.1204, 1.78885, -1.78885, -1.78885, -3.70338e-16, -2.82096e-16, 1.60567, 1.85814, 1.41539, -0.190281, -4.85864, 8.90493, 8.90493, -2.21115, 2.21115, 0.226431, 4.50793, -0.461631, -8.86902, -5.2214, -7.87269, 0.534693, -4.50793, 0.461631, 2.44635, -2.29678, -1.74951, -1.74951}, {-3.64699, 0.373467, 0.373467, -5.36656, 5.36656, 5.36656, -1.11101e-15, -8.46287e-16, 1.60567, 1.85814, 1.41539, -0.190281, 16.8847, 0.255645, 0.255645, -2.21115, 2.21115, -6.19624, 4.50793, -0.461631, -2.44635, 2.21115, -2.21115, -0.226431, -11.9405, -5.19992, 3.20747, -2.29678, -1.74951, -1.74951}, {-3.64699, 0.373467, 0.373467, 1.78885, -1.78885, -1.78885, 0, 0, -4.817, 1.85814, 1.41539, -0.190281, 2.29678, 1.74951, 1.74951, -9.36656, 9.36656, 7.38185, 19.0959, -1.9555, -3.94022, 2.21115, -2.21115, -0.226431, -4.50793, 0.461631, 2.44635, -9.72932, -7.41106, -0.988391}, {-3.64699, 0.373467, 0.373467, 1.78885, -1.78885, -1.78885, 1.11101e-15, 8.46287e-16, 1.60567, -5.57441, -4.24616, 0.570843, 2.29678, 1.74951, 1.74951, -2.21115, 2.21115, 0.226431, 4.50793, -0.461631, -2.44635, 16.7991, -3.70501, -1.7203, -11.6633, 7.61705, 9.60176, -2.29678, -1.74951, -8.17219}, {-5.57441, -4.24616, -4.24616, 1.78885, -1.78885, -1.78885, 2.85327e-15, 3.15147, -2.92187e-16, -3.64699, -2.778, 0.373467, -11.6633, 7.61705, 7.61705, -2.21115, -1.68428, 2.21115, -2.29678, -18.2508, -1.74951, 16.7991, 12.7963, -3.70501, 2.29678, 5.64494, 1.74951, 4.50793, -0.461631, -0.461631}, {1.85814, 1.41539, 1.41539, -5.36656, 5.36656, 5.36656, -5.70654e-15, 3.15147, 5.84374e-16, -3.64699, -2.778, 0.373467, -11.9405, -5.19992, -5.19992, -2.21115, -14.2902, 2.21115, -2.29678, -5.64494, -1.74951, 2.21115, 1.68428, -2.21115, 16.8847, 16.7569, 0.255645, 4.50793, -0.461631, -0.461631}, {1.85814, 1.41539, 1.41539, 1.78885, -1.78885, -1.78885, 0, -9.45441, 0, -3.64699, -2.778, 0.373467, -4.50793, 0.461631, 0.461631, -9.36656, 5.47113, 9.36656, -9.72932, -11.3065, -7.41106, 2.21115, 1.68428, -2.21115, 2.29678, 5.64494, 1.74951, 19.0959, 10.6504, -1.9555}, {1.85814, 1.41539, 1.41539, 1.78885, -1.78885, -1.78885, -2.85327e-15, 3.15147, 2.92187e-16, 10.941, 8.334, -1.1204, -4.50793, 0.461631, 0.461631, -2.21115, -1.68428, 2.21115, -2.29678, -5.64494, -1.74951, -5.2214, -3.97726, -7.87269, -4.85864, 12.8004, 8.90493, 4.50793, -13.0675, -0.461631}, {0.184458, 9.63611, 9.63611, 0.802834, -0.802834, 0.802834, -1.57551, 1.57551, 1.57551, 0.834161, 2.43936, 0.833693, -4.12769, 8.17399, -0.233398, 0.955079, -0.955079, -2.93979, 8.32547, -4.27918, -4.27918, -4.29172, -8.80237, -0.394979, -2.02344, -2.02286, -2.02286, 0.916356, -4.96265, -2.97794}, {-0.0614861, -3.21204, -3.21204, -2.4085, 2.4085, -2.4085, -1.57551, 1.57551, 1.57551, 0.834161, 2.43936, 0.833693, -0.670412, 17.8108, 15.8261, 7.25711, -7.25711, -9.24183, 2.02344, 2.02286, 2.02286, -0.955079, 0.955079, 2.93979, -5.36008, -11.7803, -5.35763, 0.916356, -4.96265, -2.97794}, {-0.0614861, -3.21204, -3.21204, 0.802834, -0.802834, 0.802834, 4.72653, -4.72653, -4.72653, 0.834161, 2.43936, 0.833693, -0.916356, 4.96265, 2.97794, -2.25626, 2.25626, -6.15113, 2.26938, 14.871, 14.871, -0.955079, 0.955079, 2.93979, -2.02344, -2.02286, -2.02286, -2.42029, -14.7201, -6.31271}, {-0.0614861, -3.21204, -3.21204, 0.802834, -0.802834, 0.802834, -1.57551, 1.57551, 1.57551, -2.50248, -7.31808, -2.50108, -0.916356, 4.96265, 2.97794, 0.955079, -0.955079, -2.93979, 2.02344, 2.02286, 2.02286, -0.709135, 13.8032, 15.7879, -5.23477, 1.18848, -5.23419, 7.21839, -11.2647, -9.27997}, {4.72653, -4.72653, -4.72653, 1.637, 1.63653, 1.63653, 1.57573, 1.57573, -1.57573, -1.63722, -4.78777, -1.6363, -6.62398, -10.5164, -10.5164, -3.97115, -3.97057, -0.0751443, -6.30322, -10.1981, 6.30322, 10.52, 23.1217, 6.62035, 0.000278382, 3.89515, -0.000278382, 0.076001, 3.9703, 3.9703}, {-1.57551, 1.57551, 1.57551, -4.91099, -4.90958, -4.90958, 1.57573, 1.57573, -1.57573, -1.63722, -4.78777, -1.6363, 6.22604, -10.2723, -10.2723, -10.2741, -10.2735, 6.22779, -0.000278382, -3.89515, 0.000278382, 3.97115, 3.97057, 0.0751443, 6.54916, 23.0462, 6.54493, 0.076001, 3.9703, 3.9703}, {-1.57551, 1.57551, 1.57551, 1.637, 1.63653, 1.63653, -4.7272, -4.7272, 4.7272, -1.63722, -4.78777, -1.6363, -0.076001, -3.9703, -3.9703, -10.5191, -10.5167, -6.62125, 6.30176, -10.1972, -6.30176, 3.97115, 3.97057, 0.0751443, 0.000278382, 3.89515, -0.000278382, 6.62488, 23.1214, 10.5155}, {-1.57551, 1.57551, 1.57551, 1.637, 1.63653, 1.63653, 1.57573, 1.57573, -1.57573, 4.91166, 14.3633, 4.90891, -0.076001, -3.9703, -3.9703, -3.97115, -3.97057, -0.0751443, -0.000278382, -3.89515, 0.000278382, 10.2732, -2.33146, -6.22689, -6.5477, -2.65096, -6.54639, -6.22694, -2.33264, 10.2732}, {2.2538, -2.2568, -6.95596, 1.0326, -1.0322, -0.409331, 0.623613, 1.72184, 0.682817, -0.904944, -1.44191, -2.59214, -4.47814, 4.47482, -0.722725, -2.04719, -0.852443, -0.338046, -2.33666, -9.94553, -6.44129, 5.66697, 6.62007, 10.7066, -0.157789, 3.05817, 3.71002, 0.347745, -0.346017, 2.36005}, {-0.751267, 0.752267, 2.31865, -3.09779, 3.0966, 1.22799, 0.623613, 1.72184, 0.682817, -0.904944, -1.44191, -2.59214, 2.65732, -2.66305, -11.6347, -4.54164, -7.73981, -3.06931, 0.157789, -3.05817, -3.71002, 2.04719, 0.852443, 0.338046, 3.46199, 8.8258, 14.0786, 0.347745, -0.346017, 2.36005}, {-0.751267, 0.752267, 2.31865, 1.0326, -1.0322, -0.409331, -1.87084, -5.16552, -2.04845, -0.904944, -1.44191, -2.59214, -0.347745, 0.346017, -2.36005, -6.17758, 3.27636, 1.29928, 3.16286, -6.06723, -12.9846, 2.04719, 0.852443, 0.338046, -0.157789, 3.05817, 3.71002, 3.96752, 5.42161, 12.7286}, {-0.751267, 0.752267, 2.31865, 1.0326, -1.0322, -0.409331, 0.623613, 1.72184, 0.682817, 2.71483, 4.32572, 7.77641, -0.347745, 0.346017, -2.36005, -2.04719, -0.852443, -0.338046, 0.157789, -3.05817, -3.71002, 5.05226, -2.15663, -8.93656, -4.28818, 7.18697, 5.34735, -2.14671, -7.23338, -0.371216}, {4.6308, -4.62902, -1.83569, 1.74378, -1.74182, 1.32959, 2.34612, 3.47392e-16, -3.39235e-15, -2.5463, 0.198817, -1.94149, -7.22258, 7.21305, -7.71818, -5.0554, 2.15301, -1.64347, -10.3764, -1.90726, -0.756347, 15.2406, -2.94828, 9.40942, 0.991964, 1.90726, 0.756347, 0.24744, -0.245751, 2.39981}, {-1.5436, 1.54301, 0.611898, -5.23135, 5.22547, -3.98877, 2.34612, -2.31594e-16, 2.26157e-15, -2.5463, 0.198817, -1.94149, 5.92697, -5.92628, -4.8474, -14.4399, 2.15301, -1.64347, -0.991964, -1.90726, -0.756347, 5.0554, -2.15301, 1.64347, 11.1772, 1.11199, 8.5223, 0.24744, -0.245751, 2.39981}, {-1.5436, 1.54301, 0.611898, 1.74378, -1.74182, 1.32959, -7.03835, 0, 0, -2.5463, 0.198817, -1.94149, -0.24744, 0.245751, -2.39981, -12.0305, 9.12031, -6.96183, 5.18244, -8.07929, -3.20394, 5.0554, -2.15301, 1.64347, 0.991964, 1.90726, 0.756347, 10.4326, -1.04102, 10.1658}, {-1.5436, 1.54301, 0.611898, 1.74378, -1.74182, 1.32959, 2.34612, 1.15797e-16, -1.13078e-15, 7.6389, -0.59645, 5.82447, -0.24744, 0.245751, -2.39981, -5.0554, 2.15301, -1.64347, -0.991964, -1.90726, -0.756347, 11.2298, -8.32504, -0.804126, -5.98318, 8.87456, -4.56202, -9.13703, -0.245751, 2.39981}, {7.47016e-18, 3.62803, 8.88178e-16, -1.45582, 0.0794645, -1.44142, 1.45582, 0.249439, -0.577805, -1.62092e-12, 0.88044, 2.01922, 7.62276, 1.07875, 7.54736, -2.00373e-12, -0.406547, 2.4959, -7.62276, 0.188753, 3.02542, 8.48742e-12, -3.11521, -10.5728, 1.79949, -1.18651, -0.714206, -1.79949, -1.39661, -1.78169}, {-1.75097e-16, -1.20934, 0, 4.36745, -0.238394, 4.32425, 1.45582, 0.249439, -0.577805, -1.62031e-12, 0.88044, 2.01922, 1.79949, 6.23398, 1.78169, -5.82327, -1.4043, 4.80711, -1.79949, 1.18651, 0.714206, 2.00284e-12, 0.406547, -2.4959, 1.79949, -4.70827, -8.79109, -1.79949, -1.39661, -1.78169}, {-7.62205e-17, -1.20934, 0, -1.45582, 0.0794645, -1.44142, -4.36745, -0.748316, 1.73341, -1.61907e-12, 0.88044, 2.01922, 1.79949, 1.39661, 1.78169, 5.82327, -0.724405, 8.26156, -1.79949, 6.02388, 0.714206, 2.00151e-12, 0.406547, -2.4959, 1.79949, -1.18651, -0.714206, -1.79949, -4.91837, -9.85858}, {-1.9973e-16, -1.20934, 4.44089e-16, -1.45582, 0.0794645, -1.44142, 1.45582, 0.249439, -0.577805, 4.86018e-12, -2.64132, -6.05767, 1.79949, 1.39661, 1.78169, -2.00262e-12, -0.406547, 2.4959, -1.79949, 1.18651, 0.714206, 2.00364e-12, 5.24392, -2.4959, 7.62276, -1.50437, 5.05146, -7.62276, -2.39436, 0.529529}, {4.15997e-12, 1.3684, -5.1823, 1.45582, 0.310608, -0.437518, -1.45582, 0.975521, 0.61362, 1.52817e-12, -0.829997, -1.90353, -7.62276, -1.06255, 0.155649, 1.74749e-13, -1.58974, -0.217674, 7.62276, -4.54408, -5.34818, -6.28744e-12, 4.90973, 7.83181, -1.79949, 0.642, 2.8937, 1.79949, -0.179878, 1.59442}, {-1.3859e-12, -0.456132, 1.72743, -4.36745, -0.931824, 1.31255, -1.45582, 0.975521, 0.61362, 1.52713e-12, -0.829997, -1.90353, -1.79949, 2.00441, -8.50415, 5.82327, -5.49183, -2.67215, 1.79949, -0.642, -2.8937, -1.74527e-13, 1.58974, 0.217674, -1.79949, 3.96199, 10.5078, 1.79949, -0.179878, 1.59442}, {-1.38592e-12, -0.456132, 1.72743, 1.45582, 0.310608, -0.437518, 4.36745, -2.92656, -1.84086, 1.52736e-12, -0.829997, -1.90353, -1.79949, 0.179878, -1.59442, -5.82327, -2.83217, 1.5324, 1.79949, 1.18253, -9.80343, -1.74749e-13, 1.58974, 0.217674, -1.79949, 0.642, 2.8937, 1.79949, 3.14011, 9.20856}, {-1.38431e-12, -0.456132, 1.72743, 1.45582, 0.310608, -0.437518, -1.45582, 0.975521, 0.61362, -4.57858e-12, 2.48999, 5.7106, -1.79949, 0.179878, -1.59442, 1.75415e-13, -1.58974, -0.217674, 1.79949, -0.642, -2.8937, 5.36226e-12, 3.41427, -6.69206, -7.62276, -0.600431, 4.64377, 7.62276, -4.08196, -0.860057}, {3.89774, -2.39084, -3.90175, -1.08034, -0.824783, -1.26412, 1.27484, -0.81558, 1.06845, 1.10475, 0.843417, -1.10491, 7.26269, 3.33354, 5.01139, -0.240416, 2.0276, 0.241863, -5.06919, 3.28535, -7.20207, -4.17857, -5.40127, 4.17779, -0.0301684, -0.023032, 2.92828, -2.94133, -0.0344082, 0.0450763}, {-1.29925, 0.796947, 1.30058, 3.24102, 2.47435, 3.79235, 1.27484, -0.81558, 1.06845, 1.10475, 0.843417, -1.10491, 8.13832, -3.15338, -5.24742, -5.33978, 5.28992, -4.03192, 0.0301684, 0.023032, -2.92828, 0.240416, -2.0276, -0.241863, -4.44916, -3.3967, 7.34794, -2.94133, -0.0344082, 0.0450763}, {-1.29925, 0.796947, 1.30058, -1.08034, -0.824783, -1.26412, -3.82452, 2.44674, -3.20534, 1.10475, 0.843417, -1.10491, 2.94133, 0.0344082, -0.0450763, 4.08094, 5.32673, 5.29833, 5.22716, -3.16475, -8.13062, 0.240416, -2.0276, -0.241863, -0.0301684, -0.023032, 2.92828, -7.36032, -3.40808, 4.46473}, {-1.29925, 0.796947, 1.30058, -1.08034, -0.824783, -1.26412, 1.27484, -0.81558, 1.06845, -3.31424, -2.53025, 3.31474, 2.94133, 0.0344082, -0.0450763, -0.240416, 2.0276, 0.241863, 0.0301684, 0.023032, -2.92828, 5.43741, -5.21539, -5.4442, 4.29119, 3.2761, 7.98475, -8.04069, 3.22791, -4.22871}, {-7.02938, 0, 7.99361e-15, 0, 0, -2.34462, -1.02079e-11, 1.78885, 0.00114147, -2.34313, -1.78885, 2.34348, -2.89626, 0, 12.2766, 1.26176e-11, -2.21115, 2.8967, -2.89626, -9.36656, -0.00597681, 9.3725, 9.36656, -12.2706, 2.89626, 2.21115, 0.00141093, 2.89626, 0, -2.89811}, {2.34313, 0, 4.44089e-15, 0, 0, 7.03386, -1.02099e-11, 1.78885, 0.00114147, -2.34313, -1.78885, 2.34348, -12.2688, 0, 2.89811, 5.346e-11, -9.36656, 2.89213, -2.89626, -2.21115, -0.00141093, -1.26208e-11, 2.21115, -2.8967, 12.2688, 9.36656, -9.37251, 2.89626, 0, -2.89811}, {2.34313, -4.21885e-15, 2.22045e-15, 0, 0, -2.34462, 3.06361e-11, -5.36656, -0.00342441, -2.34313, -1.78885, 2.34348, -2.89626, 5.32907e-15, 2.89811, 1.26228e-11, -2.21115, 12.2752, -12.2688, -2.21115, -0.00141093, -1.26233e-11, 2.21115, -2.8967, 2.89626, 2.21115, 0.00141093, 12.2688, 7.15542, -12.272}, {2.34313, 3.10862e-15, -3.9968e-15, 0, 0, -2.34462, -1.0211e-11, 1.78885, 0.00114147, 7.02938, 5.36656, -7.03044, -2.89626, -3.55271e-15, 2.89811, 1.26215e-11, -2.21115, 2.8967, -2.89626, -2.21115, -0.00141093, -9.3725, 2.21115, -2.8967, 2.89626, 2.21115, 9.37989, 2.89626, -7.15542, -2.90268}, {-4.72653, 4.72653, 4.72653, -0.802949, -0.802719, 0.802949, -3.21204, 3.21204, -0.0614861, 2.43948, -0.833808, 0.834046, 2.25686, 6.15053, -2.25686, 4.96279, -2.97808, -0.916498, 14.871, -14.871, 2.26938, -14.7207, 6.31331, -2.41969, -2.02286, 2.02286, -2.02344, 0.954937, -2.93965, -0.954937}, {1.57551, -1.57551, -1.57551, 2.40885, 2.40816, -2.40885, -3.21204, 3.21204, -0.0614861, 2.43948, -0.833808, 0.834046, -7.25697, 9.24169, 7.25697, 17.8109, -15.8262, -0.670554, 2.02286, -2.02286, 2.02344, -4.96279, 2.97808, 0.916498, -11.7808, 5.35809, -5.35962, 0.954937, -2.93965, -0.954937}, {1.57551, -1.57551, -1.57551, -0.802949, -0.802719, 0.802949, 9.63611, -9.63611, 0.184458, 2.43948, -0.833808, 0.834046, -0.954937, 2.93965, 0.954937, 8.17459, 0.232798, -4.12829, -4.27918, 4.27918, 8.32547, -4.96279, 2.97808, 0.916498, -2.02286, 2.02286, -2.02344, -8.80297, 0.39558, -4.29112}, {1.57551, -1.57551, -1.57551, -0.802949, -0.802719, 0.802949, -3.21204, 3.21204, -0.0614861, -7.31843, 2.50142, -2.50214, -0.954937, 2.93965, 0.954937, 4.96279, -2.97808, -0.916498, 2.02286, -2.02286, 2.02344, -11.2648, 9.28012, 7.21853, 1.18894, 5.23374, -5.23523, 13.8031, -15.7878, -0.708993}, {-4.72653, 4.72653, 4.72653, 1.57596, 1.57551, 1.57551, 1.63653, -1.63653, 1.637, -4.788, 1.63653, -1.637, -10.1993, -6.30204, -6.30204, -3.97085, 0.0754226, -3.97087, -10.5164, 10.5164, -6.62398, 23.1228, -6.62153, 10.5189, 3.9703, -3.9703, 0.076001, 3.89543, -1.81188e-12, -1.80878e-12}, {1.57551, -1.57551, -1.57551, -4.72788, -4.72653, -4.72653, 1.63653, -1.63653, 1.637, -4.788, 1.63653, -1.637, -10.1975, 6.30204, 6.30204, -10.517, 6.62153, -10.5189, -3.9703, 3.9703, -0.076001, 3.97085, -0.0754226, 3.97087, 23.1223, -10.5164, 6.62398, 3.89543, -1.81721e-12, -1.81544e-12}, {1.57551, -1.57551, -1.57551, 1.57596, 1.57551, 1.57551, -4.90958, 4.90958, -4.91099, -4.788, 1.63653, -1.637, -3.89543, 1.81677e-12, 1.81988e-12, -10.2747, -6.22661, -10.2729, -10.2723, 10.2723, 6.22604, 3.97085, -0.0754226, 3.97087, 3.9703, -3.9703, 0.076001, 23.0474, -6.54611, 6.54798}, {1.57551, -1.57551, -1.57551, 1.57596, 1.57551, 1.57551, 1.63653, -1.63653, 1.637, 14.364, -4.90958, 4.91099, -3.89543, 1.81677e-12, 1.81677e-12, -3.97085, 0.0754226, -3.97087, -3.9703, 3.9703, -0.076001, -2.33118, 6.22661, 10.2729, -2.33354, -10.2723, -6.22604, -2.65068, 6.54611, -6.54798}, {-1.1204, 1.1204, 10.941, 0, -1.60567, 0, -1.78885, 1.78885, 1.78885, 1.41539, 0.190281, 1.85814, -0.461631, 8.86902, 4.50793, 2.21115, -0.226431, -2.21115, 8.90493, -8.90493, -4.85864, -7.87269, -0.534693, -5.2214, -1.74951, 1.74951, -2.29678, 0.461631, -2.44635, -4.50793}, {0.373467, -0.373467, -3.64699, 0, 4.817, 0, -1.78885, 1.78885, 1.78885, 1.41539, 0.190281, 1.85814, -1.9555, 3.94022, 19.0959, 9.36656, -7.38185, -9.36656, 1.74951, -1.74951, 2.29678, -2.21115, 0.226431, 2.21115, -7.41106, 0.988391, -9.72932, 0.461631, -2.44635, -4.50793}, {0.373467, -0.373467, -3.64699, 0, -1.60567, 0, 5.36656, -5.36656, -5.36656, 1.41539, 0.190281, 1.85814, -0.461631, 2.44635, 4.50793, 2.21115, 6.19624, -2.21115, 0.255645, -0.255645, 16.8847, -2.21115, 0.226431, 2.21115, -1.74951, 1.74951, -2.29678, -5.19992, -3.20747, -11.9405}, {0.373467, -0.373467, -3.64699, 0, -1.60567, 0, -1.78885, 1.78885, 1.78885, -4.24616, -0.570843, -5.57441, -0.461631, 2.44635, 4.50793, 2.21115, -0.226431, -2.21115, 1.74951, -1.74951, 2.29678, -3.70501, 1.7203, 16.7991, -1.74951, 8.17219, -2.29678, 7.61705, -9.60176, -11.6633}, {-9.45441, 2.44249e-15, 1.59872e-14, -1.78885, 1.78885, 1.78885, 1.41539, -1.41539, 1.85814, -2.778, -0.373467, -3.64699, 5.47113, -9.36656, -9.36656, 0.461631, -0.461631, -4.50793, -11.3065, 7.41106, -9.72932, 10.6504, 1.9555, 19.0959, 5.64494, -1.74951, 2.29678, 1.68428, 2.21115, 2.21115}, {3.15147, -1.77636e-15, -7.10543e-15, 5.36656, -5.36656, -5.36656, 1.41539, -1.41539, 1.85814, -2.778, -0.373467, -3.64699, -14.2902, -2.21115, -2.21115, -5.19992, 5.19992, -11.9405, -5.64494, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, 16.7569, -0.255645, 16.8847, 1.68428, 2.21115, 2.21115}, {3.15147, 2.55351e-15, -3.10862e-15, -1.78885, 1.78885, 1.78885, -4.24616, 4.24616, -5.57441, -2.778, -0.373467, -3.64699, -1.68428, -2.21115, -2.21115, 7.61705, -7.61705, -11.6633, -18.2508, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, 5.64494, -1.74951, 2.29678, 12.7963, 3.70501, 16.7991}, {3.15147, 6.10623e-16, 3.9968e-15, -1.78885, 1.78885, 1.78885, 1.41539, -1.41539, 1.85814, 8.334, 1.1204, 10.941, -1.68428, -2.21115, -2.21115, 0.461631, -0.461631, -4.50793, -5.64494, 1.74951, -2.29678, -13.0675, 0.461631, 4.50793, 12.8004, -8.90493, -4.85864, -3.97726, 7.87269, -5.2214}, {0.889469, 0.890856, -5.70584, -0.741046, -0.742202, -0.293121, 1.30296, -1.03813, 0.515387, -0.265426, 2.07729, -2.12421, 4.24665, 4.25327, -0.816132, -0.694566, 2.20061, -0.274736, -6.45592, 5.80278, -5.04953, 1.75627, -10.5098, 8.77158, 1.24407, -1.65026, 2.98799, -1.28247, -1.28446, 1.98862}, {-0.29649, -0.296952, 1.90195, 2.22314, 2.2266, 0.879363, 1.30296, -1.03813, 0.515387, -0.265426, 2.07729, -2.12421, 2.46842, 2.47227, -9.5964, -5.90641, 6.35314, -2.33628, -1.24407, 1.65026, -2.98799, 0.694566, -2.20061, 0.274736, 2.30577, -9.9594, 11.4848, -1.28247, -1.28446, 1.98862}, {-0.29649, -0.296952, 1.90195, -0.741046, -0.742202, -0.293121, -3.90889, 3.1144, -1.54616, -0.265426, 2.07729, -2.12421, 1.28247, 1.28446, -1.98862, 2.26962, 5.16942, 0.897749, -0.0581089, 2.83806, -10.5958, 0.694566, -2.20061, 0.274736, 1.24407, -1.65026, 2.98799, -0.220762, -9.59361, 10.4855}, {-0.29649, -0.296952, 1.90195, -0.741046, -0.742202, -0.293121, 1.30296, -1.03813, 0.515387, 0.796277, -6.23186, 6.37263, 1.28247, 1.28446, -1.98862, -0.694566, 2.20061, -0.274736, -1.24407, 1.65026, -2.98799, 1.88052, -1.01281, -7.33305, 4.20825, 1.31855, 4.16047, -6.49431, 2.86807, -0.0729313}, {1.60243, -4.68893, 4.44089e-16, 1.23856, -0.534131, 1.50236e-16, -0.868329, 0.25394, -1.31177, 0.163908, -1.28279, 1.31177, -5.82496, 0.864798, -6.66134e-16, -0.457635, 0.346335, 1.62143, 5.20686, -3.26159, 6.86849, -0.197999, 4.78481, -6.86849, -1.73355, 2.24583, -1.62143, 0.870711, 1.27173, 0}, {-0.534143, 1.56298, -2.22045e-16, -3.71569, 1.60239, -6.76061e-16, -0.868329, 0.25394, -1.31177, 0.163908, -1.28279, 1.31177, 1.26586, -7.52364, 8.88178e-16, 3.01568, -0.669425, 6.86849, 1.73355, -2.24583, 1.62143, 0.457635, -0.346335, -1.62143, -2.38918, 7.37698, -6.86849, 0.870711, 1.27173, 0}, {-0.534143, 1.56298, 2.22045e-16, 1.23856, -0.534131, -3.00472e-16, 2.60499, -0.76182, 3.9353, 0.163908, -1.28279, 1.31177, -0.870711, -1.27173, 0, -5.41189, 2.48286, 1.62143, 3.87012, -8.49775, 1.62143, 0.457635, -0.346335, -1.62143, -1.73355, 2.24583, -1.62143, 0.215077, 6.40287, -5.24706}, {-0.534143, 1.56298, 0, 1.23856, -0.534131, 4.50708e-16, -0.868329, 0.25394, -1.31177, -0.491725, 3.84836, -3.9353, -0.870711, -1.27173, -4.44089e-16, -0.457635, 0.346335, 1.62143, 1.73355, -2.24583, 1.62143, 2.59421, -6.59825, -1.62143, -6.6878, 4.38236, -1.62143, 4.34403, 0.255965, 5.24706}, {3.16808, 2.71157e-16, -8.88178e-16, -0.300269, 1.44665, -1.44665, 0.153249, -1.44665, -0.572575, 1.20305, -1.58738e-12, 2.01922, 2.87755, -7.57474, 7.57474, 0.181727, -1.96221e-12, 2.4959, 0.502898, 7.57474, 2.99804, -4.99391, 8.31173e-12, -10.5728, -1.11589, -1.78815, -0.707741, -1.67647, 1.78815, -1.78815}, {-1.05603, 1.56152e-17, 0, 0.900808, -4.33994, 4.33994, 0.153249, -1.44665, -0.572575, 1.20305, -1.58652e-12, 2.01922, 5.90057, -1.78815, 1.78815, -0.431268, 5.78659, 4.7862, 1.11589, 1.78815, 0.707741, -0.181727, 1.9611e-12, -2.4959, -5.92808, -1.78815, -8.78463, -1.67647, 1.78815, -1.78815}, {-1.05603, -4.03605e-17, -4.44089e-16, -0.300269, 1.44665, -1.44665, -0.459746, 4.33994, 1.71772, 1.20305, -1.58802e-12, 2.01922, 1.67647, -1.78815, 1.78815, 1.3828, -5.78659, 8.28248, 5.34, 1.78815, 0.707741, -0.181727, 1.96287e-12, -2.4959, -1.11589, -1.78815, -0.707741, -6.48866, 1.78815, -9.86504}, {-1.05603, -1.63709e-17, 4.44089e-16, -0.300269, 1.44665, -1.44665, 0.153249, -1.44665, -0.572575, -3.60914, 4.76214e-12, -6.05767, 1.67647, -1.78815, 1.78815, 0.181727, -1.96221e-12, 2.4959, 1.11589, 1.78815, 0.707741, 4.04237, 1.96294e-12, -2.4959, 0.0851836, -7.57474, 5.07885, -2.28947, 7.57474, 0.502145}, {-1.48316, 4.33994, 1.33227e-15, 0.561638, 1.44665, 4.17162e-16, -0.27448, -1.03171e-12, 1.31177, -0.781545, 1.03171e-12, -1.31177, -3.55187, -5.78659, -1.77636e-15, -0.354947, -1.78815, -1.62143, 0.8261, 1.78815, -6.86849, 3.48113, 1.78815, 6.86849, 0.27182, -1.78815, 1.62143, 1.30532, 0, 0}, {0.494387, -1.44665, 2.22045e-16, -1.68492, -4.33994, 8.34324e-16, -0.27448, -1.03124e-12, 1.31177, -0.781545, 1.03124e-12, -1.31177, -3.28287, 5.78659, -8.88178e-16, 0.742973, -1.78815, -6.86849, -0.27182, 1.78815, -1.62143, 0.354947, 1.78815, 1.62143, 3.398, -1.78815, 6.86849, 1.30532, 0, 0}, {0.494387, -1.44665, -2.22045e-16, 0.561638, 1.44665, 2.78108e-16, 0.82344, 3.09443e-12, -3.9353, -0.781545, 1.03148e-12, -1.31177, -1.30532, 3.59135e-16, 0, -2.6015, -7.57474, -1.62143, -2.24937, 7.57474, -1.62143, 0.354947, 1.78815, 1.62143, 0.27182, -1.78815, 1.62143, 4.4315, -4.1259e-12, 5.24706}, {0.494387, -1.44665, 2.22045e-16, 0.561638, 1.44665, -2.78108e-16, -0.27448, -1.03171e-12, 1.31177, 2.34464, -3.09513e-12, 3.9353, -1.30532, 3.59135e-16, 0, -0.354947, -1.78815, -1.62143, -0.27182, 1.78815, -1.62143, -1.6226, 7.57474, 1.62143, -1.97473, -7.57474, 1.62143, 2.40324, 4.12684e-12, -5.24706}, {4.33994, 0.162335, 4.33994, 0, 1.38248, 0, 1.44665, 0.246581, -0.572575, -1.76997e-12, -1.57494, 2.01922, 1.78815, -7.17185, 1.78815, -1.78815, -2.01362, 0.707741, -5.78659, -1.22423, 4.7862, 1.78815, 8.3134, -8.78463, 2.1878e-12, 0.237905, -2.4959, -1.78815, 1.64195, -1.78815}, {-1.44665, -0.0541117, -1.44665, -1.48949e-15, -4.14743, -5.64752e-15, 1.44665, 0.246581, -0.572575, -1.77017e-12, -1.57494, 2.01922, 7.57474, -1.4255, 7.57474, -7.57474, -2.99995, 2.99804, -2.18708e-12, -0.237905, 2.4959, 1.78815, 2.01362, -0.707741, 9.26812e-12, 6.53768, -10.5728, -1.78815, 1.64195, -1.78815}, {-1.44665, -0.0541117, -1.44665, -2.42885e-27, 1.38248, 2.77202e-15, -4.33994, -0.739742, 1.71772, -1.76924e-12, -1.57494, 2.01922, 1.78815, -1.64195, 1.78815, -1.78815, -7.54353, 0.707741, 5.78659, -0.021458, 8.28248, 1.78815, 2.01362, -0.707741, 2.1869e-12, 0.237905, -2.4959, -1.78815, 7.94173, -9.86504}, {-1.44665, -0.0541117, -1.44665, 0, 1.38248, 0, 1.44665, 0.246581, -0.572575, 5.31045e-12, 4.72483, -6.05767, 1.78815, -1.64195, 1.78815, -1.78815, -2.01362, 0.707741, -2.18766e-12, -0.237905, 2.4959, 7.57474, 2.23007, 5.07885, 2.18802e-12, -5.292, -2.4959, -7.57474, 0.655625, 0.502145}, {-4.33994, 1.02197, -0.540949, -9.62561e-13, 0.52571, 1.09845, -1.44665, -1.05053, -0.169142, 9.72352e-13, 0.86548, -1.10962, -1.78815, -2.33158, -5.97445, 1.78815, 0.648718, -1.14869, 5.78659, 5.92175, 0.662758, -1.78815, -4.11064, 5.58719, -1.2103e-14, -1.71961, 0.0138116, 1.78815, 0.22874, 1.58064}, {1.44665, -0.340656, 0.180316, 2.88884e-12, -1.57713, -3.29535, -1.44665, -1.05053, -0.169142, 9.72241e-13, 0.86548, -1.10962, -7.57474, 1.13389, -2.30191, 7.57474, 4.85086, -0.472119, 1.11288e-14, 1.71961, -0.0138116, -1.78815, -0.648718, 1.14869, -3.90045e-12, -5.18153, 4.45231, 1.78815, 0.22874, 1.58064}, {1.44665, -0.340656, 0.180316, -9.63744e-13, 0.52571, 1.09845, 4.33994, 3.1516, 0.507427, 9.73548e-13, 0.86548, -1.10962, -1.78815, -0.22874, -1.58064, 1.78815, -1.45412, -5.54249, -5.78659, 3.08223, -0.735077, -1.78815, -0.648718, 1.14869, -1.21179e-14, -1.71961, 0.0138116, 1.78815, -3.23318, 6.01914}, {1.44665, -0.340656, 0.180316, -9.6335e-13, 0.52571, 1.09845, -1.44665, -1.05053, -0.169142, -2.91945e-12, -2.59644, 3.32887, -1.78815, -0.22874, -1.58064, 1.78815, 0.648718, -1.14869, 1.17538e-14, 1.71961, -0.0138116, -7.57474, 0.713906, 0.427423, 3.84129e-12, -3.82245, -4.37999, 7.57474, 4.43088, 2.25721}, {-4.74899, 4.74899, 3.61742, 0.497745, -0.497745, 2.77232, -2.29648, -0.854984, 1.74929, 0.215741, 2.93573, -3.3158, -4.56292, 4.56292, -13.0256, 2.22336, 1.67207, -5.58902, 10.0679, 6.43345, -7.66893, -3.08633, -13.415, 18.8522, -0.881918, -3.01351, 0.671778, 2.57194, -2.57194, 1.93632}, {1.583, -1.583, -1.20581, -1.49324, 1.49324, -8.31697, -2.29648, -0.854984, 1.74929, 0.215741, 2.93573, -3.3158, -8.90393, 8.90393, 2.88691, 11.4093, 5.092, -12.5862, 0.881918, 3.01351, -0.671778, -2.22336, -1.67207, 5.58902, -1.74488, -14.7564, 13.935, 2.57194, -2.57194, 1.93632}, {1.583, -1.583, -1.20581, 0.497745, -0.497745, 2.77232, 6.88945, 2.56495, -5.24786, 0.215741, 2.93573, -3.3158, -2.57194, 2.57194, -1.93632, 0.232383, 3.66305, -16.6783, -5.45007, 9.3455, 4.15145, -2.22336, -1.67207, 5.58902, -0.881918, -3.01351, 0.671778, 1.70898, -14.3148, 15.1995}, {1.583, -1.583, -1.20581, 0.497745, -0.497745, 2.77232, -2.29648, -0.854984, 1.74929, -0.647223, -8.80718, 9.94741, -2.57194, 2.57194, -1.93632, 2.22336, 1.67207, -5.58902, 0.881918, 3.01351, -0.671778, -8.55536, 4.65993, 10.4123, -2.8729, -1.02253, -10.4175, 11.7579, 0.847997, -5.06083}, {6.34574, -4.8337, 3.10867, 0.725317, 2.59898, -0.725317, 1.60925, -1.2258, -1.60925, -0.219319, -2.98441, 3.37079, -1.18322, -15.6, 5.07865, -2.88568, -1.69734, 2.88568, -5.81154, 4.42679, 9.70697, 3.76295, 13.635, -16.3688, -0.625449, 0.47642, -3.26998, -1.71805, 5.20411, -2.17738}, {-2.11525, 1.61123, -1.03622, -2.17595, -7.79693, 2.17595, 1.60925, -1.2258, -1.60925, -0.219319, -2.98441, 3.37079, 10.179, -11.649, 6.32227, -9.32267, 3.20588, 9.32267, 0.625449, -0.47642, 3.26998, 2.88568, 1.69734, -2.88568, 0.251825, 12.4141, -16.7531, -1.71805, 5.20411, -2.17738}, {-2.11525, 1.61123, -1.03622, 0.725317, 2.59898, -0.725317, -4.82774, 3.67741, 4.82774, -0.219319, -2.98441, 3.37079, 1.71805, -5.20411, 2.17738, -5.78695, -12.0932, 5.78695, 9.08643, -6.92136, 7.41487, 2.88568, 1.69734, -2.88568, -0.625449, 0.47642, -3.26998, -0.840773, 17.1417, -15.6605}, {-2.11525, 1.61123, -1.03622, 0.725317, 2.59898, -0.725317, 1.60925, -1.2258, -1.60925, 0.657956, 8.95322, -10.1124, 1.71805, -5.20411, 2.17738, -2.88568, -1.69734, 2.88568, 0.625449, -0.47642, 3.26998, 11.3467, -4.7476, 1.25921, -3.52672, -9.91949, -0.36871, -8.15504, 10.1073, 4.25961}, {-5.36656, 5.36656, -5.36656, -1.78885, 1.78885, 1.36261, 0, -3.15147, 0, 0, 3.15147, -3.15147, 7.15542, -7.15542, -9.34589, 2.21115, 1.68428, -1.68428, -2.21115, 18.7124, -2.21115, -2.21115, -14.2902, 14.2902, 2.21115, -6.10657, 2.21115, 0, 3.63087e-12, 3.89543}, {1.78885, -1.78885, 1.78885, 5.36656, -5.36656, -4.08784, 0, -3.15147, 0, 0, 3.15147, -3.15147, -7.15542, 7.15542, -11.0508, 2.21115, 14.2902, -1.68428, -2.21115, 6.10657, -2.21115, -2.21115, -1.68428, 1.68428, 2.21115, -18.7124, 14.817, 0, 3.63087e-12, 3.89543}, {1.78885, -1.78885, 1.78885, -1.78885, 1.78885, 1.36261, 0, 9.45441, 0, 0, 3.15147, -3.15147, -4.44089e-16, -3.63354e-12, -3.89543, 9.36656, -5.47113, -7.13474, -9.36656, 13.262, -9.36656, -2.21115, -1.68428, 1.68428, 2.21115, -6.10657, 2.21115, 0, -12.6059, 16.5013}, {1.78885, -1.78885, 1.78885, -1.78885, 1.78885, 1.36261, 0, -3.15147, 0, 0, -9.45441, 9.45441, -4.44089e-16, -3.62865e-12, -3.89543, 2.21115, 1.68428, -1.68428, -2.21115, 6.10657, -2.21115, -9.36656, 5.47113, -5.47113, 9.36656, -13.262, -3.23931, 0, 12.6059, 3.89543}, {0, -1.77636e-15, 9.45441, -1.78885, 1.36261, 1.78885, 1.78885, 1.78885, -1.78885, 0, -3.15147, 3.15147, 9.36656, -7.13474, -5.47113, 0, -3.89543, -3.6291e-12, -9.36656, -9.36656, 13.262, 0, 16.5013, -12.6059, 2.21115, 2.21115, -6.10657, -2.21115, 1.68428, -1.68428}, {3.08199e-16, 8.88178e-16, -3.15147, 5.36656, -4.08784, -5.36656, 1.78885, 1.78885, -1.78885, -3.08199e-16, -3.15147, 3.15147, 2.21115, -1.68428, 14.2902, -7.15542, -11.0508, 7.15542, -2.21115, -2.21115, 6.10657, -7.65114e-32, 3.89543, 3.62544e-12, 2.21115, 14.817, -18.7124, -2.21115, 1.68428, -1.68428}, {-3.08199e-16, 4.44089e-16, -3.15147, -1.78885, 1.36261, 1.78885, -5.36656, -5.36656, 5.36656, 3.08199e-16, -3.15147, 3.15147, 2.21115, -1.68428, 1.68428, 7.15542, -9.34589, -7.15542, -2.21115, -2.21115, 18.7124, 7.65114e-32, 3.89543, 3.62633e-12, 2.21115, 2.21115, -6.10657, -2.21115, 14.2902, -14.2902}, {-3.08199e-16, 4.44089e-16, -3.15147, -1.78885, 1.36261, 1.78885, 1.78885, 1.78885, -1.78885, -9.24597e-16, 9.45441, -9.45441, 2.21115, -1.68428, 1.68428, 0, -3.89543, -3.62776e-12, -2.21115, -2.21115, 6.10657, 1.2328e-15, 3.89543, 12.6059, 9.36656, -3.23931, -13.262, -9.36656, -5.47113, 5.47113}, {1.6947, 4.26991, -0.547096, 2.00519, -0.0353642, -0.0353642, 0.45376, 1.14328, 1.14328, -1.89405, 0.315388, -1.29028, -9.80104, 1.94447, -0.0402465, -3.03942, -1.36946, -1.36946, -1.67766, -4.22699, -6.2117, 10.6156, 0.107907, 6.53058, -0.137376, -0.346128, 1.63859, 1.78029, -1.80301, 0.181703}, {-0.5649, -1.4233, 0.182365, -6.01556, 0.106093, 0.106093, 0.45376, 1.14328, 1.14328, -1.89405, 0.315388, -1.29028, 0.479306, 7.49622, -0.911165, -4.85446, -5.94257, -5.94257, 0.137376, 0.346128, -1.63859, 3.03942, 1.36946, 1.36946, 7.43881, -1.60768, 6.79971, 1.78029, -1.80301, 0.181703}, {-0.5649, -1.4233, 0.182365, 2.00519, -0.0353642, -0.0353642, -1.36128, -3.42984, -3.42984, -1.89405, 0.315388, -1.29028, -1.78029, 1.80301, -0.181703, -11.0602, -1.228, -1.228, 2.39697, 6.03934, -2.36805, 3.03942, 1.36946, 1.36946, -0.137376, -0.346128, 1.63859, 9.35648, -3.06456, 5.34282}, {-0.5649, -1.4233, 0.182365, 2.00519, -0.0353642, -0.0353642, 0.45376, 1.14328, 1.14328, 5.68214, -0.946164, 3.87084, -1.78029, 1.80301, -0.181703, -3.03942, -1.36946, -1.36946, 0.137376, 0.346128, -1.63859, 5.29902, 7.06267, 0.639997, -8.15812, -0.204671, 1.78004, -0.0347482, -6.37613, -4.39141}, {-1.35612, -3.4307, -3.42632, -0.759405, 0.424983, -1.91868, -2.45728, -1.10819, -1.10678, 2.76464, -0.460356, 1.88336, 3.41754, -3.63876, 8.63464, 3.97604, 0.844494, 3.73968, 12.3077, 4.38905, 4.38345, -15.0346, 0.996929, -11.2731, -2.47861, 0.0437235, 0.0436678, -0.379924, 1.93883, -0.959903}, {0.45204, 1.14357, 1.14211, 2.27821, -1.27495, 5.75605, -2.45728, -1.10819, -1.10678, 2.76464, -0.460356, 1.88336, -1.42823, -6.51309, -3.60853, 13.8052, 5.27726, 8.1668, 2.47861, -0.0437235, -0.0436678, -3.97604, -0.844494, -3.73968, -13.5372, 1.88515, -7.48976, -0.379924, 1.93883, -0.959903}, {0.45204, 1.14357, 1.14211, -0.759405, 0.424983, -1.91868, 7.37184, 3.32458, 3.32034, 2.76464, -0.460356, 1.88336, 0.379924, -1.93883, 0.959903, 7.01366, -0.855437, 11.4144, 0.670454, -4.61799, -4.6121, -3.97604, -0.844494, -3.73968, -2.47861, 0.0437235, 0.0436678, -11.4385, 3.78026, -8.49333}, {0.45204, 1.14357, 1.14211, -0.759405, 0.424983, -1.91868, -2.45728, -1.10819, -1.10678, -8.29393, 1.38107, -5.65007, 0.379924, -1.93883, 0.959903, 3.97604, 0.844494, 3.73968, 2.47861, -0.0437235, -0.0436678, -5.7842, -5.41876, -8.30811, 0.559007, -1.65621, 7.71841, 9.44919, 6.3716, 3.46721}, {-2.4085, -2.4085, 2.4085, 1.63676, -1.63676, 1.63676, -0.802834, -0.802834, -0.802834, -1.63676, 1.63676, -0.0310931, -9.56255, 7.57784, -7.57784, -1.03079, 3.01551, -1.03079, 3.21134, 3.21134, 5.19605, 7.57784, -9.56255, 1.15516, 3.73035e-14, 3.64153e-14, -1.98471, 3.01551, -1.03079, 1.03079}, {0.802834, 0.802834, -0.802834, -4.91028, 4.91028, -4.91028, -0.802834, -0.802834, -0.802834, -1.63676, 1.63676, -0.0310931, -6.22684, -2.18055, 2.18055, 2.18055, 6.22684, 2.18055, -3.77476e-14, -3.68594e-14, 1.98471, 1.03079, -3.01551, 1.03079, 6.54704, -6.54704, -1.86034, 3.01551, -1.03079, 1.03079}, {0.802834, 0.802834, -0.802834, 1.63676, -1.63676, 1.63676, 2.4085, 2.4085, 2.4085, -1.63676, 1.63676, -0.0310931, -3.01551, 1.03079, -1.03079, -7.57784, 9.56255, -7.57784, -3.21134, -3.21134, 5.19605, 1.03079, -3.01551, 1.03079, 3.73035e-14, 3.64153e-14, -1.98471, 9.56255, -7.57784, 1.15516}, {0.802834, 0.802834, -0.802834, 1.63676, -1.63676, 1.63676, -0.802834, -0.802834, -0.802834, 4.91028, -4.91028, 0.0932794, -3.01551, 1.03079, -1.03079, -1.03079, 3.01551, -1.03079, -3.68594e-14, -3.68594e-14, 1.98471, -2.18055, -6.22684, 4.24213, -6.54704, 6.54704, -8.53176, 6.22684, 2.18055, 4.24213}, {-2.4085, -2.4085, 2.4085, -2.4396, 0.833927, -0.833927, -1.57573, 1.57573, 1.57573, 3.2125, -3.2125, 0.0610269, 11.7815, -5.35886, 5.35886, 4.96322, -2.97851, -0.916924, 7.25829, -9.24301, -7.25829, -17.8132, 15.8285, 0.672816, -0.955357, 2.94007, 0.955357, -2.02315, 2.02315, -2.02315}, {0.802834, 0.802834, -0.802834, 7.31879, -2.50178, 2.50178, -1.57573, 1.57573, 1.57573, 3.2125, -3.2125, 0.0610269, -1.18819, -5.23448, 5.23448, 11.2662, -9.28144, -7.21986, 0.955357, -2.94007, -0.955357, -4.96322, 2.97851, 0.916924, -13.8053, 15.7901, 0.71125, -2.02315, 2.02315, -2.02315}, {0.802834, 0.802834, -0.802834, -2.4396, 0.833927, -0.833927, 4.7272, -4.7272, -4.7272, 3.2125, -3.2125, 0.0610269, 2.02315, -2.02315, 2.02315, 14.7216, -6.31421, 2.41878, -2.25598, -6.15141, 2.25598, -4.96322, 2.97851, 0.916924, -0.955357, 2.94007, 0.955357, -14.8731, 14.8731, -2.26726}, {0.802834, 0.802834, -0.802834, -2.4396, 0.833927, -0.833927, -1.57573, 1.57573, 1.57573, -9.63749, 9.63749, -0.183081, 2.02315, -2.02315, 2.02315, 4.96322, -2.97851, -0.916924, 0.955357, -2.94007, -0.955357, -8.17456, -0.232831, 4.12826, 8.80302, -0.395637, 4.29107, 4.27979, -4.27979, -8.32609}, {-8.88178e-16, 0, 4.817, 3.64699, 0.373467, -0.373467, -1.78885, -1.78885, 1.78885, -1.85814, 1.41539, 0.190281, -19.0959, -1.9555, 3.94022, -2.29678, 1.74951, -1.74951, 9.36656, 9.36656, -7.38185, 9.72932, -7.41106, 0.988391, -2.21115, -2.21115, 0.226431, 4.50793, 0.461631, -2.44635}, {2.22045e-16, -4.44089e-16, -1.60567, -10.941, -1.1204, 1.1204, -1.78885, -1.78885, 1.78885, -1.85814, 1.41539, 0.190281, -4.50793, -0.461631, 8.86902, 4.85864, 8.90493, -8.90493, 2.21115, 2.21115, -0.226431, 2.29678, -1.74951, 1.74951, 5.2214, -7.87269, -0.534693, 4.50793, 0.461631, -2.44635}, {0, -4.44089e-16, -1.60567, 3.64699, 0.373467, -0.373467, 5.36656, 5.36656, -5.36656, -1.85814, 1.41539, 0.190281, -4.50793, -0.461631, 2.44635, -16.8847, 0.255645, -0.255645, 2.21115, 2.21115, 6.19624, 2.29678, -1.74951, 1.74951, -2.21115, -2.21115, 0.226431, 11.9405, -5.19992, -3.20747}, {-2.22045e-16, 0, -1.60567, 3.64699, 0.373467, -0.373467, -1.78885, -1.78885, 1.78885, 5.57441, -4.24616, -0.570843, -4.50793, -0.461631, 2.44635, -2.29678, 1.74951, -1.74951, 2.21115, 2.21115, -0.226431, 2.29678, -1.74951, 8.17219, -16.7991, -3.70501, 1.7203, 11.6633, 7.61705, -9.60176}, {5.57441, -4.24616, 4.24616, -1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 3.64699, -2.778, -0.373467, 11.6633, 7.61705, -7.61705, 2.21115, -1.68428, -2.21115, 2.29678, -18.2508, 1.74951, -16.7991, 12.7963, 3.70501, -2.29678, 5.64494, -1.74951, -4.50793, -0.461631, 0.461631}, {-1.85814, 1.41539, -1.41539, 5.36656, 5.36656, -5.36656, -2.85327e-15, 3.15147, 2.92187e-16, 3.64699, -2.778, -0.373467, 11.9405, -5.19992, 5.19992, 2.21115, -14.2902, -2.21115, 2.29678, -5.64494, 1.74951, -2.21115, 1.68428, 2.21115, -16.8847, 16.7569, -0.255645, -4.50793, -0.461631, 0.461631}, {-1.85814, 1.41539, -1.41539, -1.78885, -1.78885, 1.78885, 0, -9.45441, 0, 3.64699, -2.778, -0.373467, 4.50793, 0.461631, -0.461631, 9.36656, 5.47113, -9.36656, 9.72932, -11.3065, 7.41106, -2.21115, 1.68428, 2.21115, -2.29678, 5.64494, -1.74951, -19.0959, 10.6504, 1.9555}, {-1.85814, 1.41539, -1.41539, -1.78885, -1.78885, 1.78885, 0, 3.15147, 0, -10.941, 8.334, 1.1204, 4.50793, 0.461631, -0.461631, 2.21115, -1.68428, -2.21115, 2.29678, -5.64494, 1.74951, 5.2214, -3.97726, 7.87269, 4.85864, 12.8004, -8.90493, -4.50793, -13.0675, 0.461631}, {5.61089, -1.12882, 1.12882, -0.730647, 0.497098, 1.84603, 0.431092, 1.08918, -1.08918, 2.16985, -1.96255, -0.380575, 6.13753, -3.06794, -9.20083, 0.370271, -1.96075, -0.935513, 0.0545869, -6.16812, 6.16812, -9.04968, 9.81095, 2.45781, -1.77895, 1.8114, -1.8114, -3.21494, 1.07954, 1.81672}, {-1.8703, 0.376272, -0.376272, 2.19194, -1.49129, -5.53808, 0.431092, 1.08918, -1.08918, 2.16985, -1.96255, -0.380575, 10.6961, -2.58463, -0.311631, -1.3541, -6.31747, 3.42121, 1.77895, -1.8114, 1.8114, -0.370271, 1.96075, 0.935513, -10.4584, 9.6616, -0.289101, -3.21494, 1.07954, 1.81672}, {-1.8703, 0.376272, -0.376272, -0.730647, 0.497098, 1.84603, -1.29328, -3.26754, 3.26754, 2.16985, -1.96255, -0.380575, 3.21494, -1.07954, -1.81672, 3.29286, -3.94914, -8.31962, 9.26014, -3.31649, 3.31649, -0.370271, 1.96075, 0.935513, -1.77895, 1.8114, -1.8114, -11.8943, 8.92975, 3.33902}, {-1.8703, 0.376272, -0.376272, -0.730647, 0.497098, 1.84603, 0.431092, 1.08918, -1.08918, -6.50955, 5.88765, 1.14172, 3.21494, -1.07954, -1.81672, 0.370271, -1.96075, -0.935513, 1.77895, -1.8114, 1.8114, 7.11091, 0.455662, 2.4406, 1.14364, -0.176994, -9.19551, -4.93931, -3.27718, 6.17344}, {-3.9353, -0.877932, 3.73093, -2.19842e-16, -0.163745, 1.71788, -5.85173e-16, -1.31534, -0.704307, -1.31177, 1.18644, 0.230073, -1.62143, 0.495654, -7.45769, 9.95053e-16, 1.82825, -1.25284, -1.62143, 6.52549, 5.22503, 5.24706, -6.57403, 0.33255, 1.62143, -1.26412, -2.4078, 1.62143, 0.159328, 0.586185}, {1.31177, 0.292644, -1.24364, 2.59599e-16, 0.491236, -5.15363, 4.85681e-16, -1.31534, -0.704307, -1.31177, 1.18644, 0.230073, -6.86849, -1.3299, 4.38839, -2.4361e-15, 7.08962, 1.56438, -1.62143, 1.26412, 2.4078, 1.67724e-16, -1.82825, 1.25284, 6.86849, -6.0099, -3.32809, 1.62143, 0.159328, 0.586185}, {1.31177, 0.292644, -1.24364, 0, -0.163745, 1.71788, 0, 3.94603, 2.11292, -1.31177, 1.18644, 0.230073, -1.62143, -0.159328, -0.586185, 0, 2.48323, -8.12435, -6.86849, 0.0935482, 7.38238, -3.2565e-16, -1.82825, 1.25284, 1.62143, -1.26412, -2.4078, 6.86849, -4.58645, -0.334108}, {1.31177, 0.292644, -1.24364, -2.66619e-17, -0.163745, 1.71788, -2.14171e-16, -1.31534, -0.704307, 3.9353, -3.55933, -0.690219, -1.62143, -0.159328, -0.586185, 2.97685e-16, 1.82825, -1.25284, -1.62143, 1.26412, 2.4078, -5.24706, -2.99883, 6.22742, 1.62143, -0.609143, -9.27931, 1.62143, 5.4207, 3.40341}, {6.05767, -1.43278, 5.23226e-12, 0, 1.38248, 0, 0.572575, -0.389553, -1.44665, 1.44665, -1.47052, 1.44665, 2.4959, -7.82907, 2.15583e-12, -0.707741, -1.22732, 1.78815, -0.502145, 1.44939, 7.57474, -5.07885, 7.10939, -7.57474, -1.78815, 0.108825, -1.78815, -2.4959, 2.29917, -2.15583e-12}, {-2.01922, 0.477594, -1.74416e-12, -5.05799e-15, -4.14743, -2.97897e-15, 0.572575, -0.389553, -1.44665, 1.44665, -1.47052, 1.44665, 10.5728, -4.20955, 9.13225e-12, -2.99804, 0.330893, 7.57474, 1.78815, -0.108825, 1.78815, 0.707741, 1.22732, -1.78815, -7.57474, 5.99089, -7.57474, -2.4959, 2.29917, -2.15472e-12}, {-2.01922, 0.477594, -1.74438e-12, 1.98598e-15, 1.38248, 1.98598e-15, -1.71772, 1.16866, 4.33994, 1.44665, -1.47052, 1.44665, 2.4959, -2.29917, 2.15383e-12, -0.707741, -6.75722, 1.78815, 9.86504, -2.0192, 1.78815, 0.707741, 1.22732, -1.78815, -1.78815, 0.108825, -1.78815, -8.28248, 8.18124, -5.78659}, {-2.01922, 0.477594, -1.74438e-12, 0, 1.38248, 0, 0.572575, -0.389553, -1.44665, -4.33994, 4.41155, -4.33994, 2.4959, -2.29917, 2.15628e-12, -0.707741, -1.22732, 1.78815, 1.78815, -0.108825, 1.78815, 8.78463, -0.683057, -1.78815, -1.78815, -5.42108, -1.78815, -4.7862, 3.85739, 5.78659}, {-1.77636e-15, -0.577407, 6.05767, 1.31177, 0.0490665, 1.31177, 7.62271e-16, -1.57494, 2.01922, -1.31177, 1.33341, -1.31177, -6.86849, -0.49482, -4.3726, -1.62143, 1.88609, -4.11733, -4.66294e-15, 8.00861, -8.07689, 6.86849, -7.21973, 9.36439, 1.55431e-15, -1.70883, 1.11022e-15, 1.62143, 0.298554, -0.874465}, {-2.22045e-16, 0.192469, -2.01922, -3.9353, -0.147199, -3.9353, 5.0818e-16, -1.57494, 2.01922, -1.31177, 1.33341, -1.31177, -1.62143, -1.06843, 8.95135, -1.62143, 8.18587, -12.1942, -2.22045e-16, 1.70883, 1.11022e-15, 1.62143, -1.88609, 4.11733, 5.24706, -7.04247, 5.24706, 1.62143, 0.298554, -0.874465}, {0, 0.192469, -2.01922, 1.31177, 0.0490665, 1.31177, 7.62271e-16, 4.72483, -6.05767, -1.31177, 1.33341, -1.31177, -1.62143, -0.298554, 0.874465, -6.86849, 1.68982, -9.36439, 0, 0.938958, 8.07689, 1.62143, -1.88609, 4.11733, -4.44089e-16, -1.70883, -4.44089e-16, 6.86849, -5.03508, 4.3726}, {-2.22045e-16, 0.192469, -2.01922, 1.31177, 0.0490665, 1.31177, 1.52454e-15, -1.57494, 2.01922, 3.9353, -4.00023, 3.9353, -1.62143, -0.298554, 0.874465, -1.62143, 1.88609, -4.11733, -1.55431e-15, 1.70883, -1.33227e-15, 1.62143, -2.65597, 12.1942, -5.24706, -1.9051, -5.24706, 1.62143, 6.59833, -8.95135}, {5.62183, 1.10117, 1.0932, -0.543248, 1.37255, -0.969804, 0.418614, -1.05765, -1.05825, 1.99858, 0.0521603, 2.39245, 5.16081, -6.73306, 5.52839, 0.154056, -0.389233, 2.50681, 0.12443, 5.99166, 5.99148, -8.14837, 0.180592, -12.0766, -1.79889, -1.76104, -1.75849, -2.98781, 1.24286, -1.64917}, {-1.87394, -0.367057, -0.364401, 1.62974, -4.11765, 2.90941, 0.418614, -1.05765, -1.05825, 1.99858, 0.0521603, 2.39245, 10.4836, 0.225367, 3.10677, -1.5204, 3.84139, 6.7398, 1.79889, 1.76104, 1.75849, -0.154056, 0.389233, -2.50681, -9.79319, -1.96968, -11.3283, -2.98781, 1.24286, -1.64917}, {-1.87394, -0.367057, -0.364401, -0.543248, 1.37255, -0.969804, -1.25584, 3.17296, 3.17474, 1.99858, 0.0521603, 2.39245, 2.98781, -1.24286, 1.64917, 2.32705, -5.87944, 6.38603, 9.29466, 3.22927, 3.2161, -0.154056, 0.389233, -2.50681, -1.79889, -1.76104, -1.75849, -10.9821, 1.03422, -11.219}, {-1.87394, -0.367057, -0.364401, -0.543248, 1.37255, -0.969804, 0.418614, -1.05765, -1.05825, -5.99573, -0.156481, -7.17736, 2.98781, -1.24286, 1.64917, 0.154056, -0.389233, 2.50681, 1.79889, 1.76104, 1.75849, 7.34172, 1.85746, -1.04921, 0.374107, -7.25124, 2.12073, -4.66227, 5.47348, 2.58382}, {1.30457, 0.988495, -4.07489, 1.69843, -1.02425, 0.473793, -0.0497917, 1.38543, -0.379098, -1.21378, -0.0316781, -1.45299, -8.35558, 5.77034, -4.15976, -2.03783, -0.446439, -0.117049, 0.798227, -6.84692, 0.306038, 6.89295, 0.573151, 5.92901, -0.59906, 1.3052, 1.21036, 1.56186, -1.67333, 2.26459}, {-0.434858, -0.329498, 1.3583, -5.09529, 3.07276, -1.42138, -0.0497917, 1.38543, -0.379098, -1.21378, -0.0316781, -1.45299, 0.17757, 2.99132, -7.69777, -1.83866, -5.98816, 1.39934, 0.59906, -1.3052, -1.21036, 2.03783, 0.446439, 0.117049, 4.25606, 1.43192, 7.02232, 1.56186, -1.67333, 2.26459}, {-0.434858, -0.329498, 1.3583, 1.69843, -1.02425, 0.473793, 0.149375, -4.15629, 1.1373, -1.21378, -0.0316781, -1.45299, -1.56186, 1.67333, -2.26459, -8.83155, 3.65057, -2.01222, 2.33849, 0.0127912, -6.64354, 2.03783, 0.446439, 0.117049, -0.59906, 1.3052, 1.21036, 6.41699, -1.54662, 8.07655}, {-0.434858, -0.329498, 1.3583, 1.69843, -1.02425, 0.473793, -0.0497917, 1.38543, -0.379098, 3.64134, 0.0950343, 4.35897, -1.56186, 1.67333, -2.26459, -2.03783, -0.446439, -0.117049, 0.59906, -1.3052, -1.21036, 3.77726, 1.76443, -5.31614, -7.39278, 5.40222, -0.684818, 1.76103, -7.21505, 3.78098}, {-3.43097, 1.35687, -3.43142, 0.931473, 0.558277, -1.41184, -0.847096, 2.35716, -0.851503, -1.22803, -2.46315, 1.11954, -6.29089, -2.36411, 5.97866, -0.104296, -3.60368, 2.79764, 3.02181, -11.7832, 3.0447, 5.01642, 13.4563, -7.27579, 0.366568, 2.35455, 0.361307, 2.565, 0.131007, -0.331307}, {1.14366, -0.45229, 1.14381, -2.79442, -1.67483, 4.23552, -0.847096, 2.35716, -0.851503, -1.22803, -2.46315, 1.11954, -7.13962, 1.67815, -4.24392, 3.28409, -13.0323, 6.20366, -0.366568, -2.35455, -0.361307, 0.104296, 3.60368, -2.79764, 5.2787, 12.2071, -4.11684, 2.565, 0.131007, -0.331307}, {1.14366, -0.45229, 1.14381, 0.931473, 0.558277, -1.41184, 2.54129, -7.07148, 2.55451, -1.22803, -2.46315, 1.11954, -2.565, -0.131007, 0.331307, -3.83019, -5.83679, 8.445, -4.94119, -0.545391, -4.93653, 0.104296, 3.60368, -2.79764, 0.366568, 2.35455, 0.361307, 7.47713, 9.9836, -4.80945}, {1.14366, -0.45229, 1.14381, 0.931473, 0.558277, -1.41184, -0.847096, 2.35716, -0.851503, 3.6841, 7.38945, -3.35861, -2.565, -0.131007, 0.331307, -0.104296, -3.60368, 2.79764, -0.366568, -2.35455, -0.361307, -4.47033, 5.41284, -7.37287, -3.35932, 0.121443, 6.00866, 5.95338, -9.29764, 3.0747}, {5.0671, -2.00529, 0.25185, -0.295203, -1.90215, -0.29354, 1.14353, -0.452546, 1.14392, 0.840709, 1.68627, -0.766433, 3.63346, 9.13356, 1.64076, -1.04859, 2.91057, -1.05113, -3.89983, 1.54334, -5.88589, -2.31425, -9.65564, 4.11686, -0.674283, 0.266845, 1.3102, -2.45265, -1.52496, -0.466604}, {-1.68903, 0.668429, -0.0839499, 0.885608, 5.70645, 0.880621, 1.14353, -0.452546, 1.14392, 0.840709, 1.68627, -0.766433, 9.20879, -1.14875, 0.802403, -5.6227, 4.72075, -5.62682, 0.674283, -0.266845, -1.3102, 1.04859, -2.91057, 1.05113, -4.03712, -6.47823, 4.37593, -2.45265, -1.52496, -0.466604}, {-1.68903, 0.668429, -0.0839499, -0.295203, -1.90215, -0.29354, -3.43058, 1.35764, -3.43177, 0.840709, 1.68627, -0.766433, 2.45265, 1.52496, 0.466604, 0.132224, 10.5192, 0.123031, 7.43042, -2.94056, -0.974399, 1.04859, -2.91057, 1.05113, -0.674283, 0.266845, 1.3102, -5.81549, -8.27004, 2.59913}, {-1.68903, 0.668429, -0.0839499, -0.295203, -1.90215, -0.29354, 1.14353, -0.452546, 1.14392, -2.52213, -5.0588, 2.2993, 2.45265, 1.52496, 0.466604, -1.04859, 2.91057, -1.05113, 0.674283, -0.266845, -1.3102, 7.80472, -5.58428, 1.38693, 0.506528, 7.87545, 2.48436, -7.02676, 0.285222, -5.04229}, {-7.02938, 6.21725e-15, 4.44089e-16, -1.54298, 0.610212, -1.54318, 1.7461, 1.33161, 1.74203, -2.54625, -1.94182, -0.198851, 5.18286, -3.19511, 8.08019, -0.25107, -2.40023, -0.245794, -12.0389, -6.97241, -9.12139, 10.4361, 10.1675, 1.0412, 5.05456, 1.64596, 2.15327, 0.989039, 0.754264, -1.90748}, {2.34313, -1.77636e-15, -1.22125e-15, 4.62893, -1.83064, 4.62954, 1.7461, 1.33161, 1.74203, -2.54625, -1.94182, -0.198851, -10.3615, -0.754264, 1.90748, -7.23545, -7.72668, -7.21392, -5.05456, -1.64596, -2.15327, 0.25107, 2.40023, 0.245794, 15.2395, 9.41326, 2.94867, 0.989039, 0.754264, -1.90748}, {2.34313, -2.22045e-16, -1.11022e-16, -1.54298, 0.610212, -1.54318, -5.23829, -3.99484, -5.22609, -2.54625, -1.94182, -0.198851, -0.989039, -0.754264, 1.90748, 5.92083, -4.84108, 5.92693, -14.4271, -1.64596, -2.15327, 0.25107, 2.40023, 0.245794, 5.05456, 1.64596, 2.15327, 11.174, 8.52156, -1.11207}, {2.34313, -1.11022e-15, -3.05311e-16, -1.54298, 0.610212, -1.54318, 1.7461, 1.33161, 1.74203, 7.63874, 5.82547, 0.596554, -0.989039, -0.754264, 1.90748, -0.25107, -2.40023, -0.245794, -5.05456, -1.64596, -2.15327, -9.12143, 2.40023, 0.245794, 11.2265, -0.794885, 8.32599, -5.99534, -4.57219, -8.8756}, {2.66454e-15, 3.55271e-15, -4.817, -1.54262, 0.610485, -1.54315, -0.200328, -1.9397, -0.198633, 1.74295, 1.32921, 0.136117, 8.07725, -3.19654, 6.09533, 2.1544, 1.643, 2.15296, 1.04893, 10.1564, -0.944658, -9.12619, -6.95984, -2.69743, -0.24762, -2.3976, 1.73919, -1.90678, 0.754601, 0.0772744}, {1.55431e-15, 8.88178e-16, 1.60567, 4.62785, -1.83146, 4.62946, -0.200328, -1.9397, -0.198633, 1.74295, 1.32921, 0.136117, 1.90678, -0.754601, -6.49995, 2.95571, 9.40178, 2.9475, 0.24762, 2.3976, -1.73919, -2.1544, -1.643, -2.15296, -7.21941, -7.71444, 1.19472, -1.90678, 0.754601, 0.0772744}, {2.22045e-16, 2.22045e-16, 1.60567, -1.54262, 0.610485, -1.54315, 0.600985, 5.81909, 0.5959, 1.74295, 1.32921, 0.136117, 1.90678, -0.754601, -0.0772744, 8.32487, -0.798945, 8.32557, 0.24762, 2.3976, -8.16186, -2.1544, -1.643, -2.15296, -0.24762, -2.3976, 1.73919, -8.87857, -4.56224, -0.467193}, {-1.33227e-15, -8.88178e-16, 1.60567, -1.54262, 0.610485, -1.54315, -0.200328, -1.9397, -0.198633, -5.22884, -3.98763, -0.408351, 1.90678, -0.754601, -0.0772744, 2.1544, 1.643, 2.15296, 0.24762, 2.3976, -1.73919, -2.1544, -1.643, -8.57564, 5.92285, -4.83954, 7.9118, -1.10547, 8.51339, 0.871807}, {5.74294, 0.795668, -0.78877, 0.30138, -0.761926, 0.76354, -0.6496, 1.64227, 0.697377, 2.26253, -0.61512, -1.72384, 0.788176, 4.31733, -4.32294, 0.430423, -1.08816, -1.80579, 5.76757, -8.2712, -3.9765, -9.48055, 3.54864, 8.70115, -3.16917, 1.70212, 1.187, -1.9937, -1.26962, 1.26878}, {-1.91431, -0.265223, 0.262923, -0.904139, 2.28578, -2.29062, -0.6496, 1.64227, 0.697377, 2.26253, -0.61512, -1.72384, 9.65095, 2.33052, -2.32047, 3.02882, -7.65724, -4.5953, 3.16917, -1.70212, -1.187, -0.430423, 1.08816, 1.80579, -12.2193, 4.1626, 8.08236, -1.9937, -1.26962, 1.26878}, {-1.91431, -0.265223, 0.262923, 0.30138, -0.761926, 0.76354, 1.9488, -4.9268, -2.09213, 2.26253, -0.61512, -1.72384, 1.9937, 1.26962, -1.26878, -0.775096, 1.95954, -4.85995, 10.8264, -0.641232, -2.23869, -0.430423, 1.08816, 1.80579, -3.16917, 1.70212, 1.187, -11.0438, 1.19086, 8.16414}, {-1.91431, -0.265223, 0.262923, 0.30138, -0.761926, 0.76354, -0.6496, 1.64227, 0.697377, -6.7876, 1.84536, 5.17152, 1.9937, 1.26962, -1.26878, 0.430423, -1.08816, -1.80579, 3.16917, -1.70212, -1.187, 7.22683, 2.14905, 0.7541, -4.37469, 4.74982, -1.86717, 0.604703, -7.8387, -1.52073}, {8.88178e-16, 6.00487, 0.829413, -3.96116e-16, 2.00162, -0.810615, 1.31177, 1.30033, 0.316508, -1.31177, -1.30033, 0.770578, 2.44249e-15, -8.00649, 4.58617, -1.62143, -4.08144, 0.61075, -6.86849, -4.33448, -1.31552, 6.86849, 9.28277, -3.69306, 1.62143, -0.866843, 0.0494889, -8.88178e-16, -6.66134e-16, -1.34371}, {4.44089e-16, -2.00162, -0.276471, -2.97087e-15, -6.00487, 2.43185, 1.31177, 1.30033, 0.316508, -1.31177, -1.30033, 0.770578, -2.66454e-15, 8.00649, 2.4496, -6.86849, -9.28277, -0.655284, -1.62143, 0.866843, -0.0494889, 1.62143, 4.08144, -0.61075, 6.86849, 4.33448, -3.03282, 1.55431e-15, 1.33227e-15, -1.34371}, {-2.22045e-16, -2.00162, -0.276471, 1.38641e-15, 2.00162, -0.810615, -3.9353, -3.901, -0.949525, -1.31177, -1.30033, 0.770578, -1.33227e-15, -1.11022e-15, 1.34371, -1.62143, -12.0879, 3.85321, -1.62143, 8.87333, 1.0564, 1.62143, 4.08144, -0.61075, 1.62143, -0.866843, 0.0494889, 5.24706, 5.20133, -4.42602}, {-6.66134e-16, -2.00162, -0.276471, -1.18835e-15, 2.00162, -0.810615, 1.31177, 1.30033, 0.316508, 3.9353, 3.901, -2.31173, 2.22045e-15, 2.66454e-15, 1.34371, -1.62143, -4.08144, 0.61075, -1.62143, 0.866843, -0.0494889, 1.62143, 12.0879, 0.495134, 1.62143, -8.87333, 3.29195, -5.24706, -5.20133, -2.60975}, {-1.70622, 4.31352, 1.8317, 8.44721e-17, 1.1641e-15, 1.08709, -2.01922, 1.65815e-12, 0.375548, 1.45048, 1.43784, -0.852066, -0.702999, 1.77727, -4.93735, 2.4959, -2.05102e-12, -1.80792, 9.86978, 1.77727, -1.21169, -8.29783, -5.75136, 5.21618, -1.7929, -1.77727, -0.290501, 0.702999, -1.77727, 0.589009}, {0.568738, -1.43784, -0.610568, -2.80914e-15, -1.1641e-15, -3.26126, -2.01922, 1.65896e-12, 0.375548, 1.45048, 1.43784, -0.852066, -2.97795, 7.52863, 1.85326, 10.5728, -8.68691e-12, -3.31011, 1.7929, 1.77727, 0.290501, -2.4959, 2.05143e-12, 1.80792, -7.59483, -7.52863, 3.11776, 0.702999, -1.77727, 0.589009}, {0.568738, -1.43784, -0.610568, 0, 0, 1.08709, 6.05767, -4.97324e-12, -1.12664, 1.45048, 1.43784, -0.852066, -0.702999, 1.77727, -0.589009, 2.4959, -2.04909e-12, -6.15626, -0.482057, 7.52863, 2.73277, -2.4959, 2.04944e-12, 1.80792, -1.7929, -1.77727, -0.290501, -5.09894, -7.52863, 3.99727}, {0.568738, -1.43784, -0.610568, 0, 0, 1.08709, -2.01922, 1.6563e-12, 0.375548, -4.35145, -4.31352, 2.5562, -0.702999, 1.77727, -0.589009, 2.4959, -2.04731e-12, -1.80792, 1.7929, 1.77727, 0.290501, -4.77085, 5.75136, 4.25019, -1.7929, -1.77727, -4.63885, 8.77989, -1.77727, -0.913184}, {1.27077, -1.27077, -5.5547, 1.35703, 0.9861, 0.537103, -0.781872, 0.781872, -0.309461, -0.151563, -2.19156, -2.07921, -6.58189, -5.68687, -5.10097, -0.710928, -2.18533, -0.281381, 4.61752, -4.61752, -0.668306, 1.31718, 10.9516, 8.59822, -1.49003, 1.49003, 1.90615, 1.15379, 1.74247, 2.95256}, {-0.42359, 0.42359, 1.85157, -4.07108, -2.9583, -1.61131, -0.781872, 0.781872, -0.309461, -0.151563, -2.19156, -2.07921, 0.540572, -3.43683, -10.3588, 2.41656, -5.31282, 0.956461, 1.49003, -1.49003, -1.90615, 0.710928, 2.18533, 0.281381, -0.883782, 10.2563, 10.223, 1.15379, 1.74247, 2.95256}, {-0.42359, 0.42359, 1.85157, 1.35703, 0.9861, 0.537103, 2.34562, -2.34562, 0.928382, -0.151563, -2.19156, -2.07921, -1.15379, -1.74247, -2.95256, -6.13903, -6.12973, -2.42979, 3.18439, -3.18439, -9.31242, 0.710928, 2.18533, 0.281381, -1.49003, 1.49003, 1.90615, 1.76004, 10.5087, 11.2694}, {-0.42359, 0.42359, 1.85157, 1.35703, 0.9861, 0.537103, -0.781872, 0.781872, -0.309461, 0.454689, 6.57469, 6.23763, -1.15379, -1.74247, -2.95256, -0.710928, -2.18533, -0.281381, 1.49003, -1.49003, -1.90615, 2.40529, 0.490973, -7.12489, -6.91814, -2.45437, -0.242264, 4.28128, -1.38502, 4.1904}, {2.56157, 0.777047, 3.89096, 1.32901, 0.581011, 0.152782, -0.565397, -1.62691, -0.0938093, 0.0902443, 1.30491, 1.23801, -5.90336, -2.72205, 0.803187, -0.943878, 1.2928, -0.0728941, 4.01589, 8.83876, 2.09436, 0.5829, -6.51244, -4.87916, -1.7543, -2.33113, -1.71912, 0.587321, 0.398009, -1.41431}, {-0.853857, -0.259016, -1.29699, -3.98703, -1.74303, -0.458346, -0.565397, -1.62691, -0.0938093, 0.0902443, 1.30491, 1.23801, 2.82811, 0.638054, 6.60226, 1.31771, 7.80043, 0.302343, 1.7543, 2.33113, 1.71912, 0.943878, -1.2928, 0.0728941, -2.11527, -7.55078, -6.67117, 0.587321, 0.398009, -1.41431}, {-0.853857, -0.259016, -1.29699, 1.32901, 0.581011, 0.152782, 1.69619, 4.88072, 0.281428, 0.0902443, 1.30491, 1.23801, -0.587321, -0.398009, 1.41431, -6.25992, -1.03125, -0.684022, 5.16973, 3.36719, 6.90706, 0.943878, -1.2928, 0.0728941, -1.7543, -2.33113, -1.71912, 0.226344, -4.82164, -6.36637}, {-0.853857, -0.259016, -1.29699, 1.32901, 0.581011, 0.152782, -0.565397, -1.62691, -0.0938093, -0.270733, -3.91473, -3.71404, -0.587321, -0.398009, 1.41431, -0.943878, 1.2928, -0.0728941, 1.7543, 2.33113, 1.71912, 4.35931, -0.256736, 5.26084, -7.07034, -4.65518, -2.33025, 2.84891, 6.90564, -1.03908}, {4.07496e-12, -2.19419, -6.05767, 4.84843e-16, 1.35003, -1.83833e-15, -1.44665, -1.05122, -0.572575, 1.44665, -1.0302, -1.44665, 1.67644e-12, -7.97291, -2.4959, 1.78815, -0.369344, 0.707741, 7.57474, 4.60023, 0.502145, -7.57474, 4.49015, 5.07885, -1.78815, -0.395328, 1.78815, -1.67844e-12, 2.57279, 2.4959}, {-1.3598e-12, 0.731398, 2.01922, -2.90906e-15, -4.05009, 4.93928e-15, -1.44665, -1.05122, -0.572575, 1.44665, -1.0302, -1.44665, 7.11964e-12, -5.49838, -10.5728, 7.57474, 3.83556, 2.99804, 1.78815, 0.395328, -1.78815, -1.78815, 0.369344, -0.707741, -7.57474, 3.72548, 7.57474, -1.67977e-12, 2.57279, 2.4959}, {-1.36091e-12, 0.731398, 2.01922, 0, 1.35003, 0, 4.33994, 3.15367, 1.71772, 1.44665, -1.0302, -1.44665, 1.68221e-12, -2.57279, -2.4959, 1.78815, -5.76946, 0.707741, 1.78815, -2.53026, -9.86504, -1.78815, 0.369344, -0.707741, -1.78815, -0.395328, 1.78815, -5.78659, 6.6936, 8.28248}, {-1.36047e-12, 0.731398, 2.01922, -4.84843e-16, 1.35003, 4.84843e-16, -1.44665, -1.05122, -0.572575, -4.33994, 3.09061, 4.33994, 1.68221e-12, -2.57279, -2.4959, 1.78815, -0.369344, 0.707741, 1.78815, 0.395328, -1.78815, -1.78815, -2.55625, -8.78463, -1.78815, -5.79545, 1.78815, 5.78659, 6.77769, 4.7862}, {5.43308, 2.37521, 0.624583, 1.07522, 0.584331, -1.07522, 1.83687, -0.576694, 0.182353, -1.10106, 0.784101, 1.10106, -3.39138, -2.08096, 5.88727, -3.59954, -0.00943971, 1.10365, -7.37942, 3.99825, -0.697471, 8.00379, -3.12696, -5.50789, 0.0319413, -1.69148, -0.0319413, -0.909507, -0.256369, -1.58639}, {-1.81103, -0.791738, -0.208194, -3.22566, -1.75299, 3.22566, 1.83687, -0.576694, 0.182353, -1.10106, 0.784101, 1.10106, 8.15362, 3.42332, 2.41917, -10.947, 2.29734, 0.374233, -0.0319413, 1.69148, 0.0319413, 3.59954, 0.00943971, -1.10365, 4.43619, -4.82788, -4.43619, -0.909507, -0.256369, -1.58639}, {-1.81103, -0.791738, -0.208194, 1.07522, 0.584331, -1.07522, -5.51061, 1.73008, -0.547059, -1.10106, 0.784101, 1.10106, 0.909507, 0.256369, 1.58639, -7.90043, -2.34676, 5.40453, 7.21217, 4.85843, 0.864718, 3.59954, 0.00943971, -1.10365, 0.0319413, -1.69148, -0.0319413, 3.49474, -3.39277, -5.99064}, {-1.81103, -0.791738, -0.208194, 1.07522, 0.584331, -1.07522, 1.83687, -0.576694, 0.182353, 3.30319, -2.3523, -3.30319, 0.909507, 0.256369, 1.58639, -3.59954, -0.00943971, 1.10365, -0.0319413, 1.69148, 0.0319413, 10.8437, 3.17639, -0.270869, -4.26894, -4.0288, 4.26894, -8.25698, 2.05041, -2.3158}, {1.1204, -1.1204, 10.941, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, 0.190281, 1.41539, 1.85814, -8.90493, 8.90493, -4.85864, -0.226431, 2.21115, -2.21115, 8.86902, -0.461631, 4.50793, -0.534693, -7.87269, -5.2214, -2.44635, 0.461631, -4.50793, 1.74951, -1.74951, -2.29678}, {-0.373467, 0.373467, -3.64699, -5.36656, 5.36656, -5.36656, -1.60567, 0, 0, 0.190281, 1.41539, 1.85814, -0.255645, 0.255645, 16.8847, 6.19624, 2.21115, -2.21115, 2.44635, -0.461631, 4.50793, 0.226431, -2.21115, 2.21115, -3.20747, -5.19992, -11.9405, 1.74951, -1.74951, -2.29678}, {-0.373467, 0.373467, -3.64699, 1.78885, -1.78885, 1.78885, 4.817, 0, 0, 0.190281, 1.41539, 1.85814, -1.74951, 1.74951, 2.29678, -7.38185, 9.36656, -9.36656, 3.94022, -1.9555, 19.0959, 0.226431, -2.21115, 2.21115, -2.44635, 0.461631, -4.50793, 0.988391, -7.41106, -9.72932}, {-0.373467, 0.373467, -3.64699, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, -0.570843, -4.24616, -5.57441, -1.74951, 1.74951, 2.29678, -0.226431, 2.21115, -2.21115, 2.44635, -0.461631, 4.50793, 1.7203, -3.70501, 16.7991, -9.60176, 7.61705, -11.6633, 8.17219, -1.74951, -2.29678}, {4.24616, -4.24616, -5.57441, 1.78885, -1.78885, 1.78885, 2.92187e-16, 3.15147, 2.85327e-15, -0.373467, -2.778, -3.64699, -7.61705, 7.61705, -11.6633, -2.21115, -1.68428, -2.21115, 1.74951, -18.2508, -2.29678, 3.70501, 12.7963, 16.7991, -1.74951, 5.64494, 2.29678, 0.461631, -0.461631, 4.50793}, {-1.41539, 1.41539, 1.85814, -5.36656, 5.36656, -5.36656, -5.84374e-16, 3.15147, -5.70654e-15, -0.373467, -2.778, -3.64699, 5.19992, -5.19992, -11.9405, -2.21115, -14.2902, -2.21115, 1.74951, -5.64494, -2.29678, 2.21115, 1.68428, 2.21115, -0.255645, 16.7569, 16.8847, 0.461631, -0.461631, 4.50793}, {-1.41539, 1.41539, 1.85814, 1.78885, -1.78885, 1.78885, 0, -9.45441, 0, -0.373467, -2.778, -3.64699, -0.461631, 0.461631, -4.50793, -9.36656, 5.47113, -9.36656, 7.41106, -11.3065, -9.72932, 2.21115, 1.68428, 2.21115, -1.74951, 5.64494, 2.29678, 1.9555, 10.6504, 19.0959}, {-1.41539, 1.41539, 1.85814, 1.78885, -1.78885, 1.78885, -2.92187e-16, 3.15147, -2.85327e-15, 1.1204, 8.334, 10.941, -0.461631, 0.461631, -4.50793, -2.21115, -1.68428, -2.21115, 1.74951, -5.64494, -2.29678, 7.87269, -3.97726, -5.2214, -8.90493, 12.8004, -4.85864, 0.461631, -13.0675, 4.50793}, {-4.91028, 4.91028, 4.91028, -0.802834, -0.802834, 0.802834, -0.802834, 0.802834, -0.802834, -0.0310931, 1.63676, 1.63676, 2.18055, 6.22684, -2.18055, 1.98471, -5.77316e-15, 5.88418e-15, 2.18055, -2.18055, 6.22684, -1.86034, -6.54704, -6.54704, 1.03079, -1.03079, -3.01551, 1.03079, -3.01551, -1.03079}, {1.63676, -1.63676, -1.63676, 2.4085, 2.4085, -2.4085, -0.802834, 0.802834, -0.802834, -0.0310931, 1.63676, 1.63676, -7.57784, 9.56255, 7.57784, 5.19605, -3.21134, 3.21134, -1.03079, 1.03079, 3.01551, -1.98471, 6.51256e-15, -5.03376e-15, 1.15516, -7.57784, -9.56255, 1.03079, -3.01551, -1.03079}, {1.63676, -1.63676, -1.63676, -0.802834, -0.802834, 0.802834, 2.4085, -2.4085, 2.4085, -0.0310931, 1.63676, 1.63676, -1.03079, 3.01551, 1.03079, 5.19605, 3.21134, -3.21134, -7.57784, 7.57784, 9.56255, -1.98471, 6.51256e-15, -5.58887e-15, 1.03079, -1.03079, -3.01551, 1.15516, -9.56255, -7.57784}, {1.63676, -1.63676, -1.63676, -0.802834, -0.802834, 0.802834, -0.802834, 0.802834, -0.802834, 0.0932794, -4.91028, -4.91028, -1.03079, 3.01551, 1.03079, 1.98471, -5.55112e-15, 5.66214e-15, -1.03079, 1.03079, 3.01551, -8.53176, 6.54704, 6.54704, 4.24213, 2.18055, -6.22684, 4.24213, -6.22684, 2.18055}, {2.4085, -2.4085, 2.4085, -0.833927, 0.833927, 2.4396, 1.57573, 1.57573, 1.57573, 0.0610269, -3.2125, -3.2125, 5.35886, -5.35886, -11.7815, -0.916924, -2.97851, -4.96322, -7.25829, -9.24301, -7.25829, 0.672816, 15.8285, 17.8132, 0.955357, 2.94007, 0.955357, -2.02315, 2.02315, 2.02315}, {-0.802834, 0.802834, -0.802834, 2.50178, -2.50178, -7.31879, 1.57573, 1.57573, 1.57573, 0.0610269, -3.2125, -3.2125, 5.23448, -5.23448, 1.18819, -7.21986, -9.28144, -11.2662, -0.955357, -2.94007, -0.955357, 0.916924, 2.97851, 4.96322, 0.71125, 15.7901, 13.8053, -2.02315, 2.02315, 2.02315}, {-0.802834, 0.802834, -0.802834, -0.833927, 0.833927, 2.4396, -4.7272, -4.7272, -4.7272, 0.0610269, -3.2125, -3.2125, 2.02315, -2.02315, -2.02315, 2.41878, -6.31421, -14.7216, 2.25598, -6.15141, 2.25598, 0.916924, 2.97851, 4.96322, 0.955357, 2.94007, 0.955357, -2.26726, 14.8731, 14.8731}, {-0.802834, 0.802834, -0.802834, -0.833927, 0.833927, 2.4396, 1.57573, 1.57573, 1.57573, -0.183081, 9.63749, 9.63749, 2.02315, -2.02315, -2.02315, -0.916924, -2.97851, -4.96322, -0.955357, -2.94007, -0.955357, 4.12826, -0.232831, 8.17456, 4.29107, -0.395637, -8.80302, -8.32609, -4.27979, -4.27979}, {4.10689, -1.43706, 2.8235e-12, 0.16503, -0.581747, -1.44665, -0.119439, -0.784236, 1.44665, 1.32337, 0.886963, 9.09785e-13, 0.828026, 2.45397, 7.57474, -0.0563528, 1.68845, -3.88578e-14, 2.31753, 3.51421, -7.57474, -5.23714, -5.2363, -3.60028e-12, -1.83977, -0.377268, 1.78815, -1.48814, -0.126978, -1.78815}, {-1.36896, 0.47902, -9.395e-13, -0.495089, 1.74524, 4.33994, -0.119439, -0.784236, 1.44665, 1.32337, 0.886963, 9.08857e-13, 6.964, -1.7891, 1.78815, 0.421405, 4.82539, -5.78659, 1.83977, 0.377268, -1.78815, 0.0563528, -1.68845, 3.79696e-14, -7.13326, -3.92512, 1.78815, -1.48814, -0.126978, -1.78815}, {-1.36896, 0.47902, -9.39941e-13, 0.16503, -0.581747, -1.44665, 0.358318, 2.35271, -4.33994, 1.32337, 0.886963, 9.07744e-13, 1.48814, 0.126978, 1.78815, -0.716472, 4.01544, 5.78659, 7.31562, -1.53881, -1.78815, 0.0563528, -1.68845, 3.9968e-14, -1.83977, -0.377268, 1.78815, -6.78164, -3.67483, -1.78815}, {-1.36896, 0.47902, -9.38462e-13, 0.16503, -0.581747, -1.44665, -0.119439, -0.784236, 1.44665, -3.97012, -2.66089, -2.72546e-12, 1.48814, 0.126978, 1.78815, -0.0563528, 1.68845, -3.70814e-14, 1.83977, 0.377268, -1.78815, 5.53221, -3.60453, 3.79027e-12, -2.49989, 1.94972, 7.57474, -1.01039, 3.00996, -7.57474}, {-1.71772, 0.961283, -4.33994, 1.44665, 0.27723, -1.44665, 0, 1.39654, 0, -2.01922, -1.35334, -1.38544e-12, -8.28248, -1.05552, 5.78659, -1.78815, -2.06889, 1.78815, -0.707741, -6.9163, -1.78815, 9.86504, 7.48225, -1.78815, 0.707741, 1.33015, 1.78815, 2.4959, -0.0533958, 1.7125e-12}, {0.572575, -0.320428, 1.44665, -4.33994, -0.831689, 4.33994, 7.00055e-16, 1.39654, 4.80579e-28, -2.01922, -1.35334, -1.38617e-12, -4.7862, 1.33511, -5.78659, -1.78815, -7.65505, 1.78815, -0.707741, -1.33015, -1.78815, 1.78815, 2.06889, -1.78815, 8.78463, 6.74351, 1.78815, 2.4959, -0.0533958, 1.7134e-12}, {0.572575, -0.320428, 1.44665, 1.44665, 0.27723, -1.44665, 4.20033e-15, -4.18962, 2.88423e-27, -2.01922, -1.35334, -1.38653e-12, -2.4959, 0.0533958, -1.71421e-12, -7.57474, -3.17781, 7.57474, -2.99804, -0.0484352, -7.57474, 1.78815, 2.06889, -1.78815, 0.707741, 1.33015, 1.78815, 10.5728, 5.35997, 7.25997e-12}, {0.572575, -0.320428, 1.44665, 1.44665, 0.27723, -1.44665, 0, 1.39654, 0, 6.05767, 4.06002, 4.16395e-12, -2.4959, 0.0533958, -1.716e-12, -1.78815, -2.06889, 1.78815, -0.707741, -1.33015, -1.78815, -0.502145, 3.3506, -7.57474, -5.07885, 0.221228, 7.57474, 2.4959, -5.63955, 1.71564e-12}, {-4.35597, 0.237767, -4.31288, 0, -1.20934, 0, 0.57469, 0.297534, -1.45022, -2.02668, 0.991065, 0.0125895, -1.79476, 6.43017, -1.77701, -0.710355, 1.12706, 1.79257, -4.80387, -1.45994, 5.81643, 8.81707, -5.09132, -1.84292, 2.50511, 0.269807, -0.0155615, 1.79476, -1.5928, 1.77701}, {1.45199, -0.0792556, 1.43763, 0, 3.62803, 0, 0.57469, 0.297534, -1.45022, -2.02668, 0.991065, 0.0125895, -7.60272, 1.90982, -7.52752, -3.00911, -0.0630793, 7.59343, -2.50511, -0.269807, 0.0155615, 0.710355, -1.12706, -1.79257, 10.6118, -3.69445, -0.0659197, 1.79476, -1.5928, 1.77701}, {1.45199, -0.0792556, 1.43763, 0, -1.20934, 0, -1.72407, -0.892603, 4.35065, -2.02668, 0.991065, 0.0125895, -1.79476, 1.5928, -1.77701, -0.710355, 5.96443, 1.79257, -8.31307, 0.047215, -5.73495, 0.710355, -1.12706, -1.79257, 2.50511, 0.269807, -0.0155615, 9.90148, -5.55705, 1.72665}, {1.45199, -0.0792556, 1.43763, 0, -1.20934, 0, 0.57469, 0.297534, -1.45022, 6.08004, -2.97319, -0.0377686, -1.79476, 1.5928, -1.77701, -0.710355, 1.12706, 1.79257, -2.50511, -0.269807, 0.0155615, -5.09761, -0.810036, -7.54308, 2.50511, 5.10718, -0.0155615, -0.504, -2.78293, 7.57787}, {-1.3922, -1.05489, 4.34859, -1.6823, -0.386683, 0.0104503, -0.635567, 0.941579, 1.4506, 1.8538, -0.906526, -0.0115156, 8.23503, 1.59006, 1.737, 2.86504, -0.685889, -1.80595, 2.75426, -5.36481, -5.8037, -10.2803, 4.31199, 1.85201, -0.211987, 1.59849, 0.00131684, -1.50582, -0.0433277, -1.7788}, {0.464066, 0.35163, -1.44953, 5.0469, 1.16005, -0.0313509, -0.635567, 0.941579, 1.4506, 1.8538, -0.906526, -0.0115156, -0.350444, -1.36319, 7.57692, 5.40731, -4.4522, -7.60833, 0.211987, -1.59849, -0.00131684, -2.86504, 0.685889, 1.80595, -7.6272, 5.2246, 0.0473794, -1.50582, -0.0433277, -1.7788}, {0.464066, 0.35163, -1.44953, -1.6823, -0.386683, 0.0104503, 1.9067, -2.82474, -4.35179, 1.8538, -0.906526, -0.0115156, 1.50582, 0.0433277, 1.7788, 9.59425, 0.860843, -1.84775, -1.64428, -3.00501, 5.7968, -2.86504, 0.685889, 1.80595, -0.211987, 1.59849, 0.00131684, -8.92103, 3.58278, -1.73274}, {0.464066, 0.35163, -1.44953, -1.6823, -0.386683, 0.0104503, -0.635567, 0.941579, 1.4506, -5.56141, 2.71958, 0.0345469, 1.50582, 0.0433277, 1.7788, 2.86504, -0.685889, -1.80595, 0.211987, -1.59849, -0.00131684, -4.72131, -0.720632, 7.60407, 6.51722, 3.14523, -0.0404844, 1.03645, -3.80964, -7.58118}, {-4.91028, -4.91028, 4.91028, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, -1.63676, -1.63676, 4.78823, -10.2738, 6.2275, 10.2738, 3.77476e-15, -3.10862e-15, 3.89543, 6.2275, -10.2738, 10.2738, 6.54704, 6.54704, -23.0483, 0.0754334, 3.97086, -3.97086, 3.97086, 0.0754334, -3.97086}, {1.63676, 1.63676, -1.63676, -4.7272, 4.7272, 4.7272, -1.57573, 1.57573, -1.57573, -1.63676, -1.63676, 4.78823, -10.5179, -6.62248, 10.5179, 6.30294, -6.30294, 10.1984, -0.0754334, -3.97086, 3.97086, -3.07087e-15, 3.59047e-15, -3.89543, 6.62248, 10.5179, -23.1238, 3.97086, 0.0754334, -3.97086}, {1.63676, 1.63676, -1.63676, 1.57573, -1.57573, -1.57573, 4.7272, -4.7272, 4.7272, -1.63676, -1.63676, 4.78823, -3.97086, -0.0754334, 3.97086, -6.30294, 6.30294, 10.1984, -6.62248, -10.5179, 10.5179, -1.51655e-15, 1.81411e-15, -3.89543, 0.0754334, 3.97086, -3.97086, 10.5179, 6.62248, -23.1238}, {1.63676, 1.63676, -1.63676, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 4.91028, 4.91028, -14.3647, -3.97086, -0.0754334, 3.97086, 3.10862e-15, -2.44249e-15, 3.89543, -0.0754334, -3.97086, 3.97086, -6.54704, -6.54704, 2.65162, -6.2275, 10.2738, 2.33207, 10.2738, -6.2275, 2.33207}, {-1.37636, -1.37636, -5.42796, -2.30348, 0.847989, 0.553233, 1.22922, -1.92224, -0.562043, 0.615468, 0.615468, -1.80051, 11.4941, -5.00722, -5.1332, 1.32785, 1.32785, 0.0108901, -7.00339, 9.49791, 0.706454, -3.78972, -3.78972, 7.19114, 2.0865, -1.80893, 1.54172, -2.28016, 1.61526, 2.92027}, {0.458787, 0.458787, 1.80932, 6.91044, -2.54397, -1.6597, 1.22922, -1.92224, -0.562043, 0.615468, 0.615468, -1.80051, 0.445015, -3.45041, -10.1575, -3.58904, 9.01683, 2.25906, -2.0865, 1.80893, -1.54172, -1.32785, -1.32785, -0.0108901, -0.375375, -4.2708, 8.74375, -2.28016, 1.61526, 2.92027}, {0.458787, 0.458787, 1.80932, -2.30348, 0.847989, 0.553233, -3.68767, 5.76673, 1.68613, 0.615468, 0.615468, -1.80051, 2.28016, -1.61526, -2.92027, 10.5418, -2.0641, -2.20204, -3.92165, -0.0262169, -8.77899, -1.32785, -1.32785, -0.0108901, 2.0865, -1.80893, 1.54172, -4.74204, -0.846607, 10.1223}, {0.458787, 0.458787, 1.80932, -2.30348, 0.847989, 0.553233, 1.22922, -1.92224, -0.562043, -1.8464, -1.8464, 5.40152, 2.28016, -1.61526, -2.92027, 1.32785, 1.32785, 0.0108901, -2.0865, 1.80893, -1.54172, -3.163, -3.163, -7.24816, 11.3004, -5.20089, -0.671213, -7.19706, 9.30424, 5.16845}, {5.36656, -5.36656, -5.36656, 1.41539, 1.85814, -1.41539, 0, 0, -3.15147, 0.373467, -3.64699, 2.778, -5.19992, -11.9405, 5.19992, -1.74951, -2.29678, 5.64494, 2.21115, -2.21115, 14.2902, 0.255645, 16.8847, -16.7569, -2.21115, 2.21115, -1.68428, -0.461631, 4.50793, 0.461631}, {-1.78885, 1.78885, 1.78885, -4.24616, -5.57441, 4.24616, 0, 0, -3.15147, 0.373467, -3.64699, 2.778, 7.61705, -11.6633, -7.61705, -1.74951, -2.29678, 18.2508, 2.21115, -2.21115, 1.68428, 1.74951, 2.29678, -5.64494, -3.70501, 16.7991, -12.7963, -0.461631, 4.50793, 0.461631}, {-1.78885, 1.78885, 1.78885, 1.41539, 1.85814, -1.41539, 0, 0, 9.45441, 0.373467, -3.64699, 2.778, 0.461631, -4.50793, -0.461631, -7.41106, -9.72932, 11.3065, 9.36656, -9.36656, -5.47113, 1.74951, 2.29678, -5.64494, -2.21115, 2.21115, -1.68428, -1.9555, 19.0959, -10.6504}, {-1.78885, 1.78885, 1.78885, 1.41539, 1.85814, -1.41539, 0, 0, -3.15147, -1.1204, 10.941, -8.334, 0.461631, -4.50793, -0.461631, -1.74951, -2.29678, 5.64494, 2.21115, -2.21115, 1.68428, 8.90493, -4.85864, -12.8004, -7.87269, -5.2214, 3.97726, -0.461631, 4.50793, 13.0675}, {5.73547, -8.96906, -2.62245, 0.335815, -3.2793, -0.653542, 1.76841, -1.58918, 1.21052, -0.192397, 1.8788, -1.43113, 0.604796, 13.4752, 2.34148, -2.60096, 6.01778, -0.688458, -6.89635, 4.62559, -7.41885, 3.37055, -13.533, 6.41296, -0.177274, 1.73112, 2.57679, -1.94806, -0.357987, 0.272688}, {-1.91182, 2.98969, 0.874151, -1.00744, 9.83791, 1.96063, 1.76841, -1.58918, 1.21052, -0.192397, 1.8788, -1.43113, 9.59535, -11.6008, -3.76929, -9.67459, 12.3745, -5.53052, 0.177274, -1.73112, -2.57679, 2.60096, -6.01778, 0.688458, 0.592313, -5.78406, 8.30129, -1.94806, -0.357987, 0.272688}, {-1.91182, 2.98969, 0.874151, 0.335815, -3.2793, -0.653542, -5.30522, 4.76754, -3.63155, -0.192397, 1.8788, -1.43113, 1.94806, 0.357987, -0.272688, -3.94422, 19.135, 1.92571, 7.82457, -13.6899, -6.07339, 2.60096, -6.01778, 0.688458, -0.177274, 1.73112, 2.57679, -1.17847, -7.87317, 5.99719}, {-1.91182, 2.98969, 0.874151, 0.335815, -3.2793, -0.653542, 1.76841, -1.58918, 1.21052, 0.57719, -5.63639, 4.29338, 1.94806, 0.357987, -0.272688, -2.60096, 6.01778, -0.688458, 0.177274, -1.73112, -2.57679, 10.2483, -17.9765, -2.80815, -1.52053, 14.8483, 5.19096, -9.02168, 5.99873, -4.56938}, {-0.906892, 2.28653, -2.28852, -1.55284, 0.422175, 1.18312, -0.363916, -0.686733, -0.918335, 1.61446, 1.02673, -1.02763, 7.75714, -1.26844, -7.13784, 2.36925, 0.327011, -0.327296, 1.53183, 4.53788, 3.86554, -8.8271, -4.43394, 4.43781, -0.0761652, -1.79095, -0.192201, -1.54576, -0.420263, 2.40534}, {0.302297, -0.762175, 0.762841, 4.65853, -1.26653, -3.54937, -0.363916, -0.686733, -0.918335, 1.61446, 1.02673, -1.02763, 0.336571, 3.46896, -5.45671, 3.82491, 3.07394, 3.34604, 0.0761652, 1.79095, 0.192201, -2.36925, -0.327011, 0.327296, -6.53402, -5.89788, 3.91832, -1.54576, -0.420263, 2.40534}, {0.302297, -0.762175, 0.762841, -1.55284, 0.422175, 1.18312, 1.09175, 2.0602, 2.75501, 1.61446, 1.02673, -1.02763, 1.54576, 0.420263, -2.40534, 8.58063, -1.36169, -5.05979, -1.13302, 4.83965, -2.85916, -2.36925, -0.327011, 0.327296, -0.0761652, -1.79095, -0.192201, -8.00362, -4.52719, 6.51586}, {0.302297, -0.762175, 0.762841, -1.55284, 0.422175, 1.18312, -0.363916, -0.686733, -0.918335, -4.84339, -3.0802, 3.08289, 1.54576, 0.420263, -2.40534, 2.36925, 0.327011, -0.327296, 0.0761652, 1.79095, 0.192201, -3.57844, 2.72169, -2.72407, 6.13521, -3.47965, -4.9247, -0.0900956, 2.32667, 6.07869}, {-3.9353, 0.360586, -0.360901, -2.42845e-16, -0.455297, -1.14997, 2.03858e-16, 1.40972, 0.194715, -1.31177, -0.834228, 0.834958, -1.62143, 2.53253, 5.87264, 4.81904e-17, -1.17973, 1.18076, -1.62143, -7.23282, -1.16824, 5.24706, 4.51665, -4.52059, 1.62143, 1.59394, 0.389381, 1.62143, -0.711347, -1.27275}, {1.31177, -0.120195, 0.1203, 7.28534e-16, 1.36589, 3.44992, 2.03858e-16, 1.40972, 0.194715, -1.31177, -0.834228, 0.834958, -6.86849, 1.19213, 0.791545, -7.67241e-16, -6.81861, 0.401902, -1.62143, -1.59394, -0.389381, -3.73841e-16, 1.17973, -1.18076, 6.86849, 4.93085, -2.95045, 1.62143, -0.711347, -1.27275}, {1.31177, -0.120195, 0.1203, 7.41337e-17, -0.455297, -1.14997, 6.88614e-16, -4.22916, -0.584146, -1.31177, -0.834228, 0.834958, -1.62143, 0.711347, 1.27275, -1.04445e-16, 0.641455, 5.78066, -6.86849, -1.11316, -0.870582, -5.1774e-16, 1.17973, -1.18076, 1.62143, 1.59394, 0.389381, 6.86849, 2.62557, -4.61258}, {1.31177, -0.120195, 0.1203, -1.68711e-16, -0.455297, -1.14997, -2.56799e-17, 1.40972, 0.194715, 3.9353, 2.50269, -2.50487, -1.62143, 0.711347, 1.27275, 2.4028e-16, -1.17973, 1.18076, -1.62143, -1.59394, -0.389381, -5.24706, 1.66051, -1.66196, 1.62143, 3.41513, 4.98927, 1.62143, -6.35023, -2.05161}, {3.9353, -3.83942e-12, 1.21564, 0, -1.44665, 1.03094, 0, 1.44665, 0.774615, 1.31177, -1.27981e-12, -1.40034, 1.62143, 7.57474, -4.89721, 0, 0, -2.23179, 1.62143, -7.57474, -3.55506, -5.24706, 5.11922e-12, 7.83316, -1.62143, 1.78815, 0.456604, -1.62143, -1.78815, 0.773441}, {-1.31177, 1.28052e-12, -0.405214, 3.53326e-15, 4.33994, -3.09282, 1.17775e-15, 1.44665, 0.774615, 1.31177, -1.28052e-12, -1.40034, 6.86849, 1.78815, 0.847415, -4.71101e-15, -5.78659, -5.33025, 1.62143, -1.78815, -0.456604, 3.2565e-16, -3.17893e-28, 2.23179, -6.86849, 1.78815, 6.05797, -1.62143, -1.78815, 0.773441}, {-1.31177, 1.28099e-12, -0.405214, -9.42202e-16, -1.44665, 1.03094, -2.82661e-15, -4.33994, -2.32384, 1.31177, -1.28099e-12, -1.40034, 1.62143, 1.78815, -0.773441, 3.76881e-15, 5.78659, -6.35555, 6.86849, -1.78815, 1.16425, 3.2565e-16, -3.18011e-28, 2.23179, -1.62143, 1.78815, 0.456604, -6.86849, -1.78815, 6.37481}, {-1.31177, 1.27957e-12, -0.405214, 0, -1.44665, 1.03094, 0, 1.44665, 0.774615, -3.9353, 3.83871e-12, 4.20103, 1.62143, 1.78815, -0.773441, 0, 0, -2.23179, 1.62143, -1.78815, -0.456604, 5.24706, -5.11827e-12, 3.85265, -1.62143, 7.57474, -3.66716, -1.62143, -7.57474, -2.32502}, {-1.71772, -4.33994, -0.49013, 1.44665, -1.44665, -0.51339, 0, 0, -1.80556, -2.01922, 1.97175e-12, 2.15557, -8.28248, 5.78659, 2.4862, -1.78815, 1.78815, 2.86637, -0.707741, -1.78815, 9.25207, 9.86504, -1.78815, -11.4887, 0.707741, 1.78815, -2.02984, 2.4959, -2.43721e-12, -0.432641}, {0.572575, 1.44665, 0.163377, -4.33994, 4.33994, 1.54017, 0, 0, -1.80556, -2.01922, 1.97102e-12, 2.15557, -4.7862, -5.78659, -0.220866, -1.78815, 1.78815, 10.0886, -0.707741, -1.78815, 2.02984, 1.78815, -1.78815, -2.86637, 8.78463, 1.78815, -10.6521, 2.4959, -2.43632e-12, -0.432641}, {0.572575, 1.44665, 0.163377, 1.44665, -1.44665, -0.51339, 0, 0, 5.41667, -2.01922, 1.97175e-12, 2.15557, -2.4959, 2.43685e-12, 0.432641, -7.57474, 7.57474, 4.91994, -2.99804, -7.57474, 1.37634, 1.78815, -1.78815, -2.86637, 0.707741, 1.78815, -2.02984, 10.5728, -1.03242e-11, -9.05492}, {0.572575, 1.44665, 0.163377, 1.44665, -1.44665, -0.51339, 0, 0, -1.80556, 6.05767, -5.91306e-12, -6.46671, -2.4959, 2.43596e-12, 0.432641, -1.78815, 1.78815, 2.86637, -0.707741, -1.78815, 2.02984, -0.502145, -7.57474, -3.51988, -5.07885, 7.57474, 0.0237159, 2.4959, -2.43632e-12, 6.78958}, {5.80677, 0.989763, -2.29829, 1.66654, 1.66654, -0.659606, 0.232016, 0.232016, -2.11105, 0.0370362, -1.56863, 2.00456, -6.33358, -8.31829, 2.5068, -2.34674, -2.34674, 3.42472, 1.17767, -0.807048, 10.1067, 2.1986, 8.62127, -11.443, -2.10573, -0.121017, -1.66246, -0.332567, 1.65215, 0.131628}, {-1.93559, -0.329921, 0.766095, -4.99961, -4.99961, 1.97882, 0.232016, 0.232016, -2.11105, 0.0370362, -1.56863, 2.00456, 8.07492, -0.332464, -3.19601, -3.2748, -3.2748, 11.8689, 2.10573, 0.121017, 1.66246, 2.34674, 2.34674, -3.42472, -2.25388, 6.15351, -9.68071, -0.332567, 1.65215, 0.131628}, {-1.93559, -0.329921, 0.766095, 1.66654, 1.66654, -0.659606, -0.696049, -0.696049, 6.33316, 0.0370362, -1.56863, 2.00456, 0.332567, -1.65215, -0.131628, -9.01289, -9.01289, 6.06315, 9.84809, 1.4407, -1.40192, 2.34674, 2.34674, -3.42472, -2.10573, -0.121017, -1.66246, -0.480712, 7.92668, -7.88662}, {-1.93559, -0.329921, 0.766095, 1.66654, 1.66654, -0.659606, 0.232016, 0.232016, -2.11105, -0.111109, 4.7059, -6.01369, 0.332567, -1.65215, -0.131628, -2.34674, -2.34674, 3.42472, 2.10573, 0.121017, 1.66246, 10.0891, 3.66642, -6.4891, -8.77188, -6.78716, 0.975965, -1.26063, 0.724083, 8.57584}, {-7.02938, -6.32827e-15, -4.44089e-15, 1.74421, 1.74203, 1.33161, -1.54384, -1.54318, 0.610212, -2.54349, -0.198851, -1.94182, -12.0291, -9.12139, -6.97241, -0.247668, -0.245794, -2.40023, 5.18739, 8.08019, -3.19511, 10.4216, 1.0412, 10.1675, 0.98797, -1.90748, 0.754264, 5.05222, 2.15327, 1.64596}, {2.34313, -1.30451e-15, -6.66134e-16, -5.23263, -5.22609, -3.99484, -1.54384, -1.54318, 0.610212, -2.54349, -0.198851, -1.94182, -14.4247, -2.15327, -1.64596, 5.92769, 5.92693, -4.84108, -0.98797, 1.90748, -0.754264, 0.247668, 0.245794, 2.40023, 11.1619, -1.11207, 8.52156, 5.05222, 2.15327, 1.64596}, {2.34313, 2.33147e-15, 1.77636e-15, 1.74421, 1.74203, 1.33161, 4.63152, 4.62954, -1.83064, -2.54349, -0.198851, -1.94182, -5.05222, -2.15327, -1.64596, -7.2245, -7.21392, -7.72668, -10.3605, 1.90748, -0.754264, 0.247668, 0.245794, 2.40023, 0.98797, -1.90748, 0.754264, 15.2262, 2.94867, 9.41326}, {2.34313, 1.38778e-16, -1.11022e-15, 1.74421, 1.74203, 1.33161, -1.54384, -1.54318, 0.610212, 7.63048, 0.596554, 5.82547, -5.05222, -2.15327, -1.64596, -0.247668, -0.245794, -2.40023, -0.98797, 1.90748, -0.754264, -9.12483, 0.245794, 2.40023, -5.98886, -8.8756, -4.57219, 11.2276, 8.32599, -0.794885}, {4.62937, 4.62937, -1.83228, 1.92454e-15, 1.60567, 4.31655e-17, -0.198723, -0.198723, -1.94057, 1.74185, 0.136178, 1.32981, 1.90741, -6.49998, -0.754941, 0.245635, -1.73908, 2.39867, 2.94793, 2.94793, 9.40601, -7.21302, 1.19437, -7.71791, -2.15304, -2.15304, -1.64373, -1.90741, 0.0773091, 0.754941}, {-1.54312, -1.54312, 0.61076, -2.32061e-15, -4.817, -3.91084e-15, -0.198723, -0.198723, -1.94057, 1.74185, 0.136178, 1.32981, 8.0799, 6.09519, -3.19798, 1.04052, -0.94419, 10.1609, 2.15304, 2.15304, 1.64373, -0.245635, 1.73908, -2.39867, -9.12042, -2.69775, -6.96297, -1.90741, 0.0773091, 0.754941}, {-1.54312, -1.54312, 0.61076, 0, 1.60567, 0, 0.596168, 0.596168, 5.82171, 1.74185, 0.136178, 1.32981, 1.90741, -0.0773091, -0.754941, 0.245635, -8.16175, 2.39867, 8.32553, 8.32553, -0.799305, -0.245635, 1.73908, -2.39867, -2.15304, -2.15304, -1.64373, -8.87479, -0.467403, -4.5643}, {-1.54312, -1.54312, 0.61076, -6.94322e-16, 1.60567, -5.30079e-16, -0.198723, -0.198723, -1.94057, -5.22554, -0.408534, -3.98943, 1.90741, -0.0773091, -0.754941, 0.245635, -1.73908, 2.39867, 2.15304, 2.15304, 1.64373, 5.92686, 7.91157, -4.84171, -2.15304, -8.57571, -1.64373, -1.11252, 0.872199, 8.51722}, {-8.88178e-16, 2.15168e-15, -3.8693, 1.44142, -1.45582, 0.146636, 0.577805, 1.45582, -0.186531, -2.01922, -1.68031e-12, -1.24987, -7.54736, 7.62276, -2.36203, -2.4959, -2.07812e-12, 0.0493134, -3.02542, -7.62276, -0.617546, 10.5728, 8.79935e-12, 4.95017, 0.714206, 1.79949, 1.36367, 1.78169, -1.79949, 1.77549}, {0, -1.49289e-16, 1.28977, -4.32425, 4.36745, -0.439908, 0.577805, 1.45582, -0.186531, -2.01922, -1.67873e-12, -1.24987, -1.78169, 1.79949, -6.93455, -4.80711, -5.82327, 0.795439, -0.714206, -1.79949, -1.36367, 2.4959, 2.07523e-12, -0.0493134, 8.79109, 1.79949, 6.36315, 1.78169, -1.79949, 1.77549}, {8.88178e-16, 3.43166e-16, 1.28977, 1.44142, -1.45582, 0.146636, -1.73341, -4.36745, 0.559594, -2.01922, -1.68189e-12, -1.24987, -1.78169, 1.79949, -1.77549, -8.26156, 5.82327, -0.537231, -0.714206, -1.79949, -6.52273, 2.4959, 2.07834e-12, -0.0493134, 0.714206, 1.79949, 1.36367, 9.85858, -1.79949, 6.77497}, {-4.44089e-16, 1.48625e-17, 1.28977, 1.44142, -1.45582, 0.146636, 0.577805, 1.45582, -0.186531, 6.05767, 5.03935e-12, 3.74961, -1.78169, 1.79949, -1.77549, -2.4959, -2.07634e-12, 0.0493134, -0.714206, -1.79949, -1.36367, 2.4959, 2.0765e-12, -5.20838, -5.05146, 7.62276, 0.777128, -0.529529, -7.62276, 2.52162}, {-0.0174717, -4.36745, 1.62174, 0.116385, -1.45582, -0.673541, -1.39583, -1.1623e-12, 0.425765, 1.27362, 1.06054e-12, 0.788355, -0.616596, 5.82327, 4.1949, 1.58148, 1.79949, 0.306268, 7.30147, -1.79949, -1.56114, -6.67598, -1.79949, -3.45969, -1.71815, 1.79949, -0.141919, 0.151058, 1.25785e-13, -1.50074}, {0.0058239, 1.45582, -0.54058, -0.349154, 4.36745, 2.02062, -1.39583, -1.1623e-12, 0.425765, 1.27362, 1.06054e-12, 0.788355, -0.174354, -5.82327, 3.66305, 7.16481, 1.79949, -1.39679, 1.71815, -1.79949, 0.141919, -1.58148, -1.79949, -0.306268, -6.81264, 1.79949, -3.29534, 0.151058, 1.25785e-13, -1.50074}, {0.0058239, 1.45582, -0.54058, 0.116385, -1.45582, -0.673541, 4.1875, 3.48841e-12, -1.27729, 1.27362, 1.061e-12, 0.788355, -0.151058, -1.26201e-13, 1.50074, 1.11595, 7.62276, 3.00043, 1.69485, -7.62276, 2.30424, -1.58148, -1.79949, -0.306268, -1.71815, 1.79949, -0.141919, -4.94344, -4.11815e-12, -4.65416}, {0.0058239, 1.45582, -0.54058, 0.116385, -1.45582, -0.673541, -1.39583, -1.16331e-12, 0.425765, -3.82087, -3.18437e-12, -2.36507, -0.151058, -1.26255e-13, 1.50074, 1.58148, 1.79949, 0.306268, 1.71815, -1.79949, 0.141919, -1.60478, -7.62276, 1.85605, -2.18368, 7.62276, 2.55224, 5.73439, 4.77913e-12, -3.20379}, {0.776806, 4.33994, 4.33994, -1.05603, 0, 0, 0.111915, 1.44665, -0.572575, 1.20305, 1.58813e-12, 2.01922, 5.84948, 1.78815, 1.78815, 1.16698, -1.78815, 0.707741, -0.265932, -5.78659, 4.7862, -5.97917, 1.78815, -8.78463, -0.181727, -1.96304e-12, -2.4959, -1.62538, -1.78815, -1.78815}, {-0.258935, -1.44665, -1.44665, 3.16808, 0, 0, 0.111915, 1.44665, -0.572575, 1.20305, 1.58704e-12, 2.01922, 2.66112, 7.57474, 7.57474, 0.719326, -7.57474, 2.99804, 0.181727, 1.96205e-12, 2.4959, -1.16698, 1.78815, -0.707741, -4.99391, -8.30986e-12, -10.5728, -1.62538, -1.78815, -1.78815}, {-0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -0.335745, -4.33994, 1.71772, 1.20305, 1.58813e-12, 2.01922, 1.62538, 1.78815, 1.78815, 5.39109, -1.78815, 0.707741, 1.21747, 5.78659, 8.28248, -1.16698, 1.78815, -0.707741, -0.181727, -1.96304e-12, -2.4959, -6.43757, -1.78815, -9.86504}, {-0.258935, -1.44665, -1.44665, -1.05603, 0, 0, 0.111915, 1.44665, -0.572575, -3.60914, -4.76221e-12, -6.05767, 1.62538, 1.78815, 1.78815, 1.16698, -1.78815, 0.707741, 0.181727, 1.9625e-12, 2.4959, -0.131244, 7.57474, 5.07885, 4.04237, -1.96214e-12, -2.4959, -2.07304, -7.57474, 0.502145}, {-1.50826, -4.33994, -0.250246, -0.36325, 9.14735e-13, 1.16277, 0.624341, -1.44665, 0.0358648, -0.763842, -1.00857e-12, -1.28205, 1.28057, -1.78815, -6.19146, -0.322725, 1.78815, -1.4816, -3.89052, 5.78659, -0.290898, 3.37809, -1.78815, 6.6098, 1.39316, 1.15988e-13, 0.147438, 0.172433, 1.78815, 1.54037}, {0.502752, 1.44665, 0.0834153, 1.08975, -2.74233e-12, -3.48831, 0.624341, -1.44665, 0.0358648, -0.763842, -1.00788e-12, -1.28205, -2.18344, -7.57474, -1.87403, -2.82009, 7.57474, -1.62505, -1.39316, -1.16267e-13, -0.147438, 0.322725, -1.78815, 1.4816, 4.44853, 4.14743e-12, 5.27564, 0.172433, 1.78815, 1.54037}, {0.502752, 1.44665, 0.0834153, -0.36325, 9.139e-13, 1.16277, -1.87302, 4.33994, -0.107594, -0.763842, -1.00765e-12, -1.28205, -0.172433, -1.78815, -1.54037, 1.13028, 1.78815, -6.13268, -3.40417, -5.78659, -0.4811, 0.322725, -1.78815, 1.4816, 1.39316, 1.15882e-13, 0.147438, 3.2278, 1.78815, 6.66858}, {0.502752, 1.44665, 0.0834153, -0.36325, 9.14526e-13, 1.16277, 0.624341, -1.44665, 0.0358648, 2.29153, 3.02502e-12, 3.84615, -0.172433, -1.78815, -1.54037, -0.322725, 1.78815, -1.4816, -1.39316, -1.1632e-13, -0.147438, -1.68828, -7.57474, 1.14793, 2.84616, -3.54214e-12, -4.50365, -2.32493, 7.57474, 1.39691}, {-5.2764, 2.09092, -1.75594, -0.883363, 0.350058, 0.882867, 0.674903, -2.28914, -0.671659, -1.55034, 2.63606, -0.796523, 2.45135, -0.971419, -5.34624, 0.257671, 2.39684, -0.261068, -5.70783, 12.8476, 2.79336, 5.94368, -12.9411, 3.44716, 3.00822, -3.69104, -0.106727, 1.0821, -0.428812, 1.81477}, {1.7588, -0.696974, 0.585315, 2.65009, -1.05017, -2.6486, 0.674903, -2.28914, -0.671659, -1.55034, 2.63606, -0.796523, -8.11729, 3.21671, -4.15603, -2.44194, 11.5534, 2.42557, -3.00822, 3.69104, 0.106727, -0.257671, -2.39684, 0.261068, 9.20957, -14.2353, 3.07936, 1.0821, -0.428812, 1.81477}, {1.7588, -0.696974, 0.585315, -0.883363, 0.350058, 0.882867, -2.02471, 6.86742, 2.01498, -1.55034, 2.63606, -0.796523, -1.0821, 0.428812, -1.81477, 3.79112, 0.996607, -3.79254, -10.0434, 6.47894, -2.23453, -0.257671, -2.39684, 0.261068, 3.00822, -3.69104, -0.106727, 7.28345, -10.973, 5.00086}, {1.7588, -0.696974, 0.585315, -0.883363, 0.350058, 0.882867, 0.674903, -2.28914, -0.671659, 4.65101, -7.90817, 2.38957, -1.0821, 0.428812, -1.81477, 0.257671, 2.39684, -0.261068, -3.00822, 3.69104, 0.106727, -7.29286, 0.391057, -2.08019, 6.54167, -5.09127, -3.6382, -1.61751, 8.72775, 4.50141}, {-0.630826, -5.80799, 0.630826, -0.387946, -0.481968, -1.21772, -0.883035, 0.3495, 0.883035, 1.06071, -1.80353, 0.544962, 1.7714, 0.130593, 6.63599, 1.57102, 0.163739, 0.413696, 4.36372, -4.22303, -4.36372, -5.81384, 7.05038, -2.59355, -0.831577, 2.82503, 0.831577, -0.219612, 1.79728, -1.7651}, {0.210275, 1.936, -0.210275, 1.16384, 1.4459, 3.65317, -0.883035, 0.3495, 0.883035, 1.06071, -1.80353, 0.544962, -0.621489, -9.54126, 2.6062, 5.10316, -1.23426, -3.11845, 0.831577, -2.82503, -0.831577, -1.57102, -0.163739, -0.413696, -5.0744, 10.0391, -1.34827, -0.219612, 1.79728, -1.7651}, {0.210275, 1.936, -0.210275, -0.387946, -0.481968, -1.21772, 2.64911, -1.0485, -2.64911, 1.06071, -1.80353, 0.544962, 0.219612, -1.79728, 1.7651, 3.1228, 2.09161, 5.28459, -0.00952469, -10.569, 0.00952469, -1.57102, -0.163739, -0.413696, -0.831577, 2.82503, 0.831577, -4.46243, 9.01139, -3.94495}, {0.210275, 1.936, -0.210275, -0.387946, -0.481968, -1.21772, -0.883035, 0.3495, 0.883035, -3.18212, 5.41059, -1.63489, 0.219612, -1.79728, 1.7651, 1.57102, 0.163739, 0.413696, 0.831577, -2.82503, -0.831577, -2.41212, -7.90772, 0.427406, 0.720206, 4.7529, 5.70247, 3.31253, 0.399276, -5.29724}, {-4.62915, 1.83443, 4.62655, 1.15731e-16, 1.13013e-15, 2.34313, -1.74201, -1.33137, 1.74389, 0.198956, 1.94285, -2.54483, -1.90731, 0.755828, -10.3625, 2.15324, 1.64567, -5.05183, 7.21395, 7.72698, -7.2249, -2.94906, -9.41706, 15.2312, -0.245923, -2.40149, 0.249326, 1.90731, -0.755828, 0.990019}, {1.54305, -0.611477, -1.54218, -3.38711e-15, -5.71373e-15, -7.02938, -1.74201, -1.33137, 1.74389, 0.198956, 1.94285, -2.54483, -8.07952, 3.20174, 5.17872, 9.12126, 6.97115, -12.0274, 0.245923, 2.40149, -0.249326, -2.15324, -1.64567, 5.05183, -1.04175, -10.1729, 10.4287, 1.90731, -0.755828, 0.990019}, {1.54305, -0.611477, -1.54218, 0, 0, 2.34313, 5.22602, 3.99411, -5.23168, 0.198956, 1.94285, -2.54483, -1.90731, 0.755828, -0.990019, 2.15324, 1.64567, -14.4243, -5.92628, 4.8474, 5.91941, -2.15324, -1.64567, 5.05183, -0.245923, -2.40149, 0.249326, 1.11149, -8.52722, 11.1694}, {1.54305, -0.611477, -1.54218, 1.15731e-16, 1.13013e-15, 2.34313, -1.74201, -1.33137, 1.74389, -0.596868, -5.82855, 7.6345, -1.90731, 0.755828, -0.990019, 2.15324, 1.64567, -5.05183, 0.245923, 2.40149, -0.249326, -8.32544, 0.800244, 11.2206, -0.245923, -2.40149, -9.12318, 8.87534, 4.56966, -5.98555}, {-4.62937, 1.83228, 4.62937, -1.60567, 0, 0, 0.198723, 1.94057, -0.198723, -0.136178, -1.32981, 1.74185, 6.49998, 0.754941, 1.90741, 1.73908, -2.39867, 0.245635, -2.94793, -9.40601, 2.94793, -1.19437, 7.71791, -7.21302, 2.15304, 1.64373, -2.15304, -0.0773091, -0.754941, -1.90741}, {1.54312, -0.61076, -1.54312, 4.817, 0, 0, 0.198723, 1.94057, -0.198723, -0.136178, -1.32981, 1.74185, -6.09519, 3.19798, 8.0799, 0.94419, -10.1609, 1.04052, -2.15304, -1.64373, 2.15304, -1.73908, 2.39867, -0.245635, 2.69775, 6.96297, -9.12042, -0.0773091, -0.754941, -1.90741}, {1.54312, -0.61076, -1.54312, -1.60567, 0, 0, -0.596168, -5.82171, 0.596168, -0.136178, -1.32981, 1.74185, 0.0773091, 0.754941, 1.90741, 8.16175, -2.39867, 0.245635, -8.32553, 0.799305, 8.32553, -1.73908, 2.39867, -0.245635, 2.15304, 1.64373, -2.15304, 0.467403, 4.5643, -8.87479}, {1.54312, -0.61076, -1.54312, -1.60567, 0, 0, 0.198723, 1.94057, -0.198723, 0.408534, 3.98943, -5.22554, 0.0773091, 0.754941, 1.90741, 1.73908, -2.39867, 0.245635, -2.15304, -1.64373, 2.15304, -7.91157, 4.84171, 5.92686, 8.57571, 1.64373, -2.15304, -0.872199, -8.51722, -1.11252}, {3.22749, -4.51945, -2.90569, 1.79579, -0.140217, 1.36925, 0.607375, 0.135762, -1.32575, -1.32734, -1.50203, -1.01206, -8.0731, -1.12793, -8.36668, -2.97048, 0.00550629, -0.0537701, -1.85046, -2.57298, 5.74449, 8.27985, 6.00261, 4.10202, -0.57904, 2.02993, -0.441503, 0.889927, 1.6888, 2.88969}, {-1.07583, 1.50648, 0.968563, -5.38738, 0.42065, -4.10774, 0.607375, 0.135762, -1.32575, -1.32734, -1.50203, -1.01206, 3.41339, -7.71473, -6.76394, -5.39998, -0.537542, 5.24921, 0.57904, -2.02993, 0.441503, 2.97048, -0.00550629, 0.0537701, 4.73032, 8.03804, 3.60675, 0.889927, 1.6888, 2.88969}, {-1.07583, 1.50648, 0.968563, 1.79579, -0.140217, 1.36925, -1.82213, -0.407286, 3.97724, -1.32734, -1.50203, -1.01206, -0.889927, -1.6888, -2.88969, -10.1537, 0.566373, -5.53076, 4.88236, -8.05586, -3.43275, 2.97048, -0.00550629, 0.0537701, -0.57904, 2.02993, -0.441503, 6.19929, 7.69691, 6.93795}, {-1.07583, 1.50648, 0.968563, 1.79579, -0.140217, 1.36925, 0.607375, 0.135762, -1.32575, 3.98202, 4.50609, 3.03619, -0.889927, -1.6888, -2.88969, -2.97048, 0.00550629, -0.0537701, 0.57904, -2.02993, 0.441503, 7.2738, -6.03144, -3.82048, -7.76222, 2.59079, -5.91849, -1.53958, 1.14575, 8.19268}, {0.596103, 2.3292, 5.82108, 0, -2.17235, 0, -1.54296, 0.977878, 0.61239, 1.74166, 1.97087, 1.32797, 0.245608, 12.3343, 2.39842, 1.9072, 1.47645, -0.756955, 8.32463, -4.16055, -0.808098, -8.87383, -9.35994, -4.55492, -2.15281, 0.249041, -1.64146, -0.245608, -3.64486, -2.39842}, {-0.198701, -0.7764, -1.94036, 0, 6.51705, 0, -1.54296, 0.977878, 0.61239, 1.74166, 1.97087, 1.32797, 1.04041, 6.75045, 10.1599, 8.07903, -2.43506, -3.20651, 2.15281, -0.249041, 1.64146, -1.9072, -1.47645, 0.756955, -9.11944, -7.63445, -6.95334, -0.245608, -3.64486, -2.39842}, {-0.198701, -0.7764, -1.94036, 0, -2.17235, 0, 4.62887, -2.93363, -1.83717, 1.74166, 1.97087, 1.32797, 0.245608, 3.64486, 2.39842, 1.9072, 10.1659, -0.756955, 2.94761, 2.85656, 9.4029, -1.9072, -1.47645, 0.756955, -2.15281, 0.249041, -1.64146, -7.21224, -11.5283, -7.71029}, {-0.198701, -0.7764, -1.94036, 0, -2.17235, 0, -1.54296, 0.977878, 0.61239, -5.22497, -5.91262, -3.98391, 0.245608, 3.64486, 2.39842, 1.9072, 1.47645, -0.756955, 2.15281, -0.249041, 1.64146, -1.1124, 1.62915, 8.51839, -2.15281, 8.93844, -1.64146, 5.92622, -7.55637, -4.84797}, {-2.37946, -3.79135, -6.81576, 0.894391, -1.25242, -0.805215, 0.086206, 0.865556, -0.85654, -1.77375, -0.876923, -0.610165, -5.66348, 4.99561, 1.40791, -1.21208, 0.478185, 2.05404, -1.43177, -6.09423, 1.67666, 8.30708, 3.02951, 0.386615, 1.08695, 2.63201, 1.74951, 2.08592, 0.0140506, 1.81295}, {0.793153, 1.26378, 2.27192, -2.68317, 3.75725, 2.41565, 0.086206, 0.865556, -0.85654, -1.77375, -0.876923, -0.610165, -5.25853, -5.06918, -10.9006, -1.55691, -2.98404, 5.4802, -1.08695, -2.63201, -1.74951, 1.21208, -0.478185, -2.05404, 8.18195, 6.1397, 4.19016, 2.08592, 0.0140506, 1.81295}, {0.793153, 1.26378, 2.27192, 0.894391, -1.25242, -0.805215, -0.258618, -2.59667, 2.56962, -1.77375, -0.876923, -0.610165, -2.08592, -0.0140506, -1.81295, -4.78965, 5.48785, 5.2749, -4.25956, -7.68714, -10.8372, 1.21208, -0.478185, -2.05404, 1.08695, 2.63201, 1.74951, 9.18092, 3.52174, 4.25361}, {0.793153, 1.26378, 2.27192, 0.894391, -1.25242, -0.805215, 0.086206, 0.865556, -0.85654, 5.32125, 2.63077, 1.83049, -2.08592, -0.0140506, -1.81295, -1.21208, 0.478185, 2.05404, -1.08695, -2.63201, -1.74951, -1.96053, -5.53332, -11.1417, -2.49062, 7.64167, 4.97037, 1.74109, -3.44817, 5.23911}, {4.58783, -0.200634, 4.23679, 1.50209, -0.951977, -0.596169, -2.69821, -0.462309, 1.0709, 2.7254, 1.34741, 0.937529, -5.97475, 4.90195, 4.86723, 1.47849, 1.74815, -0.586802, 16.0183, 2.33802, -3.86166, -12.3801, -7.13778, -3.16331, -5.22546, -0.48878, -0.421944, -0.0336074, -1.09404, -2.48256}, {-1.52928, 0.0668781, -1.41226, -4.50626, 2.85593, 1.78851, -2.69821, -0.462309, 1.0709, 2.7254, 1.34741, 0.937529, 6.15072, 0.82653, 8.1316, 12.2713, 3.59739, -4.87041, 5.22546, 0.48878, 0.421944, -1.47849, -1.74815, 0.586802, -16.1271, -5.87841, -4.17206, -0.0336074, -1.09404, -2.48256}, {-1.52928, 0.0668781, -1.41226, 1.50209, -0.951977, -0.596169, 8.09463, 1.38693, -3.21271, 2.7254, 1.34741, 0.937529, 0.0336074, 1.09404, 2.48256, -4.52987, 5.55606, 1.79787, 11.3426, 0.221267, 6.07099, -1.47849, -1.74815, 0.586802, -5.22546, -0.48878, -0.421944, -10.9352, -6.48367, -6.23267}, {-1.52928, 0.0668781, -1.41226, 1.50209, -0.951977, -0.596169, -2.69821, -0.462309, 1.0709, -8.1762, -4.04222, -2.81259, 0.0336074, 1.09404, 2.48256, 1.47849, 1.74815, -0.586802, 5.22546, 0.48878, 0.421944, 4.63862, -2.01567, 6.23585, -11.2338, 3.31913, 1.96273, 10.7592, 0.755194, -6.76616}, {1.83443, -2.90588, -4.62915, 0, -2.17235, 0, 1.94285, -0.797826, 0.198956, -1.33137, 2.00155, -1.74201, 0.755828, 10.1773, -1.90731, -2.40149, 3.67134, -0.245923, -9.41706, 2.98018, -2.94906, 7.72698, -11.6775, 7.21395, 1.64567, 0.211121, 2.15324, -0.755828, -1.48788, 1.90731}, {-0.611477, 0.968627, 1.54305, 0, 6.51705, 0, 1.94285, -0.797826, 0.198956, -1.33137, 2.00155, -1.74201, 3.20174, -2.38662, -8.07952, -10.1729, 6.86264, -1.04175, -1.64567, -0.211121, -2.15324, 2.40149, -3.67134, 0.245923, 6.97115, -7.79508, 9.12126, -0.755828, -1.48788, 1.90731}, {-0.611477, 0.968627, 1.54305, 0, -2.17235, 0, -5.82855, 2.39348, -0.596868, -1.33137, 2.00155, -1.74201, 0.755828, 1.48788, -1.90731, -2.40149, 12.3607, -0.245923, 0.800244, -4.08563, -8.32544, 2.40149, -3.67134, 0.245923, 1.64567, 0.211121, 2.15324, 4.56966, -9.49408, 8.87534}, {-0.611477, 0.968627, 1.54305, 0, -2.17235, 0, 1.94285, -0.797826, 0.198956, 3.99411, -6.00465, 5.22602, 0.755828, 1.48788, -1.90731, -2.40149, 3.67134, -0.245923, -1.64567, -0.211121, -2.15324, 4.8474, -7.54585, -5.92628, 1.64567, 8.90052, 2.15324, -8.52722, 1.70342, 1.11149}, {-3.96631, -0.406167, 1.83974, -1.35283, -0.138536, -1.77009, -0.9692, 1.50642, 1.075, 0.999931, -1.50327, 1.30834, 5.44932, 0.558033, 10.0263, 2.87019, -1.6908, 0.859181, 3.44059, -8.05506, -4.87073, -6.86992, 7.70388, -6.09254, 0.436211, 2.02938, 0.570751, -0.0379859, -0.00388992, -2.94596}, {1.3221, 0.135389, -0.613248, 4.0585, 0.415608, 5.31026, -0.9692, 1.50642, 1.075, 0.999931, -1.50327, 1.30834, -5.25042, -0.537666, 5.39896, 6.74699, -7.71647, -3.4408, -0.436211, -2.02938, -0.570751, -2.87019, 1.6908, -0.859181, -3.56351, 8.04247, -4.66261, -0.0379859, -0.00388992, -2.94596}, {1.3221, 0.135389, -0.613248, -1.35283, -0.138536, -1.77009, 2.9076, -4.51925, -3.22499, 0.999931, -1.50327, 1.30834, 0.0379859, 0.00388992, 2.94596, 8.28152, -1.13665, 7.93953, -5.72462, -2.57094, 1.88224, -2.87019, 1.6908, -0.859181, 0.436211, 2.02938, 0.570751, -4.03771, 6.00919, -8.17932}, {1.3221, 0.135389, -0.613248, -1.35283, -0.138536, -1.77009, -0.9692, 1.50642, 1.075, -2.99979, 4.50981, -3.92502, 0.0379859, 0.00388992, 2.94596, 2.87019, -1.6908, 0.859181, -0.436211, -2.02938, -0.570751, -8.1586, 1.14924, 1.59381, 5.84754, 2.58353, 7.6511, 3.83881, -6.02956, -7.24594}, {3.10069, 1.60532, -7.82452, 0.575383, -0.91145, -1.45197, 1.48006, -0.0647255, 1.36681, -1.02187, 1.51128, -2.52301, -1.73519, 5.43384, 4.37871, -2.54066, 1.20662, 0.105263, -6.47211, 1.00034, -10.3806, 6.62816, -7.25175, 9.9868, 0.551894, -0.741434, 4.91335, -0.566342, -1.78804, 1.42915}, {-1.03356, -0.535107, 2.60817, -1.72615, 2.73435, 4.3559, 1.48006, -0.0647255, 1.36681, -1.02187, 1.51128, -2.52301, 4.7006, 3.92847, -11.8619, -8.46088, 1.46552, -5.36196, -0.551894, 0.741434, -4.91335, 2.54066, -1.20662, -0.105263, 4.63939, -6.78657, 15.0054, -0.566342, -1.78804, 1.42915}, {-1.03356, -0.535107, 2.60817, 0.575383, -0.91145, -1.45197, -4.44017, 0.194177, -4.10042, -1.02187, 1.51128, -2.52301, 0.566342, 1.78804, -1.42915, -4.84219, 4.85242, 5.91313, 3.58236, 2.88186, -15.346, 2.54066, -1.20662, -0.105263, 0.551894, -0.741434, 4.91335, 3.52116, -7.83317, 11.5212}, {-1.03356, -0.535107, 2.60817, 0.575383, -0.91145, -1.45197, 1.48006, -0.0647255, 1.36681, 3.06562, -4.53385, 7.56904, 0.566342, 1.78804, -1.42915, -2.54066, 1.20662, 0.105263, -0.551894, 0.741434, -4.91335, 6.67491, 0.933809, -10.538, -1.74964, 2.90437, 10.7212, -6.48656, -1.52914, -4.03807}, {-2.63316, -2.47826, 0.36108, 0.802811, -1.2478, -0.890444, -2.35614, 1.42089, -0.657266, 0.675604, -0.999172, 1.66807, -5.2885, 5.51247, 4.8112, 1.92002, -0.213947, 1.91307, 11.252, -8.46096, 3.59026, -4.62243, 4.21063, -8.58536, -1.82742, 2.77741, -0.961199, 2.07725, -0.52127, -1.24942}, {0.877721, 0.826085, -0.12036, -2.40843, 3.7434, 2.67133, -2.35614, 1.42089, -0.657266, 0.675604, -0.999172, 1.66807, -5.58814, -2.78307, 1.73086, 11.3446, -5.8975, 4.54214, 1.82742, -2.77741, 0.961199, -1.92002, 0.213947, -1.91307, -4.52984, 6.7741, -7.63348, 2.07725, -0.52127, -1.24942}, {0.877721, 0.826085, -0.12036, 0.802811, -1.2478, -0.890444, 7.06841, -4.26266, 1.9718, 0.675604, -0.999172, 1.66807, -2.07725, 0.52127, 1.24942, -1.29123, 4.77726, 5.47485, -1.68346, -6.08175, 1.44264, -1.92002, 0.213947, -1.91307, -1.82742, 2.77741, -0.961199, -0.625163, 3.47542, -7.9217}, {0.877721, 0.826085, -0.12036, 0.802811, -1.2478, -0.890444, -2.35614, 1.42089, -0.657266, -2.02681, 2.99752, -5.00421, -2.07725, 0.52127, 1.24942, 1.92002, -0.213947, 1.91307, 1.82742, -2.77741, 0.961199, -5.4309, -3.09039, -1.43164, -5.03867, 7.76862, 2.60058, 11.5018, -6.20482, 1.37964}, {-0.815557, 4.36562, -0.135176, -1.95424, 0.460185, -0.243585, -0.0205487, 0.870319, -1.11219, 1.70294, 0.124702, 1.31071, 9.89652, -0.610825, 1.21973, 2.44098, -1.64459, 1.67583, -0.228434, -2.75832, 5.76778, -9.25274, 1.14578, -6.91867, 0.310628, -0.722961, -1.31904, -2.07955, -1.22991, -0.245392}, {0.271852, -1.45521, 0.0450587, 5.86273, -1.38055, 0.730756, -0.0205487, 0.870319, -1.11219, 1.70294, 0.124702, 1.31071, 0.99214, 7.05074, 0.0651576, 2.52317, -5.12587, 6.12457, -0.310628, 0.722961, 1.31904, -2.44098, 1.64459, -1.67583, -6.50113, -1.22177, -6.56189, -2.07955, -1.22991, -0.245392}, {0.271852, -1.45521, 0.0450587, -1.95424, 0.460185, -0.243585, 0.0616461, -2.61096, 3.33656, 1.70294, 0.124702, 1.31071, 2.07955, 1.22991, 0.245392, 10.258, -3.48533, 2.65017, -1.39804, 6.54379, 1.13881, -2.44098, 1.64459, -1.67583, 0.310628, -0.722961, -1.31904, -8.89131, -1.72872, -5.48824}, {0.271852, -1.45521, 0.0450587, -1.95424, 0.460185, -0.243585, -0.0205487, 0.870319, -1.11219, -5.10882, -0.374107, -3.93214, 2.07955, 1.22991, 0.245392, 2.44098, -1.64459, 1.67583, -0.310628, 0.722961, 1.31904, -3.52839, 7.46542, -1.85606, 8.1276, -2.5637, -0.344701, -1.99736, -4.71119, 4.20335}, {-2.82343, -2.82223, 1.11598, 0.652804, 0.651093, 1.763, 0.935946, -1.40658, 0.556196, -2.52989, -0.185258, -1.9472, -4.58144, -4.57199, -8.77136, -1.9638, 0.933829, -2.86668, -6.064, 6.20211, -2.45247, 12.0834, -0.192795, 10.6555, 2.32021, -0.575803, 0.227687, 1.97023, 1.96762, 1.71938}, {0.941145, 0.940742, -0.371993, -1.95841, -1.95328, -5.28899, 0.935946, -1.40658, 0.556196, -2.52989, -0.185258, -1.9472, -5.73481, -5.73058, -0.231403, -5.70759, 6.56014, -5.09146, -2.32021, 0.575803, -0.227687, 1.9638, -0.933829, 2.86668, 12.4398, 0.165231, 8.01649, 1.97023, 1.96762, 1.71938}, {0.941145, 0.940742, -0.371993, 0.652804, 0.651093, 1.763, -2.80784, 4.21973, -1.66859, -2.52989, -0.185258, -1.9472, -1.97023, -1.96762, -1.71938, -4.57502, -1.67054, -9.91867, -6.08479, -3.18716, 1.26029, 1.9638, -0.933829, 2.86668, 2.32021, -0.575803, 0.227687, 12.0898, 2.70865, 9.50817}, {0.941145, 0.940742, -0.371993, 0.652804, 0.651093, 1.763, 0.935946, -1.40658, 0.556196, 7.58968, 0.555775, 5.8416, -1.97023, -1.96762, -1.71938, -1.9638, 0.933829, -2.86668, -2.32021, 0.575803, -0.227687, -1.80078, -4.6968, 4.35465, -0.291002, -3.18018, -6.8243, -1.77356, 7.59392, -0.505409}, {4.38876, 6.50951, 0.486449, -0.364196, 1.94951, -0.0603643, 0.336809, -1.04259, -1.05295, 1.49031, 1.26291, 1.27547, 3.71522, -7.52572, 0.5165, 0.0338521, -1.12102, 1.37614, 0.0447138, 8.14114, 5.71377, -5.99508, -3.93064, -6.47801, -1.39195, -3.97078, -1.50195, -2.25844, -0.272335, -0.275043}, {-1.46292, -2.16984, -0.16215, 1.09259, -5.84854, 0.181093, 0.336809, -1.04259, -1.05295, 1.49031, 1.26291, 1.27547, 8.11012, 8.95169, 0.923642, -1.31338, 3.04934, 5.58796, 1.39195, 3.97078, 1.50195, -0.0338521, 1.12102, -1.37614, -7.35318, -9.02244, -6.60383, -2.25844, -0.272335, -0.275043}, {-1.46292, -2.16984, -0.16215, -0.364196, 1.94951, -0.0603643, -1.01043, 3.12777, 3.15886, 1.49031, 1.26291, 1.27547, 2.25844, 0.272335, 0.275043, 1.49064, -8.91908, 1.6176, 7.24363, 12.6501, 2.15055, -0.0338521, 1.12102, -1.37614, -1.39195, -3.97078, -1.50195, -8.21966, -5.32399, -5.37692}, {-1.46292, -2.16984, -0.16215, -0.364196, 1.94951, -0.0603643, 0.336809, -1.04259, -1.05295, -4.47092, -3.78874, -3.82641, 2.25844, 0.272335, 0.275043, 0.0338521, -1.12102, 1.37614, 1.39195, 3.97078, 1.50195, 5.81783, 9.80037, -0.727539, 0.0648337, -11.7688, -1.26049, -3.60567, 3.89803, 3.93678}, {-4.70136, 0, -3.55271e-15, -0.960805, 1.44394, -0.570969, 1.09021, -0.00626368, 2.02293, -1.69653, -1.43767, -1.45196, 3.09377, -7.56055, 2.98963, -0.159958, -1.77706, -1.79473, -7.6455, 0.0327971, -10.5922, 6.94608, 7.52775, 7.60258, 3.28465, -0.00774234, 2.50048, 0.749448, 1.7848, -0.705756}, {1.56712, -2.22045e-16, 1.11022e-15, 2.88242, -4.33181, 1.71291, 1.09021, -0.00626368, 2.02293, -1.69653, -1.43767, -1.45196, -7.01793, -1.7848, 0.705756, -4.52081, -1.75201, -9.88646, -3.28465, 0.00774234, -2.50048, 0.159958, 1.77706, 1.79473, 10.0708, 5.74295, 8.30834, 0.749448, 1.7848, -0.705756}, {1.56712, -8.88178e-16, -4.44089e-16, -0.960805, 1.44394, -0.570969, -3.27064, 0.018791, -6.0688, -1.69653, -1.43767, -1.45196, -0.749448, -1.7848, 0.705756, 3.68326, -7.5528, 0.489149, -9.55313, 0.00774234, -2.50048, 0.159958, 1.77706, 1.79473, 3.28465, -0.00774234, 2.50048, 7.53557, 7.53549, 5.1021}, {1.56712, 2.22045e-16, 2.22045e-16, -0.960805, 1.44394, -0.570969, 1.09021, -0.00626368, 2.02293, 5.08959, 4.31302, 4.35589, -0.749448, -1.7848, 0.705756, -0.159958, -1.77706, -1.79473, -3.28465, 0.00774234, -2.50048, -6.10853, 1.77706, 1.79473, 7.12787, -5.78349, 4.78436, -3.61141, 1.80986, -8.79749}}
]
- + total size : 6.8e+02kB
+ + total size : 6.3e+02kB
]
- + total size : 6.8e+02kB
+ + total size : 6.3e+02kB
]
diff --git a/test/test_fem/test_integrate_tetrahedron_4.verified b/test/test_fem/test_integrate_tetrahedron_4.verified
index d00d0fcc7..552095fdc 100644
--- a/test/test_fem/test_integrate_tetrahedron_4.verified
+++ b/test/test_fem/test_integrate_tetrahedron_4.verified
@@ -1,172 +1,170 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 3
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 131
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
+ ]
(not_ghost:_triangle_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 240
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{45, 49, 35}, {45, 8, 50}, {46, 38, 51}, {23, 47, 52}, {46, 50, 10}, {37, 49, 47}, {25, 52, 48}, {40, 48, 51}, {35, 49, 36}, {38, 39, 51}, {8, 9, 50}, {23, 52, 24}, {36, 49, 37}, {9, 10, 50}, {39, 40, 51}, {24, 52, 25}, {45, 44, 49}, {45, 50, 44}, {46, 44, 50}, {44, 47, 49}, {46, 51, 44}, {44, 52, 47}, {44, 51, 48}, {44, 48, 52}, {45, 35, 53}, {45, 53, 8}, {46, 54, 38}, {23, 55, 47}, {46, 10, 54}, {37, 47, 55}, {25, 48, 56}, {40, 56, 48}, {4, 37, 55}, {6, 53, 35}, {7, 54, 10}, {7, 38, 54}, {6, 8, 53}, {5, 56, 40}, {4, 55, 23}, {5, 25, 56}, {11, 62, 58}, {14, 63, 59}, {8, 64, 60}, {17, 65, 61}, {10, 58, 64}, {19, 60, 65}, {13, 59, 62}, {16, 61, 63}, {14, 15, 63}, {11, 12, 62}, {17, 18, 65}, {8, 9, 64}, {12, 13, 62}, {15, 16, 63}, {9, 10, 64}, {18, 19, 65}, {58, 62, 57}, {59, 57, 62}, {59, 63, 57}, {61, 57, 63}, {58, 57, 64}, {60, 64, 57}, {60, 57, 65}, {61, 65, 57}, {11, 58, 67}, {14, 59, 66}, {8, 60, 69}, {17, 61, 68}, {10, 67, 58}, {19, 69, 60}, {13, 66, 59}, {16, 68, 61}, {2, 68, 16}, {3, 66, 13}, {6, 69, 19}, {7, 67, 10}, {7, 11, 67}, {3, 14, 66}, {6, 8, 69}, {2, 17, 68}, {26, 75, 71}, {29, 76, 72}, {23, 77, 73}, {20, 78, 74}, {25, 71, 77}, {22, 73, 78}, {28, 72, 75}, {31, 74, 76}, {29, 30, 76}, {26, 27, 75}, {20, 21, 78}, {23, 24, 77}, {27, 28, 75}, {30, 31, 76}, {24, 25, 77}, {21, 22, 78}, {71, 75, 70}, {72, 70, 75}, {72, 76, 70}, {70, 76, 74}, {71, 70, 77}, {70, 73, 77}, {70, 78, 73}, {70, 74, 78}, {26, 71, 80}, {29, 72, 79}, {23, 73, 82}, {20, 74, 81}, {25, 80, 71}, {22, 82, 73}, {28, 79, 72}, {31, 81, 74}, {0, 81, 31}, {1, 79, 28}, {4, 82, 22}, {5, 80, 25}, {5, 26, 80}, {1, 29, 79}, {4, 23, 82}, {0, 20, 81}, {41, 84, 88}, {14, 89, 84}, {29, 86, 90}, {32, 91, 85}, {16, 85, 89}, {43, 88, 86}, {34, 87, 91}, {31, 90, 87}, {41, 88, 42}, {14, 15, 89}, {29, 90, 30}, {32, 33, 91}, {42, 88, 43}, {15, 16, 89}, {33, 34, 91}, {30, 90, 31}, {84, 89, 83}, {84, 83, 88}, {85, 83, 89}, {86, 88, 83}, {85, 91, 83}, {86, 83, 90}, {87, 90, 83}, {87, 83, 91}, {14, 84, 92}, {41, 92, 84}, {29, 94, 86}, {32, 85, 93}, {43, 86, 94}, {16, 93, 85}, {31, 87, 95}, {34, 95, 87}, {1, 43, 94}, {2, 93, 16}, {3, 92, 41}, {3, 14, 92}, {1, 94, 29}, {2, 32, 93}, {0, 31, 95}, {0, 95, 34}, {32, 97, 101}, {17, 102, 97}, {35, 103, 98}, {20, 99, 104}, {19, 98, 102}, {34, 101, 99}, {22, 104, 100}, {37, 100, 103}, {32, 101, 33}, {35, 36, 103}, {17, 18, 102}, {20, 104, 21}, {33, 101, 34}, {18, 19, 102}, {36, 37, 103}, {21, 104, 22}, {97, 96, 101}, {97, 102, 96}, {98, 96, 102}, {99, 101, 96}, {98, 103, 96}, {99, 96, 104}, {100, 96, 103}, {100, 104, 96}, {32, 105, 97}, {17, 97, 105}, {35, 98, 106}, {20, 107, 99}, {19, 106, 98}, {34, 99, 107}, {22, 100, 108}, {37, 108, 100}, {0, 34, 107}, {2, 105, 32}, {6, 106, 19}, {6, 35, 106}, {2, 17, 105}, {4, 108, 37}, {0, 107, 20}, {4, 22, 108}, {11, 110, 115}, {38, 114, 110}, {26, 116, 112}, {41, 111, 117}, {13, 115, 111}, {40, 112, 114}, {43, 117, 113}, {28, 113, 116}, {11, 115, 12}, {38, 39, 114}, {26, 27, 116}, {41, 117, 42}, {39, 40, 114}, {12, 115, 13}, {42, 117, 43}, {27, 28, 116}, {109, 110, 114}, {109, 115, 110}, {111, 115, 109}, {112, 109, 114}, {111, 109, 117}, {112, 116, 109}, {113, 109, 116}, {113, 117, 109}, {11, 118, 110}, {38, 110, 118}, {26, 112, 120}, {41, 119, 111}, {40, 120, 112}, {13, 111, 119}, {28, 121, 113}, {43, 113, 121}, {5, 120, 40}, {3, 13, 119}, {7, 38, 118}, {7, 118, 11}, {5, 26, 120}, {3, 119, 41}, {1, 121, 28}, {1, 43, 121}}
]
+ ]
(not_ghost:_tetrahedron_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_4
+ size : 341
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{124, 123, 125, 129}, {43, 86, 130, 88}, {70, 124, 129, 126}, {48, 77, 25, 52}, {31, 0, 81, 95}, {0, 107, 81, 95}, {126, 91, 87, 101}, {124, 70, 129, 125}, {43, 121, 113, 130}, {55, 100, 82, 108}, {100, 55, 82, 73}, {23, 55, 73, 82}, {71, 75, 125, 112}, {123, 44, 124, 125}, {43, 113, 117, 130}, {94, 43, 86, 130}, {122, 123, 128, 129}, {46, 10, 58, 50}, {99, 107, 81, 20}, {125, 112, 116, 109}, {79, 72, 28, 130}, {123, 122, 125, 129}, {67, 11, 7, 118}, {123, 127, 128, 129}, {124, 44, 49, 47}, {17, 65, 18, 102}, {76, 90, 30, 31}, {54, 10, 7, 67}, {9, 10, 50, 64}, {38, 54, 7, 118}, {123, 124, 127, 129}, {12, 115, 62, 13}, {97, 61, 102, 127}, {45, 53, 8, 69}, {38, 114, 39, 51}, {125, 75, 129, 116}, {122, 44, 123, 125}, {71, 70, 77, 124}, {114, 112, 125, 109}, {32, 93, 97, 85}, {53, 6, 8, 69}, {117, 128, 129, 109}, {63, 61, 16, 89}, {76, 90, 31, 74}, {61, 85, 16, 89}, {65, 123, 60, 98}, {55, 100, 47, 73}, {100, 47, 103, 37}, {96, 123, 103, 124}, {55, 23, 4, 82}, {78, 100, 22, 73}, {61, 85, 89, 127}, {61, 127, 89, 63}, {121, 43, 94, 130}, {108, 22, 82, 4}, {14, 92, 3, 66}, {78, 21, 104, 20}, {100, 78, 104, 124}, {14, 15, 89, 63}, {90, 126, 87, 74}, {90, 76, 126, 74}, {3, 13, 66, 119}, {108, 55, 4, 82}, {58, 11, 110, 62}, {11, 115, 110, 62}, {57, 123, 60, 65}, {122, 58, 110, 62}, {115, 122, 110, 62}, {117, 128, 88, 129}, {86, 129, 130, 88}, {70, 71, 125, 124}, {107, 0, 34, 95}, {122, 114, 125, 109}, {126, 86, 83, 129}, {92, 3, 66, 119}, {129, 86, 83, 88}, {128, 41, 119, 111}, {117, 128, 111, 41}, {11, 12, 115, 62}, {33, 32, 101, 91}, {70, 124, 126, 74}, {100, 124, 47, 73}, {96, 124, 126, 127}, {78, 70, 124, 73}, {90, 76, 30, 29}, {96, 123, 124, 127}, {15, 63, 16, 89}, {121, 79, 1, 28}, {76, 70, 126, 74}, {122, 114, 109, 110}, {129, 117, 130, 88}, {123, 44, 49, 124}, {26, 80, 5, 120}, {123, 65, 102, 98}, {57, 123, 127, 128}, {117, 128, 109, 111}, {70, 78, 124, 74}, {95, 107, 81, 87}, {55, 100, 37, 47}, {77, 24, 25, 52}, {100, 78, 22, 104}, {56, 71, 25, 48}, {14, 59, 89, 84}, {96, 100, 104, 124}, {2, 105, 68, 17}, {124, 123, 103, 49}, {123, 57, 60, 64}, {44, 124, 52, 47}, {71, 112, 48, 56}, {41, 117, 88, 42}, {99, 96, 126, 101}, {97, 85, 127, 101}, {34, 91, 101, 87}, {128, 127, 83, 129}, {126, 90, 83, 86}, {75, 71, 125, 70}, {99, 126, 74, 87}, {23, 55, 47, 73}, {100, 78, 124, 73}, {32, 91, 85, 101}, {57, 122, 62, 58}, {71, 77, 25, 48}, {70, 77, 124, 73}, {114, 38, 110, 51}, {114, 40, 39, 51}, {59, 14, 89, 63}, {53, 106, 35, 6}, {45, 123, 98, 60}, {99, 126, 87, 101}, {106, 53, 69, 6}, {46, 122, 110, 51}, {128, 122, 129, 109}, {124, 100, 47, 103}, {107, 99, 81, 87}, {125, 44, 48, 51}, {38, 46, 110, 51}, {44, 123, 49, 45}, {124, 47, 49, 103}, {36, 35, 49, 103}, {46, 122, 51, 44}, {54, 67, 7, 118}, {10, 64, 58, 50}, {122, 114, 51, 125}, {11, 58, 118, 67}, {44, 122, 51, 125}, {58, 11, 118, 110}, {22, 100, 82, 73}, {46, 122, 58, 110}, {108, 100, 82, 22}, {45, 60, 8, 50}, {99, 81, 74, 20}, {60, 45, 8, 69}, {75, 71, 26, 112}, {107, 0, 81, 20}, {126, 91, 83, 87}, {31, 90, 87, 74}, {34, 107, 95, 87}, {126, 96, 127, 101}, {91, 126, 127, 101}, {92, 14, 84, 66}, {105, 32, 2, 93}, {47, 49, 103, 37}, {115, 122, 109, 110}, {33, 91, 101, 34}, {49, 36, 103, 37}, {112, 71, 48, 125}, {59, 128, 89, 84}, {19, 65, 60, 98}, {124, 126, 127, 129}, {126, 91, 127, 83}, {31, 81, 74, 87}, {81, 99, 74, 87}, {117, 113, 129, 130}, {84, 128, 88, 41}, {113, 117, 129, 109}, {90, 76, 29, 86}, {65, 19, 102, 98}, {55, 100, 108, 37}, {96, 123, 102, 98}, {14, 59, 84, 66}, {100, 96, 103, 124}, {32, 105, 97, 93}, {99, 34, 101, 87}, {127, 126, 83, 129}, {94, 29, 130, 86}, {19, 106, 69, 6}, {128, 117, 88, 41}, {123, 96, 103, 98}, {46, 38, 110, 118}, {77, 23, 24, 52}, {19, 65, 102, 18}, {121, 79, 28, 130}, {46, 54, 38, 118}, {113, 121, 28, 130}, {108, 55, 37, 4}, {112, 75, 116, 26}, {56, 40, 5, 120}, {75, 27, 28, 116}, {127, 85, 89, 83}, {66, 59, 84, 128}, {85, 61, 97, 127}, {122, 125, 129, 109}, {26, 75, 116, 27}, {128, 129, 83, 88}, {122, 123, 57, 128}, {40, 112, 56, 48}, {80, 56, 25, 5}, {84, 128, 83, 88}, {91, 85, 127, 83}, {57, 61, 63, 127}, {123, 122, 64, 50}, {3, 92, 41, 119}, {44, 123, 45, 50}, {47, 124, 52, 73}, {79, 72, 130, 29}, {32, 85, 97, 101}, {2, 93, 16, 68}, {105, 93, 68, 97}, {97, 61, 68, 17}, {85, 91, 127, 101}, {96, 97, 127, 101}, {105, 97, 68, 17}, {124, 77, 52, 73}, {56, 71, 80, 25}, {60, 64, 8, 50}, {64, 9, 8, 50}, {65, 61, 102, 17}, {93, 105, 68, 2}, {61, 97, 102, 17}, {78, 21, 22, 104}, {23, 47, 52, 73}, {112, 40, 56, 120}, {80, 56, 5, 120}, {31, 95, 81, 87}, {99, 107, 34, 87}, {58, 46, 110, 118}, {43, 121, 94, 1}, {112, 75, 125, 116}, {122, 114, 110, 51}, {77, 23, 52, 73}, {90, 126, 83, 87}, {13, 66, 111, 59}, {111, 66, 13, 119}, {66, 128, 111, 59}, {111, 128, 66, 119}, {60, 50, 123, 64}, {123, 50, 60, 45}, {74, 104, 126, 99}, {104, 20, 74, 78}, {74, 20, 104, 99}, {45, 69, 106, 53}, {45, 106, 35, 53}, {35, 106, 45, 98}, {129, 116, 109, 125}, {109, 116, 129, 113}, {54, 10, 58, 46}, {58, 10, 54, 67}, {54, 58, 118, 46}, {118, 58, 54, 67}, {113, 129, 75, 116}, {28, 113, 75, 116}, {129, 75, 70, 72}, {129, 70, 75, 125}, {43, 117, 88, 130}, {88, 117, 43, 42}, {56, 112, 80, 71}, {56, 80, 112, 120}, {80, 112, 26, 71}, {80, 26, 112, 120}, {74, 124, 104, 78}, {74, 104, 124, 126}, {126, 104, 96, 99}, {96, 104, 126, 124}, {62, 128, 57, 59}, {57, 128, 62, 122}, {130, 29, 121, 79}, {121, 29, 130, 94}, {29, 1, 121, 79}, {121, 1, 29, 94}, {58, 50, 122, 46}, {122, 50, 58, 64}, {97, 93, 61, 85}, {97, 61, 93, 68}, {61, 93, 16, 85}, {61, 16, 93, 68}, {59, 89, 127, 63}, {127, 89, 59, 128}, {59, 127, 57, 63}, {57, 127, 59, 128}, {86, 76, 126, 90}, {86, 126, 76, 129}, {125, 51, 112, 114}, {112, 51, 125, 48}, {51, 40, 112, 114}, {112, 40, 51, 48}, {48, 124, 77, 52}, {44, 48, 124, 125}, {44, 124, 48, 52}, {61, 102, 123, 65}, {123, 102, 61, 127}, {61, 123, 57, 65}, {57, 123, 61, 127}, {106, 19, 60, 98}, {60, 19, 106, 69}, {106, 60, 45, 98}, {45, 60, 106, 69}, {122, 64, 57, 123}, {57, 64, 122, 58}, {76, 129, 70, 72}, {70, 129, 76, 126}, {84, 66, 119, 92}, {84, 119, 66, 128}, {41, 84, 119, 92}, {41, 119, 84, 128}, {124, 71, 48, 77}, {124, 48, 71, 125}, {128, 89, 83, 127}, {83, 89, 128, 84}, {111, 128, 62, 59}, {62, 111, 13, 115}, {13, 111, 62, 59}, {122, 50, 44, 46}, {44, 50, 122, 123}, {102, 127, 96, 97}, {96, 127, 102, 123}, {103, 123, 45, 49}, {103, 45, 123, 98}, {35, 103, 45, 49}, {35, 45, 103, 98}, {28, 130, 75, 113}, {75, 130, 28, 72}, {130, 129, 75, 113}, {75, 129, 130, 72}, {29, 130, 76, 72}, {76, 130, 29, 86}, {130, 129, 76, 72}, {76, 129, 130, 86}, {62, 111, 122, 128}, {122, 111, 62, 115}, {111, 109, 122, 128}, {122, 109, 111, 115}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 131
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
+ ]
(not_ghost:_triangle_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 240
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{45, 49, 35}, {45, 8, 50}, {46, 38, 51}, {23, 47, 52}, {46, 50, 10}, {37, 49, 47}, {25, 52, 48}, {40, 48, 51}, {35, 49, 36}, {38, 39, 51}, {8, 9, 50}, {23, 52, 24}, {36, 49, 37}, {9, 10, 50}, {39, 40, 51}, {24, 52, 25}, {45, 44, 49}, {45, 50, 44}, {46, 44, 50}, {44, 47, 49}, {46, 51, 44}, {44, 52, 47}, {44, 51, 48}, {44, 48, 52}, {45, 35, 53}, {45, 53, 8}, {46, 54, 38}, {23, 55, 47}, {46, 10, 54}, {37, 47, 55}, {25, 48, 56}, {40, 56, 48}, {4, 37, 55}, {6, 53, 35}, {7, 54, 10}, {7, 38, 54}, {6, 8, 53}, {5, 56, 40}, {4, 55, 23}, {5, 25, 56}, {11, 62, 58}, {14, 63, 59}, {8, 64, 60}, {17, 65, 61}, {10, 58, 64}, {19, 60, 65}, {13, 59, 62}, {16, 61, 63}, {14, 15, 63}, {11, 12, 62}, {17, 18, 65}, {8, 9, 64}, {12, 13, 62}, {15, 16, 63}, {9, 10, 64}, {18, 19, 65}, {58, 62, 57}, {59, 57, 62}, {59, 63, 57}, {61, 57, 63}, {58, 57, 64}, {60, 64, 57}, {60, 57, 65}, {61, 65, 57}, {11, 58, 67}, {14, 59, 66}, {8, 60, 69}, {17, 61, 68}, {10, 67, 58}, {19, 69, 60}, {13, 66, 59}, {16, 68, 61}, {2, 68, 16}, {3, 66, 13}, {6, 69, 19}, {7, 67, 10}, {7, 11, 67}, {3, 14, 66}, {6, 8, 69}, {2, 17, 68}, {26, 75, 71}, {29, 76, 72}, {23, 77, 73}, {20, 78, 74}, {25, 71, 77}, {22, 73, 78}, {28, 72, 75}, {31, 74, 76}, {29, 30, 76}, {26, 27, 75}, {20, 21, 78}, {23, 24, 77}, {27, 28, 75}, {30, 31, 76}, {24, 25, 77}, {21, 22, 78}, {71, 75, 70}, {72, 70, 75}, {72, 76, 70}, {70, 76, 74}, {71, 70, 77}, {70, 73, 77}, {70, 78, 73}, {70, 74, 78}, {26, 71, 80}, {29, 72, 79}, {23, 73, 82}, {20, 74, 81}, {25, 80, 71}, {22, 82, 73}, {28, 79, 72}, {31, 81, 74}, {0, 81, 31}, {1, 79, 28}, {4, 82, 22}, {5, 80, 25}, {5, 26, 80}, {1, 29, 79}, {4, 23, 82}, {0, 20, 81}, {41, 84, 88}, {14, 89, 84}, {29, 86, 90}, {32, 91, 85}, {16, 85, 89}, {43, 88, 86}, {34, 87, 91}, {31, 90, 87}, {41, 88, 42}, {14, 15, 89}, {29, 90, 30}, {32, 33, 91}, {42, 88, 43}, {15, 16, 89}, {33, 34, 91}, {30, 90, 31}, {84, 89, 83}, {84, 83, 88}, {85, 83, 89}, {86, 88, 83}, {85, 91, 83}, {86, 83, 90}, {87, 90, 83}, {87, 83, 91}, {14, 84, 92}, {41, 92, 84}, {29, 94, 86}, {32, 85, 93}, {43, 86, 94}, {16, 93, 85}, {31, 87, 95}, {34, 95, 87}, {1, 43, 94}, {2, 93, 16}, {3, 92, 41}, {3, 14, 92}, {1, 94, 29}, {2, 32, 93}, {0, 31, 95}, {0, 95, 34}, {32, 97, 101}, {17, 102, 97}, {35, 103, 98}, {20, 99, 104}, {19, 98, 102}, {34, 101, 99}, {22, 104, 100}, {37, 100, 103}, {32, 101, 33}, {35, 36, 103}, {17, 18, 102}, {20, 104, 21}, {33, 101, 34}, {18, 19, 102}, {36, 37, 103}, {21, 104, 22}, {97, 96, 101}, {97, 102, 96}, {98, 96, 102}, {99, 101, 96}, {98, 103, 96}, {99, 96, 104}, {100, 96, 103}, {100, 104, 96}, {32, 105, 97}, {17, 97, 105}, {35, 98, 106}, {20, 107, 99}, {19, 106, 98}, {34, 99, 107}, {22, 100, 108}, {37, 108, 100}, {0, 34, 107}, {2, 105, 32}, {6, 106, 19}, {6, 35, 106}, {2, 17, 105}, {4, 108, 37}, {0, 107, 20}, {4, 22, 108}, {11, 110, 115}, {38, 114, 110}, {26, 116, 112}, {41, 111, 117}, {13, 115, 111}, {40, 112, 114}, {43, 117, 113}, {28, 113, 116}, {11, 115, 12}, {38, 39, 114}, {26, 27, 116}, {41, 117, 42}, {39, 40, 114}, {12, 115, 13}, {42, 117, 43}, {27, 28, 116}, {109, 110, 114}, {109, 115, 110}, {111, 115, 109}, {112, 109, 114}, {111, 109, 117}, {112, 116, 109}, {113, 109, 116}, {113, 117, 109}, {11, 118, 110}, {38, 110, 118}, {26, 112, 120}, {41, 119, 111}, {40, 120, 112}, {13, 111, 119}, {28, 121, 113}, {43, 113, 121}, {5, 120, 40}, {3, 13, 119}, {7, 38, 118}, {7, 118, 11}, {5, 26, 120}, {3, 119, 41}, {1, 121, 28}, {1, 43, 121}}
]
+ ]
(not_ghost:_tetrahedron_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_4
+ size : 341
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{124, 123, 125, 129}, {43, 86, 130, 88}, {70, 124, 129, 126}, {48, 77, 25, 52}, {31, 0, 81, 95}, {0, 107, 81, 95}, {126, 91, 87, 101}, {124, 70, 129, 125}, {43, 121, 113, 130}, {55, 100, 82, 108}, {100, 55, 82, 73}, {23, 55, 73, 82}, {71, 75, 125, 112}, {123, 44, 124, 125}, {43, 113, 117, 130}, {94, 43, 86, 130}, {122, 123, 128, 129}, {46, 10, 58, 50}, {99, 107, 81, 20}, {125, 112, 116, 109}, {79, 72, 28, 130}, {123, 122, 125, 129}, {67, 11, 7, 118}, {123, 127, 128, 129}, {124, 44, 49, 47}, {17, 65, 18, 102}, {76, 90, 30, 31}, {54, 10, 7, 67}, {9, 10, 50, 64}, {38, 54, 7, 118}, {123, 124, 127, 129}, {12, 115, 62, 13}, {97, 61, 102, 127}, {45, 53, 8, 69}, {38, 114, 39, 51}, {125, 75, 129, 116}, {122, 44, 123, 125}, {71, 70, 77, 124}, {114, 112, 125, 109}, {32, 93, 97, 85}, {53, 6, 8, 69}, {117, 128, 129, 109}, {63, 61, 16, 89}, {76, 90, 31, 74}, {61, 85, 16, 89}, {65, 123, 60, 98}, {55, 100, 47, 73}, {100, 47, 103, 37}, {96, 123, 103, 124}, {55, 23, 4, 82}, {78, 100, 22, 73}, {61, 85, 89, 127}, {61, 127, 89, 63}, {121, 43, 94, 130}, {108, 22, 82, 4}, {14, 92, 3, 66}, {78, 21, 104, 20}, {100, 78, 104, 124}, {14, 15, 89, 63}, {90, 126, 87, 74}, {90, 76, 126, 74}, {3, 13, 66, 119}, {108, 55, 4, 82}, {58, 11, 110, 62}, {11, 115, 110, 62}, {57, 123, 60, 65}, {122, 58, 110, 62}, {115, 122, 110, 62}, {117, 128, 88, 129}, {86, 129, 130, 88}, {70, 71, 125, 124}, {107, 0, 34, 95}, {122, 114, 125, 109}, {126, 86, 83, 129}, {92, 3, 66, 119}, {129, 86, 83, 88}, {128, 41, 119, 111}, {117, 128, 111, 41}, {11, 12, 115, 62}, {33, 32, 101, 91}, {70, 124, 126, 74}, {100, 124, 47, 73}, {96, 124, 126, 127}, {78, 70, 124, 73}, {90, 76, 30, 29}, {96, 123, 124, 127}, {15, 63, 16, 89}, {121, 79, 1, 28}, {76, 70, 126, 74}, {122, 114, 109, 110}, {129, 117, 130, 88}, {123, 44, 49, 124}, {26, 80, 5, 120}, {123, 65, 102, 98}, {57, 123, 127, 128}, {117, 128, 109, 111}, {70, 78, 124, 74}, {95, 107, 81, 87}, {55, 100, 37, 47}, {77, 24, 25, 52}, {100, 78, 22, 104}, {56, 71, 25, 48}, {14, 59, 89, 84}, {96, 100, 104, 124}, {2, 105, 68, 17}, {124, 123, 103, 49}, {123, 57, 60, 64}, {44, 124, 52, 47}, {71, 112, 48, 56}, {41, 117, 88, 42}, {99, 96, 126, 101}, {97, 85, 127, 101}, {34, 91, 101, 87}, {128, 127, 83, 129}, {126, 90, 83, 86}, {75, 71, 125, 70}, {99, 126, 74, 87}, {23, 55, 47, 73}, {100, 78, 124, 73}, {32, 91, 85, 101}, {57, 122, 62, 58}, {71, 77, 25, 48}, {70, 77, 124, 73}, {114, 38, 110, 51}, {114, 40, 39, 51}, {59, 14, 89, 63}, {53, 106, 35, 6}, {45, 123, 98, 60}, {99, 126, 87, 101}, {106, 53, 69, 6}, {46, 122, 110, 51}, {128, 122, 129, 109}, {124, 100, 47, 103}, {107, 99, 81, 87}, {125, 44, 48, 51}, {38, 46, 110, 51}, {44, 123, 49, 45}, {124, 47, 49, 103}, {36, 35, 49, 103}, {46, 122, 51, 44}, {54, 67, 7, 118}, {10, 64, 58, 50}, {122, 114, 51, 125}, {11, 58, 118, 67}, {44, 122, 51, 125}, {58, 11, 118, 110}, {22, 100, 82, 73}, {46, 122, 58, 110}, {108, 100, 82, 22}, {45, 60, 8, 50}, {99, 81, 74, 20}, {60, 45, 8, 69}, {75, 71, 26, 112}, {107, 0, 81, 20}, {126, 91, 83, 87}, {31, 90, 87, 74}, {34, 107, 95, 87}, {126, 96, 127, 101}, {91, 126, 127, 101}, {92, 14, 84, 66}, {105, 32, 2, 93}, {47, 49, 103, 37}, {115, 122, 109, 110}, {33, 91, 101, 34}, {49, 36, 103, 37}, {112, 71, 48, 125}, {59, 128, 89, 84}, {19, 65, 60, 98}, {124, 126, 127, 129}, {126, 91, 127, 83}, {31, 81, 74, 87}, {81, 99, 74, 87}, {117, 113, 129, 130}, {84, 128, 88, 41}, {113, 117, 129, 109}, {90, 76, 29, 86}, {65, 19, 102, 98}, {55, 100, 108, 37}, {96, 123, 102, 98}, {14, 59, 84, 66}, {100, 96, 103, 124}, {32, 105, 97, 93}, {99, 34, 101, 87}, {127, 126, 83, 129}, {94, 29, 130, 86}, {19, 106, 69, 6}, {128, 117, 88, 41}, {123, 96, 103, 98}, {46, 38, 110, 118}, {77, 23, 24, 52}, {19, 65, 102, 18}, {121, 79, 28, 130}, {46, 54, 38, 118}, {113, 121, 28, 130}, {108, 55, 37, 4}, {112, 75, 116, 26}, {56, 40, 5, 120}, {75, 27, 28, 116}, {127, 85, 89, 83}, {66, 59, 84, 128}, {85, 61, 97, 127}, {122, 125, 129, 109}, {26, 75, 116, 27}, {128, 129, 83, 88}, {122, 123, 57, 128}, {40, 112, 56, 48}, {80, 56, 25, 5}, {84, 128, 83, 88}, {91, 85, 127, 83}, {57, 61, 63, 127}, {123, 122, 64, 50}, {3, 92, 41, 119}, {44, 123, 45, 50}, {47, 124, 52, 73}, {79, 72, 130, 29}, {32, 85, 97, 101}, {2, 93, 16, 68}, {105, 93, 68, 97}, {97, 61, 68, 17}, {85, 91, 127, 101}, {96, 97, 127, 101}, {105, 97, 68, 17}, {124, 77, 52, 73}, {56, 71, 80, 25}, {60, 64, 8, 50}, {64, 9, 8, 50}, {65, 61, 102, 17}, {93, 105, 68, 2}, {61, 97, 102, 17}, {78, 21, 22, 104}, {23, 47, 52, 73}, {112, 40, 56, 120}, {80, 56, 5, 120}, {31, 95, 81, 87}, {99, 107, 34, 87}, {58, 46, 110, 118}, {43, 121, 94, 1}, {112, 75, 125, 116}, {122, 114, 110, 51}, {77, 23, 52, 73}, {90, 126, 83, 87}, {13, 66, 111, 59}, {111, 66, 13, 119}, {66, 128, 111, 59}, {111, 128, 66, 119}, {60, 50, 123, 64}, {123, 50, 60, 45}, {74, 104, 126, 99}, {104, 20, 74, 78}, {74, 20, 104, 99}, {45, 69, 106, 53}, {45, 106, 35, 53}, {35, 106, 45, 98}, {129, 116, 109, 125}, {109, 116, 129, 113}, {54, 10, 58, 46}, {58, 10, 54, 67}, {54, 58, 118, 46}, {118, 58, 54, 67}, {113, 129, 75, 116}, {28, 113, 75, 116}, {129, 75, 70, 72}, {129, 70, 75, 125}, {43, 117, 88, 130}, {88, 117, 43, 42}, {56, 112, 80, 71}, {56, 80, 112, 120}, {80, 112, 26, 71}, {80, 26, 112, 120}, {74, 124, 104, 78}, {74, 104, 124, 126}, {126, 104, 96, 99}, {96, 104, 126, 124}, {62, 128, 57, 59}, {57, 128, 62, 122}, {130, 29, 121, 79}, {121, 29, 130, 94}, {29, 1, 121, 79}, {121, 1, 29, 94}, {58, 50, 122, 46}, {122, 50, 58, 64}, {97, 93, 61, 85}, {97, 61, 93, 68}, {61, 93, 16, 85}, {61, 16, 93, 68}, {59, 89, 127, 63}, {127, 89, 59, 128}, {59, 127, 57, 63}, {57, 127, 59, 128}, {86, 76, 126, 90}, {86, 126, 76, 129}, {125, 51, 112, 114}, {112, 51, 125, 48}, {51, 40, 112, 114}, {112, 40, 51, 48}, {48, 124, 77, 52}, {44, 48, 124, 125}, {44, 124, 48, 52}, {61, 102, 123, 65}, {123, 102, 61, 127}, {61, 123, 57, 65}, {57, 123, 61, 127}, {106, 19, 60, 98}, {60, 19, 106, 69}, {106, 60, 45, 98}, {45, 60, 106, 69}, {122, 64, 57, 123}, {57, 64, 122, 58}, {76, 129, 70, 72}, {70, 129, 76, 126}, {84, 66, 119, 92}, {84, 119, 66, 128}, {41, 84, 119, 92}, {41, 119, 84, 128}, {124, 71, 48, 77}, {124, 48, 71, 125}, {128, 89, 83, 127}, {83, 89, 128, 84}, {111, 128, 62, 59}, {62, 111, 13, 115}, {13, 111, 62, 59}, {122, 50, 44, 46}, {44, 50, 122, 123}, {102, 127, 96, 97}, {96, 127, 102, 123}, {103, 123, 45, 49}, {103, 45, 123, 98}, {35, 103, 45, 49}, {35, 45, 103, 98}, {28, 130, 75, 113}, {75, 130, 28, 72}, {130, 129, 75, 113}, {75, 129, 130, 72}, {29, 130, 76, 72}, {76, 130, 29, 86}, {130, 129, 76, 72}, {76, 129, 130, 86}, {62, 111, 122, 128}, {122, 111, 62, 115}, {111, 109, 122, 128}, {122, 109, 111, 115}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 8
+ + nb vectors : 7
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_4
+ size : 341
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{124, 123, 125, 129}, {43, 86, 130, 88}, {70, 124, 129, 126}, {48, 77, 25, 52}, {31, 0, 81, 95}, {0, 107, 81, 95}, {126, 91, 87, 101}, {124, 70, 129, 125}, {43, 121, 113, 130}, {55, 100, 82, 108}, {100, 55, 82, 73}, {23, 55, 73, 82}, {71, 75, 125, 112}, {123, 44, 124, 125}, {43, 113, 117, 130}, {94, 43, 86, 130}, {122, 123, 128, 129}, {46, 10, 58, 50}, {99, 107, 81, 20}, {125, 112, 116, 109}, {79, 72, 28, 130}, {123, 122, 125, 129}, {67, 11, 7, 118}, {123, 127, 128, 129}, {124, 44, 49, 47}, {17, 65, 18, 102}, {76, 90, 30, 31}, {54, 10, 7, 67}, {9, 10, 50, 64}, {38, 54, 7, 118}, {123, 124, 127, 129}, {12, 115, 62, 13}, {97, 61, 102, 127}, {45, 53, 8, 69}, {38, 114, 39, 51}, {125, 75, 129, 116}, {122, 44, 123, 125}, {71, 70, 77, 124}, {114, 112, 125, 109}, {32, 93, 97, 85}, {53, 6, 8, 69}, {117, 128, 129, 109}, {63, 61, 16, 89}, {76, 90, 31, 74}, {61, 85, 16, 89}, {65, 123, 60, 98}, {55, 100, 47, 73}, {100, 47, 103, 37}, {96, 123, 103, 124}, {55, 23, 4, 82}, {78, 100, 22, 73}, {61, 85, 89, 127}, {61, 127, 89, 63}, {121, 43, 94, 130}, {108, 22, 82, 4}, {14, 92, 3, 66}, {78, 21, 104, 20}, {100, 78, 104, 124}, {14, 15, 89, 63}, {90, 126, 87, 74}, {90, 76, 126, 74}, {3, 13, 66, 119}, {108, 55, 4, 82}, {58, 11, 110, 62}, {11, 115, 110, 62}, {57, 123, 60, 65}, {122, 58, 110, 62}, {115, 122, 110, 62}, {117, 128, 88, 129}, {86, 129, 130, 88}, {70, 71, 125, 124}, {107, 0, 34, 95}, {122, 114, 125, 109}, {126, 86, 83, 129}, {92, 3, 66, 119}, {129, 86, 83, 88}, {128, 41, 119, 111}, {117, 128, 111, 41}, {11, 12, 115, 62}, {33, 32, 101, 91}, {70, 124, 126, 74}, {100, 124, 47, 73}, {96, 124, 126, 127}, {78, 70, 124, 73}, {90, 76, 30, 29}, {96, 123, 124, 127}, {15, 63, 16, 89}, {121, 79, 1, 28}, {76, 70, 126, 74}, {122, 114, 109, 110}, {129, 117, 130, 88}, {123, 44, 49, 124}, {26, 80, 5, 120}, {123, 65, 102, 98}, {57, 123, 127, 128}, {117, 128, 109, 111}, {70, 78, 124, 74}, {95, 107, 81, 87}, {55, 100, 37, 47}, {77, 24, 25, 52}, {100, 78, 22, 104}, {56, 71, 25, 48}, {14, 59, 89, 84}, {96, 100, 104, 124}, {2, 105, 68, 17}, {124, 123, 103, 49}, {123, 57, 60, 64}, {44, 124, 52, 47}, {71, 112, 48, 56}, {41, 117, 88, 42}, {99, 96, 126, 101}, {97, 85, 127, 101}, {34, 91, 101, 87}, {128, 127, 83, 129}, {126, 90, 83, 86}, {75, 71, 125, 70}, {99, 126, 74, 87}, {23, 55, 47, 73}, {100, 78, 124, 73}, {32, 91, 85, 101}, {57, 122, 62, 58}, {71, 77, 25, 48}, {70, 77, 124, 73}, {114, 38, 110, 51}, {114, 40, 39, 51}, {59, 14, 89, 63}, {53, 106, 35, 6}, {45, 123, 98, 60}, {99, 126, 87, 101}, {106, 53, 69, 6}, {46, 122, 110, 51}, {128, 122, 129, 109}, {124, 100, 47, 103}, {107, 99, 81, 87}, {125, 44, 48, 51}, {38, 46, 110, 51}, {44, 123, 49, 45}, {124, 47, 49, 103}, {36, 35, 49, 103}, {46, 122, 51, 44}, {54, 67, 7, 118}, {10, 64, 58, 50}, {122, 114, 51, 125}, {11, 58, 118, 67}, {44, 122, 51, 125}, {58, 11, 118, 110}, {22, 100, 82, 73}, {46, 122, 58, 110}, {108, 100, 82, 22}, {45, 60, 8, 50}, {99, 81, 74, 20}, {60, 45, 8, 69}, {75, 71, 26, 112}, {107, 0, 81, 20}, {126, 91, 83, 87}, {31, 90, 87, 74}, {34, 107, 95, 87}, {126, 96, 127, 101}, {91, 126, 127, 101}, {92, 14, 84, 66}, {105, 32, 2, 93}, {47, 49, 103, 37}, {115, 122, 109, 110}, {33, 91, 101, 34}, {49, 36, 103, 37}, {112, 71, 48, 125}, {59, 128, 89, 84}, {19, 65, 60, 98}, {124, 126, 127, 129}, {126, 91, 127, 83}, {31, 81, 74, 87}, {81, 99, 74, 87}, {117, 113, 129, 130}, {84, 128, 88, 41}, {113, 117, 129, 109}, {90, 76, 29, 86}, {65, 19, 102, 98}, {55, 100, 108, 37}, {96, 123, 102, 98}, {14, 59, 84, 66}, {100, 96, 103, 124}, {32, 105, 97, 93}, {99, 34, 101, 87}, {127, 126, 83, 129}, {94, 29, 130, 86}, {19, 106, 69, 6}, {128, 117, 88, 41}, {123, 96, 103, 98}, {46, 38, 110, 118}, {77, 23, 24, 52}, {19, 65, 102, 18}, {121, 79, 28, 130}, {46, 54, 38, 118}, {113, 121, 28, 130}, {108, 55, 37, 4}, {112, 75, 116, 26}, {56, 40, 5, 120}, {75, 27, 28, 116}, {127, 85, 89, 83}, {66, 59, 84, 128}, {85, 61, 97, 127}, {122, 125, 129, 109}, {26, 75, 116, 27}, {128, 129, 83, 88}, {122, 123, 57, 128}, {40, 112, 56, 48}, {80, 56, 25, 5}, {84, 128, 83, 88}, {91, 85, 127, 83}, {57, 61, 63, 127}, {123, 122, 64, 50}, {3, 92, 41, 119}, {44, 123, 45, 50}, {47, 124, 52, 73}, {79, 72, 130, 29}, {32, 85, 97, 101}, {2, 93, 16, 68}, {105, 93, 68, 97}, {97, 61, 68, 17}, {85, 91, 127, 101}, {96, 97, 127, 101}, {105, 97, 68, 17}, {124, 77, 52, 73}, {56, 71, 80, 25}, {60, 64, 8, 50}, {64, 9, 8, 50}, {65, 61, 102, 17}, {93, 105, 68, 2}, {61, 97, 102, 17}, {78, 21, 22, 104}, {23, 47, 52, 73}, {112, 40, 56, 120}, {80, 56, 5, 120}, {31, 95, 81, 87}, {99, 107, 34, 87}, {58, 46, 110, 118}, {43, 121, 94, 1}, {112, 75, 125, 116}, {122, 114, 110, 51}, {77, 23, 52, 73}, {90, 126, 83, 87}, {13, 66, 111, 59}, {111, 66, 13, 119}, {66, 128, 111, 59}, {111, 128, 66, 119}, {60, 50, 123, 64}, {123, 50, 60, 45}, {74, 104, 126, 99}, {104, 20, 74, 78}, {74, 20, 104, 99}, {45, 69, 106, 53}, {45, 106, 35, 53}, {35, 106, 45, 98}, {129, 116, 109, 125}, {109, 116, 129, 113}, {54, 10, 58, 46}, {58, 10, 54, 67}, {54, 58, 118, 46}, {118, 58, 54, 67}, {113, 129, 75, 116}, {28, 113, 75, 116}, {129, 75, 70, 72}, {129, 70, 75, 125}, {43, 117, 88, 130}, {88, 117, 43, 42}, {56, 112, 80, 71}, {56, 80, 112, 120}, {80, 112, 26, 71}, {80, 26, 112, 120}, {74, 124, 104, 78}, {74, 104, 124, 126}, {126, 104, 96, 99}, {96, 104, 126, 124}, {62, 128, 57, 59}, {57, 128, 62, 122}, {130, 29, 121, 79}, {121, 29, 130, 94}, {29, 1, 121, 79}, {121, 1, 29, 94}, {58, 50, 122, 46}, {122, 50, 58, 64}, {97, 93, 61, 85}, {97, 61, 93, 68}, {61, 93, 16, 85}, {61, 16, 93, 68}, {59, 89, 127, 63}, {127, 89, 59, 128}, {59, 127, 57, 63}, {57, 127, 59, 128}, {86, 76, 126, 90}, {86, 126, 76, 129}, {125, 51, 112, 114}, {112, 51, 125, 48}, {51, 40, 112, 114}, {112, 40, 51, 48}, {48, 124, 77, 52}, {44, 48, 124, 125}, {44, 124, 48, 52}, {61, 102, 123, 65}, {123, 102, 61, 127}, {61, 123, 57, 65}, {57, 123, 61, 127}, {106, 19, 60, 98}, {60, 19, 106, 69}, {106, 60, 45, 98}, {45, 60, 106, 69}, {122, 64, 57, 123}, {57, 64, 122, 58}, {76, 129, 70, 72}, {70, 129, 76, 126}, {84, 66, 119, 92}, {84, 119, 66, 128}, {41, 84, 119, 92}, {41, 119, 84, 128}, {124, 71, 48, 77}, {124, 48, 71, 125}, {128, 89, 83, 127}, {83, 89, 128, 84}, {111, 128, 62, 59}, {62, 111, 13, 115}, {13, 111, 62, 59}, {122, 50, 44, 46}, {44, 50, 122, 123}, {102, 127, 96, 97}, {96, 127, 102, 123}, {103, 123, 45, 49}, {103, 45, 123, 98}, {35, 103, 45, 49}, {35, 45, 103, 98}, {28, 130, 75, 113}, {75, 130, 28, 72}, {130, 129, 75, 113}, {75, 129, 130, 72}, {29, 130, 76, 72}, {76, 130, 29, 86}, {130, 129, 76, 72}, {76, 129, 130, 86}, {62, 111, 122, 128}, {122, 111, 62, 115}, {111, 109, 122, 128}, {122, 109, 111, 115}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 240
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{45, 49, 35}, {45, 8, 50}, {46, 38, 51}, {23, 47, 52}, {46, 50, 10}, {37, 49, 47}, {25, 52, 48}, {40, 48, 51}, {35, 49, 36}, {38, 39, 51}, {8, 9, 50}, {23, 52, 24}, {36, 49, 37}, {9, 10, 50}, {39, 40, 51}, {24, 52, 25}, {45, 44, 49}, {45, 50, 44}, {46, 44, 50}, {44, 47, 49}, {46, 51, 44}, {44, 52, 47}, {44, 51, 48}, {44, 48, 52}, {45, 35, 53}, {45, 53, 8}, {46, 54, 38}, {23, 55, 47}, {46, 10, 54}, {37, 47, 55}, {25, 48, 56}, {40, 56, 48}, {4, 37, 55}, {6, 53, 35}, {7, 54, 10}, {7, 38, 54}, {6, 8, 53}, {5, 56, 40}, {4, 55, 23}, {5, 25, 56}, {11, 62, 58}, {14, 63, 59}, {8, 64, 60}, {17, 65, 61}, {10, 58, 64}, {19, 60, 65}, {13, 59, 62}, {16, 61, 63}, {14, 15, 63}, {11, 12, 62}, {17, 18, 65}, {8, 9, 64}, {12, 13, 62}, {15, 16, 63}, {9, 10, 64}, {18, 19, 65}, {58, 62, 57}, {59, 57, 62}, {59, 63, 57}, {61, 57, 63}, {58, 57, 64}, {60, 64, 57}, {60, 57, 65}, {61, 65, 57}, {11, 58, 67}, {14, 59, 66}, {8, 60, 69}, {17, 61, 68}, {10, 67, 58}, {19, 69, 60}, {13, 66, 59}, {16, 68, 61}, {2, 68, 16}, {3, 66, 13}, {6, 69, 19}, {7, 67, 10}, {7, 11, 67}, {3, 14, 66}, {6, 8, 69}, {2, 17, 68}, {26, 75, 71}, {29, 76, 72}, {23, 77, 73}, {20, 78, 74}, {25, 71, 77}, {22, 73, 78}, {28, 72, 75}, {31, 74, 76}, {29, 30, 76}, {26, 27, 75}, {20, 21, 78}, {23, 24, 77}, {27, 28, 75}, {30, 31, 76}, {24, 25, 77}, {21, 22, 78}, {71, 75, 70}, {72, 70, 75}, {72, 76, 70}, {70, 76, 74}, {71, 70, 77}, {70, 73, 77}, {70, 78, 73}, {70, 74, 78}, {26, 71, 80}, {29, 72, 79}, {23, 73, 82}, {20, 74, 81}, {25, 80, 71}, {22, 82, 73}, {28, 79, 72}, {31, 81, 74}, {0, 81, 31}, {1, 79, 28}, {4, 82, 22}, {5, 80, 25}, {5, 26, 80}, {1, 29, 79}, {4, 23, 82}, {0, 20, 81}, {41, 84, 88}, {14, 89, 84}, {29, 86, 90}, {32, 91, 85}, {16, 85, 89}, {43, 88, 86}, {34, 87, 91}, {31, 90, 87}, {41, 88, 42}, {14, 15, 89}, {29, 90, 30}, {32, 33, 91}, {42, 88, 43}, {15, 16, 89}, {33, 34, 91}, {30, 90, 31}, {84, 89, 83}, {84, 83, 88}, {85, 83, 89}, {86, 88, 83}, {85, 91, 83}, {86, 83, 90}, {87, 90, 83}, {87, 83, 91}, {14, 84, 92}, {41, 92, 84}, {29, 94, 86}, {32, 85, 93}, {43, 86, 94}, {16, 93, 85}, {31, 87, 95}, {34, 95, 87}, {1, 43, 94}, {2, 93, 16}, {3, 92, 41}, {3, 14, 92}, {1, 94, 29}, {2, 32, 93}, {0, 31, 95}, {0, 95, 34}, {32, 97, 101}, {17, 102, 97}, {35, 103, 98}, {20, 99, 104}, {19, 98, 102}, {34, 101, 99}, {22, 104, 100}, {37, 100, 103}, {32, 101, 33}, {35, 36, 103}, {17, 18, 102}, {20, 104, 21}, {33, 101, 34}, {18, 19, 102}, {36, 37, 103}, {21, 104, 22}, {97, 96, 101}, {97, 102, 96}, {98, 96, 102}, {99, 101, 96}, {98, 103, 96}, {99, 96, 104}, {100, 96, 103}, {100, 104, 96}, {32, 105, 97}, {17, 97, 105}, {35, 98, 106}, {20, 107, 99}, {19, 106, 98}, {34, 99, 107}, {22, 100, 108}, {37, 108, 100}, {0, 34, 107}, {2, 105, 32}, {6, 106, 19}, {6, 35, 106}, {2, 17, 105}, {4, 108, 37}, {0, 107, 20}, {4, 22, 108}, {11, 110, 115}, {38, 114, 110}, {26, 116, 112}, {41, 111, 117}, {13, 115, 111}, {40, 112, 114}, {43, 117, 113}, {28, 113, 116}, {11, 115, 12}, {38, 39, 114}, {26, 27, 116}, {41, 117, 42}, {39, 40, 114}, {12, 115, 13}, {42, 117, 43}, {27, 28, 116}, {109, 110, 114}, {109, 115, 110}, {111, 115, 109}, {112, 109, 114}, {111, 109, 117}, {112, 116, 109}, {113, 109, 116}, {113, 117, 109}, {11, 118, 110}, {38, 110, 118}, {26, 112, 120}, {41, 119, 111}, {40, 120, 112}, {13, 111, 119}, {28, 121, 113}, {43, 113, 121}, {5, 120, 40}, {3, 13, 119}, {7, 38, 118}, {7, 118, 11}, {5, 26, 120}, {3, 119, 41}, {1, 121, 28}, {1, 43, 121}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 131
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}}
]
Vector<double> [
+ id : my_fem:jacobians:_tetrahedron_4
+ size : 341
+ nb_component : 1
+ allocated size : 341
+ memory size : 2.7kB
+ values : {{0.00479073}, {0.00199542}, {0.00508286}, {0.00204347}, {0.00083906}, {0.00095268}, {0.00292548}, {0.00493659}, {0.00105059}, {0.00091729}, {0.00180199}, {0.000808556}, {0.00355095}, {0.00749049}, {0.00197348}, {0.00106177}, {0.00690231}, {0.00297989}, {0.000808006}, {0.0026847}, {0.00117185}, {0.00474423}, {0.00083918}, {0.00644814}, {0.00470655}, {0.00151785}, {0.00151785}, {0.00083906}, {0.00151591}, {0.00083918}, {0.00487222}, {0.00151892}, {0.00469074}, {0.000807775}, {0.00151892}, {0.00334996}, {0.00767187}, {0.00381537}, {0.00269174}, {0.00158543}, {0.00083906}, {0.00445593}, {0.0020418}, {0.00204272}, {0.00297957}, {0.00490403}, {0.00353679}, {0.00297957}, {0.00693536}, {0.000839299}, {0.002982}, {0.00359869}, {0.00246606}, {0.000800576}, {0.000839299}, {0.00083906}, {0.00152021}, {0.00375734}, {0.00151785}, {0.00372221}, {0.00255222}, {0.00083906}, {0.000952816}, {0.00298087}, {0.00204311}, {0.0037801}, {0.00363992}, {0.00249551}, {0.00382669}, {0.0020549}, {0.00422323}, {0.00083906}, {0.00460922}, {0.00348647}, {0.000952544}, {0.00386563}, {0.00134104}, {0.00252173}, {0.00151892}, {0.00151785}, {0.00426036}, {0.00793308}, {0.00820365}, {0.00385292}, {0.00151785}, {0.00860188}, {0.00151785}, {0.00083906}, {0.00383935}, {0.00327077}, {0.00361116}, {0.00679806}, {0.00083906}, {0.00336058}, {0.00695467}, {0.0026847}, {0.00385292}, {0.000917159}, {0.00158651}, {0.00152021}, {0.00204498}, {0.00158671}, {0.00297957}, {0.00483251}, {0.00083906}, {0.00645464}, {0.0037801}, {0.00472318}, {0.00353524}, {0.00151688}, {0.00483251}, {0.00421987}, {0.0020418}, {0.00523002}, {0.00282642}, {0.00380534}, {0.00581509}, {0.00158671}, {0.00548144}, {0.0020418}, {0.00365422}, {0.00297867}, {0.00383935}, {0.00204311}, {0.00151892}, {0.0020418}, {0.00083906}, {0.00695993}, {0.00426911}, {0.000952544}, {0.00380007}, {0.00640143}, {0.00595062}, {0.00180012}, {0.00470655}, {0.00297737}, {0.00432043}, {0.00408022}, {0.00151785}, {0.00394217}, {0.00095268}, {0.0020392}, {0.00491487}, {0.000807891}, {0.00673925}, {0.00158661}, {0.00158671}, {0.00511093}, {0.000808006}, {0.00297989}, {0.00158671}, {0.00158543}, {0.00297989}, {0.000839299}, {0.00282642}, {0.00297957}, {0.000807775}, {0.00743876}, {0.00520896}, {0.000807775}, {0.00083906}, {0.00204272}, {0.00327077}, {0.00151785}, {0.00151785}, {0.00550306}, {0.00283408}, {0.00297957}, {0.00500828}, {0.00435075}, {0.00158651}, {0.00353524}, {0.00207381}, {0.00264971}, {0.00361055}, {0.0020418}, {0.0020418}, {0.000807775}, {0.0043829}, {0.00158543}, {0.00483251}, {0.000807775}, {0.00297957}, {0.00403452}, {0.00106177}, {0.00083906}, {0.00339716}, {0.0043829}, {0.00158661}, {0.00152021}, {0.00151785}, {0.00078511}, {0.000807891}, {0.00105059}, {0.00083906}, {0.00204038}, {0.00083906}, {0.00151494}, {0.00282642}, {0.00212821}, {0.005658}, {0.0043455}, {0.00151494}, {0.00474239}, {0.00744101}, {0.00158651}, {0.000839299}, {0.00282642}, {0.00282642}, {0.00369139}, {0.00530618}, {0.00083906}, {0.00430907}, {0.00540547}, {0.00117185}, {0.00297957}, {0.00083906}, {0.000917028}, {0.00158543}, {0.00289174}, {0.00483251}, {0.000807775}, {0.00370776}, {0.000808006}, {0.0020392}, {0.00151591}, {0.0020418}, {0.000952544}, {0.00297957}, {0.00152021}, {0.002982}, {0.000807775}, {0.00095268}, {0.000807775}, {0.00158543}, {0.00353524}, {0.00083906}, {0.00243234}, {0.00260951}, {0.0020459}, {0.00282642}, {0.00158543}, {0.000807775}, {0.00197474}, {0.00100612}, {0.00334194}, {0.00487991}, {0.00481554}, {0.00204347}, {0.00298217}, {0.000917028}, {0.000807775}, {0.00158543}, {0.00339935}, {0.00361055}, {0.00158543}, {0.000807775}, {0.00180012}, {0.000917159}, {0.00304689}, {0.00203823}, {0.00419327}, {0.00444812}, {0.00321724}, {0.00151688}, {0.00180012}, {0.000917159}, {0.00158543}, {0.000807775}, {0.00425176}, {0.0068851}, {0.00483251}, {0.00743876}, {0.00369139}, {0.00671734}, {0.000948173}, {0.000932706}, {0.00083906}, {0.00083906}, {0.00402163}, {0.0027552}, {0.00353262}, {0.00179986}, {0.00158543}, {0.000807775}, {0.00289277}, {0.00478507}, {0.00369139}, {0.00407095}, {0.002979}, {0.00490513}, {0.00275294}, {0.00402124}, {0.00204048}, {0.00298091}, {0.00413525}, {0.00522266}, {0.00472318}, {0.00402975}, {0.00676786}, {0.0037801}, {0.00496655}, {0.00158543}, {0.000807775}, {0.00353262}, {0.00179986}, {0.00557565}, {0.00365422}, {0.00420433}, {0.0045964}, {0.000917028}, {0.00243872}, {0.000807775}, {0.001568}, {0.00602516}, {0.0074155}, {0.00435075}, {0.00282642}, {0.00275892}, {0.00204048}, {0.00297957}, {0.0039318}, {0.00623354}, {0.00483251}, {0.00761117}, {0.00356241}, {0.00520686}, {0.0020394}, {0.00297957}, {0.00289006}, {0.00220255}, {0.00347634}, {0.00226248}, {0.00219973}, {0.00292886}, {0.00233772}, {0.00353589}, {0.00497258}, {0.00334717}, {0.00371176}, {0.00326057}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_tetrahedron_4
- + size : 1
- + nb_component : 3
- + allocated size : 2000
- + memory size : 47kB
- + values : {{0.25, 0.25, 0.25}}
- ]
Vector<double> [
+ id : my_fem:shapes:_tetrahedron_4
+ size : 341
+ nb_component : 4
+ allocated size : 341
+ memory size : 11kB
+ values : {{0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_tetrahedron_4
+ size : 341
+ nb_component : 12
+ allocated size : 341
+ memory size : 32kB
- + values : {{-2.9332, -3.39585, 0.502232, 0, 2.96343, 0.405765, 2.9332, 0.0602741, 3.04336, 0, 0.372141, -3.95136}, {3.45053, -1.3657, -2.27011, -3.89489, -2.97354, -4.55745, 0, 0, 5.36117, 0.444357, 4.33924, 1.46638}, {0.382444, -2.89016, 0, -1.28516, 1.90393, 2.9332, 3.7515, 0.879817, 0, -2.84879, 0.106407, -2.9332}, {2.97575, 3.89171, -3.89356, 0, 0, -5.23939, 1.36374, -3.44772, 3.45502, -4.3395, -0.443995, 5.67793}, {4, -4, -4.00114, -4, -3.0469, -3.04575, 0, 0, 7.0469, 0, 7.0469, 0}, {-3.52295, -3.52395, -3.52295, -3.52295, 3.52295, 3.52395, 3.52295, -3.52295, 3.52295, 3.52295, 3.52395, -3.52395}, {2.40825, 0.953172, 2.40825, 2.50475, 5.50649, -2.73463, -1.78774, -5.2227, -1.78774, -3.12526, -1.23696, 2.11413}, {-2.9332, 1.96549, 1.23633, 0, -2.87587, -0.393776, 0, 1.01994, -3.86266, 2.9332, -0.10956, 3.0201}, {0.419151, 4, -4, 2.79404, -8.15492, 0.835098, 2.20503, 4.15492, 3.1649, -5.41822, 0, 0}, {3.52244, 3.52345, 3.52345, 3.65886, 3.65991, -3.65991, 3.52345, -3.52244, -3.52244, -10.7048, -3.66092, 3.6589}, {-1.79359, 1.79523, -1.79625, 3.5193, 3.52237, 3.52452, -7.1749, -7.18117, 0.13427, 5.44919, 1.86357, -1.86254}, {3.99728, -4.00093, 4.00321, 0, 7.04488, 0, 4.15209, 3.16185, -3.16156, -8.14937, -6.2058, -0.841653}, {-2.33012, -1.26027, 3.59031, 1.73691, -1.73691, -3.82575, -2.89531, 2.89531, -1.14913, 3.48852, 0.101865, 1.38457}, {0, 3.12067, -1.26381, 0, -0.238012, 2.52719, -2.9332, -3.29673, -0.550156, 2.9332, 0.414072, -0.713225}, {2.25842, -1.36825, -3.45027, 4.64721, -2.97306, 3.89484, -1.48742, 4.3413, -0.444568, -5.41822, 0, 0}, {-0.835098, -8.15492, -2.75583, 4, 4, -0.45685, -3.1649, 4.15492, -2.14849, 0, 0, 5.36117}, {2.74019, 0.0956852, 2.80125, -3.01086, 0.697365, -0.375193, 0.165245, 2.48398, -2.46532, 0.105421, -3.27703, 0.0392613}, {2.96943, -3.89447, -0.304082, 1.36934, 3.45016, 3.45016, 0, 0, -3.59038, -4.33877, 0.444309, 0.444309}, {3.164, 3.1649, 4.15492, -6.21002, 0.835098, -8.15492, 7.04488, 0, 0, -3.99886, -4, 4}, {-4.24471, 0, -2.22045e-16, 1.70632, 0.0142405, 4.507, 1.02929, -3.25521, -3.22316, 1.5091, 3.24097, -1.28383}, {-0.835098, -3.26304, -8.15492, -3.1649, -1.55632, 4.15492, 4, -0.0381551, 4, 0, 4.85752, 0}, {-3.09877, -0.624101, 0.936346, 2.96195, 3.42913, -0.507155, -0.240412, -3.6139, 3.58676, 0.377232, 0.808874, -4.01595}, {-7.0469, 0, 0, 4, 4, -4, 3.0469, 3.04589, 4, 0, -7.04589, 0}, {0, 0.802501, 2.70275, -2.9332, -0.102425, -2.99855, 2.9332, 2.58063, 0.364309, 0, -3.28071, -0.0685083}, {4.16334e-16, -8.88178e-16, -2.4308, 3.22687, 1.27702, 1.31348, -3.25484, 3.22647, -0.701298, 0.0279753, -4.5035, 1.81862}, {1.62741e-11, -1.54712e-11, -4, 5.23939, 0, 0, -5.23939, 5.23939, 4, 0, -5.23939, 0}, {0, -7.13135e-16, 5.23939, 0, 5.23939, 0, 4, -5.23939, -5.24506, -4, -2.28255e-11, 0.00566839}, {0, -7.0469, 8.88178e-16, -4, 4, 4, 4, 3.0469, 3.0469, 0, 0, -7.0469}, {-4, 5.24608, 5.23939, 4, 1.55241e-11, 1.5915e-11, 0, -5.24608, 0, 0, 0, -5.23939}, {4, -4, 4, -7.0469, 0, 0, 3.0469, 4, 3.04589, 0, 0, -7.04589}, {2.51489, 3.01511, 3.01511, -3.88194, -3.41534, -0.482145, -2.88414, -0.0592661, -2.99246, 4.25119, 0.459499, 0.459499}, {5.23939, 5.23285, 4, 0, -5.23568, 0, -5.23939, 0, 0, 2.32699e-11, 0.00283219, -4}, {-2.75474, -0.835644, -4.18437, 0.257813, 3.33257, -1.31901, 0.305142, -0.305142, 4.63589, 2.19179, -2.19179, 0.867496}, {4.15492, -3.1649, -3.1649, -8.15492, -0.835098, 6.2118, 4, 4, 4, 0, 0, -7.0469}, {0.00566839, 4, -0.00283219, 0, 0, -5.23568, 5.23372, -4, 5.23851, -5.23939, 0, 0}, {-1.52791, 1.52994, 4.71561, -1.9516, -3.29226, 0.192739, -0.842937, 0.840096, -3.60933, 4.32244, 0.92222, -1.29903}, {2.86385, 3.21879, 0.53715, -0.233278, -0.500202, 2.48343, -2.84203, -0.0735906, -1.79686, 0.211453, -2.645, -1.22372}, {4.53179, 1.05538, 0.0281511, -1.28505, -2.42496, -3.24278, -3.24675, -1.61027, 3.21463, 0, 2.97985, 0}, {-1.02659, 3.24669, 3.21473, 3.14112, -4.52341, 0.014006, -4.24471, 0, 0, 2.13019, 1.27672, -3.22874}, {-4, -4, -4, 0.835098, 8.15492, 0.835098, 0, 0, 3.59038, 3.1649, -4.15492, -0.425481}, {0, -7.0469, 0, -4, 3.0469, 3.0469, 4, 4, 4, 0, 0, -7.0469}, {2.27701, -1.57663, -3.25, -1.49395, 3.66511, 0.0115805, -2.03803, -2.71547, -0.00857994, 1.25497, 0.626993, 3.247}, {4.33924, 5.68374, -0.444357, -2.97354, -3.89489, 3.89489, -1.3657, 3.45053, -3.45053, 0, -5.23939, 0}, {4.33729, -5.68119, -0.447948, 0, 5.23939, 0, -1.36509, -3.45133, -3.4494, -2.97221, 3.89314, 3.89735}, {0, 4.44089e-16, 3.59038, -2.97354, -3.89489, 0.304504, -1.3657, 3.45053, -3.45053, 4.33924, 0.444357, -0.444357}, {-0.960671, 0.960671, -4.13489, 2.09645, -2.09645, -0.829765, 1.35765, 2.23273, 3.97777, -2.49343, -1.09695, 0.986887}, {-3.6556, -3.65879, 3.65879, -1.79574, 1.79308, -1.79621, 3.6556, 3.65879, -0.0684102, 1.79574, -1.79308, -1.79417}, {0.307102, -2.97354, -3.89489, 3.59038, 0, 0, -0.44815, 4.33924, 0.444357, -3.44934, -1.3657, 3.45053}, {-1.64157, 0.110512, -3.2348, 1.22142, 3.1461, -3.07269e-12, -0.833409, -0.40322, 3.2348, 1.25356, -2.85339, 2.78682e-12}, {0, 7.04488, 0, 4, -3.99886, 4.00114, -4, -3.04603, 3.04575, 0, 0, -7.0469}, {-0.443995, -0.444383, -4.3395, 0, 3.59038, 0, -3.44772, -3.45073, 1.36374, 3.89171, 0.30473, 2.97575}, {-1.00556, 2.54062, 1.04976, -3.90018, -1.55367, -2.03672, 3.775, 1.86995, -1.86995, 1.13075, -2.8569, 2.8569}, {-4.90575, 0.986953, -0.986953, 1.13075, -2.8569, 2.8569, -1.91647, -0.397296, -4.84209, 5.69148, 2.26724, 2.97215}, {4.19746, -5.51046, 2.84944, 1.88954, 6.77064, -1.88954, -2.89363, -5.45245, -4.15327, -3.19336, 4.19228, 3.19336}, {8.88178e-16, 7.0469, 0, -3.99886, -4, -4, 7.04488, 0, 0, -3.04603, -3.0469, 4}, {-4, 4, -4, 0, -7.0469, 0, 4, 3.0469, -3.0469, 0, 0, 7.0469}, {5.23123, 5.81945e-16, 0, -5.23123, -5.23939, 4, 0, 5.23939, 0, 1.6327e-11, 1.54706e-11, -4}, {-0.750211, -0.75138, 4.81251, 1.07726, -4.16045, 1.64668, -2.20213, 3.03383, -5.71589, 1.87508, 1.878, -0.743302}, {4, -2.28271e-11, 2.36273e-11, -4, 5.23939, -5.23939, 0, -5.23939, 0, 0, 0, 5.23939}, {3.80063, -1.80519, -1.80851, 1.09322, 2.76209, 2.76114, -3.92166, 1.49941, -2.08755, -0.972194, -2.45631, 1.13492}, {-1.92104, 0.382436, -4.85423, 5.71942, -2.18677, 3.04452, 1.09257, 2.76234, 2.76079, -4.89095, -0.95801, -0.95108}, {3.0469, 3.0469, -4, 4, 4, 4, -7.0469, 0, 0, 0, -7.0469, 0}, {-3.52345, 3.52244, -3.52446, 3.52244, 3.52345, 3.52345, -3.52244, -3.52345, 3.52345, 3.52345, -3.52244, -3.52244}, {-3.89489, -0.305669, 2.97354, 3.45053, 3.44843, 1.3657, 0, -3.58881, 0, 0.444357, 0.446058, -4.33924}, {3.45195, 3.44854, 1.36462, 5.6826, 0.445968, -4.33837, -3.89516, -3.89451, 2.97375, -5.23939, 0, 0}, {3.2348, 1.4231, -1.28032, 0, -3.01876, 0, -3.04119e-12, 1.63545, 4.51512, -3.2348, -0.0397999, -3.2348}, {-2.82577, -2.82405, -1.11842, -1.29033, 2.2973, 4.00441, 3.2475, -0.343291, 1.28534, 0.868592, 0.870035, -4.17133}, {1.88206, -3.35082, -5.84079, -2.82615, -2.82336, -1.11723, 1.95788, 1.95275, 5.28756, -1.01379, 4.22143, 1.67046}, {4.00887, -0.711384, 1.23085, -1.07985, 3.872, 1.08301, -1.46134, -0.730093, -3.78093, -1.46768, -2.43052, 1.46707}, {-6.11172, -2.09613, -3.09899, -3.35065, 1.32617, 2.2044, 6.08523, -2.4085, 1.35769, 3.37714, 3.17846, -0.4631}, {0, -1.78762, -4.51512, 0, -1.19223, 4.51512, 2.9332, 1.45476, -2.90418, -2.9332, 1.52509, 2.90418}, {-8.88178e-16, 0, 7.0469, -3.0469, -4, -3.0469, -4, 4, -4, 7.0469, 0, 0}, {-1.83438, 2.64163, -0.00817939, 1.49822, -0.389218, 3.22599, -2.02268, -3.19987, 0.00990788, 2.35884, 0.947457, -3.22772}, {-3.58659, -3.58659, 0.548674, 1.12084, -3.39428, -1.90685, -0.156642, 4.35848, -1.19262, 2.6224, 2.6224, 2.5508}, {-3.52345, -3.52345, -3.52345, 3.52345, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345}, {4.44089e-16, 0, 2.95197, 4.40828e-12, -4.51512, -1.73539, -3.2348, 1.28032, -0.721726, 3.2348, 3.2348, -0.494857}, {-4.24471, 1.77636e-15, -4.44089e-16, 1.287, -4, -4, -1.6658, 8.15492, 0.835098, 4.62351, -4.15492, 3.1649}, {0.885858, -4.33672, -0.444099, -4.24471, 0, 0, 3.16813, 2.96992, 3.89452, 0.190724, 1.3668, -3.45042}, {-2.32703e-11, -0.00283219, 4, 5.23939, 5.23851, -4, 0, -5.23568, 0, -5.23939, 0, 0}, {-5.23939, -4, -5.23939, 2.28255e-11, 4, 2.28255e-11, 0, 0, 5.23939, 5.23939, 0, 0}, {4.47576, -1.93017, 0, -2.90763, 1.52342, 2.9332, 2.90763, 1.45643, -2.9332, -4.47576, -1.04967, 0}, {-2.74183, 0.846161, -0.849296, 1.62977, 1.63119, -1.63119, 0.777461, 0.778141, 2.81224, 0.334598, -3.25549, -0.331753}, {-2.36134, 0, 0, 1.74759, 0, 2.9332, -0.525012, -2.9332, -2.9332, 1.13877, 2.9332, 0}, {-3.21511, 0.1024, -3.24338, 3.21511, -1.89002, -1.27174, 0, 2.97985, 0, -3.36919e-12, -1.19223, 4.51512}, {0, 5.23939, 4.12864e-16, 0, 0, 5.23939, -4, -5.23939, -5.23372, 4, 2.28255e-11, -0.00566839}, {-2.40793, -0.260266, -0.260266, 0.500707, 2.7974, 2.7974, 1.23528, -2.86224, 0.0709597, 0.671946, 0.325101, -2.6081}, {4, 5.23939, -5.23939, 0, 0, 5.23939, -4, 2.28278e-11, -2.36282e-11, 0, -5.23939, 0}, {-4.44089e-16, 7.0469, 0, -7.0469, 0, 0, 3.0469, -3.0469, -4, 4, -4, 4}, {3.22647, -1.69048, -3.25484, 1.27702, -0.254226, 3.22687, 0, 2.97985, 0, -4.5035, -1.03514, 0.0279753}, {-3.50419, 0, 2.04697e-16, -0.300503, -3.2348, 3.2348, 0.9543, -1.27452, -3.22084, 2.85039, 4.50932, -0.0139624}, {-2.58829, 1.58763, 2.59096, 3.47782, 1.19279, 1.76345, 1.14429, -4.10309, -1.14764, -2.03382, 1.32267, -3.20677}, {-0.0193683, 3.11794, -1.2591, 3.23344, 0.218445, 1.74096, -3.23197, -0.456248, 0.785873, 0.0178911, -2.88013, -1.26773}, {4, -4, -4, -7.0469, 0, 0, 3.0469, -3.0469, 4, 0, 7.0469, 0}, {2.09645, -2.09645, -0.829765, 1.02053, 4.21886, 1.6698, -1.9812, -3.25819, -5.80469, -1.13578, 1.13578, 4.96465}, {0, 3.04177, 0.0635186, 0, -2.06144, 2.64295, -2.9332, -0.059438, -2.99766, 2.9332, -0.920892, 0.29119}, {1.04124, -3.22316, -3.25521, -4.24471, 0, 0, -0.179146, -1.28383, 3.24097, 3.38261, 4.507, 0.0142405}, {3.21511, -2.56163, 1.27174, -3.21511, -1.61044, 3.24338, 0, 2.97985, 0, 3.36919e-12, 1.19223, -4.51512}, {-3.65939, -3.66043, -10.7063, -3.52295, 3.52295, 3.52395, 3.52295, -3.52295, 3.52295, 3.65939, 3.66043, 3.65939}, {0.841653, -8.14937, -0.83453, 0, 0, -3.59038, -4.00321, 3.99728, 3.99972, 3.16156, 4.15209, 0.425192}, {0, -8.88178e-16, -5.23939, -4, -5.23123, 5.23372, 4, -1.54883e-11, 0.00566839, 0, 5.23123, 0}, {3.88882, 3.89489, 2.97354, 5.23123, 0, 0, -3.44516, -3.45053, 1.3657, -5.6749, -0.444357, -4.33924}, {8.15548, 0.834427, -0.835156, 0, 0, -3.59038, -4.00272, -3.99679, 4.00028, -4.15276, 3.16236, 0.425261}, {1.3657, 3.45053, -3.45053, 0, 0, 3.59038, -4.33924, 0.444357, -0.444357, 2.97354, -3.89489, 0.304504}, {-0.837584, 3.2348, -1.28032, -0.944765, -3.55036e-12, 4.51512, -0.578996, -3.2348, -3.2348, 2.36134, 0, 0}, {-3.0469, 3.0469, -4, 0, -7.0469, 0, 7.0469, 0, 0, -4, 4, 4}, {0.832911, -2.82507, -0.828908, 0.808732, 3.17388, -0.81323, -3.40548, -0.230067, -1.83358, 1.76384, -0.118743, 3.47572}, {0, -3.01876, 0, 1.28032, 1.39906, -3.2348, -4.51512, 1.5799, -3.09855e-12, 3.2348, 0.0397999, 3.2348}, {1.27174, 3.21511, 0.89222, 0, 0, -2.4308, 3.24338, -3.21511, 0.698828, -4.51512, 3.70603e-12, 0.839751}, {-1.79652, -1.79386, -1.79496, 1.79652, 1.79386, -1.79543, -3.65719, 3.65719, -0.0700075, 3.65719, -3.65719, 3.66039}, {-2.2828e-11, 4, 0.0025524, 0, 0, 5.24273, -5.23939, 0, 0, 5.23939, -4, -5.24528}, {-1.75292, -4.51512, -4.40936e-12, 0.0630025, 1.28032, 3.2348, 2.36134, 0, 0, -0.671422, 3.2348, -3.2348}, {-1.82767, 3.81744, 1.76272, -0.114041, 1.46619, -3.70442, 2.43635, -0.964293, 2.43635, -0.494641, -4.31934, -0.494641}, {-3.45053, -1.3657, -3.45053, -0.444357, 4.33924, -5.68374, 0, 0, 5.23939, 3.89489, -2.97354, 3.89489}, {2.9332, 2.26271, -0.706418, -2.9332, 1.41766, 2.12097, 0, -0.989411, -3.33225, 0, -2.69097, 1.9177}, {0, -1.39581e-17, 4.03735, -3.2348, -3.2348, -3.14648, -1.28032, 3.2348, -2.28562, 4.51512, 4.40982e-12, 1.39475}, {3.25531, -1.69257, -3.22311, -3.621e-12, -1.19223, 4.51512, 0, 2.97985, 0, -3.25531, -0.095055, -1.29201}, {-2.43276, 1.15549, 1.15762, 2.22336, 2.22531, 2.22336, 0.45554, -3.13444, 0.45554, -0.246142, -0.246357, -3.83653}, {4.00272, -3.99679, 4.00378, -8.15548, 0.834427, -0.842284, 4.15276, 3.16236, 0.42889, 0, 0, -3.59038}, {-2.25991, 1.3285, 0.893907, -1.12519, -1.12617, -4.07005, 1.87562, 1.87726, -0.7419, 1.50948, -2.07958, 3.91804}, {-3.45053, 1.3657, -3.45053, -0.444357, -4.33924, -5.68374, 3.89489, 2.97354, 3.89489, 0, 0, 5.23939}, {-3.2348, 0.341949, -1.28032, 0, -3.12276, 0, 3.2348, 0.619904, -3.2348, -3.95817e-12, 2.1609, 4.51512}, {2.97704, 0.304595, -3.89524, -4.34434, -0.444491, 0.444879, 1.36731, -3.44735, 3.45037, 0, 3.58725, 0}, {1.27702, -1.8283, -3.22687, 3.22647, -0.102762, 3.25484, 0, 2.97985, 0, -4.5035, -1.04879, -0.0279753}, {5.67645, -4.33837, 0.445968, 3.45388, 1.36462, 3.44854, -3.89094, 2.97375, -3.89451, -5.23939, 0, 0}, {0, 0, -5.23568, -0.00566839, -4, 0.00283219, 5.24506, 4, 5.23285, -5.23939, 0, 0}, {2.97354, -3.89489, 3.89489, 1.3657, 3.45053, -3.45053, 0, -5.23939, 0, -4.33924, 5.68374, -0.444357}, {7.0469, 0, 4.44089e-16, 0, 0, -7.0469, -4, -4, 4, -3.0469, 4, 3.0469}, {0.676898, -0.676898, 2.91348, 1.85764, -1.85764, -1.85764, -2.8863, -0.704082, -0.704082, 0.351759, 3.23862, -0.351759}, {-1.71643, -3.77342, 1.87396, 2.40825, 0.953172, 2.40825, -0.071317, -1.44928, -3.6617, -0.620505, 4.26953, -0.620505}, {-3.52345, -3.52345, -3.52345, 3.52345, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345}, {-1.16853, 4.05757, 2.41902, -2.70338, -1.07129, -2.70173, 3.36405, 1.3331, -0.22682, 0.507865, -4.31938, 0.509529}, {0.235286, 2.46776, -2.45659, -1.58499, 1.09747, 2.26228, -1.89674, -2.81329, -0.210235, 3.24644, -0.75193, 0.40455}, {1.72714, 0.683827, -1.72773, -2.24537, -3.98415, -1.34153, 0.964303, -1.03975, 2.62699, -0.446071, 4.34007, 0.442278}, {-7.18233, -0.137487, -7.18233, 1.86445, 1.86498, 5.45483, 3.52295, -3.52295, 3.52295, 1.79493, 1.79545, -1.79545}, {0, -8.88178e-16, -2.4308, -3.22687, 1.27702, -0.160385, -0.0279753, -4.5035, 1.80584, 3.25484, 3.22647, 0.785343}, {3.45037, 1.36731, 3.44826, -3.89524, 2.97704, -0.306029, 0, 0, -3.58881, 0.444879, -4.34434, 0.446582}, {3.24278, -1.28505, 1.07917, 0, 0, -2.6315, -3.21463, -3.24675, -0.442405, -0.0281511, 4.53179, 1.99473}, {1.7269, 0.683416, -1.72787, -1.27936, -5.02087, 1.28648, 3.27466, 5.8105, 1.9565, -3.7222, -1.47305, -1.5151}, {-5.23372, -4, 5.23939, -0.00566839, 4, -2.28255e-11, 5.23939, 0, 0, 0, 0, -5.23939}, {0.0281511, 4.53179, 2.33833, 0, 0, -2.884, 3.21463, -3.24675, 0.327026, -3.24278, -1.28505, 0.218644}, {-3.52345, -3.52345, 3.52345, -3.52345, 3.52345, -3.52345, 3.52395, 3.52295, 3.52295, 3.52295, -3.52295, -3.52295}, {1.3657, 3.45494, 3.45053, -4.33924, 5.691, 0.444357, 2.97354, -3.89986, -3.89489, 0, -5.24608, 0}, {-1.06097, 2.95229, -1.06649, 4.44047, 0.792573, -0.800037, -2.21214, -0.888535, 3.02699, -1.16736, -2.85632, -1.16047}, {4, 4, -4, -3.1649, -3.16386, -4.15492, 0, -7.04589, 0, -0.835098, 6.20975, 8.15492}, {-3.23839, -0.578016, 0.58346, 0.0195373, 3.14514, -1.26116, 3.23532, 0.0837745, 2.04552, -0.0164672, -2.6509, -1.36782}, {-3.59038, 0, -8.88178e-16, 4, 4, -4, -0.834843, -0.83804, 8.15243, 0.425226, -3.16196, -4.15243}, {-3.99679, -4.00028, -4.00272, 0, 3.59038, 0, 0.834427, 0.835156, 8.15548, 3.16236, -0.425261, -4.15276}, {-0.618598, -0.619625, 2.97076, -2.5319, -2.52969, -2.52969, -0.377606, 3.21154, -0.378844, 3.52811, -0.062223, -0.062223}, {-6.21002, 0.835098, 8.15492, 3.164, 3.1649, -4.15492, 7.04488, 0, 0, -3.99886, -4, -4}, {-2.96943, -3.89447, -0.304082, 0, 0, -3.59038, -1.36934, 3.45016, 3.45016, 4.33877, 0.444309, 0.444309}, {-4.44089e-16, 3.59038, 0, 0.834427, 0.835156, -8.15548, 3.16236, -0.425261, 4.15276, -3.99679, -4.00028, 4.00272}, {4.15492, 0.425481, -3.1649, 0, -3.59038, 0, 4, 4, 4, -8.15492, -0.835098, -0.835098}, {0.444309, -0.444309, -4.33877, -3.89447, 0.304082, 2.96943, 3.45016, -3.45016, 1.36934, 0, 3.59038, 0}, {-4.44089e-16, 7.0469, 0, -3.04603, -3.0469, -4, 7.04488, 0, 0, -3.99886, -4, 4}, {-1.90626e-16, 0, 4.03735, -3.2348, 3.2348, 1.14797, 3.2348, 1.28032, -2.18823, -4.40962e-12, -4.51512, -2.99709}, {-1.3657, -3.45053, -3.44934, 4.33924, -0.444357, -0.44815, -2.97354, 3.89489, 0.307102, 0, 0, 3.59038}, {-4, 4, -4, 0, 0, 7.0469, 0.835098, -8.15492, -6.2118, 3.1649, 4.15492, 3.1649}, {1.22258, -2.9332, -2.86482e-12, -0.434061, 0, 3.2348, 1.13877, 2.9332, 2.86495e-12, -1.92728, 0, -3.2348}, {0.619868, 0, -4.61952, 1.07793, -2.9332, 1.07793, 1.00404, 2.9332, 1.00404, -2.70184, 0, 2.53754}, {8.15492, -0.835098, -6.2118, -4, 4, -4, -4.15492, -3.1649, 3.1649, 0, 0, 7.0469}, {-1.77636e-15, 0, 7.0469, -4, -4, -4, -3.0469, 4, -3.0469, 7.0469, 0, 0}, {3.89735, -2.97221, -3.89314, -0.447948, 4.33729, 5.68119, 0, 0, -5.23939, -3.4494, -1.36509, 3.45133}, {0.300503, 3.2348, -3.2348, -3.50419, 0, 0, 0.773493, -3.22084, -1.27452, 2.43019, -0.0139624, 4.50932}, {-5.23939, 4, -5.23939, 5.23939, 0, 0, 0, 0, 5.23939, -2.28255e-11, -4, -2.28255e-11}, {5.23939, 0, -1.75044e-16, -5.24506, 4, 5.23939, 0, 0, -5.23939, 0.00566839, -4, 2.28255e-11}, {3.95255, -0.362167, 0.362483, -0.482349, -3.10803, -0.479633, -1.12077, 1.12077, 2.46863, -2.34943, 2.34943, -2.35148}, {1.27685, 3.22605, 0.364333, -1.43581, -3.62766, 3.62766, -4.79345, -0.703234, 0.703234, 4.95241, 1.10484, -4.69522}, {-3.45053, 3.45053, 1.3657, -0.444357, 0.444357, -4.33924, 3.89489, -0.304504, 2.97354, 0, -3.59038, 0}, {-1.03322, 0, 2.9332, -2.44657, -2.9332, -2.9332, -0.388139, 2.9332, 0, 3.86792, 0, 0}, {-2.86482e-12, -2.9332, 2.09032, -3.2348, 0, -0.999254, 2.86466e-12, 2.9332, 1.94703, 3.2348, 0, -3.03809}, {3.99728, -3.99972, -4.00321, -8.14937, 0.83453, 0.841653, 4.15209, -0.425192, 3.16156, 0, 3.59038, 0}, {-3.65719, -3.66039, -3.65719, -1.79386, 1.79496, 1.79652, 3.65719, 0.0700075, 3.65719, 1.79386, 1.79543, -1.79652}, {0.32313, 3.2444, -3.2106, 3.54154, -2.30319, 5.58401, -2.14916, 1.30205, 3.28335, -1.71551, -2.24325, -5.65675}, {-3.89489, 2.97354, -2.82238, 0, 0, 4.03735, 0.444357, -4.33924, -0.86478, 3.45053, 1.3657, -0.350185}, {1.84375, -4.52327, -0.014292, 0.315792, 3.2348, -3.2348, -3.14489, 0, 0, 0.985347, 1.28847, 3.24909}, {-4.33924, -0.444357, -5.6776, 0, 0, 5.23939, 1.3657, -3.45053, -3.45246, 2.97354, 3.89489, 3.89067}, {5.23939, 0, 0, -3.45053, 3.45053, 1.3657, -5.68374, 0.444357, -4.33924, 3.89489, -3.89489, 2.97354}, {7.0469, 8.88178e-16, 0, 3.16371, 4.15492, -3.1649, -6.20947, -8.15492, -0.835098, -4.00114, 4, 4}, {-0.782485, -3.2348, -1.28032, 2.60358, 0, 0, -0.410568, 3.2348, -3.2348, -1.41052, 3.55036e-12, 4.51512}, {-4, 4, -4, -4.15492, 0.425481, 3.1649, 0, -3.59038, 0, 8.15492, -0.835098, 0.835098}, {-1.75292, -4.51512, 4.40936e-12, -1.18742, 1.28032, -3.2348, 0.578996, 3.2348, 3.2348, 2.36134, 0, 0}, {-4, -4, -4, -6.2118, 8.15492, 0.835098, 3.1649, -4.15492, 3.1649, 7.0469, 0, 0}, {0.304504, -2.97354, 3.89489, -3.45053, -1.3657, -3.45053, -0.444357, 4.33924, -0.444357, 3.59038, 0, 0}, {-0.968585, 2.9332, 1.64782, -3.80236, -2.9332, 0.915743, 1.28259, 0, -3.64114, 3.48835, 0, 1.07758}, {8.15492, 0.835098, -3.7826, -4, -4, 0.45685, 0, 0, 5.36117, -4.15492, 3.1649, -2.03542}, {-4, 4, -4, 0, -7.0469, 0, 7.0469, 0, 0, -3.0469, 3.0469, 4}, {-2.33946, 1.78605, 2.34209, 3.03792, -2.3193, 2.20139, -2.35172, -2.20459, -2.89092, 1.65325, 2.73783, -1.65256}, {2.60358, 0, 3.0632e-16, -1.03055, -1.28032, -3.2348, 0.410568, -3.2348, 3.2348, -1.98359, 4.51512, -4.40967e-12}, {-3.59038, 1.77636e-15, -1.11022e-16, 4, -4, 4, 0.425226, -4.15243, -3.16196, -0.834843, 8.15243, -0.83804}, {0, 0, -5.23939, -4, 1.54883e-11, -0.00566839, 4, -5.23123, 5.24506, 0, 5.23123, 0}, {-1.62732e-11, 1.54703e-11, 4, 5.23939, 0, 0, 0, -5.23939, 0, -5.23939, 5.23939, -4}, {4.72393, 2.32297, -6.20162, -2.81181, -4.23508, -5.55986, 1.34415, -1.34415, 7.48662, -3.25627, 3.25627, 4.27486}, {-3.1649, -4.15492, -3.16386, -0.835098, 8.15492, 6.20975, 4, -4, 4, 0, 0, -7.04589}, {2.10128, 3.1649, 4.15492, 3.73608, 0.835098, -8.15492, -0.419151, -4, 4, -5.41822, 0, 0}, {0, 0, -7.0469, 7.0469, 0, 0, -4.00114, 4, 4, -3.04575, -4, 3.0469}, {-3.89511, 3.89452, 2.96992, -5.24608, 0, 0, 5.68769, -0.444099, -4.33672, 3.45349, -3.45042, 1.3668}, {-7.0469, 0, 0, 4.00114, 4, 4, 3.04575, -4, 3.0469, 0, 0, -7.0469}, {-5.24608, 0, 0, 5.24608, -5.24018, 4, 2.32367e-11, -0.0025524, -4, 0, 5.24273, 0}, {4.44089e-16, 4.44089e-16, 4.03735, -4.51512, 4.40818e-12, -1.39475, 3.2348, 3.2348, -1.306, 1.28032, -3.2348, -1.33659}, {6.38334, 0.936482, -0.936482, -5.90226, 2.17282, 1.41756, -3.46093, -0.129456, -3.46093, 2.97985, -2.97985, 2.97985}, {-0.252976, 0.252976, -3.84336, 0.368915, 3.22147, 0.368915, -2.40103, -1.18935, 1.18935, 2.28509, -2.28509, 2.28509}, {-1.44735, 2.54109, 0.82519, -0.346604, -3.63529, 3.61884, -1.58915, 0.412839, -3.42177, 3.3831, 0.681367, -1.02226}, {-2.32365e-11, 0.0025524, 4, -5.24608, 0, 0, 0, 5.24273, 0, 5.24608, -5.24528, -4}, {-3.59357e-12, 3.68038, 1.41455, 2.62736e-12, -2.69097, 1.9177, -3.2348, 0.574024, -0.993189, 3.2348, -1.56344, -2.33906}, {2.74148, 0.0555531, 2.80173, -2.9202, -2.12061, -0.341431, -0.0977885, 3.03978, -0.0364189, 0.27651, -0.974727, -2.42388}, {4.00321, 3.99728, 3.99972, 0, 0, -3.59038, -0.841653, -8.14937, -0.83453, -3.16156, 4.15209, 0.425192}, {0, 4.44089e-16, -7.0469, 0, 7.04488, 0, -4, -3.99886, 4, 4, -3.04603, 3.0469}, {-4.40759e-12, 4.51512, -3.21766, 0, 0, 4.03735, -3.2348, -1.28032, 0.328292, 3.2348, -3.2348, -1.14798}, {-3.2348, -3.2348, 1.306, 4.40977e-12, 4.51512, -3.21766, 0, 0, 4.03735, 3.2348, -1.28032, -2.12568}, {1.28032, 0.265417, 3.2348, -4.51512, 1.06793, -3.90061e-12, 3.2348, 1.75796, -3.2348, 0, -3.09131, 0}, {-2.85306, -1.28668, -1.28504, 3.1184, -0.694894, -0.694008, 0.0152986, 3.82424, -1.42003, -0.280638, -1.84266, 3.39908}, {3.0469, 4, -3.0469, -7.0469, 0, 0, 4, -4, -4, 0, 0, 7.0469}, {1.29201, -3.25531, 0.810704, 0, 0, -2.6315, -4.51512, -3.75807e-12, 1.37723, 3.22311, 3.25531, 0.443571}, {-3.66502, 2.14914, 1.43616, 0.752328, 1.90198, -1.90298, 4.02391, -1.24183, 1.24643, -1.11122, -2.8093, -0.779603}, {8.15492, -3.3488, 0.835098, -4.15492, -1.54688, 3.1649, 0, 4.85752, 0, -4, 0.0381551, -4}, {-3.45053, 1.3657, -3.45053, 3.59038, 0, 0, 0.304504, 2.97354, 3.89489, -0.444357, -4.33924, -0.444357}, {-4, 3.0469, -3.0469, 0, -7.0469, 0, 4, 4, -4, 0, 0, 7.0469}, {-10.7068, 3.65991, -3.65991, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, 3.65991, -3.65991, 3.65991}, {0, -3.59038, 4.44089e-16, 3.1649, 0.425481, 4.15492, 0.835098, -0.835098, -8.15492, -4, 4, 4}, {-1.94171, 5.28363, -1.94171, 2.66708, -5.57073, -2.5723, 2.43635, -0.964293, 2.43635, -3.16172, 1.25139, 2.07766}, {0.099584, -1.28032, 3.2348, -1.88193, 4.51512, 4.40977e-12, 2.36134, 0, 0, -0.578997, -3.2348, -3.2348}, {-6.2118, -0.835098, -8.15492, 3.1649, -3.1649, 4.15492, 7.0469, 0, 0, -4, 4, 4}, {0.75324, 1.90144, -1.90334, 5.34316, -3.13319, -2.09374, -1.32234, 1.89318, 3.34138, -4.77406, -0.661432, 0.655698}, {4.44089e-16, 7.04488, 0, -4.15492, 3.164, -3.1649, 8.15492, -6.21002, -0.835098, -4, -3.99886, 4}, {-2.97354, -3.89986, -3.89489, 4.33924, 5.691, 0.444357, -1.3657, 3.45494, 3.45053, 0, -5.24608, 0}, {0, 0, -5.23939, 4, 5.24608, 5.23939, -4, -1.55241e-11, -1.5915e-11, 0, -5.24608, 0}, {-0.444357, 5.68374, 4.33924, 3.89489, -3.89489, -2.97354, 0, -5.23939, 0, -3.45053, 3.45053, -1.3657}, {3.52345, -3.52345, -3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345, -3.52345}, {3.59038, 0, 2.22045e-16, 0.304504, -3.89489, -2.97354, -0.444357, 0.444357, 4.33924, -3.45053, 3.45053, -1.3657}, {5.23123, -8.88178e-16, 0, -5.23123, -5.23939, -4, -1.6327e-11, -1.54706e-11, 4, 0, 5.23939, 0}, {-1.36374, -3.44772, 3.44954, -2.97575, 3.89171, -0.30733, 4.3395, -0.443995, 0.448176, 0, 0, -3.59038}, {-3.16371, 4.15492, -3.1649, 4.00114, 4, 4, -7.0469, 0, 0, 6.20947, -8.15492, -0.835098}, {-3.52395, -3.52295, -3.52295, -3.52295, 3.52295, 3.52295, 3.52295, -3.52295, 3.52395, 3.52395, 3.52295, -3.52395}, {4, -4, -4.00114, -8.15492, 0.835098, -6.20947, 0, 0, 7.0469, 4.15492, 3.1649, 3.16371}, {-0.425481, 4.15492, 3.1649, 0.835098, -8.15492, 0.835098, -4, 4, -4, 3.59038, 0, 0}, {-1.79519, 1.79519, -1.79519, -1.79519, -1.79519, 1.79519, -0.0700075, -3.65719, -3.65719, 3.66039, 3.65719, 3.65719}, {4, 4, -4, 0, 0, 7.0469, -7.0469, 0, 0, 3.0469, -4, -3.0469}, {1.16094, -1.15703, 4.97097, -1.66567, -3.57722, 1.41703, -2.89698, 2.8944, -1.14655, 3.40171, 1.83985, -5.24145}, {-2.7042, -1.06842, -2.70002, 1.70166, -5.90879, -3.52267, 2.19866, 5.37974, 2.18568, -1.19612, 1.59748, 4.03701}, {4.33729, -5.67235, 0.447948, -1.36509, -3.44596, 3.4494, 0, 5.23123, 0, -2.97221, 3.88708, -3.89735}, {3.2348, -3.2348, -1.14797, 0, 0, 4.03735, 1.28032, 3.2348, -1.49462, -4.51512, -4.40977e-12, -1.39475}, {4, 4, 4, -0.835098, -0.835098, -8.15492, 0, -3.59038, 0, -3.1649, 0.425481, 4.15492}, {-3.1649, -3.1649, 4.15492, -7.0469, 0, 0, 4, 4, 4, 6.2118, -0.835098, -8.15492}, {0.724826, 0.724826, -6.59499, -3.21143, -3.21143, -3.21143, 3.7299, 0.139517, 3.7299, -1.24329, 2.34709, 6.07653}, {2.48661, 2.48661, 9.80643, -3.21143, -3.21143, -3.21143, -1.7154, 5.33149, 5.33149, 2.44023, -4.60667, -11.9265}, {-4.95125, 1.10332, 1.10192, -1.44818, -1.58249, 3.65892, 0.833328, -2.10815, -2.10546, 5.5661, 2.58731, -2.65538}, {0.836183, -2.10682, -2.10682, 4.11656, 1.00419, 1.00419, -1.14088, 2.87451, -0.715871, -3.81187, -1.77188, 1.8185}, {0.343882, -3.2462, -1.28483, 0.297233, 0.297493, 4.63286, 2.13498, 2.13685, 0.845752, -2.7761, 0.811861, -4.19379}, {2.22045e-16, 5.23939, 0, -3.44772, -3.45309, -1.36374, 3.89171, 3.89778, -2.97575, -0.443995, -5.68407, 4.3395}, {3.58725, -4.44089e-16, 0, -3.44752, -3.45053, -1.3657, -0.443969, -0.444357, 4.33924, 0.304238, 3.89489, -2.97354}, {3.65991, -3.65991, -3.65991, 3.52345, 3.52345, -3.52345, -3.52345, -3.52345, -3.52345, -3.65991, 3.65991, 10.7068}, {3.1649, -4.15492, -3.1649, 0, 0, -7.0469, -4, -4, 4, 0.835098, 8.15492, 6.2118}, {-4, -4, 4, 0.835098, 8.15492, -0.835098, 3.59038, 0, 0, -0.425481, -4.15492, -3.1649}, {-1.3476, -0.0112467, -3.55949, 1.85019, -3.24836, -1.05487, 1.92324, 3.24442, -0.189939, -2.42583, 0.0151799, 4.80429}, {1.17675, 3.24909, 1.28847, -0.315792, -3.2348, 3.2348, -3.14489, 0, 0, 2.28393, -0.014292, -4.52327}, {8.15492, -0.835098, -0.835098, -4, 4, 4, 0, 0, -3.59038, -4.15492, -3.1649, 0.425481}, {-4.15492, -3.1649, -3.1649, -4, 4, 4, 0, -7.0469, 0, 8.15492, 6.2118, -0.835098}, {0.137487, 7.18233, 7.18233, -1.79519, 1.79519, -1.79519, 3.52295, -3.52295, -3.52295, -1.86524, -5.45458, -1.86419}, {3.52295, -3.52295, -3.52295, -3.66043, -3.65939, -3.65939, -3.52345, -3.52345, 3.52345, 3.66094, 10.7058, 3.65888}, {1.67988, -1.68212, -5.18466, -2.30896, 2.30807, 0.915293, -1.39444, -3.85015, -1.52682, 2.02352, 3.2242, 5.7962}, {3.4516, -3.45027, -1.36825, -3.89922, 3.89484, -2.97306, -5.24608, 0, 0, 5.6937, -0.444568, 4.3413}, {1.94453e-16, 2.70417, 0, 3.25531, -0.177688, 3.22311, -3.25531, -0.557762, 1.29201, 3.62091e-12, -1.96872, -4.51512}, {3.09726e-12, 1.01994, -3.86266, -3.25531, -0.69454, 0.97832, 3.25531, -2.18133, -1.3721, -3.41346e-12, 1.85593, 4.25643}, {2.90521, -1.78203, -2.9082, 2.41571, 1.84427, 2.82665, -2.85063, 1.82369, -2.38912, -2.47029, -1.88594, 2.47066}, {-5.23939, 0, -8.88178e-16, 0, 0, 5.24273, 2.28278e-11, -4, -0.0025524, 5.23939, 4, -5.24018}, {-3.52295, 3.52295, 3.52295, 1.79545, 1.79493, -1.79545, 7.18233, -7.18233, 0.137487, -5.45483, 1.86445, -1.86498}, {-3.52295, 3.52295, 3.52295, -3.52395, -3.52295, -3.52295, -3.65939, 3.65939, -3.66043, 10.7063, -3.65939, 3.66043}, {-0.835098, 0.835098, 8.15492, 0, 3.59038, 0, 4, -4, -4, -3.1649, -0.425481, -4.15492}, {-7.0469, 5.55112e-16, 0, 4, -4, -4, -3.1649, 3.1649, -4.15492, 6.2118, 0.835098, 8.15492}, {0.662971, 0.664005, -4.25288, 1.65703, 1.65961, 0.655439, -2.91351, 2.32133, -1.15244, 0.59351, -4.64495, 4.74988}, {1.19438, -3.49493, 0, -2.76951, 1.19435, 0, 1.94164, -0.567827, 2.9332, -0.366511, 2.8684, -2.9332}, {2.36134, 1.0718e-17, 8.88178e-16, 0.671422, -3.2348, 3.2348, -0.342675, 3.2348, 1.28032, -2.69009, 3.55093e-12, -4.51512}, {-1.10548, 3.2348, 0, -1.25586, -3.2348, 0, 0.613756, 2.30645e-12, -2.9332, 1.74759, -2.30645e-12, 2.9332}, {3.2348, 0.120997, 3.2348, 0, -3.09131, 0, -3.2348, -0.551371, 1.28032, 3.95817e-12, 3.52168, -4.51512}, {-3.2348, 0.76173, -0.403199, 2.15323e-12, -1.17552, -2.45621, 3.2348, 2.34907, 0.378214, -2.17514e-12, -1.93527, 2.4812}, {-3.53969, 3.53969, 2.69627, -1.11299, 1.11299, -6.1991, 5.13509, 1.9118, -3.91153, -0.482412, -6.56449, 7.41436}, {4.72983, -3.60283, 2.31706, -1.62186, -5.81149, 1.62186, -3.59839, 2.74098, 3.59839, 0.490411, 6.67334, -7.53731}, {-4, 4, -4, 4, -4, -3.0469, 0, 7.0469, 0, 0, -7.0469, 7.0469}, {0, 0, 7.0469, 4, -3.0469, -4, -4, -4, 4, 0, 7.0469, -7.0469}, {1.26315, 3.1826, -0.407781, -4.48373, 0.0790768, 0.0790768, -1.01464, -2.55645, -2.55645, 4.23522, -0.705229, 2.88515}, {-1.01079, -2.55709, -2.55383, 1.69808, -0.95029, 4.29031, 5.49464, 2.47799, 2.47483, -6.18193, 1.02939, -4.21131}, {-1.79519, -1.79519, 1.79519, -3.65991, 3.65991, -3.65991, 1.79519, 1.79519, 1.79519, 3.65991, -3.65991, 0.0695263}, {-1.79519, -1.79519, 1.79519, 5.4551, -1.86472, 1.86472, 3.52345, -3.52345, -3.52345, -7.18336, 7.18336, -0.13646}, {0, -4.44089e-16, 3.59038, -8.15492, -0.835098, 0.835098, 4, 4, -4, 4.15492, -3.1649, -0.425481}, {4.15492, -3.1649, 3.1649, 4, 4, -4, 0, -7.0469, 0, -8.15492, 6.2118, 0.835098}, {4.18211, -0.841369, 0.841369, 1.63378, -1.11155, -4.12784, -0.96395, -2.43548, 2.43548, -4.85193, 4.3884, 0.850991}, {-2.9332, -0.654372, 2.78087, 0, 0.366146, -3.84129, 0, 2.94119, 1.57488, 2.9332, -2.65297, -0.514459}, {4.51512, -1.06793, 3.90044e-12, 0, -3.09131, 0, -1.28032, 0.871067, 3.2348, -3.2348, 3.28817, -3.2348}, {0, -0.430374, 4.51512, -2.9332, -0.109716, -2.9332, 0, 3.52168, -4.51512, 2.9332, -2.98159, 2.9332}, {4.19026, 0.820764, 0.814826, 1.21474, -3.06912, 2.16855, -0.936049, 2.36499, 2.36631, -4.46895, -0.116634, -5.34969}, {0.972372, 0.736781, -3.03724, -3.79781, 2.2903, -1.05943, 0.111338, -3.09792, 0.84769, 2.7141, 0.0708344, 3.24899}, {-2.55729, 1.01135, -2.55763, -2.08284, -1.24835, 3.15697, 1.89416, -5.27077, 1.90402, 2.74596, 5.50777, -2.50336}, {3.77679, -1.49465, 0.187718, 0.660093, 4.25334, 0.656376, -2.557, 1.01192, -2.55789, -1.87988, -3.77061, 1.7138}, {-5.23939, 0, -5.55112e-17, 3.4502, -1.36448, 3.45065, -3.90439, -2.97758, -3.8953, 5.69358, 4.34205, 0.444645}, {-4.44089e-16, 4.44089e-16, -3.59038, 3.4494, -1.36509, 3.45059, 0.447948, 4.33729, 0.444157, -3.89735, -2.97221, -0.304367}, {4.28053, 0.593056, -0.587914, -0.673906, 1.70372, -1.70733, 1.45255, -3.67222, -1.55938, -5.05918, 1.37545, 3.85462}, {0, 4.47576, 0.618208, 0, -4.47576, 1.81259, -2.9332, -2.90763, -0.707734, 2.9332, 2.90763, -1.72306}, {-1.27174, 3.21511, 1.36527, 0, 0, -2.4308, 4.51512, -3.70603e-12, -0.839751, -3.24338, -3.21511, 1.90528}, {0.947177, -0.947177, -4.14023, -3.0344, -2.20499, -1.201, 1.74832, -1.74832, 0.691975, 0.338905, 4.90048, 4.64925}, {1.90928, 0.579177, 2.90015, -2.97176, -1.29918, -0.341631, 1.26427, 3.63788, 0.209764, -0.201792, -2.91787, -2.76828}, {3.04112e-12, -1.63545, -4.51512, 0, -3.01876, 0, 3.2348, 2.35061, 1.28032, -3.2348, 2.3036, 3.2348}, {4.04958, 1.77038, 0.465536, -2.40427, -1.3066, 2.40427, -4.10736, 1.28953, -0.407754, 2.46205, -1.7533, -2.46205}, {0.835098, -0.835098, 8.15492, -4, 4, -4, 3.59038, 0, 0, -0.425481, -3.1649, -4.15492}, {3.1649, -3.1649, -4.15492, -4, 4, -4, 0, -7.0469, 0, 0.835098, 6.2118, 8.15492}, {-3.65991, 3.65991, 3.65991, 1.79519, 1.79519, -1.79519, 1.79519, -1.79519, 1.79519, 0.0695263, -3.65991, -3.65991}, {1.79519, -1.79519, 1.79519, 1.86472, -1.86472, -5.4551, -3.52345, -3.52345, -3.52345, -0.13646, 7.18336, 7.18336}, {3.0611, -1.07112, 2.10077e-12, -0.369018, 1.30083, 3.2348, 0.267075, 1.7536, -3.2348, -2.95915, -1.98331, -2.03061e-12}, {-1.28032, 0.716498, -3.2348, -3.2348, -0.619904, 3.2348, 0, -3.12276, 0, 4.51512, 3.02616, 3.09876e-12}, {-3.24675, 0.177221, -3.21463, 0, 2.70417, 0, -1.28505, -0.665307, 3.24278, 4.53179, -2.21609, -0.0281511}, {-1.03768, -0.786269, 3.24125, 3.76174, 0.864649, -0.0233676, 1.42117, -2.10543, -3.24363, -4.14523, 2.02705, 0.0257498}, {-3.65991, -3.65991, 3.65991, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345, 3.65991, 3.65991, -10.7068}, {-1.02588, -1.02588, -4.04576, 5.15074, -1.89616, -1.23707, -2.74863, 4.29827, 1.25677, -1.37623, -1.37623, 4.02606}, {4, -4, -4, -3.1649, -4.15492, 3.1649, 0, 0, 7.0469, -0.835098, 8.15492, -6.2118}, {4.27497, -6.68514, -1.95466, -0.750905, 7.33275, 1.46136, -3.95428, 3.55351, -2.7068, 0.430212, -4.20112, 3.20009}, {-0.675958, 1.70428, -1.70576, 3.47227, -0.944013, -2.64554, 0.813742, 1.53558, 2.05346, -3.61005, -2.29584, 2.29785}, {-2.9332, 0.268765, -0.269, 0, 1.01807, 2.57142, 0, -3.15223, -0.435397, 2.9332, 1.86539, -1.86702}, {2.9332, -2.86386e-12, 0.906086, 0, 3.2348, -2.30525, 0, -3.2348, -1.73209, -2.9332, 2.86386e-12, 3.13126}, {-1.28032, -3.2348, -0.365321, -3.2348, 3.2348, 1.14798, 0, 0, 4.03735, 4.51512, -4.40815e-12, -4.82}, {4.32811, 0.737725, -1.71304, -3.72649, -3.72649, 1.47492, -0.518804, -0.518804, 4.72046, -0.0828155, 3.50757, -4.48234}, {-5.23939, -3.88578e-16, 0, -3.90017, -3.8953, -2.97758, 3.45213, 3.45065, -1.36448, 5.68742, 0.444645, 4.34205}, {3.45053, 3.45053, -1.3657, 0, -3.59038, 0, 0.444357, 0.444357, 4.33924, -3.89489, -0.304504, -2.97354}, {0, 1.06747e-17, -2.884, -3.22311, 3.25531, -0.327888, -1.29201, -3.25531, 0.417097, 4.51512, 3.75787e-12, 2.79479}, {-0.0130226, -3.25531, 1.20877, -0.260244, 3.25531, 1.50608, 3.12118, 2.59785e-12, -0.952039, -2.84791, -2.3704e-12, -1.76282}, {0.578997, 3.2348, 3.2348, 2.36134, 0, 0, -0.250249, -3.2348, 1.28032, -2.69009, -3.55036e-12, -4.51512}, {-1.12419, -3.2348, -0.186522, 0.812252, -2.04448e-12, -2.60004, -1.39607, 3.2348, -0.0801962, 1.708, 2.2542e-12, 2.86675}, {-3.93279, 1.55848, -1.3088, 1.97526, -0.782753, -1.97415, -1.50913, 5.11867, 1.50188, 3.46666, -5.8944, 1.78108}, {-0.47019, -4.32902, 0.47019, 0.867473, 1.07771, 2.72291, 1.97453, -0.781507, -1.97453, -2.37181, 4.03281, -1.21857}, {-3.45037, 1.36731, 3.44843, 0, 0, -5.23939, 3.89524, 2.97704, -3.89946, -0.444879, -4.34434, 5.69042}, {-3.45053, 1.3657, 3.45053, 3.59038, 0, 0, -0.444357, -4.33924, 0.444357, 0.304504, 2.97354, -3.89489}, {2.40563, -3.3686, -2.16577, -4.01552, 0.313534, -3.06173, -1.35813, -0.303573, 2.96446, 2.96803, 3.35864, 2.26304}, {0.444309, 1.73608, 4.33877, 0, 4.85752, 0, 3.45016, -2.1866, -1.36934, -3.89447, -4.407, -2.96943}, {-1.77354, -2.8259, -5.08017, -1.99992, 2.80049, 1.80052, -0.192763, -1.93544, 1.91528, 3.96622, 1.96086, 1.36437}, {3.41957, -0.149544, 3.15791, -3.35877, 2.12868, 1.33307, 6.03338, 1.03375, -2.39461, -6.09418, -3.0129, -2.09638}, {1.36731, -2.16592, -3.45037, 0, 4.85752, 0, -4.34434, 1.78399, -0.444879, 2.97704, -4.4756, 3.89524}, {-2.95631, -0.302739, 1.37126, 3.02503, 0.309776, 3.95804, 2.1672, -3.36845, -2.40376, -2.23591, 3.36142, -2.92554}, {2.31112, 1.19654, -5.83206, -1.28659, 2.03806, 3.24669, -3.3095, 0.144731, -3.05627, 2.28498, -3.37933, 5.64163}, {-1.96264, -1.84718, 0.269133, -1.79514, 2.79017, 1.99109, 5.26848, -3.1772, 1.46969, -1.5107, 2.23422, -3.72992}, {-0.60788, 3.25394, -0.100754, 4.36982, -1.029, 0.544673, 0.0459483, -1.94609, 2.48692, -3.80789, -0.278843, -2.93084}, {-2.10446, -2.10356, 0.831802, -1.45971, -1.45589, -3.94218, -2.09284, 3.1452, -1.24369, 5.65702, 0.414251, 4.35407}, {3.27119, 4.85191, 0.362578, 0.814367, -4.35925, 0.134979, -0.753128, 2.3313, 2.35448, -3.33243, -2.82396, -2.85204}, {-3.50419, 0, -4.44089e-16, 2.14843, -3.22874, 1.27672, -2.43779, 0.014006, -4.52341, 3.79356, 3.21473, 3.24669}}
+ + values : {{-2.9332, -3.39585, 0.502232, 0, 2.96343, 0.405765, 2.9332, 0.0602741, 3.04336, 0, 0.372141, -3.95136}, {3.45053, -1.3657, -2.27011, -3.89489, -2.97354, -4.55745, 0, 0, 5.36117, 0.444357, 4.33924, 1.46638}, {0.382444, -2.89016, 0, -1.28516, 1.90393, 2.9332, 3.7515, 0.879817, 0, -2.84879, 0.106407, -2.9332}, {2.97575, 3.89171, -3.89356, 0, 0, -5.23939, 1.36374, -3.44772, 3.45502, -4.3395, -0.443995, 5.67793}, {4, -4, -4.00114, -4, -3.0469, -3.04575, 0, 0, 7.0469, 0, 7.0469, 0}, {-3.52295, -3.52395, -3.52295, -3.52295, 3.52295, 3.52395, 3.52295, -3.52295, 3.52295, 3.52295, 3.52395, -3.52395}, {2.40825, 0.953172, 2.40825, 2.50475, 5.50649, -2.73463, -1.78774, -5.2227, -1.78774, -3.12526, -1.23696, 2.11413}, {-2.9332, 1.96549, 1.23633, 0, -2.87587, -0.393776, 0, 1.01994, -3.86266, 2.9332, -0.10956, 3.0201}, {0.419151, 4, -4, 2.79404, -8.15492, 0.835098, 2.20503, 4.15492, 3.1649, -5.41822, 0, 0}, {3.52244, 3.52345, 3.52345, 3.65886, 3.65991, -3.65991, 3.52345, -3.52244, -3.52244, -10.7048, -3.66092, 3.6589}, {-1.79359, 1.79523, -1.79625, 3.5193, 3.52237, 3.52452, -7.1749, -7.18117, 0.13427, 5.44919, 1.86357, -1.86254}, {3.99728, -4.00093, 4.00321, 0, 7.04488, 0, 4.15209, 3.16185, -3.16156, -8.14937, -6.2058, -0.841653}, {-2.33012, -1.26027, 3.59031, 1.73691, -1.73691, -3.82575, -2.89531, 2.89531, -1.14913, 3.48852, 0.101865, 1.38457}, {0, 3.12067, -1.26381, 0, -0.238012, 2.52719, -2.9332, -3.29673, -0.550156, 2.9332, 0.414072, -0.713225}, {2.25842, -1.36825, -3.45027, 4.64721, -2.97306, 3.89484, -1.48742, 4.3413, -0.444568, -5.41822, 0, 0}, {-0.835098, -8.15492, -2.75583, 4, 4, -0.45685, -3.1649, 4.15492, -2.14849, 0, 0, 5.36117}, {2.74019, 0.0956852, 2.80125, -3.01086, 0.697365, -0.375193, 0.165245, 2.48398, -2.46532, 0.105421, -3.27703, 0.0392613}, {2.96943, -3.89447, -0.304082, 1.36934, 3.45016, 3.45016, 0, 0, -3.59038, -4.33877, 0.444309, 0.444309}, {3.164, 3.1649, 4.15492, -6.21002, 0.835098, -8.15492, 7.04488, 0, 0, -3.99886, -4, 4}, {-4.24471, 0, -2.22045e-16, 1.70632, 0.0142405, 4.507, 1.02929, -3.25521, -3.22316, 1.5091, 3.24097, -1.28383}, {-0.835098, -3.26304, -8.15492, -3.1649, -1.55632, 4.15492, 4, -0.0381551, 4, 0, 4.85752, 0}, {-3.09877, -0.624101, 0.936346, 2.96195, 3.42913, -0.507155, -0.240412, -3.6139, 3.58676, 0.377232, 0.808874, -4.01595}, {-7.0469, 0, 0, 4, 4, -4, 3.0469, 3.04589, 4, 0, -7.04589, 0}, {0, 0.802501, 2.70275, -2.9332, -0.102425, -2.99855, 2.9332, 2.58063, 0.364309, 0, -3.28071, -0.0685083}, {-3.1225e-17, 0, -2.4308, 3.22687, 1.27702, 1.31348, -3.25484, 3.22647, -0.701298, 0.0279753, -4.5035, 1.81862}, {1.62741e-11, -1.54712e-11, -4, 5.23939, 0, 0, -5.23939, 5.23939, 4, 0, -5.23939, 0}, {0, -7.13135e-16, 5.23939, 0, 5.23939, 0, 4, -5.23939, -5.24506, -4, -2.28255e-11, 0.00566839}, {0, -7.0469, 8.88178e-16, -4, 4, 4, 4, 3.0469, 3.0469, 0, 0, -7.0469}, {-4, 5.24608, 5.23939, 4, 1.55241e-11, 1.5915e-11, 0, -5.24608, 0, 0, 0, -5.23939}, {4, -4, 4, -7.0469, 0, 0, 3.0469, 4, 3.04589, 0, 0, -7.04589}, {2.51489, 3.01511, 3.01511, -3.88194, -3.41534, -0.482145, -2.88414, -0.0592661, -2.99246, 4.25119, 0.459499, 0.459499}, {5.23939, 5.23285, 4, 0, -5.23568, 0, -5.23939, 0, 0, 2.32699e-11, 0.00283219, -4}, {-2.75474, -0.835644, -4.18437, 0.257813, 3.33257, -1.31901, 0.305142, -0.305142, 4.63589, 2.19179, -2.19179, 0.867496}, {4.15492, -3.1649, -3.1649, -8.15492, -0.835098, 6.2118, 4, 4, 4, 0, 0, -7.0469}, {0.00566839, 4, -0.00283219, 0, 0, -5.23568, 5.23372, -4, 5.23851, -5.23939, 0, 0}, {-1.52791, 1.52994, 4.71561, -1.9516, -3.29226, 0.192739, -0.842937, 0.840096, -3.60933, 4.32244, 0.92222, -1.29903}, {2.86385, 3.21879, 0.53715, -0.233278, -0.500202, 2.48343, -2.84203, -0.0735906, -1.79686, 0.211453, -2.645, -1.22372}, {4.53179, 1.05538, 0.0281511, -1.28505, -2.42496, -3.24278, -3.24675, -1.61027, 3.21463, 0, 2.97985, 0}, {-1.02659, 3.24669, 3.21473, 3.14112, -4.52341, 0.014006, -4.24471, 0, 0, 2.13019, 1.27672, -3.22874}, {-4, -4, -4, 0.835098, 8.15492, 0.835098, 0, 0, 3.59038, 3.1649, -4.15492, -0.425481}, {0, -7.0469, 0, -4, 3.0469, 3.0469, 4, 4, 4, 0, 0, -7.0469}, {2.27701, -1.57663, -3.25, -1.49395, 3.66511, 0.0115805, -2.03803, -2.71547, -0.00857994, 1.25497, 0.626993, 3.247}, {4.33924, 5.68374, -0.444357, -2.97354, -3.89489, 3.89489, -1.3657, 3.45053, -3.45053, 0, -5.23939, 0}, {4.33729, -5.68119, -0.447948, 0, 5.23939, 0, -1.36509, -3.45133, -3.4494, -2.97221, 3.89314, 3.89735}, {0, 6.10623e-16, 3.59038, -2.97354, -3.89489, 0.304504, -1.3657, 3.45053, -3.45053, 4.33924, 0.444357, -0.444357}, {-0.960671, 0.960671, -4.13489, 2.09645, -2.09645, -0.829765, 1.35765, 2.23273, 3.97777, -2.49343, -1.09695, 0.986887}, {-3.6556, -3.65879, 3.65879, -1.79574, 1.79308, -1.79621, 3.6556, 3.65879, -0.0684102, 1.79574, -1.79308, -1.79417}, {0.307102, -2.97354, -3.89489, 3.59038, 0, 0, -0.44815, 4.33924, 0.444357, -3.44934, -1.3657, 3.45053}, {-1.64157, 0.110512, -3.2348, 1.22142, 3.1461, -3.07269e-12, -0.833409, -0.40322, 3.2348, 1.25356, -2.85339, 2.78682e-12}, {0, 7.04488, 0, 4, -3.99886, 4.00114, -4, -3.04603, 3.04575, 0, 0, -7.0469}, {-0.443995, -0.444383, -4.3395, 0, 3.59038, 0, -3.44772, -3.45073, 1.36374, 3.89171, 0.30473, 2.97575}, {-1.00556, 2.54062, 1.04976, -3.90018, -1.55367, -2.03672, 3.775, 1.86995, -1.86995, 1.13075, -2.8569, 2.8569}, {-4.90575, 0.986953, -0.986953, 1.13075, -2.8569, 2.8569, -1.91647, -0.397296, -4.84209, 5.69148, 2.26724, 2.97215}, {4.19746, -5.51046, 2.84944, 1.88954, 6.77064, -1.88954, -2.89363, -5.45245, -4.15327, -3.19336, 4.19228, 3.19336}, {8.88178e-16, 7.0469, 0, -3.99886, -4, -4, 7.04488, 0, 0, -3.04603, -3.0469, 4}, {-4, 4, -4, 0, -7.0469, 0, 4, 3.0469, -3.0469, 0, 0, 7.0469}, {5.23123, 5.81945e-16, 0, -5.23123, -5.23939, 4, 0, 5.23939, 0, 1.6327e-11, 1.54706e-11, -4}, {-0.750211, -0.75138, 4.81251, 1.07726, -4.16045, 1.64668, -2.20213, 3.03383, -5.71589, 1.87508, 1.878, -0.743302}, {4, -2.28271e-11, 2.36273e-11, -4, 5.23939, -5.23939, 0, -5.23939, 0, 0, 0, 5.23939}, {3.80063, -1.80519, -1.80851, 1.09322, 2.76209, 2.76114, -3.92166, 1.49941, -2.08755, -0.972194, -2.45631, 1.13492}, {-1.92104, 0.382436, -4.85423, 5.71942, -2.18677, 3.04452, 1.09257, 2.76234, 2.76079, -4.89095, -0.95801, -0.95108}, {3.0469, 3.0469, -4, 4, 4, 4, -7.0469, 0, 0, 0, -7.0469, 0}, {-3.52345, 3.52244, -3.52446, 3.52244, 3.52345, 3.52345, -3.52244, -3.52345, 3.52345, 3.52345, -3.52244, -3.52244}, {-3.89489, -0.305669, 2.97354, 3.45053, 3.44843, 1.3657, 0, -3.58881, 0, 0.444357, 0.446058, -4.33924}, {3.45195, 3.44854, 1.36462, 5.6826, 0.445968, -4.33837, -3.89516, -3.89451, 2.97375, -5.23939, 0, 0}, {3.2348, 1.4231, -1.28032, 0, -3.01876, 0, -3.04119e-12, 1.63545, 4.51512, -3.2348, -0.0397999, -3.2348}, {-2.82577, -2.82405, -1.11842, -1.29033, 2.2973, 4.00441, 3.2475, -0.343291, 1.28534, 0.868592, 0.870035, -4.17133}, {1.88206, -3.35082, -5.84079, -2.82615, -2.82336, -1.11723, 1.95788, 1.95275, 5.28756, -1.01379, 4.22143, 1.67046}, {4.00887, -0.711384, 1.23085, -1.07985, 3.872, 1.08301, -1.46134, -0.730093, -3.78093, -1.46768, -2.43052, 1.46707}, {-6.11172, -2.09613, -3.09899, -3.35065, 1.32617, 2.2044, 6.08523, -2.4085, 1.35769, 3.37714, 3.17846, -0.4631}, {0, -1.78762, -4.51512, 0, -1.19223, 4.51512, 2.9332, 1.45476, -2.90418, -2.9332, 1.52509, 2.90418}, {-8.88178e-16, 0, 7.0469, -3.0469, -4, -3.0469, -4, 4, -4, 7.0469, 0, 0}, {-1.83438, 2.64163, -0.00817939, 1.49822, -0.389218, 3.22599, -2.02268, -3.19987, 0.00990788, 2.35884, 0.947457, -3.22772}, {-3.58659, -3.58659, 0.548674, 1.12084, -3.39428, -1.90685, -0.156642, 4.35848, -1.19262, 2.6224, 2.6224, 2.5508}, {-3.52345, -3.52345, -3.52345, 3.52345, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345}, {4.44089e-16, 0, 2.95197, 4.40828e-12, -4.51512, -1.73539, -3.2348, 1.28032, -0.721726, 3.2348, 3.2348, -0.494857}, {-4.24471, 8.88178e-16, -4.44089e-16, 1.287, -4, -4, -1.6658, 8.15492, 0.835098, 4.62351, -4.15492, 3.1649}, {0.885858, -4.33672, -0.444099, -4.24471, 0, 0, 3.16813, 2.96992, 3.89452, 0.190724, 1.3668, -3.45042}, {-2.32703e-11, -0.00283219, 4, 5.23939, 5.23851, -4, 0, -5.23568, 0, -5.23939, 0, 0}, {-5.23939, -4, -5.23939, 2.28255e-11, 4, 2.28255e-11, 0, 0, 5.23939, 5.23939, 0, 0}, {4.47576, -1.93017, 0, -2.90763, 1.52342, 2.9332, 2.90763, 1.45643, -2.9332, -4.47576, -1.04967, 0}, {-2.74183, 0.846161, -0.849296, 1.62977, 1.63119, -1.63119, 0.777461, 0.778141, 2.81224, 0.334598, -3.25549, -0.331753}, {-2.36134, 0, 0, 1.74759, 0, 2.9332, -0.525012, -2.9332, -2.9332, 1.13877, 2.9332, 0}, {-3.21511, 0.1024, -3.24338, 3.21511, -1.89002, -1.27174, 0, 2.97985, 0, -3.36919e-12, -1.19223, 4.51512}, {0, 5.23939, 4.12864e-16, 0, 0, 5.23939, -4, -5.23939, -5.23372, 4, 2.28255e-11, -0.00566839}, {-2.40793, -0.260266, -0.260266, 0.500707, 2.7974, 2.7974, 1.23528, -2.86224, 0.0709597, 0.671946, 0.325101, -2.6081}, {4, 5.23939, -5.23939, 0, 0, 5.23939, -4, 2.28278e-11, -2.36282e-11, 0, -5.23939, 0}, {-4.44089e-16, 7.0469, 0, -7.0469, 0, 0, 3.0469, -3.0469, -4, 4, -4, 4}, {3.22647, -1.69048, -3.25484, 1.27702, -0.254226, 3.22687, 0, 2.97985, 0, -4.5035, -1.03514, 0.0279753}, {-3.50419, 8.88178e-16, 2.01228e-16, -0.300503, -3.2348, 3.2348, 0.9543, -1.27452, -3.22084, 2.85039, 4.50932, -0.0139624}, {-2.58829, 1.58763, 2.59096, 3.47782, 1.19279, 1.76345, 1.14429, -4.10309, -1.14764, -2.03382, 1.32267, -3.20677}, {-0.0193683, 3.11794, -1.2591, 3.23344, 0.218445, 1.74096, -3.23197, -0.456248, 0.785873, 0.0178911, -2.88013, -1.26773}, {4, -4, -4, -7.0469, 0, 0, 3.0469, -3.0469, 4, 0, 7.0469, 0}, {2.09645, -2.09645, -0.829765, 1.02053, 4.21886, 1.6698, -1.9812, -3.25819, -5.80469, -1.13578, 1.13578, 4.96465}, {0, 3.04177, 0.0635186, 0, -2.06144, 2.64295, -2.9332, -0.059438, -2.99766, 2.9332, -0.920892, 0.29119}, {1.04124, -3.22316, -3.25521, -4.24471, 0, 0, -0.179146, -1.28383, 3.24097, 3.38261, 4.507, 0.0142405}, {3.21511, -2.56163, 1.27174, -3.21511, -1.61044, 3.24338, 0, 2.97985, 0, 3.36919e-12, 1.19223, -4.51512}, {-3.65939, -3.66043, -10.7063, -3.52295, 3.52295, 3.52395, 3.52295, -3.52295, 3.52295, 3.65939, 3.66043, 3.65939}, {0.841653, -8.14937, -0.83453, 0, 0, -3.59038, -4.00321, 3.99728, 3.99972, 3.16156, 4.15209, 0.425192}, {0, -8.88178e-16, -5.23939, -4, -5.23123, 5.23372, 4, -1.54883e-11, 0.00566839, 0, 5.23123, 0}, {3.88882, 3.89489, 2.97354, 5.23123, 0, 0, -3.44516, -3.45053, 1.3657, -5.6749, -0.444357, -4.33924}, {8.15548, 0.834427, -0.835156, 0, 0, -3.59038, -4.00272, -3.99679, 4.00028, -4.15276, 3.16236, 0.425261}, {1.3657, 3.45053, -3.45053, 0, 0, 3.59038, -4.33924, 0.444357, -0.444357, 2.97354, -3.89489, 0.304504}, {-0.837584, 3.2348, -1.28032, -0.944765, -3.55036e-12, 4.51512, -0.578996, -3.2348, -3.2348, 2.36134, 0, 0}, {-3.0469, 3.0469, -4, 0, -7.0469, 0, 7.0469, 0, 0, -4, 4, 4}, {0.832911, -2.82507, -0.828908, 0.808732, 3.17388, -0.81323, -3.40548, -0.230067, -1.83358, 1.76384, -0.118743, 3.47572}, {4.44089e-16, -3.01876, 0, 1.28032, 1.39906, -3.2348, -4.51512, 1.5799, -3.09855e-12, 3.2348, 0.0397999, 3.2348}, {1.27174, 3.21511, 0.89222, 0, 0, -2.4308, 3.24338, -3.21511, 0.698828, -4.51512, 3.70603e-12, 0.839751}, {-1.79652, -1.79386, -1.79496, 1.79652, 1.79386, -1.79543, -3.65719, 3.65719, -0.0700075, 3.65719, -3.65719, 3.66039}, {-2.2828e-11, 4, 0.0025524, 0, 0, 5.24273, -5.23939, 0, 0, 5.23939, -4, -5.24528}, {-1.75292, -4.51512, -4.40936e-12, 0.0630025, 1.28032, 3.2348, 2.36134, 0, 0, -0.671422, 3.2348, -3.2348}, {-1.82767, 3.81744, 1.76272, -0.114041, 1.46619, -3.70442, 2.43635, -0.964293, 2.43635, -0.494641, -4.31934, -0.494641}, {-3.45053, -1.3657, -3.45053, -0.444357, 4.33924, -5.68374, 0, 0, 5.23939, 3.89489, -2.97354, 3.89489}, {2.9332, 2.26271, -0.706418, -2.9332, 1.41766, 2.12097, 0, -0.989411, -3.33225, 0, -2.69097, 1.9177}, {0, -1.39581e-17, 4.03735, -3.2348, -3.2348, -3.14648, -1.28032, 3.2348, -2.28562, 4.51512, 4.40982e-12, 1.39475}, {3.25531, -1.69257, -3.22311, -3.621e-12, -1.19223, 4.51512, 0, 2.97985, 0, -3.25531, -0.095055, -1.29201}, {-2.43276, 1.15549, 1.15762, 2.22336, 2.22531, 2.22336, 0.45554, -3.13444, 0.45554, -0.246142, -0.246357, -3.83653}, {4.00272, -3.99679, 4.00378, -8.15548, 0.834427, -0.842284, 4.15276, 3.16236, 0.42889, 0, 0, -3.59038}, {-2.25991, 1.3285, 0.893907, -1.12519, -1.12617, -4.07005, 1.87562, 1.87726, -0.7419, 1.50948, -2.07958, 3.91804}, {-3.45053, 1.3657, -3.45053, -0.444357, -4.33924, -5.68374, 3.89489, 2.97354, 3.89489, 0, 0, 5.23939}, {-3.2348, 0.341949, -1.28032, 0, -3.12276, 0, 3.2348, 0.619904, -3.2348, -3.95817e-12, 2.1609, 4.51512}, {2.97704, 0.304595, -3.89524, -4.34434, -0.444491, 0.444879, 1.36731, -3.44735, 3.45037, 0, 3.58725, 0}, {1.27702, -1.8283, -3.22687, 3.22647, -0.102762, 3.25484, 0, 2.97985, 0, -4.5035, -1.04879, -0.0279753}, {5.67645, -4.33837, 0.445968, 3.45388, 1.36462, 3.44854, -3.89094, 2.97375, -3.89451, -5.23939, 0, 0}, {0, 0, -5.23568, -0.00566839, -4, 0.00283219, 5.24506, 4, 5.23285, -5.23939, 0, 0}, {2.97354, -3.89489, 3.89489, 1.3657, 3.45053, -3.45053, 0, -5.23939, 0, -4.33924, 5.68374, -0.444357}, {7.0469, 0, 0, 0, 0, -7.0469, -4, -4, 4, -3.0469, 4, 3.0469}, {0.676898, -0.676898, 2.91348, 1.85764, -1.85764, -1.85764, -2.8863, -0.704082, -0.704082, 0.351759, 3.23862, -0.351759}, {-1.71643, -3.77342, 1.87396, 2.40825, 0.953172, 2.40825, -0.071317, -1.44928, -3.6617, -0.620505, 4.26953, -0.620505}, {-3.52345, -3.52345, -3.52345, 3.52345, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345}, {-1.16853, 4.05757, 2.41902, -2.70338, -1.07129, -2.70173, 3.36405, 1.3331, -0.22682, 0.507865, -4.31938, 0.509529}, {0.235286, 2.46776, -2.45659, -1.58499, 1.09747, 2.26228, -1.89674, -2.81329, -0.210235, 3.24644, -0.75193, 0.40455}, {1.72714, 0.683827, -1.72773, -2.24537, -3.98415, -1.34153, 0.964303, -1.03975, 2.62699, -0.446071, 4.34007, 0.442278}, {-7.18233, -0.137487, -7.18233, 1.86445, 1.86498, 5.45483, 3.52295, -3.52295, 3.52295, 1.79493, 1.79545, -1.79545}, {0, -8.88178e-16, -2.4308, -3.22687, 1.27702, -0.160385, -0.0279753, -4.5035, 1.80584, 3.25484, 3.22647, 0.785343}, {3.45037, 1.36731, 3.44826, -3.89524, 2.97704, -0.306029, 0, 0, -3.58881, 0.444879, -4.34434, 0.446582}, {3.24278, -1.28505, 1.07917, 0, 0, -2.6315, -3.21463, -3.24675, -0.442405, -0.0281511, 4.53179, 1.99473}, {1.7269, 0.683416, -1.72787, -1.27936, -5.02087, 1.28648, 3.27466, 5.8105, 1.9565, -3.7222, -1.47305, -1.5151}, {-5.23372, -4, 5.23939, -0.00566839, 4, -2.28255e-11, 5.23939, 0, 0, 0, 0, -5.23939}, {0.0281511, 4.53179, 2.33833, 0, 0, -2.884, 3.21463, -3.24675, 0.327026, -3.24278, -1.28505, 0.218644}, {-3.52345, -3.52345, 3.52345, -3.52345, 3.52345, -3.52345, 3.52395, 3.52295, 3.52295, 3.52295, -3.52295, -3.52295}, {1.3657, 3.45494, 3.45053, -4.33924, 5.691, 0.444357, 2.97354, -3.89986, -3.89489, 0, -5.24608, 0}, {-1.06097, 2.95229, -1.06649, 4.44047, 0.792573, -0.800037, -2.21214, -0.888535, 3.02699, -1.16736, -2.85632, -1.16047}, {4, 4, -4, -3.1649, -3.16386, -4.15492, 0, -7.04589, 0, -0.835098, 6.20975, 8.15492}, {-3.23839, -0.578016, 0.58346, 0.0195373, 3.14514, -1.26116, 3.23532, 0.0837745, 2.04552, -0.0164672, -2.6509, -1.36782}, {-3.59038, 4.44089e-16, 0, 4, 4, -4, -0.834843, -0.83804, 8.15243, 0.425226, -3.16196, -4.15243}, {-3.99679, -4.00028, -4.00272, 0, 3.59038, 0, 0.834427, 0.835156, 8.15548, 3.16236, -0.425261, -4.15276}, {-0.618598, -0.619625, 2.97076, -2.5319, -2.52969, -2.52969, -0.377606, 3.21154, -0.378844, 3.52811, -0.062223, -0.062223}, {-6.21002, 0.835098, 8.15492, 3.164, 3.1649, -4.15492, 7.04488, 0, 0, -3.99886, -4, -4}, {-2.96943, -3.89447, -0.304082, 0, 0, -3.59038, -1.36934, 3.45016, 3.45016, 4.33877, 0.444309, 0.444309}, {-4.44089e-16, 3.59038, 0, 0.834427, 0.835156, -8.15548, 3.16236, -0.425261, 4.15276, -3.99679, -4.00028, 4.00272}, {4.15492, 0.425481, -3.1649, 0, -3.59038, 0, 4, 4, 4, -8.15492, -0.835098, -0.835098}, {0.444309, -0.444309, -4.33877, -3.89447, 0.304082, 2.96943, 3.45016, -3.45016, 1.36934, 0, 3.59038, 0}, {-4.44089e-16, 7.0469, 0, -3.04603, -3.0469, -4, 7.04488, 0, 0, -3.99886, -4, 4}, {-6.34716e-16, 0, 4.03735, -3.2348, 3.2348, 1.14797, 3.2348, 1.28032, -2.18823, -4.40962e-12, -4.51512, -2.99709}, {-1.3657, -3.45053, -3.44934, 4.33924, -0.444357, -0.44815, -2.97354, 3.89489, 0.307102, 0, 0, 3.59038}, {-4, 4, -4, 0, 0, 7.0469, 0.835098, -8.15492, -6.2118, 3.1649, 4.15492, 3.1649}, {1.22258, -2.9332, -2.86482e-12, -0.434061, 0, 3.2348, 1.13877, 2.9332, 2.86495e-12, -1.92728, 0, -3.2348}, {0.619868, 0, -4.61952, 1.07793, -2.9332, 1.07793, 1.00404, 2.9332, 1.00404, -2.70184, 0, 2.53754}, {8.15492, -0.835098, -6.2118, -4, 4, -4, -4.15492, -3.1649, 3.1649, 0, 0, 7.0469}, {-1.77636e-15, 0, 7.0469, -4, -4, -4, -3.0469, 4, -3.0469, 7.0469, 0, 0}, {3.89735, -2.97221, -3.89314, -0.447948, 4.33729, 5.68119, 0, 0, -5.23939, -3.4494, -1.36509, 3.45133}, {0.300503, 3.2348, -3.2348, -3.50419, 0, 0, 0.773493, -3.22084, -1.27452, 2.43019, -0.0139624, 4.50932}, {-5.23939, 4, -5.23939, 5.23939, 0, 0, 0, 0, 5.23939, -2.28255e-11, -4, -2.28255e-11}, {5.23939, 0, -1.75044e-16, -5.24506, 4, 5.23939, 0, 0, -5.23939, 0.00566839, -4, 2.28255e-11}, {3.95255, -0.362167, 0.362483, -0.482349, -3.10803, -0.479633, -1.12077, 1.12077, 2.46863, -2.34943, 2.34943, -2.35148}, {1.27685, 3.22605, 0.364333, -1.43581, -3.62766, 3.62766, -4.79345, -0.703234, 0.703234, 4.95241, 1.10484, -4.69522}, {-3.45053, 3.45053, 1.3657, -0.444357, 0.444357, -4.33924, 3.89489, -0.304504, 2.97354, 0, -3.59038, 0}, {-1.03322, 0, 2.9332, -2.44657, -2.9332, -2.9332, -0.388139, 2.9332, 0, 3.86792, 0, 0}, {-2.86482e-12, -2.9332, 2.09032, -3.2348, 0, -0.999254, 2.86466e-12, 2.9332, 1.94703, 3.2348, 0, -3.03809}, {3.99728, -3.99972, -4.00321, -8.14937, 0.83453, 0.841653, 4.15209, -0.425192, 3.16156, 0, 3.59038, 0}, {-3.65719, -3.66039, -3.65719, -1.79386, 1.79496, 1.79652, 3.65719, 0.0700075, 3.65719, 1.79386, 1.79543, -1.79652}, {0.32313, 3.2444, -3.2106, 3.54154, -2.30319, 5.58401, -2.14916, 1.30205, 3.28335, -1.71551, -2.24325, -5.65675}, {-3.89489, 2.97354, -2.82238, 0, 0, 4.03735, 0.444357, -4.33924, -0.86478, 3.45053, 1.3657, -0.350185}, {1.84375, -4.52327, -0.014292, 0.315792, 3.2348, -3.2348, -3.14489, 0, 0, 0.985347, 1.28847, 3.24909}, {-4.33924, -0.444357, -5.6776, 0, 0, 5.23939, 1.3657, -3.45053, -3.45246, 2.97354, 3.89489, 3.89067}, {5.23939, 0, 4.44089e-16, -3.45053, 3.45053, 1.3657, -5.68374, 0.444357, -4.33924, 3.89489, -3.89489, 2.97354}, {7.0469, 8.88178e-16, 0, 3.16371, 4.15492, -3.1649, -6.20947, -8.15492, -0.835098, -4.00114, 4, 4}, {-0.782485, -3.2348, -1.28032, 2.60358, 0, 0, -0.410568, 3.2348, -3.2348, -1.41052, 3.55036e-12, 4.51512}, {-4, 4, -4, -4.15492, 0.425481, 3.1649, 0, -3.59038, 0, 8.15492, -0.835098, 0.835098}, {-1.75292, -4.51512, 4.40936e-12, -1.18742, 1.28032, -3.2348, 0.578996, 3.2348, 3.2348, 2.36134, 0, 0}, {-4, -4, -4, -6.2118, 8.15492, 0.835098, 3.1649, -4.15492, 3.1649, 7.0469, 0, 0}, {0.304504, -2.97354, 3.89489, -3.45053, -1.3657, -3.45053, -0.444357, 4.33924, -0.444357, 3.59038, 0, 0}, {-0.968585, 2.9332, 1.64782, -3.80236, -2.9332, 0.915743, 1.28259, 0, -3.64114, 3.48835, 0, 1.07758}, {8.15492, 0.835098, -3.7826, -4, -4, 0.45685, 0, 0, 5.36117, -4.15492, 3.1649, -2.03542}, {-4, 4, -4, 0, -7.0469, 0, 7.0469, 0, 0, -3.0469, 3.0469, 4}, {-2.33946, 1.78605, 2.34209, 3.03792, -2.3193, 2.20139, -2.35172, -2.20459, -2.89092, 1.65325, 2.73783, -1.65256}, {2.60358, 0, 3.0632e-16, -1.03055, -1.28032, -3.2348, 0.410568, -3.2348, 3.2348, -1.98359, 4.51512, -4.40967e-12}, {-3.59038, 1.77636e-15, -1.11022e-16, 4, -4, 4, 0.425226, -4.15243, -3.16196, -0.834843, 8.15243, -0.83804}, {0, 0, -5.23939, -4, 1.54883e-11, -0.00566839, 4, -5.23123, 5.24506, 0, 5.23123, 0}, {-1.62732e-11, 1.54703e-11, 4, 5.23939, 0, 0, 0, -5.23939, 0, -5.23939, 5.23939, -4}, {4.72393, 2.32297, -6.20162, -2.81181, -4.23508, -5.55986, 1.34415, -1.34415, 7.48662, -3.25627, 3.25627, 4.27486}, {-3.1649, -4.15492, -3.16386, -0.835098, 8.15492, 6.20975, 4, -4, 4, 0, 0, -7.04589}, {2.10128, 3.1649, 4.15492, 3.73608, 0.835098, -8.15492, -0.419151, -4, 4, -5.41822, 0, 0}, {0, 0, -7.0469, 7.0469, 0, 0, -4.00114, 4, 4, -3.04575, -4, 3.0469}, {-3.89511, 3.89452, 2.96992, -5.24608, 0, 0, 5.68769, -0.444099, -4.33672, 3.45349, -3.45042, 1.3668}, {-7.0469, 0, 0, 4.00114, 4, 4, 3.04575, -4, 3.0469, 0, 0, -7.0469}, {-5.24608, 0, 0, 5.24608, -5.24018, 4, 2.32367e-11, -0.0025524, -4, 0, 5.24273, 0}, {4.44089e-16, 4.44089e-16, 4.03735, -4.51512, 4.40818e-12, -1.39475, 3.2348, 3.2348, -1.306, 1.28032, -3.2348, -1.33659}, {6.38334, 0.936482, -0.936482, -5.90226, 2.17282, 1.41756, -3.46093, -0.129456, -3.46093, 2.97985, -2.97985, 2.97985}, {-0.252976, 0.252976, -3.84336, 0.368915, 3.22147, 0.368915, -2.40103, -1.18935, 1.18935, 2.28509, -2.28509, 2.28509}, {-1.44735, 2.54109, 0.82519, -0.346604, -3.63529, 3.61884, -1.58915, 0.412839, -3.42177, 3.3831, 0.681367, -1.02226}, {-2.32365e-11, 0.0025524, 4, -5.24608, 0, 0, 0, 5.24273, 0, 5.24608, -5.24528, -4}, {-3.59357e-12, 3.68038, 1.41455, 2.62736e-12, -2.69097, 1.9177, -3.2348, 0.574024, -0.993189, 3.2348, -1.56344, -2.33906}, {2.74148, 0.0555531, 2.80173, -2.9202, -2.12061, -0.341431, -0.0977885, 3.03978, -0.0364189, 0.27651, -0.974727, -2.42388}, {4.00321, 3.99728, 3.99972, 0, 0, -3.59038, -0.841653, -8.14937, -0.83453, -3.16156, 4.15209, 0.425192}, {0, 8.88178e-16, -7.0469, 0, 7.04488, 0, -4, -3.99886, 4, 4, -3.04603, 3.0469}, {-4.40759e-12, 4.51512, -3.21766, 0, 0, 4.03735, -3.2348, -1.28032, 0.328292, 3.2348, -3.2348, -1.14798}, {-3.2348, -3.2348, 1.306, 4.40977e-12, 4.51512, -3.21766, 0, 0, 4.03735, 3.2348, -1.28032, -2.12568}, {1.28032, 0.265417, 3.2348, -4.51512, 1.06793, -3.90061e-12, 3.2348, 1.75796, -3.2348, 0, -3.09131, 0}, {-2.85306, -1.28668, -1.28504, 3.1184, -0.694894, -0.694008, 0.0152986, 3.82424, -1.42003, -0.280638, -1.84266, 3.39908}, {3.0469, 4, -3.0469, -7.0469, 0, 0, 4, -4, -4, 0, 0, 7.0469}, {1.29201, -3.25531, 0.810704, 0, 0, -2.6315, -4.51512, -3.75807e-12, 1.37723, 3.22311, 3.25531, 0.443571}, {-3.66502, 2.14914, 1.43616, 0.752328, 1.90198, -1.90298, 4.02391, -1.24183, 1.24643, -1.11122, -2.8093, -0.779603}, {8.15492, -3.3488, 0.835098, -4.15492, -1.54688, 3.1649, 0, 4.85752, 0, -4, 0.0381551, -4}, {-3.45053, 1.3657, -3.45053, 3.59038, 0, 0, 0.304504, 2.97354, 3.89489, -0.444357, -4.33924, -0.444357}, {-4, 3.0469, -3.0469, 0, -7.0469, 0, 4, 4, -4, 0, 0, 7.0469}, {-10.7068, 3.65991, -3.65991, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, 3.65991, -3.65991, 3.65991}, {0, -3.59038, 4.44089e-16, 3.1649, 0.425481, 4.15492, 0.835098, -0.835098, -8.15492, -4, 4, 4}, {-1.94171, 5.28363, -1.94171, 2.66708, -5.57073, -2.5723, 2.43635, -0.964293, 2.43635, -3.16172, 1.25139, 2.07766}, {0.099584, -1.28032, 3.2348, -1.88193, 4.51512, 4.40977e-12, 2.36134, 0, 0, -0.578997, -3.2348, -3.2348}, {-6.2118, -0.835098, -8.15492, 3.1649, -3.1649, 4.15492, 7.0469, 0, 0, -4, 4, 4}, {0.75324, 1.90144, -1.90334, 5.34316, -3.13319, -2.09374, -1.32234, 1.89318, 3.34138, -4.77406, -0.661432, 0.655698}, {4.44089e-16, 7.04488, 0, -4.15492, 3.164, -3.1649, 8.15492, -6.21002, -0.835098, -4, -3.99886, 4}, {-2.97354, -3.89986, -3.89489, 4.33924, 5.691, 0.444357, -1.3657, 3.45494, 3.45053, 0, -5.24608, 0}, {0, 0, -5.23939, 4, 5.24608, 5.23939, -4, -1.55241e-11, -1.5915e-11, 0, -5.24608, 0}, {-0.444357, 5.68374, 4.33924, 3.89489, -3.89489, -2.97354, 0, -5.23939, 0, -3.45053, 3.45053, -1.3657}, {3.52345, -3.52345, -3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345, -3.52345}, {3.59038, 0, 0, 0.304504, -3.89489, -2.97354, -0.444357, 0.444357, 4.33924, -3.45053, 3.45053, -1.3657}, {5.23123, -8.88178e-16, 0, -5.23123, -5.23939, -4, -1.6327e-11, -1.54706e-11, 4, 0, 5.23939, 0}, {-1.36374, -3.44772, 3.44954, -2.97575, 3.89171, -0.30733, 4.3395, -0.443995, 0.448176, 0, 0, -3.59038}, {-3.16371, 4.15492, -3.1649, 4.00114, 4, 4, -7.0469, 0, 0, 6.20947, -8.15492, -0.835098}, {-3.52395, -3.52295, -3.52295, -3.52295, 3.52295, 3.52295, 3.52295, -3.52295, 3.52395, 3.52395, 3.52295, -3.52395}, {4, -4, -4.00114, -8.15492, 0.835098, -6.20947, 0, 0, 7.0469, 4.15492, 3.1649, 3.16371}, {-0.425481, 4.15492, 3.1649, 0.835098, -8.15492, 0.835098, -4, 4, -4, 3.59038, 0, 0}, {-1.79519, 1.79519, -1.79519, -1.79519, -1.79519, 1.79519, -0.0700075, -3.65719, -3.65719, 3.66039, 3.65719, 3.65719}, {4, 4, -4, 0, 0, 7.0469, -7.0469, 0, 0, 3.0469, -4, -3.0469}, {1.16094, -1.15703, 4.97097, -1.66567, -3.57722, 1.41703, -2.89698, 2.8944, -1.14655, 3.40171, 1.83985, -5.24145}, {-2.7042, -1.06842, -2.70002, 1.70166, -5.90879, -3.52267, 2.19866, 5.37974, 2.18568, -1.19612, 1.59748, 4.03701}, {4.33729, -5.67235, 0.447948, -1.36509, -3.44596, 3.4494, 0, 5.23123, 0, -2.97221, 3.88708, -3.89735}, {3.2348, -3.2348, -1.14797, 0, 0, 4.03735, 1.28032, 3.2348, -1.49462, -4.51512, -4.40977e-12, -1.39475}, {4, 4, 4, -0.835098, -0.835098, -8.15492, 0, -3.59038, 0, -3.1649, 0.425481, 4.15492}, {-3.1649, -3.1649, 4.15492, -7.0469, 0, 0, 4, 4, 4, 6.2118, -0.835098, -8.15492}, {0.724826, 0.724826, -6.59499, -3.21143, -3.21143, -3.21143, 3.7299, 0.139517, 3.7299, -1.24329, 2.34709, 6.07653}, {2.48661, 2.48661, 9.80643, -3.21143, -3.21143, -3.21143, -1.7154, 5.33149, 5.33149, 2.44023, -4.60667, -11.9265}, {-4.95125, 1.10332, 1.10192, -1.44818, -1.58249, 3.65892, 0.833328, -2.10815, -2.10546, 5.5661, 2.58731, -2.65538}, {0.836183, -2.10682, -2.10682, 4.11656, 1.00419, 1.00419, -1.14088, 2.87451, -0.715871, -3.81187, -1.77188, 1.8185}, {0.343882, -3.2462, -1.28483, 0.297233, 0.297493, 4.63286, 2.13498, 2.13685, 0.845752, -2.7761, 0.811861, -4.19379}, {5.55112e-17, 5.23939, 8.88178e-16, -3.44772, -3.45309, -1.36374, 3.89171, 3.89778, -2.97575, -0.443995, -5.68407, 4.3395}, {3.58725, -4.44089e-16, 0, -3.44752, -3.45053, -1.3657, -0.443969, -0.444357, 4.33924, 0.304238, 3.89489, -2.97354}, {3.65991, -3.65991, -3.65991, 3.52345, 3.52345, -3.52345, -3.52345, -3.52345, -3.52345, -3.65991, 3.65991, 10.7068}, {3.1649, -4.15492, -3.1649, 0, 0, -7.0469, -4, -4, 4, 0.835098, 8.15492, 6.2118}, {-4, -4, 4, 0.835098, 8.15492, -0.835098, 3.59038, 0, 0, -0.425481, -4.15492, -3.1649}, {-1.3476, -0.0112467, -3.55949, 1.85019, -3.24836, -1.05487, 1.92324, 3.24442, -0.189939, -2.42583, 0.0151799, 4.80429}, {1.17675, 3.24909, 1.28847, -0.315792, -3.2348, 3.2348, -3.14489, 0, 0, 2.28393, -0.014292, -4.52327}, {8.15492, -0.835098, -0.835098, -4, 4, 4, 0, 0, -3.59038, -4.15492, -3.1649, 0.425481}, {-4.15492, -3.1649, -3.1649, -4, 4, 4, 0, -7.0469, 0, 8.15492, 6.2118, -0.835098}, {0.137487, 7.18233, 7.18233, -1.79519, 1.79519, -1.79519, 3.52295, -3.52295, -3.52295, -1.86524, -5.45458, -1.86419}, {3.52295, -3.52295, -3.52295, -3.66043, -3.65939, -3.65939, -3.52345, -3.52345, 3.52345, 3.66094, 10.7058, 3.65888}, {1.67988, -1.68212, -5.18466, -2.30896, 2.30807, 0.915293, -1.39444, -3.85015, -1.52682, 2.02352, 3.2242, 5.7962}, {3.4516, -3.45027, -1.36825, -3.89922, 3.89484, -2.97306, -5.24608, 0, 0, 5.6937, -0.444568, 4.3413}, {1.94453e-16, 2.70417, 0, 3.25531, -0.177688, 3.22311, -3.25531, -0.557762, 1.29201, 3.62091e-12, -1.96872, -4.51512}, {3.09726e-12, 1.01994, -3.86266, -3.25531, -0.69454, 0.97832, 3.25531, -2.18133, -1.3721, -3.41346e-12, 1.85593, 4.25643}, {2.90521, -1.78203, -2.9082, 2.41571, 1.84427, 2.82665, -2.85063, 1.82369, -2.38912, -2.47029, -1.88594, 2.47066}, {-5.23939, 0, -8.88178e-16, 0, 0, 5.24273, 2.28278e-11, -4, -0.0025524, 5.23939, 4, -5.24018}, {-3.52295, 3.52295, 3.52295, 1.79545, 1.79493, -1.79545, 7.18233, -7.18233, 0.137487, -5.45483, 1.86445, -1.86498}, {-3.52295, 3.52295, 3.52295, -3.52395, -3.52295, -3.52295, -3.65939, 3.65939, -3.66043, 10.7063, -3.65939, 3.66043}, {-0.835098, 0.835098, 8.15492, 0, 3.59038, 0, 4, -4, -4, -3.1649, -0.425481, -4.15492}, {-7.0469, 5.55112e-16, 0, 4, -4, -4, -3.1649, 3.1649, -4.15492, 6.2118, 0.835098, 8.15492}, {0.662971, 0.664005, -4.25288, 1.65703, 1.65961, 0.655439, -2.91351, 2.32133, -1.15244, 0.59351, -4.64495, 4.74988}, {1.19438, -3.49493, 0, -2.76951, 1.19435, 0, 1.94164, -0.567827, 2.9332, -0.366511, 2.8684, -2.9332}, {2.36134, 1.0718e-17, 0, 0.671422, -3.2348, 3.2348, -0.342675, 3.2348, 1.28032, -2.69009, 3.55093e-12, -4.51512}, {-1.10548, 3.2348, 0, -1.25586, -3.2348, 0, 0.613756, 2.30645e-12, -2.9332, 1.74759, -2.30645e-12, 2.9332}, {3.2348, 0.120997, 3.2348, 0, -3.09131, 0, -3.2348, -0.551371, 1.28032, 3.95817e-12, 3.52168, -4.51512}, {-3.2348, 0.76173, -0.403199, 2.15323e-12, -1.17552, -2.45621, 3.2348, 2.34907, 0.378214, -2.17514e-12, -1.93527, 2.4812}, {-3.53969, 3.53969, 2.69627, -1.11299, 1.11299, -6.1991, 5.13509, 1.9118, -3.91153, -0.482412, -6.56449, 7.41436}, {4.72983, -3.60283, 2.31706, -1.62186, -5.81149, 1.62186, -3.59839, 2.74098, 3.59839, 0.490411, 6.67334, -7.53731}, {-4, 4, -4, 4, -4, -3.0469, 0, 7.0469, 0, 0, -7.0469, 7.0469}, {0, 0, 7.0469, 4, -3.0469, -4, -4, -4, 4, 0, 7.0469, -7.0469}, {1.26315, 3.1826, -0.407781, -4.48373, 0.0790768, 0.0790768, -1.01464, -2.55645, -2.55645, 4.23522, -0.705229, 2.88515}, {-1.01079, -2.55709, -2.55383, 1.69808, -0.95029, 4.29031, 5.49464, 2.47799, 2.47483, -6.18193, 1.02939, -4.21131}, {-1.79519, -1.79519, 1.79519, -3.65991, 3.65991, -3.65991, 1.79519, 1.79519, 1.79519, 3.65991, -3.65991, 0.0695263}, {-1.79519, -1.79519, 1.79519, 5.4551, -1.86472, 1.86472, 3.52345, -3.52345, -3.52345, -7.18336, 7.18336, -0.13646}, {0, -4.44089e-16, 3.59038, -8.15492, -0.835098, 0.835098, 4, 4, -4, 4.15492, -3.1649, -0.425481}, {4.15492, -3.1649, 3.1649, 4, 4, -4, 0, -7.0469, 0, -8.15492, 6.2118, 0.835098}, {4.18211, -0.841369, 0.841369, 1.63378, -1.11155, -4.12784, -0.96395, -2.43548, 2.43548, -4.85193, 4.3884, 0.850991}, {-2.9332, -0.654372, 2.78087, 0, 0.366146, -3.84129, 0, 2.94119, 1.57488, 2.9332, -2.65297, -0.514459}, {4.51512, -1.06793, 3.90044e-12, 0, -3.09131, 0, -1.28032, 0.871067, 3.2348, -3.2348, 3.28817, -3.2348}, {0, -0.430374, 4.51512, -2.9332, -0.109716, -2.9332, 0, 3.52168, -4.51512, 2.9332, -2.98159, 2.9332}, {4.19026, 0.820764, 0.814826, 1.21474, -3.06912, 2.16855, -0.936049, 2.36499, 2.36631, -4.46895, -0.116634, -5.34969}, {0.972372, 0.736781, -3.03724, -3.79781, 2.2903, -1.05943, 0.111338, -3.09792, 0.84769, 2.7141, 0.0708344, 3.24899}, {-2.55729, 1.01135, -2.55763, -2.08284, -1.24835, 3.15697, 1.89416, -5.27077, 1.90402, 2.74596, 5.50777, -2.50336}, {3.77679, -1.49465, 0.187718, 0.660093, 4.25334, 0.656376, -2.557, 1.01192, -2.55789, -1.87988, -3.77061, 1.7138}, {-5.23939, 0, -5.55112e-17, 3.4502, -1.36448, 3.45065, -3.90439, -2.97758, -3.8953, 5.69358, 4.34205, 0.444645}, {-4.44089e-16, 4.44089e-16, -3.59038, 3.4494, -1.36509, 3.45059, 0.447948, 4.33729, 0.444157, -3.89735, -2.97221, -0.304367}, {4.28053, 0.593056, -0.587914, -0.673906, 1.70372, -1.70733, 1.45255, -3.67222, -1.55938, -5.05918, 1.37545, 3.85462}, {0, 4.47576, 0.618208, 0, -4.47576, 1.81259, -2.9332, -2.90763, -0.707734, 2.9332, 2.90763, -1.72306}, {-1.27174, 3.21511, 1.36527, 0, 0, -2.4308, 4.51512, -3.70603e-12, -0.839751, -3.24338, -3.21511, 1.90528}, {0.947177, -0.947177, -4.14023, -3.0344, -2.20499, -1.201, 1.74832, -1.74832, 0.691975, 0.338905, 4.90048, 4.64925}, {1.90928, 0.579177, 2.90015, -2.97176, -1.29918, -0.341631, 1.26427, 3.63788, 0.209764, -0.201792, -2.91787, -2.76828}, {3.04112e-12, -1.63545, -4.51512, 0, -3.01876, 0, 3.2348, 2.35061, 1.28032, -3.2348, 2.3036, 3.2348}, {4.04958, 1.77038, 0.465536, -2.40427, -1.3066, 2.40427, -4.10736, 1.28953, -0.407754, 2.46205, -1.7533, -2.46205}, {0.835098, -0.835098, 8.15492, -4, 4, -4, 3.59038, 0, 0, -0.425481, -3.1649, -4.15492}, {3.1649, -3.1649, -4.15492, -4, 4, -4, 0, -7.0469, 0, 0.835098, 6.2118, 8.15492}, {-3.65991, 3.65991, 3.65991, 1.79519, 1.79519, -1.79519, 1.79519, -1.79519, 1.79519, 0.0695263, -3.65991, -3.65991}, {1.79519, -1.79519, 1.79519, 1.86472, -1.86472, -5.4551, -3.52345, -3.52345, -3.52345, -0.13646, 7.18336, 7.18336}, {3.0611, -1.07112, 2.10077e-12, -0.369018, 1.30083, 3.2348, 0.267075, 1.7536, -3.2348, -2.95915, -1.98331, -2.03061e-12}, {-1.28032, 0.716498, -3.2348, -3.2348, -0.619904, 3.2348, 0, -3.12276, 0, 4.51512, 3.02616, 3.09876e-12}, {-3.24675, 0.177221, -3.21463, 0, 2.70417, 0, -1.28505, -0.665307, 3.24278, 4.53179, -2.21609, -0.0281511}, {-1.03768, -0.786269, 3.24125, 3.76174, 0.864649, -0.0233676, 1.42117, -2.10543, -3.24363, -4.14523, 2.02705, 0.0257498}, {-3.65991, -3.65991, 3.65991, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345, 3.65991, 3.65991, -10.7068}, {-1.02588, -1.02588, -4.04576, 5.15074, -1.89616, -1.23707, -2.74863, 4.29827, 1.25677, -1.37623, -1.37623, 4.02606}, {4, -4, -4, -3.1649, -4.15492, 3.1649, 0, 0, 7.0469, -0.835098, 8.15492, -6.2118}, {4.27497, -6.68514, -1.95466, -0.750905, 7.33275, 1.46136, -3.95428, 3.55351, -2.7068, 0.430212, -4.20112, 3.20009}, {-0.675958, 1.70428, -1.70576, 3.47227, -0.944013, -2.64554, 0.813742, 1.53558, 2.05346, -3.61005, -2.29584, 2.29785}, {-2.9332, 0.268765, -0.269, 0, 1.01807, 2.57142, 0, -3.15223, -0.435397, 2.9332, 1.86539, -1.86702}, {2.9332, -2.86386e-12, 0.906086, 0, 3.2348, -2.30525, 0, -3.2348, -1.73209, -2.9332, 2.86386e-12, 3.13126}, {-1.28032, -3.2348, -0.365321, -3.2348, 3.2348, 1.14798, 0, 0, 4.03735, 4.51512, -4.40815e-12, -4.82}, {4.32811, 0.737725, -1.71304, -3.72649, -3.72649, 1.47492, -0.518804, -0.518804, 4.72046, -0.0828155, 3.50757, -4.48234}, {-5.23939, -5.55112e-17, 0, -3.90017, -3.8953, -2.97758, 3.45213, 3.45065, -1.36448, 5.68742, 0.444645, 4.34205}, {3.45053, 3.45053, -1.3657, 0, -3.59038, 0, 0.444357, 0.444357, 4.33924, -3.89489, -0.304504, -2.97354}, {0, 1.06747e-17, -2.884, -3.22311, 3.25531, -0.327888, -1.29201, -3.25531, 0.417097, 4.51512, 3.75787e-12, 2.79479}, {-0.0130226, -3.25531, 1.20877, -0.260244, 3.25531, 1.50608, 3.12118, 2.59785e-12, -0.952039, -2.84791, -2.3704e-12, -1.76282}, {0.578997, 3.2348, 3.2348, 2.36134, 0, 0, -0.250249, -3.2348, 1.28032, -2.69009, -3.55036e-12, -4.51512}, {-1.12419, -3.2348, -0.186522, 0.812252, -2.04448e-12, -2.60004, -1.39607, 3.2348, -0.0801962, 1.708, 2.2542e-12, 2.86675}, {-3.93279, 1.55848, -1.3088, 1.97526, -0.782753, -1.97415, -1.50913, 5.11867, 1.50188, 3.46666, -5.8944, 1.78108}, {-0.47019, -4.32902, 0.47019, 0.867473, 1.07771, 2.72291, 1.97453, -0.781507, -1.97453, -2.37181, 4.03281, -1.21857}, {-3.45037, 1.36731, 3.44843, 0, 0, -5.23939, 3.89524, 2.97704, -3.89946, -0.444879, -4.34434, 5.69042}, {-3.45053, 1.3657, 3.45053, 3.59038, 0, 0, -0.444357, -4.33924, 0.444357, 0.304504, 2.97354, -3.89489}, {2.40563, -3.3686, -2.16577, -4.01552, 0.313534, -3.06173, -1.35813, -0.303573, 2.96446, 2.96803, 3.35864, 2.26304}, {0.444309, 1.73608, 4.33877, 0, 4.85752, 0, 3.45016, -2.1866, -1.36934, -3.89447, -4.407, -2.96943}, {-1.77354, -2.8259, -5.08017, -1.99992, 2.80049, 1.80052, -0.192763, -1.93544, 1.91528, 3.96622, 1.96086, 1.36437}, {3.41957, -0.149544, 3.15791, -3.35877, 2.12868, 1.33307, 6.03338, 1.03375, -2.39461, -6.09418, -3.0129, -2.09638}, {1.36731, -2.16592, -3.45037, 0, 4.85752, 0, -4.34434, 1.78399, -0.444879, 2.97704, -4.4756, 3.89524}, {-2.95631, -0.302739, 1.37126, 3.02503, 0.309776, 3.95804, 2.1672, -3.36845, -2.40376, -2.23591, 3.36142, -2.92554}, {2.31112, 1.19654, -5.83206, -1.28659, 2.03806, 3.24669, -3.3095, 0.144731, -3.05627, 2.28498, -3.37933, 5.64163}, {-1.96264, -1.84718, 0.269133, -1.79514, 2.79017, 1.99109, 5.26848, -3.1772, 1.46969, -1.5107, 2.23422, -3.72992}, {-0.60788, 3.25394, -0.100754, 4.36982, -1.029, 0.544673, 0.0459483, -1.94609, 2.48692, -3.80789, -0.278843, -2.93084}, {-2.10446, -2.10356, 0.831802, -1.45971, -1.45589, -3.94218, -2.09284, 3.1452, -1.24369, 5.65702, 0.414251, 4.35407}, {3.27119, 4.85191, 0.362578, 0.814367, -4.35925, 0.134979, -0.753128, 2.3313, 2.35448, -3.33243, -2.82396, -2.85204}, {-3.50419, 0, -8.88178e-16, 2.14843, -3.22874, 1.27672, -2.43779, 0.014006, -4.52341, 3.79356, 3.21473, 3.24669}}
]
- + total size : 2.1e+02kB
+ + total size : 1.6e+02kB
]
- + total size : 2.1e+02kB
+ + total size : 1.6e+02kB
]
diff --git a/test/test_fem/test_integrate_triangle_3.verified b/test/test_fem/test_integrate_triangle_3.verified
index 9274a5bd8..1cf2e0e7f 100644
--- a/test/test_fem/test_integrate_triangle_3.verified
+++ b/test/test_fem/test_integrate_triangle_3.verified
@@ -1,146 +1,142 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 2
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 13
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
+ ]
(not_ghost:_triangle_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 16
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{3, 9, 6}, {0, 12, 7}, {2, 10, 5}, {1, 11, 4}, {7, 8, 9}, {6, 9, 8}, {6, 8, 10}, {7, 12, 8}, {5, 10, 8}, {4, 8, 12}, {4, 11, 8}, {5, 8, 11}, {0, 4, 12}, {3, 7, 9}, {1, 5, 11}, {2, 6, 10}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 13
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
+ ]
(not_ghost:_triangle_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 16
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{3, 9, 6}, {0, 12, 7}, {2, 10, 5}, {1, 11, 4}, {7, 8, 9}, {6, 9, 8}, {6, 8, 10}, {7, 12, 8}, {5, 10, 8}, {4, 8, 12}, {4, 11, 8}, {5, 8, 11}, {0, 4, 12}, {3, 7, 9}, {1, 5, 11}, {2, 6, 10}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 7
+ + nb vectors : 6
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 16
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{3, 9, 6}, {0, 12, 7}, {2, 10, 5}, {1, 11, 4}, {7, 8, 9}, {6, 9, 8}, {6, 8, 10}, {7, 12, 8}, {5, 10, 8}, {4, 8, 12}, {4, 11, 8}, {5, 8, 11}, {0, 4, 12}, {3, 7, 9}, {1, 5, 11}, {2, 6, 10}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 13
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}}
]
Vector<double> [
+ id : my_fem:jacobians:_triangle_3
+ size : 16
+ nb_component : 1
+ allocated size : 16
+ memory size : 0.12kB
+ values : {{0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_triangle_3
- + size : 1
- + nb_component : 2
- + allocated size : 2000
- + memory size : 31kB
- + values : {{0.333333, 0.333333}}
- ]
Vector<double> [
+ id : my_fem:shapes:_triangle_3
+ size : 16
+ nb_component : 3
+ allocated size : 16
+ memory size : 0.38kB
+ values : {{0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_triangle_3
+ size : 16
+ nb_component : 6
+ allocated size : 16
+ memory size : 0.75kB
+ values : {{-2, 2, 0, -4, 2, 2}, {-2, -2, 4, 0, -2, 2}, {2, 2, -4, 0, 2, -2}, {2, -2, 0, 4, -2, -2}, {-2, -2, 2, -2, 1.04929e-11, 4}, {2, 2, -4, 1.08926e-11, 2, -2}, {-2, 2, -2, -2, 4, -1.08926e-11}, {-2, 2, -1.04929e-11, -4, 2, 2}, {2, -2, 8.43547e-12, 4, -2, -2}, {2, -2, 2, 2, -4, 8.03579e-12}, {-2, -2, 4, -8.03579e-12, -2, 2}, {2, 2, -2, 2, -8.43547e-12, -4}, {-2, -2, 2, -2, 0, 4}, {-2, 2, -2, -2, 4, 0}, {2, -2, 2, 2, -4, 0}, {2, 2, -2, 2, 0, -4}}
]
- + total size : 1e+02kB
+ + total size : 72kB
]
- + total size : 1e+02kB
+ + total size : 72kB
]
diff --git a/test/test_fem/test_integrate_triangle_6.verified b/test/test_fem/test_integrate_triangle_6.verified
index 04bbfdea2..486013767 100644
--- a/test/test_fem/test_integrate_triangle_6.verified
+++ b/test/test_fem/test_integrate_triangle_6.verified
@@ -1,146 +1,142 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 2
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 41
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}, {0.125, 0.875}, {0.375, 0.875}, {0.125, 0.125}, {0.125, 0.375}, {0.875, 0.875}, {0.875, 0.625}, {0.875, 0.125}, {0.625, 0.125}, {0.25, 0.5}, {0.375, 0.625}, {0.125, 0.625}, {0.5, 0.75}, {0.625, 0.625}, {0.625, 0.875}, {0.375, 0.375}, {0.75, 0.5}, {0.5, 0.25}, {0.375, 0.125}, {0.625, 0.375}, {0.875, 0.375}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 8
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 4, 5}, {4, 1, 6}, {1, 7, 8}, {7, 2, 9}, {2, 10, 11}, {10, 3, 12}, {3, 13, 14}, {13, 0, 15}}
]
+ ]
(not_ghost:_triangle_6) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 16
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{3, 17, 10, 21, 22, 12}, {0, 20, 13, 23, 24, 15}, {2, 18, 7, 25, 26, 9}, {1, 19, 4, 27, 28, 6}, {13, 16, 17, 29, 30, 31}, {10, 17, 16, 22, 30, 32}, {10, 16, 18, 32, 33, 34}, {13, 20, 16, 24, 35, 29}, {7, 18, 16, 26, 33, 36}, {4, 16, 20, 37, 35, 38}, {4, 19, 16, 28, 39, 37}, {7, 16, 19, 36, 39, 40}, {0, 4, 20, 5, 38, 23}, {3, 13, 17, 14, 31, 21}, {1, 7, 19, 8, 40, 27}, {2, 10, 18, 11, 34, 25}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 41
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}, {0.125, 0.875}, {0.375, 0.875}, {0.125, 0.125}, {0.125, 0.375}, {0.875, 0.875}, {0.875, 0.625}, {0.875, 0.125}, {0.625, 0.125}, {0.25, 0.5}, {0.375, 0.625}, {0.125, 0.625}, {0.5, 0.75}, {0.625, 0.625}, {0.625, 0.875}, {0.375, 0.375}, {0.75, 0.5}, {0.5, 0.25}, {0.375, 0.125}, {0.625, 0.375}, {0.875, 0.375}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 8
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 4, 5}, {4, 1, 6}, {1, 7, 8}, {7, 2, 9}, {2, 10, 11}, {10, 3, 12}, {3, 13, 14}, {13, 0, 15}}
]
+ ]
(not_ghost:_triangle_6) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 16
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{3, 17, 10, 21, 22, 12}, {0, 20, 13, 23, 24, 15}, {2, 18, 7, 25, 26, 9}, {1, 19, 4, 27, 28, 6}, {13, 16, 17, 29, 30, 31}, {10, 17, 16, 22, 30, 32}, {10, 16, 18, 32, 33, 34}, {13, 20, 16, 24, 35, 29}, {7, 18, 16, 26, 33, 36}, {4, 16, 20, 37, 35, 38}, {4, 19, 16, 28, 39, 37}, {7, 16, 19, 36, 39, 40}, {0, 4, 20, 5, 38, 23}, {3, 13, 17, 14, 31, 21}, {1, 7, 19, 8, 40, 27}, {2, 10, 18, 11, 34, 25}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 7
+ + nb vectors : 6
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 8
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 4, 5}, {4, 1, 6}, {1, 7, 8}, {7, 2, 9}, {2, 10, 11}, {10, 3, 12}, {3, 13, 14}, {13, 0, 15}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 16
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{3, 17, 10, 21, 22, 12}, {0, 20, 13, 23, 24, 15}, {2, 18, 7, 25, 26, 9}, {1, 19, 4, 27, 28, 6}, {13, 16, 17, 29, 30, 31}, {10, 17, 16, 22, 30, 32}, {10, 16, 18, 32, 33, 34}, {13, 20, 16, 24, 35, 29}, {7, 18, 16, 26, 33, 36}, {4, 16, 20, 37, 35, 38}, {4, 19, 16, 28, 39, 37}, {7, 16, 19, 36, 39, 40}, {0, 4, 20, 5, 38, 23}, {3, 13, 17, 14, 31, 21}, {1, 7, 19, 8, 40, 27}, {2, 10, 18, 11, 34, 25}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 41
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}, {0.125, 0.875}, {0.375, 0.875}, {0.125, 0.125}, {0.125, 0.375}, {0.875, 0.875}, {0.875, 0.625}, {0.875, 0.125}, {0.625, 0.125}, {0.25, 0.5}, {0.375, 0.625}, {0.125, 0.625}, {0.5, 0.75}, {0.625, 0.625}, {0.625, 0.875}, {0.375, 0.375}, {0.75, 0.5}, {0.5, 0.25}, {0.375, 0.125}, {0.625, 0.375}, {0.875, 0.375}}
]
Vector<double> [
+ id : my_fem:jacobians:_triangle_6
+ size : 48
+ nb_component : 1
+ allocated size : 48
+ memory size : 0.38kB
+ values : {{0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_triangle_6
- + size : 3
- + nb_component : 2
- + allocated size : 2000
- + memory size : 31kB
- + values : {{0.166667, 0.166667}, {0.666667, 0.166667}, {0.166667, 0.666667}}
- ]
Vector<double> [
+ id : my_fem:shapes:_triangle_6
+ size : 48
+ nb_component : 6
+ allocated size : 48
+ memory size : 2.2kB
+ values : {{0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_triangle_6
+ size : 48
+ nb_component : 12
+ allocated size : 48
+ memory size : 4.5kB
+ values : {{-3.33333, 3.33333, 0, 1.33333, -0.666667, -0.666667, -1.33333, -9.33333, 1.33333, -1.33333, 4, 6.66667}, {0.666667, -0.666667, 2.96059e-15, -6.66667, -0.666667, -0.666667, -5.33333, 2.66667, 5.33333, 2.66667, -7.40149e-16, 2.66667}, {0.666667, -0.666667, 0, 1.33333, 3.33333, 3.33333, -1.33333, -1.33333, 1.33333, -9.33333, -4, 6.66667}, {-3.33333, -3.33333, -1.33333, 0, 0.666667, -0.666667, 9.33333, -1.33333, 1.33333, 1.33333, -6.66667, 4}, {0.666667, 0.666667, 6.66667, 0, 0.666667, -0.666667, -2.66667, -5.33333, -2.66667, 5.33333, -2.66667, 4.44089e-16}, {0.666667, 0.666667, -1.33333, 0, -3.33333, 3.33333, 1.33333, -1.33333, 9.33333, 1.33333, -6.66667, -4}, {3.33333, 3.33333, 1.33333, 0, -0.666667, 0.666667, -9.33333, 1.33333, -1.33333, -1.33333, 6.66667, -4}, {-0.666667, -0.666667, -6.66667, -2.96059e-15, -0.666667, 0.666667, 2.66667, 5.33333, 2.66667, -5.33333, 2.66667, 7.40149e-16}, {-0.666667, -0.666667, 1.33333, 0, 3.33333, -3.33333, -1.33333, 1.33333, -9.33333, -1.33333, 6.66667, 4}, {3.33333, -3.33333, 0, -1.33333, 0.666667, 0.666667, 1.33333, 9.33333, -1.33333, 1.33333, -4, -6.66667}, {-0.666667, 0.666667, 0, 6.66667, 0.666667, 0.666667, 5.33333, -2.66667, -5.33333, -2.66667, -4.44089e-16, -2.66667}, {-0.666667, 0.666667, 0, -1.33333, -3.33333, -3.33333, 1.33333, 1.33333, -1.33333, 9.33333, 4, -6.66667}, {-3.33333, -3.33333, -0.666667, 0.666667, -3.49779e-12, -1.33333, 4, -6.66667, 1.33333, 1.33333, -1.33333, 9.33333}, {0.666667, 0.666667, 3.33333, -3.33333, -3.49779e-12, -1.33333, -4, -6.66667, 1.33333, 9.33333, -1.33333, 1.33333}, {0.666667, 0.666667, -0.666667, 0.666667, 1.74912e-11, 6.66667, -6.99581e-12, -2.66667, 5.33333, -2.66667, -5.33333, -2.66667}, {3.33333, 3.33333, 1.33333, -3.63028e-12, -0.666667, 0.666667, -9.33333, 1.33333, -1.33333, -1.33333, 6.66667, -4}, {-0.666667, -0.666667, -6.66667, 1.81499e-11, -0.666667, 0.666667, 2.66667, 5.33333, 2.66667, -5.33333, 2.66667, -7.26041e-12}, {-0.666667, -0.666667, 1.33333, -3.63087e-12, 3.33333, -3.33333, -1.33333, 1.33333, -9.33333, -1.33333, 6.66667, 4}, {-3.33333, 3.33333, 0.666667, 0.666667, -1.33333, 3.63087e-12, -6.66667, -4, 1.33333, -1.33333, 9.33333, 1.33333}, {0.666667, -0.666667, -3.33333, -3.33333, -1.33333, 3.63087e-12, -6.66667, 4, 9.33333, -1.33333, 1.33333, 1.33333}, {0.666667, -0.666667, 0.666667, 0.666667, 6.66667, -1.81544e-11, -2.66667, 7.26108e-12, -2.66667, -5.33333, -2.66667, 5.33333}, {-3.33333, 3.33333, 3.49705e-12, 1.33333, -0.666667, -0.666667, -1.33333, -9.33333, 1.33333, -1.33333, 4, 6.66667}, {0.666667, -0.666667, -1.74868e-11, -6.66667, -0.666667, -0.666667, -5.33333, 2.66667, 5.33333, 2.66667, 6.99515e-12, 2.66667}, {0.666667, -0.666667, 3.49765e-12, 1.33333, 3.33333, 3.33333, -1.33333, -1.33333, 1.33333, -9.33333, -4, 6.66667}, {3.33333, -3.33333, -2.81197e-12, -1.33333, 0.666667, 0.666667, 1.33333, 9.33333, -1.33333, 1.33333, -4, -6.66667}, {-0.666667, 0.666667, 1.40554e-11, 6.66667, 0.666667, 0.666667, 5.33333, -2.66667, -5.33333, -2.66667, -5.62261e-12, -2.66667}, {-0.666667, 0.666667, -2.81197e-12, -1.33333, -3.33333, -3.33333, 1.33333, 1.33333, -1.33333, 9.33333, 4, -6.66667}, {3.33333, -3.33333, -0.666667, -0.666667, 1.33333, -2.67845e-12, 6.66667, 4, -1.33333, 1.33333, -9.33333, -1.33333}, {-0.666667, 0.666667, 3.33333, 3.33333, 1.33333, -2.67904e-12, 6.66667, -4, -9.33333, 1.33333, -1.33333, -1.33333}, {-0.666667, 0.666667, -0.666667, -0.666667, -6.66667, 1.33937e-11, 2.66667, -5.35683e-12, 2.66667, 5.33333, 2.66667, -5.33333}, {-3.33333, -3.33333, -1.33333, 2.67815e-12, 0.666667, -0.666667, 9.33333, -1.33333, 1.33333, 1.33333, -6.66667, 4}, {0.666667, 0.666667, 6.66667, -1.33952e-11, 0.666667, -0.666667, -2.66667, -5.33333, -2.66667, 5.33333, -2.66667, 5.35853e-12}, {0.666667, 0.666667, -1.33333, 2.67904e-12, -3.33333, 3.33333, 1.33333, -1.33333, 9.33333, 1.33333, -6.66667, -4}, {3.33333, 3.33333, 0.666667, -0.666667, 2.81182e-12, 1.33333, -4, 6.66667, -1.33333, -1.33333, 1.33333, -9.33333}, {-0.666667, -0.666667, -3.33333, 3.33333, 2.81182e-12, 1.33333, 4, 6.66667, -1.33333, -9.33333, 1.33333, -1.33333}, {-0.666667, -0.666667, 0.666667, -0.666667, -1.40584e-11, -6.66667, 5.62269e-12, 2.66667, -5.33333, 2.66667, 5.33333, 2.66667}, {-3.33333, -3.33333, -0.666667, 0.666667, 0, -1.33333, 4, -6.66667, 1.33333, 1.33333, -1.33333, 9.33333}, {0.666667, 0.666667, 3.33333, -3.33333, 0, -1.33333, -4, -6.66667, 1.33333, 9.33333, -1.33333, 1.33333}, {0.666667, 0.666667, -0.666667, 0.666667, 0, 6.66667, 6.66134e-16, -2.66667, 5.33333, -2.66667, -5.33333, -2.66667}, {-3.33333, 3.33333, 0.666667, 0.666667, -1.33333, 0, -6.66667, -4, 1.33333, -1.33333, 9.33333, 1.33333}, {0.666667, -0.666667, -3.33333, -3.33333, -1.33333, 0, -6.66667, 4, 9.33333, -1.33333, 1.33333, 1.33333}, {0.666667, -0.666667, 0.666667, 0.666667, 6.66667, 0, -2.66667, -6.66134e-16, -2.66667, -5.33333, -2.66667, 5.33333}, {3.33333, -3.33333, -0.666667, -0.666667, 1.33333, 0, 6.66667, 4, -1.33333, 1.33333, -9.33333, -1.33333}, {-0.666667, 0.666667, 3.33333, 3.33333, 1.33333, 0, 6.66667, -4, -9.33333, 1.33333, -1.33333, -1.33333}, {-0.666667, 0.666667, -0.666667, -0.666667, -6.66667, 0, 2.66667, 6.66134e-16, 2.66667, 5.33333, 2.66667, -5.33333}, {3.33333, 3.33333, 0.666667, -0.666667, 0, 1.33333, -4, 6.66667, -1.33333, -1.33333, 1.33333, -9.33333}, {-0.666667, -0.666667, -3.33333, 3.33333, 0, 1.33333, 4, 6.66667, -1.33333, -9.33333, 1.33333, -1.33333}, {-0.666667, -0.666667, 0.666667, -0.666667, 0, -6.66667, -6.66134e-16, 2.66667, -5.33333, 2.66667, 5.33333, 2.66667}}
]
- + total size : 1.4e+02kB
+ + total size : 1.1e+02kB
]
- + total size : 1.4e+02kB
+ + total size : 1.1e+02kB
]
diff --git a/test/test_fem/test_interpolate_hexahedron_8.verified b/test/test_fem/test_interpolate_hexahedron_8.verified
index 28a15b81e..3f89d9b79 100644
--- a/test/test_fem/test_interpolate_hexahedron_8.verified
+++ b/test/test_fem/test_interpolate_hexahedron_8.verified
@@ -1,172 +1,170 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 3
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 125
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.25, 0.75, 1}, {0.25, 0.5, 1}, {0.25, 0.25, 1}, {0.5, 0.75, 1}, {0.5, 0.5, 1}, {0.5, 0.25, 1}, {0.75, 0.75, 1}, {0.75, 0.5, 1}, {0.75, 0.25, 1}, {0.75, 1, 0.25}, {0.75, 1, 0.5}, {0.75, 1, 0.75}, {0.5, 1, 0.25}, {0.5, 1, 0.5}, {0.5, 1, 0.75}, {0.25, 1, 0.25}, {0.25, 1, 0.5}, {0.25, 1, 0.75}, {0.25, 0, 0.75}, {0.25, 0, 0.5}, {0.25, 0, 0.25}, {0.5, 0, 0.75}, {0.5, 0, 0.5}, {0.5, 0, 0.25}, {0.75, 0, 0.75}, {0.75, 0, 0.5}, {0.75, 0, 0.25}, {0.75, 0.75, 0}, {0.75, 0.5, 0}, {0.75, 0.25, 0}, {0.5, 0.75, 0}, {0.5, 0.5, 0}, {0.5, 0.25, 0}, {0.25, 0.75, 0}, {0.25, 0.5, 0}, {0.25, 0.25, 0}, {0, 0.75, 0.25}, {0, 0.5, 0.25}, {0, 0.25, 0.25}, {0, 0.75, 0.5}, {0, 0.5, 0.5}, {0, 0.25, 0.5}, {0, 0.75, 0.75}, {0, 0.5, 0.75}, {0, 0.25, 0.75}, {1, 0.75, 0.75}, {1, 0.75, 0.5}, {1, 0.75, 0.25}, {1, 0.5, 0.75}, {1, 0.5, 0.5}, {1, 0.5, 0.25}, {1, 0.25, 0.75}, {1, 0.25, 0.5}, {1, 0.25, 0.25}, {0.75, 0.75, 0.75}, {0.5, 0.75, 0.75}, {0.25, 0.75, 0.75}, {0.75, 0.75, 0.5}, {0.5, 0.75, 0.5}, {0.25, 0.75, 0.5}, {0.75, 0.75, 0.25}, {0.5, 0.75, 0.25}, {0.25, 0.75, 0.25}, {0.75, 0.5, 0.75}, {0.5, 0.5, 0.75}, {0.25, 0.5, 0.75}, {0.75, 0.5, 0.5}, {0.5, 0.5, 0.5}, {0.25, 0.5, 0.5}, {0.75, 0.5, 0.25}, {0.5, 0.5, 0.25}, {0.25, 0.5, 0.25}, {0.75, 0.25, 0.75}, {0.5, 0.25, 0.75}, {0.25, 0.25, 0.75}, {0.75, 0.25, 0.5}, {0.5, 0.25, 0.5}, {0.25, 0.25, 0.5}, {0.75, 0.25, 0.25}, {0.5, 0.25, 0.25}, {0.25, 0.25, 0.25}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
+ ]
(not_ghost:_quadrangle_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 96
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{6, 8, 44, 35}, {35, 44, 45, 36}, {36, 45, 46, 37}, {37, 46, 23, 4}, {8, 9, 47, 44}, {44, 47, 48, 45}, {45, 48, 49, 46}, {46, 49, 24, 23}, {9, 10, 50, 47}, {47, 50, 51, 48}, {48, 51, 52, 49}, {49, 52, 25, 24}, {10, 7, 38, 50}, {50, 38, 39, 51}, {51, 39, 40, 52}, {52, 40, 5, 25}, {3, 14, 53, 13}, {13, 53, 54, 12}, {12, 54, 55, 11}, {11, 55, 10, 7}, {14, 15, 56, 53}, {53, 56, 57, 54}, {54, 57, 58, 55}, {55, 58, 9, 10}, {15, 16, 59, 56}, {56, 59, 60, 57}, {57, 60, 61, 58}, {58, 61, 8, 9}, {16, 2, 17, 59}, {59, 17, 18, 60}, {60, 18, 19, 61}, {61, 19, 6, 8}, {4, 23, 62, 22}, {22, 62, 63, 21}, {21, 63, 64, 20}, {20, 64, 31, 0}, {23, 24, 65, 62}, {62, 65, 66, 63}, {63, 66, 67, 64}, {64, 67, 30, 31}, {24, 25, 68, 65}, {65, 68, 69, 66}, {66, 69, 70, 67}, {67, 70, 29, 30}, {25, 5, 26, 68}, {68, 26, 27, 69}, {69, 27, 28, 70}, {70, 28, 1, 29}, {3, 14, 71, 41}, {41, 71, 72, 42}, {42, 72, 73, 43}, {43, 73, 29, 1}, {14, 15, 74, 71}, {71, 74, 75, 72}, {72, 75, 76, 73}, {73, 76, 30, 29}, {15, 16, 77, 74}, {74, 77, 78, 75}, {75, 78, 79, 76}, {76, 79, 31, 30}, {16, 2, 32, 77}, {77, 32, 33, 78}, {78, 33, 34, 79}, {79, 34, 0, 31}, {2, 17, 80, 32}, {32, 80, 81, 33}, {33, 81, 82, 34}, {34, 82, 20, 0}, {17, 18, 83, 80}, {80, 83, 84, 81}, {81, 84, 85, 82}, {82, 85, 21, 20}, {18, 19, 86, 83}, {83, 86, 87, 84}, {84, 87, 88, 85}, {85, 88, 22, 21}, {19, 6, 35, 86}, {86, 35, 36, 87}, {87, 36, 37, 88}, {88, 37, 4, 22}, {7, 38, 89, 11}, {11, 89, 90, 12}, {12, 90, 91, 13}, {13, 91, 41, 3}, {38, 39, 92, 89}, {89, 92, 93, 90}, {90, 93, 94, 91}, {91, 94, 42, 41}, {39, 40, 95, 92}, {92, 95, 96, 93}, {93, 96, 97, 94}, {94, 97, 43, 42}, {40, 5, 26, 95}, {95, 26, 27, 96}, {96, 27, 28, 97}, {97, 28, 1, 43}}
]
+ ]
(not_ghost:_hexahedron_8) [
Vector<unsigned int> [
+ id : mesh:connectivities:_hexahedron_8
+ size : 64
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{89, 38, 7, 11, 98, 50, 10, 55}, {98, 50, 10, 55, 99, 47, 9, 58}, {99, 47, 9, 58, 100, 44, 8, 61}, {100, 44, 8, 61, 86, 35, 6, 19}, {90, 89, 11, 12, 101, 98, 55, 54}, {101, 98, 55, 54, 102, 99, 58, 57}, {102, 99, 58, 57, 103, 100, 61, 60}, {103, 100, 61, 60, 83, 86, 19, 18}, {91, 90, 12, 13, 104, 101, 54, 53}, {104, 101, 54, 53, 105, 102, 57, 56}, {105, 102, 57, 56, 106, 103, 60, 59}, {106, 103, 60, 59, 80, 83, 18, 17}, {41, 91, 13, 3, 71, 104, 53, 14}, {71, 104, 53, 14, 74, 105, 56, 15}, {74, 105, 56, 15, 77, 106, 59, 16}, {77, 106, 59, 16, 32, 80, 17, 2}, {92, 39, 38, 89, 107, 51, 50, 98}, {107, 51, 50, 98, 108, 48, 47, 99}, {108, 48, 47, 99, 109, 45, 44, 100}, {109, 45, 44, 100, 87, 36, 35, 86}, {93, 92, 89, 90, 110, 107, 98, 101}, {110, 107, 98, 101, 111, 108, 99, 102}, {111, 108, 99, 102, 112, 109, 100, 103}, {112, 109, 100, 103, 84, 87, 86, 83}, {94, 93, 90, 91, 113, 110, 101, 104}, {113, 110, 101, 104, 114, 111, 102, 105}, {114, 111, 102, 105, 115, 112, 103, 106}, {115, 112, 103, 106, 81, 84, 83, 80}, {42, 94, 91, 41, 72, 113, 104, 71}, {72, 113, 104, 71, 75, 114, 105, 74}, {75, 114, 105, 74, 78, 115, 106, 77}, {78, 115, 106, 77, 33, 81, 80, 32}, {95, 40, 39, 92, 116, 52, 51, 107}, {116, 52, 51, 107, 117, 49, 48, 108}, {117, 49, 48, 108, 118, 46, 45, 109}, {118, 46, 45, 109, 88, 37, 36, 87}, {96, 95, 92, 93, 119, 116, 107, 110}, {119, 116, 107, 110, 120, 117, 108, 111}, {120, 117, 108, 111, 121, 118, 109, 112}, {121, 118, 109, 112, 85, 88, 87, 84}, {97, 96, 93, 94, 122, 119, 110, 113}, {122, 119, 110, 113, 123, 120, 111, 114}, {123, 120, 111, 114, 124, 121, 112, 115}, {124, 121, 112, 115, 82, 85, 84, 81}, {43, 97, 94, 42, 73, 122, 113, 72}, {73, 122, 113, 72, 76, 123, 114, 75}, {76, 123, 114, 75, 79, 124, 115, 78}, {79, 124, 115, 78, 34, 82, 81, 33}, {26, 5, 40, 95, 68, 25, 52, 116}, {68, 25, 52, 116, 65, 24, 49, 117}, {65, 24, 49, 117, 62, 23, 46, 118}, {62, 23, 46, 118, 22, 4, 37, 88}, {27, 26, 95, 96, 69, 68, 116, 119}, {69, 68, 116, 119, 66, 65, 117, 120}, {66, 65, 117, 120, 63, 62, 118, 121}, {63, 62, 118, 121, 21, 22, 88, 85}, {28, 27, 96, 97, 70, 69, 119, 122}, {70, 69, 119, 122, 67, 66, 120, 123}, {67, 66, 120, 123, 64, 63, 121, 124}, {64, 63, 121, 124, 20, 21, 85, 82}, {1, 28, 97, 43, 29, 70, 122, 73}, {29, 70, 122, 73, 30, 67, 123, 76}, {30, 67, 123, 76, 31, 64, 124, 79}, {31, 64, 124, 79, 0, 20, 82, 34}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 125
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.25, 0.75, 1}, {0.25, 0.5, 1}, {0.25, 0.25, 1}, {0.5, 0.75, 1}, {0.5, 0.5, 1}, {0.5, 0.25, 1}, {0.75, 0.75, 1}, {0.75, 0.5, 1}, {0.75, 0.25, 1}, {0.75, 1, 0.25}, {0.75, 1, 0.5}, {0.75, 1, 0.75}, {0.5, 1, 0.25}, {0.5, 1, 0.5}, {0.5, 1, 0.75}, {0.25, 1, 0.25}, {0.25, 1, 0.5}, {0.25, 1, 0.75}, {0.25, 0, 0.75}, {0.25, 0, 0.5}, {0.25, 0, 0.25}, {0.5, 0, 0.75}, {0.5, 0, 0.5}, {0.5, 0, 0.25}, {0.75, 0, 0.75}, {0.75, 0, 0.5}, {0.75, 0, 0.25}, {0.75, 0.75, 0}, {0.75, 0.5, 0}, {0.75, 0.25, 0}, {0.5, 0.75, 0}, {0.5, 0.5, 0}, {0.5, 0.25, 0}, {0.25, 0.75, 0}, {0.25, 0.5, 0}, {0.25, 0.25, 0}, {0, 0.75, 0.25}, {0, 0.5, 0.25}, {0, 0.25, 0.25}, {0, 0.75, 0.5}, {0, 0.5, 0.5}, {0, 0.25, 0.5}, {0, 0.75, 0.75}, {0, 0.5, 0.75}, {0, 0.25, 0.75}, {1, 0.75, 0.75}, {1, 0.75, 0.5}, {1, 0.75, 0.25}, {1, 0.5, 0.75}, {1, 0.5, 0.5}, {1, 0.5, 0.25}, {1, 0.25, 0.75}, {1, 0.25, 0.5}, {1, 0.25, 0.25}, {0.75, 0.75, 0.75}, {0.5, 0.75, 0.75}, {0.25, 0.75, 0.75}, {0.75, 0.75, 0.5}, {0.5, 0.75, 0.5}, {0.25, 0.75, 0.5}, {0.75, 0.75, 0.25}, {0.5, 0.75, 0.25}, {0.25, 0.75, 0.25}, {0.75, 0.5, 0.75}, {0.5, 0.5, 0.75}, {0.25, 0.5, 0.75}, {0.75, 0.5, 0.5}, {0.5, 0.5, 0.5}, {0.25, 0.5, 0.5}, {0.75, 0.5, 0.25}, {0.5, 0.5, 0.25}, {0.25, 0.5, 0.25}, {0.75, 0.25, 0.75}, {0.5, 0.25, 0.75}, {0.25, 0.25, 0.75}, {0.75, 0.25, 0.5}, {0.5, 0.25, 0.5}, {0.25, 0.25, 0.5}, {0.75, 0.25, 0.25}, {0.5, 0.25, 0.25}, {0.25, 0.25, 0.25}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
+ ]
(not_ghost:_quadrangle_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 96
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{6, 8, 44, 35}, {35, 44, 45, 36}, {36, 45, 46, 37}, {37, 46, 23, 4}, {8, 9, 47, 44}, {44, 47, 48, 45}, {45, 48, 49, 46}, {46, 49, 24, 23}, {9, 10, 50, 47}, {47, 50, 51, 48}, {48, 51, 52, 49}, {49, 52, 25, 24}, {10, 7, 38, 50}, {50, 38, 39, 51}, {51, 39, 40, 52}, {52, 40, 5, 25}, {3, 14, 53, 13}, {13, 53, 54, 12}, {12, 54, 55, 11}, {11, 55, 10, 7}, {14, 15, 56, 53}, {53, 56, 57, 54}, {54, 57, 58, 55}, {55, 58, 9, 10}, {15, 16, 59, 56}, {56, 59, 60, 57}, {57, 60, 61, 58}, {58, 61, 8, 9}, {16, 2, 17, 59}, {59, 17, 18, 60}, {60, 18, 19, 61}, {61, 19, 6, 8}, {4, 23, 62, 22}, {22, 62, 63, 21}, {21, 63, 64, 20}, {20, 64, 31, 0}, {23, 24, 65, 62}, {62, 65, 66, 63}, {63, 66, 67, 64}, {64, 67, 30, 31}, {24, 25, 68, 65}, {65, 68, 69, 66}, {66, 69, 70, 67}, {67, 70, 29, 30}, {25, 5, 26, 68}, {68, 26, 27, 69}, {69, 27, 28, 70}, {70, 28, 1, 29}, {3, 14, 71, 41}, {41, 71, 72, 42}, {42, 72, 73, 43}, {43, 73, 29, 1}, {14, 15, 74, 71}, {71, 74, 75, 72}, {72, 75, 76, 73}, {73, 76, 30, 29}, {15, 16, 77, 74}, {74, 77, 78, 75}, {75, 78, 79, 76}, {76, 79, 31, 30}, {16, 2, 32, 77}, {77, 32, 33, 78}, {78, 33, 34, 79}, {79, 34, 0, 31}, {2, 17, 80, 32}, {32, 80, 81, 33}, {33, 81, 82, 34}, {34, 82, 20, 0}, {17, 18, 83, 80}, {80, 83, 84, 81}, {81, 84, 85, 82}, {82, 85, 21, 20}, {18, 19, 86, 83}, {83, 86, 87, 84}, {84, 87, 88, 85}, {85, 88, 22, 21}, {19, 6, 35, 86}, {86, 35, 36, 87}, {87, 36, 37, 88}, {88, 37, 4, 22}, {7, 38, 89, 11}, {11, 89, 90, 12}, {12, 90, 91, 13}, {13, 91, 41, 3}, {38, 39, 92, 89}, {89, 92, 93, 90}, {90, 93, 94, 91}, {91, 94, 42, 41}, {39, 40, 95, 92}, {92, 95, 96, 93}, {93, 96, 97, 94}, {94, 97, 43, 42}, {40, 5, 26, 95}, {95, 26, 27, 96}, {96, 27, 28, 97}, {97, 28, 1, 43}}
]
+ ]
(not_ghost:_hexahedron_8) [
Vector<unsigned int> [
+ id : mesh:connectivities:_hexahedron_8
+ size : 64
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{89, 38, 7, 11, 98, 50, 10, 55}, {98, 50, 10, 55, 99, 47, 9, 58}, {99, 47, 9, 58, 100, 44, 8, 61}, {100, 44, 8, 61, 86, 35, 6, 19}, {90, 89, 11, 12, 101, 98, 55, 54}, {101, 98, 55, 54, 102, 99, 58, 57}, {102, 99, 58, 57, 103, 100, 61, 60}, {103, 100, 61, 60, 83, 86, 19, 18}, {91, 90, 12, 13, 104, 101, 54, 53}, {104, 101, 54, 53, 105, 102, 57, 56}, {105, 102, 57, 56, 106, 103, 60, 59}, {106, 103, 60, 59, 80, 83, 18, 17}, {41, 91, 13, 3, 71, 104, 53, 14}, {71, 104, 53, 14, 74, 105, 56, 15}, {74, 105, 56, 15, 77, 106, 59, 16}, {77, 106, 59, 16, 32, 80, 17, 2}, {92, 39, 38, 89, 107, 51, 50, 98}, {107, 51, 50, 98, 108, 48, 47, 99}, {108, 48, 47, 99, 109, 45, 44, 100}, {109, 45, 44, 100, 87, 36, 35, 86}, {93, 92, 89, 90, 110, 107, 98, 101}, {110, 107, 98, 101, 111, 108, 99, 102}, {111, 108, 99, 102, 112, 109, 100, 103}, {112, 109, 100, 103, 84, 87, 86, 83}, {94, 93, 90, 91, 113, 110, 101, 104}, {113, 110, 101, 104, 114, 111, 102, 105}, {114, 111, 102, 105, 115, 112, 103, 106}, {115, 112, 103, 106, 81, 84, 83, 80}, {42, 94, 91, 41, 72, 113, 104, 71}, {72, 113, 104, 71, 75, 114, 105, 74}, {75, 114, 105, 74, 78, 115, 106, 77}, {78, 115, 106, 77, 33, 81, 80, 32}, {95, 40, 39, 92, 116, 52, 51, 107}, {116, 52, 51, 107, 117, 49, 48, 108}, {117, 49, 48, 108, 118, 46, 45, 109}, {118, 46, 45, 109, 88, 37, 36, 87}, {96, 95, 92, 93, 119, 116, 107, 110}, {119, 116, 107, 110, 120, 117, 108, 111}, {120, 117, 108, 111, 121, 118, 109, 112}, {121, 118, 109, 112, 85, 88, 87, 84}, {97, 96, 93, 94, 122, 119, 110, 113}, {122, 119, 110, 113, 123, 120, 111, 114}, {123, 120, 111, 114, 124, 121, 112, 115}, {124, 121, 112, 115, 82, 85, 84, 81}, {43, 97, 94, 42, 73, 122, 113, 72}, {73, 122, 113, 72, 76, 123, 114, 75}, {76, 123, 114, 75, 79, 124, 115, 78}, {79, 124, 115, 78, 34, 82, 81, 33}, {26, 5, 40, 95, 68, 25, 52, 116}, {68, 25, 52, 116, 65, 24, 49, 117}, {65, 24, 49, 117, 62, 23, 46, 118}, {62, 23, 46, 118, 22, 4, 37, 88}, {27, 26, 95, 96, 69, 68, 116, 119}, {69, 68, 116, 119, 66, 65, 117, 120}, {66, 65, 117, 120, 63, 62, 118, 121}, {63, 62, 118, 121, 21, 22, 88, 85}, {28, 27, 96, 97, 70, 69, 119, 122}, {70, 69, 119, 122, 67, 66, 120, 123}, {67, 66, 120, 123, 64, 63, 121, 124}, {64, 63, 121, 124, 20, 21, 85, 82}, {1, 28, 97, 43, 29, 70, 122, 73}, {29, 70, 122, 73, 30, 67, 123, 76}, {30, 67, 123, 76, 31, 64, 124, 79}, {31, 64, 124, 79, 0, 20, 82, 34}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 8
+ + nb vectors : 7
Vector<unsigned int> [
+ id : mesh:connectivities:_hexahedron_8
+ size : 64
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{89, 38, 7, 11, 98, 50, 10, 55}, {98, 50, 10, 55, 99, 47, 9, 58}, {99, 47, 9, 58, 100, 44, 8, 61}, {100, 44, 8, 61, 86, 35, 6, 19}, {90, 89, 11, 12, 101, 98, 55, 54}, {101, 98, 55, 54, 102, 99, 58, 57}, {102, 99, 58, 57, 103, 100, 61, 60}, {103, 100, 61, 60, 83, 86, 19, 18}, {91, 90, 12, 13, 104, 101, 54, 53}, {104, 101, 54, 53, 105, 102, 57, 56}, {105, 102, 57, 56, 106, 103, 60, 59}, {106, 103, 60, 59, 80, 83, 18, 17}, {41, 91, 13, 3, 71, 104, 53, 14}, {71, 104, 53, 14, 74, 105, 56, 15}, {74, 105, 56, 15, 77, 106, 59, 16}, {77, 106, 59, 16, 32, 80, 17, 2}, {92, 39, 38, 89, 107, 51, 50, 98}, {107, 51, 50, 98, 108, 48, 47, 99}, {108, 48, 47, 99, 109, 45, 44, 100}, {109, 45, 44, 100, 87, 36, 35, 86}, {93, 92, 89, 90, 110, 107, 98, 101}, {110, 107, 98, 101, 111, 108, 99, 102}, {111, 108, 99, 102, 112, 109, 100, 103}, {112, 109, 100, 103, 84, 87, 86, 83}, {94, 93, 90, 91, 113, 110, 101, 104}, {113, 110, 101, 104, 114, 111, 102, 105}, {114, 111, 102, 105, 115, 112, 103, 106}, {115, 112, 103, 106, 81, 84, 83, 80}, {42, 94, 91, 41, 72, 113, 104, 71}, {72, 113, 104, 71, 75, 114, 105, 74}, {75, 114, 105, 74, 78, 115, 106, 77}, {78, 115, 106, 77, 33, 81, 80, 32}, {95, 40, 39, 92, 116, 52, 51, 107}, {116, 52, 51, 107, 117, 49, 48, 108}, {117, 49, 48, 108, 118, 46, 45, 109}, {118, 46, 45, 109, 88, 37, 36, 87}, {96, 95, 92, 93, 119, 116, 107, 110}, {119, 116, 107, 110, 120, 117, 108, 111}, {120, 117, 108, 111, 121, 118, 109, 112}, {121, 118, 109, 112, 85, 88, 87, 84}, {97, 96, 93, 94, 122, 119, 110, 113}, {122, 119, 110, 113, 123, 120, 111, 114}, {123, 120, 111, 114, 124, 121, 112, 115}, {124, 121, 112, 115, 82, 85, 84, 81}, {43, 97, 94, 42, 73, 122, 113, 72}, {73, 122, 113, 72, 76, 123, 114, 75}, {76, 123, 114, 75, 79, 124, 115, 78}, {79, 124, 115, 78, 34, 82, 81, 33}, {26, 5, 40, 95, 68, 25, 52, 116}, {68, 25, 52, 116, 65, 24, 49, 117}, {65, 24, 49, 117, 62, 23, 46, 118}, {62, 23, 46, 118, 22, 4, 37, 88}, {27, 26, 95, 96, 69, 68, 116, 119}, {69, 68, 116, 119, 66, 65, 117, 120}, {66, 65, 117, 120, 63, 62, 118, 121}, {63, 62, 118, 121, 21, 22, 88, 85}, {28, 27, 96, 97, 70, 69, 119, 122}, {70, 69, 119, 122, 67, 66, 120, 123}, {67, 66, 120, 123, 64, 63, 121, 124}, {64, 63, 121, 124, 20, 21, 85, 82}, {1, 28, 97, 43, 29, 70, 122, 73}, {29, 70, 122, 73, 30, 67, 123, 76}, {30, 67, 123, 76, 31, 64, 124, 79}, {31, 64, 124, 79, 0, 20, 82, 34}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 96
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{6, 8, 44, 35}, {35, 44, 45, 36}, {36, 45, 46, 37}, {37, 46, 23, 4}, {8, 9, 47, 44}, {44, 47, 48, 45}, {45, 48, 49, 46}, {46, 49, 24, 23}, {9, 10, 50, 47}, {47, 50, 51, 48}, {48, 51, 52, 49}, {49, 52, 25, 24}, {10, 7, 38, 50}, {50, 38, 39, 51}, {51, 39, 40, 52}, {52, 40, 5, 25}, {3, 14, 53, 13}, {13, 53, 54, 12}, {12, 54, 55, 11}, {11, 55, 10, 7}, {14, 15, 56, 53}, {53, 56, 57, 54}, {54, 57, 58, 55}, {55, 58, 9, 10}, {15, 16, 59, 56}, {56, 59, 60, 57}, {57, 60, 61, 58}, {58, 61, 8, 9}, {16, 2, 17, 59}, {59, 17, 18, 60}, {60, 18, 19, 61}, {61, 19, 6, 8}, {4, 23, 62, 22}, {22, 62, 63, 21}, {21, 63, 64, 20}, {20, 64, 31, 0}, {23, 24, 65, 62}, {62, 65, 66, 63}, {63, 66, 67, 64}, {64, 67, 30, 31}, {24, 25, 68, 65}, {65, 68, 69, 66}, {66, 69, 70, 67}, {67, 70, 29, 30}, {25, 5, 26, 68}, {68, 26, 27, 69}, {69, 27, 28, 70}, {70, 28, 1, 29}, {3, 14, 71, 41}, {41, 71, 72, 42}, {42, 72, 73, 43}, {43, 73, 29, 1}, {14, 15, 74, 71}, {71, 74, 75, 72}, {72, 75, 76, 73}, {73, 76, 30, 29}, {15, 16, 77, 74}, {74, 77, 78, 75}, {75, 78, 79, 76}, {76, 79, 31, 30}, {16, 2, 32, 77}, {77, 32, 33, 78}, {78, 33, 34, 79}, {79, 34, 0, 31}, {2, 17, 80, 32}, {32, 80, 81, 33}, {33, 81, 82, 34}, {34, 82, 20, 0}, {17, 18, 83, 80}, {80, 83, 84, 81}, {81, 84, 85, 82}, {82, 85, 21, 20}, {18, 19, 86, 83}, {83, 86, 87, 84}, {84, 87, 88, 85}, {85, 88, 22, 21}, {19, 6, 35, 86}, {86, 35, 36, 87}, {87, 36, 37, 88}, {88, 37, 4, 22}, {7, 38, 89, 11}, {11, 89, 90, 12}, {12, 90, 91, 13}, {13, 91, 41, 3}, {38, 39, 92, 89}, {89, 92, 93, 90}, {90, 93, 94, 91}, {91, 94, 42, 41}, {39, 40, 95, 92}, {92, 95, 96, 93}, {93, 96, 97, 94}, {94, 97, 43, 42}, {40, 5, 26, 95}, {95, 26, 27, 96}, {96, 27, 28, 97}, {97, 28, 1, 43}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 125
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.25, 0.75, 1}, {0.25, 0.5, 1}, {0.25, 0.25, 1}, {0.5, 0.75, 1}, {0.5, 0.5, 1}, {0.5, 0.25, 1}, {0.75, 0.75, 1}, {0.75, 0.5, 1}, {0.75, 0.25, 1}, {0.75, 1, 0.25}, {0.75, 1, 0.5}, {0.75, 1, 0.75}, {0.5, 1, 0.25}, {0.5, 1, 0.5}, {0.5, 1, 0.75}, {0.25, 1, 0.25}, {0.25, 1, 0.5}, {0.25, 1, 0.75}, {0.25, 0, 0.75}, {0.25, 0, 0.5}, {0.25, 0, 0.25}, {0.5, 0, 0.75}, {0.5, 0, 0.5}, {0.5, 0, 0.25}, {0.75, 0, 0.75}, {0.75, 0, 0.5}, {0.75, 0, 0.25}, {0.75, 0.75, 0}, {0.75, 0.5, 0}, {0.75, 0.25, 0}, {0.5, 0.75, 0}, {0.5, 0.5, 0}, {0.5, 0.25, 0}, {0.25, 0.75, 0}, {0.25, 0.5, 0}, {0.25, 0.25, 0}, {0, 0.75, 0.25}, {0, 0.5, 0.25}, {0, 0.25, 0.25}, {0, 0.75, 0.5}, {0, 0.5, 0.5}, {0, 0.25, 0.5}, {0, 0.75, 0.75}, {0, 0.5, 0.75}, {0, 0.25, 0.75}, {1, 0.75, 0.75}, {1, 0.75, 0.5}, {1, 0.75, 0.25}, {1, 0.5, 0.75}, {1, 0.5, 0.5}, {1, 0.5, 0.25}, {1, 0.25, 0.75}, {1, 0.25, 0.5}, {1, 0.25, 0.25}, {0.75, 0.75, 0.75}, {0.5, 0.75, 0.75}, {0.25, 0.75, 0.75}, {0.75, 0.75, 0.5}, {0.5, 0.75, 0.5}, {0.25, 0.75, 0.5}, {0.75, 0.75, 0.25}, {0.5, 0.75, 0.25}, {0.25, 0.75, 0.25}, {0.75, 0.5, 0.75}, {0.5, 0.5, 0.75}, {0.25, 0.5, 0.75}, {0.75, 0.5, 0.5}, {0.5, 0.5, 0.5}, {0.25, 0.5, 0.5}, {0.75, 0.5, 0.25}, {0.5, 0.5, 0.25}, {0.25, 0.5, 0.25}, {0.75, 0.25, 0.75}, {0.5, 0.25, 0.75}, {0.25, 0.25, 0.75}, {0.75, 0.25, 0.5}, {0.5, 0.25, 0.5}, {0.25, 0.25, 0.5}, {0.75, 0.25, 0.25}, {0.5, 0.25, 0.25}, {0.25, 0.25, 0.25}}
]
Vector<double> [
+ id : my_fem:jacobians:_hexahedron_8
+ size : 512
+ nb_component : 1
+ allocated size : 512
+ memory size : 4kB
+ values : {{0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195312}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}, {0.00195313}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_hexahedron_8
- + size : 8
- + nb_component : 3
- + allocated size : 2000
- + memory size : 47kB
- + values : {{-0.57735, -0.57735, -0.57735}, {0.57735, -0.57735, -0.57735}, {0.57735, 0.57735, -0.57735}, {-0.57735, 0.57735, -0.57735}, {-0.57735, -0.57735, 0.57735}, {0.57735, -0.57735, 0.57735}, {0.57735, 0.57735, 0.57735}, {-0.57735, 0.57735, 0.57735}}
- ]
Vector<double> [
+ id : my_fem:shapes:_hexahedron_8
+ size : 512
+ nb_component : 8
+ allocated size : 512
+ memory size : 32kB
+ values : {{0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}, {0.490563, 0.131446, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.00943739, 0.0352208}, {0.131446, 0.490563, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.0352208, 0.00943739}, {0.0352208, 0.131446, 0.490563, 0.131446, 0.00943739, 0.0352208, 0.131446, 0.0352208}, {0.131446, 0.0352208, 0.131446, 0.490563, 0.0352208, 0.00943739, 0.0352208, 0.131446}, {0.131446, 0.0352208, 0.00943739, 0.0352208, 0.490563, 0.131446, 0.0352208, 0.131446}, {0.0352208, 0.131446, 0.0352208, 0.00943739, 0.131446, 0.490563, 0.131446, 0.0352208}, {0.00943739, 0.0352208, 0.131446, 0.0352208, 0.0352208, 0.131446, 0.490563, 0.131446}, {0.0352208, 0.00943739, 0.0352208, 0.131446, 0.131446, 0.0352208, 0.131446, 0.490563}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_hexahedron_8
+ size : 512
+ nb_component : 24
+ allocated size : 512
+ memory size : 96kB
+ values : {{2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}, {2.48803, -2.48803, -2.48803, 0.666667, -0.666667, 2.48803, 0.178633, 0.666667, 0.666667, 0.666667, 2.48803, -0.666667, -2.48803, -0.666667, -0.666667, -0.666667, -0.178633, 0.666667, -0.178633, 0.178633, 0.178633, -0.666667, 0.666667, -0.178633}, {0.666667, -0.666667, -2.48803, 2.48803, -2.48803, 2.48803, 0.666667, 2.48803, 0.666667, 0.178633, 0.666667, -0.666667, -0.666667, -0.178633, -0.666667, -2.48803, -0.666667, 0.666667, -0.666667, 0.666667, 0.178633, -0.178633, 0.178633, -0.178633}, {0.178633, -0.666667, -0.666667, 0.666667, -2.48803, 0.666667, 2.48803, 2.48803, 2.48803, 0.666667, 0.666667, -2.48803, -0.178633, -0.178633, -0.178633, -0.666667, -0.666667, 0.178633, -2.48803, 0.666667, 0.666667, -0.666667, 0.178633, -0.666667}, {0.666667, -2.48803, -0.666667, 0.178633, -0.666667, 0.666667, 0.666667, 0.666667, 2.48803, 2.48803, 2.48803, -2.48803, -0.666667, -0.666667, -0.178633, -0.178633, -0.178633, 0.178633, -0.666667, 0.178633, 0.666667, -2.48803, 0.666667, -0.666667}, {2.48803, -0.666667, -0.666667, 0.666667, -0.178633, 0.666667, 0.178633, 0.178633, 0.178633, 0.666667, 0.666667, -0.178633, -2.48803, -2.48803, -2.48803, -0.666667, -0.666667, 2.48803, -0.178633, 0.666667, 0.666667, -0.666667, 2.48803, -0.666667}, {0.666667, -0.178633, -0.666667, 2.48803, -0.666667, 0.666667, 0.666667, 0.666667, 0.178633, 0.178633, 0.178633, -0.178633, -0.666667, -0.666667, -2.48803, -2.48803, -2.48803, 2.48803, -0.666667, 2.48803, 0.666667, -0.178633, 0.666667, -0.666667}, {0.178633, -0.178633, -0.178633, 0.666667, -0.666667, 0.178633, 2.48803, 0.666667, 0.666667, 0.666667, 0.178633, -0.666667, -0.178633, -0.666667, -0.666667, -0.666667, -2.48803, 0.666667, -2.48803, 2.48803, 2.48803, -0.666667, 0.666667, -2.48803}, {0.666667, -0.666667, -0.178633, 0.178633, -0.178633, 0.178633, 0.666667, 0.178633, 0.666667, 2.48803, 0.666667, -0.666667, -0.666667, -2.48803, -0.666667, -0.178633, -0.666667, 0.666667, -0.666667, 0.666667, 2.48803, -2.48803, 2.48803, -2.48803}}
]
- + total size : 3.4e+02kB
+ + total size : 2.9e+02kB
]
- + total size : 3.4e+02kB
+ + total size : 2.9e+02kB
]
diff --git a/test/test_fem/test_interpolate_quadrangle_4.verified b/test/test_fem/test_interpolate_quadrangle_4.verified
index 31c13234c..9fd0f2382 100644
--- a/test/test_fem/test_interpolate_quadrangle_4.verified
+++ b/test/test_fem/test_interpolate_quadrangle_4.verified
@@ -1,146 +1,142 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 2
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 9
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
+ ]
(not_ghost:_quadrangle_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 4
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{2, 6, 8, 5}, {5, 8, 4, 1}, {6, 3, 7, 8}, {8, 7, 0, 4}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 9
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
+ ]
(not_ghost:_quadrangle_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 4
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{2, 6, 8, 5}, {5, 8, 4, 1}, {6, 3, 7, 8}, {8, 7, 0, 4}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 7
+ + nb vectors : 6
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_4
+ size : 4
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{2, 6, 8, 5}, {5, 8, 4, 1}, {6, 3, 7, 8}, {8, 7, 0, 4}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 9
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}}
]
Vector<double> [
+ id : my_fem:jacobians:_quadrangle_4
+ size : 16
+ nb_component : 1
+ allocated size : 16
+ memory size : 0.12kB
+ values : {{0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_quadrangle_4
- + size : 4
- + nb_component : 2
- + allocated size : 2000
- + memory size : 31kB
- + values : {{-0.57735, -0.57735}, {0.57735, -0.57735}, {0.57735, 0.57735}, {-0.57735, 0.57735}}
- ]
Vector<double> [
+ id : my_fem:shapes:_quadrangle_4
+ size : 16
+ nb_component : 4
+ allocated size : 16
+ memory size : 0.5kB
+ values : {{0.622008, 0.166667, 0.0446582, 0.166667}, {0.166667, 0.622008, 0.166667, 0.0446582}, {0.0446582, 0.166667, 0.622008, 0.166667}, {0.166667, 0.0446582, 0.166667, 0.622008}, {0.622008, 0.166667, 0.0446582, 0.166667}, {0.166667, 0.622008, 0.166667, 0.0446582}, {0.0446582, 0.166667, 0.622008, 0.166667}, {0.166667, 0.0446582, 0.166667, 0.622008}, {0.622008, 0.166667, 0.0446582, 0.166667}, {0.166667, 0.622008, 0.166667, 0.0446582}, {0.0446582, 0.166667, 0.622008, 0.166667}, {0.166667, 0.0446582, 0.166667, 0.622008}, {0.622008, 0.166667, 0.0446582, 0.166667}, {0.166667, 0.622008, 0.166667, 0.0446582}, {0.0446582, 0.166667, 0.622008, 0.166667}, {0.166667, 0.0446582, 0.166667, 0.622008}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_quadrangle_4
+ size : 16
+ nb_component : 8
+ allocated size : 16
+ memory size : 1kB
+ values : {{1.57735, 1.57735, -1.57735, 0.42265, -0.42265, -0.42265, 0.42265, -1.57735}, {1.57735, 0.42265, -1.57735, 1.57735, -0.42265, -1.57735, 0.42265, -0.42265}, {0.42265, 0.42265, -0.42265, 1.57735, -1.57735, -1.57735, 1.57735, -0.42265}, {0.42265, 1.57735, -0.42265, 0.42265, -1.57735, -0.42265, 1.57735, -1.57735}, {1.57735, 1.57735, -1.57735, 0.42265, -0.42265, -0.42265, 0.42265, -1.57735}, {1.57735, 0.42265, -1.57735, 1.57735, -0.42265, -1.57735, 0.42265, -0.42265}, {0.42265, 0.42265, -0.42265, 1.57735, -1.57735, -1.57735, 1.57735, -0.42265}, {0.42265, 1.57735, -0.42265, 0.42265, -1.57735, -0.42265, 1.57735, -1.57735}, {1.57735, 1.57735, -1.57735, 0.42265, -0.42265, -0.42265, 0.42265, -1.57735}, {1.57735, 0.42265, -1.57735, 1.57735, -0.42265, -1.57735, 0.42265, -0.42265}, {0.42265, 0.42265, -0.42265, 1.57735, -1.57735, -1.57735, 1.57735, -0.42265}, {0.42265, 1.57735, -0.42265, 0.42265, -1.57735, -0.42265, 1.57735, -1.57735}, {1.57735, 1.57735, -1.57735, 0.42265, -0.42265, -0.42265, 0.42265, -1.57735}, {1.57735, 0.42265, -1.57735, 1.57735, -0.42265, -1.57735, 0.42265, -0.42265}, {0.42265, 0.42265, -0.42265, 1.57735, -1.57735, -1.57735, 1.57735, -0.42265}, {0.42265, 1.57735, -0.42265, 0.42265, -1.57735, -0.42265, 1.57735, -1.57735}}
]
- + total size : 1.1e+02kB
+ + total size : 80kB
]
- + total size : 1.1e+02kB
+ + total size : 80kB
]
diff --git a/test/test_fem/test_interpolate_quadrangle_8.verified b/test/test_fem/test_interpolate_quadrangle_8.verified
index 113e85a70..b2c892b0a 100644
--- a/test/test_fem/test_interpolate_quadrangle_8.verified
+++ b/test/test_fem/test_interpolate_quadrangle_8.verified
@@ -1,120 +1,114 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 2
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.5, 0.75}, {0.75, 0.5}, {0.5, 0.25}, {0.25, 0.5}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_quadrangle_8) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_8
+ size : 4
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{2, 10, 16, 7, 11, 17, 18, 9}, {7, 16, 4, 1, 18, 19, 6, 8}, {10, 3, 13, 16, 12, 14, 20, 17}, {16, 13, 0, 4, 20, 15, 5, 19}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.5, 0.75}, {0.75, 0.5}, {0.5, 0.25}, {0.25, 0.5}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_quadrangle_8) [
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_8
+ size : 4
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{2, 10, 16, 7, 11, 17, 18, 9}, {7, 16, 4, 1, 18, 19, 6, 8}, {10, 3, 13, 16, 12, 14, 20, 17}, {16, 13, 0, 4, 20, 15, 5, 19}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 6
+ + nb vectors : 5
Vector<unsigned int> [
+ id : mesh:connectivities:_quadrangle_8
+ size : 4
+ nb_component : 8
+ allocated size : 2000
+ memory size : 62kB
+ values : {{2, 10, 16, 7, 11, 17, 18, 9}, {7, 16, 4, 1, 18, 19, 6, 8}, {10, 3, 13, 16, 12, 14, 20, 17}, {16, 13, 0, 4, 20, 15, 5, 19}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.5, 0.75}, {0.75, 0.5}, {0.5, 0.25}, {0.25, 0.5}}
]
Vector<double> [
+ id : my_fem:jacobians:_quadrangle_8
+ size : 36
+ nb_component : 1
+ allocated size : 36
+ memory size : 0.28kB
+ values : {{0.0493827}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0493827}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0493827}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0493827}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0192901}, {0.0308642}, {0.0308642}, {0.0308642}, {0.0308642}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_quadrangle_8
- + size : 9
- + nb_component : 2
- + allocated size : 2000
- + memory size : 31kB
- + values : {{0, 0}, {0.774597, 0.774597}, {-0.774597, 0.774597}, {-0.774597, -0.774597}, {0.774597, -0.774597}, {0, 0.774597}, {-0.774597, 0}, {0, -0.774597}, {0.774597, 0}}
- ]
Vector<double> [
+ id : my_fem:shapes:_quadrangle_8
+ size : 36
+ nb_component : 8
+ allocated size : 36
+ memory size : 2.2kB
+ values : {{-0.25, -0.25, -0.25, -0.25, 0.5, 0.5, 0.5, 0.5}, {-0.032379, -0.1, 0.432379, -0.1, 0.0450807, 0.354919, 0.354919, 0.0450807}, {-0.1, -0.032379, -0.1, 0.432379, 0.0450807, 0.0450807, 0.354919, 0.354919}, {0.432379, -0.1, -0.032379, -0.1, 0.354919, 0.0450807, 0.0450807, 0.354919}, {-0.1, 0.432379, -0.1, -0.032379, 0.354919, 0.354919, 0.0450807, 0.0450807}, {-0.1, -0.1, -0.1, -0.1, 0.112702, 0.2, 0.887298, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.112702, 0.2, 0.887298}, {-0.1, -0.1, -0.1, -0.1, 0.887298, 0.2, 0.112702, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.887298, 0.2, 0.112702}, {-0.25, -0.25, -0.25, -0.25, 0.5, 0.5, 0.5, 0.5}, {-0.032379, -0.1, 0.432379, -0.1, 0.0450807, 0.354919, 0.354919, 0.0450807}, {-0.1, -0.032379, -0.1, 0.432379, 0.0450807, 0.0450807, 0.354919, 0.354919}, {0.432379, -0.1, -0.032379, -0.1, 0.354919, 0.0450807, 0.0450807, 0.354919}, {-0.1, 0.432379, -0.1, -0.032379, 0.354919, 0.354919, 0.0450807, 0.0450807}, {-0.1, -0.1, -0.1, -0.1, 0.112702, 0.2, 0.887298, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.112702, 0.2, 0.887298}, {-0.1, -0.1, -0.1, -0.1, 0.887298, 0.2, 0.112702, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.887298, 0.2, 0.112702}, {-0.25, -0.25, -0.25, -0.25, 0.5, 0.5, 0.5, 0.5}, {-0.032379, -0.1, 0.432379, -0.1, 0.0450807, 0.354919, 0.354919, 0.0450807}, {-0.1, -0.032379, -0.1, 0.432379, 0.0450807, 0.0450807, 0.354919, 0.354919}, {0.432379, -0.1, -0.032379, -0.1, 0.354919, 0.0450807, 0.0450807, 0.354919}, {-0.1, 0.432379, -0.1, -0.032379, 0.354919, 0.354919, 0.0450807, 0.0450807}, {-0.1, -0.1, -0.1, -0.1, 0.112702, 0.2, 0.887298, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.112702, 0.2, 0.887298}, {-0.1, -0.1, -0.1, -0.1, 0.887298, 0.2, 0.112702, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.887298, 0.2, 0.112702}, {-0.25, -0.25, -0.25, -0.25, 0.5, 0.5, 0.5, 0.5}, {-0.032379, -0.1, 0.432379, -0.1, 0.0450807, 0.354919, 0.354919, 0.0450807}, {-0.1, -0.032379, -0.1, 0.432379, 0.0450807, 0.0450807, 0.354919, 0.354919}, {0.432379, -0.1, -0.032379, -0.1, 0.354919, 0.0450807, 0.0450807, 0.354919}, {-0.1, 0.432379, -0.1, -0.032379, 0.354919, 0.354919, 0.0450807, 0.0450807}, {-0.1, -0.1, -0.1, -0.1, 0.112702, 0.2, 0.887298, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.112702, 0.2, 0.887298}, {-0.1, -0.1, -0.1, -0.1, 0.887298, 0.2, 0.112702, 0.2}, {-0.1, -0.1, -0.1, -0.1, 0.2, 0.887298, 0.2, 0.112702}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_quadrangle_8
+ size : 36
+ nb_component : 16
+ allocated size : 36
+ memory size : 4.5kB
+ values : {{0, 0, 0, 0, 0, 0, 0, 0, 2.36611e-12, 2, -2, 1.88161e-12, -2.36611e-12, -2, 2, -1.88161e-12}, {-0.52379, -0.52379, -0.174597, -1.3746, -4.12379, -4.12379, -1.3746, -0.174597, 0.698387, 0.8, -0.8, 5.49839, 5.49839, -0.8, 0.8, 0.698387}, {0.174597, -1.3746, 0.52379, -0.52379, 1.3746, -0.174597, 4.12379, -4.12379, -0.698387, 0.8, -0.8, 0.698387, -5.49839, -0.8, 0.8, 5.49839}, {4.12379, 4.12379, 1.3746, 0.174597, 0.52379, 0.52379, 0.174597, 1.3746, -5.49839, 0.8, -0.8, -0.698387, -0.698387, -0.8, 0.8, -5.49839}, {-1.3746, 0.174597, -4.12379, 4.12379, -0.174597, 1.3746, -0.52379, 0.52379, 5.49839, 0.8, -0.8, -5.49839, 0.698387, -0.8, 0.8, -0.698387}, {-0.174597, -1.54919, 0.174597, -1.54919, -1.3746, -1.54919, 1.3746, -1.54919, 4.19886e-12, 2, -0.8, 3.09839, -4.19886e-12, -2, 0.8, 3.09839}, {1.54919, 1.3746, 1.54919, -0.174597, 1.54919, 0.174597, 1.54919, -1.3746, -3.09839, 0.8, -2, 3.39506e-13, -3.09839, -0.8, 2, -3.39506e-13}, {1.3746, 1.54919, -1.3746, 1.54919, 0.174597, 1.54919, -0.174597, 1.54919, 5.33573e-13, 2, -0.8, -3.09839, -5.33573e-13, -2, 0.8, -3.09839}, {-1.54919, -0.174597, -1.54919, 1.3746, -1.54919, -1.3746, -1.54919, 0.174597, 3.09839, 0.8, -2, 4.0048e-12, 3.09839, -0.8, 2, -4.0048e-12}, {0, 0, 0, 0, 0, 0, 0, 0, 2.07689e-12, 2, -2, 2.36611e-12, -2.07689e-12, -2, 2, -2.36611e-12}, {-0.52379, -0.52379, -0.174597, -1.3746, -4.12379, -4.12379, -1.3746, -0.174597, 0.698387, 0.8, -0.8, 5.49839, 5.49839, -0.8, 0.8, 0.698387}, {0.174597, -1.3746, 0.52379, -0.52379, 1.3746, -0.174597, 4.12379, -4.12379, -0.698387, 0.8, -0.8, 0.698387, -5.49839, -0.8, 0.8, 5.49839}, {4.12379, 4.12379, 1.3746, 0.174597, 0.52379, 0.52379, 0.174597, 1.3746, -5.49839, 0.8, -0.8, -0.698387, -0.698387, -0.8, 0.8, -5.49839}, {-1.3746, 0.174597, -4.12379, 4.12379, -0.174597, 1.3746, -0.52379, 0.52379, 5.49839, 0.8, -0.8, -5.49839, 0.698387, -0.8, 0.8, -0.698387}, {-0.174597, -1.54919, 0.174597, -1.54919, -1.3746, -1.54919, 1.3746, -1.54919, 4.17666e-13, 2, -0.8, 3.09839, -4.17666e-13, -2, 0.8, 3.09839}, {1.54919, 1.3746, 1.54919, -0.174597, 1.54919, 0.174597, 1.54919, -1.3746, -3.09839, 0.8, -2, 5.33573e-13, -3.09839, -0.8, 2, -5.33573e-13}, {1.3746, 1.54919, -1.3746, 1.54919, 0.174597, 1.54919, -0.174597, 1.54919, 4.08307e-12, 2, -0.8, -3.09839, -4.08307e-12, -2, 0.8, -3.09839}, {-1.54919, -0.174597, -1.54919, 1.3746, -1.54919, -1.3746, -1.54919, 0.174597, 3.09839, 0.8, -2, 4.19864e-12, 3.09839, -0.8, 2, -4.19864e-12}, {0, 0, 0, 0, 0, 0, 0, 0, 1.88161e-12, 2, -2, 2.36589e-12, -1.88161e-12, -2, 2, -2.36589e-12}, {-0.52379, -0.52379, -0.174597, -1.3746, -4.12379, -4.12379, -1.3746, -0.174597, 0.698387, 0.8, -0.8, 5.49839, 5.49839, -0.8, 0.8, 0.698387}, {0.174597, -1.3746, 0.52379, -0.52379, 1.3746, -0.174597, 4.12379, -4.12379, -0.698387, 0.8, -0.8, 0.698387, -5.49839, -0.8, 0.8, 5.49839}, {4.12379, 4.12379, 1.3746, 0.174597, 0.52379, 0.52379, 0.174597, 1.3746, -5.49839, 0.8, -0.8, -0.698387, -0.698387, -0.8, 0.8, -5.49839}, {-1.3746, 0.174597, -4.12379, 4.12379, -0.174597, 1.3746, -0.52379, 0.52379, 5.49839, 0.8, -0.8, -5.49839, 0.698387, -0.8, 0.8, -0.698387}, {-0.174597, -1.54919, 0.174597, -1.54919, -1.3746, -1.54919, 1.3746, -1.54919, 4.0048e-12, 2, -0.8, 3.09839, -4.0048e-12, -2, 0.8, 3.09839}, {1.54919, 1.3746, 1.54919, -0.174597, 1.54919, 0.174597, 1.54919, -1.3746, -3.09839, 0.8, -2, 4.19864e-12, -3.09839, -0.8, 2, -4.19864e-12}, {1.3746, 1.54919, -1.3746, 1.54919, 0.174597, 1.54919, -0.174597, 1.54919, 3.39284e-13, 2, -0.8, -3.09839, -3.39284e-13, -2, 0.8, -3.09839}, {-1.54919, -0.174597, -1.54919, 1.3746, -1.54919, -1.3746, -1.54919, 0.174597, 3.09839, 0.8, -2, 5.3324e-13, 3.09839, -0.8, 2, -5.3324e-13}, {0, 0, 0, 0, 0, 0, 0, 0, 2.36589e-12, 2, -2, 2.07689e-12, -2.36589e-12, -2, 2, -2.07689e-12}, {-0.52379, -0.52379, -0.174597, -1.3746, -4.12379, -4.12379, -1.3746, -0.174597, 0.698387, 0.8, -0.8, 5.49839, 5.49839, -0.8, 0.8, 0.698387}, {0.174597, -1.3746, 0.52379, -0.52379, 1.3746, -0.174597, 4.12379, -4.12379, -0.698387, 0.8, -0.8, 0.698387, -5.49839, -0.8, 0.8, 5.49839}, {4.12379, 4.12379, 1.3746, 0.174597, 0.52379, 0.52379, 0.174597, 1.3746, -5.49839, 0.8, -0.8, -0.698387, -0.698387, -0.8, 0.8, -5.49839}, {-1.3746, 0.174597, -4.12379, 4.12379, -0.174597, 1.3746, -0.52379, 0.52379, 5.49839, 0.8, -0.8, -5.49839, 0.698387, -0.8, 0.8, -0.698387}, {-0.174597, -1.54919, 0.174597, -1.54919, -1.3746, -1.54919, 1.3746, -1.54919, 5.3324e-13, 2, -0.8, 3.09839, -5.3324e-13, -2, 0.8, 3.09839}, {1.54919, 1.3746, 1.54919, -0.174597, 1.54919, 0.174597, 1.54919, -1.3746, -3.09839, 0.8, -2, 4.08307e-12, -3.09839, -0.8, 2, -4.08307e-12}, {1.3746, 1.54919, -1.3746, 1.54919, 0.174597, 1.54919, -0.174597, 1.54919, 4.19864e-12, 2, -0.8, -3.09839, -4.19864e-12, -2, 0.8, -3.09839}, {-1.54919, -0.174597, -1.54919, 1.3746, -1.54919, -1.3746, -1.54919, 0.174597, 3.09839, 0.8, -2, 4.17666e-13, 3.09839, -0.8, 2, -4.17666e-13}}
]
- + total size : 1.3e+02kB
+ + total size : 1e+02kB
]
- + total size : 1.3e+02kB
+ + total size : 1e+02kB
]
diff --git a/test/test_fem/test_interpolate_segment_2.verified b/test/test_fem/test_interpolate_segment_2.verified
index fe601f882..dc4d8c668 100644
--- a/test/test_fem/test_interpolate_segment_2.verified
+++ b/test/test_fem/test_interpolate_segment_2.verified
@@ -1,120 +1,114 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 1
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 1
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 11
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 10
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 2}, {2, 3}, {3, 4}, {4, 5}, {5, 6}, {6, 7}, {7, 8}, {8, 9}, {9, 10}, {10, 1}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 1
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 11
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 10
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 2}, {2, 3}, {3, 4}, {4, 5}, {5, 6}, {6, 7}, {7, 8}, {8, 9}, {9, 10}, {10, 1}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 6
+ + nb vectors : 5
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 10
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 2}, {2, 3}, {3, 4}, {4, 5}, {5, 6}, {6, 7}, {7, 8}, {8, 9}, {9, 10}, {10, 1}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 11
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}}
]
Vector<double> [
+ id : my_fem:jacobians:_segment_2
+ size : 10
+ nb_component : 1
+ allocated size : 10
+ memory size : 0.078kB
+ values : {{0.1}, {0.1}, {0.1}, {0.1}, {0.1}, {0.1}, {0.1}, {0.1}, {0.1}, {0.1}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_segment_2
- + size : 1
- + nb_component : 1
- + allocated size : 2000
- + memory size : 16kB
- + values : {{0}}
- ]
Vector<double> [
+ id : my_fem:shapes:_segment_2
+ size : 10
+ nb_component : 2
+ allocated size : 10
+ memory size : 0.16kB
+ values : {{0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}, {0.5, 0.5}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_segment_2
+ size : 10
+ nb_component : 2
+ allocated size : 10
+ memory size : 0.16kB
+ values : {{-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}, {-10, 10}}
]
- + total size : 47kB
+ + total size : 32kB
]
- + total size : 47kB
+ + total size : 32kB
]
diff --git a/test/test_fem/test_interpolate_segment_3.verified b/test/test_fem/test_interpolate_segment_3.verified
index 78786579b..cd4227805 100644
--- a/test/test_fem/test_interpolate_segment_3.verified
+++ b/test/test_fem/test_interpolate_segment_3.verified
@@ -1,120 +1,114 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 1
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 1
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}, {0.05}, {0.15}, {0.25}, {0.35}, {0.45}, {0.55}, {0.65}, {0.75}, {0.85}, {0.95}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 10
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 2, 11}, {2, 3, 12}, {3, 4, 13}, {4, 5, 14}, {5, 6, 15}, {6, 7, 16}, {7, 8, 17}, {8, 9, 18}, {9, 10, 19}, {10, 1, 20}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 1
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}, {0.05}, {0.15}, {0.25}, {0.35}, {0.45}, {0.55}, {0.65}, {0.75}, {0.85}, {0.95}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 10
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 2, 11}, {2, 3, 12}, {3, 4, 13}, {4, 5, 14}, {5, 6, 15}, {6, 7, 16}, {7, 8, 17}, {8, 9, 18}, {9, 10, 19}, {10, 1, 20}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 6
+ + nb vectors : 5
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 10
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 2, 11}, {2, 3, 12}, {3, 4, 13}, {4, 5, 14}, {5, 6, 15}, {6, 7, 16}, {7, 8, 17}, {8, 9, 18}, {9, 10, 19}, {10, 1, 20}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 21
+ nb_component : 1
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0}, {1}, {0.1}, {0.2}, {0.3}, {0.4}, {0.5}, {0.6}, {0.7}, {0.8}, {0.9}, {0.05}, {0.15}, {0.25}, {0.35}, {0.45}, {0.55}, {0.65}, {0.75}, {0.85}, {0.95}}
]
Vector<double> [
+ id : my_fem:jacobians:_segment_3
+ size : 20
+ nb_component : 1
+ allocated size : 20
+ memory size : 0.16kB
+ values : {{0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}, {0.05}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_segment_3
- + size : 2
- + nb_component : 1
- + allocated size : 2000
- + memory size : 16kB
- + values : {{-0.57735}, {0.57735}}
- ]
Vector<double> [
+ id : my_fem:shapes:_segment_3
+ size : 20
+ nb_component : 3
+ allocated size : 20
+ memory size : 0.47kB
+ values : {{0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}, {0.455342, -0.122008, 0.666667}, {-0.122008, 0.455342, 0.666667}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_segment_3
+ size : 20
+ nb_component : 3
+ allocated size : 20
+ memory size : 0.47kB
+ values : {{-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}, {-21.547, -1.54701, 23.094}, {1.54701, 21.547, -23.094}}
]
- + total size : 56kB
+ + total size : 40kB
]
- + total size : 56kB
+ + total size : 40kB
]
diff --git a/test/test_fem/test_interpolate_tetrahedron_10.verified b/test/test_fem/test_interpolate_tetrahedron_10.verified
index 1b2450abe..20e163531 100644
--- a/test/test_fem/test_interpolate_tetrahedron_10.verified
+++ b/test/test_fem/test_interpolate_tetrahedron_10.verified
@@ -1,172 +1,170 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 3
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 722
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {0.125, 1, 1}, {0.375, 1, 1}, {0.625, 1, 1}, {0.875, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {1, 1, 0.875}, {1, 1, 0.625}, {1, 1, 0.375}, {1, 1, 0.125}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0.875, 1, 0}, {0.625, 1, 0}, {0.375, 1, 0}, {0.125, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 1, 0.125}, {0, 1, 0.375}, {0, 1, 0.625}, {0, 1, 0.875}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0, 0, 0.125}, {0, 0, 0.375}, {0, 0, 0.625}, {0, 0, 0.875}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {0.125, 0, 1}, {0.375, 0, 1}, {0.625, 0, 1}, {0.875, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {1, 0, 0.875}, {1, 0, 0.625}, {1, 0, 0.375}, {1, 0, 0.125}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0.875, 0, 0}, {0.625, 0, 0}, {0.375, 0, 0}, {0.125, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.875, 0}, {0, 0.625, 0}, {0, 0.375, 0}, {0, 0.125, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {0, 0.875, 1}, {0, 0.625, 1}, {0, 0.375, 1}, {0, 0.125, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.875, 1}, {1, 0.625, 1}, {1, 0.375, 1}, {1, 0.125, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {1, 0.875, 0}, {1, 0.625, 0}, {1, 0.375, 0}, {1, 0.125, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.234692, 0.610874, 1}, {0.095431, 0.625135, 1}, {0.139261, 0.735739, 1}, {0.264261, 0.860739, 1}, {0.375, 0.904691, 1}, {0.389261, 0.76543, 1}, {0.860739, 0.735739, 1}, {0.904569, 0.625135, 1}, {0.765308, 0.610874, 1}, {0.264261, 0.139383, 1}, {0.389261, 0.234962, 1}, {0.375, 0.0955798, 1}, {0.610739, 0.76543, 1}, {0.625, 0.904691, 1}, {0.735739, 0.860739, 1}, {0.095431, 0.375135, 1}, {0.234692, 0.389518, 1}, {0.139261, 0.264383, 1}, {0.625, 0.0955798, 1}, {0.610739, 0.234962, 1}, {0.735739, 0.139383, 1}, {0.860739, 0.264383, 1}, {0.765308, 0.389518, 1}, {0.904569, 0.375135, 1}, {0.095431, 0.500135, 1}, {0.904569, 0.500135, 1}, {0.5, 0.904691, 1}, {0.5, 0.0955798, 1}, {0.389261, 0.611834, 1}, {0.345431, 0.501231, 1}, {0.5, 0.655786, 1}, {0.610739, 0.611834, 1}, {0.389261, 0.390478, 1}, {0.654569, 0.501231, 1}, {0.5, 0.346675, 1}, {0.610739, 0.390478, 1}, {0.0709532, 0.804047, 1}, {0.210214, 0.789786, 1}, {0.195953, 0.929047, 1}, {0.789786, 0.789786, 1}, {0.929047, 0.804047, 1}, {0.195953, 0.0709735, 1}, {0.210214, 0.210356, 1}, {0.804047, 0.929047, 1}, {0.0709532, 0.195973, 1}, {0.789786, 0.210356, 1}, {0.804047, 0.0709735, 1}, {0.929047, 0.195973, 1}, {0.0709532, 0.0709735, 1}, {0.0709532, 0.929047, 1}, {0.929047, 0.929047, 1}, {0.929047, 0.0709735, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.904569, 1, 0.625}, {0.765308, 1, 0.610739}, {0.860739, 1, 0.735739}, {0.625, 1, 0.095431}, {0.610739, 1, 0.234692}, {0.735739, 1, 0.139261}, {0.375, 1, 0.904569}, {0.389261, 1, 0.765308}, {0.264261, 1, 0.860739}, {0.095431, 1, 0.375}, {0.234692, 1, 0.389261}, {0.139261, 1, 0.264261}, {0.735739, 1, 0.860739}, {0.610739, 1, 0.765308}, {0.625, 1, 0.904569}, {0.139261, 1, 0.735739}, {0.234692, 1, 0.610739}, {0.095431, 1, 0.625}, {0.860739, 1, 0.264261}, {0.765308, 1, 0.389261}, {0.904569, 1, 0.375}, {0.264261, 1, 0.139261}, {0.389261, 1, 0.234692}, {0.375, 1, 0.095431}, {0.5, 1, 0.095431}, {0.904569, 1, 0.5}, {0.095431, 1, 0.5}, {0.5, 1, 0.904569}, {0.654569, 1, 0.5}, {0.610739, 1, 0.610739}, {0.610739, 1, 0.389261}, {0.5, 1, 0.345431}, {0.389261, 1, 0.389261}, {0.5, 1, 0.654569}, {0.389261, 1, 0.610739}, {0.345431, 1, 0.5}, {0.789786, 1, 0.789786}, {0.929047, 1, 0.804047}, {0.789786, 1, 0.210214}, {0.804047, 1, 0.0709532}, {0.210214, 1, 0.789786}, {0.195953, 1, 0.929047}, {0.210214, 1, 0.210214}, {0.0709532, 1, 0.195953}, {0.804047, 1, 0.929047}, {0.0709532, 1, 0.804047}, {0.929047, 1, 0.195953}, {0.195953, 1, 0.0709532}, {0.0709532, 1, 0.0709532}, {0.929047, 1, 0.0709532}, {0.0709532, 1, 0.929047}, {0.929047, 1, 0.929047}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.904691, 0, 0.625}, {0.76543, 0, 0.610739}, {0.860739, 0, 0.735739}, {0.625135, 0, 0.095431}, {0.610874, 0, 0.234692}, {0.735739, 0, 0.139261}, {0.375135, 0, 0.904569}, {0.389518, 0, 0.765308}, {0.264383, 0, 0.860739}, {0.0955798, 0, 0.375}, {0.234962, 0, 0.389261}, {0.139383, 0, 0.264261}, {0.735739, 0, 0.860739}, {0.610874, 0, 0.765308}, {0.625135, 0, 0.904569}, {0.139383, 0, 0.735739}, {0.234962, 0, 0.610739}, {0.0955798, 0, 0.625}, {0.860739, 0, 0.264261}, {0.76543, 0, 0.389261}, {0.904691, 0, 0.375}, {0.264383, 0, 0.139261}, {0.389518, 0, 0.234692}, {0.375135, 0, 0.095431}, {0.500135, 0, 0.095431}, {0.904691, 0, 0.5}, {0.0955798, 0, 0.5}, {0.500135, 0, 0.904569}, {0.655786, 0, 0.5}, {0.611834, 0, 0.610739}, {0.611834, 0, 0.389261}, {0.501231, 0, 0.345431}, {0.390478, 0, 0.389261}, {0.501231, 0, 0.654569}, {0.390478, 0, 0.610739}, {0.346675, 0, 0.5}, {0.789786, 0, 0.789786}, {0.929047, 0, 0.804047}, {0.789786, 0, 0.210214}, {0.804047, 0, 0.0709532}, {0.210356, 0, 0.789786}, {0.195973, 0, 0.929047}, {0.210356, 0, 0.210214}, {0.0709735, 0, 0.195953}, {0.804047, 0, 0.929047}, {0.0709735, 0, 0.804047}, {0.929047, 0, 0.195953}, {0.195973, 0, 0.0709532}, {0.0709735, 0, 0.0709532}, {0.929047, 0, 0.0709532}, {0.0709735, 0, 0.929047}, {0.929047, 0, 0.929047}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0.860739, 0.735739, 0}, {0.765308, 0.610739, 0}, {0.904569, 0.625, 0}, {0.625, 0.904569, 0}, {0.610739, 0.765308, 0}, {0.735739, 0.860739, 0}, {0.735739, 0.139261, 0}, {0.610739, 0.234692, 0}, {0.625, 0.095431, 0}, {0.095431, 0.625, 0}, {0.234692, 0.610739, 0}, {0.139261, 0.735739, 0}, {0.264261, 0.860739, 0}, {0.389261, 0.765308, 0}, {0.375, 0.904569, 0}, {0.904569, 0.375, 0}, {0.765308, 0.389261, 0}, {0.860739, 0.264261, 0}, {0.139261, 0.264261, 0}, {0.234692, 0.389261, 0}, {0.095431, 0.375, 0}, {0.375, 0.095431, 0}, {0.389261, 0.234692, 0}, {0.264261, 0.139261, 0}, {0.904569, 0.5, 0}, {0.5, 0.904569, 0}, {0.5, 0.095431, 0}, {0.095431, 0.5, 0}, {0.5, 0.654569, 0}, {0.610739, 0.610739, 0}, {0.654569, 0.5, 0}, {0.389261, 0.610739, 0}, {0.610739, 0.389261, 0}, {0.345431, 0.5, 0}, {0.5, 0.345431, 0}, {0.389261, 0.389261, 0}, {0.789786, 0.789786, 0}, {0.804047, 0.929047, 0}, {0.929047, 0.804047, 0}, {0.804047, 0.0709532, 0}, {0.789786, 0.210214, 0}, {0.210214, 0.789786, 0}, {0.0709532, 0.804047, 0}, {0.929047, 0.195953, 0}, {0.195953, 0.929047, 0}, {0.210214, 0.210214, 0}, {0.195953, 0.0709532, 0}, {0.0709532, 0.195953, 0}, {0.929047, 0.0709532, 0}, {0.0709532, 0.929047, 0}, {0.929047, 0.929047, 0}, {0.0709532, 0.0709532, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {0, 0.735739, 0.139261}, {0, 0.610739, 0.234692}, {0, 0.625, 0.095431}, {0, 0.904569, 0.375}, {0, 0.765308, 0.389261}, {0, 0.860739, 0.264261}, {0, 0.625, 0.904569}, {0, 0.610739, 0.765308}, {0, 0.735739, 0.860739}, {0, 0.139261, 0.264261}, {0, 0.234692, 0.389261}, {0, 0.095431, 0.375}, {0, 0.860739, 0.735739}, {0, 0.765308, 0.610739}, {0, 0.904569, 0.625}, {0, 0.375, 0.095431}, {0, 0.389261, 0.234692}, {0, 0.264261, 0.139261}, {0, 0.095431, 0.625}, {0, 0.234692, 0.610739}, {0, 0.139261, 0.735739}, {0, 0.264261, 0.860739}, {0, 0.389261, 0.765308}, {0, 0.375, 0.904569}, {0, 0.5, 0.095431}, {0, 0.5, 0.904569}, {0, 0.904569, 0.5}, {0, 0.095431, 0.5}, {0, 0.610739, 0.389261}, {0, 0.5, 0.345431}, {0, 0.654569, 0.5}, {0, 0.610739, 0.610739}, {0, 0.389261, 0.389261}, {0, 0.5, 0.654569}, {0, 0.345431, 0.5}, {0, 0.389261, 0.610739}, {0, 0.804047, 0.0709532}, {0, 0.789786, 0.210214}, {0, 0.929047, 0.195953}, {0, 0.789786, 0.789786}, {0, 0.804047, 0.929047}, {0, 0.0709532, 0.195953}, {0, 0.210214, 0.210214}, {0, 0.929047, 0.804047}, {0, 0.195953, 0.0709532}, {0, 0.210214, 0.789786}, {0, 0.0709532, 0.804047}, {0, 0.195953, 0.929047}, {0, 0.0709532, 0.0709532}, {0, 0.929047, 0.0709532}, {0, 0.929047, 0.929047}, {0, 0.0709532, 0.929047}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {1, 0.860678, 0.735678}, {1, 0.76518, 0.610611}, {1, 0.904501, 0.624932}, {1, 0.624932, 0.904501}, {1, 0.610611, 0.76518}, {1, 0.735678, 0.860678}, {1, 0.0953701, 0.624939}, {1, 0.234631, 0.610678}, {1, 0.139261, 0.735739}, {1, 0.735739, 0.139261}, {1, 0.610678, 0.234631}, {1, 0.624939, 0.0953701}, {1, 0.904501, 0.374932}, {1, 0.76524, 0.389193}, {1, 0.860739, 0.264261}, {1, 0.264261, 0.860739}, {1, 0.389193, 0.76524}, {1, 0.374932, 0.904501}, {1, 0.374939, 0.0953701}, {1, 0.3892, 0.234631}, {1, 0.264261, 0.139261}, {1, 0.139261, 0.264261}, {1, 0.234631, 0.3892}, {1, 0.0953701, 0.374939}, {1, 0.904501, 0.499932}, {1, 0.499932, 0.904501}, {1, 0.0953701, 0.499939}, {1, 0.499939, 0.0953701}, {1, 0.610131, 0.610131}, {1, 0.499385, 0.653954}, {1, 0.653954, 0.499385}, {1, 0.610191, 0.388713}, {1, 0.388713, 0.610191}, {1, 0.499391, 0.344822}, {1, 0.344822, 0.499391}, {1, 0.388713, 0.388713}, {1, 0.929037, 0.804037}, {1, 0.789715, 0.789715}, {1, 0.804037, 0.929037}, {1, 0.210214, 0.789786}, {1, 0.0709532, 0.804047}, {1, 0.804047, 0.0709532}, {1, 0.789786, 0.210214}, {1, 0.195953, 0.929047}, {1, 0.929047, 0.195953}, {1, 0.0709532, 0.195953}, {1, 0.210214, 0.210214}, {1, 0.195953, 0.0709532}, {1, 0.0709532, 0.929047}, {1, 0.929047, 0.0709532}, {1, 0.929037, 0.929037}, {1, 0.0709532, 0.0709532}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}, {0.403787, 0.502163, 0.604301}, {0.59395, 0.335588, 0.588613}, {0.57425, 0.502163, 0.604301}, {0.533055, 0.519268, 0.479373}, {0.723218, 0.352693, 0.463685}, {0.552756, 0.352693, 0.463685}, {0.907719, 0.227933, 0.0932632}, {0.768458, 0.242194, 0.0932632}, {0.812288, 0.352933, 0.0932632}, {0.462839, 0.167794, 0.544306}, {0.592107, 0.184899, 0.419378}, {0.423487, 0.335588, 0.41815}, {0.552756, 0.352693, 0.293222}, {0.462839, 0.167794, 0.373844}, {0.610874, 0.139383, 0.904569}, {0.500135, 0.0955798, 0.904569}, {0.141927, 0.0709532, 0.0709532}, {0.0709735, 0.0709532, 0.141906}, {0.0709532, 0.141906, 0.0709532}, {0.307175, 0.417794, 0.123844}, {0.351005, 0.307055, 0.123844}, {0.095431, 0.5, 0.095431}, {0.139261, 0.389261, 0.095431}, {0.211744, 0.417794, 0.219275}, {0.633302, 0.167794, 0.544306}, {0.907719, 0.173886, 0.164216}, {0.907719, 0.242194, 0.232524}, {0.0709532, 0.210234, 0.860739}, {0.141927, 0.0709735, 0.929047}, {0.0709735, 0.139261, 0.789786}, {0.0709735, 0.0709532, 0.858094}, {0.0709532, 0.141927, 0.929047}, {0.210336, 0.0709735, 0.860739}, {0.139383, 0.139261, 0.721478}, {0.742945, 0.167794, 0.655045}, {0.786897, 0.167794, 0.544306}, {0.904691, 0.139261, 0.610739}, {0.882206, 0.307055, 0.655045}, {0.860739, 0.139261, 0.721478}, {0.442043, 0.585464, 0.809994}, {0.461744, 0.418889, 0.794306}, {0.632206, 0.418889, 0.794306}, {0.907719, 0.352872, 0.188633}, {0.836765, 0.173886, 0.0932632}, {0.549357, 0.674254, 0.636624}, {0.73952, 0.678141, 0.450474}, {0.57425, 0.672625, 0.433838}, {0.723218, 0.523156, 0.293222}, {0.698326, 0.524784, 0.496008}, {0.721478, 0.860739, 0.860739}, {0.610739, 0.904691, 0.860739}, {0.0709735, 0.139261, 0.210214}, {0.882206, 0.263164, 0.544245}, {0.882206, 0.417246, 0.543759}, {0.768458, 0.102933, 0.232524}, {0.907719, 0.102933, 0.218263}, {0.836765, 0.102933, 0.164216}, {0.73952, 0.507679, 0.620936}, {0.929047, 0.929037, 0.858083}, {0.403787, 0.672625, 0.433838}, {0.59395, 0.676512, 0.247688}, {0.552756, 0.523156, 0.293222}, {0.307175, 0.417929, 0.794306}, {0.351005, 0.307176, 0.794306}, {0.095431, 0.904569, 0.5}, {0.500135, 0.095431, 0.095431}, {0.858094, 0.929047, 0.929047}, {0.5, 0.904691, 0.904569}, {0.929047, 0.858083, 0.929037}, {0.423487, 0.50605, 0.41815}, {0.904569, 0.904501, 0.499932}, {0.139261, 0.860739, 0.278522}, {0.139261, 0.904569, 0.389261}, {0.351005, 0.838256, 0.263105}, {0.211744, 0.742825, 0.373844}, {0.211744, 0.698995, 0.263105}, {0.141906, 0.929047, 0.929047}, {0.210214, 0.860739, 0.929047}, {0.904569, 0.500068, 0.904501}, {0.745703, 0.184899, 0.419378}, {0.904691, 0.0953701, 0.499939}, {0.841012, 0.280269, 0.419318}, {0.607314, 0.59098, 0.82663}, {0.461879, 0.167794, 0.698875}, {0.572483, 0.167794, 0.655045}, {0.882206, 0.417726, 0.698808}, {0.0709532, 0.789786, 0.139261}, {0.139261, 0.721478, 0.139261}, {0.882206, 0.588195, 0.219214}, {0.841012, 0.434839, 0.264749}, {0.882206, 0.587709, 0.373296}, {0.841012, 0.434352, 0.418831}, {0.389261, 0.904569, 0.139261}, {0.5, 0.904569, 0.095431}, {0.389383, 0.095431, 0.139261}, {0.278522, 0.860739, 0.139261}, {0.287474, 0.834369, 0.559994}, {0.331304, 0.834369, 0.670734}, {0.192043, 0.695108, 0.670734}, {0.139261, 0.860739, 0.721478}, {0.095431, 0.860739, 0.610739}, {0.139261, 0.278644, 0.860739}, {0.278644, 0.139383, 0.860739}, {0.139261, 0.389383, 0.904569}, {0.192043, 0.584369, 0.559994}, {0.192043, 0.584369, 0.714563}, {0.211744, 0.417794, 0.698875}, {0.211744, 0.417794, 0.544306}, {0.0955798, 0.139261, 0.610739}, {0.351005, 0.698995, 0.123844}, {0.461744, 0.742825, 0.123844}, {0.461744, 0.838256, 0.219275}, {0.929047, 0.141906, 0.0709532}, {0.858094, 0.929047, 0.0709532}, {0.0955798, 0.095431, 0.5}, {0.307323, 0.167794, 0.544306}, {0.211744, 0.263225, 0.544306}, {0.211744, 0.307055, 0.655045}, {0.461744, 0.263225, 0.123844}, {0.351126, 0.167794, 0.263105}, {0.278644, 0.139261, 0.139261}, {0.461879, 0.167794, 0.219275}, {0.929047, 0.929047, 0.141906}, {0.860739, 0.860678, 0.721417}, {0.904569, 0.860678, 0.610678}, {0.442043, 0.834369, 0.559994}, {0.718053, 0.839885, 0.687369}, {0.857314, 0.700563, 0.687308}, {0.761883, 0.839885, 0.57663}, {0.857314, 0.744386, 0.576562}, {0.904569, 0.499939, 0.0953701}, {0.786775, 0.588256, 0.123844}, {0.745581, 0.434899, 0.169378}, {0.701751, 0.32416, 0.169378}, {0.748731, 0.287832, 0.262642}, {0.857314, 0.589817, 0.731131}, {0.857314, 0.589337, 0.576082}, {0.572483, 0.307055, 0.123844}, {0.461744, 0.417794, 0.123844}, {0.591012, 0.434899, 0.169378}, {0.929047, 0.858094, 0.0709532}, {0.882206, 0.713256, 0.123844}, {0.882206, 0.767303, 0.194797}, {0.882206, 0.698995, 0.263105}, {0.351126, 0.167794, 0.433567}, {0.351126, 0.167794, 0.655045}, {0.211744, 0.417794, 0.373844}, {0.423487, 0.50605, 0.247688}, {0.211744, 0.588256, 0.373844}, {0.929047, 0.0709532, 0.141906}, {0.287474, 0.584504, 0.809994}, {0.929047, 0.0709532, 0.858094}, {0.192043, 0.738938, 0.559994}, {0.461744, 0.838256, 0.373844}, {0.632206, 0.838256, 0.373844}, {0.139261, 0.210214, 0.0709532}, {0.210234, 0.139261, 0.0709532}, {0.789786, 0.0709735, 0.860739}, {0.721478, 0.139383, 0.860739}, {0.610739, 0.904569, 0.139261}, {0.721478, 0.860739, 0.139261}, {0.0709532, 0.929047, 0.141906}, {0.095431, 0.500135, 0.904569}, {0.442043, 0.834369, 0.714563}, {0.461744, 0.263374, 0.794306}, {0.860739, 0.278644, 0.860739}, {0.929047, 0.210234, 0.860739}, {0.211744, 0.307055, 0.263105}, {0.139261, 0.610739, 0.095431}, {0.211744, 0.588256, 0.219275}, {0.632206, 0.588256, 0.123844}, {0.461744, 0.588256, 0.123844}, {0.139383, 0.139261, 0.278522}, {0.139261, 0.278522, 0.139261}, {0.607314, 0.839885, 0.57663}, {0.904569, 0.610813, 0.860678}, {0.0709532, 0.858094, 0.929047}, {0.331304, 0.695108, 0.809994}, {0.139261, 0.721478, 0.860739}, {0.278522, 0.860739, 0.860739}, {0.0709532, 0.929047, 0.858094}, {0.718053, 0.700624, 0.82663}, {0.860739, 0.721417, 0.860678}, {0.761883, 0.59002, 0.82663}, {0.742945, 0.307176, 0.794306}, {0.786775, 0.417929, 0.794306}, {0.860739, 0.929037, 0.789776}, {0.389261, 0.904691, 0.860739}, {0.307175, 0.588256, 0.123844}, {0.789786, 0.860739, 0.0709532}, {0.0709532, 0.858094, 0.0709532}, {0.742945, 0.838256, 0.263105}, {0.632206, 0.742825, 0.123844}, {0.742945, 0.698995, 0.123844}, {0.841012, 0.32416, 0.308639}, {0.610874, 0.139261, 0.095431}, {0.782719, 0.102933, 0.0932632}, {0.860739, 0.789776, 0.929037}, {0.929047, 0.141927, 0.929047}, {0.811253, 0.838256, 0.194797}, {0.858094, 0.0709735, 0.929047}, {0.607314, 0.839885, 0.731199}, {0.607314, 0.744576, 0.82663}, {0.442043, 0.73906, 0.809994}, {0.389383, 0.0955798, 0.860739}, {0.141906, 0.929047, 0.0709532}, {0.0709532, 0.860739, 0.210214}, {0.929047, 0.860739, 0.210214}, {0.860739, 0.860739, 0.278522}, {0.139383, 0.095431, 0.389261}, {0.211744, 0.263225, 0.373844}, {0.139261, 0.789786, 0.929047}, {0.789786, 0.929047, 0.860739}, {0.904691, 0.139261, 0.389261}, {0.701751, 0.184899, 0.308639}, {0.929047, 0.139261, 0.789786}, {0.786775, 0.838256, 0.373844}, {0.875, 0.0709532, 0.0709532}, {0.210214, 0.929047, 0.139261}, {0.572483, 0.838256, 0.263105}, {0.591147, 0.184899, 0.264809}, {0.904569, 0.389396, 0.860739}, {0.572483, 0.307176, 0.794306}, {0.331304, 0.834369, 0.449255}, {0.139261, 0.929047, 0.789786}, {0.860739, 0.789786, 0.0709532}, {0.904569, 0.860739, 0.389261}, {0.139261, 0.610739, 0.904569}, {0.812409, 0.102933, 0.343263}, {0.657854, 0.102933, 0.188694}, {0.857314, 0.700624, 0.465891}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 48
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{6, 8, 11}, {8, 9, 12}, {9, 10, 13}, {10, 7, 14}, {7, 15, 18}, {15, 16, 19}, {16, 17, 20}, {17, 3, 21}, {3, 22, 25}, {22, 23, 26}, {23, 24, 27}, {24, 2, 28}, {2, 29, 32}, {29, 30, 33}, {30, 31, 34}, {31, 6, 35}, {0, 36, 39}, {36, 37, 40}, {37, 38, 41}, {38, 4, 42}, {4, 43, 46}, {43, 44, 47}, {44, 45, 48}, {45, 5, 49}, {5, 50, 53}, {50, 51, 54}, {51, 52, 55}, {52, 1, 56}, {1, 57, 60}, {57, 58, 61}, {58, 59, 62}, {59, 0, 63}, {2, 64, 67}, {64, 65, 68}, {65, 66, 69}, {66, 0, 70}, {6, 71, 74}, {71, 72, 75}, {72, 73, 76}, {73, 4, 77}, {7, 78, 81}, {78, 79, 82}, {79, 80, 83}, {80, 5, 84}, {3, 85, 88}, {85, 86, 89}, {86, 87, 90}, {87, 1, 91}}
]
+ ]
(not_ghost:_triangle_6) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 240
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{93, 97, 71, 105, 106, 107}, {93, 8, 98, 108, 109, 110}, {94, 78, 99, 111, 112, 113}, {43, 95, 100, 114, 115, 116}, {94, 98, 10, 117, 118, 119}, {73, 97, 95, 120, 121, 122}, {45, 100, 96, 123, 124, 125}, {80, 96, 99, 126, 127, 128}, {71, 97, 72, 106, 129, 75}, {78, 79, 99, 82, 130, 112}, {8, 9, 98, 12, 131, 109}, {43, 100, 44, 116, 132, 47}, {72, 97, 73, 129, 120, 76}, {9, 10, 98, 13, 118, 131}, {79, 80, 99, 83, 128, 130}, {44, 100, 45, 132, 123, 48}, {93, 92, 97, 133, 134, 105}, {93, 98, 92, 110, 135, 133}, {94, 92, 98, 136, 135, 117}, {92, 95, 97, 137, 121, 134}, {94, 99, 92, 113, 138, 136}, {92, 100, 95, 139, 115, 137}, {92, 99, 96, 138, 127, 140}, {92, 96, 100, 140, 124, 139}, {93, 71, 101, 107, 141, 142}, {93, 101, 8, 142, 143, 108}, {94, 102, 78, 144, 145, 111}, {43, 103, 95, 146, 147, 114}, {94, 10, 102, 119, 148, 144}, {73, 95, 103, 122, 147, 149}, {45, 96, 104, 125, 150, 151}, {80, 104, 96, 152, 150, 126}, {4, 73, 103, 77, 149, 153}, {6, 101, 71, 154, 141, 74}, {7, 102, 10, 155, 148, 14}, {7, 78, 102, 81, 145, 155}, {6, 8, 101, 11, 143, 154}, {5, 104, 80, 156, 152, 84}, {4, 103, 43, 153, 146, 46}, {5, 45, 104, 49, 151, 156}, {15, 162, 158, 170, 171, 172}, {22, 163, 159, 173, 174, 175}, {8, 164, 160, 176, 177, 178}, {29, 165, 161, 179, 180, 181}, {10, 158, 164, 182, 183, 184}, {31, 160, 165, 185, 186, 187}, {17, 159, 162, 188, 189, 190}, {24, 161, 163, 191, 192, 193}, {22, 23, 163, 26, 194, 173}, {15, 16, 162, 19, 195, 170}, {29, 30, 165, 33, 196, 179}, {8, 9, 164, 12, 197, 176}, {16, 17, 162, 20, 190, 195}, {23, 24, 163, 27, 193, 194}, {9, 10, 164, 13, 184, 197}, {30, 31, 165, 34, 187, 196}, {158, 162, 157, 171, 198, 199}, {159, 157, 162, 200, 198, 189}, {159, 163, 157, 174, 201, 200}, {161, 157, 163, 202, 201, 192}, {158, 157, 164, 199, 203, 183}, {160, 164, 157, 177, 203, 204}, {160, 157, 165, 204, 205, 186}, {161, 165, 157, 180, 205, 202}, {15, 158, 167, 172, 206, 207}, {22, 159, 166, 175, 208, 209}, {8, 160, 169, 178, 210, 211}, {29, 161, 168, 181, 212, 213}, {10, 167, 158, 214, 206, 182}, {31, 169, 160, 215, 210, 185}, {17, 166, 159, 216, 208, 188}, {24, 168, 161, 217, 212, 191}, {2, 168, 24, 218, 217, 28}, {3, 166, 17, 219, 216, 21}, {6, 169, 31, 220, 215, 35}, {7, 167, 10, 221, 214, 14}, {7, 15, 167, 18, 207, 221}, {3, 22, 166, 25, 209, 219}, {6, 8, 169, 11, 211, 220}, {2, 29, 168, 32, 213, 218}, {50, 227, 223, 235, 236, 237}, {57, 228, 224, 238, 239, 240}, {43, 229, 225, 241, 242, 243}, {36, 230, 226, 244, 245, 246}, {45, 223, 229, 247, 248, 249}, {38, 225, 230, 250, 251, 252}, {52, 224, 227, 253, 254, 255}, {59, 226, 228, 256, 257, 258}, {57, 58, 228, 61, 259, 238}, {50, 51, 227, 54, 260, 235}, {36, 37, 230, 40, 261, 244}, {43, 44, 229, 47, 262, 241}, {51, 52, 227, 55, 255, 260}, {58, 59, 228, 62, 258, 259}, {44, 45, 229, 48, 249, 262}, {37, 38, 230, 41, 252, 261}, {223, 227, 222, 236, 263, 264}, {224, 222, 227, 265, 263, 254}, {224, 228, 222, 239, 266, 265}, {222, 228, 226, 266, 257, 267}, {223, 222, 229, 264, 268, 248}, {222, 225, 229, 269, 242, 268}, {222, 230, 225, 270, 251, 269}, {222, 226, 230, 267, 245, 270}, {50, 223, 232, 237, 271, 272}, {57, 224, 231, 240, 273, 274}, {43, 225, 234, 243, 275, 276}, {36, 226, 233, 246, 277, 278}, {45, 232, 223, 279, 271, 247}, {38, 234, 225, 280, 275, 250}, {52, 231, 224, 281, 273, 253}, {59, 233, 226, 282, 277, 256}, {0, 233, 59, 283, 282, 63}, {1, 231, 52, 284, 281, 56}, {4, 234, 38, 285, 280, 42}, {5, 232, 45, 286, 279, 49}, {5, 50, 232, 53, 272, 286}, {1, 57, 231, 60, 274, 284}, {4, 43, 234, 46, 276, 285}, {0, 36, 233, 39, 278, 283}, {85, 288, 292, 300, 301, 302}, {22, 293, 288, 303, 304, 305}, {57, 290, 294, 306, 307, 308}, {64, 295, 289, 309, 310, 311}, {24, 289, 293, 312, 313, 314}, {87, 292, 290, 315, 316, 317}, {66, 291, 295, 318, 319, 320}, {59, 294, 291, 321, 322, 323}, {85, 292, 86, 302, 324, 89}, {22, 23, 293, 26, 325, 303}, {57, 294, 58, 308, 326, 61}, {64, 65, 295, 68, 327, 309}, {86, 292, 87, 324, 315, 90}, {23, 24, 293, 27, 314, 325}, {65, 66, 295, 69, 320, 327}, {58, 294, 59, 326, 321, 62}, {288, 293, 287, 304, 328, 329}, {288, 287, 292, 329, 330, 301}, {289, 287, 293, 331, 328, 313}, {290, 292, 287, 316, 330, 332}, {289, 295, 287, 310, 333, 331}, {290, 287, 294, 332, 334, 307}, {291, 294, 287, 322, 334, 335}, {291, 287, 295, 335, 333, 319}, {22, 288, 296, 305, 336, 337}, {85, 296, 288, 338, 336, 300}, {57, 298, 290, 339, 340, 306}, {64, 289, 297, 311, 341, 342}, {87, 290, 298, 317, 340, 343}, {24, 297, 289, 344, 341, 312}, {59, 291, 299, 323, 345, 346}, {66, 299, 291, 347, 345, 318}, {1, 87, 298, 91, 343, 348}, {2, 297, 24, 349, 344, 28}, {3, 296, 85, 350, 338, 88}, {3, 22, 296, 25, 337, 350}, {1, 298, 57, 348, 339, 60}, {2, 64, 297, 67, 342, 349}, {0, 59, 299, 63, 346, 351}, {0, 299, 66, 351, 347, 70}, {64, 353, 357, 365, 366, 367}, {29, 358, 353, 368, 369, 370}, {71, 359, 354, 371, 372, 373}, {36, 355, 360, 374, 375, 376}, {31, 354, 358, 377, 378, 379}, {66, 357, 355, 380, 381, 382}, {38, 360, 356, 383, 384, 385}, {73, 356, 359, 386, 387, 388}, {64, 357, 65, 367, 389, 68}, {71, 72, 359, 75, 390, 371}, {29, 30, 358, 33, 391, 368}, {36, 360, 37, 376, 392, 40}, {65, 357, 66, 389, 380, 69}, {30, 31, 358, 34, 379, 391}, {72, 73, 359, 76, 388, 390}, {37, 360, 38, 392, 383, 41}, {353, 352, 357, 393, 394, 366}, {353, 358, 352, 369, 395, 393}, {354, 352, 358, 396, 395, 378}, {355, 357, 352, 381, 394, 397}, {354, 359, 352, 372, 398, 396}, {355, 352, 360, 397, 399, 375}, {356, 352, 359, 400, 398, 387}, {356, 360, 352, 384, 399, 400}, {64, 361, 353, 401, 402, 365}, {29, 353, 361, 370, 402, 403}, {71, 354, 362, 373, 404, 405}, {36, 363, 355, 406, 407, 374}, {31, 362, 354, 408, 404, 377}, {66, 355, 363, 382, 407, 409}, {38, 356, 364, 385, 410, 411}, {73, 364, 356, 412, 410, 386}, {0, 66, 363, 70, 409, 413}, {2, 361, 64, 414, 401, 67}, {6, 362, 31, 415, 408, 35}, {6, 71, 362, 74, 405, 415}, {2, 29, 361, 32, 403, 414}, {4, 364, 73, 416, 412, 77}, {0, 363, 36, 413, 406, 39}, {4, 38, 364, 42, 411, 416}, {15, 418, 423, 430, 431, 432}, {78, 422, 418, 433, 434, 435}, {50, 424, 420, 436, 437, 438}, {85, 419, 425, 439, 440, 441}, {17, 423, 419, 442, 443, 444}, {80, 420, 422, 445, 446, 447}, {87, 425, 421, 448, 449, 450}, {52, 421, 424, 451, 452, 453}, {15, 423, 16, 432, 454, 19}, {78, 79, 422, 82, 455, 433}, {50, 51, 424, 54, 456, 436}, {85, 425, 86, 441, 457, 89}, {79, 80, 422, 83, 447, 455}, {16, 423, 17, 454, 442, 20}, {86, 425, 87, 457, 448, 90}, {51, 52, 424, 55, 453, 456}, {417, 418, 422, 458, 434, 459}, {417, 423, 418, 460, 431, 458}, {419, 423, 417, 443, 460, 461}, {420, 417, 422, 462, 459, 446}, {419, 417, 425, 461, 463, 440}, {420, 424, 417, 437, 464, 462}, {421, 417, 424, 465, 464, 452}, {421, 425, 417, 449, 463, 465}, {15, 426, 418, 466, 467, 430}, {78, 418, 426, 435, 467, 468}, {50, 420, 428, 438, 469, 470}, {85, 427, 419, 471, 472, 439}, {80, 428, 420, 473, 469, 445}, {17, 419, 427, 444, 472, 474}, {52, 429, 421, 475, 476, 451}, {87, 421, 429, 450, 476, 477}, {5, 428, 80, 478, 473, 84}, {3, 17, 427, 21, 474, 479}, {7, 78, 426, 81, 468, 480}, {7, 426, 15, 480, 466, 18}, {5, 50, 428, 53, 470, 478}, {3, 427, 85, 479, 471, 88}, {1, 429, 52, 481, 475, 56}, {1, 87, 429, 91, 477, 481}}
]
+ ]
(not_ghost:_tetrahedron_10) [
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_10
+ size : 341
+ nb_component : 10
+ allocated size : 2000
+ memory size : 78kB
+ values : {{484, 483, 485, 489, 491, 493, 492, 496, 494, 495}, {87, 290, 490, 292, 317, 498, 497, 315, 316, 499}, {222, 484, 489, 486, 500, 496, 501, 504, 502, 503}, {96, 229, 45, 100, 505, 249, 125, 124, 506, 123}, {59, 0, 233, 299, 63, 283, 282, 346, 351, 507}, {0, 363, 233, 299, 413, 508, 283, 351, 509, 507}, {486, 295, 291, 357, 510, 319, 511, 514, 512, 513}, {484, 222, 489, 485, 500, 501, 496, 492, 515, 495}, {87, 429, 421, 490, 477, 476, 450, 497, 516, 517}, {103, 356, 234, 364, 518, 520, 519, 522, 410, 521}, {356, 103, 234, 225, 518, 519, 520, 524, 523, 275}, {43, 103, 225, 234, 146, 523, 243, 276, 519, 275}, {223, 227, 485, 420, 236, 526, 525, 529, 527, 528}, {483, 92, 484, 485, 530, 531, 491, 493, 532, 492}, {87, 421, 425, 490, 450, 449, 448, 497, 517, 533}, {298, 87, 290, 490, 343, 317, 340, 534, 497, 498}, {482, 483, 488, 489, 535, 537, 536, 539, 494, 538}, {94, 10, 158, 98, 119, 182, 540, 117, 118, 541}, {355, 363, 233, 36, 407, 508, 542, 374, 406, 278}, {485, 420, 424, 417, 528, 437, 543, 544, 462, 464}, {231, 224, 52, 490, 273, 253, 281, 547, 545, 546}, {483, 482, 485, 489, 535, 548, 493, 494, 539, 495}, {167, 15, 7, 426, 207, 18, 221, 549, 466, 480}, {483, 487, 488, 489, 550, 551, 537, 494, 552, 538}, {484, 92, 97, 95, 531, 134, 553, 554, 137, 121}, {29, 165, 30, 358, 179, 196, 33, 368, 555, 391}, {228, 294, 58, 59, 556, 326, 259, 258, 321, 62}, {102, 10, 7, 167, 148, 14, 155, 557, 214, 221}, {9, 10, 98, 164, 13, 118, 131, 197, 184, 558}, {78, 102, 7, 426, 145, 155, 81, 468, 559, 480}, {483, 484, 487, 489, 491, 560, 550, 494, 496, 552}, {16, 423, 162, 17, 454, 561, 195, 20, 442, 190}, {353, 161, 358, 487, 562, 563, 369, 566, 564, 565}, {93, 101, 8, 169, 142, 143, 108, 568, 567, 211}, {78, 422, 79, 99, 433, 455, 82, 112, 569, 130}, {485, 227, 489, 424, 526, 570, 495, 543, 571, 572}, {482, 92, 483, 485, 573, 530, 535, 548, 532, 493}, {223, 222, 229, 484, 264, 268, 248, 575, 500, 574}, {422, 420, 485, 417, 446, 528, 576, 459, 462, 544}, {64, 297, 353, 289, 342, 577, 365, 311, 341, 578}, {101, 6, 8, 169, 154, 11, 143, 567, 220, 211}, {425, 488, 489, 417, 579, 538, 580, 463, 581, 582}, {163, 161, 24, 293, 192, 191, 193, 584, 583, 314}, {228, 294, 59, 226, 556, 321, 258, 257, 585, 256}, {161, 289, 24, 293, 586, 312, 191, 583, 313, 314}, {165, 483, 160, 354, 587, 588, 186, 591, 589, 590}, {103, 356, 95, 225, 518, 592, 147, 523, 524, 593}, {356, 95, 359, 73, 592, 594, 387, 386, 122, 388}, {352, 483, 359, 484, 595, 596, 398, 598, 491, 597}, {103, 43, 4, 234, 146, 46, 153, 519, 276, 285}, {230, 356, 38, 225, 599, 385, 252, 251, 524, 250}, {161, 289, 293, 487, 586, 313, 583, 564, 600, 601}, {161, 487, 293, 163, 564, 601, 583, 192, 602, 584}, {429, 87, 298, 490, 477, 343, 603, 516, 497, 534}, {364, 38, 234, 4, 411, 280, 521, 416, 42, 285}, {22, 296, 3, 166, 337, 350, 25, 209, 604, 219}, {230, 37, 360, 36, 261, 392, 605, 244, 40, 376}, {356, 230, 360, 484, 599, 605, 384, 608, 606, 607}, {22, 23, 293, 163, 26, 325, 303, 173, 194, 584}, {294, 486, 291, 226, 609, 511, 322, 585, 610, 611}, {294, 228, 486, 226, 556, 612, 609, 585, 257, 610}, {3, 17, 166, 427, 21, 216, 219, 479, 474, 613}, {364, 103, 4, 234, 522, 153, 416, 521, 519, 285}, {158, 15, 418, 162, 172, 430, 614, 171, 170, 615}, {15, 423, 418, 162, 432, 431, 430, 170, 561, 615}, {157, 483, 160, 165, 616, 588, 204, 205, 587, 186}, {482, 158, 418, 162, 617, 614, 618, 619, 171, 615}, {423, 482, 418, 162, 620, 618, 431, 561, 619, 615}, {425, 488, 292, 489, 579, 622, 621, 580, 538, 623}, {290, 489, 490, 292, 624, 625, 498, 316, 623, 499}, {222, 223, 485, 484, 264, 525, 515, 500, 575, 492}, {363, 0, 66, 299, 413, 70, 409, 509, 351, 347}, {482, 422, 485, 417, 626, 576, 548, 627, 459, 544}, {486, 290, 287, 489, 628, 332, 629, 503, 624, 630}, {296, 3, 166, 427, 350, 219, 604, 631, 479, 613}, {489, 290, 287, 292, 624, 332, 630, 623, 316, 330}, {488, 85, 427, 419, 632, 471, 633, 634, 439, 472}, {425, 488, 419, 85, 579, 634, 440, 441, 632, 439}, {15, 16, 423, 162, 19, 454, 432, 170, 195, 561}, {65, 64, 357, 295, 68, 367, 389, 327, 309, 512}, {222, 484, 486, 226, 500, 502, 504, 267, 635, 610}, {356, 484, 95, 225, 608, 554, 592, 524, 636, 593}, {352, 484, 486, 487, 598, 502, 637, 639, 560, 638}, {230, 222, 484, 225, 270, 500, 606, 251, 269, 636}, {294, 228, 58, 57, 556, 259, 326, 308, 238, 61}, {352, 483, 484, 487, 595, 491, 598, 639, 550, 560}, {23, 163, 24, 293, 194, 193, 27, 325, 584, 314}, {429, 231, 1, 52, 640, 284, 481, 475, 281, 56}, {228, 222, 486, 226, 266, 504, 612, 257, 267, 610}, {482, 422, 417, 418, 626, 459, 627, 618, 434, 458}, {489, 425, 490, 292, 580, 533, 625, 623, 621, 499}, {483, 92, 97, 484, 530, 134, 641, 491, 531, 553}, {50, 232, 5, 428, 272, 286, 53, 470, 642, 478}, {483, 165, 358, 354, 587, 555, 643, 589, 591, 378}, {157, 483, 487, 488, 616, 550, 644, 645, 537, 551}, {425, 488, 417, 419, 579, 581, 463, 440, 634, 461}, {222, 230, 484, 226, 270, 606, 500, 267, 245, 635}, {299, 363, 233, 291, 509, 508, 507, 345, 646, 647}, {103, 356, 73, 95, 518, 386, 149, 147, 592, 122}, {229, 44, 45, 100, 262, 48, 249, 506, 132, 123}, {356, 230, 38, 360, 599, 252, 385, 384, 605, 383}, {104, 223, 45, 96, 648, 247, 151, 150, 649, 125}, {22, 159, 293, 288, 175, 650, 303, 305, 651, 304}, {352, 356, 360, 484, 400, 384, 399, 598, 608, 607}, {2, 361, 168, 29, 414, 652, 218, 32, 403, 213}, {484, 483, 359, 97, 491, 596, 597, 553, 641, 653}, {483, 157, 160, 164, 616, 204, 588, 654, 203, 177}, {92, 484, 100, 95, 531, 655, 139, 137, 554, 115}, {223, 420, 96, 104, 529, 656, 649, 648, 657, 150}, {85, 425, 292, 86, 441, 621, 302, 89, 457, 324}, {355, 352, 486, 357, 397, 637, 658, 381, 394, 514}, {353, 289, 487, 357, 578, 600, 566, 366, 659, 660}, {66, 295, 357, 291, 320, 512, 380, 318, 319, 513}, {488, 487, 287, 489, 551, 662, 661, 538, 552, 630}, {486, 294, 287, 290, 609, 334, 629, 628, 307, 332}, {227, 223, 485, 222, 236, 525, 526, 263, 264, 515}, {355, 486, 226, 291, 658, 610, 663, 664, 511, 611}, {43, 103, 95, 225, 146, 147, 114, 243, 523, 593}, {356, 230, 484, 225, 599, 606, 608, 524, 251, 636}, {64, 295, 289, 357, 309, 310, 311, 367, 512, 659}, {157, 482, 162, 158, 665, 619, 198, 199, 617, 171}, {223, 229, 45, 96, 248, 249, 247, 649, 505, 125}, {222, 229, 484, 225, 268, 574, 500, 269, 242, 636}, {422, 78, 418, 99, 433, 435, 434, 569, 112, 666}, {422, 80, 79, 99, 447, 83, 455, 569, 128, 130}, {159, 22, 293, 163, 175, 303, 650, 174, 173, 584}, {101, 362, 71, 6, 667, 405, 141, 154, 415, 74}, {93, 483, 354, 160, 668, 589, 669, 670, 588, 590}, {355, 486, 291, 357, 658, 511, 664, 381, 514, 513}, {362, 101, 169, 6, 667, 567, 671, 415, 154, 220}, {94, 482, 418, 99, 672, 618, 673, 113, 674, 666}, {488, 482, 489, 417, 536, 539, 538, 581, 627, 582}, {484, 356, 95, 359, 608, 592, 554, 597, 387, 594}, {363, 355, 233, 291, 407, 542, 508, 646, 664, 647}, {485, 92, 96, 99, 532, 140, 675, 676, 138, 127}, {78, 94, 418, 99, 111, 673, 435, 112, 113, 666}, {92, 483, 97, 93, 530, 641, 134, 133, 668, 105}, {484, 95, 97, 359, 554, 121, 553, 597, 594, 653}, {72, 71, 97, 359, 75, 106, 129, 390, 371, 653}, {94, 482, 99, 92, 672, 674, 113, 136, 573, 138}, {102, 167, 7, 426, 557, 221, 155, 559, 549, 480}, {10, 164, 158, 98, 184, 183, 182, 118, 558, 541}, {482, 422, 99, 485, 626, 569, 674, 548, 576, 676}, {15, 158, 426, 167, 172, 677, 466, 207, 206, 549}, {92, 482, 99, 485, 573, 674, 138, 532, 548, 676}, {158, 15, 426, 418, 172, 466, 677, 614, 430, 467}, {38, 356, 234, 225, 385, 520, 280, 250, 524, 275}, {94, 482, 158, 418, 672, 617, 540, 673, 618, 614}, {364, 356, 234, 38, 410, 520, 521, 411, 385, 280}, {93, 160, 8, 98, 670, 178, 108, 110, 678, 109}, {355, 233, 226, 36, 542, 277, 663, 374, 278, 246}, {160, 93, 8, 169, 670, 108, 178, 210, 568, 211}, {227, 223, 50, 420, 236, 237, 235, 527, 529, 438}, {363, 0, 233, 36, 413, 283, 508, 406, 39, 278}, {486, 295, 287, 291, 510, 333, 629, 511, 319, 335}, {59, 294, 291, 226, 321, 322, 323, 256, 585, 611}, {66, 363, 299, 291, 409, 509, 347, 318, 646, 345}, {486, 352, 487, 357, 637, 639, 638, 514, 394, 660}, {295, 486, 487, 357, 510, 638, 679, 512, 514, 660}, {296, 22, 288, 166, 337, 305, 336, 604, 209, 680}, {361, 64, 2, 297, 401, 67, 414, 681, 342, 349}, {95, 97, 359, 73, 121, 653, 594, 122, 120, 388}, {423, 482, 417, 418, 620, 627, 460, 431, 618, 458}, {65, 295, 357, 66, 327, 512, 389, 69, 320, 380}, {97, 72, 359, 73, 129, 390, 653, 120, 76, 388}, {420, 223, 96, 485, 529, 649, 656, 528, 525, 675}, {159, 488, 293, 288, 682, 683, 650, 651, 684, 304}, {31, 165, 160, 354, 187, 186, 185, 377, 591, 590}, {484, 486, 487, 489, 502, 638, 560, 496, 503, 552}, {486, 295, 487, 287, 510, 679, 638, 629, 333, 662}, {59, 233, 226, 291, 282, 277, 256, 323, 647, 611}, {233, 355, 226, 291, 542, 663, 277, 647, 664, 611}, {425, 421, 489, 490, 449, 685, 580, 533, 517, 625}, {288, 488, 292, 85, 684, 622, 301, 300, 632, 302}, {421, 425, 489, 417, 449, 580, 685, 465, 463, 582}, {294, 228, 57, 290, 556, 238, 308, 307, 686, 306}, {165, 31, 358, 354, 187, 379, 555, 591, 377, 378}, {103, 356, 364, 73, 518, 410, 522, 149, 386, 412}, {352, 483, 358, 354, 595, 643, 395, 396, 589, 378}, {22, 159, 288, 166, 175, 651, 305, 209, 208, 680}, {356, 352, 359, 484, 400, 398, 387, 608, 598, 597}, {64, 361, 353, 297, 401, 402, 365, 342, 681, 577}, {355, 66, 357, 291, 382, 380, 381, 664, 318, 513}, {487, 486, 287, 489, 638, 629, 662, 552, 503, 630}, {298, 57, 490, 290, 339, 687, 534, 340, 306, 498}, {31, 362, 169, 6, 408, 671, 215, 35, 415, 220}, {488, 425, 292, 85, 579, 621, 622, 632, 441, 302}, {483, 352, 359, 354, 595, 398, 596, 589, 396, 372}, {94, 78, 418, 426, 111, 435, 673, 688, 468, 467}, {229, 43, 44, 100, 241, 47, 262, 506, 116, 132}, {31, 165, 358, 30, 187, 555, 379, 34, 196, 391}, {429, 231, 52, 490, 640, 281, 475, 516, 547, 546}, {94, 102, 78, 426, 144, 145, 111, 688, 559, 468}, {421, 429, 52, 490, 476, 475, 451, 517, 516, 546}, {364, 103, 73, 4, 522, 149, 412, 416, 153, 77}, {420, 227, 424, 50, 527, 571, 437, 438, 235, 436}, {104, 80, 5, 428, 152, 84, 156, 689, 473, 478}, {227, 51, 52, 424, 260, 55, 255, 571, 456, 453}, {487, 289, 293, 287, 600, 313, 601, 662, 331, 328}, {166, 159, 288, 488, 208, 651, 680, 690, 682, 684}, {289, 161, 353, 487, 586, 562, 578, 600, 564, 566}, {482, 485, 489, 417, 548, 495, 539, 627, 544, 582}, {50, 227, 424, 51, 235, 571, 436, 54, 260, 456}, {488, 489, 287, 292, 538, 630, 661, 622, 623, 330}, {482, 483, 157, 488, 535, 616, 665, 536, 537, 645}, {80, 420, 104, 96, 445, 657, 152, 126, 656, 150}, {232, 104, 45, 5, 691, 151, 279, 286, 156, 49}, {288, 488, 287, 292, 684, 661, 329, 301, 622, 330}, {295, 289, 487, 287, 310, 600, 679, 333, 331, 662}, {157, 161, 163, 487, 202, 192, 201, 644, 564, 602}, {483, 482, 164, 98, 535, 692, 654, 694, 693, 558}, {3, 296, 85, 427, 350, 338, 88, 479, 631, 471}, {92, 483, 93, 98, 530, 668, 133, 135, 694, 110}, {95, 484, 100, 225, 554, 655, 115, 593, 636, 695}, {231, 224, 490, 57, 273, 545, 547, 274, 240, 687}, {64, 289, 353, 357, 311, 578, 365, 367, 659, 366}, {2, 297, 24, 168, 349, 344, 28, 218, 696, 217}, {361, 297, 168, 353, 681, 696, 652, 402, 577, 697}, {353, 161, 168, 29, 562, 212, 697, 370, 181, 213}, {289, 295, 487, 357, 310, 679, 600, 659, 512, 660}, {352, 353, 487, 357, 393, 566, 639, 394, 366, 660}, {361, 353, 168, 29, 402, 697, 652, 403, 370, 213}, {484, 229, 100, 225, 574, 506, 655, 636, 242, 695}, {104, 223, 232, 45, 648, 271, 691, 151, 247, 279}, {160, 164, 8, 98, 177, 176, 178, 678, 558, 109}, {164, 9, 8, 98, 197, 12, 176, 558, 131, 109}, {165, 161, 358, 29, 180, 563, 555, 179, 181, 368}, {297, 361, 168, 2, 681, 652, 696, 349, 414, 218}, {161, 353, 358, 29, 562, 369, 563, 181, 370, 368}, {230, 37, 38, 360, 261, 41, 252, 605, 392, 383}, {43, 95, 100, 225, 114, 115, 116, 243, 593, 695}, {420, 80, 104, 428, 445, 152, 657, 469, 473, 689}, {232, 104, 5, 428, 691, 156, 286, 642, 689, 478}, {59, 299, 233, 291, 346, 507, 282, 323, 345, 647}, {355, 363, 66, 291, 407, 409, 382, 664, 646, 318}, {158, 94, 418, 426, 540, 673, 614, 677, 688, 467}, {87, 429, 298, 1, 477, 603, 343, 91, 481, 348}, {420, 227, 485, 424, 527, 526, 528, 437, 571, 543}, {482, 422, 418, 99, 626, 434, 618, 674, 569, 666}, {229, 43, 100, 225, 241, 116, 506, 242, 243, 695}, {294, 486, 287, 291, 609, 629, 334, 322, 511, 335}, {17, 166, 419, 159, 216, 698, 444, 188, 208, 699}, {419, 166, 17, 427, 698, 216, 444, 472, 613, 474}, {166, 488, 419, 159, 690, 634, 698, 208, 682, 699}, {419, 488, 166, 427, 634, 690, 698, 472, 633, 613}, {160, 98, 483, 164, 678, 694, 588, 177, 558, 654}, {483, 98, 160, 93, 694, 678, 588, 668, 110, 670}, {226, 360, 486, 355, 700, 701, 610, 663, 375, 658}, {360, 36, 226, 230, 376, 246, 700, 605, 244, 245}, {226, 36, 360, 355, 246, 376, 700, 663, 374, 375}, {93, 169, 362, 101, 568, 671, 702, 142, 567, 667}, {93, 362, 71, 101, 702, 405, 107, 142, 667, 141}, {71, 362, 93, 354, 405, 702, 107, 373, 404, 669}, {489, 424, 417, 485, 572, 464, 582, 495, 543, 544}, {417, 424, 489, 421, 464, 572, 582, 465, 452, 685}, {102, 10, 158, 94, 148, 182, 703, 144, 119, 540}, {158, 10, 102, 167, 182, 148, 703, 206, 214, 557}, {102, 158, 426, 94, 703, 677, 559, 144, 540, 688}, {426, 158, 102, 167, 677, 703, 559, 549, 206, 557}, {421, 489, 227, 424, 685, 570, 704, 452, 572, 571}, {52, 421, 227, 424, 451, 704, 255, 453, 452, 571}, {489, 227, 222, 224, 570, 263, 501, 705, 254, 265}, {489, 222, 227, 485, 501, 263, 570, 495, 515, 526}, {87, 425, 292, 490, 448, 621, 315, 497, 533, 499}, {292, 425, 87, 86, 621, 448, 315, 324, 457, 90}, {104, 420, 232, 223, 657, 706, 691, 648, 529, 271}, {104, 232, 420, 428, 691, 706, 657, 689, 642, 469}, {232, 420, 50, 223, 706, 438, 272, 271, 529, 237}, {232, 50, 420, 428, 272, 438, 706, 642, 470, 469}, {226, 484, 360, 230, 635, 607, 700, 245, 606, 605}, {226, 360, 484, 486, 700, 607, 635, 610, 701, 502}, {486, 360, 352, 355, 701, 399, 637, 658, 375, 397}, {352, 360, 486, 484, 399, 701, 637, 598, 607, 502}, {162, 488, 157, 159, 707, 645, 198, 189, 682, 200}, {157, 488, 162, 482, 645, 707, 198, 665, 536, 619}, {490, 57, 429, 231, 687, 708, 516, 547, 274, 640}, {429, 57, 490, 298, 708, 687, 516, 603, 339, 534}, {57, 1, 429, 231, 60, 481, 708, 274, 284, 640}, {429, 1, 57, 298, 481, 60, 708, 603, 348, 339}, {158, 98, 482, 94, 541, 693, 617, 540, 117, 672}, {482, 98, 158, 164, 693, 541, 617, 692, 558, 183}, {353, 297, 161, 289, 577, 709, 562, 578, 341, 586}, {353, 161, 297, 168, 562, 709, 577, 697, 212, 696}, {161, 297, 24, 289, 709, 344, 191, 586, 341, 312}, {161, 24, 297, 168, 191, 344, 709, 212, 217, 696}, {159, 293, 487, 163, 650, 601, 710, 174, 584, 602}, {487, 293, 159, 488, 601, 650, 710, 551, 683, 682}, {159, 487, 157, 163, 710, 644, 200, 174, 602, 201}, {157, 487, 159, 488, 644, 710, 200, 645, 551, 682}, {290, 228, 486, 294, 686, 612, 628, 307, 556, 609}, {290, 486, 228, 489, 628, 612, 686, 624, 503, 711}, {485, 99, 420, 422, 676, 712, 528, 576, 569, 446}, {420, 99, 485, 96, 712, 676, 528, 656, 127, 675}, {99, 80, 420, 422, 128, 445, 712, 569, 447, 446}, {420, 80, 99, 96, 445, 128, 712, 656, 126, 127}, {96, 484, 229, 100, 713, 574, 505, 124, 655, 506}, {92, 96, 484, 485, 140, 713, 531, 532, 675, 492}, {92, 484, 96, 100, 531, 713, 140, 139, 655, 124}, {161, 358, 483, 165, 563, 643, 714, 180, 555, 587}, {483, 358, 161, 487, 643, 563, 714, 550, 565, 564}, {161, 483, 157, 165, 714, 616, 202, 180, 587, 205}, {157, 483, 161, 487, 616, 714, 202, 644, 550, 564}, {362, 31, 160, 354, 408, 185, 715, 404, 377, 590}, {160, 31, 362, 169, 185, 408, 715, 210, 215, 671}, {362, 160, 93, 354, 715, 670, 702, 404, 590, 669}, {93, 160, 362, 169, 670, 715, 702, 568, 210, 671}, {482, 164, 157, 483, 692, 203, 665, 535, 654, 616}, {157, 164, 482, 158, 203, 692, 665, 199, 183, 617}, {228, 489, 222, 224, 711, 501, 266, 239, 705, 265}, {222, 489, 228, 486, 501, 711, 266, 504, 503, 612}, {288, 166, 427, 296, 680, 613, 716, 336, 604, 631}, {288, 427, 166, 488, 716, 613, 680, 684, 633, 690}, {85, 288, 427, 296, 300, 716, 471, 338, 336, 631}, {85, 427, 288, 488, 471, 716, 300, 632, 633, 684}, {484, 223, 96, 229, 575, 649, 713, 574, 248, 505}, {484, 96, 223, 485, 713, 649, 575, 492, 675, 525}, {488, 293, 287, 487, 683, 328, 661, 551, 601, 662}, {287, 293, 488, 288, 328, 683, 661, 329, 304, 684}, {419, 488, 162, 159, 634, 707, 717, 699, 682, 189}, {162, 419, 17, 423, 717, 444, 190, 561, 443, 442}, {17, 419, 162, 159, 444, 717, 190, 188, 699, 189}, {482, 98, 92, 94, 693, 135, 573, 672, 117, 136}, {92, 98, 482, 483, 135, 693, 573, 530, 694, 535}, {358, 487, 352, 353, 565, 639, 395, 369, 566, 393}, {352, 487, 358, 483, 639, 565, 395, 595, 550, 643}, {359, 483, 93, 97, 596, 668, 718, 653, 641, 105}, {359, 93, 483, 354, 718, 668, 596, 372, 669, 589}, {71, 359, 93, 97, 371, 718, 107, 106, 653, 105}, {71, 93, 359, 354, 107, 718, 371, 373, 669, 372}, {52, 490, 227, 421, 546, 719, 255, 451, 517, 704}, {227, 490, 52, 224, 719, 546, 255, 254, 545, 253}, {490, 489, 227, 421, 625, 570, 719, 517, 685, 704}, {227, 489, 490, 224, 570, 625, 719, 254, 705, 545}, {57, 490, 228, 224, 687, 720, 238, 240, 545, 239}, {228, 490, 57, 290, 720, 687, 238, 686, 498, 306}, {490, 489, 228, 224, 625, 711, 720, 545, 705, 239}, {228, 489, 490, 290, 711, 625, 720, 686, 624, 498}, {162, 419, 482, 488, 717, 721, 619, 707, 634, 536}, {482, 419, 162, 423, 721, 717, 619, 620, 443, 561}, {419, 417, 482, 488, 461, 627, 721, 634, 581, 536}, {482, 417, 419, 423, 627, 461, 721, 620, 460, 443}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 722
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {0.125, 1, 1}, {0.375, 1, 1}, {0.625, 1, 1}, {0.875, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {1, 1, 0.875}, {1, 1, 0.625}, {1, 1, 0.375}, {1, 1, 0.125}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0.875, 1, 0}, {0.625, 1, 0}, {0.375, 1, 0}, {0.125, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 1, 0.125}, {0, 1, 0.375}, {0, 1, 0.625}, {0, 1, 0.875}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0, 0, 0.125}, {0, 0, 0.375}, {0, 0, 0.625}, {0, 0, 0.875}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {0.125, 0, 1}, {0.375, 0, 1}, {0.625, 0, 1}, {0.875, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {1, 0, 0.875}, {1, 0, 0.625}, {1, 0, 0.375}, {1, 0, 0.125}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0.875, 0, 0}, {0.625, 0, 0}, {0.375, 0, 0}, {0.125, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.875, 0}, {0, 0.625, 0}, {0, 0.375, 0}, {0, 0.125, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {0, 0.875, 1}, {0, 0.625, 1}, {0, 0.375, 1}, {0, 0.125, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.875, 1}, {1, 0.625, 1}, {1, 0.375, 1}, {1, 0.125, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {1, 0.875, 0}, {1, 0.625, 0}, {1, 0.375, 0}, {1, 0.125, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.234692, 0.610874, 1}, {0.095431, 0.625135, 1}, {0.139261, 0.735739, 1}, {0.264261, 0.860739, 1}, {0.375, 0.904691, 1}, {0.389261, 0.76543, 1}, {0.860739, 0.735739, 1}, {0.904569, 0.625135, 1}, {0.765308, 0.610874, 1}, {0.264261, 0.139383, 1}, {0.389261, 0.234962, 1}, {0.375, 0.0955798, 1}, {0.610739, 0.76543, 1}, {0.625, 0.904691, 1}, {0.735739, 0.860739, 1}, {0.095431, 0.375135, 1}, {0.234692, 0.389518, 1}, {0.139261, 0.264383, 1}, {0.625, 0.0955798, 1}, {0.610739, 0.234962, 1}, {0.735739, 0.139383, 1}, {0.860739, 0.264383, 1}, {0.765308, 0.389518, 1}, {0.904569, 0.375135, 1}, {0.095431, 0.500135, 1}, {0.904569, 0.500135, 1}, {0.5, 0.904691, 1}, {0.5, 0.0955798, 1}, {0.389261, 0.611834, 1}, {0.345431, 0.501231, 1}, {0.5, 0.655786, 1}, {0.610739, 0.611834, 1}, {0.389261, 0.390478, 1}, {0.654569, 0.501231, 1}, {0.5, 0.346675, 1}, {0.610739, 0.390478, 1}, {0.0709532, 0.804047, 1}, {0.210214, 0.789786, 1}, {0.195953, 0.929047, 1}, {0.789786, 0.789786, 1}, {0.929047, 0.804047, 1}, {0.195953, 0.0709735, 1}, {0.210214, 0.210356, 1}, {0.804047, 0.929047, 1}, {0.0709532, 0.195973, 1}, {0.789786, 0.210356, 1}, {0.804047, 0.0709735, 1}, {0.929047, 0.195973, 1}, {0.0709532, 0.0709735, 1}, {0.0709532, 0.929047, 1}, {0.929047, 0.929047, 1}, {0.929047, 0.0709735, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.904569, 1, 0.625}, {0.765308, 1, 0.610739}, {0.860739, 1, 0.735739}, {0.625, 1, 0.095431}, {0.610739, 1, 0.234692}, {0.735739, 1, 0.139261}, {0.375, 1, 0.904569}, {0.389261, 1, 0.765308}, {0.264261, 1, 0.860739}, {0.095431, 1, 0.375}, {0.234692, 1, 0.389261}, {0.139261, 1, 0.264261}, {0.735739, 1, 0.860739}, {0.610739, 1, 0.765308}, {0.625, 1, 0.904569}, {0.139261, 1, 0.735739}, {0.234692, 1, 0.610739}, {0.095431, 1, 0.625}, {0.860739, 1, 0.264261}, {0.765308, 1, 0.389261}, {0.904569, 1, 0.375}, {0.264261, 1, 0.139261}, {0.389261, 1, 0.234692}, {0.375, 1, 0.095431}, {0.5, 1, 0.095431}, {0.904569, 1, 0.5}, {0.095431, 1, 0.5}, {0.5, 1, 0.904569}, {0.654569, 1, 0.5}, {0.610739, 1, 0.610739}, {0.610739, 1, 0.389261}, {0.5, 1, 0.345431}, {0.389261, 1, 0.389261}, {0.5, 1, 0.654569}, {0.389261, 1, 0.610739}, {0.345431, 1, 0.5}, {0.789786, 1, 0.789786}, {0.929047, 1, 0.804047}, {0.789786, 1, 0.210214}, {0.804047, 1, 0.0709532}, {0.210214, 1, 0.789786}, {0.195953, 1, 0.929047}, {0.210214, 1, 0.210214}, {0.0709532, 1, 0.195953}, {0.804047, 1, 0.929047}, {0.0709532, 1, 0.804047}, {0.929047, 1, 0.195953}, {0.195953, 1, 0.0709532}, {0.0709532, 1, 0.0709532}, {0.929047, 1, 0.0709532}, {0.0709532, 1, 0.929047}, {0.929047, 1, 0.929047}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.904691, 0, 0.625}, {0.76543, 0, 0.610739}, {0.860739, 0, 0.735739}, {0.625135, 0, 0.095431}, {0.610874, 0, 0.234692}, {0.735739, 0, 0.139261}, {0.375135, 0, 0.904569}, {0.389518, 0, 0.765308}, {0.264383, 0, 0.860739}, {0.0955798, 0, 0.375}, {0.234962, 0, 0.389261}, {0.139383, 0, 0.264261}, {0.735739, 0, 0.860739}, {0.610874, 0, 0.765308}, {0.625135, 0, 0.904569}, {0.139383, 0, 0.735739}, {0.234962, 0, 0.610739}, {0.0955798, 0, 0.625}, {0.860739, 0, 0.264261}, {0.76543, 0, 0.389261}, {0.904691, 0, 0.375}, {0.264383, 0, 0.139261}, {0.389518, 0, 0.234692}, {0.375135, 0, 0.095431}, {0.500135, 0, 0.095431}, {0.904691, 0, 0.5}, {0.0955798, 0, 0.5}, {0.500135, 0, 0.904569}, {0.655786, 0, 0.5}, {0.611834, 0, 0.610739}, {0.611834, 0, 0.389261}, {0.501231, 0, 0.345431}, {0.390478, 0, 0.389261}, {0.501231, 0, 0.654569}, {0.390478, 0, 0.610739}, {0.346675, 0, 0.5}, {0.789786, 0, 0.789786}, {0.929047, 0, 0.804047}, {0.789786, 0, 0.210214}, {0.804047, 0, 0.0709532}, {0.210356, 0, 0.789786}, {0.195973, 0, 0.929047}, {0.210356, 0, 0.210214}, {0.0709735, 0, 0.195953}, {0.804047, 0, 0.929047}, {0.0709735, 0, 0.804047}, {0.929047, 0, 0.195953}, {0.195973, 0, 0.0709532}, {0.0709735, 0, 0.0709532}, {0.929047, 0, 0.0709532}, {0.0709735, 0, 0.929047}, {0.929047, 0, 0.929047}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0.860739, 0.735739, 0}, {0.765308, 0.610739, 0}, {0.904569, 0.625, 0}, {0.625, 0.904569, 0}, {0.610739, 0.765308, 0}, {0.735739, 0.860739, 0}, {0.735739, 0.139261, 0}, {0.610739, 0.234692, 0}, {0.625, 0.095431, 0}, {0.095431, 0.625, 0}, {0.234692, 0.610739, 0}, {0.139261, 0.735739, 0}, {0.264261, 0.860739, 0}, {0.389261, 0.765308, 0}, {0.375, 0.904569, 0}, {0.904569, 0.375, 0}, {0.765308, 0.389261, 0}, {0.860739, 0.264261, 0}, {0.139261, 0.264261, 0}, {0.234692, 0.389261, 0}, {0.095431, 0.375, 0}, {0.375, 0.095431, 0}, {0.389261, 0.234692, 0}, {0.264261, 0.139261, 0}, {0.904569, 0.5, 0}, {0.5, 0.904569, 0}, {0.5, 0.095431, 0}, {0.095431, 0.5, 0}, {0.5, 0.654569, 0}, {0.610739, 0.610739, 0}, {0.654569, 0.5, 0}, {0.389261, 0.610739, 0}, {0.610739, 0.389261, 0}, {0.345431, 0.5, 0}, {0.5, 0.345431, 0}, {0.389261, 0.389261, 0}, {0.789786, 0.789786, 0}, {0.804047, 0.929047, 0}, {0.929047, 0.804047, 0}, {0.804047, 0.0709532, 0}, {0.789786, 0.210214, 0}, {0.210214, 0.789786, 0}, {0.0709532, 0.804047, 0}, {0.929047, 0.195953, 0}, {0.195953, 0.929047, 0}, {0.210214, 0.210214, 0}, {0.195953, 0.0709532, 0}, {0.0709532, 0.195953, 0}, {0.929047, 0.0709532, 0}, {0.0709532, 0.929047, 0}, {0.929047, 0.929047, 0}, {0.0709532, 0.0709532, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {0, 0.735739, 0.139261}, {0, 0.610739, 0.234692}, {0, 0.625, 0.095431}, {0, 0.904569, 0.375}, {0, 0.765308, 0.389261}, {0, 0.860739, 0.264261}, {0, 0.625, 0.904569}, {0, 0.610739, 0.765308}, {0, 0.735739, 0.860739}, {0, 0.139261, 0.264261}, {0, 0.234692, 0.389261}, {0, 0.095431, 0.375}, {0, 0.860739, 0.735739}, {0, 0.765308, 0.610739}, {0, 0.904569, 0.625}, {0, 0.375, 0.095431}, {0, 0.389261, 0.234692}, {0, 0.264261, 0.139261}, {0, 0.095431, 0.625}, {0, 0.234692, 0.610739}, {0, 0.139261, 0.735739}, {0, 0.264261, 0.860739}, {0, 0.389261, 0.765308}, {0, 0.375, 0.904569}, {0, 0.5, 0.095431}, {0, 0.5, 0.904569}, {0, 0.904569, 0.5}, {0, 0.095431, 0.5}, {0, 0.610739, 0.389261}, {0, 0.5, 0.345431}, {0, 0.654569, 0.5}, {0, 0.610739, 0.610739}, {0, 0.389261, 0.389261}, {0, 0.5, 0.654569}, {0, 0.345431, 0.5}, {0, 0.389261, 0.610739}, {0, 0.804047, 0.0709532}, {0, 0.789786, 0.210214}, {0, 0.929047, 0.195953}, {0, 0.789786, 0.789786}, {0, 0.804047, 0.929047}, {0, 0.0709532, 0.195953}, {0, 0.210214, 0.210214}, {0, 0.929047, 0.804047}, {0, 0.195953, 0.0709532}, {0, 0.210214, 0.789786}, {0, 0.0709532, 0.804047}, {0, 0.195953, 0.929047}, {0, 0.0709532, 0.0709532}, {0, 0.929047, 0.0709532}, {0, 0.929047, 0.929047}, {0, 0.0709532, 0.929047}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {1, 0.860678, 0.735678}, {1, 0.76518, 0.610611}, {1, 0.904501, 0.624932}, {1, 0.624932, 0.904501}, {1, 0.610611, 0.76518}, {1, 0.735678, 0.860678}, {1, 0.0953701, 0.624939}, {1, 0.234631, 0.610678}, {1, 0.139261, 0.735739}, {1, 0.735739, 0.139261}, {1, 0.610678, 0.234631}, {1, 0.624939, 0.0953701}, {1, 0.904501, 0.374932}, {1, 0.76524, 0.389193}, {1, 0.860739, 0.264261}, {1, 0.264261, 0.860739}, {1, 0.389193, 0.76524}, {1, 0.374932, 0.904501}, {1, 0.374939, 0.0953701}, {1, 0.3892, 0.234631}, {1, 0.264261, 0.139261}, {1, 0.139261, 0.264261}, {1, 0.234631, 0.3892}, {1, 0.0953701, 0.374939}, {1, 0.904501, 0.499932}, {1, 0.499932, 0.904501}, {1, 0.0953701, 0.499939}, {1, 0.499939, 0.0953701}, {1, 0.610131, 0.610131}, {1, 0.499385, 0.653954}, {1, 0.653954, 0.499385}, {1, 0.610191, 0.388713}, {1, 0.388713, 0.610191}, {1, 0.499391, 0.344822}, {1, 0.344822, 0.499391}, {1, 0.388713, 0.388713}, {1, 0.929037, 0.804037}, {1, 0.789715, 0.789715}, {1, 0.804037, 0.929037}, {1, 0.210214, 0.789786}, {1, 0.0709532, 0.804047}, {1, 0.804047, 0.0709532}, {1, 0.789786, 0.210214}, {1, 0.195953, 0.929047}, {1, 0.929047, 0.195953}, {1, 0.0709532, 0.195953}, {1, 0.210214, 0.210214}, {1, 0.195953, 0.0709532}, {1, 0.0709532, 0.929047}, {1, 0.929047, 0.0709532}, {1, 0.929037, 0.929037}, {1, 0.0709532, 0.0709532}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}, {0.403787, 0.502163, 0.604301}, {0.59395, 0.335588, 0.588613}, {0.57425, 0.502163, 0.604301}, {0.533055, 0.519268, 0.479373}, {0.723218, 0.352693, 0.463685}, {0.552756, 0.352693, 0.463685}, {0.907719, 0.227933, 0.0932632}, {0.768458, 0.242194, 0.0932632}, {0.812288, 0.352933, 0.0932632}, {0.462839, 0.167794, 0.544306}, {0.592107, 0.184899, 0.419378}, {0.423487, 0.335588, 0.41815}, {0.552756, 0.352693, 0.293222}, {0.462839, 0.167794, 0.373844}, {0.610874, 0.139383, 0.904569}, {0.500135, 0.0955798, 0.904569}, {0.141927, 0.0709532, 0.0709532}, {0.0709735, 0.0709532, 0.141906}, {0.0709532, 0.141906, 0.0709532}, {0.307175, 0.417794, 0.123844}, {0.351005, 0.307055, 0.123844}, {0.095431, 0.5, 0.095431}, {0.139261, 0.389261, 0.095431}, {0.211744, 0.417794, 0.219275}, {0.633302, 0.167794, 0.544306}, {0.907719, 0.173886, 0.164216}, {0.907719, 0.242194, 0.232524}, {0.0709532, 0.210234, 0.860739}, {0.141927, 0.0709735, 0.929047}, {0.0709735, 0.139261, 0.789786}, {0.0709735, 0.0709532, 0.858094}, {0.0709532, 0.141927, 0.929047}, {0.210336, 0.0709735, 0.860739}, {0.139383, 0.139261, 0.721478}, {0.742945, 0.167794, 0.655045}, {0.786897, 0.167794, 0.544306}, {0.904691, 0.139261, 0.610739}, {0.882206, 0.307055, 0.655045}, {0.860739, 0.139261, 0.721478}, {0.442043, 0.585464, 0.809994}, {0.461744, 0.418889, 0.794306}, {0.632206, 0.418889, 0.794306}, {0.907719, 0.352872, 0.188633}, {0.836765, 0.173886, 0.0932632}, {0.549357, 0.674254, 0.636624}, {0.73952, 0.678141, 0.450474}, {0.57425, 0.672625, 0.433838}, {0.723218, 0.523156, 0.293222}, {0.698326, 0.524784, 0.496008}, {0.721478, 0.860739, 0.860739}, {0.610739, 0.904691, 0.860739}, {0.0709735, 0.139261, 0.210214}, {0.882206, 0.263164, 0.544245}, {0.882206, 0.417246, 0.543759}, {0.768458, 0.102933, 0.232524}, {0.907719, 0.102933, 0.218263}, {0.836765, 0.102933, 0.164216}, {0.73952, 0.507679, 0.620936}, {0.929047, 0.929037, 0.858083}, {0.403787, 0.672625, 0.433838}, {0.59395, 0.676512, 0.247688}, {0.552756, 0.523156, 0.293222}, {0.307175, 0.417929, 0.794306}, {0.351005, 0.307176, 0.794306}, {0.095431, 0.904569, 0.5}, {0.500135, 0.095431, 0.095431}, {0.858094, 0.929047, 0.929047}, {0.5, 0.904691, 0.904569}, {0.929047, 0.858083, 0.929037}, {0.423487, 0.50605, 0.41815}, {0.904569, 0.904501, 0.499932}, {0.139261, 0.860739, 0.278522}, {0.139261, 0.904569, 0.389261}, {0.351005, 0.838256, 0.263105}, {0.211744, 0.742825, 0.373844}, {0.211744, 0.698995, 0.263105}, {0.141906, 0.929047, 0.929047}, {0.210214, 0.860739, 0.929047}, {0.904569, 0.500068, 0.904501}, {0.745703, 0.184899, 0.419378}, {0.904691, 0.0953701, 0.499939}, {0.841012, 0.280269, 0.419318}, {0.607314, 0.59098, 0.82663}, {0.461879, 0.167794, 0.698875}, {0.572483, 0.167794, 0.655045}, {0.882206, 0.417726, 0.698808}, {0.0709532, 0.789786, 0.139261}, {0.139261, 0.721478, 0.139261}, {0.882206, 0.588195, 0.219214}, {0.841012, 0.434839, 0.264749}, {0.882206, 0.587709, 0.373296}, {0.841012, 0.434352, 0.418831}, {0.389261, 0.904569, 0.139261}, {0.5, 0.904569, 0.095431}, {0.389383, 0.095431, 0.139261}, {0.278522, 0.860739, 0.139261}, {0.287474, 0.834369, 0.559994}, {0.331304, 0.834369, 0.670734}, {0.192043, 0.695108, 0.670734}, {0.139261, 0.860739, 0.721478}, {0.095431, 0.860739, 0.610739}, {0.139261, 0.278644, 0.860739}, {0.278644, 0.139383, 0.860739}, {0.139261, 0.389383, 0.904569}, {0.192043, 0.584369, 0.559994}, {0.192043, 0.584369, 0.714563}, {0.211744, 0.417794, 0.698875}, {0.211744, 0.417794, 0.544306}, {0.0955798, 0.139261, 0.610739}, {0.351005, 0.698995, 0.123844}, {0.461744, 0.742825, 0.123844}, {0.461744, 0.838256, 0.219275}, {0.929047, 0.141906, 0.0709532}, {0.858094, 0.929047, 0.0709532}, {0.0955798, 0.095431, 0.5}, {0.307323, 0.167794, 0.544306}, {0.211744, 0.263225, 0.544306}, {0.211744, 0.307055, 0.655045}, {0.461744, 0.263225, 0.123844}, {0.351126, 0.167794, 0.263105}, {0.278644, 0.139261, 0.139261}, {0.461879, 0.167794, 0.219275}, {0.929047, 0.929047, 0.141906}, {0.860739, 0.860678, 0.721417}, {0.904569, 0.860678, 0.610678}, {0.442043, 0.834369, 0.559994}, {0.718053, 0.839885, 0.687369}, {0.857314, 0.700563, 0.687308}, {0.761883, 0.839885, 0.57663}, {0.857314, 0.744386, 0.576562}, {0.904569, 0.499939, 0.0953701}, {0.786775, 0.588256, 0.123844}, {0.745581, 0.434899, 0.169378}, {0.701751, 0.32416, 0.169378}, {0.748731, 0.287832, 0.262642}, {0.857314, 0.589817, 0.731131}, {0.857314, 0.589337, 0.576082}, {0.572483, 0.307055, 0.123844}, {0.461744, 0.417794, 0.123844}, {0.591012, 0.434899, 0.169378}, {0.929047, 0.858094, 0.0709532}, {0.882206, 0.713256, 0.123844}, {0.882206, 0.767303, 0.194797}, {0.882206, 0.698995, 0.263105}, {0.351126, 0.167794, 0.433567}, {0.351126, 0.167794, 0.655045}, {0.211744, 0.417794, 0.373844}, {0.423487, 0.50605, 0.247688}, {0.211744, 0.588256, 0.373844}, {0.929047, 0.0709532, 0.141906}, {0.287474, 0.584504, 0.809994}, {0.929047, 0.0709532, 0.858094}, {0.192043, 0.738938, 0.559994}, {0.461744, 0.838256, 0.373844}, {0.632206, 0.838256, 0.373844}, {0.139261, 0.210214, 0.0709532}, {0.210234, 0.139261, 0.0709532}, {0.789786, 0.0709735, 0.860739}, {0.721478, 0.139383, 0.860739}, {0.610739, 0.904569, 0.139261}, {0.721478, 0.860739, 0.139261}, {0.0709532, 0.929047, 0.141906}, {0.095431, 0.500135, 0.904569}, {0.442043, 0.834369, 0.714563}, {0.461744, 0.263374, 0.794306}, {0.860739, 0.278644, 0.860739}, {0.929047, 0.210234, 0.860739}, {0.211744, 0.307055, 0.263105}, {0.139261, 0.610739, 0.095431}, {0.211744, 0.588256, 0.219275}, {0.632206, 0.588256, 0.123844}, {0.461744, 0.588256, 0.123844}, {0.139383, 0.139261, 0.278522}, {0.139261, 0.278522, 0.139261}, {0.607314, 0.839885, 0.57663}, {0.904569, 0.610813, 0.860678}, {0.0709532, 0.858094, 0.929047}, {0.331304, 0.695108, 0.809994}, {0.139261, 0.721478, 0.860739}, {0.278522, 0.860739, 0.860739}, {0.0709532, 0.929047, 0.858094}, {0.718053, 0.700624, 0.82663}, {0.860739, 0.721417, 0.860678}, {0.761883, 0.59002, 0.82663}, {0.742945, 0.307176, 0.794306}, {0.786775, 0.417929, 0.794306}, {0.860739, 0.929037, 0.789776}, {0.389261, 0.904691, 0.860739}, {0.307175, 0.588256, 0.123844}, {0.789786, 0.860739, 0.0709532}, {0.0709532, 0.858094, 0.0709532}, {0.742945, 0.838256, 0.263105}, {0.632206, 0.742825, 0.123844}, {0.742945, 0.698995, 0.123844}, {0.841012, 0.32416, 0.308639}, {0.610874, 0.139261, 0.095431}, {0.782719, 0.102933, 0.0932632}, {0.860739, 0.789776, 0.929037}, {0.929047, 0.141927, 0.929047}, {0.811253, 0.838256, 0.194797}, {0.858094, 0.0709735, 0.929047}, {0.607314, 0.839885, 0.731199}, {0.607314, 0.744576, 0.82663}, {0.442043, 0.73906, 0.809994}, {0.389383, 0.0955798, 0.860739}, {0.141906, 0.929047, 0.0709532}, {0.0709532, 0.860739, 0.210214}, {0.929047, 0.860739, 0.210214}, {0.860739, 0.860739, 0.278522}, {0.139383, 0.095431, 0.389261}, {0.211744, 0.263225, 0.373844}, {0.139261, 0.789786, 0.929047}, {0.789786, 0.929047, 0.860739}, {0.904691, 0.139261, 0.389261}, {0.701751, 0.184899, 0.308639}, {0.929047, 0.139261, 0.789786}, {0.786775, 0.838256, 0.373844}, {0.875, 0.0709532, 0.0709532}, {0.210214, 0.929047, 0.139261}, {0.572483, 0.838256, 0.263105}, {0.591147, 0.184899, 0.264809}, {0.904569, 0.389396, 0.860739}, {0.572483, 0.307176, 0.794306}, {0.331304, 0.834369, 0.449255}, {0.139261, 0.929047, 0.789786}, {0.860739, 0.789786, 0.0709532}, {0.904569, 0.860739, 0.389261}, {0.139261, 0.610739, 0.904569}, {0.812409, 0.102933, 0.343263}, {0.657854, 0.102933, 0.188694}, {0.857314, 0.700624, 0.465891}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 48
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{6, 8, 11}, {8, 9, 12}, {9, 10, 13}, {10, 7, 14}, {7, 15, 18}, {15, 16, 19}, {16, 17, 20}, {17, 3, 21}, {3, 22, 25}, {22, 23, 26}, {23, 24, 27}, {24, 2, 28}, {2, 29, 32}, {29, 30, 33}, {30, 31, 34}, {31, 6, 35}, {0, 36, 39}, {36, 37, 40}, {37, 38, 41}, {38, 4, 42}, {4, 43, 46}, {43, 44, 47}, {44, 45, 48}, {45, 5, 49}, {5, 50, 53}, {50, 51, 54}, {51, 52, 55}, {52, 1, 56}, {1, 57, 60}, {57, 58, 61}, {58, 59, 62}, {59, 0, 63}, {2, 64, 67}, {64, 65, 68}, {65, 66, 69}, {66, 0, 70}, {6, 71, 74}, {71, 72, 75}, {72, 73, 76}, {73, 4, 77}, {7, 78, 81}, {78, 79, 82}, {79, 80, 83}, {80, 5, 84}, {3, 85, 88}, {85, 86, 89}, {86, 87, 90}, {87, 1, 91}}
]
+ ]
(not_ghost:_triangle_6) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 240
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{93, 97, 71, 105, 106, 107}, {93, 8, 98, 108, 109, 110}, {94, 78, 99, 111, 112, 113}, {43, 95, 100, 114, 115, 116}, {94, 98, 10, 117, 118, 119}, {73, 97, 95, 120, 121, 122}, {45, 100, 96, 123, 124, 125}, {80, 96, 99, 126, 127, 128}, {71, 97, 72, 106, 129, 75}, {78, 79, 99, 82, 130, 112}, {8, 9, 98, 12, 131, 109}, {43, 100, 44, 116, 132, 47}, {72, 97, 73, 129, 120, 76}, {9, 10, 98, 13, 118, 131}, {79, 80, 99, 83, 128, 130}, {44, 100, 45, 132, 123, 48}, {93, 92, 97, 133, 134, 105}, {93, 98, 92, 110, 135, 133}, {94, 92, 98, 136, 135, 117}, {92, 95, 97, 137, 121, 134}, {94, 99, 92, 113, 138, 136}, {92, 100, 95, 139, 115, 137}, {92, 99, 96, 138, 127, 140}, {92, 96, 100, 140, 124, 139}, {93, 71, 101, 107, 141, 142}, {93, 101, 8, 142, 143, 108}, {94, 102, 78, 144, 145, 111}, {43, 103, 95, 146, 147, 114}, {94, 10, 102, 119, 148, 144}, {73, 95, 103, 122, 147, 149}, {45, 96, 104, 125, 150, 151}, {80, 104, 96, 152, 150, 126}, {4, 73, 103, 77, 149, 153}, {6, 101, 71, 154, 141, 74}, {7, 102, 10, 155, 148, 14}, {7, 78, 102, 81, 145, 155}, {6, 8, 101, 11, 143, 154}, {5, 104, 80, 156, 152, 84}, {4, 103, 43, 153, 146, 46}, {5, 45, 104, 49, 151, 156}, {15, 162, 158, 170, 171, 172}, {22, 163, 159, 173, 174, 175}, {8, 164, 160, 176, 177, 178}, {29, 165, 161, 179, 180, 181}, {10, 158, 164, 182, 183, 184}, {31, 160, 165, 185, 186, 187}, {17, 159, 162, 188, 189, 190}, {24, 161, 163, 191, 192, 193}, {22, 23, 163, 26, 194, 173}, {15, 16, 162, 19, 195, 170}, {29, 30, 165, 33, 196, 179}, {8, 9, 164, 12, 197, 176}, {16, 17, 162, 20, 190, 195}, {23, 24, 163, 27, 193, 194}, {9, 10, 164, 13, 184, 197}, {30, 31, 165, 34, 187, 196}, {158, 162, 157, 171, 198, 199}, {159, 157, 162, 200, 198, 189}, {159, 163, 157, 174, 201, 200}, {161, 157, 163, 202, 201, 192}, {158, 157, 164, 199, 203, 183}, {160, 164, 157, 177, 203, 204}, {160, 157, 165, 204, 205, 186}, {161, 165, 157, 180, 205, 202}, {15, 158, 167, 172, 206, 207}, {22, 159, 166, 175, 208, 209}, {8, 160, 169, 178, 210, 211}, {29, 161, 168, 181, 212, 213}, {10, 167, 158, 214, 206, 182}, {31, 169, 160, 215, 210, 185}, {17, 166, 159, 216, 208, 188}, {24, 168, 161, 217, 212, 191}, {2, 168, 24, 218, 217, 28}, {3, 166, 17, 219, 216, 21}, {6, 169, 31, 220, 215, 35}, {7, 167, 10, 221, 214, 14}, {7, 15, 167, 18, 207, 221}, {3, 22, 166, 25, 209, 219}, {6, 8, 169, 11, 211, 220}, {2, 29, 168, 32, 213, 218}, {50, 227, 223, 235, 236, 237}, {57, 228, 224, 238, 239, 240}, {43, 229, 225, 241, 242, 243}, {36, 230, 226, 244, 245, 246}, {45, 223, 229, 247, 248, 249}, {38, 225, 230, 250, 251, 252}, {52, 224, 227, 253, 254, 255}, {59, 226, 228, 256, 257, 258}, {57, 58, 228, 61, 259, 238}, {50, 51, 227, 54, 260, 235}, {36, 37, 230, 40, 261, 244}, {43, 44, 229, 47, 262, 241}, {51, 52, 227, 55, 255, 260}, {58, 59, 228, 62, 258, 259}, {44, 45, 229, 48, 249, 262}, {37, 38, 230, 41, 252, 261}, {223, 227, 222, 236, 263, 264}, {224, 222, 227, 265, 263, 254}, {224, 228, 222, 239, 266, 265}, {222, 228, 226, 266, 257, 267}, {223, 222, 229, 264, 268, 248}, {222, 225, 229, 269, 242, 268}, {222, 230, 225, 270, 251, 269}, {222, 226, 230, 267, 245, 270}, {50, 223, 232, 237, 271, 272}, {57, 224, 231, 240, 273, 274}, {43, 225, 234, 243, 275, 276}, {36, 226, 233, 246, 277, 278}, {45, 232, 223, 279, 271, 247}, {38, 234, 225, 280, 275, 250}, {52, 231, 224, 281, 273, 253}, {59, 233, 226, 282, 277, 256}, {0, 233, 59, 283, 282, 63}, {1, 231, 52, 284, 281, 56}, {4, 234, 38, 285, 280, 42}, {5, 232, 45, 286, 279, 49}, {5, 50, 232, 53, 272, 286}, {1, 57, 231, 60, 274, 284}, {4, 43, 234, 46, 276, 285}, {0, 36, 233, 39, 278, 283}, {85, 288, 292, 300, 301, 302}, {22, 293, 288, 303, 304, 305}, {57, 290, 294, 306, 307, 308}, {64, 295, 289, 309, 310, 311}, {24, 289, 293, 312, 313, 314}, {87, 292, 290, 315, 316, 317}, {66, 291, 295, 318, 319, 320}, {59, 294, 291, 321, 322, 323}, {85, 292, 86, 302, 324, 89}, {22, 23, 293, 26, 325, 303}, {57, 294, 58, 308, 326, 61}, {64, 65, 295, 68, 327, 309}, {86, 292, 87, 324, 315, 90}, {23, 24, 293, 27, 314, 325}, {65, 66, 295, 69, 320, 327}, {58, 294, 59, 326, 321, 62}, {288, 293, 287, 304, 328, 329}, {288, 287, 292, 329, 330, 301}, {289, 287, 293, 331, 328, 313}, {290, 292, 287, 316, 330, 332}, {289, 295, 287, 310, 333, 331}, {290, 287, 294, 332, 334, 307}, {291, 294, 287, 322, 334, 335}, {291, 287, 295, 335, 333, 319}, {22, 288, 296, 305, 336, 337}, {85, 296, 288, 338, 336, 300}, {57, 298, 290, 339, 340, 306}, {64, 289, 297, 311, 341, 342}, {87, 290, 298, 317, 340, 343}, {24, 297, 289, 344, 341, 312}, {59, 291, 299, 323, 345, 346}, {66, 299, 291, 347, 345, 318}, {1, 87, 298, 91, 343, 348}, {2, 297, 24, 349, 344, 28}, {3, 296, 85, 350, 338, 88}, {3, 22, 296, 25, 337, 350}, {1, 298, 57, 348, 339, 60}, {2, 64, 297, 67, 342, 349}, {0, 59, 299, 63, 346, 351}, {0, 299, 66, 351, 347, 70}, {64, 353, 357, 365, 366, 367}, {29, 358, 353, 368, 369, 370}, {71, 359, 354, 371, 372, 373}, {36, 355, 360, 374, 375, 376}, {31, 354, 358, 377, 378, 379}, {66, 357, 355, 380, 381, 382}, {38, 360, 356, 383, 384, 385}, {73, 356, 359, 386, 387, 388}, {64, 357, 65, 367, 389, 68}, {71, 72, 359, 75, 390, 371}, {29, 30, 358, 33, 391, 368}, {36, 360, 37, 376, 392, 40}, {65, 357, 66, 389, 380, 69}, {30, 31, 358, 34, 379, 391}, {72, 73, 359, 76, 388, 390}, {37, 360, 38, 392, 383, 41}, {353, 352, 357, 393, 394, 366}, {353, 358, 352, 369, 395, 393}, {354, 352, 358, 396, 395, 378}, {355, 357, 352, 381, 394, 397}, {354, 359, 352, 372, 398, 396}, {355, 352, 360, 397, 399, 375}, {356, 352, 359, 400, 398, 387}, {356, 360, 352, 384, 399, 400}, {64, 361, 353, 401, 402, 365}, {29, 353, 361, 370, 402, 403}, {71, 354, 362, 373, 404, 405}, {36, 363, 355, 406, 407, 374}, {31, 362, 354, 408, 404, 377}, {66, 355, 363, 382, 407, 409}, {38, 356, 364, 385, 410, 411}, {73, 364, 356, 412, 410, 386}, {0, 66, 363, 70, 409, 413}, {2, 361, 64, 414, 401, 67}, {6, 362, 31, 415, 408, 35}, {6, 71, 362, 74, 405, 415}, {2, 29, 361, 32, 403, 414}, {4, 364, 73, 416, 412, 77}, {0, 363, 36, 413, 406, 39}, {4, 38, 364, 42, 411, 416}, {15, 418, 423, 430, 431, 432}, {78, 422, 418, 433, 434, 435}, {50, 424, 420, 436, 437, 438}, {85, 419, 425, 439, 440, 441}, {17, 423, 419, 442, 443, 444}, {80, 420, 422, 445, 446, 447}, {87, 425, 421, 448, 449, 450}, {52, 421, 424, 451, 452, 453}, {15, 423, 16, 432, 454, 19}, {78, 79, 422, 82, 455, 433}, {50, 51, 424, 54, 456, 436}, {85, 425, 86, 441, 457, 89}, {79, 80, 422, 83, 447, 455}, {16, 423, 17, 454, 442, 20}, {86, 425, 87, 457, 448, 90}, {51, 52, 424, 55, 453, 456}, {417, 418, 422, 458, 434, 459}, {417, 423, 418, 460, 431, 458}, {419, 423, 417, 443, 460, 461}, {420, 417, 422, 462, 459, 446}, {419, 417, 425, 461, 463, 440}, {420, 424, 417, 437, 464, 462}, {421, 417, 424, 465, 464, 452}, {421, 425, 417, 449, 463, 465}, {15, 426, 418, 466, 467, 430}, {78, 418, 426, 435, 467, 468}, {50, 420, 428, 438, 469, 470}, {85, 427, 419, 471, 472, 439}, {80, 428, 420, 473, 469, 445}, {17, 419, 427, 444, 472, 474}, {52, 429, 421, 475, 476, 451}, {87, 421, 429, 450, 476, 477}, {5, 428, 80, 478, 473, 84}, {3, 17, 427, 21, 474, 479}, {7, 78, 426, 81, 468, 480}, {7, 426, 15, 480, 466, 18}, {5, 50, 428, 53, 470, 478}, {3, 427, 85, 479, 471, 88}, {1, 429, 52, 481, 475, 56}, {1, 87, 429, 91, 477, 481}}
]
+ ]
(not_ghost:_tetrahedron_10) [
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_10
+ size : 341
+ nb_component : 10
+ allocated size : 2000
+ memory size : 78kB
+ values : {{484, 483, 485, 489, 491, 493, 492, 496, 494, 495}, {87, 290, 490, 292, 317, 498, 497, 315, 316, 499}, {222, 484, 489, 486, 500, 496, 501, 504, 502, 503}, {96, 229, 45, 100, 505, 249, 125, 124, 506, 123}, {59, 0, 233, 299, 63, 283, 282, 346, 351, 507}, {0, 363, 233, 299, 413, 508, 283, 351, 509, 507}, {486, 295, 291, 357, 510, 319, 511, 514, 512, 513}, {484, 222, 489, 485, 500, 501, 496, 492, 515, 495}, {87, 429, 421, 490, 477, 476, 450, 497, 516, 517}, {103, 356, 234, 364, 518, 520, 519, 522, 410, 521}, {356, 103, 234, 225, 518, 519, 520, 524, 523, 275}, {43, 103, 225, 234, 146, 523, 243, 276, 519, 275}, {223, 227, 485, 420, 236, 526, 525, 529, 527, 528}, {483, 92, 484, 485, 530, 531, 491, 493, 532, 492}, {87, 421, 425, 490, 450, 449, 448, 497, 517, 533}, {298, 87, 290, 490, 343, 317, 340, 534, 497, 498}, {482, 483, 488, 489, 535, 537, 536, 539, 494, 538}, {94, 10, 158, 98, 119, 182, 540, 117, 118, 541}, {355, 363, 233, 36, 407, 508, 542, 374, 406, 278}, {485, 420, 424, 417, 528, 437, 543, 544, 462, 464}, {231, 224, 52, 490, 273, 253, 281, 547, 545, 546}, {483, 482, 485, 489, 535, 548, 493, 494, 539, 495}, {167, 15, 7, 426, 207, 18, 221, 549, 466, 480}, {483, 487, 488, 489, 550, 551, 537, 494, 552, 538}, {484, 92, 97, 95, 531, 134, 553, 554, 137, 121}, {29, 165, 30, 358, 179, 196, 33, 368, 555, 391}, {228, 294, 58, 59, 556, 326, 259, 258, 321, 62}, {102, 10, 7, 167, 148, 14, 155, 557, 214, 221}, {9, 10, 98, 164, 13, 118, 131, 197, 184, 558}, {78, 102, 7, 426, 145, 155, 81, 468, 559, 480}, {483, 484, 487, 489, 491, 560, 550, 494, 496, 552}, {16, 423, 162, 17, 454, 561, 195, 20, 442, 190}, {353, 161, 358, 487, 562, 563, 369, 566, 564, 565}, {93, 101, 8, 169, 142, 143, 108, 568, 567, 211}, {78, 422, 79, 99, 433, 455, 82, 112, 569, 130}, {485, 227, 489, 424, 526, 570, 495, 543, 571, 572}, {482, 92, 483, 485, 573, 530, 535, 548, 532, 493}, {223, 222, 229, 484, 264, 268, 248, 575, 500, 574}, {422, 420, 485, 417, 446, 528, 576, 459, 462, 544}, {64, 297, 353, 289, 342, 577, 365, 311, 341, 578}, {101, 6, 8, 169, 154, 11, 143, 567, 220, 211}, {425, 488, 489, 417, 579, 538, 580, 463, 581, 582}, {163, 161, 24, 293, 192, 191, 193, 584, 583, 314}, {228, 294, 59, 226, 556, 321, 258, 257, 585, 256}, {161, 289, 24, 293, 586, 312, 191, 583, 313, 314}, {165, 483, 160, 354, 587, 588, 186, 591, 589, 590}, {103, 356, 95, 225, 518, 592, 147, 523, 524, 593}, {356, 95, 359, 73, 592, 594, 387, 386, 122, 388}, {352, 483, 359, 484, 595, 596, 398, 598, 491, 597}, {103, 43, 4, 234, 146, 46, 153, 519, 276, 285}, {230, 356, 38, 225, 599, 385, 252, 251, 524, 250}, {161, 289, 293, 487, 586, 313, 583, 564, 600, 601}, {161, 487, 293, 163, 564, 601, 583, 192, 602, 584}, {429, 87, 298, 490, 477, 343, 603, 516, 497, 534}, {364, 38, 234, 4, 411, 280, 521, 416, 42, 285}, {22, 296, 3, 166, 337, 350, 25, 209, 604, 219}, {230, 37, 360, 36, 261, 392, 605, 244, 40, 376}, {356, 230, 360, 484, 599, 605, 384, 608, 606, 607}, {22, 23, 293, 163, 26, 325, 303, 173, 194, 584}, {294, 486, 291, 226, 609, 511, 322, 585, 610, 611}, {294, 228, 486, 226, 556, 612, 609, 585, 257, 610}, {3, 17, 166, 427, 21, 216, 219, 479, 474, 613}, {364, 103, 4, 234, 522, 153, 416, 521, 519, 285}, {158, 15, 418, 162, 172, 430, 614, 171, 170, 615}, {15, 423, 418, 162, 432, 431, 430, 170, 561, 615}, {157, 483, 160, 165, 616, 588, 204, 205, 587, 186}, {482, 158, 418, 162, 617, 614, 618, 619, 171, 615}, {423, 482, 418, 162, 620, 618, 431, 561, 619, 615}, {425, 488, 292, 489, 579, 622, 621, 580, 538, 623}, {290, 489, 490, 292, 624, 625, 498, 316, 623, 499}, {222, 223, 485, 484, 264, 525, 515, 500, 575, 492}, {363, 0, 66, 299, 413, 70, 409, 509, 351, 347}, {482, 422, 485, 417, 626, 576, 548, 627, 459, 544}, {486, 290, 287, 489, 628, 332, 629, 503, 624, 630}, {296, 3, 166, 427, 350, 219, 604, 631, 479, 613}, {489, 290, 287, 292, 624, 332, 630, 623, 316, 330}, {488, 85, 427, 419, 632, 471, 633, 634, 439, 472}, {425, 488, 419, 85, 579, 634, 440, 441, 632, 439}, {15, 16, 423, 162, 19, 454, 432, 170, 195, 561}, {65, 64, 357, 295, 68, 367, 389, 327, 309, 512}, {222, 484, 486, 226, 500, 502, 504, 267, 635, 610}, {356, 484, 95, 225, 608, 554, 592, 524, 636, 593}, {352, 484, 486, 487, 598, 502, 637, 639, 560, 638}, {230, 222, 484, 225, 270, 500, 606, 251, 269, 636}, {294, 228, 58, 57, 556, 259, 326, 308, 238, 61}, {352, 483, 484, 487, 595, 491, 598, 639, 550, 560}, {23, 163, 24, 293, 194, 193, 27, 325, 584, 314}, {429, 231, 1, 52, 640, 284, 481, 475, 281, 56}, {228, 222, 486, 226, 266, 504, 612, 257, 267, 610}, {482, 422, 417, 418, 626, 459, 627, 618, 434, 458}, {489, 425, 490, 292, 580, 533, 625, 623, 621, 499}, {483, 92, 97, 484, 530, 134, 641, 491, 531, 553}, {50, 232, 5, 428, 272, 286, 53, 470, 642, 478}, {483, 165, 358, 354, 587, 555, 643, 589, 591, 378}, {157, 483, 487, 488, 616, 550, 644, 645, 537, 551}, {425, 488, 417, 419, 579, 581, 463, 440, 634, 461}, {222, 230, 484, 226, 270, 606, 500, 267, 245, 635}, {299, 363, 233, 291, 509, 508, 507, 345, 646, 647}, {103, 356, 73, 95, 518, 386, 149, 147, 592, 122}, {229, 44, 45, 100, 262, 48, 249, 506, 132, 123}, {356, 230, 38, 360, 599, 252, 385, 384, 605, 383}, {104, 223, 45, 96, 648, 247, 151, 150, 649, 125}, {22, 159, 293, 288, 175, 650, 303, 305, 651, 304}, {352, 356, 360, 484, 400, 384, 399, 598, 608, 607}, {2, 361, 168, 29, 414, 652, 218, 32, 403, 213}, {484, 483, 359, 97, 491, 596, 597, 553, 641, 653}, {483, 157, 160, 164, 616, 204, 588, 654, 203, 177}, {92, 484, 100, 95, 531, 655, 139, 137, 554, 115}, {223, 420, 96, 104, 529, 656, 649, 648, 657, 150}, {85, 425, 292, 86, 441, 621, 302, 89, 457, 324}, {355, 352, 486, 357, 397, 637, 658, 381, 394, 514}, {353, 289, 487, 357, 578, 600, 566, 366, 659, 660}, {66, 295, 357, 291, 320, 512, 380, 318, 319, 513}, {488, 487, 287, 489, 551, 662, 661, 538, 552, 630}, {486, 294, 287, 290, 609, 334, 629, 628, 307, 332}, {227, 223, 485, 222, 236, 525, 526, 263, 264, 515}, {355, 486, 226, 291, 658, 610, 663, 664, 511, 611}, {43, 103, 95, 225, 146, 147, 114, 243, 523, 593}, {356, 230, 484, 225, 599, 606, 608, 524, 251, 636}, {64, 295, 289, 357, 309, 310, 311, 367, 512, 659}, {157, 482, 162, 158, 665, 619, 198, 199, 617, 171}, {223, 229, 45, 96, 248, 249, 247, 649, 505, 125}, {222, 229, 484, 225, 268, 574, 500, 269, 242, 636}, {422, 78, 418, 99, 433, 435, 434, 569, 112, 666}, {422, 80, 79, 99, 447, 83, 455, 569, 128, 130}, {159, 22, 293, 163, 175, 303, 650, 174, 173, 584}, {101, 362, 71, 6, 667, 405, 141, 154, 415, 74}, {93, 483, 354, 160, 668, 589, 669, 670, 588, 590}, {355, 486, 291, 357, 658, 511, 664, 381, 514, 513}, {362, 101, 169, 6, 667, 567, 671, 415, 154, 220}, {94, 482, 418, 99, 672, 618, 673, 113, 674, 666}, {488, 482, 489, 417, 536, 539, 538, 581, 627, 582}, {484, 356, 95, 359, 608, 592, 554, 597, 387, 594}, {363, 355, 233, 291, 407, 542, 508, 646, 664, 647}, {485, 92, 96, 99, 532, 140, 675, 676, 138, 127}, {78, 94, 418, 99, 111, 673, 435, 112, 113, 666}, {92, 483, 97, 93, 530, 641, 134, 133, 668, 105}, {484, 95, 97, 359, 554, 121, 553, 597, 594, 653}, {72, 71, 97, 359, 75, 106, 129, 390, 371, 653}, {94, 482, 99, 92, 672, 674, 113, 136, 573, 138}, {102, 167, 7, 426, 557, 221, 155, 559, 549, 480}, {10, 164, 158, 98, 184, 183, 182, 118, 558, 541}, {482, 422, 99, 485, 626, 569, 674, 548, 576, 676}, {15, 158, 426, 167, 172, 677, 466, 207, 206, 549}, {92, 482, 99, 485, 573, 674, 138, 532, 548, 676}, {158, 15, 426, 418, 172, 466, 677, 614, 430, 467}, {38, 356, 234, 225, 385, 520, 280, 250, 524, 275}, {94, 482, 158, 418, 672, 617, 540, 673, 618, 614}, {364, 356, 234, 38, 410, 520, 521, 411, 385, 280}, {93, 160, 8, 98, 670, 178, 108, 110, 678, 109}, {355, 233, 226, 36, 542, 277, 663, 374, 278, 246}, {160, 93, 8, 169, 670, 108, 178, 210, 568, 211}, {227, 223, 50, 420, 236, 237, 235, 527, 529, 438}, {363, 0, 233, 36, 413, 283, 508, 406, 39, 278}, {486, 295, 287, 291, 510, 333, 629, 511, 319, 335}, {59, 294, 291, 226, 321, 322, 323, 256, 585, 611}, {66, 363, 299, 291, 409, 509, 347, 318, 646, 345}, {486, 352, 487, 357, 637, 639, 638, 514, 394, 660}, {295, 486, 487, 357, 510, 638, 679, 512, 514, 660}, {296, 22, 288, 166, 337, 305, 336, 604, 209, 680}, {361, 64, 2, 297, 401, 67, 414, 681, 342, 349}, {95, 97, 359, 73, 121, 653, 594, 122, 120, 388}, {423, 482, 417, 418, 620, 627, 460, 431, 618, 458}, {65, 295, 357, 66, 327, 512, 389, 69, 320, 380}, {97, 72, 359, 73, 129, 390, 653, 120, 76, 388}, {420, 223, 96, 485, 529, 649, 656, 528, 525, 675}, {159, 488, 293, 288, 682, 683, 650, 651, 684, 304}, {31, 165, 160, 354, 187, 186, 185, 377, 591, 590}, {484, 486, 487, 489, 502, 638, 560, 496, 503, 552}, {486, 295, 487, 287, 510, 679, 638, 629, 333, 662}, {59, 233, 226, 291, 282, 277, 256, 323, 647, 611}, {233, 355, 226, 291, 542, 663, 277, 647, 664, 611}, {425, 421, 489, 490, 449, 685, 580, 533, 517, 625}, {288, 488, 292, 85, 684, 622, 301, 300, 632, 302}, {421, 425, 489, 417, 449, 580, 685, 465, 463, 582}, {294, 228, 57, 290, 556, 238, 308, 307, 686, 306}, {165, 31, 358, 354, 187, 379, 555, 591, 377, 378}, {103, 356, 364, 73, 518, 410, 522, 149, 386, 412}, {352, 483, 358, 354, 595, 643, 395, 396, 589, 378}, {22, 159, 288, 166, 175, 651, 305, 209, 208, 680}, {356, 352, 359, 484, 400, 398, 387, 608, 598, 597}, {64, 361, 353, 297, 401, 402, 365, 342, 681, 577}, {355, 66, 357, 291, 382, 380, 381, 664, 318, 513}, {487, 486, 287, 489, 638, 629, 662, 552, 503, 630}, {298, 57, 490, 290, 339, 687, 534, 340, 306, 498}, {31, 362, 169, 6, 408, 671, 215, 35, 415, 220}, {488, 425, 292, 85, 579, 621, 622, 632, 441, 302}, {483, 352, 359, 354, 595, 398, 596, 589, 396, 372}, {94, 78, 418, 426, 111, 435, 673, 688, 468, 467}, {229, 43, 44, 100, 241, 47, 262, 506, 116, 132}, {31, 165, 358, 30, 187, 555, 379, 34, 196, 391}, {429, 231, 52, 490, 640, 281, 475, 516, 547, 546}, {94, 102, 78, 426, 144, 145, 111, 688, 559, 468}, {421, 429, 52, 490, 476, 475, 451, 517, 516, 546}, {364, 103, 73, 4, 522, 149, 412, 416, 153, 77}, {420, 227, 424, 50, 527, 571, 437, 438, 235, 436}, {104, 80, 5, 428, 152, 84, 156, 689, 473, 478}, {227, 51, 52, 424, 260, 55, 255, 571, 456, 453}, {487, 289, 293, 287, 600, 313, 601, 662, 331, 328}, {166, 159, 288, 488, 208, 651, 680, 690, 682, 684}, {289, 161, 353, 487, 586, 562, 578, 600, 564, 566}, {482, 485, 489, 417, 548, 495, 539, 627, 544, 582}, {50, 227, 424, 51, 235, 571, 436, 54, 260, 456}, {488, 489, 287, 292, 538, 630, 661, 622, 623, 330}, {482, 483, 157, 488, 535, 616, 665, 536, 537, 645}, {80, 420, 104, 96, 445, 657, 152, 126, 656, 150}, {232, 104, 45, 5, 691, 151, 279, 286, 156, 49}, {288, 488, 287, 292, 684, 661, 329, 301, 622, 330}, {295, 289, 487, 287, 310, 600, 679, 333, 331, 662}, {157, 161, 163, 487, 202, 192, 201, 644, 564, 602}, {483, 482, 164, 98, 535, 692, 654, 694, 693, 558}, {3, 296, 85, 427, 350, 338, 88, 479, 631, 471}, {92, 483, 93, 98, 530, 668, 133, 135, 694, 110}, {95, 484, 100, 225, 554, 655, 115, 593, 636, 695}, {231, 224, 490, 57, 273, 545, 547, 274, 240, 687}, {64, 289, 353, 357, 311, 578, 365, 367, 659, 366}, {2, 297, 24, 168, 349, 344, 28, 218, 696, 217}, {361, 297, 168, 353, 681, 696, 652, 402, 577, 697}, {353, 161, 168, 29, 562, 212, 697, 370, 181, 213}, {289, 295, 487, 357, 310, 679, 600, 659, 512, 660}, {352, 353, 487, 357, 393, 566, 639, 394, 366, 660}, {361, 353, 168, 29, 402, 697, 652, 403, 370, 213}, {484, 229, 100, 225, 574, 506, 655, 636, 242, 695}, {104, 223, 232, 45, 648, 271, 691, 151, 247, 279}, {160, 164, 8, 98, 177, 176, 178, 678, 558, 109}, {164, 9, 8, 98, 197, 12, 176, 558, 131, 109}, {165, 161, 358, 29, 180, 563, 555, 179, 181, 368}, {297, 361, 168, 2, 681, 652, 696, 349, 414, 218}, {161, 353, 358, 29, 562, 369, 563, 181, 370, 368}, {230, 37, 38, 360, 261, 41, 252, 605, 392, 383}, {43, 95, 100, 225, 114, 115, 116, 243, 593, 695}, {420, 80, 104, 428, 445, 152, 657, 469, 473, 689}, {232, 104, 5, 428, 691, 156, 286, 642, 689, 478}, {59, 299, 233, 291, 346, 507, 282, 323, 345, 647}, {355, 363, 66, 291, 407, 409, 382, 664, 646, 318}, {158, 94, 418, 426, 540, 673, 614, 677, 688, 467}, {87, 429, 298, 1, 477, 603, 343, 91, 481, 348}, {420, 227, 485, 424, 527, 526, 528, 437, 571, 543}, {482, 422, 418, 99, 626, 434, 618, 674, 569, 666}, {229, 43, 100, 225, 241, 116, 506, 242, 243, 695}, {294, 486, 287, 291, 609, 629, 334, 322, 511, 335}, {17, 166, 419, 159, 216, 698, 444, 188, 208, 699}, {419, 166, 17, 427, 698, 216, 444, 472, 613, 474}, {166, 488, 419, 159, 690, 634, 698, 208, 682, 699}, {419, 488, 166, 427, 634, 690, 698, 472, 633, 613}, {160, 98, 483, 164, 678, 694, 588, 177, 558, 654}, {483, 98, 160, 93, 694, 678, 588, 668, 110, 670}, {226, 360, 486, 355, 700, 701, 610, 663, 375, 658}, {360, 36, 226, 230, 376, 246, 700, 605, 244, 245}, {226, 36, 360, 355, 246, 376, 700, 663, 374, 375}, {93, 169, 362, 101, 568, 671, 702, 142, 567, 667}, {93, 362, 71, 101, 702, 405, 107, 142, 667, 141}, {71, 362, 93, 354, 405, 702, 107, 373, 404, 669}, {489, 424, 417, 485, 572, 464, 582, 495, 543, 544}, {417, 424, 489, 421, 464, 572, 582, 465, 452, 685}, {102, 10, 158, 94, 148, 182, 703, 144, 119, 540}, {158, 10, 102, 167, 182, 148, 703, 206, 214, 557}, {102, 158, 426, 94, 703, 677, 559, 144, 540, 688}, {426, 158, 102, 167, 677, 703, 559, 549, 206, 557}, {421, 489, 227, 424, 685, 570, 704, 452, 572, 571}, {52, 421, 227, 424, 451, 704, 255, 453, 452, 571}, {489, 227, 222, 224, 570, 263, 501, 705, 254, 265}, {489, 222, 227, 485, 501, 263, 570, 495, 515, 526}, {87, 425, 292, 490, 448, 621, 315, 497, 533, 499}, {292, 425, 87, 86, 621, 448, 315, 324, 457, 90}, {104, 420, 232, 223, 657, 706, 691, 648, 529, 271}, {104, 232, 420, 428, 691, 706, 657, 689, 642, 469}, {232, 420, 50, 223, 706, 438, 272, 271, 529, 237}, {232, 50, 420, 428, 272, 438, 706, 642, 470, 469}, {226, 484, 360, 230, 635, 607, 700, 245, 606, 605}, {226, 360, 484, 486, 700, 607, 635, 610, 701, 502}, {486, 360, 352, 355, 701, 399, 637, 658, 375, 397}, {352, 360, 486, 484, 399, 701, 637, 598, 607, 502}, {162, 488, 157, 159, 707, 645, 198, 189, 682, 200}, {157, 488, 162, 482, 645, 707, 198, 665, 536, 619}, {490, 57, 429, 231, 687, 708, 516, 547, 274, 640}, {429, 57, 490, 298, 708, 687, 516, 603, 339, 534}, {57, 1, 429, 231, 60, 481, 708, 274, 284, 640}, {429, 1, 57, 298, 481, 60, 708, 603, 348, 339}, {158, 98, 482, 94, 541, 693, 617, 540, 117, 672}, {482, 98, 158, 164, 693, 541, 617, 692, 558, 183}, {353, 297, 161, 289, 577, 709, 562, 578, 341, 586}, {353, 161, 297, 168, 562, 709, 577, 697, 212, 696}, {161, 297, 24, 289, 709, 344, 191, 586, 341, 312}, {161, 24, 297, 168, 191, 344, 709, 212, 217, 696}, {159, 293, 487, 163, 650, 601, 710, 174, 584, 602}, {487, 293, 159, 488, 601, 650, 710, 551, 683, 682}, {159, 487, 157, 163, 710, 644, 200, 174, 602, 201}, {157, 487, 159, 488, 644, 710, 200, 645, 551, 682}, {290, 228, 486, 294, 686, 612, 628, 307, 556, 609}, {290, 486, 228, 489, 628, 612, 686, 624, 503, 711}, {485, 99, 420, 422, 676, 712, 528, 576, 569, 446}, {420, 99, 485, 96, 712, 676, 528, 656, 127, 675}, {99, 80, 420, 422, 128, 445, 712, 569, 447, 446}, {420, 80, 99, 96, 445, 128, 712, 656, 126, 127}, {96, 484, 229, 100, 713, 574, 505, 124, 655, 506}, {92, 96, 484, 485, 140, 713, 531, 532, 675, 492}, {92, 484, 96, 100, 531, 713, 140, 139, 655, 124}, {161, 358, 483, 165, 563, 643, 714, 180, 555, 587}, {483, 358, 161, 487, 643, 563, 714, 550, 565, 564}, {161, 483, 157, 165, 714, 616, 202, 180, 587, 205}, {157, 483, 161, 487, 616, 714, 202, 644, 550, 564}, {362, 31, 160, 354, 408, 185, 715, 404, 377, 590}, {160, 31, 362, 169, 185, 408, 715, 210, 215, 671}, {362, 160, 93, 354, 715, 670, 702, 404, 590, 669}, {93, 160, 362, 169, 670, 715, 702, 568, 210, 671}, {482, 164, 157, 483, 692, 203, 665, 535, 654, 616}, {157, 164, 482, 158, 203, 692, 665, 199, 183, 617}, {228, 489, 222, 224, 711, 501, 266, 239, 705, 265}, {222, 489, 228, 486, 501, 711, 266, 504, 503, 612}, {288, 166, 427, 296, 680, 613, 716, 336, 604, 631}, {288, 427, 166, 488, 716, 613, 680, 684, 633, 690}, {85, 288, 427, 296, 300, 716, 471, 338, 336, 631}, {85, 427, 288, 488, 471, 716, 300, 632, 633, 684}, {484, 223, 96, 229, 575, 649, 713, 574, 248, 505}, {484, 96, 223, 485, 713, 649, 575, 492, 675, 525}, {488, 293, 287, 487, 683, 328, 661, 551, 601, 662}, {287, 293, 488, 288, 328, 683, 661, 329, 304, 684}, {419, 488, 162, 159, 634, 707, 717, 699, 682, 189}, {162, 419, 17, 423, 717, 444, 190, 561, 443, 442}, {17, 419, 162, 159, 444, 717, 190, 188, 699, 189}, {482, 98, 92, 94, 693, 135, 573, 672, 117, 136}, {92, 98, 482, 483, 135, 693, 573, 530, 694, 535}, {358, 487, 352, 353, 565, 639, 395, 369, 566, 393}, {352, 487, 358, 483, 639, 565, 395, 595, 550, 643}, {359, 483, 93, 97, 596, 668, 718, 653, 641, 105}, {359, 93, 483, 354, 718, 668, 596, 372, 669, 589}, {71, 359, 93, 97, 371, 718, 107, 106, 653, 105}, {71, 93, 359, 354, 107, 718, 371, 373, 669, 372}, {52, 490, 227, 421, 546, 719, 255, 451, 517, 704}, {227, 490, 52, 224, 719, 546, 255, 254, 545, 253}, {490, 489, 227, 421, 625, 570, 719, 517, 685, 704}, {227, 489, 490, 224, 570, 625, 719, 254, 705, 545}, {57, 490, 228, 224, 687, 720, 238, 240, 545, 239}, {228, 490, 57, 290, 720, 687, 238, 686, 498, 306}, {490, 489, 228, 224, 625, 711, 720, 545, 705, 239}, {228, 489, 490, 290, 711, 625, 720, 686, 624, 498}, {162, 419, 482, 488, 717, 721, 619, 707, 634, 536}, {482, 419, 162, 423, 721, 717, 619, 620, 443, 561}, {419, 417, 482, 488, 461, 627, 721, 634, 581, 536}, {482, 417, 419, 423, 627, 461, 721, 620, 460, 443}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 8
+ + nb vectors : 7
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 48
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{6, 8, 11}, {8, 9, 12}, {9, 10, 13}, {10, 7, 14}, {7, 15, 18}, {15, 16, 19}, {16, 17, 20}, {17, 3, 21}, {3, 22, 25}, {22, 23, 26}, {23, 24, 27}, {24, 2, 28}, {2, 29, 32}, {29, 30, 33}, {30, 31, 34}, {31, 6, 35}, {0, 36, 39}, {36, 37, 40}, {37, 38, 41}, {38, 4, 42}, {4, 43, 46}, {43, 44, 47}, {44, 45, 48}, {45, 5, 49}, {5, 50, 53}, {50, 51, 54}, {51, 52, 55}, {52, 1, 56}, {1, 57, 60}, {57, 58, 61}, {58, 59, 62}, {59, 0, 63}, {2, 64, 67}, {64, 65, 68}, {65, 66, 69}, {66, 0, 70}, {6, 71, 74}, {71, 72, 75}, {72, 73, 76}, {73, 4, 77}, {7, 78, 81}, {78, 79, 82}, {79, 80, 83}, {80, 5, 84}, {3, 85, 88}, {85, 86, 89}, {86, 87, 90}, {87, 1, 91}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_10
+ size : 341
+ nb_component : 10
+ allocated size : 2000
+ memory size : 78kB
+ values : {{484, 483, 485, 489, 491, 493, 492, 496, 494, 495}, {87, 290, 490, 292, 317, 498, 497, 315, 316, 499}, {222, 484, 489, 486, 500, 496, 501, 504, 502, 503}, {96, 229, 45, 100, 505, 249, 125, 124, 506, 123}, {59, 0, 233, 299, 63, 283, 282, 346, 351, 507}, {0, 363, 233, 299, 413, 508, 283, 351, 509, 507}, {486, 295, 291, 357, 510, 319, 511, 514, 512, 513}, {484, 222, 489, 485, 500, 501, 496, 492, 515, 495}, {87, 429, 421, 490, 477, 476, 450, 497, 516, 517}, {103, 356, 234, 364, 518, 520, 519, 522, 410, 521}, {356, 103, 234, 225, 518, 519, 520, 524, 523, 275}, {43, 103, 225, 234, 146, 523, 243, 276, 519, 275}, {223, 227, 485, 420, 236, 526, 525, 529, 527, 528}, {483, 92, 484, 485, 530, 531, 491, 493, 532, 492}, {87, 421, 425, 490, 450, 449, 448, 497, 517, 533}, {298, 87, 290, 490, 343, 317, 340, 534, 497, 498}, {482, 483, 488, 489, 535, 537, 536, 539, 494, 538}, {94, 10, 158, 98, 119, 182, 540, 117, 118, 541}, {355, 363, 233, 36, 407, 508, 542, 374, 406, 278}, {485, 420, 424, 417, 528, 437, 543, 544, 462, 464}, {231, 224, 52, 490, 273, 253, 281, 547, 545, 546}, {483, 482, 485, 489, 535, 548, 493, 494, 539, 495}, {167, 15, 7, 426, 207, 18, 221, 549, 466, 480}, {483, 487, 488, 489, 550, 551, 537, 494, 552, 538}, {484, 92, 97, 95, 531, 134, 553, 554, 137, 121}, {29, 165, 30, 358, 179, 196, 33, 368, 555, 391}, {228, 294, 58, 59, 556, 326, 259, 258, 321, 62}, {102, 10, 7, 167, 148, 14, 155, 557, 214, 221}, {9, 10, 98, 164, 13, 118, 131, 197, 184, 558}, {78, 102, 7, 426, 145, 155, 81, 468, 559, 480}, {483, 484, 487, 489, 491, 560, 550, 494, 496, 552}, {16, 423, 162, 17, 454, 561, 195, 20, 442, 190}, {353, 161, 358, 487, 562, 563, 369, 566, 564, 565}, {93, 101, 8, 169, 142, 143, 108, 568, 567, 211}, {78, 422, 79, 99, 433, 455, 82, 112, 569, 130}, {485, 227, 489, 424, 526, 570, 495, 543, 571, 572}, {482, 92, 483, 485, 573, 530, 535, 548, 532, 493}, {223, 222, 229, 484, 264, 268, 248, 575, 500, 574}, {422, 420, 485, 417, 446, 528, 576, 459, 462, 544}, {64, 297, 353, 289, 342, 577, 365, 311, 341, 578}, {101, 6, 8, 169, 154, 11, 143, 567, 220, 211}, {425, 488, 489, 417, 579, 538, 580, 463, 581, 582}, {163, 161, 24, 293, 192, 191, 193, 584, 583, 314}, {228, 294, 59, 226, 556, 321, 258, 257, 585, 256}, {161, 289, 24, 293, 586, 312, 191, 583, 313, 314}, {165, 483, 160, 354, 587, 588, 186, 591, 589, 590}, {103, 356, 95, 225, 518, 592, 147, 523, 524, 593}, {356, 95, 359, 73, 592, 594, 387, 386, 122, 388}, {352, 483, 359, 484, 595, 596, 398, 598, 491, 597}, {103, 43, 4, 234, 146, 46, 153, 519, 276, 285}, {230, 356, 38, 225, 599, 385, 252, 251, 524, 250}, {161, 289, 293, 487, 586, 313, 583, 564, 600, 601}, {161, 487, 293, 163, 564, 601, 583, 192, 602, 584}, {429, 87, 298, 490, 477, 343, 603, 516, 497, 534}, {364, 38, 234, 4, 411, 280, 521, 416, 42, 285}, {22, 296, 3, 166, 337, 350, 25, 209, 604, 219}, {230, 37, 360, 36, 261, 392, 605, 244, 40, 376}, {356, 230, 360, 484, 599, 605, 384, 608, 606, 607}, {22, 23, 293, 163, 26, 325, 303, 173, 194, 584}, {294, 486, 291, 226, 609, 511, 322, 585, 610, 611}, {294, 228, 486, 226, 556, 612, 609, 585, 257, 610}, {3, 17, 166, 427, 21, 216, 219, 479, 474, 613}, {364, 103, 4, 234, 522, 153, 416, 521, 519, 285}, {158, 15, 418, 162, 172, 430, 614, 171, 170, 615}, {15, 423, 418, 162, 432, 431, 430, 170, 561, 615}, {157, 483, 160, 165, 616, 588, 204, 205, 587, 186}, {482, 158, 418, 162, 617, 614, 618, 619, 171, 615}, {423, 482, 418, 162, 620, 618, 431, 561, 619, 615}, {425, 488, 292, 489, 579, 622, 621, 580, 538, 623}, {290, 489, 490, 292, 624, 625, 498, 316, 623, 499}, {222, 223, 485, 484, 264, 525, 515, 500, 575, 492}, {363, 0, 66, 299, 413, 70, 409, 509, 351, 347}, {482, 422, 485, 417, 626, 576, 548, 627, 459, 544}, {486, 290, 287, 489, 628, 332, 629, 503, 624, 630}, {296, 3, 166, 427, 350, 219, 604, 631, 479, 613}, {489, 290, 287, 292, 624, 332, 630, 623, 316, 330}, {488, 85, 427, 419, 632, 471, 633, 634, 439, 472}, {425, 488, 419, 85, 579, 634, 440, 441, 632, 439}, {15, 16, 423, 162, 19, 454, 432, 170, 195, 561}, {65, 64, 357, 295, 68, 367, 389, 327, 309, 512}, {222, 484, 486, 226, 500, 502, 504, 267, 635, 610}, {356, 484, 95, 225, 608, 554, 592, 524, 636, 593}, {352, 484, 486, 487, 598, 502, 637, 639, 560, 638}, {230, 222, 484, 225, 270, 500, 606, 251, 269, 636}, {294, 228, 58, 57, 556, 259, 326, 308, 238, 61}, {352, 483, 484, 487, 595, 491, 598, 639, 550, 560}, {23, 163, 24, 293, 194, 193, 27, 325, 584, 314}, {429, 231, 1, 52, 640, 284, 481, 475, 281, 56}, {228, 222, 486, 226, 266, 504, 612, 257, 267, 610}, {482, 422, 417, 418, 626, 459, 627, 618, 434, 458}, {489, 425, 490, 292, 580, 533, 625, 623, 621, 499}, {483, 92, 97, 484, 530, 134, 641, 491, 531, 553}, {50, 232, 5, 428, 272, 286, 53, 470, 642, 478}, {483, 165, 358, 354, 587, 555, 643, 589, 591, 378}, {157, 483, 487, 488, 616, 550, 644, 645, 537, 551}, {425, 488, 417, 419, 579, 581, 463, 440, 634, 461}, {222, 230, 484, 226, 270, 606, 500, 267, 245, 635}, {299, 363, 233, 291, 509, 508, 507, 345, 646, 647}, {103, 356, 73, 95, 518, 386, 149, 147, 592, 122}, {229, 44, 45, 100, 262, 48, 249, 506, 132, 123}, {356, 230, 38, 360, 599, 252, 385, 384, 605, 383}, {104, 223, 45, 96, 648, 247, 151, 150, 649, 125}, {22, 159, 293, 288, 175, 650, 303, 305, 651, 304}, {352, 356, 360, 484, 400, 384, 399, 598, 608, 607}, {2, 361, 168, 29, 414, 652, 218, 32, 403, 213}, {484, 483, 359, 97, 491, 596, 597, 553, 641, 653}, {483, 157, 160, 164, 616, 204, 588, 654, 203, 177}, {92, 484, 100, 95, 531, 655, 139, 137, 554, 115}, {223, 420, 96, 104, 529, 656, 649, 648, 657, 150}, {85, 425, 292, 86, 441, 621, 302, 89, 457, 324}, {355, 352, 486, 357, 397, 637, 658, 381, 394, 514}, {353, 289, 487, 357, 578, 600, 566, 366, 659, 660}, {66, 295, 357, 291, 320, 512, 380, 318, 319, 513}, {488, 487, 287, 489, 551, 662, 661, 538, 552, 630}, {486, 294, 287, 290, 609, 334, 629, 628, 307, 332}, {227, 223, 485, 222, 236, 525, 526, 263, 264, 515}, {355, 486, 226, 291, 658, 610, 663, 664, 511, 611}, {43, 103, 95, 225, 146, 147, 114, 243, 523, 593}, {356, 230, 484, 225, 599, 606, 608, 524, 251, 636}, {64, 295, 289, 357, 309, 310, 311, 367, 512, 659}, {157, 482, 162, 158, 665, 619, 198, 199, 617, 171}, {223, 229, 45, 96, 248, 249, 247, 649, 505, 125}, {222, 229, 484, 225, 268, 574, 500, 269, 242, 636}, {422, 78, 418, 99, 433, 435, 434, 569, 112, 666}, {422, 80, 79, 99, 447, 83, 455, 569, 128, 130}, {159, 22, 293, 163, 175, 303, 650, 174, 173, 584}, {101, 362, 71, 6, 667, 405, 141, 154, 415, 74}, {93, 483, 354, 160, 668, 589, 669, 670, 588, 590}, {355, 486, 291, 357, 658, 511, 664, 381, 514, 513}, {362, 101, 169, 6, 667, 567, 671, 415, 154, 220}, {94, 482, 418, 99, 672, 618, 673, 113, 674, 666}, {488, 482, 489, 417, 536, 539, 538, 581, 627, 582}, {484, 356, 95, 359, 608, 592, 554, 597, 387, 594}, {363, 355, 233, 291, 407, 542, 508, 646, 664, 647}, {485, 92, 96, 99, 532, 140, 675, 676, 138, 127}, {78, 94, 418, 99, 111, 673, 435, 112, 113, 666}, {92, 483, 97, 93, 530, 641, 134, 133, 668, 105}, {484, 95, 97, 359, 554, 121, 553, 597, 594, 653}, {72, 71, 97, 359, 75, 106, 129, 390, 371, 653}, {94, 482, 99, 92, 672, 674, 113, 136, 573, 138}, {102, 167, 7, 426, 557, 221, 155, 559, 549, 480}, {10, 164, 158, 98, 184, 183, 182, 118, 558, 541}, {482, 422, 99, 485, 626, 569, 674, 548, 576, 676}, {15, 158, 426, 167, 172, 677, 466, 207, 206, 549}, {92, 482, 99, 485, 573, 674, 138, 532, 548, 676}, {158, 15, 426, 418, 172, 466, 677, 614, 430, 467}, {38, 356, 234, 225, 385, 520, 280, 250, 524, 275}, {94, 482, 158, 418, 672, 617, 540, 673, 618, 614}, {364, 356, 234, 38, 410, 520, 521, 411, 385, 280}, {93, 160, 8, 98, 670, 178, 108, 110, 678, 109}, {355, 233, 226, 36, 542, 277, 663, 374, 278, 246}, {160, 93, 8, 169, 670, 108, 178, 210, 568, 211}, {227, 223, 50, 420, 236, 237, 235, 527, 529, 438}, {363, 0, 233, 36, 413, 283, 508, 406, 39, 278}, {486, 295, 287, 291, 510, 333, 629, 511, 319, 335}, {59, 294, 291, 226, 321, 322, 323, 256, 585, 611}, {66, 363, 299, 291, 409, 509, 347, 318, 646, 345}, {486, 352, 487, 357, 637, 639, 638, 514, 394, 660}, {295, 486, 487, 357, 510, 638, 679, 512, 514, 660}, {296, 22, 288, 166, 337, 305, 336, 604, 209, 680}, {361, 64, 2, 297, 401, 67, 414, 681, 342, 349}, {95, 97, 359, 73, 121, 653, 594, 122, 120, 388}, {423, 482, 417, 418, 620, 627, 460, 431, 618, 458}, {65, 295, 357, 66, 327, 512, 389, 69, 320, 380}, {97, 72, 359, 73, 129, 390, 653, 120, 76, 388}, {420, 223, 96, 485, 529, 649, 656, 528, 525, 675}, {159, 488, 293, 288, 682, 683, 650, 651, 684, 304}, {31, 165, 160, 354, 187, 186, 185, 377, 591, 590}, {484, 486, 487, 489, 502, 638, 560, 496, 503, 552}, {486, 295, 487, 287, 510, 679, 638, 629, 333, 662}, {59, 233, 226, 291, 282, 277, 256, 323, 647, 611}, {233, 355, 226, 291, 542, 663, 277, 647, 664, 611}, {425, 421, 489, 490, 449, 685, 580, 533, 517, 625}, {288, 488, 292, 85, 684, 622, 301, 300, 632, 302}, {421, 425, 489, 417, 449, 580, 685, 465, 463, 582}, {294, 228, 57, 290, 556, 238, 308, 307, 686, 306}, {165, 31, 358, 354, 187, 379, 555, 591, 377, 378}, {103, 356, 364, 73, 518, 410, 522, 149, 386, 412}, {352, 483, 358, 354, 595, 643, 395, 396, 589, 378}, {22, 159, 288, 166, 175, 651, 305, 209, 208, 680}, {356, 352, 359, 484, 400, 398, 387, 608, 598, 597}, {64, 361, 353, 297, 401, 402, 365, 342, 681, 577}, {355, 66, 357, 291, 382, 380, 381, 664, 318, 513}, {487, 486, 287, 489, 638, 629, 662, 552, 503, 630}, {298, 57, 490, 290, 339, 687, 534, 340, 306, 498}, {31, 362, 169, 6, 408, 671, 215, 35, 415, 220}, {488, 425, 292, 85, 579, 621, 622, 632, 441, 302}, {483, 352, 359, 354, 595, 398, 596, 589, 396, 372}, {94, 78, 418, 426, 111, 435, 673, 688, 468, 467}, {229, 43, 44, 100, 241, 47, 262, 506, 116, 132}, {31, 165, 358, 30, 187, 555, 379, 34, 196, 391}, {429, 231, 52, 490, 640, 281, 475, 516, 547, 546}, {94, 102, 78, 426, 144, 145, 111, 688, 559, 468}, {421, 429, 52, 490, 476, 475, 451, 517, 516, 546}, {364, 103, 73, 4, 522, 149, 412, 416, 153, 77}, {420, 227, 424, 50, 527, 571, 437, 438, 235, 436}, {104, 80, 5, 428, 152, 84, 156, 689, 473, 478}, {227, 51, 52, 424, 260, 55, 255, 571, 456, 453}, {487, 289, 293, 287, 600, 313, 601, 662, 331, 328}, {166, 159, 288, 488, 208, 651, 680, 690, 682, 684}, {289, 161, 353, 487, 586, 562, 578, 600, 564, 566}, {482, 485, 489, 417, 548, 495, 539, 627, 544, 582}, {50, 227, 424, 51, 235, 571, 436, 54, 260, 456}, {488, 489, 287, 292, 538, 630, 661, 622, 623, 330}, {482, 483, 157, 488, 535, 616, 665, 536, 537, 645}, {80, 420, 104, 96, 445, 657, 152, 126, 656, 150}, {232, 104, 45, 5, 691, 151, 279, 286, 156, 49}, {288, 488, 287, 292, 684, 661, 329, 301, 622, 330}, {295, 289, 487, 287, 310, 600, 679, 333, 331, 662}, {157, 161, 163, 487, 202, 192, 201, 644, 564, 602}, {483, 482, 164, 98, 535, 692, 654, 694, 693, 558}, {3, 296, 85, 427, 350, 338, 88, 479, 631, 471}, {92, 483, 93, 98, 530, 668, 133, 135, 694, 110}, {95, 484, 100, 225, 554, 655, 115, 593, 636, 695}, {231, 224, 490, 57, 273, 545, 547, 274, 240, 687}, {64, 289, 353, 357, 311, 578, 365, 367, 659, 366}, {2, 297, 24, 168, 349, 344, 28, 218, 696, 217}, {361, 297, 168, 353, 681, 696, 652, 402, 577, 697}, {353, 161, 168, 29, 562, 212, 697, 370, 181, 213}, {289, 295, 487, 357, 310, 679, 600, 659, 512, 660}, {352, 353, 487, 357, 393, 566, 639, 394, 366, 660}, {361, 353, 168, 29, 402, 697, 652, 403, 370, 213}, {484, 229, 100, 225, 574, 506, 655, 636, 242, 695}, {104, 223, 232, 45, 648, 271, 691, 151, 247, 279}, {160, 164, 8, 98, 177, 176, 178, 678, 558, 109}, {164, 9, 8, 98, 197, 12, 176, 558, 131, 109}, {165, 161, 358, 29, 180, 563, 555, 179, 181, 368}, {297, 361, 168, 2, 681, 652, 696, 349, 414, 218}, {161, 353, 358, 29, 562, 369, 563, 181, 370, 368}, {230, 37, 38, 360, 261, 41, 252, 605, 392, 383}, {43, 95, 100, 225, 114, 115, 116, 243, 593, 695}, {420, 80, 104, 428, 445, 152, 657, 469, 473, 689}, {232, 104, 5, 428, 691, 156, 286, 642, 689, 478}, {59, 299, 233, 291, 346, 507, 282, 323, 345, 647}, {355, 363, 66, 291, 407, 409, 382, 664, 646, 318}, {158, 94, 418, 426, 540, 673, 614, 677, 688, 467}, {87, 429, 298, 1, 477, 603, 343, 91, 481, 348}, {420, 227, 485, 424, 527, 526, 528, 437, 571, 543}, {482, 422, 418, 99, 626, 434, 618, 674, 569, 666}, {229, 43, 100, 225, 241, 116, 506, 242, 243, 695}, {294, 486, 287, 291, 609, 629, 334, 322, 511, 335}, {17, 166, 419, 159, 216, 698, 444, 188, 208, 699}, {419, 166, 17, 427, 698, 216, 444, 472, 613, 474}, {166, 488, 419, 159, 690, 634, 698, 208, 682, 699}, {419, 488, 166, 427, 634, 690, 698, 472, 633, 613}, {160, 98, 483, 164, 678, 694, 588, 177, 558, 654}, {483, 98, 160, 93, 694, 678, 588, 668, 110, 670}, {226, 360, 486, 355, 700, 701, 610, 663, 375, 658}, {360, 36, 226, 230, 376, 246, 700, 605, 244, 245}, {226, 36, 360, 355, 246, 376, 700, 663, 374, 375}, {93, 169, 362, 101, 568, 671, 702, 142, 567, 667}, {93, 362, 71, 101, 702, 405, 107, 142, 667, 141}, {71, 362, 93, 354, 405, 702, 107, 373, 404, 669}, {489, 424, 417, 485, 572, 464, 582, 495, 543, 544}, {417, 424, 489, 421, 464, 572, 582, 465, 452, 685}, {102, 10, 158, 94, 148, 182, 703, 144, 119, 540}, {158, 10, 102, 167, 182, 148, 703, 206, 214, 557}, {102, 158, 426, 94, 703, 677, 559, 144, 540, 688}, {426, 158, 102, 167, 677, 703, 559, 549, 206, 557}, {421, 489, 227, 424, 685, 570, 704, 452, 572, 571}, {52, 421, 227, 424, 451, 704, 255, 453, 452, 571}, {489, 227, 222, 224, 570, 263, 501, 705, 254, 265}, {489, 222, 227, 485, 501, 263, 570, 495, 515, 526}, {87, 425, 292, 490, 448, 621, 315, 497, 533, 499}, {292, 425, 87, 86, 621, 448, 315, 324, 457, 90}, {104, 420, 232, 223, 657, 706, 691, 648, 529, 271}, {104, 232, 420, 428, 691, 706, 657, 689, 642, 469}, {232, 420, 50, 223, 706, 438, 272, 271, 529, 237}, {232, 50, 420, 428, 272, 438, 706, 642, 470, 469}, {226, 484, 360, 230, 635, 607, 700, 245, 606, 605}, {226, 360, 484, 486, 700, 607, 635, 610, 701, 502}, {486, 360, 352, 355, 701, 399, 637, 658, 375, 397}, {352, 360, 486, 484, 399, 701, 637, 598, 607, 502}, {162, 488, 157, 159, 707, 645, 198, 189, 682, 200}, {157, 488, 162, 482, 645, 707, 198, 665, 536, 619}, {490, 57, 429, 231, 687, 708, 516, 547, 274, 640}, {429, 57, 490, 298, 708, 687, 516, 603, 339, 534}, {57, 1, 429, 231, 60, 481, 708, 274, 284, 640}, {429, 1, 57, 298, 481, 60, 708, 603, 348, 339}, {158, 98, 482, 94, 541, 693, 617, 540, 117, 672}, {482, 98, 158, 164, 693, 541, 617, 692, 558, 183}, {353, 297, 161, 289, 577, 709, 562, 578, 341, 586}, {353, 161, 297, 168, 562, 709, 577, 697, 212, 696}, {161, 297, 24, 289, 709, 344, 191, 586, 341, 312}, {161, 24, 297, 168, 191, 344, 709, 212, 217, 696}, {159, 293, 487, 163, 650, 601, 710, 174, 584, 602}, {487, 293, 159, 488, 601, 650, 710, 551, 683, 682}, {159, 487, 157, 163, 710, 644, 200, 174, 602, 201}, {157, 487, 159, 488, 644, 710, 200, 645, 551, 682}, {290, 228, 486, 294, 686, 612, 628, 307, 556, 609}, {290, 486, 228, 489, 628, 612, 686, 624, 503, 711}, {485, 99, 420, 422, 676, 712, 528, 576, 569, 446}, {420, 99, 485, 96, 712, 676, 528, 656, 127, 675}, {99, 80, 420, 422, 128, 445, 712, 569, 447, 446}, {420, 80, 99, 96, 445, 128, 712, 656, 126, 127}, {96, 484, 229, 100, 713, 574, 505, 124, 655, 506}, {92, 96, 484, 485, 140, 713, 531, 532, 675, 492}, {92, 484, 96, 100, 531, 713, 140, 139, 655, 124}, {161, 358, 483, 165, 563, 643, 714, 180, 555, 587}, {483, 358, 161, 487, 643, 563, 714, 550, 565, 564}, {161, 483, 157, 165, 714, 616, 202, 180, 587, 205}, {157, 483, 161, 487, 616, 714, 202, 644, 550, 564}, {362, 31, 160, 354, 408, 185, 715, 404, 377, 590}, {160, 31, 362, 169, 185, 408, 715, 210, 215, 671}, {362, 160, 93, 354, 715, 670, 702, 404, 590, 669}, {93, 160, 362, 169, 670, 715, 702, 568, 210, 671}, {482, 164, 157, 483, 692, 203, 665, 535, 654, 616}, {157, 164, 482, 158, 203, 692, 665, 199, 183, 617}, {228, 489, 222, 224, 711, 501, 266, 239, 705, 265}, {222, 489, 228, 486, 501, 711, 266, 504, 503, 612}, {288, 166, 427, 296, 680, 613, 716, 336, 604, 631}, {288, 427, 166, 488, 716, 613, 680, 684, 633, 690}, {85, 288, 427, 296, 300, 716, 471, 338, 336, 631}, {85, 427, 288, 488, 471, 716, 300, 632, 633, 684}, {484, 223, 96, 229, 575, 649, 713, 574, 248, 505}, {484, 96, 223, 485, 713, 649, 575, 492, 675, 525}, {488, 293, 287, 487, 683, 328, 661, 551, 601, 662}, {287, 293, 488, 288, 328, 683, 661, 329, 304, 684}, {419, 488, 162, 159, 634, 707, 717, 699, 682, 189}, {162, 419, 17, 423, 717, 444, 190, 561, 443, 442}, {17, 419, 162, 159, 444, 717, 190, 188, 699, 189}, {482, 98, 92, 94, 693, 135, 573, 672, 117, 136}, {92, 98, 482, 483, 135, 693, 573, 530, 694, 535}, {358, 487, 352, 353, 565, 639, 395, 369, 566, 393}, {352, 487, 358, 483, 639, 565, 395, 595, 550, 643}, {359, 483, 93, 97, 596, 668, 718, 653, 641, 105}, {359, 93, 483, 354, 718, 668, 596, 372, 669, 589}, {71, 359, 93, 97, 371, 718, 107, 106, 653, 105}, {71, 93, 359, 354, 107, 718, 371, 373, 669, 372}, {52, 490, 227, 421, 546, 719, 255, 451, 517, 704}, {227, 490, 52, 224, 719, 546, 255, 254, 545, 253}, {490, 489, 227, 421, 625, 570, 719, 517, 685, 704}, {227, 489, 490, 224, 570, 625, 719, 254, 705, 545}, {57, 490, 228, 224, 687, 720, 238, 240, 545, 239}, {228, 490, 57, 290, 720, 687, 238, 686, 498, 306}, {490, 489, 228, 224, 625, 711, 720, 545, 705, 239}, {228, 489, 490, 290, 711, 625, 720, 686, 624, 498}, {162, 419, 482, 488, 717, 721, 619, 707, 634, 536}, {482, 419, 162, 423, 721, 717, 619, 620, 443, 561}, {419, 417, 482, 488, 461, 627, 721, 634, 581, 536}, {482, 417, 419, 423, 627, 461, 721, 620, 460, 443}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 240
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{93, 97, 71, 105, 106, 107}, {93, 8, 98, 108, 109, 110}, {94, 78, 99, 111, 112, 113}, {43, 95, 100, 114, 115, 116}, {94, 98, 10, 117, 118, 119}, {73, 97, 95, 120, 121, 122}, {45, 100, 96, 123, 124, 125}, {80, 96, 99, 126, 127, 128}, {71, 97, 72, 106, 129, 75}, {78, 79, 99, 82, 130, 112}, {8, 9, 98, 12, 131, 109}, {43, 100, 44, 116, 132, 47}, {72, 97, 73, 129, 120, 76}, {9, 10, 98, 13, 118, 131}, {79, 80, 99, 83, 128, 130}, {44, 100, 45, 132, 123, 48}, {93, 92, 97, 133, 134, 105}, {93, 98, 92, 110, 135, 133}, {94, 92, 98, 136, 135, 117}, {92, 95, 97, 137, 121, 134}, {94, 99, 92, 113, 138, 136}, {92, 100, 95, 139, 115, 137}, {92, 99, 96, 138, 127, 140}, {92, 96, 100, 140, 124, 139}, {93, 71, 101, 107, 141, 142}, {93, 101, 8, 142, 143, 108}, {94, 102, 78, 144, 145, 111}, {43, 103, 95, 146, 147, 114}, {94, 10, 102, 119, 148, 144}, {73, 95, 103, 122, 147, 149}, {45, 96, 104, 125, 150, 151}, {80, 104, 96, 152, 150, 126}, {4, 73, 103, 77, 149, 153}, {6, 101, 71, 154, 141, 74}, {7, 102, 10, 155, 148, 14}, {7, 78, 102, 81, 145, 155}, {6, 8, 101, 11, 143, 154}, {5, 104, 80, 156, 152, 84}, {4, 103, 43, 153, 146, 46}, {5, 45, 104, 49, 151, 156}, {15, 162, 158, 170, 171, 172}, {22, 163, 159, 173, 174, 175}, {8, 164, 160, 176, 177, 178}, {29, 165, 161, 179, 180, 181}, {10, 158, 164, 182, 183, 184}, {31, 160, 165, 185, 186, 187}, {17, 159, 162, 188, 189, 190}, {24, 161, 163, 191, 192, 193}, {22, 23, 163, 26, 194, 173}, {15, 16, 162, 19, 195, 170}, {29, 30, 165, 33, 196, 179}, {8, 9, 164, 12, 197, 176}, {16, 17, 162, 20, 190, 195}, {23, 24, 163, 27, 193, 194}, {9, 10, 164, 13, 184, 197}, {30, 31, 165, 34, 187, 196}, {158, 162, 157, 171, 198, 199}, {159, 157, 162, 200, 198, 189}, {159, 163, 157, 174, 201, 200}, {161, 157, 163, 202, 201, 192}, {158, 157, 164, 199, 203, 183}, {160, 164, 157, 177, 203, 204}, {160, 157, 165, 204, 205, 186}, {161, 165, 157, 180, 205, 202}, {15, 158, 167, 172, 206, 207}, {22, 159, 166, 175, 208, 209}, {8, 160, 169, 178, 210, 211}, {29, 161, 168, 181, 212, 213}, {10, 167, 158, 214, 206, 182}, {31, 169, 160, 215, 210, 185}, {17, 166, 159, 216, 208, 188}, {24, 168, 161, 217, 212, 191}, {2, 168, 24, 218, 217, 28}, {3, 166, 17, 219, 216, 21}, {6, 169, 31, 220, 215, 35}, {7, 167, 10, 221, 214, 14}, {7, 15, 167, 18, 207, 221}, {3, 22, 166, 25, 209, 219}, {6, 8, 169, 11, 211, 220}, {2, 29, 168, 32, 213, 218}, {50, 227, 223, 235, 236, 237}, {57, 228, 224, 238, 239, 240}, {43, 229, 225, 241, 242, 243}, {36, 230, 226, 244, 245, 246}, {45, 223, 229, 247, 248, 249}, {38, 225, 230, 250, 251, 252}, {52, 224, 227, 253, 254, 255}, {59, 226, 228, 256, 257, 258}, {57, 58, 228, 61, 259, 238}, {50, 51, 227, 54, 260, 235}, {36, 37, 230, 40, 261, 244}, {43, 44, 229, 47, 262, 241}, {51, 52, 227, 55, 255, 260}, {58, 59, 228, 62, 258, 259}, {44, 45, 229, 48, 249, 262}, {37, 38, 230, 41, 252, 261}, {223, 227, 222, 236, 263, 264}, {224, 222, 227, 265, 263, 254}, {224, 228, 222, 239, 266, 265}, {222, 228, 226, 266, 257, 267}, {223, 222, 229, 264, 268, 248}, {222, 225, 229, 269, 242, 268}, {222, 230, 225, 270, 251, 269}, {222, 226, 230, 267, 245, 270}, {50, 223, 232, 237, 271, 272}, {57, 224, 231, 240, 273, 274}, {43, 225, 234, 243, 275, 276}, {36, 226, 233, 246, 277, 278}, {45, 232, 223, 279, 271, 247}, {38, 234, 225, 280, 275, 250}, {52, 231, 224, 281, 273, 253}, {59, 233, 226, 282, 277, 256}, {0, 233, 59, 283, 282, 63}, {1, 231, 52, 284, 281, 56}, {4, 234, 38, 285, 280, 42}, {5, 232, 45, 286, 279, 49}, {5, 50, 232, 53, 272, 286}, {1, 57, 231, 60, 274, 284}, {4, 43, 234, 46, 276, 285}, {0, 36, 233, 39, 278, 283}, {85, 288, 292, 300, 301, 302}, {22, 293, 288, 303, 304, 305}, {57, 290, 294, 306, 307, 308}, {64, 295, 289, 309, 310, 311}, {24, 289, 293, 312, 313, 314}, {87, 292, 290, 315, 316, 317}, {66, 291, 295, 318, 319, 320}, {59, 294, 291, 321, 322, 323}, {85, 292, 86, 302, 324, 89}, {22, 23, 293, 26, 325, 303}, {57, 294, 58, 308, 326, 61}, {64, 65, 295, 68, 327, 309}, {86, 292, 87, 324, 315, 90}, {23, 24, 293, 27, 314, 325}, {65, 66, 295, 69, 320, 327}, {58, 294, 59, 326, 321, 62}, {288, 293, 287, 304, 328, 329}, {288, 287, 292, 329, 330, 301}, {289, 287, 293, 331, 328, 313}, {290, 292, 287, 316, 330, 332}, {289, 295, 287, 310, 333, 331}, {290, 287, 294, 332, 334, 307}, {291, 294, 287, 322, 334, 335}, {291, 287, 295, 335, 333, 319}, {22, 288, 296, 305, 336, 337}, {85, 296, 288, 338, 336, 300}, {57, 298, 290, 339, 340, 306}, {64, 289, 297, 311, 341, 342}, {87, 290, 298, 317, 340, 343}, {24, 297, 289, 344, 341, 312}, {59, 291, 299, 323, 345, 346}, {66, 299, 291, 347, 345, 318}, {1, 87, 298, 91, 343, 348}, {2, 297, 24, 349, 344, 28}, {3, 296, 85, 350, 338, 88}, {3, 22, 296, 25, 337, 350}, {1, 298, 57, 348, 339, 60}, {2, 64, 297, 67, 342, 349}, {0, 59, 299, 63, 346, 351}, {0, 299, 66, 351, 347, 70}, {64, 353, 357, 365, 366, 367}, {29, 358, 353, 368, 369, 370}, {71, 359, 354, 371, 372, 373}, {36, 355, 360, 374, 375, 376}, {31, 354, 358, 377, 378, 379}, {66, 357, 355, 380, 381, 382}, {38, 360, 356, 383, 384, 385}, {73, 356, 359, 386, 387, 388}, {64, 357, 65, 367, 389, 68}, {71, 72, 359, 75, 390, 371}, {29, 30, 358, 33, 391, 368}, {36, 360, 37, 376, 392, 40}, {65, 357, 66, 389, 380, 69}, {30, 31, 358, 34, 379, 391}, {72, 73, 359, 76, 388, 390}, {37, 360, 38, 392, 383, 41}, {353, 352, 357, 393, 394, 366}, {353, 358, 352, 369, 395, 393}, {354, 352, 358, 396, 395, 378}, {355, 357, 352, 381, 394, 397}, {354, 359, 352, 372, 398, 396}, {355, 352, 360, 397, 399, 375}, {356, 352, 359, 400, 398, 387}, {356, 360, 352, 384, 399, 400}, {64, 361, 353, 401, 402, 365}, {29, 353, 361, 370, 402, 403}, {71, 354, 362, 373, 404, 405}, {36, 363, 355, 406, 407, 374}, {31, 362, 354, 408, 404, 377}, {66, 355, 363, 382, 407, 409}, {38, 356, 364, 385, 410, 411}, {73, 364, 356, 412, 410, 386}, {0, 66, 363, 70, 409, 413}, {2, 361, 64, 414, 401, 67}, {6, 362, 31, 415, 408, 35}, {6, 71, 362, 74, 405, 415}, {2, 29, 361, 32, 403, 414}, {4, 364, 73, 416, 412, 77}, {0, 363, 36, 413, 406, 39}, {4, 38, 364, 42, 411, 416}, {15, 418, 423, 430, 431, 432}, {78, 422, 418, 433, 434, 435}, {50, 424, 420, 436, 437, 438}, {85, 419, 425, 439, 440, 441}, {17, 423, 419, 442, 443, 444}, {80, 420, 422, 445, 446, 447}, {87, 425, 421, 448, 449, 450}, {52, 421, 424, 451, 452, 453}, {15, 423, 16, 432, 454, 19}, {78, 79, 422, 82, 455, 433}, {50, 51, 424, 54, 456, 436}, {85, 425, 86, 441, 457, 89}, {79, 80, 422, 83, 447, 455}, {16, 423, 17, 454, 442, 20}, {86, 425, 87, 457, 448, 90}, {51, 52, 424, 55, 453, 456}, {417, 418, 422, 458, 434, 459}, {417, 423, 418, 460, 431, 458}, {419, 423, 417, 443, 460, 461}, {420, 417, 422, 462, 459, 446}, {419, 417, 425, 461, 463, 440}, {420, 424, 417, 437, 464, 462}, {421, 417, 424, 465, 464, 452}, {421, 425, 417, 449, 463, 465}, {15, 426, 418, 466, 467, 430}, {78, 418, 426, 435, 467, 468}, {50, 420, 428, 438, 469, 470}, {85, 427, 419, 471, 472, 439}, {80, 428, 420, 473, 469, 445}, {17, 419, 427, 444, 472, 474}, {52, 429, 421, 475, 476, 451}, {87, 421, 429, 450, 476, 477}, {5, 428, 80, 478, 473, 84}, {3, 17, 427, 21, 474, 479}, {7, 78, 426, 81, 468, 480}, {7, 426, 15, 480, 466, 18}, {5, 50, 428, 53, 470, 478}, {3, 427, 85, 479, 471, 88}, {1, 429, 52, 481, 475, 56}, {1, 87, 429, 91, 477, 481}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 722
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {0.125, 1, 1}, {0.375, 1, 1}, {0.625, 1, 1}, {0.875, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {1, 1, 0.875}, {1, 1, 0.625}, {1, 1, 0.375}, {1, 1, 0.125}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0.875, 1, 0}, {0.625, 1, 0}, {0.375, 1, 0}, {0.125, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 1, 0.125}, {0, 1, 0.375}, {0, 1, 0.625}, {0, 1, 0.875}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0, 0, 0.125}, {0, 0, 0.375}, {0, 0, 0.625}, {0, 0, 0.875}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {0.125, 0, 1}, {0.375, 0, 1}, {0.625, 0, 1}, {0.875, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {1, 0, 0.875}, {1, 0, 0.625}, {1, 0, 0.375}, {1, 0, 0.125}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0.875, 0, 0}, {0.625, 0, 0}, {0.375, 0, 0}, {0.125, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.875, 0}, {0, 0.625, 0}, {0, 0.375, 0}, {0, 0.125, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {0, 0.875, 1}, {0, 0.625, 1}, {0, 0.375, 1}, {0, 0.125, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.875, 1}, {1, 0.625, 1}, {1, 0.375, 1}, {1, 0.125, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {1, 0.875, 0}, {1, 0.625, 0}, {1, 0.375, 0}, {1, 0.125, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.234692, 0.610874, 1}, {0.095431, 0.625135, 1}, {0.139261, 0.735739, 1}, {0.264261, 0.860739, 1}, {0.375, 0.904691, 1}, {0.389261, 0.76543, 1}, {0.860739, 0.735739, 1}, {0.904569, 0.625135, 1}, {0.765308, 0.610874, 1}, {0.264261, 0.139383, 1}, {0.389261, 0.234962, 1}, {0.375, 0.0955798, 1}, {0.610739, 0.76543, 1}, {0.625, 0.904691, 1}, {0.735739, 0.860739, 1}, {0.095431, 0.375135, 1}, {0.234692, 0.389518, 1}, {0.139261, 0.264383, 1}, {0.625, 0.0955798, 1}, {0.610739, 0.234962, 1}, {0.735739, 0.139383, 1}, {0.860739, 0.264383, 1}, {0.765308, 0.389518, 1}, {0.904569, 0.375135, 1}, {0.095431, 0.500135, 1}, {0.904569, 0.500135, 1}, {0.5, 0.904691, 1}, {0.5, 0.0955798, 1}, {0.389261, 0.611834, 1}, {0.345431, 0.501231, 1}, {0.5, 0.655786, 1}, {0.610739, 0.611834, 1}, {0.389261, 0.390478, 1}, {0.654569, 0.501231, 1}, {0.5, 0.346675, 1}, {0.610739, 0.390478, 1}, {0.0709532, 0.804047, 1}, {0.210214, 0.789786, 1}, {0.195953, 0.929047, 1}, {0.789786, 0.789786, 1}, {0.929047, 0.804047, 1}, {0.195953, 0.0709735, 1}, {0.210214, 0.210356, 1}, {0.804047, 0.929047, 1}, {0.0709532, 0.195973, 1}, {0.789786, 0.210356, 1}, {0.804047, 0.0709735, 1}, {0.929047, 0.195973, 1}, {0.0709532, 0.0709735, 1}, {0.0709532, 0.929047, 1}, {0.929047, 0.929047, 1}, {0.929047, 0.0709735, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.904569, 1, 0.625}, {0.765308, 1, 0.610739}, {0.860739, 1, 0.735739}, {0.625, 1, 0.095431}, {0.610739, 1, 0.234692}, {0.735739, 1, 0.139261}, {0.375, 1, 0.904569}, {0.389261, 1, 0.765308}, {0.264261, 1, 0.860739}, {0.095431, 1, 0.375}, {0.234692, 1, 0.389261}, {0.139261, 1, 0.264261}, {0.735739, 1, 0.860739}, {0.610739, 1, 0.765308}, {0.625, 1, 0.904569}, {0.139261, 1, 0.735739}, {0.234692, 1, 0.610739}, {0.095431, 1, 0.625}, {0.860739, 1, 0.264261}, {0.765308, 1, 0.389261}, {0.904569, 1, 0.375}, {0.264261, 1, 0.139261}, {0.389261, 1, 0.234692}, {0.375, 1, 0.095431}, {0.5, 1, 0.095431}, {0.904569, 1, 0.5}, {0.095431, 1, 0.5}, {0.5, 1, 0.904569}, {0.654569, 1, 0.5}, {0.610739, 1, 0.610739}, {0.610739, 1, 0.389261}, {0.5, 1, 0.345431}, {0.389261, 1, 0.389261}, {0.5, 1, 0.654569}, {0.389261, 1, 0.610739}, {0.345431, 1, 0.5}, {0.789786, 1, 0.789786}, {0.929047, 1, 0.804047}, {0.789786, 1, 0.210214}, {0.804047, 1, 0.0709532}, {0.210214, 1, 0.789786}, {0.195953, 1, 0.929047}, {0.210214, 1, 0.210214}, {0.0709532, 1, 0.195953}, {0.804047, 1, 0.929047}, {0.0709532, 1, 0.804047}, {0.929047, 1, 0.195953}, {0.195953, 1, 0.0709532}, {0.0709532, 1, 0.0709532}, {0.929047, 1, 0.0709532}, {0.0709532, 1, 0.929047}, {0.929047, 1, 0.929047}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.904691, 0, 0.625}, {0.76543, 0, 0.610739}, {0.860739, 0, 0.735739}, {0.625135, 0, 0.095431}, {0.610874, 0, 0.234692}, {0.735739, 0, 0.139261}, {0.375135, 0, 0.904569}, {0.389518, 0, 0.765308}, {0.264383, 0, 0.860739}, {0.0955798, 0, 0.375}, {0.234962, 0, 0.389261}, {0.139383, 0, 0.264261}, {0.735739, 0, 0.860739}, {0.610874, 0, 0.765308}, {0.625135, 0, 0.904569}, {0.139383, 0, 0.735739}, {0.234962, 0, 0.610739}, {0.0955798, 0, 0.625}, {0.860739, 0, 0.264261}, {0.76543, 0, 0.389261}, {0.904691, 0, 0.375}, {0.264383, 0, 0.139261}, {0.389518, 0, 0.234692}, {0.375135, 0, 0.095431}, {0.500135, 0, 0.095431}, {0.904691, 0, 0.5}, {0.0955798, 0, 0.5}, {0.500135, 0, 0.904569}, {0.655786, 0, 0.5}, {0.611834, 0, 0.610739}, {0.611834, 0, 0.389261}, {0.501231, 0, 0.345431}, {0.390478, 0, 0.389261}, {0.501231, 0, 0.654569}, {0.390478, 0, 0.610739}, {0.346675, 0, 0.5}, {0.789786, 0, 0.789786}, {0.929047, 0, 0.804047}, {0.789786, 0, 0.210214}, {0.804047, 0, 0.0709532}, {0.210356, 0, 0.789786}, {0.195973, 0, 0.929047}, {0.210356, 0, 0.210214}, {0.0709735, 0, 0.195953}, {0.804047, 0, 0.929047}, {0.0709735, 0, 0.804047}, {0.929047, 0, 0.195953}, {0.195973, 0, 0.0709532}, {0.0709735, 0, 0.0709532}, {0.929047, 0, 0.0709532}, {0.0709735, 0, 0.929047}, {0.929047, 0, 0.929047}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0.860739, 0.735739, 0}, {0.765308, 0.610739, 0}, {0.904569, 0.625, 0}, {0.625, 0.904569, 0}, {0.610739, 0.765308, 0}, {0.735739, 0.860739, 0}, {0.735739, 0.139261, 0}, {0.610739, 0.234692, 0}, {0.625, 0.095431, 0}, {0.095431, 0.625, 0}, {0.234692, 0.610739, 0}, {0.139261, 0.735739, 0}, {0.264261, 0.860739, 0}, {0.389261, 0.765308, 0}, {0.375, 0.904569, 0}, {0.904569, 0.375, 0}, {0.765308, 0.389261, 0}, {0.860739, 0.264261, 0}, {0.139261, 0.264261, 0}, {0.234692, 0.389261, 0}, {0.095431, 0.375, 0}, {0.375, 0.095431, 0}, {0.389261, 0.234692, 0}, {0.264261, 0.139261, 0}, {0.904569, 0.5, 0}, {0.5, 0.904569, 0}, {0.5, 0.095431, 0}, {0.095431, 0.5, 0}, {0.5, 0.654569, 0}, {0.610739, 0.610739, 0}, {0.654569, 0.5, 0}, {0.389261, 0.610739, 0}, {0.610739, 0.389261, 0}, {0.345431, 0.5, 0}, {0.5, 0.345431, 0}, {0.389261, 0.389261, 0}, {0.789786, 0.789786, 0}, {0.804047, 0.929047, 0}, {0.929047, 0.804047, 0}, {0.804047, 0.0709532, 0}, {0.789786, 0.210214, 0}, {0.210214, 0.789786, 0}, {0.0709532, 0.804047, 0}, {0.929047, 0.195953, 0}, {0.195953, 0.929047, 0}, {0.210214, 0.210214, 0}, {0.195953, 0.0709532, 0}, {0.0709532, 0.195953, 0}, {0.929047, 0.0709532, 0}, {0.0709532, 0.929047, 0}, {0.929047, 0.929047, 0}, {0.0709532, 0.0709532, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {0, 0.735739, 0.139261}, {0, 0.610739, 0.234692}, {0, 0.625, 0.095431}, {0, 0.904569, 0.375}, {0, 0.765308, 0.389261}, {0, 0.860739, 0.264261}, {0, 0.625, 0.904569}, {0, 0.610739, 0.765308}, {0, 0.735739, 0.860739}, {0, 0.139261, 0.264261}, {0, 0.234692, 0.389261}, {0, 0.095431, 0.375}, {0, 0.860739, 0.735739}, {0, 0.765308, 0.610739}, {0, 0.904569, 0.625}, {0, 0.375, 0.095431}, {0, 0.389261, 0.234692}, {0, 0.264261, 0.139261}, {0, 0.095431, 0.625}, {0, 0.234692, 0.610739}, {0, 0.139261, 0.735739}, {0, 0.264261, 0.860739}, {0, 0.389261, 0.765308}, {0, 0.375, 0.904569}, {0, 0.5, 0.095431}, {0, 0.5, 0.904569}, {0, 0.904569, 0.5}, {0, 0.095431, 0.5}, {0, 0.610739, 0.389261}, {0, 0.5, 0.345431}, {0, 0.654569, 0.5}, {0, 0.610739, 0.610739}, {0, 0.389261, 0.389261}, {0, 0.5, 0.654569}, {0, 0.345431, 0.5}, {0, 0.389261, 0.610739}, {0, 0.804047, 0.0709532}, {0, 0.789786, 0.210214}, {0, 0.929047, 0.195953}, {0, 0.789786, 0.789786}, {0, 0.804047, 0.929047}, {0, 0.0709532, 0.195953}, {0, 0.210214, 0.210214}, {0, 0.929047, 0.804047}, {0, 0.195953, 0.0709532}, {0, 0.210214, 0.789786}, {0, 0.0709532, 0.804047}, {0, 0.195953, 0.929047}, {0, 0.0709532, 0.0709532}, {0, 0.929047, 0.0709532}, {0, 0.929047, 0.929047}, {0, 0.0709532, 0.929047}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {1, 0.860678, 0.735678}, {1, 0.76518, 0.610611}, {1, 0.904501, 0.624932}, {1, 0.624932, 0.904501}, {1, 0.610611, 0.76518}, {1, 0.735678, 0.860678}, {1, 0.0953701, 0.624939}, {1, 0.234631, 0.610678}, {1, 0.139261, 0.735739}, {1, 0.735739, 0.139261}, {1, 0.610678, 0.234631}, {1, 0.624939, 0.0953701}, {1, 0.904501, 0.374932}, {1, 0.76524, 0.389193}, {1, 0.860739, 0.264261}, {1, 0.264261, 0.860739}, {1, 0.389193, 0.76524}, {1, 0.374932, 0.904501}, {1, 0.374939, 0.0953701}, {1, 0.3892, 0.234631}, {1, 0.264261, 0.139261}, {1, 0.139261, 0.264261}, {1, 0.234631, 0.3892}, {1, 0.0953701, 0.374939}, {1, 0.904501, 0.499932}, {1, 0.499932, 0.904501}, {1, 0.0953701, 0.499939}, {1, 0.499939, 0.0953701}, {1, 0.610131, 0.610131}, {1, 0.499385, 0.653954}, {1, 0.653954, 0.499385}, {1, 0.610191, 0.388713}, {1, 0.388713, 0.610191}, {1, 0.499391, 0.344822}, {1, 0.344822, 0.499391}, {1, 0.388713, 0.388713}, {1, 0.929037, 0.804037}, {1, 0.789715, 0.789715}, {1, 0.804037, 0.929037}, {1, 0.210214, 0.789786}, {1, 0.0709532, 0.804047}, {1, 0.804047, 0.0709532}, {1, 0.789786, 0.210214}, {1, 0.195953, 0.929047}, {1, 0.929047, 0.195953}, {1, 0.0709532, 0.195953}, {1, 0.210214, 0.210214}, {1, 0.195953, 0.0709532}, {1, 0.0709532, 0.929047}, {1, 0.929047, 0.0709532}, {1, 0.929037, 0.929037}, {1, 0.0709532, 0.0709532}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}, {0.403787, 0.502163, 0.604301}, {0.59395, 0.335588, 0.588613}, {0.57425, 0.502163, 0.604301}, {0.533055, 0.519268, 0.479373}, {0.723218, 0.352693, 0.463685}, {0.552756, 0.352693, 0.463685}, {0.907719, 0.227933, 0.0932632}, {0.768458, 0.242194, 0.0932632}, {0.812288, 0.352933, 0.0932632}, {0.462839, 0.167794, 0.544306}, {0.592107, 0.184899, 0.419378}, {0.423487, 0.335588, 0.41815}, {0.552756, 0.352693, 0.293222}, {0.462839, 0.167794, 0.373844}, {0.610874, 0.139383, 0.904569}, {0.500135, 0.0955798, 0.904569}, {0.141927, 0.0709532, 0.0709532}, {0.0709735, 0.0709532, 0.141906}, {0.0709532, 0.141906, 0.0709532}, {0.307175, 0.417794, 0.123844}, {0.351005, 0.307055, 0.123844}, {0.095431, 0.5, 0.095431}, {0.139261, 0.389261, 0.095431}, {0.211744, 0.417794, 0.219275}, {0.633302, 0.167794, 0.544306}, {0.907719, 0.173886, 0.164216}, {0.907719, 0.242194, 0.232524}, {0.0709532, 0.210234, 0.860739}, {0.141927, 0.0709735, 0.929047}, {0.0709735, 0.139261, 0.789786}, {0.0709735, 0.0709532, 0.858094}, {0.0709532, 0.141927, 0.929047}, {0.210336, 0.0709735, 0.860739}, {0.139383, 0.139261, 0.721478}, {0.742945, 0.167794, 0.655045}, {0.786897, 0.167794, 0.544306}, {0.904691, 0.139261, 0.610739}, {0.882206, 0.307055, 0.655045}, {0.860739, 0.139261, 0.721478}, {0.442043, 0.585464, 0.809994}, {0.461744, 0.418889, 0.794306}, {0.632206, 0.418889, 0.794306}, {0.907719, 0.352872, 0.188633}, {0.836765, 0.173886, 0.0932632}, {0.549357, 0.674254, 0.636624}, {0.73952, 0.678141, 0.450474}, {0.57425, 0.672625, 0.433838}, {0.723218, 0.523156, 0.293222}, {0.698326, 0.524784, 0.496008}, {0.721478, 0.860739, 0.860739}, {0.610739, 0.904691, 0.860739}, {0.0709735, 0.139261, 0.210214}, {0.882206, 0.263164, 0.544245}, {0.882206, 0.417246, 0.543759}, {0.768458, 0.102933, 0.232524}, {0.907719, 0.102933, 0.218263}, {0.836765, 0.102933, 0.164216}, {0.73952, 0.507679, 0.620936}, {0.929047, 0.929037, 0.858083}, {0.403787, 0.672625, 0.433838}, {0.59395, 0.676512, 0.247688}, {0.552756, 0.523156, 0.293222}, {0.307175, 0.417929, 0.794306}, {0.351005, 0.307176, 0.794306}, {0.095431, 0.904569, 0.5}, {0.500135, 0.095431, 0.095431}, {0.858094, 0.929047, 0.929047}, {0.5, 0.904691, 0.904569}, {0.929047, 0.858083, 0.929037}, {0.423487, 0.50605, 0.41815}, {0.904569, 0.904501, 0.499932}, {0.139261, 0.860739, 0.278522}, {0.139261, 0.904569, 0.389261}, {0.351005, 0.838256, 0.263105}, {0.211744, 0.742825, 0.373844}, {0.211744, 0.698995, 0.263105}, {0.141906, 0.929047, 0.929047}, {0.210214, 0.860739, 0.929047}, {0.904569, 0.500068, 0.904501}, {0.745703, 0.184899, 0.419378}, {0.904691, 0.0953701, 0.499939}, {0.841012, 0.280269, 0.419318}, {0.607314, 0.59098, 0.82663}, {0.461879, 0.167794, 0.698875}, {0.572483, 0.167794, 0.655045}, {0.882206, 0.417726, 0.698808}, {0.0709532, 0.789786, 0.139261}, {0.139261, 0.721478, 0.139261}, {0.882206, 0.588195, 0.219214}, {0.841012, 0.434839, 0.264749}, {0.882206, 0.587709, 0.373296}, {0.841012, 0.434352, 0.418831}, {0.389261, 0.904569, 0.139261}, {0.5, 0.904569, 0.095431}, {0.389383, 0.095431, 0.139261}, {0.278522, 0.860739, 0.139261}, {0.287474, 0.834369, 0.559994}, {0.331304, 0.834369, 0.670734}, {0.192043, 0.695108, 0.670734}, {0.139261, 0.860739, 0.721478}, {0.095431, 0.860739, 0.610739}, {0.139261, 0.278644, 0.860739}, {0.278644, 0.139383, 0.860739}, {0.139261, 0.389383, 0.904569}, {0.192043, 0.584369, 0.559994}, {0.192043, 0.584369, 0.714563}, {0.211744, 0.417794, 0.698875}, {0.211744, 0.417794, 0.544306}, {0.0955798, 0.139261, 0.610739}, {0.351005, 0.698995, 0.123844}, {0.461744, 0.742825, 0.123844}, {0.461744, 0.838256, 0.219275}, {0.929047, 0.141906, 0.0709532}, {0.858094, 0.929047, 0.0709532}, {0.0955798, 0.095431, 0.5}, {0.307323, 0.167794, 0.544306}, {0.211744, 0.263225, 0.544306}, {0.211744, 0.307055, 0.655045}, {0.461744, 0.263225, 0.123844}, {0.351126, 0.167794, 0.263105}, {0.278644, 0.139261, 0.139261}, {0.461879, 0.167794, 0.219275}, {0.929047, 0.929047, 0.141906}, {0.860739, 0.860678, 0.721417}, {0.904569, 0.860678, 0.610678}, {0.442043, 0.834369, 0.559994}, {0.718053, 0.839885, 0.687369}, {0.857314, 0.700563, 0.687308}, {0.761883, 0.839885, 0.57663}, {0.857314, 0.744386, 0.576562}, {0.904569, 0.499939, 0.0953701}, {0.786775, 0.588256, 0.123844}, {0.745581, 0.434899, 0.169378}, {0.701751, 0.32416, 0.169378}, {0.748731, 0.287832, 0.262642}, {0.857314, 0.589817, 0.731131}, {0.857314, 0.589337, 0.576082}, {0.572483, 0.307055, 0.123844}, {0.461744, 0.417794, 0.123844}, {0.591012, 0.434899, 0.169378}, {0.929047, 0.858094, 0.0709532}, {0.882206, 0.713256, 0.123844}, {0.882206, 0.767303, 0.194797}, {0.882206, 0.698995, 0.263105}, {0.351126, 0.167794, 0.433567}, {0.351126, 0.167794, 0.655045}, {0.211744, 0.417794, 0.373844}, {0.423487, 0.50605, 0.247688}, {0.211744, 0.588256, 0.373844}, {0.929047, 0.0709532, 0.141906}, {0.287474, 0.584504, 0.809994}, {0.929047, 0.0709532, 0.858094}, {0.192043, 0.738938, 0.559994}, {0.461744, 0.838256, 0.373844}, {0.632206, 0.838256, 0.373844}, {0.139261, 0.210214, 0.0709532}, {0.210234, 0.139261, 0.0709532}, {0.789786, 0.0709735, 0.860739}, {0.721478, 0.139383, 0.860739}, {0.610739, 0.904569, 0.139261}, {0.721478, 0.860739, 0.139261}, {0.0709532, 0.929047, 0.141906}, {0.095431, 0.500135, 0.904569}, {0.442043, 0.834369, 0.714563}, {0.461744, 0.263374, 0.794306}, {0.860739, 0.278644, 0.860739}, {0.929047, 0.210234, 0.860739}, {0.211744, 0.307055, 0.263105}, {0.139261, 0.610739, 0.095431}, {0.211744, 0.588256, 0.219275}, {0.632206, 0.588256, 0.123844}, {0.461744, 0.588256, 0.123844}, {0.139383, 0.139261, 0.278522}, {0.139261, 0.278522, 0.139261}, {0.607314, 0.839885, 0.57663}, {0.904569, 0.610813, 0.860678}, {0.0709532, 0.858094, 0.929047}, {0.331304, 0.695108, 0.809994}, {0.139261, 0.721478, 0.860739}, {0.278522, 0.860739, 0.860739}, {0.0709532, 0.929047, 0.858094}, {0.718053, 0.700624, 0.82663}, {0.860739, 0.721417, 0.860678}, {0.761883, 0.59002, 0.82663}, {0.742945, 0.307176, 0.794306}, {0.786775, 0.417929, 0.794306}, {0.860739, 0.929037, 0.789776}, {0.389261, 0.904691, 0.860739}, {0.307175, 0.588256, 0.123844}, {0.789786, 0.860739, 0.0709532}, {0.0709532, 0.858094, 0.0709532}, {0.742945, 0.838256, 0.263105}, {0.632206, 0.742825, 0.123844}, {0.742945, 0.698995, 0.123844}, {0.841012, 0.32416, 0.308639}, {0.610874, 0.139261, 0.095431}, {0.782719, 0.102933, 0.0932632}, {0.860739, 0.789776, 0.929037}, {0.929047, 0.141927, 0.929047}, {0.811253, 0.838256, 0.194797}, {0.858094, 0.0709735, 0.929047}, {0.607314, 0.839885, 0.731199}, {0.607314, 0.744576, 0.82663}, {0.442043, 0.73906, 0.809994}, {0.389383, 0.0955798, 0.860739}, {0.141906, 0.929047, 0.0709532}, {0.0709532, 0.860739, 0.210214}, {0.929047, 0.860739, 0.210214}, {0.860739, 0.860739, 0.278522}, {0.139383, 0.095431, 0.389261}, {0.211744, 0.263225, 0.373844}, {0.139261, 0.789786, 0.929047}, {0.789786, 0.929047, 0.860739}, {0.904691, 0.139261, 0.389261}, {0.701751, 0.184899, 0.308639}, {0.929047, 0.139261, 0.789786}, {0.786775, 0.838256, 0.373844}, {0.875, 0.0709532, 0.0709532}, {0.210214, 0.929047, 0.139261}, {0.572483, 0.838256, 0.263105}, {0.591147, 0.184899, 0.264809}, {0.904569, 0.389396, 0.860739}, {0.572483, 0.307176, 0.794306}, {0.331304, 0.834369, 0.449255}, {0.139261, 0.929047, 0.789786}, {0.860739, 0.789786, 0.0709532}, {0.904569, 0.860739, 0.389261}, {0.139261, 0.610739, 0.904569}, {0.812409, 0.102933, 0.343263}, {0.657854, 0.102933, 0.188694}, {0.857314, 0.700624, 0.465891}}
]
Vector<double> [
+ id : my_fem:jacobians:_tetrahedron_10
+ size : 1364
+ nb_component : 1
+ allocated size : 1364
+ memory size : 11kB
+ values : {{0.00119768}, {0.00119768}, {0.00119768}, {0.00119768}, {0.000498855}, {0.000498855}, {0.000498855}, {0.000498855}, {0.00127072}, {0.00127072}, {0.00127072}, {0.00127072}, {0.000510867}, {0.000510867}, {0.000510867}, {0.000510867}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00023817}, {0.00023817}, {0.00023817}, {0.00023817}, {0.000731371}, {0.000731371}, {0.000731371}, {0.000731371}, {0.00123415}, {0.00123415}, {0.00123415}, {0.00123415}, {0.000262647}, {0.000262647}, {0.000262647}, {0.000262647}, {0.000229322}, {0.000229322}, {0.000229322}, {0.000229322}, {0.000450497}, {0.000450497}, {0.000450497}, {0.000450497}, {0.000202139}, {0.000202139}, {0.000202139}, {0.000202139}, {0.000887737}, {0.000887737}, {0.000887737}, {0.000887737}, {0.00187262}, {0.00187262}, {0.00187262}, {0.00187262}, {0.000493369}, {0.000493369}, {0.000493369}, {0.000493369}, {0.000265441}, {0.000265441}, {0.000265441}, {0.000265441}, {0.00172558}, {0.00172558}, {0.00172558}, {0.00172558}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000671175}, {0.000671175}, {0.000671175}, {0.000671175}, {0.000292964}, {0.000292964}, {0.000292964}, {0.000292964}, {0.00118606}, {0.00118606}, {0.00118606}, {0.00118606}, {0.000209795}, {0.000209795}, {0.000209795}, {0.000209795}, {0.00161203}, {0.00161203}, {0.00161203}, {0.00161203}, {0.00117664}, {0.00117664}, {0.00117664}, {0.00117664}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000378978}, {0.000378978}, {0.000378978}, {0.000378978}, {0.000209795}, {0.000209795}, {0.000209795}, {0.000209795}, {0.00121805}, {0.00121805}, {0.00121805}, {0.00121805}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00117268}, {0.00117268}, {0.00117268}, {0.00117268}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00083749}, {0.00083749}, {0.00083749}, {0.00083749}, {0.00191797}, {0.00191797}, {0.00191797}, {0.00191797}, {0.000953843}, {0.000953843}, {0.000953843}, {0.000953843}, {0.000672936}, {0.000672936}, {0.000672936}, {0.000672936}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00111398}, {0.00111398}, {0.00111398}, {0.00111398}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051068}, {0.00051068}, {0.00051068}, {0.00051068}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.00122601}, {0.00122601}, {0.00122601}, {0.00122601}, {0.000884197}, {0.000884197}, {0.000884197}, {0.000884197}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.00173384}, {0.00173384}, {0.00173384}, {0.00173384}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000209825}, {0.0007455}, {0.0007455}, {0.0007455}, {0.0007455}, {0.000899671}, {0.000899671}, {0.000899671}, {0.000899671}, {0.000616516}, {0.000616516}, {0.000616516}, {0.000616516}, {0.000200144}, {0.000200144}, {0.000200144}, {0.000200144}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000939334}, {0.000939334}, {0.000939334}, {0.000939334}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000930551}, {0.000930551}, {0.000930551}, {0.000930551}, {0.000638055}, {0.000638055}, {0.000638055}, {0.000638055}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000238204}, {0.000238204}, {0.000238204}, {0.000238204}, {0.000745217}, {0.000745217}, {0.000745217}, {0.000745217}, {0.000510776}, {0.000510776}, {0.000510776}, {0.000510776}, {0.000945026}, {0.000945026}, {0.000945026}, {0.000945026}, {0.000909981}, {0.000909981}, {0.000909981}, {0.000909981}, {0.000623877}, {0.000623877}, {0.000623877}, {0.000623877}, {0.000956672}, {0.000956672}, {0.000956672}, {0.000956672}, {0.000513725}, {0.000513725}, {0.000513725}, {0.000513725}, {0.00105581}, {0.00105581}, {0.00105581}, {0.00105581}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00115231}, {0.00115231}, {0.00115231}, {0.00115231}, {0.000871617}, {0.000871617}, {0.000871617}, {0.000871617}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000966407}, {0.000966407}, {0.000966407}, {0.000966407}, {0.000335259}, {0.000335259}, {0.000335259}, {0.000335259}, {0.000630433}, {0.000630433}, {0.000630433}, {0.000630433}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00037973}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.00106509}, {0.00106509}, {0.00106509}, {0.00106509}, {0.00198327}, {0.00198327}, {0.00198327}, {0.00198327}, {0.00205091}, {0.00205091}, {0.00205091}, {0.00205091}, {0.000963229}, {0.000963229}, {0.000963229}, {0.000963229}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.00215047}, {0.00215047}, {0.00215047}, {0.00215047}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000959836}, {0.000959836}, {0.000959836}, {0.000959836}, {0.000817692}, {0.000817692}, {0.000817692}, {0.000817692}, {0.000902791}, {0.000902791}, {0.000902791}, {0.000902791}, {0.00169951}, {0.00169951}, {0.00169951}, {0.00169951}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000840144}, {0.000840144}, {0.000840144}, {0.000840144}, {0.00173867}, {0.00173867}, {0.00173867}, {0.00173867}, {0.000671175}, {0.000671175}, {0.000671175}, {0.000671175}, {0.000963229}, {0.000963229}, {0.000963229}, {0.000963229}, {0.00022929}, {0.00022929}, {0.00022929}, {0.00022929}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000511246}, {0.000511246}, {0.000511246}, {0.000511246}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00161366}, {0.00161366}, {0.00161366}, {0.00161366}, {0.000945026}, {0.000945026}, {0.000945026}, {0.000945026}, {0.0011808}, {0.0011808}, {0.0011808}, {0.0011808}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000379219}, {0.000379219}, {0.000379219}, {0.000379219}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00105497}, {0.00105497}, {0.00105497}, {0.00105497}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00130751}, {0.00130751}, {0.00130751}, {0.00130751}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000951335}, {0.000951335}, {0.000951335}, {0.000951335}, {0.00145377}, {0.00145377}, {0.00145377}, {0.00145377}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000396677}, {0.00137036}, {0.00137036}, {0.00137036}, {0.00137036}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.000913554}, {0.000913554}, {0.000913554}, {0.000913554}, {0.000744668}, {0.000744668}, {0.000744668}, {0.000744668}, {0.000959836}, {0.000959836}, {0.000959836}, {0.000959836}, {0.000510776}, {0.000510776}, {0.000510776}, {0.000510776}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00037973}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00173998}, {0.00173998}, {0.00173998}, {0.00173998}, {0.00106728}, {0.00106728}, {0.00106728}, {0.00106728}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000950017}, {0.000950017}, {0.000950017}, {0.000950017}, {0.00160036}, {0.00160036}, {0.00160036}, {0.00160036}, {0.00148765}, {0.00148765}, {0.00148765}, {0.00148765}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00117664}, {0.00117664}, {0.00117664}, {0.00117664}, {0.000744343}, {0.000744343}, {0.000744343}, {0.000744343}, {0.00108011}, {0.00108011}, {0.00108011}, {0.00108011}, {0.00102006}, {0.00102006}, {0.00102006}, {0.00102006}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000985542}, {0.000985542}, {0.000985542}, {0.000985542}, {0.00023817}, {0.00023817}, {0.00023817}, {0.00023817}, {0.000509799}, {0.000509799}, {0.000509799}, {0.000509799}, {0.00122872}, {0.00122872}, {0.00122872}, {0.00122872}, {0.000201973}, {0.000201973}, {0.000201973}, {0.000201973}, {0.00168481}, {0.00168481}, {0.00168481}, {0.00168481}, {0.000396652}, {0.000396652}, {0.000396652}, {0.000396652}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000396677}, {0.00127773}, {0.00127773}, {0.00127773}, {0.00127773}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000396677}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000744972}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00185969}, {0.00185969}, {0.00185969}, {0.00185969}, {0.00130224}, {0.00130224}, {0.00130224}, {0.00130224}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00051068}, {0.00051068}, {0.00051068}, {0.00051068}, {0.000817692}, {0.000817692}, {0.000817692}, {0.000817692}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.00137577}, {0.00137577}, {0.00137577}, {0.00137577}, {0.000708521}, {0.000708521}, {0.000708521}, {0.000708521}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.00125207}, {0.00125207}, {0.00125207}, {0.00125207}, {0.00108769}, {0.00108769}, {0.00108769}, {0.00108769}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000518452}, {0.000518452}, {0.000518452}, {0.000518452}, {0.000662427}, {0.000662427}, {0.000662427}, {0.000662427}, {0.000902637}, {0.000902637}, {0.000902637}, {0.000902637}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00109572}, {0.00109572}, {0.00109572}, {0.00109572}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.00100863}, {0.00100863}, {0.00100863}, {0.00100863}, {0.000265441}, {0.000265441}, {0.000265441}, {0.000265441}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000849291}, {0.000849291}, {0.000849291}, {0.000849291}, {0.00109572}, {0.00109572}, {0.00109572}, {0.00109572}, {0.000396652}, {0.000396652}, {0.000396652}, {0.000396652}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000379461}, {0.000196277}, {0.000196277}, {0.000196277}, {0.000196277}, {0.000201973}, {0.000201973}, {0.000201973}, {0.000201973}, {0.000262647}, {0.000262647}, {0.000262647}, {0.000262647}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000510096}, {0.000510096}, {0.000510096}, {0.000510096}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000378736}, {0.000378736}, {0.000378736}, {0.000378736}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000532051}, {0.000532051}, {0.000532051}, {0.000532051}, {0.0014145}, {0.0014145}, {0.0014145}, {0.0014145}, {0.00108638}, {0.00108638}, {0.00108638}, {0.00108638}, {0.000378736}, {0.000378736}, {0.000378736}, {0.000378736}, {0.0011856}, {0.0011856}, {0.0011856}, {0.0011856}, {0.00186025}, {0.00186025}, {0.00186025}, {0.00186025}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000396628}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000209825}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000922847}, {0.000922847}, {0.000922847}, {0.000922847}, {0.00132655}, {0.00132655}, {0.00132655}, {0.00132655}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00107727}, {0.00107727}, {0.00107727}, {0.00107727}, {0.00135137}, {0.00135137}, {0.00135137}, {0.00135137}, {0.000292964}, {0.000292964}, {0.000292964}, {0.000292964}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000722936}, {0.000722936}, {0.000722936}, {0.000722936}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000926941}, {0.000926941}, {0.000926941}, {0.000926941}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000202002}, {0.000509799}, {0.000509799}, {0.000509799}, {0.000509799}, {0.000378978}, {0.000378978}, {0.000378978}, {0.000378978}, {0.00051045}, {0.00051045}, {0.00051045}, {0.00051045}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000238136}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000380053}, {0.000380053}, {0.000380053}, {0.000380053}, {0.0007455}, {0.0007455}, {0.0007455}, {0.0007455}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00023817}, {0.00023817}, {0.00023817}, {0.00023817}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000883811}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000608086}, {0.000608086}, {0.000608086}, {0.000608086}, {0.000652377}, {0.000652377}, {0.000652377}, {0.000652377}, {0.000511476}, {0.000511476}, {0.000511476}, {0.000511476}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000493684}, {0.000493684}, {0.000493684}, {0.000493684}, {0.000251531}, {0.000251531}, {0.000251531}, {0.000251531}, {0.000835485}, {0.000835485}, {0.000835485}, {0.000835485}, {0.00121998}, {0.00121998}, {0.00121998}, {0.00121998}, {0.00120388}, {0.00120388}, {0.00120388}, {0.00120388}, {0.000510867}, {0.000510867}, {0.000510867}, {0.000510867}, {0.000745543}, {0.000745543}, {0.000745543}, {0.000745543}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000849837}, {0.000849837}, {0.000849837}, {0.000849837}, {0.000902637}, {0.000902637}, {0.000902637}, {0.000902637}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00022929}, {0.00022929}, {0.00022929}, {0.00022929}, {0.000761723}, {0.000761723}, {0.000761723}, {0.000761723}, {0.000509558}, {0.000509558}, {0.000509558}, {0.000509558}, {0.00104832}, {0.00104832}, {0.00104832}, {0.00104832}, {0.00111203}, {0.00111203}, {0.00111203}, {0.00111203}, {0.00080431}, {0.00080431}, {0.00080431}, {0.00080431}, {0.000379219}, {0.000379219}, {0.000379219}, {0.000379219}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00045003}, {0.00022929}, {0.00022929}, {0.00022929}, {0.00022929}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.00106294}, {0.00106294}, {0.00106294}, {0.00106294}, {0.00172128}, {0.00172128}, {0.00172128}, {0.00172128}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00185969}, {0.00185969}, {0.00185969}, {0.00185969}, {0.000922847}, {0.000922847}, {0.000922847}, {0.000922847}, {0.00167934}, {0.00167934}, {0.00167934}, {0.00167934}, {0.000237043}, {0.000237043}, {0.000237043}, {0.000237043}, {0.000233177}, {0.000233177}, {0.000233177}, {0.000233177}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.000209765}, {0.00100541}, {0.00100541}, {0.00100541}, {0.00100541}, {0.0006888}, {0.0006888}, {0.0006888}, {0.0006888}, {0.000883155}, {0.000883155}, {0.000883155}, {0.000883155}, {0.000449966}, {0.000449966}, {0.000449966}, {0.000449966}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000723193}, {0.000723193}, {0.000723193}, {0.000723193}, {0.00119627}, {0.00119627}, {0.00119627}, {0.00119627}, {0.000922847}, {0.000922847}, {0.000922847}, {0.000922847}, {0.00101774}, {0.00101774}, {0.00101774}, {0.00101774}, {0.00074475}, {0.00074475}, {0.00074475}, {0.00074475}, {0.00122628}, {0.00122628}, {0.00122628}, {0.00122628}, {0.000688235}, {0.000688235}, {0.000688235}, {0.000688235}, {0.00100531}, {0.00100531}, {0.00100531}, {0.00100531}, {0.00051012}, {0.00051012}, {0.00051012}, {0.00051012}, {0.000745227}, {0.000745227}, {0.000745227}, {0.000745227}, {0.00103381}, {0.00103381}, {0.00103381}, {0.00103381}, {0.00130566}, {0.00130566}, {0.00130566}, {0.00130566}, {0.0011808}, {0.0011808}, {0.0011808}, {0.0011808}, {0.00100744}, {0.00100744}, {0.00100744}, {0.00100744}, {0.00169196}, {0.00169196}, {0.00169196}, {0.00169196}, {0.000945026}, {0.000945026}, {0.000945026}, {0.000945026}, {0.00124164}, {0.00124164}, {0.00124164}, {0.00124164}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000396358}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000883155}, {0.000883155}, {0.000883155}, {0.000883155}, {0.000449966}, {0.000449966}, {0.000449966}, {0.000449966}, {0.00139391}, {0.00139391}, {0.00139391}, {0.00139391}, {0.000913554}, {0.000913554}, {0.000913554}, {0.000913554}, {0.00105108}, {0.00105108}, {0.00105108}, {0.00105108}, {0.0011491}, {0.0011491}, {0.0011491}, {0.0011491}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000229257}, {0.000609681}, {0.000609681}, {0.000609681}, {0.000609681}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000201944}, {0.000391999}, {0.000391999}, {0.000391999}, {0.000391999}, {0.00150629}, {0.00150629}, {0.00150629}, {0.00150629}, {0.00185388}, {0.00185388}, {0.00185388}, {0.00185388}, {0.00108769}, {0.00108769}, {0.00108769}, {0.00108769}, {0.000706604}, {0.000706604}, {0.000706604}, {0.000706604}, {0.00068973}, {0.00068973}, {0.00068973}, {0.00068973}, {0.00051012}, {0.00051012}, {0.00051012}, {0.00051012}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000982951}, {0.000982951}, {0.000982951}, {0.000982951}, {0.00155838}, {0.00155838}, {0.00155838}, {0.00155838}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00120813}, {0.00190279}, {0.00190279}, {0.00190279}, {0.00190279}, {0.000890603}, {0.000890603}, {0.000890603}, {0.000890603}, {0.00130171}, {0.00130171}, {0.00130171}, {0.00130171}, {0.000509851}, {0.000509851}, {0.000509851}, {0.000509851}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000744892}, {0.000722514}, {0.000722514}, {0.000722514}, {0.000722514}, {0.000550638}, {0.000550638}, {0.000550638}, {0.000550638}, {0.000869085}, {0.000869085}, {0.000869085}, {0.000869085}, {0.00056562}, {0.00056562}, {0.00056562}, {0.00056562}, {0.000549932}, {0.000549932}, {0.000549932}, {0.000549932}, {0.000732214}, {0.000732214}, {0.000732214}, {0.000732214}, {0.00058443}, {0.00058443}, {0.00058443}, {0.00058443}, {0.000883971}, {0.000883971}, {0.000883971}, {0.000883971}, {0.00124314}, {0.00124314}, {0.00124314}, {0.00124314}, {0.000836794}, {0.000836794}, {0.000836794}, {0.000836794}, {0.00092794}, {0.00092794}, {0.00092794}, {0.00092794}, {0.000815143}, {0.000815143}, {0.000815143}, {0.000815143}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_tetrahedron_10
- + size : 4
- + nb_component : 3
- + allocated size : 2000
- + memory size : 47kB
- + values : {{0.138197, 0.138197, 0.138197}, {0.58541, 0.138197, 0.138197}, {0.138197, 0.58541, 0.138197}, {0.138197, 0.138197, 0.58541}}
- ]
Vector<double> [
+ id : my_fem:shapes:_tetrahedron_10
+ size : 1364
+ nb_component : 10
+ allocated size : 1364
+ memory size : 1.1e+02kB
+ values : {{0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}, {0.1, -0.1, -0.1, -0.1, 0.323607, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932}, {-0.1, 0.1, -0.1, -0.1, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607, 0.0763932}, {-0.1, -0.1, 0.1, -0.1, 0.0763932, 0.323607, 0.323607, 0.0763932, 0.0763932, 0.323607}, {-0.1, -0.1, -0.1, 0.1, 0.0763932, 0.0763932, 0.0763932, 0.323607, 0.323607, 0.323607}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_tetrahedron_10
+ size : 1364
+ nb_component : 30
+ allocated size : 1364
+ memory size : 3.2e+02kB
- + values : {{-3.9353, -4.55601, 0.673815, 0, -1.32529, -0.181463, -1.31177, -0.0269554, -1.36103, 0, -0.166427, 1.7671, -1.62143, 5.06211, 1.22778, 1.62143, 1.67146, 1.90663, 5.24706, -1.73604, 7.40408, -1.62143, -1.00576, -8.97503, 0, 1.84386, -1.95995, 1.62143, 0.239033, -0.501928}, {1.31177, 1.51867, -0.224605, 4.12325e-16, 3.97586, 0.54439, -1.31177, -0.0269554, -1.36103, 2.74179e-16, -0.166427, 1.7671, -6.86849, -6.31371, 1.40035, 6.86849, 1.77928, 7.35076, -1.56634e-16, -1.84386, 1.95995, -1.62143, -1.67146, -1.90663, -1.26573e-15, 2.50957, -9.02835, 1.62143, 0.239033, -0.501928}, {1.31177, 1.51867, -0.224605, 0, -1.32529, -0.181463, 3.9353, 0.0808662, 4.08309, 0, -0.166427, 1.7671, -1.62143, -0.239033, 0.501928, 1.62143, 6.97261, 2.63248, -5.24706, -7.91853, 2.85837, -1.62143, -1.67146, -1.90663, 0, 1.84386, -1.95995, 1.62143, 0.90474, -7.57033}, {1.31177, 1.51867, -0.224605, 0, -1.32529, -0.181463, -1.31177, -0.0269554, -1.36103, 0, 0.49928, -5.3013, -1.62143, -0.239033, 0.501928, 1.62143, 1.67146, 1.90663, -3.2565e-16, -1.84386, 1.95995, -6.86849, -7.74614, -1.00821, 0, 7.14501, -1.2341, 6.86849, 0.346855, 4.9422}, {4.62937, -1.83228, -3.04567, 1.74185, 1.32981, 2.03815, 0, 0, -2.39759, -0.198723, -1.94057, -0.655786, -7.21302, -7.71791, -11.9268, -2.15304, -1.64373, 0.444288, 1.90741, -0.754941, 11.2991, 2.94793, 9.40601, 2.17885, -1.90741, 0.754941, -1.7087, 0.245635, 2.39867, 3.77418}, {-1.54312, 0.61076, 1.01522, -5.22554, -3.98943, -6.11446, 0, 0, -2.39759, -0.198723, -1.94057, -0.655786, 5.92686, -4.84171, -7.83507, -2.15304, -1.64373, 10.0346, 1.90741, -0.754941, 1.7087, 2.15304, 1.64373, -0.444288, -1.11252, 8.51722, 0.914444, 0.245635, 2.39867, 3.77418}, {-1.54312, 0.61076, 1.01522, 1.74185, 1.32981, 2.03815, 0, 0, 7.19277, -0.198723, -1.94057, -0.655786, -0.245635, -2.39867, -3.77418, -9.12042, -6.96297, -7.70832, 8.0799, -3.19798, -2.35219, 2.15304, 1.64373, -0.444288, -1.90741, 0.754941, -1.7087, 1.04052, 10.1609, 6.39732}, {-1.54312, 0.61076, 1.01522, 1.74185, 1.32981, 2.03815, 0, 0, -2.39759, 0.596168, 5.82171, 1.96736, -0.245635, -2.39867, -3.77418, -2.15304, -1.64373, 0.444288, 1.90741, -0.754941, 1.7087, 8.32553, -0.799305, -4.50518, -8.87479, -4.5643, -9.86131, 0.245635, 2.39867, 13.3645}, {0.513102, -3.87755, 0, 0.57474, -0.851464, -1.31177, -1.67772, -0.393466, -9.15774e-16, 1.27402, -0.0475867, 1.31177, -2.79797, 2.86069, 6.86849, 1.36336, 1.53882, 1.62143, 8.99608, 0.462577, 4.66294e-15, -6.45943, -1.34847, -6.86849, -2.28519, 1.11129, -1.11022e-15, 0.499008, 0.545171, -1.62143}, {-0.171034, 1.29252, -2.22045e-16, -1.72422, 2.55439, 3.9353, -1.67772, -0.393466, -8.14021e-16, 1.27402, -0.0475867, 1.31177, 0.185129, -5.71524, 1.62143, 8.07425, 3.11268, 1.62143, 2.28519, -1.11129, 1.33227e-15, -1.36336, -1.53882, -1.62143, -7.38126, 1.30164, -5.24706, 0.499008, 0.545171, -1.62143}, {-0.171034, 1.29252, 4.44089e-16, 0.57474, -0.851464, -1.31177, 5.03317, 1.1804, 1.22103e-15, 1.27402, -0.0475867, 1.31177, -0.499008, -0.545171, 1.62143, -0.935598, 4.94468, 6.86849, 2.96933, -6.28136, -1.77636e-15, -1.36336, -1.53882, -1.62143, -2.28519, 1.11129, 0, -4.59706, 0.735518, -6.86849}, {-0.171034, 1.29252, 0, 0.57474, -0.851464, -1.31177, -1.67772, -0.393466, 5.5964e-16, -3.82205, 0.14276, -3.9353, -0.499008, -0.545171, 1.62143, 1.36336, 1.53882, 1.62143, 2.28519, -1.11129, -8.88178e-16, -0.679225, -6.70889, -1.62143, -4.58415, 4.51715, 5.24706, 7.2099, 2.11904, -1.62143}, {3.99239, 5.22128, -5.22376, -4.19346e-16, -1.90927e-15, 2.34313, -0.609885, 1.54187, -1.54513, 1.94068, 0.198561, -2.53925, 1.64495, 2.15129, -14.4211, 0.75386, -1.90585, -0.986372, 4.83836, -5.92203, 5.93812, -8.51658, 1.11161, 11.1434, -2.39881, -0.245434, 0.242418, -1.64495, -2.15129, 5.04857}, {-1.3308, -1.74043, 1.74125, -4.45091e-15, 2.34416e-15, -7.02938, -0.609885, 1.54187, -1.54513, 1.94068, 0.198561, -2.53925, 6.96814, 9.11299, -12.0136, 3.1934, -8.07331, 5.19416, 2.39881, 0.245434, -0.242418, -0.75386, 1.90585, 0.986372, -10.1615, -1.03968, 10.3994, -1.64495, -2.15129, 5.04857}, {-1.3308, -1.74043, 1.74125, 0, 0, 2.34313, 1.82966, -4.6256, 4.6354, 1.94068, 0.198561, -2.53925, 1.64495, 2.15129, -5.04857, 0.75386, -1.90585, -10.3589, 7.722, 7.20714, -7.20743, -0.75386, 1.90585, 0.986372, -2.39881, -0.245434, 0.242418, -9.40768, -2.94553, 15.2056}, {-1.3308, -1.74043, 1.74125, -1.12887e-15, -1.155e-16, 2.34313, -0.609885, 1.54187, -1.54513, -5.82204, -0.595682, 7.61774, 1.64495, 2.15129, -5.04857, 0.75386, -1.90585, -0.986372, 2.39881, 0.245434, -0.242418, 4.56932, 8.86756, -5.97864, -2.39881, -0.245434, -9.13008, 0.794587, -8.31875, 11.2291}, {5.36656, -5.36656, -5.3681, 1.78885, 1.36261, 1.3621, 0, 0, -3.15147, 0, -3.15147, 0, -7.15542, -9.34589, -9.34384, -2.21115, -1.68428, 2.21178, 2.21115, -2.21115, 14.2895, 2.21115, 14.2902, -2.21178, -2.21115, 2.21115, -1.68365, 0, 3.89543, 3.89543}, {-1.78885, 1.78885, 1.78937, -5.36656, -4.08784, -4.08631, 0, 0, -3.15147, 0, -3.15147, 0, 7.15542, -11.0508, -11.0529, -2.21115, -1.68428, 14.8177, 2.21115, -2.21115, 1.68365, 2.21115, 1.68428, -2.21178, -2.21115, 14.817, -1.68365, 0, 3.89543, 3.89543}, {-1.78885, 1.78885, 1.78937, 1.78885, 1.36261, 1.3621, 0, 0, 9.45441, 0, -3.15147, 0, 4.44089e-16, -3.89543, -3.89543, -9.36656, -7.13474, -3.23663, 9.36656, -9.36656, -5.47381, 2.21115, 1.68428, -2.21178, -2.21115, 2.21115, -1.68365, 0, 16.5013, 3.89543}, {-1.78885, 1.78885, 1.78937, 1.78885, 1.36261, 1.3621, 0, 0, -3.15147, 0, 9.45441, 0, 4.44089e-16, -3.89543, -3.89543, -2.21115, -1.68428, 2.21178, 2.21115, -2.21115, 1.68365, 9.36656, -5.47113, -9.36924, -9.36656, -3.23931, -7.13206, 0, 3.89543, 16.5013}, {-4.72653, -4.72788, -4.72653, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, -1.57551, -1.57596, 1.57596, -10.1969, 6.30148, 6.30439, -1.73195e-14, 1.73195e-14, 3.89543, 6.30204, -10.1975, 6.30204, 6.30204, 6.30384, -10.1993, 2.1394e-12, 3.89543, -2.14051e-12, 3.89487, 0.000556765, -0.000556765}, {1.57551, 1.57596, 1.57551, -4.72653, 4.72653, 4.72788, -1.57551, 1.57551, -1.57551, -1.57551, -1.57596, 1.57596, -10.1969, -6.30439, -6.30148, 6.30204, -6.30204, 10.1975, -2.13851e-12, -3.89543, 2.13829e-12, 1.42638e-14, -1.48241e-14, -3.89543, 6.30204, 10.1993, -6.30384, 3.89487, 0.000556765, -0.000556765}, {1.57551, 1.57596, 1.57551, 1.57551, -1.57551, -1.57596, 4.72653, -4.72653, 4.72653, -1.57551, -1.57596, 1.57596, -3.89487, -0.000556765, 0.000556765, -6.30204, 6.30204, 10.1993, -6.30204, -10.1993, -6.30204, 1.62622e-14, -1.72666e-14, -3.89543, 2.14029e-12, 3.89543, -2.14007e-12, 10.1969, 6.30439, -6.30439}, {1.57551, 1.57596, 1.57551, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, 4.72653, 4.72788, -4.72788, -3.89487, -0.000556765, 0.000556765, -1.70974e-14, 1.68754e-14, 3.89543, -2.14206e-12, -3.89543, 2.1414e-12, -6.30204, -6.30384, -10.1975, -6.30204, 10.1975, 6.30384, 10.1969, -6.30148, 6.30148}, {3.23101, 1.27881, 3.23101, -1.12016, -2.46258, 1.22297, 0.799503, 2.33566, 0.799503, 1.39766, 0.553185, -0.945467, 7.19648, 13.4211, -5.07228, 0.396353, 0.156874, -2.49991, -2.85501, -11.7028, -2.85501, -5.98699, -2.36962, 6.28178, -0.343007, 2.36014, -0.343007, -2.71584, -3.57081, 0.180421}, {-1.077, -0.426271, -1.077, 3.36048, 7.38773, -3.6689, 0.799503, 2.33566, 0.799503, 1.39766, 0.553185, -0.945467, 7.02385, 5.2759, 4.12759, -2.80166, -9.18577, -5.69792, 0.343007, -2.36014, 0.343007, -0.396353, -0.156874, 2.49991, -5.93364, 0.147394, 3.43886, -2.71584, -3.57081, 0.180421}, {-1.077, -0.426271, -1.077, -1.12016, -2.46258, 1.22297, -2.39851, -7.00698, -2.39851, 1.39766, 0.553185, -0.945467, 2.71584, 3.57081, -0.180421, 4.87699, 10.0072, -7.39177, 4.65101, -0.65505, 4.65101, -0.396353, -0.156874, 2.49991, -0.343007, 2.36014, -0.343007, -8.30647, -5.78355, 3.96229}, {-1.077, -0.426271, -1.077, -1.12016, -2.46258, 1.22297, 0.799503, 2.33566, 0.799503, -4.19298, -1.65956, 2.8364, 2.71584, 3.57081, -0.180421, 0.396353, 0.156874, -2.49991, 0.343007, -2.36014, 0.343007, 3.91165, 1.54821, 6.80792, 4.13763, 12.2104, -5.23487, -5.91385, -12.9135, -3.01759}, {-3.9353, 2.63698, 1.65871, 7.60332e-17, 1.28613, 0.176102, -3.18404e-16, -0.456132, 1.72743, -1.31177, 0.0489967, -1.35063, -1.62143, -5.64776, -0.238656, 2.99587e-16, -1.02593, -2.3529, -1.62143, 3.47483, -8.36153, 5.24706, 0.829946, 7.75543, 1.62143, -1.65031, 1.4518, 1.62143, 0.503247, -0.465751}, {1.31177, -0.878994, -0.552902, 8.56342e-16, -3.85839, -0.528305, 3.92674e-16, -0.456132, 1.72743, -1.31177, 0.0489967, -1.35063, -6.86849, 3.01273, 2.67736, -1.70324e-15, 0.798596, -9.26263, -1.62143, 1.65031, -1.4518, -1.93111e-16, 1.02593, 2.3529, 6.86849, -1.84629, 6.85433, 1.62143, 0.503247, -0.465751}, {1.31177, -0.878994, -0.552902, -5.33523e-16, 1.28613, 0.176102, 2.92961e-15, 1.3684, -5.1823, -1.31177, 0.0489967, -1.35063, -1.62143, -0.503247, 0.465751, 4.00063e-15, -6.17045, -3.0573, -6.86849, 5.16628, 0.75981, -2.19219e-15, 1.02593, 2.3529, 1.62143, -1.65031, 1.4518, 6.86849, 0.30726, 4.93678}, {1.31177, -0.878994, -0.552902, 7.60332e-17, 1.28613, 0.176102, -3.18404e-16, -0.456132, 1.72743, 3.9353, -0.14699, 4.0519, -1.62143, -0.503247, 0.465751, 2.99587e-16, -1.02593, -2.3529, -1.62143, 1.65031, -1.4518, -5.24706, 4.54191, 4.56451, 1.62143, -6.79482, 0.747392, 1.62143, 2.32778, -7.37548}, {0.56235, 5.36656, -5.36656, -1.24953, 3.64699, -0.373467, -0.986118, -1.85814, -1.41539, 2.4231, 0, 0, 6.77433, -16.8847, -0.255645, 2.76341, -2.21115, 2.21115, 5.39508, 11.9405, 5.19992, -12.4558, 2.21115, -2.21115, -1.45061, -4.50793, 0.461631, -1.77621, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, 3.74859, -10.941, 1.1204, -0.986118, -1.85814, -1.41539, 2.4231, 1.11775e-15, 8.51416e-16, 2.52601, 4.85864, -8.90493, 6.70789, 5.2214, 7.87269, 1.45061, 4.50793, -0.461631, -2.76341, 2.21115, -2.21115, -11.143, -4.50793, 0.461631, -1.77621, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, -1.24953, 3.64699, -0.373467, 2.95835, 5.57441, 4.24616, 2.4231, 0, 0, 1.77621, -2.29678, -1.74951, 7.76154, -16.7991, 3.70501, 2.20041, 11.6633, -7.61705, -2.76341, 2.21115, -2.21115, -1.45061, -4.50793, 0.461631, -11.4686, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, -1.24953, 3.64699, -0.373467, -0.986118, -1.85814, -1.41539, -7.2693, 0, 0, 1.77621, -2.29678, -1.74951, 2.76341, -2.21115, 2.21115, 1.45061, 4.50793, -0.461631, -2.01361, 9.36656, -9.36656, 3.54752, -19.0959, 1.9555, 2.16826, 9.72932, 7.41106}, {4.72585, 4.7272, 4.7272, -1.63629, -1.63676, 1.63676, -1.57573, 1.57528, 1.57528, 4.78731, 1.63721, -1.63631, 10.5149, 10.5179, -6.62248, 3.97028, 0.0759901, -3.97031, 10.1978, -6.30058, -6.30058, -23.1195, -6.62484, 10.5155, -3.89487, -0.000556685, -0.000556685, -3.96973, -3.97086, 0.0754336}, {-1.57528, -1.57573, -1.57573, 4.90888, 4.91028, -4.91028, -1.57573, 1.57528, 1.57528, 4.78731, 1.63721, -1.63631, 10.2709, 10.2738, 6.2275, 10.2732, -6.22515, -10.2714, 3.89487, 0.000556685, 0.000556685, -3.97028, -0.0759901, 3.97031, -23.0441, -6.5494, 6.54469, -3.96973, -3.97086, 0.0754336}, {-1.57528, -1.57573, -1.57573, -1.63629, -1.63676, 1.63676, 4.7272, -4.72585, -4.72585, 4.78731, 1.63721, -1.63631, 3.96973, 3.97086, -0.0754336, 10.5155, 6.62303, -10.5174, 10.196, 6.30349, 6.30349, -3.97028, -0.0759901, 3.97031, -3.89487, -0.000556685, -0.000556685, -23.119, -10.5197, 6.62068}, {-1.57528, -1.57573, -1.57573, -1.63629, -1.63676, 1.63676, -1.57573, 1.57528, 1.57528, -14.3619, -4.91163, 4.90893, 3.96973, 3.97086, -0.0754336, 3.97028, 0.0759901, -3.97031, 3.89487, 0.000556685, 0.000556685, 2.33085, 6.22695, 10.2732, 2.6503, 6.54649, -6.5476, 2.33321, -10.272, -6.2257}, {-2.40635, 2.40855, -2.40993, -1.57388, -1.57525, -1.57621, 3.20871, 3.21151, -0.0600473, -2.43695, -0.833412, 0.832954, 7.24946, 9.24051, 7.26022, -2.02076, -2.02253, 2.02253, -17.7925, -15.8233, -0.678532, 11.7686, 5.35618, -5.35435, 4.95766, 2.97727, 0.918721, -0.953948, -2.9395, -0.955365}, {0.802117, -0.80285, 0.803308, 4.72163, 4.72576, 4.72864, 3.20871, 3.21151, -0.0600473, -2.43695, -0.833412, 0.832954, -2.25452, 6.1509, -2.25787, -14.8556, -14.8686, 2.26272, -4.95766, -2.97727, -0.918721, 2.02076, 2.02253, -2.02253, 14.7055, 6.31092, -2.41309, -0.953948, -2.9395, -0.955365}, {0.802117, -0.80285, 0.803308, -1.57388, -1.57525, -1.57621, -9.62613, -9.63454, 0.180142, -2.43695, -0.833412, 0.832954, 0.953948, 2.9395, 0.955365, 4.27475, 4.27848, 8.32739, -8.16613, 0.234124, -4.13196, 2.02076, 2.02253, -2.02253, 4.95766, 2.97727, 0.918721, 8.79385, 0.394151, -4.28718}, {0.802117, -0.80285, 0.803308, -1.57388, -1.57525, -1.57621, 3.20871, 3.21151, -0.0600473, 7.31085, 2.50024, -2.49886, 0.953948, 2.9395, 0.955365, -2.02076, -2.02253, 2.02253, -4.95766, -2.97727, -0.918721, -1.18771, 5.23393, -5.23576, 11.2532, 9.27829, 7.22358, -13.7888, -15.7856, -0.715176}, {5.36291, -5.36781, 5.37088, 0, -3.15057, 0, -1.85687, -1.41402, 1.41389, 3.64451, 2.77532, 0.376399, 2.20964, 14.2849, 2.21292, 2.29522, 5.64214, -1.74767, 11.9323, 5.19225, -5.19032, -16.8733, -16.7434, 0.242074, -4.50486, 0.463834, -0.465254, -2.20964, -1.68266, -2.21292}, {-1.78764, 1.78927, -1.79029, 0, 9.4517, 0, -1.85687, -1.41402, 1.41389, 3.64451, 2.77532, 0.376399, 9.36019, -5.47442, 9.37409, 9.72271, 11.2982, -7.40324, 4.50486, -0.463834, 0.465254, -2.29522, -5.64214, 1.74767, -19.0829, -10.6374, -1.97085, -2.20964, -1.68266, -2.21292}, {-1.78764, 1.78927, -1.79029, 0, -3.15057, 0, 5.57061, 4.24206, -4.24168, 3.64451, 2.77532, 0.376399, 2.20964, 1.68266, 2.21292, 2.29522, 18.2444, -1.74767, 11.6554, -7.62091, 7.62642, -2.29522, -5.64214, 1.74767, -4.50486, 0.463834, -0.465254, -16.7877, -12.7839, -3.71852}, {-1.78764, 1.78927, -1.79029, 0, -3.15057, 0, -1.85687, -1.41402, 1.41389, -10.9335, -8.32596, -1.1292, 2.20964, 1.68266, 2.21292, 2.29522, 5.64214, -1.74767, 4.50486, -0.463834, 0.465254, 4.85533, -12.7992, 8.90884, -4.50486, 13.0661, -0.465254, 5.21784, 3.97342, -7.8685}, {-3.12618, -1.69082, 4.8169, -0.776768, 0.776768, 1.71093, 1.29482, -1.29482, 0.513906, -1.56011, -0.0455553, -0.619199, 2.77915, -4.76387, -6.97386, -0.640348, 0.640348, -2.75005, -8.06782, 6.08311, -0.706171, 6.8808, -0.458127, 5.22684, 2.88854, -0.903828, -1.34945, 0.32792, 1.6568, 0.130149}, {1.04206, 0.563608, -1.60563, 2.3303, -2.3303, -5.13278, 1.29482, -1.29482, 0.513906, -1.56011, -0.0455553, -0.619199, -4.49616, -3.91123, 6.29239, -5.81963, 5.81963, -4.80567, -2.88854, 0.903828, 1.34945, 0.640348, -0.640348, 2.75005, 9.12899, -0.721607, 1.12734, 0.32792, 1.6568, 0.130149}, {1.04206, 0.563608, -1.60563, -0.776768, 0.776768, 1.71093, -3.88446, 3.88446, -1.54172, -1.56011, -0.0455553, -0.619199, -0.32792, -1.6568, -0.130149, 2.46672, -2.46672, -9.59376, -7.05678, -1.3506, 7.77199, 0.640348, -0.640348, 2.75005, 2.88854, -0.903828, -1.34945, 6.56837, 1.83902, 2.60694}, {1.04206, 0.563608, -1.60563, -0.776768, 0.776768, 1.71093, 1.29482, -1.29482, 0.513906, 4.68034, 0.136666, 1.8576, -0.32792, -1.6568, -0.130149, -0.640348, 0.640348, -2.75005, -2.88854, 0.903828, 1.34945, -3.52789, -2.89478, 9.17259, 5.99561, -4.0109, -8.19316, -4.85136, 6.83608, -1.92547}, {0, 4.18682, -1.69558, 0, 0.106442, -1.13019, 1.31177, 1.47434, 0.246037, -1.31177, -0.185178, 0.318964, 0, 1.16773, 5.21915, -1.62143, -1.95396, 1.09288, -6.86849, -5.9947, -1.98688, 6.86849, 2.69467, -2.36873, 1.62143, 0.0973232, 1.00273, 0, -1.5935, -0.69838}, {6.66134e-16, -1.39561, 0.565192, -4.14281e-16, -0.319327, 3.39058, 1.31177, 1.47434, 0.246037, -1.31177, -0.185178, 0.318964, -3.55271e-15, 7.17592, -1.56239, -6.86849, -7.85133, 0.108727, -1.62143, -0.0973232, -1.00273, 1.62143, 1.95396, -1.09288, 6.86849, 0.838037, -0.273122, 1.11022e-15, -1.5935, -0.69838}, {6.66134e-16, -1.39561, 0.565192, -3.97019e-16, 0.106442, -1.13019, -3.9353, -4.42303, -0.738112, -1.31177, -0.185178, 0.318964, -2.22045e-16, 1.5935, 0.69838, -1.62143, -2.37973, 5.61365, -1.62143, 5.48511, -3.2635, 1.62143, 1.95396, -1.09288, 1.62143, 0.0973232, 1.00273, 5.24706, -0.852781, -1.97424}, {-2.22045e-16, -1.39561, 0.565192, 3.45234e-17, 0.106442, -1.13019, 1.31177, 1.47434, 0.246037, 3.9353, 0.555535, -0.956892, 2.22045e-16, 1.5935, 0.69838, -1.62143, -1.95396, 1.09288, -1.62143, -0.0973232, -1.00273, 1.62143, 7.53639, -3.35364, 1.62143, -0.328446, 5.52351, -5.24706, -7.49087, -1.68253}, {3.02999, -1.83569, -4.62902, -2.0783, 1.32959, -1.74182, 0.665193, -1.94149, 0.198817, 2.4231, 0, 0, 12.1305, -7.71818, 7.21305, 1.74669, 0.756347, 1.90726, -2.23457, 9.40942, -2.94828, -11.4391, -0.756347, -1.90726, -0.4262, -1.64347, 2.15301, -3.81734, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, 6.23489, -3.98877, 5.22547, 0.665193, -1.94149, 0.198817, 2.4231, 1.16789e-15, -1.19597e-16, 7.85732, -4.8474, -5.92628, -0.91408, 8.5223, 1.11199, 0.4262, 1.64347, -2.15301, -1.74669, -0.756347, -1.90726, -10.1186, -1.64347, 2.15301, -3.81734, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, -2.0783, 1.32959, -1.74182, -1.99558, 5.82447, -0.59645, 2.4231, 0, 0, 3.81734, -2.39981, 0.245751, 10.0599, -4.56202, 8.87456, 4.46618, -0.804126, -8.32504, -1.74669, -0.756347, -1.90726, -0.4262, -1.64347, 2.15301, -13.5097, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, -2.0783, 1.32959, -1.74182, 0.665193, -1.94149, 0.198817, -7.2693, 0, 0, 3.81734, -2.39981, 0.245751, 1.74669, 0.756347, 1.90726, 0.4262, 1.64347, -2.15301, 2.29329, -3.20394, -8.07929, 7.88699, -6.96183, 9.12031, -6.47811, 10.1658, -1.04102}, {-1.1204, -10.941, -3.69733, -1.78885, -1.78885, 0.204309, 1.41539, -1.85814, 0.960835, 0, 0, -2.39759, 8.90493, 4.85864, -2.59316, 0.461631, 4.50793, -1.4402, -7.87269, 5.2214, -6.55438, -0.461631, -4.50793, 11.0306, 2.21115, 2.21115, 2.71104, -1.74951, 2.29678, 1.77593}, {0.373467, 3.64699, 1.23244, 5.36656, 5.36656, -0.612928, 1.41539, -1.85814, 0.960835, 0, 0, -2.39759, 0.255645, -16.8847, -6.70571, -5.19992, 11.9405, -5.28354, -2.21115, -2.21115, -2.71104, -0.461631, -4.50793, 1.4402, 2.21115, 2.21115, 12.3014, -1.74951, 2.29678, 1.77593}, {0.373467, 3.64699, 1.23244, -1.78885, -1.78885, 0.204309, -4.24616, 5.57441, -2.88251, 0, 0, -2.39759, 1.74951, -2.29678, -1.77593, 7.61705, 11.6633, -2.25744, -3.70501, -16.7991, -7.64082, -0.461631, -4.50793, 1.4402, 2.21115, 2.21115, 2.71104, -1.74951, 2.29678, 11.3663}, {0.373467, 3.64699, 1.23244, -1.78885, -1.78885, 0.204309, 1.41539, -1.85814, 0.960835, 0, 0, 7.19277, 1.74951, -2.29678, -1.77593, 0.461631, 4.50793, -1.4402, -2.21115, -2.21115, -2.71104, -1.9555, -19.0959, -3.48958, 9.36656, 9.36656, 1.89381, -7.41106, 9.72932, -2.06741}, {3.67635, 0.128375, 3.75827, 1.3465, -0.311871, 0.167791, -0.0738998, -1.11087, 1.10252, -0.0471455, 1.46553, -0.0175582, -5.53561, 1.68587, 0.669927, -1.57302, 1.7586, -1.5702, 1.90169, 5.86948, -4.2244, 1.7616, -7.62073, 1.64043, -1.60609, -1.426, -0.185698, 0.14962, -0.438387, -1.34109}, {-1.22545, -0.0427917, -1.25276, -4.03949, 0.935613, -0.503374, -0.0738998, -1.11087, 1.10252, -0.0471455, 1.46553, -0.0175582, 4.75218, 0.609554, 6.35212, -1.27742, 6.20208, -5.98029, 1.60609, 1.426, 0.185698, 1.57302, -1.7586, 1.5702, -1.4175, -7.28813, -0.115465, 0.14962, -0.438387, -1.34109}, {-1.22545, -0.0427917, -1.25276, 1.3465, -0.311871, 0.167791, 0.221699, 3.33261, -3.30757, -0.0471455, 1.46553, -0.0175582, -0.14962, 0.438387, 1.34109, -6.959, 3.00609, -2.24136, 6.50789, 1.59717, 5.19673, 1.57302, -1.7586, 1.5702, -1.60609, -1.426, -0.185698, 0.338202, -6.30052, -1.27086}, {-1.22545, -0.0427917, -1.25276, 1.3465, -0.311871, 0.167791, -0.0738998, -1.11087, 1.10252, 0.141437, -4.3966, 0.0526746, -0.14962, 0.438387, 1.34109, -1.57302, 1.7586, -1.5702, 1.60609, 1.426, 0.185698, 6.47482, -1.58744, 6.58122, -6.99207, -0.17852, -0.856863, 0.445219, 4.00509, -5.75119}, {3.98391, -5.22497, -0.407969, -0.61239, -1.54296, -1.54296, -3.86726e-16, 3.96024e-17, 1.60567, 1.94036, -0.198701, -0.198701, 4.84797, 5.92622, 7.91093, 0.756955, 1.9072, -0.0775154, 1.64146, -2.15281, -8.57548, -8.51839, -1.1124, 0.87232, -1.64146, 2.15281, 2.15281, -2.39842, 0.245608, -1.73911}, {-1.32797, 1.74166, 0.13599, 1.83717, 4.62887, 4.62887, -1.16018e-15, 1.18807e-16, 1.60567, 1.94036, -0.198701, -0.198701, 7.71029, -7.21224, 1.19515, 0.756955, 1.9072, -6.50019, 1.64146, -2.15281, -2.15281, -0.756955, -1.9072, 0.0775154, -9.4029, 2.94761, 2.94761, -2.39842, 0.245608, -1.73911}, {-1.32797, 1.74166, 0.13599, -0.61239, -1.54296, -1.54296, 0, 0, -4.817, 1.94036, -0.198701, -0.198701, 2.39842, -0.245608, 1.73911, 3.20651, 8.07903, 6.09431, 6.95334, -9.11944, -2.69677, -0.756955, -1.9072, 0.0775154, -1.64146, 2.15281, 2.15281, -10.1599, 1.04041, -0.944303}, {-1.32797, 1.74166, 0.13599, -0.61239, -1.54296, -1.54296, 1.16018e-15, -1.18807e-16, 1.60567, -5.82108, 0.596103, 0.596103, 2.39842, -0.245608, 1.73911, 0.756955, 1.9072, -0.0775154, 1.64146, -2.15281, -2.15281, 4.55492, -8.87383, -0.466443, 0.808098, 8.32463, 8.32463, -2.39842, 0.245608, -8.16178}, {4.24495, 4.24616, 5.57441, 2.77721, -0.373467, 3.64699, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -12.7926, 3.70501, -16.7991, 0.461499, 0.461631, -4.50793, 18.2456, 1.74951, 2.29678, -7.61487, -7.61705, 11.6633, -5.64333, -1.74951, -2.29678, 1.6838, -2.21115, 2.21115}, {-1.41498, -1.41539, -1.85814, -8.33162, 1.1204, -10.941, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, 3.97613, 7.87269, 5.2214, 13.0638, 0.461631, -4.50793, 5.64333, 1.74951, 2.29678, -0.461499, -0.461631, 4.50793, -12.7967, -8.90493, 4.85864, 1.6838, -2.21115, 2.21115}, {-1.41498, -1.41539, -1.85814, 2.77721, -0.373467, 3.64699, 9.4517, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 2.21115, -2.21115, -10.6473, 1.9555, -19.0959, 11.3033, 7.41106, 9.72932, -0.461499, -0.461631, 4.50793, -5.64333, -1.74951, -2.29678, -5.46957, -9.36656, 9.36656}, {-1.41498, -1.41539, -1.85814, 2.77721, -0.373467, 3.64699, -3.15057, 0, 0, -5.36503, -5.36656, 5.36656, -1.6838, 2.21115, -2.21115, 0.461499, 0.461631, -4.50793, 5.64333, 1.74951, 2.29678, 5.19843, 5.19992, 11.9405, -16.7522, -0.255645, -16.8847, 14.2861, -2.21115, 2.21115}, {-5.69487, -2.66454e-15, -8.88178e-16, -0.76309, -0.00636856, -2.01559, -0.460311, 1.45577, 1.44144, -0.67489, -1.4494, 0.574147, 1.64917, 0.0333462, 10.5538, 1.51221, -1.79156, 0.709685, 0.063805, -7.62252, -7.54749, 1.18735, 7.58918, -3.00627, 1.77744, 1.79943, 1.78172, 1.40319, -0.00787198, -2.49141}, {1.89829, -1.55431e-15, 3.33067e-16, 2.28927, 0.0191057, 6.04677, -0.460311, 1.45577, 1.44144, -0.67489, -1.4494, 0.574147, -8.99635, 0.00787198, 2.49141, 3.35345, -7.61465, -5.05609, -1.77744, -1.79943, -1.78172, -1.51221, 1.79156, -0.709685, 4.477, 7.59705, -0.514866, 1.40319, -0.00787198, -2.49141}, {1.89829, -1.9984e-15, -1.22125e-15, -0.76309, -0.00636856, -2.01559, 1.38093, -4.36732, -4.32433, -0.67489, -1.4494, 0.574147, -1.40319, 0.00787198, 2.49141, 4.56457, -1.76609, 8.77205, -9.3706, -1.79943, -1.78172, -1.51221, 1.79156, -0.709685, 1.77744, 1.79943, 1.78172, 4.10275, 5.78974, -4.78799}, {1.89829, 1.33227e-15, -5.55112e-16, -0.76309, -0.00636856, -2.01559, -0.460311, 1.45577, 1.44144, 2.02467, 4.34821, -1.72244, -1.40319, 0.00787198, 2.49141, 1.51221, -1.79156, 0.709685, -1.77744, -1.79943, -1.78172, -9.10537, 1.79156, -0.709685, 4.8298, 1.82491, 9.84408, 3.24443, -5.83096, -8.25718}, {-1.1204, -4.37783, -10.941, 1.41539, 0.69601, -1.85814, -1.78885, 0.0170635, -1.78885, 0, -2.17235, 0, -7.87269, -5.44812, 5.2214, 0.461631, -0.881407, 4.50793, 8.90493, -1.89311, 4.85864, -0.461631, 9.57081, -4.50793, -1.74951, 1.82486, 2.29678, 2.21115, 2.66408, 2.21115}, {0.373467, 1.45928, 3.64699, -4.24616, -2.08803, 5.57441, -1.78885, 0.0170635, -1.78885, 0, -2.17235, 0, -3.70501, -8.50119, -16.7991, 7.61705, -0.949661, 11.6633, 1.74951, -1.82486, -2.29678, -0.461631, 0.881407, -4.50793, -1.74951, 10.5143, 2.29678, 2.21115, 2.66408, 2.21115}, {0.373467, 1.45928, 3.64699, 1.41539, 0.69601, -1.85814, 5.36656, -0.0511904, 5.36656, 0, -2.17235, 0, -2.21115, -2.66408, -2.21115, -5.19992, -3.66545, 11.9405, 0.255645, -7.66197, -16.8847, -0.461631, 0.881407, -4.50793, -1.74951, 1.82486, 2.29678, 2.21115, 11.3535, 2.21115}, {0.373467, 1.45928, 3.64699, 1.41539, 0.69601, -1.85814, -1.78885, 0.0170635, -1.78885, 0, 6.51705, 0, -2.21115, -2.66408, -2.21115, 0.461631, -0.881407, 4.50793, 1.74951, -1.82486, -2.29678, -1.9555, -4.9557, -19.0959, -7.41106, -0.959181, 9.72932, 9.36656, 2.59583, 9.36656}, {-4.15743, -0.83732, 1.25624, -1.32462, -1.53355, 0.226806, 0.107516, 1.61619, -1.60405, -0.168703, -0.361739, 1.79599, 5.22286, 7.6848, -0.669975, 1.50443, -0.10214, 1.70236, -2.27592, -8.80746, 8.91649, -0.829614, 1.5491, -8.88631, 1.84585, 2.34271, -2.50031, 0.0756322, -1.55058, -0.237251}, {1.38581, 0.279107, -0.418747, 3.97387, 4.60066, -0.680419, 0.107516, 1.61619, -1.60405, -0.168703, -0.361739, 1.79599, -5.61888, 0.434156, 1.91224, 1.07436, -6.56689, 8.11854, -1.84585, -2.34271, 2.50031, -1.50443, 0.10214, -1.70236, 2.52067, 3.78967, -9.68425, 0.0756322, -1.55058, -0.237251}, {1.38581, 0.279107, -0.418747, -1.32462, -1.53355, 0.226806, -0.322547, -4.84856, 4.81214, -0.168703, -0.361739, 1.79599, -0.0756322, 1.55058, 0.237251, 6.80292, 6.03208, 0.795135, -7.3891, -3.45914, 4.1753, -1.50443, 0.10214, -1.70236, 1.84585, 2.34271, -2.50031, 0.750446, -0.103625, -7.4212}, {1.38581, 0.279107, -0.418747, -1.32462, -1.53355, 0.226806, 0.107516, 1.61619, -1.60405, 0.50611, 1.08522, -5.38796, -0.0756322, 1.55058, 0.237251, 1.50443, -0.10214, 1.70236, -1.84585, -2.34271, 2.50031, -7.04767, -1.01429, -0.0273746, 7.14434, 8.47693, -3.40753, -0.354431, -8.01533, 6.17893}, {-9.45441, -1.42109e-14, 0, -1.78885, -1.78885, 1.78885, -1.36261, -1.36216, -1.78885, 0, 3.15102, 0, 5.47113, 9.36656, -9.36656, 3.89543, 3.89487, 0, 3.23931, 7.13238, 9.36656, -3.89543, -16.4989, 0, 2.21115, -1.68373, -2.21115, 1.68428, -2.21115, 2.21115}, {3.15147, 5.77316e-15, -1.39933e-15, 5.36656, 5.36656, -5.36656, -1.36261, -1.36216, -1.78885, 1.06591e-15, 3.15102, 1.39933e-15, -14.2902, 2.21115, -2.21115, 9.34589, 9.34353, 7.15542, -2.21115, 1.68373, 2.21115, -3.89543, -3.89487, 3.47389e-31, 2.21115, -14.2878, -2.21115, 1.68428, -2.21115, 2.21115}, {3.15147, 1.77636e-15, 2.66454e-15, -1.78885, -1.78885, 1.78885, 4.08784, 4.08649, 5.36656, 0, 3.15102, 0, -1.68428, 2.21115, -2.21115, 11.0508, 11.0503, -7.15542, -14.817, 1.68373, 2.21115, -3.89543, -3.89487, -3.55271e-15, 2.21115, -1.68373, -2.21115, 1.68428, -14.8152, 2.21115}, {3.15147, -2.66454e-15, 0, -1.78885, -1.78885, 1.78885, -1.36261, -1.36216, -1.78885, 0, -9.45305, 0, -1.68428, 2.21115, -2.21115, 3.89543, 3.89487, 0, -2.21115, 1.68373, 2.21115, -16.5013, -3.89487, 0, 9.36656, 5.47169, -9.36656, 7.13474, 3.23751, 9.36656}, {1.36235e-15, 1.07667, 3.62612, 1.31177, 0.0458057, 1.34099, -1.31177, -1.15409, -0.162924, 1.0026e-17, 1.46718, 0.0306378, -6.86849, 0.20377, -5.52749, -6.66134e-16, 1.36992, -1.45618, 6.86849, 6.48653, 2.34713, 6.2603e-16, -7.23863, 1.33362, -1.62143, -1.87015, -1.69543, 1.62143, -0.386993, 0.163515}, {-7.28501e-17, -0.358889, -1.20871, -3.9353, -0.137417, -4.02298, -1.31177, -1.15409, -0.162924, 1.18307e-15, 1.46718, 0.0306378, -1.62143, 1.82255, 4.67132, 5.24706, 5.9863, -0.804479, 1.62143, 1.87015, 1.69543, -1.55431e-15, -1.36992, 1.45618, -1.62143, -7.73886, -1.81798, 1.62143, -0.386993, 0.163515}, {5.92827e-17, -0.358889, -1.20871, 1.31177, 0.0458057, 1.34099, 3.9353, 3.46228, 0.488772, -9.47461e-16, 1.46718, 0.0306378, -1.62143, 0.386993, -0.163515, -5.24706, 1.1867, -6.82015, 1.62143, 3.30571, 6.53026, 1.11022e-15, -1.36992, 1.45618, -1.62143, -1.87015, -1.69543, 1.62143, -6.25571, 0.0409633}, {0, -0.358889, -1.20871, 1.31177, 0.0458057, 1.34099, -1.31177, -1.15409, -0.162924, 0, -4.40153, -0.0919135, -1.62143, 0.386993, -0.163515, 0, 1.36992, -1.45618, 1.62143, 1.87015, 1.69543, 0, 0.0656375, 6.29101, -6.86849, -2.05337, -7.05941, 6.86849, 4.22939, 0.815211}, {1.26288e-15, -3.55271e-15, -3.26126, -1.4431, -0.571101, -0.587405, 1.45561, -1.44292, 0.31363, -0.0125109, 2.01402, -0.813311, 7.55617, 2.99032, 1.73198, -0.0154644, 2.48947, 0.338405, -7.62167, 7.55524, -2.9859, 0.0655081, -10.5456, 2.91484, 1.79923, -1.78355, 1.73138, -1.78377, -0.70592, 0.61764}, {9.0726e-16, -4.44089e-16, 1.08709, 4.3293, 1.7133, 1.76222, 1.45561, -1.44292, 0.31363, -0.0125109, 2.01402, -0.813311, 1.78377, 0.70592, -4.96598, -5.83791, 8.26116, -0.916114, -1.79923, 1.78355, -1.73138, 0.0154644, -2.48947, -0.338405, 1.84928, -9.83965, 4.98462, -1.78377, -0.70592, 0.61764}, {4.63171e-16, 8.88178e-16, 1.08709, -1.4431, -0.571101, -0.587405, -4.36683, 4.32877, -0.940889, -0.0125109, 2.01402, -0.813311, 1.78377, 0.70592, -0.61764, 5.75693, 4.77387, 2.68803, -1.79923, 1.78355, -6.07972, 0.0154644, -2.48947, -0.338405, 1.79923, -1.78355, 1.73138, -1.73373, -8.76202, 3.87088}, {0, -4.44089e-16, 1.08709, -1.4431, -0.571101, -0.587405, 1.45561, -1.44292, 0.31363, 0.0375328, -6.04207, 2.43993, 1.78377, 0.70592, -0.61764, -0.0154644, 2.48947, 0.338405, -1.79923, 1.78355, -1.73138, 0.0154644, -2.48947, -4.68675, 7.57163, 0.500853, 4.081, -7.60621, 5.06577, -0.63688}, {2.18368e-11, -2.07612e-11, -5.36656, -2.34313, 0, 0, 2.34313, -2.34313, -1.78885, 0, 2.34313, 0, 12.2688, -8.55449e-12, -2.21115, -8.99725e-12, 2.89626, 2.21115, -12.2688, 12.2688, 7.15542, 8.99725e-12, -12.2688, -2.21115, 2.89626, -2.89626, 0, -2.89626, 8.55449e-12, 2.21115}, {-7.27948e-12, 6.92291e-12, 1.78885, 7.02938, 0, 0, 2.34313, -2.34313, -1.78885, -1.36297e-15, 2.34313, 1.04056e-15, 2.89626, -3.62483e-11, -9.36656, -9.3725, 12.2688, 9.36656, -2.89626, 2.89626, 8.4211e-16, 8.99947e-12, -2.89626, -2.21115, 2.89626, -12.2688, -5.44843e-15, -2.89626, 8.55715e-12, 2.21115}, {-7.27773e-12, 6.92024e-12, 1.78885, -2.34313, 0, 0, -7.02938, 7.02938, 5.36656, 0, 2.34313, 0, 2.89626, -8.55405e-12, -2.21115, 9.3725, 2.89626, 2.21115, -2.89626, 2.89626, -7.15542, 8.99636e-12, -2.89626, -2.21115, 2.89626, -2.89626, 0, -2.89626, -9.3725, 2.21115}, {-7.27951e-12, 6.9198e-12, 1.78885, -2.34313, 0, 0, 2.34313, -2.34313, -1.78885, 0, -7.02938, 0, 2.89626, -8.55316e-12, -2.21115, -8.99814e-12, 2.89626, 2.21115, -2.89626, 2.89626, -4.44089e-16, 3.81171e-11, -2.89626, -9.36656, 12.2688, -2.89626, 0, -12.2688, 9.3725, 9.36656}, {0, -2.67212e-17, 7.02938, 0, -2.34313, 0, -1.78885, 2.34313, 2.34566, 1.78885, 1.02081e-11, -0.00253498, 0, 12.2688, 2.89626, 2.21115, 1.26184e-11, -2.8994, 9.36656, -12.2688, -9.38578, -9.36656, -5.34508e-11, 2.90954, -2.21115, 2.89626, 0.00313341, 0, -2.89626, -2.89626}, {0, 3.72666e-16, -2.34313, 0, 7.02938, 0, -1.78885, 2.34313, 2.34566, 1.78885, 1.02097e-11, -0.00253498, 0, 2.89626, 12.2688, 9.36656, -9.3725, -12.282, 2.21115, -2.89626, -0.00313341, -2.21115, -1.26201e-11, 2.8994, -9.36656, 2.89626, 0.0132733, 0, -2.89626, -2.89626}, {0, -1.47432e-16, -2.34313, 0, -2.34313, 0, 5.36656, -7.02938, -7.03698, 1.78885, 1.02102e-11, -0.00253498, 0, 2.89626, 2.89626, 2.21115, 9.3725, -2.8994, 2.21115, -2.89626, 9.36937, -2.21115, -1.26201e-11, 2.8994, -2.21115, 2.89626, 0.00313341, -7.15542, -2.89626, -2.88612}, {-2.22045e-16, -3.98999e-17, -2.34313, 0, -2.34313, 0, -1.78885, 2.34313, 2.34566, -5.36656, -3.06329e-11, 0.00760494, 4.44089e-16, 2.89626, 2.89626, 2.21115, 1.26215e-11, -2.8994, 2.21115, -2.89626, -0.00313341, -2.21115, -1.26209e-11, 12.2719, -2.21115, 12.2688, 0.00313341, 7.15542, -12.2688, -12.2789}, {3.55271e-15, -9.45441, -2.66454e-14, 1.78885, -1.78885, -1.78885, -1.78885, -1.36261, -1.36261, 0, 0, 3.15147, -9.36656, 5.47113, 9.36656, -1.77636e-15, 3.89543, 3.89543, 9.36656, 3.23931, 7.13474, 1.77636e-15, -3.89543, -16.5013, -2.21115, 2.21115, -1.68428, 2.21115, 1.68428, -2.21115}, {3.76824e-16, 3.15147, -2.22045e-15, -5.36656, 5.36656, 5.36656, -1.78885, -1.36261, -1.36261, 1.39953e-15, 1.06606e-15, 3.15147, -2.21115, -14.2902, 2.21115, 7.15542, 9.34589, 9.34589, 2.21115, -2.21115, 1.68428, -2.22045e-15, -3.89543, -3.89543, -2.21115, 2.21115, -14.2902, 2.21115, 1.68428, -2.21115}, {0, 3.15147, -7.10543e-15, 1.78885, -1.78885, -1.78885, 5.36656, 4.08784, 4.08784, 0, 0, 3.15147, -2.21115, -1.68428, 2.21115, -7.15542, 11.0508, 11.0508, 2.21115, -14.817, 1.68428, 0, -3.89543, -3.89543, -2.21115, 2.21115, -1.68428, 2.21115, 1.68428, -14.817}, {-5.55112e-15, 3.15147, 4.44089e-16, 1.78885, -1.78885, -1.78885, -1.78885, -1.36261, -1.36261, 0, 0, -9.45441, -2.21115, -1.68428, 2.21115, -7.10543e-15, 3.89543, 3.89543, 2.21115, -2.21115, 1.68428, 3.01981e-14, -16.5013, -3.89543, -9.36656, 9.36656, 5.47113, 9.36656, 7.13474, 3.23931}, {-5.36656, 7.03835, 7.02938, -1.78885, -6.94208e-12, -7.11741e-12, 0, 2.34612, 2.72942e-15, 0, 0, 2.34313, 7.15542, 2.89996, 2.89626, 2.21115, -2.89996, 8.79423e-12, -2.21115, -9.38447, 2.89626, -2.21115, 2.89996, -9.3725, 2.21115, 8.58089e-12, -2.89626, 0, -2.89996, -2.89626}, {1.78885, -2.34612, -2.34313, 5.36656, 2.08278e-11, 2.13522e-11, 0, 2.34612, 1.36471e-15, 0, -1.36471e-15, 2.34313, -7.15542, 12.2844, 12.2688, 2.21115, -12.2844, 8.79045e-12, -2.21115, -8.58264e-12, 2.89626, -2.21115, 2.89996, -8.79533e-12, 2.21115, 8.58868e-12, -12.2688, 0, -2.89996, -2.89626}, {1.78885, -2.34612, -2.34313, -1.78885, -6.94417e-12, -7.11741e-12, 0, -7.03835, 0, 0, 0, 2.34313, -4.44089e-16, 2.89996, 2.89626, 9.36656, -2.89996, 3.72672e-11, -9.36656, 9.38447, 12.2688, -2.21115, 2.89996, -8.79702e-12, 2.21115, 8.58346e-12, -2.89626, 0, -2.89996, -12.2688}, {1.78885, -2.34612, -2.34313, -1.78885, -6.94104e-12, -7.11845e-12, 0, 2.34612, 2.72942e-15, 0, 0, -7.02938, -4.44089e-16, 2.89996, 2.89626, 2.21115, -2.89996, 8.79551e-12, -2.21115, -8.57902e-12, 2.89626, -9.36656, 12.2844, 9.3725, 9.36656, 3.63438e-11, -2.89626, 0, -12.2844, -2.89626}, {5.36656, -5.36656, 5.36656, 3.15147, 0, 0, -1.36261, -1.78885, -1.36216, 0, 0, 3.15102, -14.2902, -2.21115, 2.21115, -2.21115, 2.21115, 1.68373, 9.34589, 7.15542, 9.34353, 2.21115, -2.21115, -14.2878, -3.89543, 0, -3.89487, 1.68428, 2.21115, -2.21115}, {-1.78885, 1.78885, -1.78885, -9.45441, -4.1986e-15, -1.05928e-14, -1.36261, -1.78885, -1.36216, 1.06591e-15, 1.39933e-15, 3.15102, 5.47113, -9.36656, 9.36656, 3.23931, 9.36656, 7.13238, 3.89543, 3.0155e-15, 3.89487, 2.21115, -2.21115, -1.68373, -3.89543, -9.05692e-15, -16.4989, 1.68428, 2.21115, -2.21115}, {-1.78885, 1.78885, -1.78885, 3.15147, 0, 0, 4.08784, 5.36656, 4.08649, 0, 0, 3.15102, -1.68428, -2.21115, 2.21115, -14.817, 2.21115, 1.68373, 11.0508, -7.15542, 11.0503, 2.21115, -2.21115, -1.68373, -3.89543, 0, -3.89487, 1.68428, 2.21115, -14.8152}, {-1.78885, 1.78885, -1.78885, 3.15147, 0, 0, -1.36261, -1.78885, -1.36216, 0, 0, -9.45305, -1.68428, -2.21115, 2.21115, -2.21115, 2.21115, 1.68373, 3.89543, -4.44089e-16, 3.89487, 9.36656, -9.36656, 5.47169, -16.5013, 0, -3.89487, 7.13474, 9.36656, 3.23751}, {3.37408, 4.04519, 4.04519, 1.73606, 1.52739, 0.215622, 1.28983, 0.0265046, 1.33827, -1.90119, -0.205494, -0.205494, -7.69991, -6.33079, 0.5377, -3.7402, -1.92072, -1.92072, -5.36342, 1.52793, -5.34056, 11.345, 2.74269, 2.74269, 0.204116, -1.63395, -0.0125188, 0.755686, 0.221243, -1.40019}, {-1.12469, -1.3484, -1.3484, -5.20817, -4.58216, -0.646866, 1.28983, 0.0265046, 1.33827, -1.90119, -0.205494, -0.205494, 3.74309, 5.17235, 6.79378, -8.89951, -2.02673, -7.27379, -0.204116, 1.63395, 0.0125188, 3.7402, 1.92072, 1.92072, 7.80888, -0.811974, 0.809457, 0.755686, 0.221243, -1.40019}, {-1.12469, -1.3484, -1.3484, 1.73606, 1.52739, 0.215622, -3.86948, -0.0795138, -4.01481, -1.90119, -0.205494, -0.205494, -0.755686, -0.221243, 1.40019, -10.6844, -8.03027, -2.7832, 4.29466, 7.02754, 5.40611, 3.7402, 1.92072, 1.92072, 0.204116, -1.63395, -0.0125188, 8.36045, 1.04322, -0.578212}, {-1.12469, -1.3484, -1.3484, 1.73606, 1.52739, 0.215622, 1.28983, 0.0265046, 1.33827, 5.70357, 0.616482, 0.616482, -0.755686, -0.221243, 1.40019, -3.7402, -1.92072, -1.92072, -0.204116, 1.63395, 0.0125188, 8.23897, 7.31431, 7.31431, -6.74011, -7.7435, -0.875007, -4.40362, 0.115225, -6.75327}, {7.02938, 7.0206, 5.36656, -2.72401e-15, 2.34147, -1.03982e-15, 2.34313, 0, 0, -1.04066e-11, -0.00126659, 1.78885, 2.89626, -9.36743, 2.21115, -2.89626, -2.89421, 1.28529e-15, -9.3725, 2.89265, 2.21115, 2.89626, 2.89928, -7.15542, 1.28666e-11, -2.89265, -2.21115, -2.89626, 0.00156559, -2.21115}, {-2.34313, -2.3402, -1.78885, 4.08602e-15, -7.0244, -3.11946e-15, 2.34313, 7.36763e-19, -1.04056e-15, -1.0403e-11, -0.00126659, 1.78885, 12.2688, 9.35923, 9.36656, -12.2688, -2.89421, 4.16314e-15, -1.28599e-11, 2.89265, 2.21115, 2.89626, 2.89421, 4.43179e-16, 5.44723e-11, -2.88758, -9.36656, -2.89626, 0.00156559, -2.21115}, {-2.34313, -2.3402, -1.78885, -2.41965e-26, 2.34147, 4.15928e-15, -7.02938, 0, 0, -1.04066e-11, -0.00126659, 1.78885, 2.89626, -0.00156559, 2.21115, -2.89626, -12.2601, -2.17783e-14, 9.3725, 12.2534, 9.36656, 2.89626, 2.89421, 5.58524e-15, 1.28633e-11, -2.89265, -2.21115, -2.89626, 0.00663197, -9.36656}, {-2.34313, -2.3402, -1.78885, 6.05094e-27, 2.34147, -1.03982e-15, 2.34313, 0, 0, 3.12292e-11, 0.00379978, -5.36656, 2.89626, -0.00156559, 2.21115, -2.89626, -2.89421, 1.28529e-15, -1.28666e-11, 2.89265, 2.21115, 12.2688, 12.255, 7.15542, 1.28671e-11, -12.2585, -2.21115, -12.2688, 0.00156559, -2.21115}, {-3.69587, -1.12113, -5.61393, -0.115297, -1.49037, 0.58988, -0.136463, 0.136463, -2.07323, -0.980196, 0.980196, -0.387956, -0.919078, 7.34175, -5.40172, 0.311194, 1.67352, 1.83353, -0.80825, -1.17646, 8.54253, 3.60959, -5.59431, -0.281701, 1.3541, 0.630611, -0.249592, 1.38027, -1.38027, 3.0422}, {1.23196, 0.373711, 1.87131, 0.345892, 4.47111, -1.76964, -0.136463, 0.136463, -2.07323, -0.980196, 0.980196, -0.387956, -6.30809, -0.114578, -10.5274, 0.857047, 1.12767, 10.1265, -1.3541, -0.630611, 0.249592, -0.311194, -1.67352, -1.83353, 5.27489, -3.29017, 1.30223, 1.38027, -1.38027, 3.0422}, {1.23196, 0.373711, 1.87131, -0.115297, -1.49037, 0.58988, 0.40939, -0.40939, 6.2197, -0.980196, 0.980196, -0.387956, -1.38027, 1.38027, -3.0422, 0.772383, 7.635, -0.525997, -6.28193, -2.12546, -7.23564, -0.311194, -1.67352, -1.83353, 1.3541, 0.630611, -0.249592, 5.30105, -5.30105, 4.59402}, {1.23196, 0.373711, 1.87131, -0.115297, -1.49037, 0.58988, -0.136463, 0.136463, -2.07323, 2.94059, -2.94059, 1.16387, -1.38027, 1.38027, -3.0422, 0.311194, 1.67352, 1.83353, -1.3541, -0.630611, 0.249592, -5.23902, -3.16837, -9.31876, 1.81529, 6.59209, -2.60911, 1.92612, -1.92612, 11.3351}, {5.57441, -4.24616, -4.24616, 3.64699, 0.373467, -2.778, -1.78885, -1.78885, -1.78885, 0, 0, 3.15147, -16.7991, -3.70501, 12.7963, -2.29678, 1.74951, 5.64494, 11.6633, 7.61705, 7.61705, 2.29678, -1.74951, -18.2508, -4.50793, -0.461631, -0.461631, 2.21115, 2.21115, -1.68428}, {-1.85814, 1.41539, 1.41539, -10.941, -1.1204, 8.334, -1.78885, -1.78885, -1.78885, 1.39953e-15, 1.39953e-15, 3.15147, 5.2214, -7.87269, -3.97726, 4.85864, 8.90493, 12.8004, 4.50793, 0.461631, 0.461631, 2.29678, -1.74951, -5.64494, -4.50793, -0.461631, -13.0675, 2.21115, 2.21115, -1.68428}, {-1.85814, 1.41539, 1.41539, 3.64699, 0.373467, -2.778, 5.36656, 5.36656, 5.36656, 0, 0, 3.15147, -2.21115, -2.21115, 1.68428, -16.8847, 0.255645, 16.7569, 11.9405, -5.19992, -5.19992, 2.29678, -1.74951, -5.64494, -4.50793, -0.461631, -0.461631, 2.21115, 2.21115, -14.2902}, {-1.85814, 1.41539, 1.41539, 3.64699, 0.373467, -2.778, -1.78885, -1.78885, -1.78885, 0, 0, -9.45441, -2.21115, -2.21115, 1.68428, -2.29678, 1.74951, 5.64494, 4.50793, 0.461631, 0.461631, 9.72932, -7.41106, -11.3065, -19.0959, -1.9555, 10.6504, 9.36656, 9.36656, 5.47113}, {0.00760494, 5.36656, -0.00379978, 1.35906e-15, -2.07964e-15, 2.34147, -2.34059, 1.78885, -2.34273, 2.34313, 0, 0, 0.00313341, 2.21115, -12.2616, 2.89313, -2.21115, 0.00156559, 12.2586, -7.15542, 12.2651, -12.2656, 2.21115, -0.00156559, -2.89626, 2.57058e-15, -2.89421, -0.00313341, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, -8.16761e-15, 3.11946e-15, -7.0244, -2.34059, 1.78885, -2.34273, 2.34313, -1.04056e-15, 1.36274e-15, 0.0132733, 9.36656, -2.90084, 12.2555, -9.36656, 9.3725, 2.89626, -2.1274e-15, 2.89421, -2.89313, 2.21115, -0.00156559, -12.2688, 6.73371e-15, -2.89421, -0.00313341, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, 5.44802e-15, 0, 2.34147, 7.02177, -5.36656, 7.0282, 2.34313, 0, 0, 0.00313341, 2.21115, -2.89578, 2.89313, -2.21115, -9.3643, 2.9064, 7.15542, 2.88915, -2.89313, 2.21115, -0.00156559, -2.89626, 0, -2.89421, -9.37564, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, -1.36201e-15, 0, 2.34147, -2.34059, 1.78885, -2.34273, -7.02938, 0, 0, 0.00313341, 2.21115, -2.89578, 2.89313, -2.21115, 0.00156559, 2.89626, 4.44089e-16, 2.89421, -2.88299, 9.36656, -0.00663197, -2.89626, 0, -12.2601, 9.35923, -9.36656, 12.2667}, {-2.0499, 2.05263, 6.32666, 0.872781, 1.47234, -0.0861955, 0.376973, -0.375702, 1.61414, -1.93305, -0.412429, 0.580942, -5.41454, -6.86355, 3.05805, -1.54478, -1.35552, -1.88864, -2.81846, 2.81293, -5.84502, 9.277, 3.00524, -0.435124, 1.31057, -1.31012, -0.61154, 1.92342, 0.974184, -2.71327}, {0.683301, -0.68421, -2.10889, -2.61834, -4.41703, 0.258586, 0.376973, -0.375702, 1.61414, -1.93305, -0.412429, 0.580942, -4.65662, 1.76266, 11.1488, -3.05267, 0.147289, -8.34521, -1.31057, 1.31012, 0.61154, 1.54478, 1.35552, 1.88864, 9.04279, 0.339593, -2.93531, 1.92342, 0.974184, -2.71327}, {0.683301, -0.68421, -2.10889, 0.872781, 1.47234, -0.0861955, -1.13092, 1.12711, -4.84242, -1.93305, -0.412429, 0.580942, -1.92342, -0.974184, 2.71327, -5.0359, -7.24489, -1.54386, -4.04377, 4.04697, 9.04709, 1.54478, 1.35552, 1.88864, 1.31057, -1.31012, -0.61154, 9.65564, 2.6239, -5.03704}, {0.683301, -0.68421, -2.10889, 0.872781, 1.47234, -0.0861955, 0.376973, -0.375702, 1.61414, 5.79916, 1.23729, -1.74283, -1.92342, -0.974184, 2.71327, -1.54478, -1.35552, -1.88864, -1.31057, 1.31012, 0.61154, -1.18842, 4.09236, 10.3242, -2.18055, -7.19949, -0.266758, 0.41553, 2.47699, -9.16983}, {3.84226, 4.31846, 0.720662, 0.104325, 0.223697, -1.11063, 1.27099, 0.0329107, 0.803582, -0.0945646, 1.18288, 0.547265, 1.03685, 0.608011, 6.11224, -1.69999, -0.317185, 0.379527, -5.07191, 1.60698, -3.91068, 2.07825, -4.41433, -2.56859, -0.0120645, -1.73863, 0.696352, -1.45415, -1.5028, -1.66974}, {-1.28075, -1.43949, -0.240221, -0.312975, -0.671092, 3.33188, 1.27099, 0.0329107, 0.803582, -0.0945646, 1.18288, 0.547265, 6.57716, 7.26075, 2.63062, -6.78396, -0.448828, -2.8348, 0.0120645, 1.73863, -0.696352, 1.69999, 0.317185, -0.379527, 0.366194, -6.47014, -1.49271, -1.45415, -1.5028, -1.66974}, {-1.28075, -1.43949, -0.240221, 0.104325, 0.223697, -1.11063, -3.81298, -0.0987322, -2.41075, -0.0945646, 1.18288, 0.547265, 1.45415, 1.5028, 1.66974, -2.11729, -1.21197, 4.82203, 5.13508, 7.49658, 0.26453, 1.69999, 0.317185, -0.379527, -0.0120645, -1.73863, 0.696352, -1.07589, -6.23432, -3.8588}, {-1.28075, -1.43949, -0.240221, 0.104325, 0.223697, -1.11063, 1.27099, 0.0329107, 0.803582, 0.283694, -3.54864, -1.64179, 1.45415, 1.5028, 1.66974, -1.69999, -0.317185, 0.379527, 0.0120645, 1.73863, -0.696352, 6.823, 6.07514, 0.581356, -0.429365, -2.63341, 5.13886, -6.53812, -1.63444, -4.88406}, {6.08004, 1.41594, 0.0377686, 0.57469, 1.08447, 1.45022, 1.45199, 0.720135, -1.43763, 0, -1.33263, 0, -0.504, -5.09498, -7.57787, -2.50511, -2.23062, -0.0155615, -5.09761, -3.18728, 7.54308, 2.50511, 7.56114, 0.0155615, -0.710355, 0.306735, -1.79257, -1.79476, 0.757084, 1.77701}, {-2.02668, -0.471981, -0.0125895, -1.72407, -3.25342, -4.35065, 1.45199, 0.720135, -1.43763, 0, -1.33263, 0, 9.90148, 1.13084, -1.72665, -8.31307, -5.11116, 5.73495, 0.710355, -0.306735, 1.79257, 2.50511, 2.23062, 0.0155615, -0.710355, 5.63725, -1.79257, -1.79476, 0.757084, 1.77701}, {-2.02668, -0.471981, -0.0125895, 0.57469, 1.08447, 1.45022, -4.35597, -2.1604, 4.31288, 0, -1.33263, 0, 1.79476, -0.757084, -1.77701, -4.80387, -6.56852, -5.81643, 8.81707, 1.58119, 1.84292, 2.50511, 2.23062, 0.0155615, -0.710355, 0.306735, -1.79257, -1.79476, 6.0876, 1.77701}, {-2.02668, -0.471981, -0.0125895, 0.57469, 1.08447, 1.45022, 1.45199, 0.720135, -1.43763, 0, 3.99789, 0, 1.79476, -0.757084, -1.77701, -2.50511, -2.23062, -0.0155615, 0.710355, -0.306735, 1.79257, 10.6118, 4.11854, 0.0659197, -3.00911, -4.03116, -7.59343, -7.60272, -2.12346, 7.52752}, {-1.37732, 4.35589, 4.31302, -1.40475, 2.02293, -0.00626368, 1.89829, -6.72683e-16, 1.70116e-15, -0.952649, -0.570969, 1.44394, 6.78788, -8.79749, 1.80986, -0.610051, -2.50048, 0.00774234, -10.5071, 1.79473, 1.77706, 4.42065, 4.78436, -5.78349, 2.9139, -1.79473, -1.77706, -1.16888, 0.705756, -1.7848}, {0.459107, -1.45196, -1.43767, 4.21425, -6.0688, 0.018791, 1.89829, -4.0361e-16, 1.0207e-15, -0.952649, -0.570969, 1.44394, -0.66755, 5.1021, 7.53549, -8.20322, -2.50048, 0.00774234, -2.9139, 1.79473, 1.77706, 0.610051, 2.50048, -0.00774234, 6.7245, 0.489149, -7.5528, -1.16888, 0.705756, -1.7848}, {0.459107, -1.45196, -1.43767, -1.40475, 2.02293, -0.00626368, -5.69487, 0, 0, -0.952649, -0.570969, 1.44394, 1.16888, -0.705756, 1.7848, 5.00895, -10.5922, 0.0327971, -4.75033, 7.60258, 7.52775, 0.610051, 2.50048, -0.00774234, 2.9139, -1.79473, -1.77706, 2.64172, 2.98963, -7.56055}, {0.459107, -1.45196, -1.43767, -1.40475, 2.02293, -0.00626368, 1.89829, -1.34537e-16, 3.40233e-16, 2.85795, 1.71291, -4.33181, 1.16888, -0.705756, 1.7848, -0.610051, -2.50048, 0.00774234, -2.9139, 1.79473, 1.77706, -1.22638, 8.30834, 5.74295, 8.5329, -9.88646, -1.75201, -8.76204, 0.705756, -1.7848}, {-5.36656, -5.36656, -5.36656, -0.373467, -3.64699, -0.373467, 0, 0, -1.60567, -1.41539, 1.85814, 0.190281, -0.255645, 16.8847, -0.255645, 0.461631, 4.50793, 2.44635, -2.21115, -2.21115, 6.19624, 5.19992, -11.9405, -3.20747, 2.21115, 2.21115, 0.226431, 1.74951, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 1.1204, 10.941, 1.1204, 0, 0, -1.60567, -1.41539, 1.85814, 0.190281, -8.90493, -4.85864, -8.90493, 0.461631, 4.50793, 8.86902, -2.21115, -2.21115, -0.226431, -0.461631, -4.50793, -2.44635, 7.87269, -5.2214, -0.534693, 1.74951, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, -0.373467, -3.64699, -0.373467, 0, 0, 4.817, -1.41539, 1.85814, 0.190281, -1.74951, 2.29678, -1.74951, 1.9555, 19.0959, 3.94022, -9.36656, -9.36656, -7.38185, -0.461631, -4.50793, -2.44635, 2.21115, 2.21115, 0.226431, 7.41106, -9.72932, 0.988391}, {1.78885, 1.78885, 1.78885, -0.373467, -3.64699, -0.373467, 0, 0, -1.60567, 4.24616, -5.57441, -0.570843, -1.74951, 2.29678, -1.74951, 0.461631, 4.50793, 2.44635, -2.21115, -2.21115, -0.226431, -7.61705, -11.6633, -9.60176, 3.70501, 16.7991, 1.7203, 1.74951, -2.29678, 8.17219}, {-8.88178e-15, -9.45441, 5.32907e-15, 1.78885, -1.36261, -1.36261, -1.78885, -1.78885, -1.78885, 0, 0, 3.15147, -9.36656, 3.23931, 7.13474, 3.55271e-15, 3.89543, 3.89543, 9.36656, 5.47113, 9.36656, -3.55271e-15, -3.89543, -16.5013, -2.21115, 1.68428, -2.21115, 2.21115, 2.21115, -1.68428}, {1.48705e-15, 3.15147, -8.88178e-16, -5.36656, 4.08784, 4.08784, -1.78885, -1.78885, -1.78885, 1.39953e-15, 1.39953e-15, 3.15147, -2.21115, -14.817, 1.68428, 7.15542, 11.0508, 11.0508, 2.21115, -1.68428, 2.21115, -3.55271e-15, -3.89543, -3.89543, -2.21115, 1.68428, -14.817, 2.21115, 2.21115, -1.68428}, {2.88658e-15, 3.15147, -2.22045e-15, 1.78885, -1.36261, -1.36261, 5.36656, 5.36656, 5.36656, 0, 0, 3.15147, -2.21115, -2.21115, 1.68428, -7.15542, 9.34589, 9.34589, 2.21115, -14.2902, 2.21115, -3.55271e-15, -3.89543, -3.89543, -2.21115, 1.68428, -2.21115, 2.21115, 2.21115, -14.2902}, {0, 3.15147, 2.22045e-15, 1.78885, -1.36261, -1.36261, -1.78885, -1.78885, -1.78885, 0, 0, -9.45441, -2.21115, -2.21115, 1.68428, 0, 3.89543, 3.89543, 2.21115, -1.68428, 2.21115, 0, -16.5013, -3.89543, -9.36656, 7.13474, 3.23931, 9.36656, 9.36656, 5.47113}, {3.05492, -2.11527, -4.36034, 0.668117, -1.63909, -0.00517894, 0.911433, 1.21439, 0.00383706, -0.561241, -0.2804, -1.4521, -2.23961, 7.71083, -1.76944, -1.95243, 0.524948, 0.00165865, -3.51362, -7.23019, -1.81665, 4.1974, 0.59665, 5.80676, -0.132105, 2.37262, 1.8013, -0.43286, -1.15448, 1.79016}, {-1.01831, 0.705091, 1.45345, -2.00435, 4.91726, 0.0155368, 0.911433, 1.21439, 0.00383706, -0.561241, -0.2804, -1.4521, 4.50609, -1.66588, -7.60394, -5.59816, -4.33263, -0.0136896, 0.132105, -2.37262, -1.8013, 1.95243, -0.524948, -0.00165865, 2.11286, 3.49421, 7.60972, -0.43286, -1.15448, 1.79016}, {-1.01831, 0.705091, 1.45345, 0.668117, -1.63909, -0.00517894, -2.7343, -3.64318, -0.0115112, -0.561241, -0.2804, -1.4521, 0.43286, 1.15448, -1.79016, -4.6249, 7.08129, 0.0223744, 4.20534, -5.19298, -7.61508, 1.95243, -0.524948, -0.00165865, -0.132105, 2.37262, 1.8013, 1.81211, -0.0328828, 7.59857}, {-1.01831, 0.705091, 1.45345, 0.668117, -1.63909, -0.00517894, 0.911433, 1.21439, 0.00383706, 1.68372, 0.841199, 4.35631, 0.43286, 1.15448, -1.79016, -1.95243, 0.524948, 0.00165865, 0.132105, -2.37262, -1.8013, 6.02566, -3.34531, -5.81544, -2.80457, 8.92896, 1.82202, -4.07859, -6.01206, 1.77481}, {5.82171, 7.62554, -0.596168, 1.32981, 1.74185, -1.74185, 0.61076, -1.54312, 1.54312, 0, 2.34313, 0, -4.5643, -5.97853, 8.87479, -2.39867, -0.245635, 0.245635, -0.799305, 11.2218, -8.32553, 2.39867, -9.12687, -0.245635, -1.64373, -5.0493, 2.15304, -0.754941, -0.988857, -1.90741}, {-1.94057, -2.54185, 0.198723, -3.98943, -5.22554, 5.22554, 0.61076, -1.54312, 1.54312, -3.55272e-16, 2.34313, -8.97618e-16, 8.51722, 11.1562, 1.11252, -4.84171, 5.92686, -5.92686, 1.64373, 5.0493, -2.15304, 2.39867, 0.245635, -0.245635, -1.64373, -14.4218, 2.15304, -0.754941, -0.988857, -1.90741}, {-1.94057, -2.54185, 0.198723, 1.32981, 1.74185, -1.74185, -1.83228, 4.62937, -4.62937, 0, 2.34313, 0, 0.754941, 0.988857, 1.90741, -7.71791, -7.21302, 7.21302, 9.40601, 15.2167, -2.94793, 2.39867, 0.245635, -0.245635, -1.64373, -5.0493, 2.15304, -0.754941, -10.3614, -1.90741}, {-1.94057, -2.54185, 0.198723, 1.32981, 1.74185, -1.74185, 0.61076, -1.54312, 1.54312, 0, -7.02938, 0, 0.754941, 0.988857, 1.90741, -2.39867, -0.245635, 0.245635, 1.64373, 5.0493, -2.15304, 10.1609, 10.413, -1.04052, -6.96297, -12.0167, 9.12042, -3.19798, 5.18364, -8.0799}, {5.81909, -7.62212, -0.600985, 0, -2.34313, 0, 0.610485, 1.54348, 1.54262, 1.32921, -1.74106, -1.74295, 2.3976, 9.12828, -0.24762, -0.754601, 0.988412, -1.90678, -0.798945, -11.2223, -8.32487, -4.56224, 5.97584, 8.87857, -1.643, 5.04833, 2.1544, -2.3976, 0.244222, 0.24762}, {-1.9397, 2.54071, 0.200328, 0, 7.02938, 0, 0.610485, 1.54348, 1.54262, 1.32921, -1.74106, -1.74295, 10.1564, -10.407, -1.04893, -3.19654, -5.18552, -8.07725, 1.643, -5.04833, -2.1544, 0.754601, -0.988412, 1.90678, -6.95984, 12.0126, 9.12619, -2.3976, 0.244222, 0.24762}, {-1.9397, 2.54071, 0.200328, 0, -2.34313, 0, -1.83146, -4.63045, -4.62785, 1.32921, -1.74106, -1.74295, 2.3976, -0.244222, -0.24762, -0.754601, 10.3609, -1.90678, 9.40178, -15.2112, -2.95571, 0.754601, -0.988412, 1.90678, -1.643, 5.04833, 2.1544, -7.71444, 7.20847, 7.21941}, {-1.9397, 2.54071, 0.200328, 0, -2.34313, 0, 0.610485, 1.54348, 1.54262, -3.98763, 5.22319, 5.22884, 2.3976, -0.244222, -0.24762, -0.754601, 0.988412, -1.90678, 1.643, -5.04833, -2.1544, 8.51339, -11.1512, 1.10547, -1.643, 14.4208, 2.1544, -4.83954, -5.92971, -5.92285}, {8.88178e-16, -4.44089e-16, 4.817, 1.32981, 1.74185, -0.136178, 0.61076, -1.54312, 1.54312, -1.94057, -0.198723, 0.198723, -6.96297, -9.12042, 2.69775, -2.39867, -0.245635, -1.73908, -3.19798, 8.0799, -6.09519, 10.1609, 1.04052, 0.94419, 0.754941, -1.90741, -0.0773091, 1.64373, 2.15304, -2.15304}, {4.44089e-16, 1.66533e-16, -1.60567, -3.98943, -5.22554, 0.408534, 0.61076, -1.54312, 1.54312, -1.94057, -0.198723, 0.198723, -1.64373, -2.15304, 8.57571, -4.84171, 5.92686, -7.91157, -0.754941, 1.90741, 0.0773091, 2.39867, 0.245635, 1.73908, 8.51722, -1.11252, -0.872199, 1.64373, 2.15304, -2.15304}, {0, -3.05311e-16, -1.60567, 1.32981, 1.74185, -0.136178, -1.83228, 4.62937, -4.62937, -1.94057, -0.198723, 0.198723, -1.64373, -2.15304, 2.15304, -7.71791, -7.21302, -1.19437, -0.754941, 1.90741, 6.49998, 2.39867, 0.245635, 1.73908, 0.754941, -1.90741, -0.0773091, 9.40601, 2.94793, -2.94793}, {-4.44089e-16, -2.77556e-17, -1.60567, 1.32981, 1.74185, -0.136178, 0.61076, -1.54312, 1.54312, 5.82171, 0.596168, -0.596168, -1.64373, -2.15304, 2.15304, -2.39867, -0.245635, -1.73908, -0.754941, 1.90741, 0.0773091, 2.39867, 0.245635, 8.16175, -4.5643, -8.87479, 0.467403, -0.799305, 8.32553, -8.32553}, {-1.28888, 1.28888, -5.54754, -0.937563, 0.937563, 0.371082, -0.607159, -0.998509, -1.77891, 1.1151, 0.490571, -0.441349, 4.3781, -4.3781, -4.22872, 1.90938, 0.0753332, 1.74017, 2.64808, 5.7593, 7.02879, -6.36977, -2.03762, 0.0252242, -0.219445, -1.76527, 0.0868549, -0.627846, 0.627846, 2.74439}, {0.429625, -0.429625, 1.84918, 2.81269, -2.81269, -1.11325, -0.607159, -0.998509, -1.77891, 1.1151, 0.490571, -0.441349, -1.09065, 1.09065, -10.1411, 4.33802, 4.06937, 8.85582, 0.219445, 1.76527, -0.0868549, -1.90938, -0.0753332, -1.74017, -4.67983, -3.72755, 1.85225, -0.627846, 0.627846, 2.74439}, {0.429625, -0.429625, 1.84918, -0.937563, 0.937563, 0.371082, 1.82148, 2.99553, 5.33673, 1.1151, 0.490571, -0.441349, 0.627846, -0.627846, -2.74439, 5.65963, -3.67492, 0.255844, -1.49906, 3.48377, -7.48357, -1.90938, -0.0753332, -1.74017, -0.219445, -1.76527, 0.0868549, -5.08823, -1.33444, 4.50979}, {0.429625, -0.429625, 1.84918, -0.937563, 0.937563, 0.371082, -0.607159, -0.998509, -1.77891, -3.34529, -1.47171, 1.32405, 0.627846, -0.627846, -2.74439, 1.90938, 0.0753332, 1.74017, 0.219445, 1.76527, -0.0868549, -3.62788, 1.64317, -9.13689, 3.53081, -5.51552, -1.39747, 1.80079, 4.62188, 9.86004}, {-4.9045, -4.90878, 4.90879, 0.803078, -0.801888, 0.80329, -1.63483, -1.63626, 0.030594, -0.803078, 0.801888, 0.802378, -6.22574, 2.17621, -2.18355, 1.0281, 3.01372, -1.03074, 6.53933, 6.54504, 1.86234, 2.18421, -6.22127, -2.17877, 7.60503e-14, -7.59393e-14, -1.98471, 3.01342, 1.03134, -1.02961}, {1.63483, 1.63626, -1.63626, -2.40924, 2.40566, -2.40987, -1.63483, -1.63626, 0.030594, -0.803078, 0.801888, 0.802378, -9.55275, -7.57638, 7.57466, 7.56743, 9.55876, -1.15311, -7.62723e-14, 7.68274e-14, 1.98471, -1.0281, -3.01372, 1.03074, 3.21231, -3.20755, -5.19423, 3.01342, 1.03134, -1.02961}, {1.63483, 1.63626, -1.63626, 0.803078, -0.801888, 0.80329, 4.9045, 4.90878, -0.0917819, -0.803078, 0.801888, 0.802378, -3.01342, -1.03134, 1.02961, -2.18421, 6.22127, -4.2439, -6.53933, -6.54504, 8.52976, -1.0281, -3.01372, 1.03074, 7.52731e-14, -7.53841e-14, -1.98471, 6.22574, -2.17621, -4.23912}, {1.63483, 1.63626, -1.63626, 0.803078, -0.801888, 0.80329, -1.63483, -1.63626, 0.030594, 2.40924, -2.40566, -2.40713, -3.01342, -1.03134, 1.02961, 1.0281, 3.01372, -1.03074, -7.52731e-14, 7.43849e-14, 1.98471, -7.56743, -9.55876, 7.57579, -3.21231, 3.20755, -5.19788, 9.55275, 7.57638, -1.15199}, {0.412021, -3.98943, -5.22554, -1.60567, 0, 0, 0.200419, -1.94057, -0.198723, 1.54259, 0.61076, -1.54312, 8.57715, -1.64373, -2.15304, 1.73698, 2.39867, 0.245635, -0.879643, 8.51722, -1.11252, -7.90734, -4.84171, 5.92686, 0.0779689, -0.754941, 1.90741, -2.15448, 1.64373, 2.15304}, {-0.13734, 1.32981, 1.74185, 4.817, 0, 0, 0.200419, -1.94057, -0.198723, 1.54259, 0.61076, -1.54312, 2.70384, -6.96297, -9.12042, 0.93531, 10.1609, 1.04052, -0.0779689, 0.754941, -1.90741, -1.73698, -2.39867, -0.245635, -6.09239, -3.19798, 8.0799, -2.15448, 1.64373, 2.15304}, {-0.13734, 1.32981, 1.74185, -1.60567, 0, 0, -0.601256, 5.82171, 0.596168, 1.54259, 0.61076, -1.54312, 2.15448, -1.64373, -2.15304, 8.15966, 2.39867, 0.245635, 0.471392, -4.5643, -8.87479, -1.73698, -2.39867, -0.245635, 0.0779689, -0.754941, 1.90741, -8.32484, -0.799305, 8.32553}, {-0.13734, 1.32981, 1.74185, -1.60567, 0, 0, 0.200419, -1.94057, -0.198723, -4.62777, -1.83228, 4.62937, 2.15448, -1.64373, -2.15304, 1.73698, 2.39867, 0.245635, -0.0779689, 0.754941, -1.90741, -1.18762, -7.71791, -7.21302, 6.50064, -0.754941, 1.90741, -2.95615, 9.40601, 2.94793}, {-2.2024, 0.148267, -4.33994, -0.546238, -1.40698, 1.37428e-12, 0.372712, 0.180326, -1.44665, -0.560609, 1.27608, -1.24642e-12, 1.9527, 7.42813, -1.78815, 0.21449, 1.51623, 1.78815, -2.85899, -0.883108, 5.78659, 2.02795, -6.62053, -1.78815, 1.36814, 0.161805, -1.58045e-13, 0.232253, -1.80021, 1.78815}, {0.734135, -0.0494224, 1.44665, 1.63871, 4.22094, -4.12207e-12, 0.372712, 0.180326, -1.44665, -0.560609, 1.27608, -1.24619e-12, -3.16879, 1.9979, -7.57474, -1.27636, 0.794924, 7.57474, -1.36814, -0.161805, 1.57656e-13, -0.21449, -1.51623, -1.78815, 3.61057, -4.9425, 4.82673e-12, 0.232253, -1.80021, 1.78815}, {0.734135, -0.0494224, 1.44665, -0.546238, -1.40698, 1.37428e-12, -1.11814, -0.540977, 4.33994, -0.560609, 1.27608, -1.24642e-12, -0.232253, 1.80021, -1.78815, 2.39944, 7.14414, 1.78815, -4.30468, 0.0358845, -5.78659, -0.21449, -1.51623, -1.78815, 1.36814, 0.161805, -1.58045e-13, 2.47469, -6.90451, 1.78815}, {0.734135, -0.0494224, 1.44665, -0.546238, -1.40698, 1.3744e-12, 0.372712, 0.180326, -1.44665, 1.68183, -3.82823, 3.73959e-12, -0.232253, 1.80021, -1.78815, 0.21449, 1.51623, 1.78815, -1.36814, -0.161805, 1.577e-13, -3.15103, -1.31854, -7.57474, 3.55309, 5.78972, -5.65567e-12, -1.25859, -2.52151, 7.57474}, {0, 9.4517, 0, -1.78885, 1.78834, -1.78937, 1.78885, 1.36222, -1.3621, 0, 0, 3.15147, 9.36656, -5.46957, 9.36924, 0, -3.89432, 3.89543, -9.36656, -3.23838, 7.13206, 0, 3.89432, -16.5013, 2.21115, -2.21051, -1.68365, -2.21115, -1.6838, -2.21178}, {-1.54779e-16, -3.15057, 0, 5.36656, -5.36503, 5.3681, 1.78885, 1.36222, -1.3621, -1.39953e-15, -1.06575e-15, 3.15147, 2.21115, 14.2861, 2.21178, -7.15542, -9.34321, 9.34384, -2.21115, 2.21051, 1.68365, 1.77636e-15, 3.89432, -3.89543, 2.21115, -2.21051, -14.2895, -2.21115, -1.6838, -2.21178}, {0, -3.15057, -4.44089e-16, -1.78885, 1.78834, -1.78937, -5.36656, -4.08667, 4.08631, 0, 0, 3.15147, 2.21115, 1.6838, 2.21178, 7.15542, -11.0477, 11.0529, -2.21115, 14.8128, 1.68365, 0, 3.89432, -3.89543, 2.21115, -2.21051, -1.68365, -2.21115, -1.6838, -14.8177}, {0, -3.15057, 0, -1.78885, 1.78834, -1.78937, 1.78885, 1.36222, -1.3621, 0, 0, -9.45441, 2.21115, 1.6838, 2.21178, 0, -3.89432, 3.89543, -2.21115, 2.21051, 1.68365, 0, 16.4966, -3.89543, 9.36656, -9.36389, 5.47381, -9.36656, -7.1327, 3.23663}, {-0.595682, -0.596202, -5.82204, 0, -1.60567, 0, 1.54187, 1.54321, -0.609885, -1.74043, -0.136279, -1.3308, -0.245434, 8.16174, -2.39881, -1.90585, 0.0771985, 0.75386, -8.31875, -8.32602, 0.794587, 8.86756, 0.467918, 4.56932, 2.15129, 2.15317, 1.64495, 0.245434, -1.73907, 2.39881}, {0.198561, 0.198734, 1.94068, 0, 4.817, 0, 1.54187, 1.54321, -0.609885, -1.74043, -0.136279, -1.3308, -1.03968, 0.94413, -10.1615, -8.07331, -6.09565, 3.1934, -2.15129, -2.15317, -1.64495, 1.90585, -0.0771985, -0.75386, 9.11299, 2.69828, 6.96814, 0.245434, -1.73907, 2.39881}, {0.198561, 0.198734, 1.94068, 0, -1.60567, 0, -4.6256, -4.62964, 1.82966, -1.74043, -0.136279, -1.3308, -0.245434, 1.73907, -2.39881, -1.90585, 6.49987, 0.75386, -2.94553, -2.9481, -9.40768, 1.90585, -0.0771985, -0.75386, 2.15129, 2.15317, 1.64495, 7.20714, -1.19395, 7.722}, {0.198561, 0.198734, 1.94068, 0, -1.60567, 0, 1.54187, 1.54321, -0.609885, 5.22128, 0.408838, 3.99239, -0.245434, 1.73907, -2.39881, -1.90585, 0.0771985, 0.75386, -2.15129, -2.15317, -1.64495, 1.11161, -0.872135, -8.51658, 2.15129, 8.57584, 1.64495, -5.92203, -7.91192, 4.83836}, {-1.34911, 3.4086, 1.4084, 1.74422, 0.694821, 0.910847, -1.68823, -0.836265, 0.836265, -0.505685, 1.27764, -1.27764, -9.68869, -2.23371, -4.18896, -0.0691986, 0.174835, -2.15955, 8.28384, 5.78316, -3.79845, 2.09194, -5.28541, 7.27013, -1.53091, -2.4381, 0.453387, 2.71183, -0.545574, 0.545574}, {0.449702, -1.1362, -0.469468, -5.23265, -2.08446, -2.73254, -1.68823, -0.836265, 0.836265, -0.505685, 1.27764, -1.27764, -4.51064, 5.09037, 1.3323, 6.68373, 3.5199, -5.50461, 1.53091, 2.4381, -0.453387, 0.0691986, -0.174835, 2.15955, 0.49183, -7.54868, 5.56396, 2.71183, -0.545574, 0.545574}, {0.449702, -1.1362, -0.469468, 1.74422, 0.694821, 0.910847, 5.0647, 2.5088, -2.5088, -0.505685, 1.27764, -1.27764, -2.71183, 0.545574, -0.545574, -7.04606, -2.60445, -5.80294, -0.267898, 6.9829, 1.42448, 0.0691986, -0.174835, 2.15955, -1.53091, -2.4381, 0.453387, 4.73457, -5.65615, 5.65615}, {0.449702, -1.1362, -0.469468, 1.74422, 0.694821, 0.910847, -1.68823, -0.836265, 0.836265, 1.51705, -3.83293, 3.83293, -2.71183, 0.545574, -0.545574, -0.0691986, 0.174835, -2.15955, 1.53091, 2.4381, -0.453387, -1.72961, 4.36997, 4.03742, -8.50777, -5.21739, -3.19, 9.46476, 2.79949, -2.79949}, {-6.58175, 1.32414, -1.32414, -0.505685, 1.27764, -1.27764, 0.857073, 0.177676, 2.16545, -2.54531, -1.01394, -1.32918, -0.0640323, -6.14426, 6.14426, -0.43434, -1.79887, -1.09739, -7.19952, -0.384749, -11.884, 10.6156, 5.85464, 6.41412, 3.77123, -0.325955, 3.22222, 2.08677, 1.03368, -1.03368}, {2.19392, -0.441379, 0.441379, 1.51705, -3.83293, 3.83293, 0.857073, 0.177676, 2.16545, -2.54531, -1.01394, -1.32918, -10.8624, 0.731834, -0.731834, -3.86263, -2.50958, -9.75919, -3.77123, 0.325955, -3.22222, 0.43434, 1.79887, 1.09739, 13.9525, 3.72981, 8.53895, 2.08677, 1.03368, -1.03368}, {2.19392, -0.441379, 0.441379, -0.505685, 1.27764, -1.27764, -2.57122, -0.533028, -6.49635, -2.54531, -1.01394, -1.32918, -2.08677, -1.03368, 1.03368, 1.5884, -6.90945, 4.01319, -12.5469, 2.09147, -4.98773, 0.43434, 1.79887, 1.09739, 3.77123, -0.325955, 3.22222, 12.268, 5.08945, 4.28305}, {2.19392, -0.441379, 0.441379, -0.505685, 1.27764, -1.27764, 0.857073, 0.177676, 2.16545, 7.63592, 3.04182, 3.98755, -2.08677, -1.03368, 1.03368, -0.43434, -1.79887, -1.09739, -3.77123, 0.325955, -3.22222, -8.34133, 3.56439, -0.668128, 5.79397, -5.43653, 8.33279, -1.34152, 0.322977, -9.69548}, {5.63148, -7.39306, 3.82293, -0.845027, -3.02792, 0.845027, 1.29407, 2.43841, 1.8574, 1.42811, -1.87484, -1.42811, 6.74491, 12.8083, -2.84948, -0.55505, 0.728676, -3.34038, -4.45555, -15.8138, -8.15032, -5.15741, 6.7707, 9.05284, -0.720736, 6.06015, 0.720736, -3.36481, -0.696607, -0.530622}, {-1.87716, 2.46435, -1.27431, 2.53508, 9.08376, -2.53508, 1.29407, 2.43841, 1.8574, 1.42811, -1.87484, -1.42811, 10.8734, -9.16081, 5.62786, -5.73134, -9.02497, -10.77, 0.720736, -6.06015, -0.720736, 0.55505, -0.728676, 3.34038, -6.43319, 13.5595, 6.43319, -3.36481, -0.696607, -0.530622}, {-1.87716, 2.46435, -1.27431, -0.845027, -3.02792, 0.845027, -3.88221, -7.31523, -5.57219, 1.42811, -1.87484, -1.42811, 3.36481, 0.696607, 0.530622, 2.82506, 12.8404, -6.72049, 8.22937, -15.9176, 4.3765, 0.55505, -0.728676, 3.34038, -0.720736, 6.06015, 0.720736, -9.07726, 6.80277, 5.18184}, {-1.87716, 2.46435, -1.27431, -0.845027, -3.02792, 0.845027, 1.29407, 2.43841, 1.8574, -4.28434, 5.62453, 4.28434, 3.36481, 0.696607, 0.530622, -0.55505, 0.728676, -3.34038, 0.720736, -6.06015, -0.720736, 8.06369, -10.5861, 8.43762, 2.65937, 18.1718, -2.65937, -8.54109, -10.4502, -7.96021}, {8.88178e-16, 9.45441, -1.77636e-15, 1.78834, 1.78885, 1.78885, -3.15057, 0, 0, 1.36222, 1.36261, -1.78885, -9.36389, -5.47113, -9.36656, 1.6838, -2.21115, -2.21115, 16.4966, 3.89543, -4.44089e-16, -7.1327, -3.23931, 9.36656, -3.89432, -3.89543, 4.44089e-16, 2.21051, -1.68428, 2.21115}, {4.44089e-16, -3.15147, 2.22045e-16, -5.36503, -5.36656, -5.36656, -3.15057, 0, 0, 1.36222, 1.36261, -1.78885, -2.21051, 14.2902, -2.21115, 14.2861, -2.21115, -2.21115, 3.89432, 3.89543, 0, -1.6838, 2.21115, 2.21115, -9.34321, -9.34589, 7.15542, 2.21051, -1.68428, 2.21115}, {-4.44089e-16, -3.15147, 0, 1.78834, 1.78885, 1.78885, 9.4517, 0, 0, 1.36222, 1.36261, -1.78885, -2.21051, 1.68428, -2.21115, -5.46957, -9.36656, -9.36656, 3.89432, 16.5013, 0, -1.6838, 2.21115, 2.21115, -3.89432, -3.89543, 0, -3.23838, -7.13474, 9.36656}, {4.44089e-16, -3.15147, -2.22045e-16, 1.78834, 1.78885, 1.78885, -3.15057, 0, 0, -4.08667, -4.08784, 5.36656, -2.21051, 1.68428, -2.21115, 1.6838, -2.21115, -2.21115, 3.89432, 3.89543, 0, -1.6838, 14.817, 2.21115, -11.0477, -11.0508, -7.15542, 14.8128, -1.68428, 2.21115}, {-5.36656, 5.36656, -5.36656, 2.79907e-15, 3.15147, 3.33475e-16, -1.78885, -1.36261, 1.36261, 0, 0, -3.15147, -2.21115, -14.2902, -2.21115, 2.21115, -2.21115, -1.68428, 7.15542, 9.34589, -9.34589, -2.21115, 2.21115, 14.2902, -3.45984e-15, -3.89543, 3.89543, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, -4.1986e-15, -9.45441, 1.0595e-14, -1.78885, -1.36261, 1.36261, 0, 0, -3.15147, -9.36656, 5.47113, -9.36656, 9.36656, 3.23931, -7.13474, 1.28583e-15, 3.89543, -3.89543, -2.21115, 2.21115, 1.68428, -1.72992e-15, -3.89543, 16.5013, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 5.36656, 4.08784, -4.08784, 0, 0, -3.15147, -2.21115, -1.68428, -2.21115, 2.21115, -14.817, -1.68428, -7.15542, 11.0508, -11.0508, -2.21115, 2.21115, 1.68428, 0, -3.89543, 3.89543, 2.21115, 1.68428, 14.817}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 2.46559e-15, -1.78885, -1.36261, 1.36261, 0, 0, 9.45441, -2.21115, -1.68428, -2.21115, 2.21115, -2.21115, -1.68428, -4.44089e-16, 3.89543, -3.89543, -9.36656, 9.36656, -5.47113, 0, -16.5013, 3.89543, 9.36656, 7.13474, -3.23931}, {7.01844, 1.17551e-15, 0, 2.33948, 2.34313, -1.78885, 0, -2.34313, 0, -7.30165e-12, -6.9197e-12, 1.78885, -9.35791, -12.2688, 9.36656, -2.89175, -8.55405e-12, 2.21115, 2.89175, 12.2688, 0, 2.89175, 3.62329e-11, -9.36656, -2.89175, -2.89626, 0, 9.02534e-12, 2.89626, -2.21115}, {-2.33948, -1.95894e-17, 0, -7.01844, -7.02938, 5.36656, 0, -2.34313, 0, -7.30373e-12, -6.92022e-12, 1.78885, 9.35791, -2.89626, 2.21115, -2.89175, 9.3725, 2.21115, 2.89175, 2.89626, 0, 2.89175, 8.5536e-12, -2.21115, -2.89175, -2.89626, -7.15542, 9.02791e-12, 2.89626, -2.21115}, {-2.33948, 1.32789e-16, -4.44089e-16, 2.33948, 2.34313, -1.78885, 0, 7.02938, 0, -7.30321e-12, -6.92126e-12, 1.78885, -9.02668e-12, -2.89626, 2.21115, -12.2497, -9.3725, 9.36656, 12.2497, 2.89626, 1.77636e-15, 2.89175, 8.55493e-12, -2.21115, -2.89175, -2.89626, -4.44089e-16, 3.82401e-11, 2.89626, -9.36656}, {-2.33948, -8.31579e-16, -4.44089e-16, 2.33948, 2.34313, -1.78885, 0, -2.34313, 0, 2.19143e-11, 2.07622e-11, -5.36656, -9.02861e-12, -2.89626, 2.21115, -2.89175, -8.55538e-12, 2.21115, 2.89175, 2.89626, 4.44089e-16, 12.2497, 8.55648e-12, -2.21115, -12.2497, -12.2688, 7.15542, 9.02919e-12, 12.2688, -2.21115}, {-1.00651, -1.00808, 6.45666, -0.481765, 1.86061, -0.736419, 0.984821, -1.35677, 2.55622, -0.83856, -0.839867, 0.332415, 2.10785, -10.1576, 6.51623, -0.62181, -0.62278, -2.2494, -5.57129, 6.68879, -10.7243, 3.97605, 3.98225, 0.919744, 1.63201, -1.26171, 0.499377, -0.180789, 2.71519, -3.57055}, {0.335504, 0.336027, -2.15222, 1.4453, -5.58183, 2.20926, 0.984821, -1.35677, 2.55622, -0.83856, -0.839867, 0.332415, -1.16123, -4.0593, 12.1794, -4.56109, 4.8043, -12.4743, -1.63201, 1.26171, -0.499377, 0.62181, 0.62278, 2.2494, 4.98625, 2.09776, -0.830282, -0.180789, 2.71519, -3.57055}, {0.335504, 0.336027, -2.15222, -0.481765, 1.86061, -0.736419, -2.95446, 4.07031, -7.66867, -0.83856, -0.839867, 0.332415, 0.180789, -2.71519, 3.57055, 1.30525, -8.06522, 0.696272, -2.97403, -0.0824032, 8.1095, 0.62181, 0.62278, 2.2494, 1.63201, -1.26171, 0.499377, 3.17345, 6.07466, -4.90021}, {0.335504, 0.336027, -2.15222, -0.481765, 1.86061, -0.736419, 0.984821, -1.35677, 2.55622, 2.51568, 2.5196, -0.997244, 0.180789, -2.71519, 3.57055, -0.62181, -0.62278, -2.2494, -1.63201, 1.26171, -0.499377, -0.720207, -0.72133, 10.8583, 3.55907, -8.70414, 3.44505, -4.12007, 8.14227, -13.7954}, {5.36656, -5.48024e-11, 5.58682e-11, 1.78885, -2.34313, 2.34313, 0, 2.34313, 0, 0, 0, -2.34313, -7.15542, 12.2688, -12.2688, -2.21115, 2.25797e-11, -2.89626, 2.21115, -12.2688, 2.30194e-11, 2.21115, -2.25797e-11, 12.2688, -2.21115, 2.89626, -2.30194e-11, 0, -2.89626, 2.89626}, {-1.78885, 1.21112e-11, -1.24669e-11, -5.36656, 7.02938, -7.02938, 0, 2.34313, 1.36297e-15, 0, 0, -2.34313, 7.15542, 2.89626, -2.89626, -2.21115, -9.3725, -2.89626, 2.21115, -2.89626, 1.54086e-11, 2.21115, -1.49702e-11, 2.89626, -2.21115, 2.89626, 9.3725, 0, -2.89626, 2.89626}, {-1.78885, 1.21094e-11, -1.24669e-11, 1.78885, -2.34313, 2.34313, 0, -7.02938, 0, 0, 0, -2.34313, 4.44089e-16, 2.89626, -2.89626, -9.36656, 9.3725, -12.2688, 9.36656, -2.89626, 6.52776e-11, 2.21115, -1.49685e-11, 2.89626, -2.21115, 2.89626, -1.54099e-11, 0, -2.89626, 12.2688}, {-1.78885, 1.21099e-11, -1.24638e-11, 1.78885, -2.34313, 2.34313, 0, 2.34313, 0, 0, 0, 7.02938, 4.44089e-16, 2.89626, -2.89626, -2.21115, 1.49689e-11, -2.89626, 2.21115, -2.89626, 1.54063e-11, 9.36656, -6.34088e-11, 2.89626, -9.36656, 12.2688, -9.3725, 0, -12.2688, 2.89626}, {5.09908, -2.42192, -2.42638, -0.488904, -1.23525, -1.23482, 1.75382, -0.670557, 0.933579, 0.434779, 1.0985, -0.507552, 4.66087, 5.46995, 5.46587, -1.56352, 2.3557, 0.372353, -7.08218, 2.51319, -5.888, -0.175592, -6.74968, 1.65786, 0.0669023, 0.169033, 2.15369, -2.70526, -0.528962, -0.526598}, {-1.69969, 0.807307, 0.808792, 1.46671, 3.70574, 3.70446, 1.75382, -0.670557, 0.933579, 0.434779, 1.0985, -0.507552, 9.50403, -2.70027, -2.70857, -8.5788, 5.03793, -3.36196, -0.0669023, -0.169033, -2.15369, 1.56352, -2.3557, -0.372353, -1.67221, -4.22495, 4.1839, -2.70526, -0.528962, -0.526598}, {-1.69969, 0.807307, 0.808792, -0.488904, -1.23525, -1.23482, -5.26146, 2.01167, -2.80074, 0.434779, 1.0985, -0.507552, 2.70526, 0.528962, 0.526598, 0.392092, 7.29669, 5.31163, 6.73188, -3.39826, -5.38886, 1.56352, -2.3557, -0.372353, 0.0669023, 0.169033, 2.15369, -4.44437, -4.92294, 1.50361}, {-1.69969, 0.807307, 0.808792, -0.488904, -1.23525, -1.23482, 1.75382, -0.670557, 0.933579, -1.30434, -3.29549, 1.52266, 2.70526, 0.528962, 0.526598, -1.56352, 2.3557, 0.372353, -0.0669023, -0.169033, -2.15369, 8.3623, -5.58493, -3.60752, 2.02252, 5.11002, 7.09296, -9.72053, 2.15326, -4.26091}, {-2.57735, 0.513092, -6.51263, -2.5578, 0.977952, -1.36155, -0.488614, -1.23536, -1.23466, 2.1873, 0.428435, 0.425336, 12.3309, -4.90922, 4.44581, 3.76558, 0.31817, 3.2091, 1.49649, 6.67982, 3.78144, -12.5148, -2.03191, -4.91044, 0.457966, -1.73839, 1.15722, -2.09969, 0.99741, 1.00039}, {0.859116, -0.171031, 2.17088, 7.67341, -2.93386, 4.08465, -0.488614, -1.23536, -1.23466, 2.1873, 0.428435, 0.425336, -1.33677, -0.313288, -9.6839, 5.72003, 5.2596, 8.14775, -0.457966, 1.73839, -1.15722, -3.76558, -0.31817, -3.2091, -8.29124, -3.45213, -0.54412, -2.09969, 0.99741, 1.00039}, {0.859116, -0.171031, 2.17088, -2.5578, 0.977952, -1.36155, 1.46584, 3.70607, 3.70399, 2.1873, 0.428435, 0.425336, 2.09969, -0.99741, -1.00039, 13.9968, -3.59364, 8.65529, -3.89443, 2.42251, -9.84073, -3.76558, -0.31817, -3.2091, 0.457966, -1.73839, 1.15722, -10.8489, -0.716331, -0.700957}, {0.859116, -0.171031, 2.17088, -2.5578, 0.977952, -1.36155, -0.488614, -1.23536, -1.23466, -6.5619, -1.28531, -1.27601, 2.09969, -0.99741, -1.00039, 3.76558, 0.31817, 3.2091, -0.457966, 1.73839, -1.15722, -7.20204, 0.365952, -11.8926, 10.6892, -5.6502, 6.60342, -0.145237, 5.93884, 5.93904}, {4.08784, 4.08784, -5.36656, -1.78885, -1.78885, -1.78885, 3.15147, 2.46559e-15, 0, 0, 3.15147, 0, 11.0508, 11.0508, 7.15542, -1.68428, 2.21115, 2.21115, -14.817, 1.68428, -2.21115, 1.68428, -14.817, -2.21115, 2.21115, -1.68428, 2.21115, -3.89543, -3.89543, 0}, {-1.36261, -1.36261, 1.78885, 5.36656, 5.36656, 5.36656, 3.15147, 0, 0, -2.46559e-15, 3.15147, 0, 9.34589, 9.34589, -7.15542, -14.2902, 2.21115, 2.21115, -2.21115, 1.68428, -2.21115, 1.68428, -2.21115, -2.21115, 2.21115, -14.2902, 2.21115, -3.89543, -3.89543, 0}, {-1.36261, -1.36261, 1.78885, -1.78885, -1.78885, -1.78885, -9.45441, 0, 0, 0, 3.15147, 0, 3.89543, 3.89543, -4.44089e-16, 5.47113, 9.36656, 9.36656, 3.23931, 7.13474, -9.36656, 1.68428, -2.21115, -2.21115, 2.21115, -1.68428, 2.21115, -3.89543, -16.5013, 0}, {-1.36261, -1.36261, 1.78885, -1.78885, -1.78885, -1.78885, 3.15147, 2.46559e-15, 0, 0, -9.45441, 0, 3.89543, 3.89543, -4.44089e-16, -1.68428, 2.21115, 2.21115, -2.21115, 1.68428, -2.21115, 7.13474, 3.23931, -9.36656, 9.36656, 5.47113, 9.36656, -16.5013, -3.89543, 0}, {-4.7272, 4.72585, -4.72855, -1.57528, -1.57573, -1.57573, 1.57528, 1.57573, -1.57573, -1.57573, 1.57528, 1.57528, 6.30058, 10.1978, 6.30238, 2.11209e-12, -2.11164e-12, 3.89543, -10.196, -6.30349, 6.30238, 6.30294, -6.30114, -10.1966, 3.89487, 0.000556685, 0.000556685, 0.000556685, -3.89487, 0.000556844}, {1.57573, -1.57528, 1.57618, 4.72585, 4.7272, 4.7272, 1.57528, 1.57573, -1.57573, -1.57573, 1.57528, 1.57528, -6.30349, 10.196, -6.3053, -6.30114, -6.30294, 10.1984, -3.89487, -0.000556685, -0.000556685, -2.11226e-12, 2.11514e-12, -3.89543, 10.1978, -6.30058, -6.30058, 0.000556685, -3.89487, 0.000556844}, {1.57573, -1.57528, 1.57618, -1.57528, -1.57573, -1.57573, -4.72585, -4.7272, 4.7272, -1.57573, 1.57528, 1.57528, -0.000556685, 3.89487, -0.000556844, 6.30114, 6.30294, 10.1984, -10.1978, 6.30058, -6.3053, -2.11581e-12, 2.11492e-12, -3.89543, 3.89487, 0.000556685, 0.000556685, 6.30349, -10.196, -6.30058}, {1.57573, -1.57528, 1.57618, -1.57528, -1.57573, -1.57573, 1.57528, 1.57573, -1.57573, 4.7272, -4.72585, -4.72585, -0.000556685, 3.89487, -0.000556844, 2.11831e-12, -2.1172e-12, 3.89543, -3.89487, -0.000556685, -0.000556685, -6.30294, 6.30114, -10.2002, 10.196, 6.30349, 6.30349, -6.30058, -10.1978, 6.30349}, {-5.22554, -0.410098, 3.98943, -1.54312, -1.54218, -0.61076, 3.95893e-17, 1.60497, -3.86599e-16, -0.198723, -0.199483, 1.94057, 5.92686, 7.906, 4.84171, 1.90741, -0.0776051, 0.754941, -2.15304, -8.57268, 1.64373, -1.11252, 0.875539, -8.51722, 2.15304, 2.15282, -1.64373, 0.245635, -1.73727, -2.39867}, {1.74185, 0.136699, -1.32981, 4.62937, 4.62655, 1.83228, 1.18768e-16, 1.60497, -1.1598e-15, -0.198723, -0.199483, 1.94057, -7.21302, 1.19047, 7.71791, 1.90741, -6.49747, 0.754941, -2.15304, -2.15282, 1.64373, -1.90741, 0.0776051, -0.754941, 2.94793, 2.95075, -9.40601, 0.245635, -1.73727, -2.39867}, {1.74185, 0.136699, -1.32981, -1.54312, -1.54218, -0.61076, 0, -4.8149, 0, -0.198723, -0.199483, 1.94057, -0.245635, 1.73727, 2.39867, 8.0799, 6.09113, 3.19798, -9.12042, -2.69962, 6.96297, -1.90741, 0.0776051, -0.754941, 2.15304, 2.15282, -1.64373, 1.04052, -0.939339, -10.1609}, {1.74185, 0.136699, -1.32981, -1.54312, -1.54218, -0.61076, -1.18768e-16, 1.60497, 1.1598e-15, 0.596168, 0.59845, -5.82171, -0.245635, 1.73727, 2.39867, 1.90741, -0.0776051, 0.754941, -2.15304, -2.15282, 1.64373, -8.87479, -0.469193, 4.5643, 8.32553, 8.32155, 0.799305, 0.245635, -8.15714, -2.39867}, {4.63127, 4.6267, 1.83083, -2.54134, -0.199443, 1.94018, 1.74197, 1.74168, -1.3299, 2.34313, 0, 0, 15.2148, 2.9506, -9.40456, 0.988073, -1.9063, -0.754342, -7.21287, -7.21323, 7.7178, -10.3606, 1.9063, 0.754342, 0.245001, 0.246525, -2.39819, -5.04945, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, 7.62401, 0.598329, -5.82053, 1.74197, 1.74168, -1.3299, 2.34313, -1.01311e-15, 7.73589e-16, 11.2245, 8.32176, 0.797254, -5.9798, -8.87301, 4.56526, -0.245001, -0.246525, 2.39819, -0.988073, 1.9063, 0.754342, -9.1275, 0.246525, -2.39819, -5.04945, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, -2.54134, -0.199443, 1.94018, -5.2259, -5.22503, 3.9897, 2.34313, 0, 0, 5.04945, 2.15283, -1.64385, 11.1534, -1.10853, -8.51505, 5.93003, 5.92241, 4.83929, -0.988073, 1.9063, 0.754342, 0.245001, 0.246525, -2.39819, -14.422, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, -2.54134, -0.199443, 1.94018, 1.74197, 1.74168, -1.3299, -7.02938, 0, 0, 5.04945, 2.15283, -1.64385, 0.988073, -1.9063, -0.754342, -0.245001, -0.246525, 2.39819, 5.18696, 8.07523, 3.19544, 10.4103, 1.0443, -10.1589, -12.0173, -9.11953, 6.96345}, {4.33994, 1.90929, -1.71772, 1.45453e-15, 1.35003, 1.01047e-16, 1.36e-12, -0.731398, -2.01922, 1.44665, 0.0177991, 1.44665, 1.78815, -6.28218, -0.707741, -1.68285e-12, -0.764672, 2.4959, 1.78815, 4.61632, 9.86504, -5.78659, 0.693475, -8.28248, -1.78815, -1.69073, -1.78815, -1.78815, 0.882056, 0.707741}, {-1.44665, -0.636431, 0.572575, -4.36359e-15, -4.05009, -2.33336e-15, 1.35855e-12, -0.731398, -2.01922, 1.44665, 0.0177991, 1.44665, 7.57474, 1.66367, -2.99804, -7.11526e-12, 2.16092, 10.5728, 1.78815, 1.69073, 1.78815, 1.68142e-12, 0.764672, -2.4959, -7.57474, -1.76193, -7.57474, -1.78815, 0.882056, 0.707741}, {-1.44665, -0.636431, 0.572575, 0, 1.35003, 0, -4.08128e-12, 2.19419, 6.05767, 1.44665, 0.0177991, 1.44665, 1.78815, -0.882056, -0.707741, -1.68158e-12, -6.16479, 2.4959, 7.57474, 4.23646, -0.502145, 1.68194e-12, 0.764672, -2.4959, -1.78815, -1.69073, -1.78815, -7.57474, 0.81086, -5.07885}, {-1.44665, -0.636431, 0.572575, -4.84843e-16, 1.35003, -4.84843e-16, 1.3596e-12, -0.731398, -2.01922, -4.33994, -0.0533972, -4.33994, 1.78815, -0.882056, -0.707741, -1.67996e-12, -0.764672, 2.4959, 1.78815, 1.69073, 1.78815, 5.78659, 3.3104, -4.7862, -1.78815, -7.09085, -1.78815, -1.78815, 3.80765, 8.78463}, {-3.79117, -3.78885, -1.50052, 0.577052, -1.02738, -1.79083, -1.45233, 0.153525, -0.574823, -0.388446, -0.389091, 1.86548, -4.58353, 3.81836, 8.75865, 1.0819, 1.08015, 2.92411, 6.04244, -2.36496, 2.39156, 0.471884, 0.476215, -10.386, -0.233129, 1.75086, -0.0922713, 2.27532, 0.291177, -1.59534}, {1.26372, 1.26295, 0.500174, -1.73116, 3.08215, 5.37248, -1.45233, 0.153525, -0.574823, -0.388446, -0.389091, 1.86548, -7.33021, -5.34298, -0.40536, 6.89121, 0.466052, 5.2234, 0.233129, -1.75086, 0.0922713, -1.0819, -1.08015, -2.92411, 1.32066, 3.30723, -7.55418, 2.27532, 0.291177, -1.59534}, {1.26372, 1.26295, 0.500174, 0.577052, -1.02738, -1.79083, 4.35698, -0.460574, 1.72447, -0.388446, -0.389091, 1.86548, -2.27532, -0.291177, 1.59534, -1.22631, 5.18969, 10.0874, -4.82176, -6.80267, -1.90843, -1.0819, -1.08015, -2.92411, -0.233129, 1.75086, -0.0922713, 3.82911, 1.84754, -9.05724}, {1.26372, 1.26295, 0.500174, 0.577052, -1.02738, -1.79083, -1.45233, 0.153525, -0.574823, 1.16534, 1.16727, -5.59643, -2.27532, -0.291177, 1.59534, 1.0819, 1.08015, 2.92411, 0.233129, -1.75086, 0.0922713, -6.13679, -6.13196, -4.9248, -2.54134, 5.8604, 7.07104, 8.08463, -0.322922, 0.703957}, {2.52504, -4.49559, -7.83624, 1.26389, 1.26265, 0.49964, -0.875592, -0.873298, -2.36467, 0.453379, -1.88788, -0.747051, -5.57746, -8.46358, -5.84486, -0.479968, -0.48126, 2.3053, 5.62503, 2.72036, 9.15287, -1.33355, 8.03278, 0.682901, -2.12267, 0.772832, 0.305817, 0.521884, 3.413, 3.8463}, {-0.841681, 1.49853, 2.61208, -3.79168, -3.78794, -1.49892, -0.875592, -0.873298, -2.36467, 0.453379, -1.88788, -0.747051, 2.84484, -9.40713, -14.2946, 3.0224, 3.01193, 11.764, 2.12267, -0.772832, -0.305817, 0.479968, 0.48126, -2.3053, -3.93618, 8.32435, 3.29402, 0.521884, 3.413, 3.8463}, {-0.841681, 1.49853, 2.61208, 1.26389, 1.26265, 0.49964, 2.62678, 2.61989, 7.09401, 0.453379, -1.88788, -0.747051, -0.521884, -3.413, -3.8463, -5.53554, -5.53184, 0.306743, 5.48939, -6.76696, -10.7541, 0.479968, 0.48126, -2.3053, -2.12267, 0.772832, 0.305817, -1.29163, 10.9645, 6.8345}, {-0.841681, 1.49853, 2.61208, 1.26389, 1.26265, 0.49964, -0.875592, -0.873298, -2.36467, -1.36014, 5.66364, 2.24115, -0.521884, -3.413, -3.8463, -0.479968, -0.48126, 2.3053, 2.12267, -0.772832, -0.305817, 3.84669, -5.51287, -12.7536, -7.17824, -4.27775, -1.69274, 4.02425, 6.90619, 13.305}, {5.37846, -0.954422, 1.65136, 0.482922, -1.73161, -0.484335, 0.65353, 0.326507, 1.69088, 0.656368, 1.08696, -0.656093, -0.312565, 8.67359, 3.21641, -1.40473, 1.7368, -1.49137, -1.20588, -2.10286, -8.17318, -1.22074, -6.08465, 4.11575, -1.40824, 0.796829, 1.40965, -1.61912, -1.74715, -1.27907}, {-1.79282, 0.318141, -0.550454, -1.44877, 5.19483, 1.45301, 0.65353, 0.326507, 1.69088, 0.656368, 1.08696, -0.656093, 8.7904, 0.474582, 3.48088, -4.01885, 0.430774, -8.2549, 1.40824, -0.796829, -1.40965, 1.40473, -1.7368, 1.49137, -4.03371, -3.55102, 4.03402, -1.61912, -1.74715, -1.27907}, {-1.79282, 0.318141, -0.550454, 0.482922, -1.73161, -0.484335, -1.96059, -0.979522, -5.07265, 0.656368, 1.08696, -0.656093, 1.61912, 1.74715, 1.27907, -3.33642, 8.66325, 0.445966, 8.57952, -2.06939, 0.792169, 1.40473, -1.7368, 1.49137, -1.40824, 0.796829, 1.40965, -4.24459, -6.095, 1.3453}, {-1.79282, 0.318141, -0.550454, 0.482922, -1.73161, -0.484335, 0.65353, 0.326507, 1.69088, -1.9691, -3.26089, 1.96828, 1.61912, 1.74715, 1.27907, -1.40473, 1.7368, -1.49137, 1.40824, -0.796829, -1.40965, 8.57601, -3.00937, 3.69319, -3.33993, 7.72327, 3.34699, -4.23324, -3.05317, -8.0426}, {-8.19974, -2.81226, -4.15773, 1.49846, -0.593081, -0.985836, -2.7214, 1.07711, -0.607179, -1.5103, -1.42145, 0.207104, -11.2245, 1.9467, 3.44883, 1.51164, -0.598298, 1.96907, 10.8709, -6.79856, 1.46615, 4.52957, 6.28411, -2.79749, 0.0146435, 2.4901, 0.962565, 5.23067, 0.425625, 0.494519}, {2.73325, 0.937419, 1.38591, -4.49537, 1.77924, 2.95751, -2.7214, 1.07711, -0.607179, -1.5103, -1.42145, 0.207104, -16.1637, -4.1753, -6.03816, 12.3972, -4.90676, 4.39779, -0.0146435, -2.4901, -0.962565, -1.51164, 0.598298, -1.96907, 6.05586, 8.17591, 0.134147, 5.23067, 0.425625, 0.494519}, {2.73325, 0.937419, 1.38591, 1.49846, -0.593081, -0.985836, 8.16419, -3.23134, 1.82154, -1.5103, -1.42145, 0.207104, -5.23067, -0.425625, -0.494519, -4.48219, 1.77402, 5.91242, -10.9476, -6.23977, -6.50621, -1.51164, 0.598298, -1.96907, 0.0146435, 2.4901, 0.962565, 11.2719, 6.11143, -0.333899}, {2.73325, 0.937419, 1.38591, 1.49846, -0.593081, -0.985836, -2.7214, 1.07711, -0.607179, 4.53091, 4.26436, -0.621313, -5.23067, -0.425625, -0.494519, 1.51164, -0.598298, 1.96907, -0.0146435, -2.4901, -0.962565, -12.4446, -3.15138, -7.51272, -5.97918, 4.86242, 4.90591, 16.1163, -3.88283, 2.92323}, {-8.88178e-16, -2.39835, -6.05767, -3.06161e-16, 0.53318, -2.01922, -1.31177, -0.650588, 1.29879, 1.31177, -0.68204, -1.29879, 1.33227e-15, -3.77994, 8.07689, 1.62143, 0.145125, 0.890503, 6.86849, 2.41835, -9.29645, -6.86849, 2.58304, 4.30465, -1.62143, 0.184002, 4.10129, 0, 1.64722, 0}, {-2.22045e-16, 0.799449, 2.01922, -9.18483e-16, -1.59954, 6.05767, -1.31177, -0.650588, 1.29879, 1.31177, -0.68204, -1.29879, 8.88178e-16, -4.84502, -8.07689, 6.86849, 2.74748, -4.30465, 1.62143, -0.184002, -4.10129, -1.62143, -0.145125, -0.890503, -6.86849, 2.91216, 9.29645, 0, 1.64722, 0}, {1.77636e-15, 0.799449, 2.01922, -2.08189e-15, 0.53318, -2.01922, 3.9353, 1.95177, -3.89637, 1.31177, -0.68204, -1.29879, 2.22045e-16, -1.64722, -6.66134e-16, 1.62143, -1.98759, 8.96739, 1.62143, -3.3818, -12.1782, -1.62143, -0.145125, -0.890503, -1.62143, 0.184002, 4.10129, -5.24706, 4.37538, 5.19516}, {-6.66134e-16, 0.799449, 2.01922, 1.04095e-15, 0.53318, -2.01922, -1.31177, -0.650588, 1.29879, -3.9353, 2.04612, 3.89637, -6.66134e-16, -1.64722, -2.22045e-16, 1.62143, 0.145125, 0.890503, 1.62143, -0.184002, -4.10129, -1.62143, -3.34292, -8.96739, -1.62143, -1.94872, 12.1782, 5.24706, 4.24957, -5.19516}, {1.77636e-15, 0, 9.45441, 1.36261, 1.78885, 1.36261, 1.78885, -1.78885, 1.78885, -3.15147, 0, 0, -7.13474, -9.36656, -3.23931, -3.89543, 0, -3.89543, -9.36656, 9.36656, -5.47113, 16.5013, 0, 3.89543, 2.21115, -2.21115, -1.68428, 1.68428, 2.21115, -2.21115}, {4.44089e-16, -4.44089e-16, -3.15147, -4.08784, -5.36656, -4.08784, 1.78885, -1.78885, 1.78885, -3.15147, 0, 0, -1.68428, -2.21115, 14.817, -11.0508, 7.15542, -11.0508, -2.21115, 2.21115, 1.68428, 3.89543, 8.88178e-16, 3.89543, 14.817, -2.21115, -1.68428, 1.68428, 2.21115, -2.21115}, {0, 2.22045e-16, -3.15147, 1.36261, 1.78885, 1.36261, -5.36656, 5.36656, -5.36656, -3.15147, 0, 0, -1.68428, -2.21115, 2.21115, -9.34589, -7.15542, -9.34589, -2.21115, 2.21115, 14.2902, 3.89543, -4.44089e-16, 3.89543, 2.21115, -2.21115, -1.68428, 14.2902, 2.21115, -2.21115}, {4.44089e-16, 2.22045e-16, -3.15147, 1.36261, 1.78885, 1.36261, 1.78885, -1.78885, 1.78885, 9.45441, 0, 0, -1.68428, -2.21115, 2.21115, -3.89543, 4.44089e-16, -3.89543, -2.21115, 2.21115, 1.68428, 3.89543, 0, 16.5013, -3.23931, -9.36656, -7.13474, -5.47113, 9.36656, -9.36656}, {-2.46108, 3.54412, -0.0109738, -0.670026, 0.174063, -1.44271, 0.904569, 1.43103, -0.00443094, -1.0549, -0.423716, 1.44348, 2.49428, 0.548851, 7.54959, -0.28991, -1.984, 1.78876, -5.7504, -6.03269, 0.0186792, 4.50952, 3.67886, -7.56268, 2.13213, 0.308587, -0.000955489, 0.185824, -1.2451, -1.77876}, {0.820361, -1.18137, 0.00365793, 2.01008, -0.52219, 4.32812, 0.904569, 1.43103, -0.00443094, -1.0549, -0.423716, 1.44348, -3.46727, 5.9706, 1.76413, -3.90819, -7.7081, 1.80648, -2.13213, -0.308587, 0.000955489, 0.28991, 1.984, -1.78876, 6.35174, 2.00345, -5.77487, 0.185824, -1.2451, -1.77876}, {0.820361, -1.18137, 0.00365793, -0.670026, 0.174063, -1.44271, -2.71371, -4.29308, 0.0132928, -1.0549, -0.423716, 1.44348, -0.185824, 1.2451, 1.77876, 2.39019, -2.68025, 7.55959, -5.41357, 4.41691, -0.0136762, 0.28991, 1.984, -1.78876, 2.13213, 0.308587, -0.000955489, 4.40544, 0.449758, -7.55268}, {0.820361, -1.18137, 0.00365793, -0.670026, 0.174063, -1.44271, 0.904569, 1.43103, -0.00443094, 3.16471, 1.27115, -4.33044, -0.185824, 1.2451, 1.77876, -0.28991, -1.984, 1.78876, -2.13213, -0.308587, 0.000955489, -2.99153, 6.7095, -1.80339, 4.81224, -0.387667, 5.76987, -3.43245, -6.96921, -1.76104}, {-4.81192, -4.81192, 0.736124, -0.501255, 1.51797, 0.85277, 0.0700522, -1.94917, 0.533356, -1.17277, -1.17277, -1.14075, 0.641985, -9.9308, -4.16186, 0.532996, 0.532996, -1.71335, -2.34942, 8.22336, -2.48939, 4.15809, 4.15809, 6.27635, 2.06921, -0.426686, 0.355964, 1.36304, 3.85893, 0.750782}, {1.60397, 1.60397, -0.245375, 1.50376, -4.5539, -2.55831, 0.0700522, -1.94917, 0.533356, -1.17277, -1.17277, -1.14075, -7.77893, -10.2748, 0.230717, 0.252787, 8.32967, -3.84677, -2.06921, 0.426686, -0.355964, -0.532996, -0.532996, 1.71335, 6.76029, 4.2644, 4.91897, 1.36304, 3.85893, 0.750782}, {1.60397, 1.60397, -0.245375, -0.501255, 1.51797, 0.85277, -0.210157, 5.84751, -1.60007, -1.17277, -1.17277, -1.14075, -1.36304, -3.85893, -0.750782, 2.53802, -5.53887, -5.12443, -8.4851, -5.98921, 0.625534, -0.532996, -0.532996, 1.71335, 2.06921, -0.426686, 0.355964, 6.05412, 8.55001, 5.31379}, {1.60397, 1.60397, -0.245375, -0.501255, 1.51797, 0.85277, 0.0700522, -1.94917, 0.533356, 3.51831, 3.51831, 3.42225, -1.36304, -3.85893, -0.750782, 0.532996, 0.532996, -1.71335, -2.06921, 0.426686, -0.355964, -6.94889, -6.94889, 2.69484, 4.07423, -6.49855, -3.05512, 1.08283, 11.6556, -1.38264}, {-4.7272, -4.7272, -4.7272, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 6.30294, 6.30294, -10.1984, -1.8181e-12, 3.89543, -1.80878e-12, -10.1984, 6.30294, 6.30294, 6.30294, -10.1984, 6.30294, 3.89543, -1.79678e-12, -1.79323e-12, 3.77476e-15, -3.77476e-15, 3.89543}, {1.57573, 1.57573, 1.57573, 4.7272, 4.7272, -4.7272, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, -6.30294, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -3.89543, 1.79323e-12, 1.80544e-12, 1.81771e-12, -3.89543, 1.82415e-12, 10.1984, -6.30294, 6.30294, 3.55271e-15, -3.55271e-15, 3.89543}, {1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 1.57573, -4.7272, 4.7272, 4.7272, -1.57573, 1.57573, -1.57573, -3.9968e-15, 3.10862e-15, -3.89543, 6.30294, 10.1984, -6.30294, -10.1984, -6.30294, -6.30294, 1.82792e-12, -3.89543, 1.81616e-12, 3.89543, -1.80234e-12, -1.79368e-12, 6.30294, -6.30294, 10.1984}, {1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 4.7272, -4.7272, 4.7272, -2.66454e-15, 1.33227e-15, -3.89543, -1.81033e-12, 3.89543, -1.81055e-12, -3.89543, 1.80367e-12, 1.80389e-12, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -6.30294, -6.30294, 6.30294, 10.1984}, {1.77636e-15, 8.88178e-16, 3.96048, -1.97452e-12, 2.01922, 0.776088, 1.44665, -0.572575, 0.322765, -1.44665, -1.44665, 0.221307, 1.03391e-11, -10.5728, -2.43184, -1.78815, -1.78815, -1.35826, -7.57474, 2.99804, -0.0582134, 7.57474, 7.57474, 0.47303, 1.78815, -0.707741, -1.23285, -2.44094e-12, 2.4959, -0.672511}, {2.22045e-16, 0, -1.32016, 5.92356e-12, -6.05767, -2.32827, 1.44665, -0.572575, 0.322765, -1.44665, -1.44665, 0.221307, 2.43894e-12, -2.4959, 5.95315, -7.57474, 0.502145, -2.64932, -1.78815, 0.707741, 1.23285, 1.78815, 1.78815, 1.35826, 7.57474, 5.07885, -2.11808, -2.44005e-12, 2.4959, -0.672511}, {4.44089e-16, 4.44089e-16, -1.32016, -1.97278e-12, 2.01922, 0.776088, -4.33994, 1.71772, -0.968296, -1.44665, -1.44665, 0.221307, 2.43805e-12, -2.4959, 0.672511, -1.78815, -9.86504, -4.46261, -1.78815, 0.707741, 6.51349, 1.78815, 1.78815, 1.35826, 1.78815, -0.707741, -1.23285, 5.78659, 8.28248, -1.55774}, {2.22045e-16, 2.22045e-16, -1.32016, -1.97211e-12, 2.01922, 0.776088, 1.44665, -0.572575, 0.322765, 4.33994, 4.33994, -0.663921, 2.43761e-12, -2.4959, 0.672511, -1.78815, -1.78815, -1.35826, -1.78815, 0.707741, 1.23285, 1.78815, 1.78815, 6.6389, 1.78815, -8.78463, -4.3372, -5.78659, 4.7862, -1.96357}, {-5.69487, 4.44089e-15, -2.66454e-15, -0.575562, 1.78885, 1.78885, 0.744968, -3.64699, -0.373467, -2.0677, 1.85814, -1.41539, 0.667265, -9.36656, -9.36656, -0.209397, 2.29678, -1.74951, -6.24712, 19.0959, 1.9555, 8.48018, -9.72932, 7.41106, 3.26725, -4.50793, -0.461631, 1.63498, 2.21115, 2.21115}, {1.89829, 2.66454e-15, -6.66134e-16, 1.72669, -5.36656, -5.36656, 0.744968, -3.64699, -0.373467, -2.0677, 1.85814, -1.41539, -9.22815, -2.21115, -2.21115, -3.18927, 16.8847, -0.255645, -3.26725, 4.50793, 0.461631, 0.209397, -2.29678, 1.74951, 11.538, -11.9405, 5.19992, 1.63498, 2.21115, 2.21115}, {1.89829, 3.55271e-15, 4.44089e-16, -0.575562, 1.78885, 1.78885, -2.2349, 10.941, 1.1204, -2.0677, 1.85814, -1.41539, -1.63498, -2.21115, -2.21115, 2.09285, -4.85864, -8.90493, -10.8604, 4.50793, 0.461631, 0.209397, -2.29678, 1.74951, 3.26725, -4.50793, -0.461631, 9.90577, -5.2214, 7.87269}, {1.89829, -2.44249e-15, 1.33227e-15, -0.575562, 1.78885, 1.78885, 0.744968, -3.64699, -0.373467, 6.20309, -5.57441, 4.24616, -1.63498, -2.21115, -2.21115, -0.209397, 2.29678, -1.74951, -3.26725, 4.50793, 0.461631, -7.38377, -2.29678, 1.74951, 5.5695, -11.6633, -7.61705, -1.34489, 16.7991, 3.70501}, {1.1885, -5.81832, -0.595821, 1.89829, -2.11601e-15, 5.39995e-16, -1.41683, -1.32819, -1.74168, -0.0852942, -0.611252, 1.54307, -9.44989, -2.39728, -0.245492, -0.59512, 1.64173, 2.15284, 7.9083, 4.5572, 8.87406, 0.936297, 0.803277, -8.32513, -2.24099, 0.755549, -1.90734, 1.85673, 2.39728, 0.245492}, {-0.396168, 1.93944, 0.198607, -5.69487, -1.01358e-15, -4.64389e-15, -1.41683, -1.32819, -1.74168, -0.0852942, -0.611252, 1.54307, -0.272056, -10.155, -1.03992, 5.0722, 6.95448, 9.11956, 2.24099, -0.755549, 1.90734, 0.59512, -1.64173, -2.15284, -1.89981, 3.20056, -8.07964, 1.85673, 2.39728, 0.245492}, {-0.396168, 1.93944, 0.198607, 1.89829, 0, 0, 4.25049, 3.98456, 5.22504, -0.0852942, -0.611252, 1.54307, -1.85673, -2.39728, -0.245492, -8.18828, 1.64173, 2.15284, 3.82566, -8.51331, 1.11292, 0.59512, -1.64173, -2.15284, -2.24099, 0.755549, -1.90734, 2.1979, 4.84229, -5.9268}, {-0.396168, 1.93944, 0.198607, 1.89829, 2.88057e-16, -7.27184e-16, -1.41683, -1.32819, -1.74168, 0.255883, 1.83376, -4.62922, -1.85673, -2.39728, -0.245492, -0.59512, 1.64173, 2.15284, 2.24099, -0.755549, 1.90734, 2.17979, -9.39949, -2.94726, -9.83415, 0.755549, -1.90734, 7.52404, 7.71003, 7.21221}, {-5.53939e-11, -0.00379978, 5.36656, -2.34313, -2.34273, 1.78885, -6.81003e-16, 2.34147, 0, 2.34313, 0, 0, 12.2688, 12.2651, -7.15542, 2.89626, 0.00156559, -2.21115, -2.28204e-11, -12.2616, 2.21115, -12.2688, -0.00156559, 2.21115, 2.28231e-11, 2.89578, -2.21115, -2.89626, -2.89421, 0}, {1.23088e-11, 0.00126659, -1.78885, 7.02938, 7.0282, -5.36656, -2.04301e-15, 2.34147, 0, 2.34313, -1.36201e-15, 0, 2.89626, 2.88915, 7.15542, 2.89626, -9.3643, -2.21115, -1.52118e-11, -2.89578, 2.21115, -2.89626, -0.00156559, 2.21115, -9.3725, 2.89578, -2.21115, -2.89626, -2.89421, 0}, {1.23057e-11, 0.00126659, -1.78885, -2.34313, -2.34273, 1.78885, 0, -7.0244, 0, 2.34313, 0, 0, 2.89626, 2.89421, 4.44089e-16, 12.2688, 9.3725, -9.36656, -6.44356e-11, -2.90084, 9.36656, -2.89626, -0.00156559, 2.21115, 1.52105e-11, 2.89578, -2.21115, -12.2688, -2.89421, 0}, {1.23084e-11, 0.00126659, -1.78885, -2.34313, -2.34273, 1.78885, 2.04301e-15, 2.34147, 0, -7.02938, 0, 0, 2.89626, 2.89421, 4.44089e-16, 2.89626, 0.00156559, -2.21115, -1.52163e-11, -2.89578, 2.21115, -2.89626, -0.00663197, 9.36656, 9.3725, 12.2667, -9.36656, -2.89626, -12.2601, 0}, {-7.02938, -5.36656, -7.02938, -1.21095e-11, -1.78885, -1.21105e-11, 0, 0, -2.34313, -2.34313, 0, 0, -2.89626, 7.15542, -2.89626, 1.49681e-11, 2.21115, 2.89626, -2.89626, -2.21115, 9.3725, 9.3725, -2.21115, -2.89626, 2.89626, 2.21115, 1.49694e-11, 2.89626, 0, 2.89626}, {2.34313, 1.78885, 2.34313, 5.47931e-11, 5.36656, 5.47978e-11, 0, 0, -2.34313, -2.34313, 0, 0, -12.2688, -7.15542, -12.2688, 2.2576e-11, 2.21115, 12.2688, -2.89626, -2.21115, -2.25785e-11, -2.25766e-11, -2.21115, -2.89626, 12.2688, 2.21115, 2.25779e-11, 2.89626, 0, 2.89626}, {2.34313, 1.78885, 2.34313, -1.21079e-11, -1.78885, -1.21105e-11, 0, 0, 7.02938, -2.34313, 0, 0, -2.89626, -4.44089e-16, -2.89626, 6.33979e-11, 9.36656, 2.89626, -12.2688, -9.36656, -9.3725, -1.49668e-11, -2.21115, -2.89626, 2.89626, 2.21115, 1.49694e-11, 12.2688, 0, 2.89626}, {2.34313, 1.78885, 2.34313, -1.21105e-11, -1.78885, -1.21079e-11, 0, 0, -2.34313, 7.02938, 0, 0, -2.89626, -4.44089e-16, -2.89626, 1.49694e-11, 2.21115, 2.89626, -2.89626, -2.21115, -1.49668e-11, -9.3725, -9.36656, -12.2688, 2.89626, 9.36656, 6.33979e-11, 2.89626, 0, 12.2688}, {6.00487, -2.5896, 0, 1.30033, -0.681296, -1.31177, -1.30033, -0.651333, 1.31177, 2.00162, 0.469428, 0, -4.33448, 2.50034, 6.86849, 0, 1.64722, 0, 9.28277, 2.34345, -6.86849, -8.00649, -3.52493, 0, -4.08144, 0.261882, 1.62143, -0.866843, 0.224847, -1.62143}, {-2.00162, 0.8632, -1.61346e-16, -3.901, 2.04389, 3.9353, -1.30033, -0.651333, 1.31177, 2.00162, 0.469428, -6.06985e-17, 8.87333, -3.67765, 1.62143, 5.20133, 4.25255, -5.24706, 4.08144, -0.261882, -1.62143, 5.28204e-17, -1.64722, 2.22045e-16, -12.0879, -1.61583, 1.62143, -0.866843, 0.224847, -1.62143}, {-2.00162, 0.8632, -1.00648e-16, 1.30033, -0.681296, -1.31177, 3.901, 1.954, -3.9353, 2.00162, 0.469428, -1.21397e-16, 0.866843, -0.224847, 1.62143, -5.20133, 4.3724, 5.24706, 12.0879, -3.71468, -1.62143, 4.9691e-16, -1.64722, 2.22045e-16, -4.08144, 0.261882, 1.62143, -8.87333, -1.65287, -1.62143}, {-2.00162, 0.8632, 0, 1.30033, -0.681296, -1.31177, -1.30033, -0.651333, 1.31177, -6.00487, -1.40829, 0, 0.866843, -0.224847, 1.62143, 0, 1.64722, 0, 4.08144, -0.261882, -1.62143, 8.00649, -5.10002, 0, -9.28277, 2.98706, 6.86849, 4.33448, 2.83018, -6.86849}, {-3.67855, 1.13524, -1.13945, -0.728854, -0.729491, 0.729491, -0.347691, -0.347995, -1.25767, -0.149637, 1.4559, 0.148365, 2.30068, 4.28741, -4.28915, 1.33068, 1.33185, 0.652868, 0.304891, 2.28987, 6.11578, -0.732135, -7.15545, -1.24633, 1.08587, -0.897892, -1.08509, 0.614731, -1.36945, 1.37118}, {1.22618, -0.378415, 0.379817, 2.18656, 2.18847, -2.18847, -0.347691, -0.347995, -1.25767, -0.149637, 1.4559, 0.148365, -5.51946, 2.8831, -2.89045, 2.72145, 2.72383, 5.68356, -1.08587, 0.897892, 1.08509, -1.33068, -1.33185, -0.652868, 1.68442, -6.72149, -1.67855, 0.614731, -1.36945, 1.37118}, {1.22618, -0.378415, 0.379817, -0.728854, -0.729491, 0.729491, 1.04307, 1.04399, 3.77302, -0.149637, 1.4559, 0.148365, -0.614731, 1.36945, -1.37118, 4.2461, 4.24981, -2.2651, -5.9906, 2.41155, -0.434178, -1.33068, -1.33185, -0.652868, 1.08587, -0.897892, -1.08509, 1.21328, -7.19305, 0.777722}, {1.22618, -0.378415, 0.379817, -0.728854, -0.729491, 0.729491, -0.347691, -0.347995, -1.25767, 0.448911, -4.3677, -0.445094, -0.614731, 1.36945, -1.37118, 1.33068, 1.33185, 0.652868, -1.08587, 0.897892, 1.08509, -6.23541, 0.181812, -2.17214, 4.00129, 2.02007, -4.00305, 2.0055, 0.0225343, 6.40187}, {-3.16808, 0, 5.09912e-16, -0.781545, 0, -1.31177, 0.234793, 1.31177, 1.31177, -0.509273, -1.31177, -1.26089e-16, 2.78691, 0, 6.86849, 0.675824, -1.62143, -2.22045e-16, -2.53471, -6.86849, -6.86849, 1.36127, 6.86849, 7.264e-16, 1.59554, 1.62143, 1.62143, 0.339276, 0, -1.62143}, {1.05603, 0, 6.58225e-17, 2.34464, 0, 3.9353, 0.234793, 1.31177, 1.31177, -0.509273, -1.31177, 3.78267e-16, -4.56338, 0, 1.62143, -0.263347, -6.86849, -5.24706, -1.59554, -1.62143, -1.62143, -0.675824, 1.62143, -4.44089e-16, 3.63263, 6.86849, 1.62143, 0.339276, 0, -1.62143}, {1.05603, -2.22045e-16, 6.02665e-17, -0.781545, 3.78267e-16, -1.31177, -0.704378, -3.9353, -3.9353, -0.509273, -1.31177, -5.04356e-16, -0.339276, -2.22045e-16, 1.62143, 3.80201, -1.62143, 5.24706, -5.81964, -1.62143, -1.62143, -0.675824, 1.62143, 4.44089e-16, 1.59554, 1.62143, 1.62143, 2.37637, 5.24706, -1.62143}, {1.05603, 0, 0, -0.781545, 0, -1.31177, 0.234793, 1.31177, 1.31177, 1.52782, 3.9353, 0, -0.339276, 0, 1.62143, 0.675824, -1.62143, 0, -1.59554, -1.62143, -1.62143, -4.89993, 1.62143, 0, 4.72172, 1.62143, 6.86849, -0.599895, -5.24706, -6.86849}, {-4.31352, 0.137385, -4.35145, -1.43784, 0.845244, 0.568738, 0, -1.33263, 0, 1.50855e-12, 0.53318, -2.01922, 5.75136, -4.36915, -4.77085, 1.77727, 0.602441, -0.702999, -1.77727, 7.03434, -1.7929, -1.77727, -2.73516, 8.77989, 1.77727, -1.70383, 1.7929, -1.86467e-12, 0.988174, 2.4959}, {1.43784, -0.0457949, 1.45048, 4.31352, -2.53573, -1.70622, 0, -1.33263, 0, 1.50567e-12, 0.53318, -2.01922, -5.75136, -0.804994, -8.29783, 1.77727, 5.93296, -0.702999, -1.77727, 1.70383, -1.7929, -1.77727, -0.602441, 0.702999, 1.77727, -3.83654, 9.86978, -1.86111e-12, 0.988174, 2.4959}, {1.43784, -0.0457949, 1.45048, -1.43784, 0.845244, 0.568738, 0, 3.99789, 0, 1.50891e-12, 0.53318, -2.01922, 1.86476e-12, -0.988174, -2.4959, 7.52863, -2.77854, -2.97795, -7.52863, 1.887, -7.59483, -1.77727, -0.602441, 0.702999, 1.77727, -1.70383, 1.7929, -7.90075e-12, -1.14454, 10.5728}, {1.43784, -0.0457949, 1.45048, -1.43784, 0.845244, 0.568738, 0, -1.33263, 0, -4.51484e-12, -1.59954, 6.05767, 1.85986e-12, -0.988174, -2.4959, 1.77727, 0.602441, -0.702999, -1.77727, 1.70383, -1.7929, -7.52863, -0.419261, -5.09894, 7.52863, -5.0848, -0.482057, -1.86021e-12, 6.31869, 2.4959}, {0, 7.02938, 1.2039e-15, 0, 0, -2.34313, 1.78885, 2.34313, 2.34059, -1.78885, -1.21095e-11, 0.00253498, 0, 2.89626, 12.2688, -2.21115, -2.89626, 0.00313341, -9.36656, -9.3725, -12.2555, 9.36656, 2.89626, -0.0132733, 2.21115, 1.49681e-11, 2.89313, 0, -2.89626, -2.89626}, {0, -2.34313, 2.70617e-16, 0, 0, 7.02938, 1.78885, 2.34313, 2.34059, -1.78885, -1.2111e-11, 0.00253498, 0, 12.2688, 2.89626, -9.36656, -12.2688, -9.35923, -2.21115, -1.49695e-11, -2.89313, 2.21115, 2.89626, -0.00313341, 9.36656, 6.34142e-11, 2.88299, 0, -2.89626, -2.89626}, {0, -2.34313, -2.48499e-16, 0, 0, -2.34313, -5.36656, -7.02938, -7.02177, -1.78885, -1.21116e-11, 0.00253498, 0, 2.89626, 2.89626, -2.21115, -2.89626, 9.37564, -2.21115, 9.3725, -2.89313, 2.21115, 2.89626, -0.00313341, 2.21115, 1.49707e-11, 2.89313, 7.15542, -2.89626, -2.9064}, {0, -2.34313, 5.31259e-16, 0, 0, -2.34313, 1.78885, 2.34313, 2.34059, 5.36656, 5.47978e-11, -0.00760494, 0, 2.89626, 2.89626, -2.21115, -2.89626, 0.00313341, -2.21115, -2.25774e-11, -2.89313, 2.21115, 12.2688, -0.00313341, 2.21115, 2.25779e-11, 12.2656, -7.15542, -12.2688, -12.2586}, {-3.23058, -0.349184, -0.349184, -0.223923, -1.25104, -1.25104, -0.552433, 1.28003, -0.0317341, -0.300503, -0.14539, 1.16638, -0.158596, 6.40664, 6.40664, 0.959628, -0.0358398, 1.58559, 1.56151, -6.8462, 0.0222906, 0.242385, 0.617398, -6.25109, 0.648226, 1.72608, 0.104646, 1.05429, -1.40249, -1.40249}, {1.07686, 0.116395, 0.116395, 0.671768, 3.75311, 3.75311, -0.552433, 1.28003, -0.0317341, -0.300503, -0.14539, 1.16638, -5.36172, 0.936916, 0.936916, 3.16936, -5.15596, 1.71253, -0.648226, -1.72608, -0.104646, -0.959628, 0.0358398, -1.58559, 1.85024, 2.30764, -4.56086, 1.05429, -1.40249, -1.40249}, {1.07686, 0.116395, 0.116395, -0.223923, -1.25104, -1.25104, 1.6573, -3.84009, 0.0952024, -0.300503, -0.14539, 1.16638, -1.05429, 1.40249, 1.40249, 1.85532, 4.96831, 6.58973, -4.95566, -2.19166, -0.570224, -0.959628, 0.0358398, -1.58559, 0.648226, 1.72608, 0.104646, 2.2563, -0.820936, -6.068}, {1.07686, 0.116395, 0.116395, -0.223923, -1.25104, -1.25104, -0.552433, 1.28003, -0.0317341, 0.90151, 0.436169, -3.49913, -1.05429, 1.40249, 1.40249, 0.959628, -0.0358398, 1.58559, -0.648226, -1.72608, -0.104646, -5.26706, -0.429738, -2.05117, 1.54392, 6.73022, 5.10879, 3.26402, -6.52262, -1.27556}, {5.36656, 7.02938, -7.02938, 0, 0, -2.34313, 1.78885, -1.02092e-11, 1.05679e-11, 0, 2.34313, 0, 2.21115, 2.89626, 9.3725, -2.21115, 1.26192e-11, 2.89626, -7.15542, 2.89626, -2.89626, 2.21115, -9.3725, -2.89626, 0, -2.89626, 2.89626, -2.21115, -2.89626, -1.30626e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, 7.02938, 1.78885, -1.02081e-11, 1.05669e-11, -1.04056e-15, 2.34313, -6.14662e-27, 9.36656, 12.2688, -9.3725, -9.36656, 5.34504e-11, 2.89626, -8.4211e-16, 2.89626, -2.89626, 2.21115, -1.26174e-11, -2.89626, 5.44843e-15, -12.2688, 2.89626, -2.21115, -2.89626, -1.30613e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, -2.34313, -5.36656, 3.06298e-11, -3.17084e-11, 0, 2.34313, 0, 2.21115, 2.89626, 1.3064e-11, -2.21115, 1.26202e-11, 12.2688, 7.15542, 12.2688, -12.2688, 2.21115, -1.26196e-11, -2.89626, 0, -2.89626, 2.89626, -2.21115, -12.2688, -1.30646e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, -2.34313, 1.78885, -1.02092e-11, 1.05658e-11, 0, -7.02938, 0, 2.21115, 2.89626, 1.30595e-11, -2.21115, 1.26192e-11, 2.89626, 4.44089e-16, 2.89626, -2.89626, 9.36656, 9.3725, -12.2688, 0, -2.89626, 12.2688, -9.36656, -2.89626, -5.53233e-11}, {0, 9.45441, 0, 3.15147, 1.39953e-15, -1.39953e-15, -1.36261, 1.36261, 1.78885, -1.78885, 1.78885, -1.78885, -16.5013, 3.89543, 7.54952e-15, -2.21115, -1.68428, -2.21115, 7.13474, -3.23931, -9.36656, 9.36656, -5.47113, 9.36656, -1.68428, -2.21115, 2.21115, 3.89543, -3.89543, -1.77636e-15}, {8.88178e-16, -3.15147, 2.22045e-16, -9.45441, -1.00042e-15, 8.3972e-15, -1.36261, 1.36261, 1.78885, -1.78885, 1.78885, -1.78885, -3.89543, 16.5013, 5.32907e-15, 3.23931, -7.13474, -9.36656, 1.68428, 2.21115, -2.21115, 2.21115, 1.68428, 2.21115, 5.47113, -9.36656, 9.36656, 3.89543, -3.89543, -3.55271e-15}, {4.44089e-16, -3.15147, 0, 3.15147, 0, 0, 4.08784, -4.08784, -5.36656, -1.78885, 1.78885, -1.78885, -3.89543, 3.89543, 0, -14.817, -1.68428, -2.21115, 1.68428, 14.817, -2.21115, 2.21115, 1.68428, 2.21115, -1.68428, -2.21115, 2.21115, 11.0508, -11.0508, 7.15542}, {6.66134e-16, -3.15147, -2.22045e-16, 3.15147, 1.39953e-15, -1.39953e-15, -1.36261, 1.36261, 1.78885, 5.36656, -5.36656, 5.36656, -3.89543, 3.89543, 1.77636e-15, -2.21115, -1.68428, -2.21115, 1.68428, 2.21115, -2.21115, 2.21115, 14.2902, 2.21115, -14.2902, -2.21115, 2.21115, 9.34589, -9.34589, -7.15542}, {4.32877, -2.26802, -4.36683, -0.571101, 0.113693, -1.4431, 0, -1.33263, 0, 2.01402, 0.462931, -0.0125109, 4.77387, -1.52978, 5.75693, 0.70592, 1.50669, 1.78377, 1.78355, 6.04326, -1.79923, -8.76202, -3.35841, -1.73373, -1.78355, -0.712746, 1.79923, -2.48947, 1.07501, 0.0154644}, {-1.44292, 0.756005, 1.45561, 1.7133, -0.34108, 4.3293, 0, -1.33263, 0, 2.01402, 0.462931, -0.0125109, 8.26116, -4.09903, -5.83791, 0.70592, 6.8372, 1.78377, 1.78355, 0.712746, -1.79923, -0.70592, -1.50669, -1.78377, -9.83965, -2.56447, 1.84928, -2.48947, 1.07501, 0.0154644}, {-1.44292, 0.756005, 1.45561, -0.571101, 0.113693, -1.4431, 0, 3.99789, 0, 2.01402, 0.462931, -0.0125109, 2.48947, -1.07501, -0.0154644, 2.99032, 1.05191, 7.55617, 7.55524, -2.31127, -7.62167, -0.70592, -1.50669, -1.78377, -1.78355, -0.712746, 1.79923, -10.5456, -0.776716, 0.0655081}, {-1.44292, 0.756005, 1.45561, -0.571101, 0.113693, -1.4431, 0, -1.33263, 0, -6.04207, -1.38879, 0.0375328, 2.48947, -1.07501, -0.0154644, 0.70592, 1.50669, 1.78377, 1.78355, 0.712746, -1.79923, 5.06577, -4.53071, -7.60621, 0.500853, -1.16752, 7.57163, -2.48947, 6.40552, 0.0154644}, {-4.70136, -8.88178e-16, -1.57513e-15, 0.134389, 1.44665, -1.44665, -0.426776, 0.569981, 1.4404, -1.27473, -2.01663, 0.00624416, -2.64074, -7.57474, 7.57474, 0.36141, -2.49269, 0.00771821, 0.297559, -2.98446, -7.54205, 4.73753, 10.5592, -0.0326948, 1.40954, 0.704535, 1.78044, 2.10318, 1.78815, -1.78815}, {1.56712, -8.88178e-16, 1.00961e-15, -0.403167, -4.33994, 4.33994, -0.426776, 0.569981, 1.4404, -1.27473, -2.01663, 0.00624416, -8.37167, -1.78815, 1.78815, 2.06851, -4.77261, -5.75389, -1.40954, -0.704535, -1.78044, -0.36141, 2.49269, -0.00771821, 6.50848, 8.77105, 1.75546, 2.10318, 1.78815, -1.78815}, {1.56712, -1.33227e-15, 1.05818e-16, 0.134389, 1.44665, -1.44665, 1.28033, -1.70994, -4.32121, -1.27473, -2.01663, 0.00624416, -2.10318, -1.78815, 1.78815, -0.176146, -8.27928, 5.79431, -7.67803, -0.704535, -1.78044, -0.36141, 2.49269, -0.00771821, 1.40954, 0.704535, 1.78044, 7.20212, 9.85467, -1.81313}, {1.56712, 0, 2.67147e-16, 0.134389, 1.44665, -1.44665, -0.426776, 0.569981, 1.4404, 3.8242, 6.04988, -0.0187325, -2.10318, -1.78815, 1.78815, 0.36141, -2.49269, 0.00771821, -1.40954, -0.704535, -1.78044, -6.6299, 2.49269, -0.00771821, 0.871989, -5.08205, 7.56702, 3.81029, -0.491769, -7.54977}, {-3.47256, 2.13004, 3.47613, -1.55533, -0.53343, -0.78864, -0.511744, 1.83496, 0.513241, 0.909554, -0.591516, 1.43411, 6.71303, 3.6707, 5.56162, 2.55504, -1.60878, 0.340411, 1.24875, -8.73034, -1.25512, -6.19326, 3.97484, -6.07685, 0.798222, 1.39051, -0.797844, -0.49172, -1.53698, -2.40706}, {1.15752, -0.710012, -1.15871, 4.66599, 1.60029, 2.36592, -0.511744, 1.83496, 0.513241, 0.909554, -0.591516, 1.43411, -4.13836, 4.37703, 7.0419, 4.60202, -8.94861, -1.71255, -0.798222, -1.39051, 0.797844, -2.55504, 1.60878, -0.340411, -2.83999, 3.75657, -6.53428, -0.49172, -1.53698, -2.40706}, {1.15752, -0.710012, -1.15871, -1.55533, -0.53343, -0.78864, 1.53523, -5.50487, -1.53972, 0.909554, -0.591516, 1.43411, 0.49172, 1.53698, 2.40706, 8.77636, 0.524942, 3.49497, -5.4283, 1.44954, 5.43269, -2.55504, 1.60878, -0.340411, 0.798222, 1.39051, -0.797844, -4.12993, 0.829086, -8.14349}, {1.15752, -0.710012, -1.15871, -1.55533, -0.53343, -0.78864, -0.511744, 1.83496, 0.513241, -2.72866, 1.77455, -4.30233, 0.49172, 1.53698, 2.40706, 2.55504, -1.60878, 0.340411, -0.798222, -1.39051, 0.797844, -7.18512, 4.44882, 4.29443, 7.01954, 3.52423, 2.35672, 1.55526, -8.87681, -4.46002}, {-0.0259854, 4.18315, -1.68926, -1.44604, -0.0976914, -0.778579, 1.44538, 0.20404, -0.351453, -0.00800116, 1.28804, 0.566947, 7.56086, 2.23507, 3.38068, 0.000816584, -0.131455, 1.3968, -7.57881, 0.655184, 1.14422, 0.031188, -5.02069, -3.66458, 1.79729, -1.47135, 0.261592, -1.7767, -1.84431, -0.266365}, {0.00866179, -1.39438, 0.563086, 4.33812, 0.293074, 2.33574, 1.44538, 0.20404, -0.351453, -0.00800116, 1.28804, 0.566947, 1.74205, 7.42184, -1.98598, -5.7807, -0.947617, 2.80261, -1.79729, 1.47135, -0.261592, -0.000816584, 0.131455, -1.3968, 1.8293, -6.62349, -2.0062, -1.7767, -1.84431, -0.266365}, {0.00866179, -1.39438, 0.563086, -1.44604, -0.0976914, -0.778579, -4.33614, -0.612121, 1.05436, -0.00800116, 1.28804, 0.566947, 1.7767, 1.84431, 0.266365, 5.78498, 0.259311, 4.51111, -1.83194, 7.04888, -2.51393, -0.000816584, 0.131455, -1.3968, 1.79729, -1.47135, 0.261592, -1.74469, -6.99645, -2.53415}, {0.00866179, -1.39438, 0.563086, -1.44604, -0.0976914, -0.778579, 1.44538, 0.20404, -0.351453, 0.0240035, -3.86411, -1.70084, 1.7767, 1.84431, 0.266365, 0.000816584, -0.131455, 1.3968, -1.79729, 1.47135, -0.261592, -0.0354637, 5.70899, -3.64914, 7.58145, -1.08058, 3.37591, -7.55822, -2.66047, 1.13945}, {5.36656, -5.36656, -5.36656, 3.15147, -4.93118e-15, 0, -1.36261, 1.36261, -1.78885, 0, -3.15147, 0, -14.2902, -2.21115, -2.21115, -2.21115, -1.68428, 2.21115, 9.34589, -9.34589, 7.15542, 2.21115, 14.2902, -2.21115, -3.89543, 3.89543, 0, 1.68428, 2.21115, 2.21115}, {-1.78885, 1.78885, 1.78885, -9.45441, 1.0595e-14, -4.1986e-15, -1.36261, 1.36261, -1.78885, 0, -3.15147, 0, 5.47113, -9.36656, -9.36656, 3.23931, -7.13474, 9.36656, 3.89543, -3.89543, 1.28583e-15, 2.21115, 1.68428, -2.21115, -3.89543, 16.5013, -1.72992e-15, 1.68428, 2.21115, 2.21115}, {-1.78885, 1.78885, 1.78885, 3.15147, 0, 0, 4.08784, -4.08784, 5.36656, 0, -3.15147, 0, -1.68428, -2.21115, -2.21115, -14.817, -1.68428, 2.21115, 11.0508, -11.0508, -7.15542, 2.21115, 1.68428, -2.21115, -3.89543, 3.89543, 0, 1.68428, 14.817, 2.21115}, {-1.78885, 1.78885, 1.78885, 3.15147, -4.93118e-15, 0, -1.36261, 1.36261, -1.78885, 0, 9.45441, 0, -1.68428, -2.21115, -2.21115, -2.21115, -1.68428, 2.21115, 3.89543, -3.89543, -4.44089e-16, 9.36656, -5.47113, -9.36656, -16.5013, 3.89543, 0, 7.13474, -3.23931, 9.36656}, {2.81269, -2.81269, -1.11325, -0.456393, -1.88673, -0.746758, 0.886018, 1.45711, 2.59594, 0.507938, -0.507938, -2.22026, 3.5486, 8.72017, 3.45139, -0.531046, 0.531046, -2.28571, -3.48036, -8.78841, -14.0512, -1.50071, 1.50071, 11.1668, -0.0637129, 2.95998, 3.66744, -1.72302, -1.17324, -0.464361}, {-0.937563, 0.937563, 0.371082, 1.36918, 5.6602, 2.24027, 0.886018, 1.45711, 2.59594, 0.507938, -0.507938, -2.22026, 5.47328, -2.57701, -1.01997, -4.07512, -5.29738, -12.6695, 0.0637129, -2.95998, -3.66744, 0.531046, -0.531046, 2.28571, -2.09546, 4.99173, 12.5485, -1.72302, -1.17324, -0.464361}, {-0.937563, 0.937563, 0.371082, -0.456393, -1.88673, -0.746758, -2.65805, -4.37132, -7.78781, 0.507938, -0.507938, -2.22026, 1.72302, 1.17324, 0.464361, 1.29453, 8.07798, 0.701322, 3.81396, -6.71023, -5.15177, 0.531046, -0.531046, 2.28571, -0.0637129, 2.95998, 3.66744, -3.75477, 0.858512, 8.41668}, {-0.937563, 0.937563, 0.371082, -0.456393, -1.88673, -0.746758, 0.886018, 1.45711, 2.59594, -1.52381, 1.52381, 6.66078, 1.72302, 1.17324, 0.464361, -0.531046, 0.531046, -2.28571, 0.0637129, -2.95998, -3.66744, 4.2813, -4.2813, 0.801382, 1.76186, 10.5069, 6.65447, -5.2671, -7.00167, -10.8481}, {8.88178e-16, 4.08096, 0.0852192, 2.97466e-16, 0.921902, -1.18196, 1.31177, 0.0265815, 1.34059, -1.31177, 0.411835, -0.130224, -1.11022e-15, -3.1457, 6.22395, -1.62143, -1.17239, -0.196078, -6.86849, 1.54226, -6.98432, 6.86849, -0.474951, 0.716974, 1.62143, -1.64859, 1.62195, 0, -0.541913, -1.4961}, {-2.22045e-16, -1.36032, -0.0284064, -4.46199e-16, -2.76571, 3.54589, 1.31177, 0.0265815, 1.34059, -1.31177, 0.411835, -0.130224, 8.88178e-16, 5.98319, 1.60972, -6.86849, -1.27872, -5.55845, -1.62143, 1.64859, -1.62195, 1.62143, 1.17239, 0.196078, 6.86849, -3.29593, 2.14285, 0, -0.541913, -1.4961}, {-1.33227e-15, -1.36032, -0.0284064, 4.46199e-16, 0.921902, -1.18196, -3.9353, -0.0797444, -4.02178, -1.31177, 0.411835, -0.130224, 8.88178e-16, 0.541913, 1.4961, -1.62143, -4.86, 4.53177, -1.62143, 7.08987, -1.50833, 1.62143, 1.17239, 0.196078, 1.62143, -1.64859, 1.62195, 5.24706, -2.18925, -0.975202}, {1.55431e-15, -1.36032, -0.0284064, -1.04113e-15, 0.921902, -1.18196, 1.31177, 0.0265815, 1.34059, 3.9353, -1.23551, 0.390672, -4.44089e-16, 0.541913, 1.4961, -1.62143, -1.17239, -0.196078, -1.62143, 1.64859, -1.62195, 1.62143, 6.61367, 0.309704, 1.62143, -5.3362, 6.3498, -5.24706, -0.648239, -6.85847}, {1.39697, -4.32433, -4.36732, 1.89829, -2.30844e-15, -1.37509e-15, 0.0801166, 0.574147, -1.4494, -1.51275, -2.01559, -0.00636856, -9.364, -1.78172, -1.79943, -2.44545, -0.709685, 1.79156, 0.156089, -4.78799, 5.78974, 8.49644, 8.77205, -1.76609, -0.476556, 2.49141, 0.00787198, 1.77083, 1.78172, 1.79943}, {-0.465658, 1.44144, 1.45577, -5.69487, 3.6613e-15, -2.04012e-15, 0.0801166, 0.574147, -1.4494, -1.51275, -2.01559, -0.00636856, 0.0918014, -7.54749, -7.62252, -2.76591, -3.00627, 7.58918, 0.476556, -2.49141, -0.00787198, 2.44545, 0.709685, -1.79156, 5.57444, 10.5538, 0.0333462, 1.77083, 1.78172, 1.79943}, {-0.465658, 1.44144, 1.45577, 1.89829, 0, 0, -0.24035, -1.72244, 4.34821, -1.51275, -2.01559, -0.00636856, -1.77083, -1.78172, -1.79943, -10.0386, -0.709685, 1.79156, 2.33919, -8.25718, -5.83096, 2.44545, 0.709685, -1.79156, -0.476556, 2.49141, 0.00787198, 7.82183, 9.84408, 1.82491}, {-0.465658, 1.44144, 1.45577, 1.89829, 9.49861e-16, 3.00123e-18, 0.0801166, 0.574147, -1.4494, 4.53825, 6.04677, 0.0191057, -1.77083, -1.78172, -1.79943, -2.44545, -0.709685, 1.79156, 0.476556, -2.49141, -0.00787198, 4.30808, -5.05609, -7.61465, -8.06972, 2.49141, 0.00787198, 1.45037, -0.514866, 7.59705}, {4.31352, -3.43679, 1.70622, 1.43784, 0.720211, -1.45048, 0, -1.33263, 0, -1.50621e-12, -0.53318, 2.01922, -5.75136, -5.18711, 8.29783, -1.77727, 0.75699, 1.7929, 1.77727, 5.5617, 0.702999, 1.77727, 1.37573, -9.86978, -1.77727, -0.231184, -0.702999, 1.86177e-12, 2.30627, -2.4959}, {-1.43784, 1.1456, -0.568738, -4.31352, -2.16063, 4.35145, 0, -1.33263, 0, -1.50909e-12, -0.53318, 2.01922, 5.75136, -6.88865, 4.77085, -1.77727, 6.08751, 1.7929, 1.77727, 0.231184, 0.702999, 1.77727, -0.75699, -1.7929, -1.77727, 1.90153, -8.77989, 1.86534e-12, 2.30627, -2.4959}, {-1.43784, 1.1456, -0.568738, 1.43784, 0.720211, -1.45048, 0, 3.99789, 0, -1.50945e-12, -0.53318, 2.01922, -1.86543e-12, -2.30627, 2.4959, -7.52863, -2.12386, 7.59483, 7.52863, -4.3512, 2.97795, 1.77727, -0.75699, -1.7929, -1.77727, -0.231184, -0.702999, 7.90358e-12, 4.43898, -10.5728}, {-1.43784, 1.1456, -0.568738, 1.43784, 0.720211, -1.45048, 0, -1.33263, 0, 4.52348e-12, 1.59954, -6.05767, -1.86342e-12, -2.30627, 2.4959, -1.77727, 0.75699, 1.7929, 1.77727, 0.231184, 0.702999, 7.52863, -5.33938, 0.482057, -7.52863, -3.11203, 5.09894, 1.86378e-12, 7.63678, -2.4959}, {-4.90958, -4.91099, -14.364, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, -1.63653, -1.637, -1.63653, -10.2723, 6.22604, 2.33354, -1.68754e-14, 1.70974e-14, 3.89543, 6.22661, -10.2729, 2.33118, 6.54611, 6.54798, 2.65068, 0.0754226, 3.97087, 3.97085, 3.9703, 0.076001, 3.9703}, {1.63653, 1.637, 4.788, -4.72653, 4.72653, 4.72788, -1.57551, 1.57551, -1.57551, -1.63653, -1.637, -1.63653, -10.5164, -6.62398, -23.1223, 6.30204, -6.30204, 10.1975, -0.0754226, -3.97087, -3.97085, 1.38046e-14, -1.50613e-14, -3.89543, 6.62153, 10.5189, 10.517, 3.9703, 0.076001, 3.9703}, {1.63653, 1.637, 4.788, 1.57551, -1.57551, -1.57596, 4.72653, -4.72653, 4.72653, -1.63653, -1.637, -1.63653, -3.9703, -0.076001, -3.9703, -6.30204, 6.30204, 10.1993, -6.62153, -10.5189, -23.1228, 1.64691e-14, -1.72818e-14, -3.89543, 0.0754226, 3.97087, 3.97085, 10.5164, 6.62398, 10.5164}, {1.63653, 1.637, 4.788, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, 4.90958, 4.91099, 4.90958, -3.9703, -0.076001, -3.9703, -1.70974e-14, 1.68754e-14, 3.89543, -0.0754226, -3.97087, -3.97085, -6.54611, -6.54798, -23.0474, -6.22661, 10.2729, 10.2747, 10.2723, -6.22604, 10.2723}, {1.1292, -10.9335, -1.11964, 0, 0, 1.60567, 1.79029, -1.78764, -1.78873, -1.41389, -1.85687, -0.190152, 0.465254, -4.50486, -8.8687, -2.21292, 2.20964, 0.226277, -8.90884, 4.85533, 8.90459, 7.8685, 5.21784, 0.53433, 1.74767, 2.29522, -1.74967, -0.465254, 4.50486, 2.44603}, {-0.376399, 3.64451, 0.373213, 3.83169e-15, 8.27924e-17, -4.817, 1.79029, -1.78764, -1.78873, -1.41389, -1.85687, -0.190152, 1.97085, -19.0829, -3.93889, -9.37409, 9.36019, 7.3812, -1.74767, -2.29522, 1.74967, 2.21292, -2.20964, -0.226277, 7.40324, 9.72271, -0.989068, -0.465254, 4.50486, 2.44603}, {-0.376399, 3.64451, 0.373213, -2.25438e-15, -2.96069e-15, 1.60567, -5.37088, 5.36291, 5.36619, -1.41389, -1.85687, -0.190152, 0.465254, -4.50486, -2.44603, -2.21292, 2.20964, -6.1964, -0.242074, -16.8733, 0.256821, 2.21292, -2.20964, -0.226277, 1.74767, 2.29522, -1.74967, 5.19032, 11.9323, 3.20664}, {-0.376399, 3.64451, 0.373213, 0, 0, 1.60567, 1.79029, -1.78764, -1.78873, 4.24168, 5.57061, 0.570455, 0.465254, -4.50486, -2.44603, -2.21292, 2.20964, 0.226277, -1.74767, -2.29522, 1.74967, 3.71852, -16.7877, -1.71913, 1.74767, 2.29522, -8.17235, -7.62642, 11.6554, 9.60095}, {-9.76996e-15, 8.88178e-16, -7.02938, 1.78885, 2.33948, -2.34059, -1.78885, 6.92504e-12, -0.00253498, 0, -2.33948, 0, -9.36656, -12.2497, 9.35923, 3.9968e-15, -2.89175, 2.89626, 9.36656, -3.62599e-11, -2.88299, -3.9968e-15, 12.2497, -2.89626, -2.21115, 8.55982e-12, 2.89313, 2.21115, 2.89175, 0.00313341}, {-2.22045e-15, -1.33227e-15, 2.34313, -5.36656, -7.01844, 7.02177, -1.78885, 6.92556e-12, -0.00253498, 0, -2.33948, 0, -2.21115, -2.89175, -9.37564, 7.15542, -2.89175, 2.9064, 2.21115, -8.55893e-12, -2.89313, 2.66454e-15, 2.89175, -2.89626, -2.21115, 9.35791, 2.89313, 2.21115, 2.89175, 0.00313341}, {3.9968e-15, 3.55271e-15, 2.34313, 1.78885, 2.33948, -2.34059, 5.36656, -2.0786e-11, 0.00760494, 0, -2.33948, 0, -2.21115, -2.89175, -0.00313341, -7.15542, -12.2497, 12.2586, 2.21115, -8.58513e-12, -12.2656, -4.88498e-15, 2.89175, -2.89626, -2.21115, 8.5687e-12, 2.89313, 2.21115, 12.2497, 0.00313341}, {0, 4.44089e-16, 2.34313, 1.78885, 2.33948, -2.34059, -1.78885, 6.92763e-12, -0.00253498, 0, 7.01844, 0, -2.21115, -2.89175, -0.00313341, 0, -2.89175, 2.89626, 2.21115, -8.56337e-12, -2.89313, 0, 2.89175, -12.2688, -9.36656, -9.35791, 12.2555, 9.36656, 2.89175, 0.0132733}, {5.21741, 5.22554, 3.98943, -2.33948, 0, 0, 1.54072, 1.54312, -0.61076, 2.53789, 0.198723, 1.94057, 14.3994, 2.15304, 1.64373, 0.987318, -1.90741, 0.754941, -5.91764, -5.92686, 4.84171, -11.1389, 1.11252, -8.51722, -0.245252, -0.245635, -2.39867, -5.04144, -2.15304, -1.64373}, {-1.73914, -1.74185, -1.32981, 7.01844, 0, 0, 1.54072, 1.54312, -0.61076, 2.53789, 0.198723, 1.94057, 11.998, 9.12042, 6.96297, -5.17557, -8.0799, 3.19798, 0.245252, 0.245635, 2.39867, -0.987318, 1.90741, -0.754941, -10.3968, -1.04052, -10.1609, -5.04144, -2.15304, -1.64373}, {-1.73914, -1.74185, -1.32981, -2.33948, 0, 0, -4.62217, -4.62937, 1.83228, 2.53789, 0.198723, 1.94057, 5.04144, 2.15304, 1.64373, 10.3452, -1.90741, 0.754941, 7.20179, 7.21302, 7.71791, -0.987318, 1.90741, -0.754941, -0.245252, -0.245635, -2.39867, -15.193, -2.94793, -9.40601}, {-1.73914, -1.74185, -1.32981, -2.33948, 0, 0, 1.54072, 1.54312, -0.61076, -7.61368, -0.596168, -5.82171, 5.04144, 2.15304, 1.64373, 0.987318, -1.90741, 0.754941, 0.245252, 0.245635, 2.39867, 5.96922, 8.87479, 4.5643, 9.11266, -0.245635, -2.39867, -11.2043, -8.32553, 0.799305}, {10.9417, 1.1195, -1.12048, -2.16738e-15, -8.61236e-16, 1.60567, 1.79007, 1.78742, -1.78898, 1.85717, -1.41425, -0.190182, 4.50824, 0.46126, -8.86905, -2.21265, -2.20937, 0.226585, -4.86469, -8.89778, 8.90555, -5.21604, 7.86637, 0.534145, -2.29559, 1.74811, -1.74964, -4.50824, -0.46126, 2.44638}, {-3.64724, -0.373167, 0.373493, -8.02431e-17, 3.82867e-15, -4.817, 1.79007, 1.78742, -1.78898, 1.85717, -1.41425, -0.190182, 19.0972, 1.95393, -3.94035, -9.37293, -9.35904, 7.3825, 2.29559, -1.74811, 1.74964, 2.21265, 2.20937, -0.226585, -9.72428, 7.40511, -0.988907, -4.50824, -0.46126, 2.44638}, {-3.64724, -0.373167, 0.373493, 2.96117e-15, -2.25495e-15, 1.60567, -5.37021, -5.36225, 5.36694, 1.85717, -1.41425, -0.190182, 4.50824, 0.46126, -2.44638, -2.21265, -2.20937, -6.19609, 16.8846, -0.25544, 0.255663, 2.21265, 2.20937, -0.226585, -2.29559, 1.74811, -1.74964, -11.9369, 5.19574, 3.20711}, {-3.64724, -0.373167, 0.373493, -7.40292e-16, 5.63738e-16, 1.60567, 1.79007, 1.78742, -1.78898, -5.57152, 4.24275, 0.570547, 4.50824, 0.46126, -2.44638, -2.21265, -2.20937, 0.226585, 2.29559, -1.74811, 1.74964, 16.8016, 3.70204, -1.72056, -2.29559, 1.74811, -8.17231, -11.6685, -7.61093, 9.60229}, {1.83228, 4.62937, -4.62937, 0, 0, -1.60567, 1.94057, -0.198723, 0.198723, -1.32981, 1.74185, -0.136178, 0.754941, 1.90741, 6.49998, -2.39867, 0.245635, 1.73908, -9.40601, 2.94793, -2.94793, 7.71791, -7.21302, -1.19437, 1.64373, -2.15304, 2.15304, -0.754941, -1.90741, -0.0773091}, {-0.61076, -1.54312, 1.54312, 0, 0, 4.817, 1.94057, -0.198723, 0.198723, -1.32981, 1.74185, -0.136178, 3.19798, 8.0799, -6.09519, -10.1609, 1.04052, 0.94419, -1.64373, 2.15304, -2.15304, 2.39867, -0.245635, -1.73908, 6.96297, -9.12042, 2.69775, -0.754941, -1.90741, -0.0773091}, {-0.61076, -1.54312, 1.54312, 0, 0, -1.60567, -5.82171, 0.596168, -0.596168, -1.32981, 1.74185, -0.136178, 0.754941, 1.90741, 0.0773091, -2.39867, 0.245635, 8.16175, 0.799305, 8.32553, -8.32553, 2.39867, -0.245635, -1.73908, 1.64373, -2.15304, 2.15304, 4.5643, -8.87479, 0.467403}, {-0.61076, -1.54312, 1.54312, 0, 0, -1.60567, 1.94057, -0.198723, 0.198723, 3.98943, -5.22554, 0.408534, 0.754941, 1.90741, 0.0773091, -2.39867, 0.245635, 1.73908, -1.64373, 2.15304, -2.15304, 4.84171, 5.92686, -7.91157, 1.64373, -2.15304, 8.57571, -8.51722, -1.11252, -0.872199}, {-1.12374, 4.33994, -1.71772, 0.422512, 1.58777e-12, -2.01922, 0.258935, 1.44665, 1.44665, -1.05603, 0, 0, -2.6753, 1.78815, 9.86504, -0.842315, -1.78815, 0.707741, -1.81881, -5.78659, -8.28248, 5.06642, 1.78815, -0.707741, 0.783066, -1.96259e-12, 2.4959, 0.985258, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, -1.26754, -4.76439e-12, 6.05767, 0.258935, 1.44665, 1.44665, -1.05603, 0, 0, -2.48357, 7.57474, -0.502145, -1.87805, -7.57474, -5.07885, -0.783066, 1.9634e-12, -2.4959, 0.842315, 1.78815, -0.707741, 5.00717, -1.96304e-12, 2.4959, 0.985258, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, 0.422512, 1.58777e-12, -2.01922, -0.776805, -4.33994, -4.33994, -1.05603, 0, 0, -0.985258, 1.78815, 1.78815, -2.53236, -1.78815, 8.78463, -2.28138, 5.78659, -4.7862, 0.842315, 1.78815, -0.707741, 0.783066, -1.96259e-12, 2.4959, 5.20936, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, 0.422512, 1.58813e-12, -2.01922, 0.258935, 1.44665, 1.44665, 3.16808, 0, 0, -0.985258, 1.78815, 1.78815, -0.842315, -1.78815, 0.707741, -0.783066, 1.9634e-12, -2.4959, -0.656, 7.57474, -2.99804, -0.906981, -8.31556e-12, 10.5728, -0.0504823, -7.57474, -7.57474}, {-4.08784, 4.08784, -5.36656, 0, 3.15147, 0, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -14.817, -2.21115, 3.89543, -3.89543, 0, 14.817, 1.68428, -2.21115, -11.0508, 11.0508, 7.15542, -2.21115, -1.68428, 2.21115, 1.68428, 2.21115, 2.21115}, {1.36261, -1.36261, 1.78885, -1.15954e-14, -9.45441, 4.1986e-15, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -7.13474, 3.23931, -9.36656, 16.5013, -3.89543, 1.72992e-15, 2.21115, 1.68428, -2.21115, -3.89543, 3.89543, -2.17401e-15, -9.36656, 5.47113, 9.36656, 1.68428, 2.21115, 2.21115}, {1.36261, -1.36261, 1.78885, 0, 3.15147, 0, 9.45441, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -2.21115, -2.21115, 3.89543, -16.5013, 0, -3.23931, 7.13474, -9.36656, -3.89543, 3.89543, -4.44089e-16, -2.21115, -1.68428, 2.21115, -5.47113, 9.36656, 9.36656}, {1.36261, -1.36261, 1.78885, 0, 3.15147, 0, -3.15147, 0, 0, -5.36656, 5.36656, 5.36656, -1.68428, -2.21115, -2.21115, 3.89543, -3.89543, 0, 2.21115, 1.68428, -2.21115, -9.34589, 9.34589, -7.15542, -2.21115, -14.2902, 2.21115, 14.2902, 2.21115, 2.21115}, {1.11747, -3.79023, -1.1121, -0.361676, -1.4194, 0.363688, 1.52298, 0.102889, 0.820003, -0.788811, 0.0531033, -1.55439, 2.35418, 5.87043, -2.3625, -1.43545, 1.6273, -1.46312, -7.51399, -2.1004, -4.7518, 4.59069, -1.83971, 7.68068, 1.42208, 1.68884, 1.47179, -0.907478, -0.192817, 0.907751}, {-0.372489, 1.26341, 0.370699, 1.08503, 4.25821, -1.09106, 1.52298, 0.102889, 0.820003, -0.788811, 0.0531033, -1.55439, 2.39743, -4.86083, -2.39055, -7.52735, 1.21575, -4.74314, -1.42208, -1.68884, -1.47179, 1.43545, -1.6273, 1.46312, 4.57732, 1.47643, 7.68935, -0.907478, -0.192817, 0.907751}, {-0.372489, 1.26341, 0.370699, -0.361676, -1.4194, 0.363688, -4.56893, -0.308667, -2.46001, -0.788811, 0.0531033, -1.55439, 0.907478, 0.192817, -0.907751, 0.0112586, 7.30492, -2.91787, 0.0678761, -6.74249, -2.95458, 1.43545, -1.6273, 1.46312, 1.42208, 1.68884, 1.47179, 2.24777, -0.40523, 7.12531}, {-0.372489, 1.26341, 0.370699, -0.361676, -1.4194, 0.363688, 1.52298, 0.102889, 0.820003, 2.36643, -0.15931, 4.66317, 0.907478, 0.192817, -0.907751, -1.43545, 1.6273, -1.46312, -1.42208, -1.68884, -1.47179, 2.9254, -6.68095, -0.0196727, 2.86879, 7.36645, 0.0170383, -6.99938, -0.604373, -2.37226}, {4.44089e-15, -4.05009, 8.88178e-16, -0.572575, -0.625677, 1.44665, 2.01922, -0.706554, 1.38558e-12, -1.44665, -0.0177991, -1.44665, 2.99804, 1.60736, -7.57474, -1.78815, 1.64673, -1.78815, -10.5728, 2.03083, -7.25442e-12, 7.57474, -1.57553, 7.57474, 2.4959, 0.79538, 1.71219e-12, -0.707741, 0.895349, 1.78815}, {-4.44089e-16, 1.35003, -2.22045e-15, 1.71772, 1.87703, -4.33994, 2.01922, -0.706554, 1.3879e-12, -1.44665, -0.0177991, -1.44665, 0.707741, -6.29547, -1.78815, -9.86504, 4.47294, -1.78815, -2.4959, -0.79538, -1.71263e-12, 1.78815, -1.64673, 1.78815, 8.28248, 0.866577, 5.78659, -0.707741, 0.895349, 1.78815}, {8.88178e-16, 1.35003, 6.66134e-16, -0.572575, -0.625677, 1.44665, -6.05767, 2.11966, -4.15591e-12, -1.44665, -0.0177991, -1.44665, 0.707741, -0.895349, -1.78815, 0.502145, 4.14944, -7.57474, -2.4959, -6.1955, -1.71596e-12, 1.78815, -1.64673, 1.78815, 2.4959, 0.79538, 1.7133e-12, 5.07885, 0.966546, 7.57474}, {4.44089e-16, 1.35003, 0, -0.572575, -0.625677, 1.44665, 2.01922, -0.706554, 1.38489e-12, 4.33994, 0.0533972, 4.33994, 0.707741, -0.895349, -1.78815, -1.78815, 1.64673, -1.78815, -2.4959, -0.79538, -1.71174e-12, 1.78815, -7.04685, 1.78815, 4.7862, 3.29809, -5.78659, -8.78463, 3.72156, 1.78815}, {1.70622, 4.31352, 1.19704, 8.51907e-16, 7.76069e-16, 1.08709, -1.45048, 1.43784, -0.312525, 2.01922, -1.65855e-12, -0.375548, 0.702999, 1.77727, -5.19885, 1.7929, -1.77727, -0.95741, 8.29783, -5.75136, 2.12961, -9.86978, 1.77727, 2.4596, -2.4959, 2.04913e-12, -0.879509, -0.702999, -1.77727, 0.850505}, {-0.568738, -1.43784, -0.399013, -2.80914e-15, 1.1641e-15, -3.26126, -1.45048, 1.43784, -0.312525, 2.01922, -1.65923e-12, -0.375548, 2.97795, 7.52863, 0.745546, 7.59483, -7.52863, 0.292691, 2.4959, -2.05105e-12, 0.879509, -1.7929, 1.77727, 0.95741, -10.5728, 8.68834e-12, 0.622683, -0.702999, -1.77727, 0.850505}, {-0.568738, -1.43784, -0.399013, 0, 0, 1.08709, 4.35145, -4.31352, 0.937576, 2.01922, -1.65685e-12, -0.375548, 0.702999, 1.77727, -0.850505, 1.7929, -1.77727, -5.30575, 4.77085, 5.75136, 2.47556, -1.7929, 1.77727, 0.95741, -2.4959, 2.04797e-12, -0.879509, -8.77989, -1.77727, 2.3527}, {-0.568738, -1.43784, -0.399013, 0, 0, 1.08709, -1.45048, 1.43784, -0.312525, -6.05767, 4.97324e-12, 1.12664, 0.702999, 1.77727, -0.850505, 1.7929, -1.77727, -0.95741, 2.4959, -2.04873e-12, 0.879509, 0.482057, 7.52863, 2.55346, -2.4959, 2.04909e-12, -5.22785, 5.09894, -7.52863, 2.10061}, {-2.41029, -2.40672, -2.40819, -0.80343, -0.802238, 0.80294, 1.63555, -1.63555, 0.0313083, -1.63555, 1.63555, -1.63698, 3.21372, 3.20895, -5.19647, -1.02855, 3.01327, -1.03119, -9.55693, 7.57221, -1.15616, 7.57074, -9.55546, 7.57909, 3.01474, -1.03003, 1.03093, 8.88178e-15, 5.77316e-15, 1.98471}, {0.80343, 0.802238, 0.802728, 2.41029, 2.40672, -2.40882, 1.63555, -1.63555, 0.0313083, -1.63555, 1.63555, -1.63698, -3.21372, -3.20895, -5.19563, -7.57074, 9.55546, -1.15642, -3.01474, 1.03003, -1.03093, 1.02855, -3.01327, 1.03119, 9.55693, -7.57221, 7.57883, 8.43769e-15, 7.54952e-15, 1.98471}, {0.80343, 0.802238, 0.802728, -0.80343, -0.802238, 0.80294, -4.90664, 4.90664, -0.0939249, -1.63555, 1.63555, -1.63698, -8.88178e-15, -7.54952e-15, -1.98471, 2.18516, 6.22222, -4.24295, -6.22846, -2.17893, -4.24184, 1.02855, -3.01327, 1.03119, 3.01474, -1.03003, 1.03093, 6.54219, -6.54219, 8.53262}, {0.80343, 0.802238, 0.802728, -0.80343, -0.802238, 0.80294, 1.63555, -1.63555, 0.0313083, 4.90664, -4.90664, 4.91093, -7.54952e-15, -8.43769e-15, -1.98471, -1.02855, 3.01327, -1.03119, -3.01474, 1.03003, -1.03093, -2.18516, -6.22222, -2.17973, 6.22846, 2.17893, -2.18083, -6.54219, 6.54219, 1.85948}, {-5.48006e-11, 5.36656, 0.00342441, 0, 0, -2.34462, 2.34313, 0, 0, -2.34313, 1.78885, 2.34576, -2.25788e-11, 2.21115, 12.278, -2.89626, 0, 2.89811, -12.2688, 2.21115, 0.00141093, 12.2688, -7.15542, -12.2812, 2.89626, -2.21115, -0.00141093, 2.25788e-11, -2.21115, -2.89952}, {1.2113e-11, -1.78885, -0.00114147, 0, 0, 7.03386, 2.34313, -1.04056e-15, -1.3645e-15, -2.34313, 1.78885, 2.34576, -6.34248e-11, 9.36656, 2.90409, -12.2688, 5.44843e-15, 2.89811, -2.89626, 2.21115, 0.00141093, 2.89626, -8.4211e-16, -2.89811, 12.2688, -9.36656, -9.38446, 1.49729e-11, -2.21115, -2.89952}, {1.2109e-11, -1.78885, -0.00114147, 0, 0, -2.34462, -7.02938, 0, 0, -2.34313, 1.78885, 2.34576, -1.49676e-11, 2.21115, 2.89952, -2.89626, 0, 12.2766, -2.89626, 9.36656, 0.00597681, 2.89626, 4.44089e-16, -2.89811, 2.89626, -2.21115, -0.00141093, 9.3725, -9.36656, -12.2826}, {1.21134e-11, -1.78885, -0.00114147, 0, 0, -2.34462, 2.34313, 0, 0, 7.02938, -5.36656, -7.03729, -1.49729e-11, 2.21115, 2.89952, -2.89626, 0, 2.89811, -2.89626, 2.21115, 0.00141093, 2.89626, 7.15542, -2.89354, 2.89626, -2.21115, 9.37707, -9.3725, -2.21115, -2.89952}, {-2.3518, -6.05767, -5.91704e-12, -0.0281756, -0.572575, -1.44665, -1.05603, 0, 0, 0.300269, -1.44665, 1.44665, -0.821464, 0.502145, 7.57474, 1.34015, 0.707741, 1.78815, 4.56043, -2.4959, -2.43827e-12, -2.54122, 5.07885, -7.57474, -0.336326, 2.4959, 2.43827e-12, 0.934166, 1.78815, -1.78815}, {0.783932, 2.01922, 1.9722e-12, 0.0845268, 1.71772, 4.33994, -1.05603, 0, 0, 0.300269, -1.44665, 1.44665, -4.06989, -9.86504, 1.78815, 5.56425, 0.707741, 1.78815, 0.336326, -2.4959, -2.43761e-12, -1.34015, -0.707741, -1.78815, -1.5374, 8.28248, -5.78659, 0.934166, 1.78815, -1.78815}, {0.783932, 2.01922, 1.97353e-12, -0.0281756, -0.572575, -1.44665, 3.16808, 0, 0, 0.300269, -1.44665, 1.44665, -0.934166, -1.78815, 1.78815, 1.45285, 2.99804, 7.57474, -2.7994, -10.5728, -1.03331e-11, -1.34015, -0.707741, -1.78815, -0.336326, 2.4959, 2.43938e-12, -0.266911, 7.57474, -7.57474}, {0.783932, 2.01922, 1.97287e-12, -0.0281756, -0.572575, -1.44665, -1.05603, 0, 0, -0.900808, 4.33994, -4.33994, -0.934166, -1.78815, 1.78815, 1.34015, 0.707741, 1.78815, 0.336326, -2.4959, -2.43872e-12, -4.47587, -8.78463, -1.78815, -0.223624, 4.7862, 5.78659, 5.15827, 1.78815, -1.78815}, {-2.45207, 5.12164, 2.36493, 0.0510009, -0.6557, 1.65667, -1.08957, 0.431245, -1.08957, 0.22121, 1.93167, 0.22121, -1.27735, 5.54352, -7.70003, 1.28374, 0.277442, -0.700975, 4.69474, -0.147797, 6.67946, -2.16858, -8.00412, -0.183865, -0.336471, -1.57718, -2.32119, 1.07335, -2.92072, 1.07335}, {0.817357, -1.70721, -0.788311, -0.153003, 1.9671, -4.97001, -1.08957, 0.431245, -1.08957, 0.22121, 1.93167, 0.22121, -4.34278, 9.74957, 2.07989, 5.64201, -1.44754, 3.6573, 0.336471, 1.57718, 2.32119, -1.28374, -0.277442, 0.700975, -1.22131, -9.30386, -3.20603, 1.07335, -2.92072, 1.07335}, {0.817357, -1.70721, -0.788311, 0.0510009, -0.6557, 1.65667, 3.2687, -1.29374, 3.2687, 0.22121, 1.93167, 0.22121, -1.07335, 2.92072, -1.07335, 1.07974, 2.90024, -7.32765, -2.93296, 8.40603, 5.47443, -1.28374, -0.277442, 0.700975, -0.336471, -1.57718, -2.32119, 0.18851, -10.6474, 0.18851}, {0.817357, -1.70721, -0.788311, 0.0510009, -0.6557, 1.65667, -1.08957, 0.431245, -1.08957, -0.66363, -5.795, -0.66363, -1.07335, 2.92072, -1.07335, 1.28374, 0.277442, -0.700975, 0.336471, 1.57718, 2.32119, -4.55317, 6.55141, 3.85422, -0.540475, 1.04562, -8.94786, 5.43162, -4.6457, 5.43162}, {-4.62937, -1.83228, -4.62937, 0.198723, -1.94057, 2.54185, 0, 0, -2.34313, -1.74185, 1.32981, -1.74185, -2.94793, 9.40601, -15.2167, -0.245635, 2.39867, -0.245635, -1.90741, -0.754941, 10.3614, 7.21302, -7.71791, 7.21302, 1.90741, 0.754941, -0.988857, 2.15304, -1.64373, 5.0493}, {1.54312, 0.61076, 1.54312, -0.596168, 5.82171, -7.62554, 0, 0, -2.34313, -1.74185, 1.32981, -1.74185, -8.32553, -0.799305, -11.2218, -0.245635, 2.39867, 9.12687, -1.90741, -0.754941, 0.988857, 0.245635, -2.39867, 0.245635, 8.87479, -4.5643, 5.97853, 2.15304, -1.64373, 5.0493}, {1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 2.54185, 0, 0, 7.02938, -1.74185, 1.32981, -1.74185, -2.15304, 1.64373, -5.0493, -1.04052, 10.1609, -10.413, -8.0799, -3.19798, -5.18364, 0.245635, -2.39867, 0.245635, 1.90741, 0.754941, -0.988857, 9.12042, -6.96297, 12.0167}, {1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 2.54185, 0, 0, -2.34313, 5.22554, -3.98943, 5.22554, -2.15304, 1.64373, -5.0493, -0.245635, 2.39867, -0.245635, -1.90741, -0.754941, 0.988857, -5.92686, -4.84171, -5.92686, 1.11252, 8.51722, -11.1562, 2.15304, -1.64373, 14.4218}, {3.9353, 3.03575, -0.94776, 1.31177, -0.633999, -0.948528, 0, 0.442478, 1.49023, 0, 1.20344, -0.85762, -5.24706, 4.57046, 4.57606, -1.62143, 0.236733, -0.669578, 1.62143, -1.06605, -8.19343, 1.62143, -5.05048, 4.10006, -1.62143, -0.703864, 2.23252, 0, -2.03446, -0.781946}, {-1.31177, -1.01192, 0.31592, -3.9353, 1.902, 2.84558, 0, 0.442478, 1.49023, 0, 1.20344, -0.85762, 5.24706, 6.08213, -0.481733, -1.62143, -1.53318, -6.63049, 1.62143, 0.703864, -2.23252, 1.62143, -0.236733, 0.669578, -1.62143, -5.51761, 5.663, 0, -2.03446, -0.781946}, {-1.31177, -1.01192, 0.31592, 1.31177, -0.633999, -0.948528, 0, -1.32743, -4.47068, 0, 1.20344, -0.85762, 3.2565e-16, 2.03446, 0.781946, -6.86849, 2.77273, 3.12453, 6.86849, 4.75153, -3.4962, 1.62143, -0.236733, 0.669578, -1.62143, -0.703864, 2.23252, 0, -6.84821, 2.64853}, {-1.31177, -1.01192, 0.31592, 1.31177, -0.633999, -0.948528, 0, 0.442478, 1.49023, 0, -3.61031, 2.57286, 3.2565e-16, 2.03446, 0.781946, -1.62143, 0.236733, -0.669578, 1.62143, 0.703864, -2.23252, 6.86849, 3.81093, -0.594102, -6.86849, 1.83213, 6.02663, 0, -3.80438, -6.74286}, {8.88178e-16, -9.65337e-16, 5.41667, 1.44665, 1.44665, 1.40715, 0.572575, -1.44665, 1.02216, -2.01922, -1.9703e-12, -0.623753, -7.57474, -7.57474, -5.13614, -2.4959, -2.43516e-12, -3.00279, -2.99804, 7.57474, -3.1203, 10.5728, 1.03164e-11, 5.4978, 0.707741, -1.78815, -0.968332, 1.78815, 1.78815, -0.492457}, {-4.44089e-16, -2.99727e-18, -1.80556, -4.33994, -4.33994, -4.22145, 0.572575, -1.44665, 1.02216, -2.01922, -1.97286e-12, -0.623753, -1.78815, -1.78815, 7.71468, -4.7862, 5.78659, -7.09142, -0.707741, 1.78815, 0.968332, 2.4959, 2.43872e-12, 3.00279, 8.78463, -1.78815, 1.52668, 1.78815, 1.78815, -0.492457}, {0, 1.65544e-16, -1.80556, 1.44665, 1.44665, 1.40715, -1.71772, 4.33994, -3.06648, -2.01922, -1.97103e-12, -0.623753, -1.78815, -1.78815, 0.492457, -8.28248, -5.78659, -8.63139, -0.707741, 1.78815, 8.19056, 2.4959, 2.43605e-12, 3.00279, 0.707741, -1.78815, -0.968332, 9.86504, 1.78815, 2.00255}, {0, 7.512e-17, -1.80556, 1.44665, 1.44665, 1.40715, 0.572575, -1.44665, 1.02216, 6.05767, 5.91749e-12, 1.87126, -1.78815, -1.78815, 0.492457, -2.4959, -2.43805e-12, -3.00279, -0.707741, 1.78815, 0.968332, 2.4959, 2.43775e-12, 10.225, -5.07885, -7.57474, -6.59693, -0.502145, 7.57474, -4.58109}, {4.36745, -2.27082, -4.32425, 1.62046e-12, 0.53318, -2.01922, 0, -1.33263, 0, 1.45582, 0.0425099, 0.577805, 1.79949, -3.72739, 8.79109, -2.00299e-12, 0.988174, 2.4959, 1.79949, 6.04211, -1.78169, -5.82327, -1.15821, -4.80711, -1.79949, -0.711591, 1.78169, -1.79949, 1.59467, -0.714206}, {-1.45582, 0.756939, 1.44142, -4.85808e-12, -1.59954, 6.05767, 0, -1.33263, 0, 1.45582, 0.0425099, 0.577805, 7.62276, -4.62243, -5.05146, -2.00164e-12, 6.31869, 2.4959, 1.79949, 0.711591, -1.78169, 2.002e-12, -0.988174, -2.4959, -7.62276, -0.881631, -0.529529, -1.79949, 1.59467, -0.714206}, {-1.45582, 0.756939, 1.44142, 1.61717e-12, 0.53318, -2.01922, 0, 3.99789, 0, 1.45582, 0.0425099, 0.577805, 1.79949, -1.59467, 0.714206, -8.46762e-12, -1.14454, 10.5728, 7.62276, -2.31617, -7.54736, 1.9993e-12, -0.988174, -2.4959, -1.79949, -0.711591, 1.78169, -7.62276, 1.42464, -3.02542}, {-1.45582, 0.756939, 1.44142, 1.61827e-12, 0.53318, -2.01922, 0, -1.33263, 0, -4.36745, -0.12753, -1.73341, 1.79949, -1.59467, 0.714206, -2.00029e-12, 0.988174, 2.4959, 1.79949, 0.711591, -1.78169, 5.82327, -4.01593, -8.26156, -1.79949, -2.84431, 9.85858, -1.79949, 6.92519, -0.714206}, {-3.26389, 1.55026, 1.55311, -0.994319, -0.995188, -0.994319, -0.203724, 1.40177, -0.203724, 0.110078, 0.110174, 1.71575, 3.86152, 5.84961, 5.84624, 1.48086, -0.502558, 1.48086, -0.278087, -6.701, 1.70663, -1.92117, 0.0618612, -8.34385, 1.09298, 1.09394, -0.891733, 0.115752, -1.86886, -1.86896}, {1.08796, -0.516753, -0.517703, 2.98296, 2.98556, 2.98296, -0.203724, 1.40177, -0.203724, 0.110078, 0.110174, 1.71575, -4.46761, 3.93587, 3.93978, 2.29576, -6.10962, 2.29576, -1.09298, -1.09394, 0.891733, -1.48086, 0.502558, -1.48086, 0.65267, 0.65324, -7.75472, 0.115752, -1.86886, -1.86896}, {1.08796, -0.516753, -0.517703, -0.994319, -0.995188, -0.994319, 0.611171, -4.2053, 0.611171, 0.110078, 0.110174, 1.71575, -0.115752, 1.86886, 1.86896, 5.45814, 3.47819, 5.45814, -5.44484, 0.973073, 2.96255, -1.48086, 0.502558, -1.48086, 1.09298, 1.09394, -0.891733, -0.32456, -2.30956, -8.73195}, {1.08796, -0.516753, -0.517703, -0.994319, -0.995188, -0.994319, -0.203724, 1.40177, -0.203724, -0.330234, -0.330523, -5.14724, -0.115752, 1.86886, 1.86896, 1.48086, -0.502558, 1.48086, -1.09298, -1.09394, 0.891733, -5.83272, 2.56957, 0.589952, 5.07026, 5.07469, 3.08554, 0.930647, -7.47593, -1.05407}, {5.37021, -5.36225, 5.37163, 3.64724, -0.373167, 0.376681, -1.85717, -1.41425, -0.191806, 0, 0, 1.60567, -16.8846, -0.25544, 0.240906, -2.21265, 2.20937, -0.228519, 11.9369, 5.19574, 3.21754, 2.21265, -2.20937, -6.19415, -4.50824, 0.46126, -2.45032, 2.29559, 1.74811, -1.74763}, {-1.79007, 1.78742, -1.79054, -10.9417, 1.1195, -1.13004, -1.85717, -1.41425, -0.191806, 7.40292e-16, 5.63738e-16, 1.60567, 4.86469, -8.89778, 8.9098, 5.21604, 7.86637, 0.538704, 4.50824, -0.46126, 2.45032, 2.21265, -2.20937, 0.228519, -4.50824, 0.46126, -8.87299, 2.29559, 1.74811, -1.74763}, {-1.79007, 1.78742, -1.79054, 3.64724, -0.373167, 0.376681, 5.57152, 4.24275, 0.575417, 0, 0, 1.60567, -2.29559, -1.74811, 1.74763, -16.8016, 3.70204, -1.73524, 11.6685, -7.61093, 9.61249, 2.21265, -2.20937, 0.228519, -4.50824, 0.46126, -2.45032, 2.29559, 1.74811, -8.1703}, {-1.79007, 1.78742, -1.79054, 3.64724, -0.373167, 0.376681, -1.85717, -1.41425, -0.191806, 0, 0, -4.817, -2.29559, -1.74811, 1.74763, -2.21265, 2.20937, -0.228519, 4.50824, -0.46126, 2.45032, 9.37293, -9.35904, 7.39069, -19.0972, 1.95393, -3.95704, 9.72428, 7.40511, -0.980408}, {-3.03198, 1.78237, 1.1993, 0.5032, 0.50364, 1.82018, -0.838801, -0.839534, 0.331788, -0.67506, 0.930018, -1.7522, -3.88404, -1.90272, -9.03645, 0.414826, 0.415188, -2.65998, 3.14277, 5.13024, -1.24312, 2.28541, -4.13526, 9.66879, 0.212431, -1.7721, -0.084027, 1.87124, -0.111844, 1.75573}, {1.01066, -0.594124, -0.399767, -1.5096, -1.51092, -5.46054, -0.838801, -0.839534, 0.331788, -0.67506, 0.930018, -1.7522, -5.91388, 2.48834, -0.156659, 3.77003, 3.77333, -3.98713, -0.212431, 1.7721, 0.084027, -0.414826, -0.415188, 2.65998, 2.91267, -5.49217, 6.92478, 1.87124, -0.111844, 1.75573}, {1.01066, -0.594124, -0.399767, 0.5032, 0.50364, 1.82018, 2.5164, 2.5186, -0.995364, -0.67506, 0.930018, -1.7522, -1.87124, 0.111844, -1.75573, -1.59797, -1.59937, -9.9407, -4.25508, 4.14859, 1.6831, -0.414826, -0.415188, 2.65998, 0.212431, -1.7721, -0.084027, 4.57148, -3.83192, 8.76454}, {1.01066, -0.594124, -0.399767, 0.5032, 0.50364, 1.82018, -0.838801, -0.839534, 0.331788, 2.02518, -2.79005, 5.25661, -1.87124, 0.111844, -1.75573, 0.414826, 0.415188, -2.65998, -0.212431, 1.7721, 0.084027, -4.45747, 1.96131, 4.25905, -1.80037, -3.78666, -7.36475, 5.22644, 3.24629, 0.428576}, {-4.62937, 1.83228, -4.62937, 0.198723, 1.94057, 2.54185, -1.74185, -1.32981, -1.74185, 0, 0, -2.34313, -2.94793, -9.40601, -15.2167, 1.90741, -0.754941, -0.988857, 7.21302, 7.71791, 7.21302, -1.90741, 0.754941, 10.3614, -0.245635, -2.39867, -0.245635, 2.15304, 1.64373, 5.0493}, {1.54312, -0.61076, 1.54312, -0.596168, -5.82171, -7.62554, -1.74185, -1.32981, -1.74185, 0, 0, -2.34313, -8.32553, 0.799305, -11.2218, 8.87479, 4.5643, 5.97853, 0.245635, 2.39867, 0.245635, -1.90741, 0.754941, 0.988857, -0.245635, -2.39867, 9.12687, 2.15304, 1.64373, 5.0493}, {1.54312, -0.61076, 1.54312, 0.198723, 1.94057, 2.54185, 5.22554, 3.98943, 5.22554, 0, 0, -2.34313, -2.15304, -1.64373, -5.0493, 1.11252, -8.51722, -11.1562, -5.92686, 4.84171, -5.92686, -1.90741, 0.754941, 0.988857, -0.245635, -2.39867, -0.245635, 2.15304, 1.64373, 14.4218}, {1.54312, -0.61076, 1.54312, 0.198723, 1.94057, 2.54185, -1.74185, -1.32981, -1.74185, 0, 0, 7.02938, -2.15304, -1.64373, -5.0493, 1.90741, -0.754941, -0.988857, 0.245635, 2.39867, 0.245635, -8.0799, 3.19798, -5.18364, -1.04052, -10.1609, -10.413, 9.12042, 6.96297, 12.0167}, {-4.33994, 0.458772, -1.71772, 0, 1.39654, 0, -1.44665, -0.27723, 1.44665, 1.76979e-12, -0.966385, -2.01922, -1.78815, -7.12335, -0.707741, 1.78815, -1.38354, -1.78815, 5.78659, 1.64062, -8.28248, -1.78815, 5.24908, 9.86504, -2.18758e-12, -0.531699, 2.4959, 1.78815, 1.53719, 0.707741}, {1.44665, -0.152924, 0.572575, 1.50464e-15, -4.18962, 4.79586e-15, -1.44665, -0.27723, 1.44665, 1.77122e-12, -0.966385, -2.01922, -7.57474, -0.925496, -2.99804, 7.57474, -0.274623, -7.57474, 2.18837e-12, 0.531699, -2.4959, -1.78815, 1.38354, 1.78815, -9.27361e-12, 3.33384, 10.5728, 1.78815, 1.53719, 0.707741}, {1.44665, -0.152924, 0.572575, 2.45632e-27, 1.39654, -2.80022e-15, 4.33994, 0.831689, -4.33994, 1.77124e-12, -0.966385, -2.01922, -1.78815, -1.53719, -0.707741, 1.78815, -6.9697, -1.78815, -5.78659, 1.1434, -4.7862, -1.78815, 1.38354, 1.78815, -2.18937e-12, -0.531699, 2.4959, 1.78815, 5.40273, 8.78463}, {1.44665, -0.152924, 0.572575, 0, 1.39654, 0, -1.44665, -0.27723, 1.44665, -5.31262e-12, 2.89915, 6.05767, -1.78815, -1.53719, -0.707741, 1.78815, -1.38354, -1.78815, 2.18856e-12, 0.531699, -2.4959, -7.57474, 1.99524, -0.502145, -2.18892e-12, -6.11785, 2.4959, 7.57474, 2.64611, -5.07885}, {3.99411, 0.408657, -5.22602, 1.94285, 0.198782, -0.198956, -0.611477, 1.5417, -1.54305, 0, -1.60427, 0, -8.52722, -0.872462, -1.11149, -1.64567, -2.15136, 2.15324, 4.8474, -7.90408, 5.92628, 1.64567, 8.56842, -2.15324, -2.40149, 1.73727, 0.245923, 0.755828, 0.0773324, 1.90731}, {-1.33137, -0.136219, 1.74201, -5.82855, -0.596347, 0.596868, -0.611477, 1.5417, -1.54305, 0, -1.60427, 0, 4.56966, 0.467544, -8.87534, 0.800244, -8.31817, 8.32544, 2.40149, -1.73727, -0.245923, 1.64567, 2.15136, -2.15324, -2.40149, 8.15434, 0.245923, 0.755828, 0.0773324, 1.90731}, {-1.33137, -0.136219, 1.74201, 1.94285, 0.198782, -0.198956, 1.83443, -4.62511, 4.62915, 0, -1.60427, 0, -0.755828, -0.0773324, -1.90731, -9.41706, -2.94649, 2.94906, 7.72698, -1.1924, -7.21395, 1.64567, 2.15136, -2.15324, -2.40149, 1.73727, 0.245923, 0.755828, 6.4944, 1.90731}, {-1.33137, -0.136219, 1.74201, 1.94285, 0.198782, -0.198956, -0.611477, 1.5417, -1.54305, 0, 4.8128, 0, -0.755828, -0.0773324, -1.90731, -1.64567, -2.15136, 2.15324, 2.40149, -1.73727, -0.245923, 6.97115, 2.69623, -9.12126, -10.1729, 0.942144, 1.04175, 3.20174, -6.08948, 8.07952}, {1.7133, -2.45292, -4.3293, -1.44292, 0.0459567, -1.45561, 0, -1.33263, 0, 2.01402, 0.469033, 0.0125109, 8.26116, -1.25129, 5.83791, 1.78355, 1.59041, 1.79923, 0.70592, 5.96708, -1.78377, -9.83965, -3.46655, -1.84928, -0.70592, -0.636563, 1.78377, -2.48947, 1.06746, -0.0154644}, {-0.571101, 0.817639, 1.4431, 4.32877, -0.13787, 4.36683, 0, -1.33263, 0, 2.01402, 0.469033, 0.0125109, 4.77387, -4.33802, -5.75693, 1.78355, 6.92093, 1.79923, 0.70592, 0.636563, -1.78377, -1.78355, -1.59041, -1.79923, -8.76202, -2.5127, 1.73373, -2.48947, 1.06746, -0.0154644}, {-0.571101, 0.817639, 1.4431, -1.44292, 0.0459567, -1.45561, 0, 3.99789, 0, 2.01402, 0.469033, 0.0125109, 2.48947, -1.06746, 0.0154644, 7.55524, 1.40659, 7.62167, 2.99032, -2.63399, -7.55617, -1.78355, -1.59041, -1.79923, -0.70592, -0.636563, 1.78377, -10.5456, -0.808671, -0.0655081}, {-0.571101, 0.817639, 1.4431, -1.44292, 0.0459567, -1.45561, 0, -1.33263, 0, -6.04207, -1.4071, -0.0375328, 2.48947, -1.06746, 0.0154644, 1.78355, 1.59041, 1.79923, 0.70592, 0.636563, -1.78377, 0.500853, -4.86097, -7.57163, 5.06577, -0.82039, 7.60621, -2.48947, 6.39798, -0.0154644}, {7.61576, -5.82053, 0.598329, -1.54462, -0.610276, -1.54223, 1.74008, -1.3299, 1.74168, 2.34313, 0, 0, 11.2256, 0.797254, 8.32176, -0.241602, 2.39819, -0.246525, -5.97333, 4.56526, -8.87301, -9.1309, -2.39819, 0.246525, -0.987004, 0.754342, 1.9063, -5.04712, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, 4.63387, 1.83083, 4.6267, 1.74008, -1.3299, 1.74168, 2.34313, 7.73589e-16, -1.01311e-15, 15.2015, -9.40456, 2.9506, -7.20193, 7.7178, -7.21323, 0.987004, -0.754342, -1.9063, 0.241602, -2.39819, 0.246525, -10.3595, 0.754342, 1.9063, -5.04712, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, -1.54462, -0.610276, -1.54223, -5.22025, 3.9897, -5.22503, 2.34313, 0, 0, 5.04712, -1.64385, 2.15283, 5.93689, 4.83929, 5.92241, 11.1413, -8.51505, -1.10853, 0.241602, -2.39819, 0.246525, -0.987004, 0.754342, 1.9063, -14.4196, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, -1.54462, -0.610276, -1.54223, 1.74008, -1.3299, 1.74168, -7.02938, 0, 0, 5.04712, -1.64385, 2.15283, -0.241602, 2.39819, -0.246525, 0.987004, -0.754342, -1.9063, 10.3959, -10.1589, 1.0443, 5.19149, 3.19544, 8.07523, -12.0075, 6.96345, -9.11953}, {2.66454e-15, -8.88178e-15, -7.0244, 0.00253498, 1.78885, -0.00126659, -2.34566, -1.78885, -2.3402, 2.34313, 0, 0, -0.0132733, -9.36656, -2.88758, 2.89626, 3.10862e-15, 2.89421, 12.282, 9.36656, 9.35923, -12.2688, -3.10862e-15, -2.89421, -2.8994, -2.21115, 0.00156559, 0.00313341, 2.21115, 2.89265}, {-4.44089e-16, -2.81691e-15, 2.34147, -0.00760494, -5.36656, 0.00379978, -2.34566, -1.78885, -2.3402, 2.34313, 1.04056e-15, 1.36127e-15, -0.00313341, -2.21115, -12.2585, 12.2789, 7.15542, 12.255, 2.8994, 2.21115, -0.00156559, -2.89626, 2.22045e-15, -2.89421, -12.2719, -2.21115, 0.00156559, 0.00313341, 2.21115, 2.89265}, {-1.33227e-15, -1.9984e-15, 2.34147, 0.00253498, 1.78885, -0.00126659, 7.03698, 5.36656, 7.0206, 2.34313, 0, 0, -0.00313341, -2.21115, -2.89265, 2.88612, -7.15542, 2.89928, 2.8994, 2.21115, -9.36743, -2.89626, 2.66454e-15, -2.89421, -2.8994, -2.21115, 0.00156559, -9.36937, 2.21115, 2.89265}, {4.44089e-16, 0, 2.34147, 0.00253498, 1.78885, -0.00126659, -2.34566, -1.78885, -2.3402, -7.02938, 0, 0, -0.00313341, -2.21115, -2.89265, 2.89626, 0, 2.89421, 2.8994, 2.21115, -0.00156559, -2.89626, 0, -12.2601, -2.90954, -9.36656, 0.00663197, 9.38578, 9.36656, 12.2534}, {3.98943, -5.22554, 5.22554, -0.61076, -1.54312, 1.54312, 0, 2.34313, 0, 1.94057, -2.54185, 0.198723, 4.84171, 5.92686, -5.92686, 0.754941, -0.988857, -1.90741, 1.64373, -14.4218, 2.15304, -8.51722, 11.1562, 1.11252, -1.64373, 5.0493, -2.15304, -2.39867, 0.245635, -0.245635}, {-1.32981, 1.74185, -1.74185, 1.83228, 4.62937, -4.62937, -1.12881e-15, 2.34313, -1.15595e-16, 1.94057, -2.54185, 0.198723, 7.71791, -7.21302, 7.21302, 0.754941, -10.3614, -1.90741, 1.64373, -5.0493, 2.15304, -0.754941, 0.988857, 1.90741, -9.40601, 15.2167, -2.94793, -2.39867, 0.245635, -0.245635}, {-1.32981, 1.74185, -1.74185, -0.61076, -1.54312, 1.54312, 0, -7.02938, 0, 1.94057, -2.54185, 0.198723, 2.39867, -0.245635, 0.245635, 3.19798, 5.18364, -8.0799, 6.96297, -12.0167, 9.12042, -0.754941, 0.988857, 1.90741, -1.64373, 5.0493, -2.15304, -10.1609, 10.413, -1.04052}, {-1.32981, 1.74185, -1.74185, -0.61076, -1.54312, 1.54312, 0, 2.34313, 0, -5.82171, 7.62554, -0.596168, 2.39867, -0.245635, 0.245635, 0.754941, -0.988857, -1.90741, 1.64373, -5.0493, 2.15304, 4.5643, -5.97853, 8.87479, 0.799305, 11.2218, -8.32553, -2.39867, -9.12687, -0.245635}, {9.45441, 0, -1.77636e-15, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, 1.36261, -1.78885, -1.36261, 3.89543, 0, -16.5013, -2.21115, -2.21115, -1.68428, -5.47113, -9.36656, 9.36656, -3.23931, 9.36656, 7.13474, -1.68428, 2.21115, -2.21115, -3.89543, 0, 3.89543}, {-3.15147, 2.22045e-16, 2.22045e-16, 1.00042e-15, 8.3972e-15, -9.45441, 1.78885, 1.78885, -1.78885, 1.36261, -1.78885, -1.36261, 16.5013, 3.55271e-15, -3.89543, -9.36656, -9.36656, 5.47113, 1.68428, -2.21115, 2.21115, 2.21115, 2.21115, 1.68428, -7.13474, 9.36656, 3.23931, -3.89543, -3.10862e-15, 3.89543}, {-3.15147, 4.44089e-16, 4.44089e-16, 0, 0, 3.15147, -5.36656, -5.36656, 5.36656, 1.36261, -1.78885, -1.36261, 3.89543, -4.44089e-16, -3.89543, -2.21115, -2.21115, -14.2902, 14.2902, -2.21115, 2.21115, 2.21115, 2.21115, 1.68428, -1.68428, 2.21115, -2.21115, -9.34589, 7.15542, 9.34589}, {-3.15147, 0, 2.22045e-16, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, -4.08784, 5.36656, 4.08784, 3.89543, 0, -3.89543, -2.21115, -2.21115, -1.68428, 1.68428, -2.21115, 2.21115, 14.817, 2.21115, 1.68428, -1.68428, 2.21115, -14.817, -11.0508, -7.15542, 11.0508}, {0.908154, -0.908154, 3.90885, -0.830764, 0.830764, 0.830764, 1.29079, 0.314875, 0.314875, -0.157311, -1.44836, 0.157311, 4.72412, -4.72412, -2.7394, -0.568628, -1.41609, -1.41609, -6.3845, -2.02289, -0.0381727, 1.19787, 7.20951, 0.786843, 1.22133, 0.763387, -1.22133, -1.40106, 1.40106, -0.583654}, {-0.302718, 0.302718, -1.30295, 2.49229, -2.49229, -2.49229, 1.29079, 0.314875, 0.314875, -0.157311, -1.44836, 0.157311, 2.61193, -2.61193, 5.79545, -5.7318, -2.67559, -2.67559, -1.22133, -0.763387, 1.22133, 0.568628, 1.41609, 1.41609, 1.85057, 6.55681, -1.85057, -1.40106, 1.40106, -0.583654}, {-0.302718, 0.302718, -1.30295, -0.830764, 0.830764, 0.830764, -3.87238, -0.944625, -0.944625, -0.157311, -1.44836, 0.157311, 1.40106, -1.40106, 0.583654, 2.75443, -4.73914, -4.73914, -0.0104551, -1.97426, 6.43313, 0.568628, 1.41609, 1.41609, 1.22133, 0.763387, -1.22133, -0.771816, 7.19449, -1.2129}, {-0.302718, 0.302718, -1.30295, -0.830764, 0.830764, 0.830764, 1.29079, 0.314875, 0.314875, 0.471934, 4.34507, -0.471934, 1.40106, -1.40106, 0.583654, -0.568628, -1.41609, -1.41609, -1.22133, -0.763387, 1.22133, 1.7795, 0.205215, 6.62789, 4.54438, -2.55967, -4.54438, -6.56423, 0.14156, -1.84315}, {-2.30283, -5.06257, 2.51418, -1.077, -0.426271, -1.077, 0.0318939, 0.648138, 1.63756, 0.277498, -1.90939, 0.277498, 4.69044, 0.146092, 6.67515, 1.29182, -0.274242, -0.692891, -1.11582, -5.47959, -7.53849, -2.40182, 7.9118, -0.417103, 0.988241, 2.88704, 0.988241, -0.38243, 1.55899, -2.36714}, {0.767609, 1.68752, -0.838059, 3.23101, 1.27881, 3.23101, 0.0318939, 0.648138, 1.63756, 0.277498, -1.90939, 0.277498, -2.68801, -8.30908, 5.71938, 1.16425, -2.86679, -7.24314, -0.988241, -2.88704, -0.988241, -1.29182, 0.274242, 0.692891, -0.121753, 10.5246, -0.121753, -0.38243, 1.55899, -2.36714}, {0.767609, 1.68752, -0.838059, -1.077, -0.426271, -1.077, -0.0956818, -1.94441, -4.91269, 0.277498, -1.90939, 0.277498, 0.38243, -1.55899, 2.36714, 5.59983, 1.43084, 3.61512, -4.05868, -9.63713, 2.36399, -1.29182, 0.274242, 0.692891, 0.988241, 2.88704, 0.988241, -1.49242, 9.19655, -3.47714}, {0.767609, 1.68752, -0.838059, -1.077, -0.426271, -1.077, 0.0318939, 0.648138, 1.63756, -0.832495, 5.72817, -0.832495, 0.38243, -1.55899, 2.36714, 1.29182, -0.274242, -0.692891, -0.988241, -2.88704, -0.988241, -4.36226, -6.47585, 4.04513, 5.29625, 4.59212, 5.29625, -0.510006, -1.03356, -8.91739}, {-4.7272, -4.7272, -4.7272, -1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 6.30294, -10.1984, 6.30294, 3.89543, 1.32738e-12, -1.3276e-12, 6.30294, 6.30294, -10.1984, -10.1984, 6.30294, 6.30294, 2.96874e-13, 3.04201e-13, 3.89543, 1.65046e-12, 3.89543, 1.64713e-12}, {1.57573, 1.57573, 1.57573, 4.7272, -4.7272, 4.7272, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -6.30294, -2.96874e-13, -3.01537e-13, -3.89543, -3.89543, -1.32644e-12, 1.32544e-12, -6.30294, 6.30294, 10.1984, 1.64713e-12, 3.89543, 1.65001e-12}, {1.57573, 1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 4.7272, 4.7272, -4.7272, 1.57573, -1.57573, -1.57573, -1.64602e-12, -3.89543, -1.64313e-12, 10.1984, -6.30294, 6.30294, -6.30294, -6.30294, -10.1984, -3.89543, -1.32733e-12, 1.32721e-12, 2.99982e-13, 3.06422e-13, 3.89543, -6.30294, 10.1984, 6.30294}, {1.57573, 1.57573, 1.57573, -1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -4.7272, 4.7272, 4.7272, -1.64313e-12, -3.89543, -1.64913e-12, 3.89543, 1.32672e-12, -1.32694e-12, -3.00648e-13, -2.97318e-13, -3.89543, -10.1984, -6.30294, -6.30294, 6.30294, -6.30294, 10.1984, 6.30294, 10.1984, -6.30294}, {-1.56775, 5.44381, 3.24545, 1.20899, 0.479095, 1.20825, -1.50445, -0.59618, 0.101437, -0.227124, 1.93169, -0.227868, -6.97629, -0.265605, -4.98928, 0.365209, 0.144724, -1.61886, 7.23144, 5.36461, 0.80607, 0.543287, -7.87147, 2.53034, -1.21365, -2.97989, -1.21182, 2.14034, -1.65078, 0.156278}, {0.522584, -1.8146, -1.08182, -3.62696, -1.43729, -3.62475, -1.50445, -0.59618, 0.101437, -0.227124, 1.93169, -0.227868, -4.23068, 8.90919, 4.171, 6.383, 2.52944, -2.02461, 1.21365, 2.97989, 1.21182, -0.365209, -0.144724, 1.61886, -0.305154, -10.7066, -0.300344, 2.14034, -1.65078, 0.156278}, {0.522584, -1.8146, -1.08182, 1.20899, 0.479095, 1.20825, 4.51334, 1.78854, -0.304311, -0.227124, 1.93169, -0.227868, -2.14034, 1.65078, -0.156278, -4.47074, -1.77166, -6.45186, -0.876686, 10.2383, 5.53909, -0.365209, -0.144724, 1.61886, -1.21365, -2.97989, -1.21182, 3.04884, -9.37752, 1.06775}, {0.522584, -1.8146, -1.08182, 1.20899, 0.479095, 1.20825, -1.50445, -0.59618, 0.101437, 0.681372, -5.79506, 0.683605, -2.14034, 1.65078, -0.156278, 0.365209, 0.144724, -1.61886, 1.21365, 2.97989, 1.21182, -2.45554, 7.11368, 5.94614, -6.0496, -4.89627, -6.04482, 8.15813, 0.733943, -0.24947}, {0.31567, 3.31084, -3.29586, 0.708828, -0.490803, -1.01172, 0.848249, 1.25814, 0.0940198, -1.45185, 0.336273, -0.18092, -3.58141, 3.93402, 3.93947, -1.92465, -0.948485, 1.13434, -4.31143, -5.22358, -1.85026, 7.73207, -0.396608, -0.41066, 0.91843, 0.191009, 1.47418, 0.746096, -1.97081, 0.107415}, {-0.105223, -1.10361, 1.09862, -2.12648, 1.47241, 3.03516, 0.848249, 1.25814, 0.0940198, -1.45185, 0.336273, -0.18092, -0.325203, 6.38527, -4.5019, -5.31765, -5.98106, 0.758261, -0.91843, -0.191009, -1.47418, 1.92465, 0.948485, -1.13434, 6.72585, -1.15408, 2.19787, 0.746096, -1.97081, 0.107415}, {-0.105223, -1.10361, 1.09862, 0.708828, -0.490803, -1.01172, -2.54475, -3.77443, -0.282059, -1.45185, 0.336273, -0.18092, -0.746096, 1.97081, -0.107415, -4.75996, 1.01473, 5.18122, -0.497537, 4.22345, -5.86867, 1.92465, 0.948485, -1.13434, 0.91843, 0.191009, 1.47418, 6.55351, -3.3159, 0.831095}, {-0.105223, -1.10361, 1.09862, 0.708828, -0.490803, -1.01172, 0.848249, 1.25814, 0.0940198, 4.35556, -1.00882, 0.54276, -0.746096, 1.97081, -0.107415, -1.92465, -0.948485, 1.13434, -0.91843, -0.191009, -1.47418, 2.34555, 5.36294, -5.52882, -1.91688, 2.15422, 5.52107, -2.6469, -7.00338, -0.268664}, {2.3172, 0.917451, -2.318, 1.00416, 1.78176, 0.599951, -0.431249, 0.464989, -1.17482, 0.199489, -1.94094, -0.197793, -4.30311, -8.95143, -4.09645, -0.708156, -2.77714, 0.710583, 3.21279, -2.0567, 5.1964, -0.0898, 10.5409, 0.0805874, -1.48779, 0.196748, -0.497096, 0.286472, 1.82437, 1.69665}, {-0.772399, -0.305817, 0.772666, -3.01248, -5.34529, -1.79985, -0.431249, 0.464989, -1.17482, 0.199489, -1.94094, -0.197793, 2.80312, -0.601104, -4.78731, 1.01684, -4.6371, 5.40988, 1.48779, -0.196748, 0.497096, 0.708156, 2.77714, -0.710583, -2.28575, 7.96049, 0.294074, 0.286472, 1.82437, 1.69665}, {-0.772399, -0.305817, 0.772666, 1.00416, 1.78176, 0.599951, 1.29375, -1.39497, 3.52447, 0.199489, -1.94094, -0.197793, -0.286472, -1.82437, -1.69665, -4.72479, -9.9042, -1.68922, 4.57739, 1.02652, -2.59357, 0.708156, 2.77714, -0.710583, -1.48779, 0.196748, -0.497096, -0.511484, 9.58812, 2.48782}, {-0.772399, -0.305817, 0.772666, 1.00416, 1.78176, 0.599951, -0.431249, 0.464989, -1.17482, -0.598467, 5.82281, 0.593378, -0.286472, -1.82437, -1.69665, -0.708156, -2.77714, 0.710583, 1.48779, -0.196748, 0.497096, 3.79775, 4.00041, -3.80125, -5.50443, -6.93031, -2.8969, 2.01147, -0.0355852, 6.39595}, {-9.63611, -0.184458, -9.63611, -0.833808, -0.834046, -2.43948, -1.57551, 1.57551, -1.57551, -0.802719, -0.802949, 0.802949, 0.39558, 4.29112, 8.80297, 2.97808, -0.916498, 4.96279, 4.27918, -8.32547, 4.27918, 0.232798, 4.12829, -8.17459, 2.02286, 2.02344, 2.02286, 2.93965, -0.954937, 0.954937}, {3.21204, 0.0614861, 3.21204, 2.50142, 2.50214, 7.31843, -1.57551, 1.57551, -1.57551, -0.802719, -0.802949, 0.802949, -15.7878, 0.708993, -13.8031, 9.28012, -7.21853, 11.2648, -2.02286, -2.02344, -2.02286, -2.97808, 0.916498, -4.96279, 5.23374, 5.23523, -1.18894, 2.93965, -0.954937, 0.954937}, {3.21204, 0.0614861, 3.21204, -0.833808, -0.834046, -2.43948, 4.72653, -4.72653, 4.72653, -0.802719, -0.802949, 0.802949, -2.93965, 0.954937, -0.954937, 6.31331, 2.41969, 14.7207, -14.871, -2.26938, -14.871, -2.97808, 0.916498, -4.96279, 2.02286, 2.02344, 2.02286, 6.15053, 2.25686, -2.25686}, {3.21204, 0.0614861, 3.21204, -0.833808, -0.834046, -2.43948, -1.57551, 1.57551, -1.57551, 2.40816, 2.40885, -2.40885, -2.93965, 0.954937, -0.954937, 2.97808, -0.916498, 4.96279, -2.02286, -2.02344, -2.02286, -15.8262, 0.670554, -17.8109, 5.35809, 5.35962, 11.7808, 9.24169, -7.25697, 7.25697}, {1.77636e-15, 3.55271e-15, -3.26126, 1.4431, -0.571101, 0.0717263, 0.0125109, 2.01402, -0.807596, -1.45561, -1.44292, -0.351216, -7.55617, 2.99032, -1.71928, -1.79923, -1.78355, 0.909586, -0.0655081, -10.5456, 2.88492, 7.62167, 7.55524, 0.495278, 0.0154644, 2.48947, 0.345468, 1.78377, -0.70592, 1.43237}, {-2.22045e-16, 6.66134e-16, 1.08709, -4.3293, 1.7133, -0.215179, 0.0125109, 2.01402, -0.807596, -1.45561, -1.44292, -0.351216, -1.78377, 0.70592, -5.78072, -1.84928, -9.83965, 4.13997, -0.0154644, -2.48947, -0.345468, 1.79923, 1.78355, -0.909586, 5.83791, 8.26116, 1.75033, 1.78377, -0.70592, 1.43237}, {-6.66134e-16, -2.22045e-16, 1.08709, 1.4431, -0.571101, 0.0717263, -0.0375328, -6.04207, 2.42279, -1.45561, -1.44292, -0.351216, -1.78377, 0.70592, -1.43237, -7.57163, 0.500853, 0.622681, -0.0154644, -2.48947, -4.69381, 1.79923, 1.78355, -0.909586, 0.0154644, 2.48947, 0.345468, 7.60621, 5.06577, 2.83723}, {-2.22045e-16, 4.44089e-16, 1.08709, 1.4431, -0.571101, 0.0717263, 0.0125109, 2.01402, -0.807596, 4.36683, 4.32877, 1.05365, -1.78377, 0.70592, -1.43237, -1.79923, -1.78355, 0.909586, -0.0154644, -2.48947, -0.345468, 1.79923, 1.78355, -5.25793, -5.75693, 4.77387, 0.0585632, 1.73373, -8.76202, 4.66276}, {4.62915, 1.83443, 4.62633, 1.74201, -1.33137, 0.13686, 3.96359e-17, -3.87053e-16, 1.60497, -0.198956, 1.94285, -0.199718, -7.21395, 7.72698, 1.18954, -2.15324, 1.64567, -2.15302, 1.90731, 0.755828, -6.49756, 2.94906, -9.41706, 2.95189, -1.90731, -0.755828, 0.0776963, 0.245923, -2.40149, -1.73698}, {-1.54305, -0.611477, -1.54211, -5.22602, 3.99411, -0.41058, 1.18908e-16, -1.16116e-15, 1.60497, -0.198956, 1.94285, -0.199718, 5.92628, 4.8474, 7.90542, -2.15324, 1.64567, -8.57288, 1.90731, 0.755828, -0.0776963, 2.15324, -1.64567, 2.15302, -1.11149, -8.52722, 0.876567, 0.245923, -2.40149, -1.73698}, {-1.54305, -0.611477, -1.54211, 1.74201, -1.33137, 0.13686, 0, 0, -4.8149, -0.198956, 1.94285, -0.199718, -0.245923, 2.40149, 1.73698, -9.12126, 6.97115, -2.70046, 8.07952, 3.20174, 6.09074, 2.15324, -1.64567, 2.15302, -1.90731, -0.755828, 0.0776963, 1.04175, -10.1729, -0.938112}, {-1.54305, -0.611477, -1.54211, 1.74201, -1.33137, 0.13686, -1.18908e-16, 1.16116e-15, 1.60497, 0.596868, -5.82855, 0.599153, -0.245923, 2.40149, 1.73698, -2.15324, 1.64567, -2.15302, 1.90731, 0.755828, -0.0776963, 8.32544, 0.800244, 8.32145, -8.87534, 4.56966, -0.469744, 0.245923, -2.40149, -8.15685}, {4.35065, -1.72407, 1.44786, 0, 0, 1.17684, 1.43763, 1.45199, 0.197849, 0.0125895, -2.02668, -0.892072, 1.79257, -0.710355, -5.56548, -1.77701, -1.79476, -1.69921, -5.73495, -8.31307, -0.439401, 1.72665, 9.90148, 5.2675, -0.0155615, 2.50511, -0.351997, -1.79257, 0.710355, 0.858106}, {-1.45022, 0.57469, -0.482621, -1.29313e-15, 4.05633e-15, -3.53053, 1.43763, 1.45199, 0.197849, 0.0125895, -2.02668, -0.892072, 7.59343, -3.00911, 1.07238, -7.52752, -7.60272, -2.49061, 0.0155615, -2.50511, 0.351997, 1.77701, 1.79476, 1.69921, -0.0659197, 10.6118, 3.21629, -1.79257, 0.710355, 0.858106}, {-1.45022, 0.57469, -0.482621, 0, 0, 1.17684, -4.31288, -4.35597, -0.593548, 0.0125895, -2.02668, -0.892072, 1.79257, -0.710355, -0.858106, -1.77701, -1.79476, -6.40659, 5.81643, -4.80387, 2.28248, 1.77701, 1.79476, 1.69921, -0.0155615, 2.50511, -0.351997, -1.84292, 8.81707, 4.42639}, {-1.45022, 0.57469, -0.482621, 0, 0, 1.17684, 1.43763, 1.45199, 0.197849, -0.0377686, 6.08004, 2.67622, 1.79257, -0.710355, -0.858106, -1.77701, -1.79476, -1.69921, 0.0155615, -2.50511, 0.351997, 7.57787, -0.504, 3.6297, -0.0155615, 2.50511, -5.05937, -7.54308, -5.09761, 0.0667081}, {2.31688, 0.916898, -2.31818, 0.572147, 2.2454, -0.575329, -1.46447, -2.59853, -0.874972, 1.66462, 0.658766, 0.677573, -2.04119, -11.3793, 2.05732, 1.10297, 0.436497, 1.79267, 8.62268, 13.9839, 3.62627, -7.76145, -3.07156, -4.50296, -2.76479, -3.58975, -0.126381, -0.247396, 2.39768, 0.243998}, {-0.772295, -0.305633, 0.772728, -1.71644, -6.7362, 1.72599, -1.46447, -2.59853, -0.874972, 1.66462, 0.658766, 0.677573, 3.33658, -1.17515, -3.33491, 6.96086, 10.8306, 5.29256, 2.76479, 3.58975, 0.126381, -1.10297, -0.436497, -1.79267, -9.42327, -6.22481, -2.83667, -0.247396, 2.39768, 0.243998}, {-0.772295, -0.305633, 0.772728, 0.572147, 2.2454, -0.575329, 4.39341, 7.7956, 2.62492, 1.66462, 0.658766, 0.677573, 0.247396, -2.39768, -0.243998, -1.18562, -8.5451, 4.09399, 5.85397, 4.81228, -2.96453, -1.10297, -0.436497, -1.79267, -2.76479, -3.58975, -0.126381, -6.90587, -0.237381, -2.46629}, {-0.772295, -0.305633, 0.772728, 0.572147, 2.2454, -0.575329, -1.46447, -2.59853, -0.874972, -4.99386, -1.9763, -2.03272, 0.247396, -2.39768, -0.243998, 1.10297, 0.436497, 1.79267, 2.76479, 3.58975, 0.126381, 1.98621, 0.786034, -4.88358, -5.05338, -12.5713, 2.17494, 5.61049, 12.7918, 3.74389}, {-7.02177, -5.36656, 7.02938, 0.00253498, -1.78885, 1.2111e-11, -2.34313, 0, 0, 0, 0, 2.34313, -2.9064, 7.15542, 2.89626, 2.89313, 2.21115, -1.49701e-11, 9.37564, -2.21115, 2.89626, -2.89313, -2.21115, -9.3725, -0.00313341, 2.21115, -2.89626, 2.89626, 0, -2.89626}, {2.34059, 1.78885, -2.34313, -0.00760494, 5.36656, -5.47978e-11, -2.34313, 0, 0, 1.36297e-15, 0, 2.34313, -12.2586, -7.15542, 12.2688, 12.2656, 2.21115, -2.25779e-11, 0.00313341, -2.21115, 2.89626, -2.89313, -2.21115, 2.25785e-11, -0.00313341, 2.21115, -12.2688, 2.89626, 0, -2.89626}, {2.34059, 1.78885, -2.34313, 0.00253498, -1.78885, 1.21079e-11, 7.02938, 0, 0, 0, 0, 2.34313, -2.89626, -4.44089e-16, 2.89626, 2.88299, 9.36656, -6.33979e-11, -9.35923, -9.36656, 12.2688, -2.89313, -2.21115, 1.49668e-11, -0.00313341, 2.21115, -2.89626, 2.89626, 0, -12.2688}, {2.34059, 1.78885, -2.34313, 0.00253498, -1.78885, 1.2111e-11, -2.34313, 0, 0, 0, 0, -7.02938, -2.89626, -4.44089e-16, 2.89626, 2.89313, 2.21115, -1.49701e-11, 0.00313341, -2.21115, 2.89626, -12.2555, -9.36656, 9.3725, -0.0132733, 9.36656, -2.89626, 12.2688, 0, -2.89626}, {0.0377686, 6.08004, 3.1372, 4.64343e-16, 1.84009e-16, 1.28977, -1.43763, 1.45199, -0.146251, 1.45022, 0.57469, -0.0977806, 0.0155615, 2.50511, -5.4607, 1.77701, -1.79476, -1.41346, 7.54308, -5.09761, 2.05838, -7.57787, -0.504, 1.80458, -1.79257, -0.710355, -1.47337, -0.0155615, -2.50511, 0.301639}, {-0.0125895, -2.02668, -1.04573, -2.77397e-15, 8.42705e-16, -3.8693, -1.43763, 1.45199, -0.146251, 1.45022, 0.57469, -0.0977806, 0.0659197, 10.6118, 3.8813, 7.52752, -7.60272, -0.82846, 1.79257, 0.710355, 1.47337, -1.77701, 1.79476, 1.41346, -7.59343, -3.00911, -1.08225, -0.0155615, -2.50511, 0.301639}, {-0.0125895, -2.02668, -1.04573, 0, 0, 1.28977, 4.31288, -4.35597, 0.438752, 1.45022, 0.57469, -0.0977806, 0.0155615, 2.50511, -0.301639, 1.77701, -1.79476, -6.57252, 1.84292, 8.81707, 5.65631, -1.77701, 1.79476, 1.41346, -1.79257, -0.710355, -1.47337, -5.81643, -4.80387, 0.692761}, {-0.0125895, -2.02668, -1.04573, 4.64343e-16, 1.84009e-16, 1.28977, -1.43763, 1.45199, -0.146251, -4.35065, -1.72407, 0.293342, 0.0155615, 2.50511, -0.301639, 1.77701, -1.79476, -1.41346, 1.79257, 0.710355, 1.47337, -1.72665, 9.90148, 5.5964, -1.79257, -0.710355, -6.63244, 5.73495, -8.31307, 0.886641}, {-4.7272, -4.7272, 4.7272, 1.57573, -1.57573, 1.57573, -1.57596, -1.57551, -1.57551, -1.57551, 1.57551, 1.57551, -10.1984, 6.30294, -6.30294, 0.000278382, 3.89515, -0.000278382, 6.30412, 6.30176, 10.1972, 6.30176, -10.1972, -6.30176, -0.000278382, 0.000278382, -3.89515, 3.89543, -9.10383e-15, 9.10383e-15}, {1.57573, 1.57573, -1.57573, -4.7272, 4.7272, -4.7272, -1.57596, -1.57551, -1.57551, -1.57551, 1.57551, 1.57551, -10.1984, -6.30294, 6.30294, 6.30412, 10.1972, 6.30176, 0.000278382, -0.000278382, 3.89515, -0.000278382, -3.89515, 0.000278382, 6.30176, -6.30176, -10.1972, 3.89543, -9.10383e-15, 9.10383e-15}, {1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 1.57573, 4.72788, 4.72653, 4.72653, -1.57551, 1.57551, 1.57551, -3.89543, 2.66454e-15, -1.44329e-14, -6.30266, 10.1981, -6.30322, -6.30266, -6.30322, 10.1981, -0.000278382, -3.89515, 0.000278382, -0.000278382, 0.000278382, -3.89515, 10.1975, -6.30204, -6.30204}, {1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 1.57573, -1.57596, -1.57551, -1.57551, 4.72653, -4.72653, -4.72653, -3.89543, 1.02141e-14, -6.66134e-16, 0.000278382, 3.89515, -0.000278382, 0.000278382, -0.000278382, 3.89515, -6.30322, -10.1981, 6.30322, -6.30322, 6.30322, -10.1981, 10.1993, 6.30204, 6.30204}, {1.83228, 4.63528, 4.62937, 1.94057, -2.54509, -0.198723, -1.32981, 1.74407, 1.74185, 0, 2.34612, 0, -9.40601, 15.2361, 2.94793, -0.754941, 0.990119, -1.90741, 7.71791, -7.22223, -7.21302, 0.754941, -10.3746, 1.90741, -2.39867, 0.245948, 0.245635, 1.64373, -5.05575, -2.15304}, {-0.61076, -1.54509, -1.54312, -5.82171, 7.63528, 0.596168, -1.32981, 1.74407, 1.74185, 7.74523e-16, 2.34612, -1.01451e-15, 0.799305, 11.2361, 8.32553, 4.5643, -5.98616, -8.87479, 2.39867, -0.245948, -0.245635, 0.754941, -0.990119, 1.90741, -2.39867, -9.13852, 0.245635, 1.64373, -5.05575, -2.15304}, {-0.61076, -1.54509, -1.54312, 1.94057, -2.54509, -0.198723, 3.98943, -5.23221, -5.22554, 0, 2.34612, 0, -1.64373, 5.05575, 2.15304, -8.51722, 11.1705, -1.11252, 4.84171, 5.93443, 5.92686, 0.754941, -0.990119, 1.90741, -2.39867, 0.245948, 0.245635, 1.64373, -14.4402, -2.15304}, {-0.61076, -1.54509, -1.54312, 1.94057, -2.54509, -0.198723, -1.32981, 1.74407, 1.74185, 0, -7.03835, 0, -1.64373, 5.05575, 2.15304, -0.754941, 0.990119, -1.90741, 2.39867, -0.245948, -0.245635, 3.19798, 5.19026, 8.0799, -10.1609, 10.4263, 1.04052, 6.96297, -12.032, -9.12042}, {-1.42344, 3.96091, -1.43084, -1.98584, -0.354449, 0.357788, 0.9893, 0.397365, -1.35371, 0.52206, 1.27739, 0.518977, 9.81149, 3.4879, -2.46294, 1.23179, -0.0530468, 1.23103, -5.76653, -0.448647, 6.49858, -3.32003, -5.0565, -3.30694, 1.80933, -1.14081, -1.08374, -1.86814, -2.07011, 1.03179}, {0.474478, -1.3203, 0.476947, 5.95751, 1.06335, -1.07336, 0.9893, 0.397365, -1.35371, 0.52206, 1.27739, 0.518977, -0.029771, 7.35132, -2.93958, -2.72541, -1.64251, 6.64587, -1.80933, 1.14081, 1.08374, -1.23179, 0.0530468, -1.23103, -0.278909, -6.25036, -3.15965, -1.86814, -2.07011, 1.03179}, {0.474478, -1.3203, 0.476947, -1.98584, -0.354449, 0.357788, -2.9679, -1.1921, 4.06113, 0.52206, 1.27739, 0.518977, 1.86814, 2.07011, -1.03179, 9.17514, 1.36475, -0.200121, -3.70724, 6.42202, -0.824048, -1.23179, 0.0530468, -1.23103, 1.80933, -1.14081, -1.08374, -3.95638, -7.17965, -1.04412}, {0.474478, -1.3203, 0.476947, -1.98584, -0.354449, 0.357788, 0.9893, 0.397365, -1.35371, -1.56618, -3.83216, -1.55693, 1.86814, 2.07011, -1.03179, 1.23179, -0.0530468, 1.23103, -1.80933, 1.14081, 1.08374, -3.1297, 5.33426, -3.13882, 9.75268, 0.276984, -2.51489, -5.82534, -3.65957, 6.44663}, {5.36656, 5.36656, -5.36656, 1.41539, 1.41492, 1.85814, 0, 3.15102, 0, 0.373467, -2.77708, -3.64699, -5.19992, -5.19747, -11.9405, -1.74951, -5.64381, -2.29678, 2.21115, -14.2878, -2.21115, 0.255645, 16.7521, 16.8847, -2.21115, 1.68373, 2.21115, -0.461631, -0.462209, 4.50793}, {-1.78885, -1.78885, 1.78885, -4.24616, -4.24476, -5.57441, -2.92145e-16, 3.15102, 2.85286e-15, 0.373467, -2.77708, -3.64699, 7.61705, 7.61763, -11.6633, -1.74951, -18.2479, -2.29678, 2.21115, -1.68373, -2.21115, 1.74951, 5.64381, 2.29678, -3.70501, 12.7921, 16.7991, -0.461631, -0.462209, 4.50793}, {-1.78885, -1.78885, 1.78885, 1.41539, 1.41492, 1.85814, 0, -9.45305, 0, 0.373467, -2.77708, -3.64699, 0.461631, 0.462209, -4.50793, -7.41106, -11.3035, -9.72932, 9.36656, 5.47169, -9.36656, 1.74951, 5.64381, 2.29678, -2.21115, 1.68373, 2.21115, -1.9555, 10.6461, 19.0959}, {-1.78885, -1.78885, 1.78885, 1.41539, 1.41492, 1.85814, 0, 3.15102, 0, -1.1204, 8.33125, 10.941, 0.461631, 0.462209, -4.50793, -1.74951, -5.64381, -2.29678, 2.21115, -1.68373, -2.21115, 8.90493, 12.7992, -4.85864, -7.87269, -3.97595, -5.2214, -0.461631, -13.0663, 4.50793}, {-4.34476, -0.77549, 0.782793, -0.00873736, -1.40655, 0.564008, -1.44688, -0.0374651, -0.914786, 0.00736434, 1.18552, 0.611709, -1.74439, 7.04528, -2.63065, 1.79924, 1.7849, 0.433585, 5.78582, -0.123349, 5.11241, -1.8287, -6.52698, -2.88042, 0.00169715, 0.27321, -1.45327, 1.77934, -1.41907, 0.374623}, {1.44825, 0.258497, -0.260931, 0.0262121, 4.21965, -1.69202, -1.44688, -0.0374651, -0.914786, 0.00736434, 1.18552, 0.611709, -7.57235, 0.385087, 0.669101, 7.58676, 1.93476, 4.09273, -0.00169715, -0.27321, 1.45327, -1.79924, -1.7849, -0.433585, -0.0277602, -4.46887, -3.9001, 1.77934, -1.41907, 0.374623}, {1.44825, 0.258497, -0.260931, -0.00873736, -1.40655, 0.564008, 4.34064, 0.112395, 2.74436, 0.00736434, 1.18552, 0.611709, -1.77934, 1.41907, -0.374623, 1.83419, 7.4111, -1.82245, -5.79471, -1.3072, 2.49699, -1.79924, -1.7849, -0.433585, 0.00169715, 0.27321, -1.45327, 1.74988, -6.16115, -2.07221}, {1.44825, 0.258497, -0.260931, -0.00873736, -1.40655, 0.564008, -1.44688, -0.0374651, -0.914786, -0.022093, -3.55656, -1.83513, -1.77934, 1.41907, -0.374623, 1.79924, 1.7849, 0.433585, -0.00169715, -0.27321, 1.45327, -7.59225, -2.81889, 0.610139, 0.0366466, 5.89941, -3.7093, 7.56686, -1.26921, 4.03377}, {-4.817, -2.66454e-15, -5.32907e-15, -1.78885, -1.78885, 1.78885, 0.373353, 0.374783, -3.64588, -0.190167, 1.41407, 1.85702, 7.38185, 9.36656, -9.36656, 1.74966, 1.74789, 2.29541, -3.93962, -1.96239, 19.0901, -0.988987, -7.40418, -9.72349, 2.4462, 0.463257, -4.50655, -0.226431, -2.21115, 2.21115}, {1.60567, 4.44089e-16, 1.77636e-15, 5.36656, 5.36656, -5.36656, 0.373353, 0.374783, -3.64588, -0.190167, 1.41407, 1.85702, -6.19624, 2.21115, -2.21115, 0.256242, 0.248757, 16.8789, -2.4462, -0.463257, 4.50655, -1.74966, -1.74789, -2.29541, 3.20687, -5.19303, -11.9346, -0.226431, -2.21115, 2.21115}, {1.60567, 0, 4.44089e-16, -1.78885, -1.78885, 1.78885, -1.12006, -1.12435, 10.9376, -0.190167, 1.41407, 1.85702, 0.226431, 2.21115, -2.21115, 8.90507, 8.90331, -4.86001, -8.86888, -0.463257, 4.50655, -1.74966, -1.74789, -2.29541, 2.4462, 0.463257, -4.50655, 0.534237, -7.86743, -5.21694}, {1.60567, 2.22045e-16, 1.11022e-15, -1.78885, -1.78885, 1.78885, 0.373353, 0.374783, -3.64588, 0.570501, -4.24221, -5.57107, 0.226431, 2.21115, -2.21115, 1.74966, 1.74789, 2.29541, -2.4462, -0.463257, 4.50655, -8.17233, -1.74789, -2.29541, 9.60162, 7.61867, -11.662, -1.71984, -3.71028, 16.7947}, {-5.36225, -5.36694, -5.37021, 0, -1.60567, 0, -0.373167, -0.373493, -3.64724, -1.41425, 0.190182, 1.85717, -2.20937, 6.19609, -2.21265, 0.46126, 2.44638, 4.50824, -0.25544, -0.255663, 16.8846, 5.19574, -3.20711, -11.9369, 1.74811, 1.74964, -2.29559, 2.20937, 0.226585, 2.21265}, {1.78742, 1.78898, 1.79007, 0, 4.817, 0, -0.373167, -0.373493, -3.64724, -1.41425, 0.190182, 1.85717, -9.35904, -7.3825, -9.37293, 1.95393, 3.94035, 19.0972, -1.74811, -1.74964, 2.29559, -0.46126, -2.44638, -4.50824, 7.40511, 0.988907, -9.72428, 2.20937, 0.226585, 2.21265}, {1.78742, 1.78898, 1.79007, 0, -1.60567, 0, 1.1195, 1.12048, 10.9417, -1.41425, 0.190182, 1.85717, -2.20937, -0.226585, -2.21265, 0.46126, 8.86905, 4.50824, -8.89778, -8.90555, -4.86469, -0.46126, -2.44638, -4.50824, 1.74811, 1.74964, -2.29559, 7.86637, -0.534145, -5.21604}, {1.78742, 1.78898, 1.79007, 0, -1.60567, 0, -0.373167, -0.373493, -3.64724, 4.24275, -0.570547, -5.57152, -2.20937, -0.226585, -2.21265, 0.46126, 2.44638, 4.50824, -1.74811, -1.74964, 2.29559, -7.61093, -9.60229, -11.6685, 1.74811, 8.17231, -2.29559, 3.70204, 1.72056, 16.8016}, {-0.829936, -0.831314, 3.98569, 1.1323, 1.13131, 1.13131, 0.168871, -1.43624, 0.169424, -1.57782, 0.027827, 0.027827, -6.27076, -6.26615, -4.28143, -1.60834, 0.376916, -1.6078, -1.22617, 7.17775, 0.755077, 7.9196, -0.488224, 1.49649, 0.550688, -1.43277, -1.43277, 1.74155, 1.7409, -0.243816}, {0.276645, 0.277105, -1.32856, -3.3969, -3.39394, -3.39394, 0.168871, -1.43624, 0.169424, -1.57782, 0.027827, 0.027827, -2.84813, -2.84932, 5.55807, -2.28382, 6.12189, -2.2855, -0.550688, 1.43277, 1.43277, 1.60834, -0.376916, 1.6078, 6.86195, -1.54408, -1.54408, 1.74155, 1.7409, -0.243816}, {0.276645, 0.277105, -1.32856, 1.1323, 1.13131, 1.13131, -0.506612, 4.30873, -0.508273, -1.57782, 0.027827, 0.027827, -1.74155, -1.7409, 0.243816, -6.13754, -4.14833, -6.13305, -1.65727, 0.324356, 6.74703, 1.60834, -0.376916, 1.6078, 0.550688, -1.43277, -1.43277, 8.05282, 1.62959, -0.355124}, {0.276645, 0.277105, -1.32856, 1.1323, 1.13131, 1.13131, 0.168871, -1.43624, 0.169424, 4.73345, -0.0834809, -0.0834809, -1.74155, -1.7409, 0.243816, -1.60834, 0.376916, -1.6078, -0.550688, 1.43277, 1.43277, 0.501756, -1.48534, 6.92205, -3.97852, -5.95802, -5.95802, 1.06607, 7.48587, -0.921513}, {-8.33162, 1.1204, 10.941, -1.41498, -1.41539, 1.85814, -3.15057, 0, 0, 1.78834, 1.78885, 1.78885, 3.97613, 7.87269, -5.2214, 5.64333, 1.74951, -2.29678, 13.0638, 0.461631, 4.50793, -12.7967, -8.90493, -4.85864, -0.461499, -0.461631, -4.50793, 1.6838, -2.21115, -2.21115}, {2.77721, -0.373467, -3.64699, 4.24495, 4.24616, -5.57441, -3.15057, 0, 0, 1.78834, 1.78885, 1.78885, -12.7926, 3.70501, 16.7991, 18.2456, 1.74951, -2.29678, 0.461499, 0.461631, 4.50793, -5.64333, -1.74951, 2.29678, -7.61487, -7.61705, -11.6633, 1.6838, -2.21115, -2.21115}, {2.77721, -0.373467, -3.64699, -1.41498, -1.41539, 1.85814, 9.4517, 0, 0, 1.78834, 1.78885, 1.78885, -1.6838, 2.21115, 2.21115, 11.3033, 7.41106, -9.72932, -10.6473, 1.9555, 19.0959, -5.64333, -1.74951, 2.29678, -0.461499, -0.461631, -4.50793, -5.46957, -9.36656, -9.36656}, {2.77721, -0.373467, -3.64699, -1.41498, -1.41539, 1.85814, -3.15057, 0, 0, -5.36503, -5.36656, -5.36656, -1.6838, 2.21115, 2.21115, 5.64333, 1.74951, -2.29678, 0.461499, 0.461631, 4.50793, -16.7522, -0.255645, 16.8847, 5.19843, 5.19992, -11.9405, 14.2861, -2.21115, -2.21115}, {-3.98391, -5.22497, -0.407969, -1.83214e-15, -1.4677e-15, 1.60567, 0.61239, -1.54296, -1.54296, -1.94036, -0.198701, -0.198701, -1.64146, -2.15281, -8.57548, -0.756955, 1.9072, -0.0775154, -4.84797, 5.92622, 7.91093, 8.51839, -1.1124, 0.87232, 2.39842, 0.245608, -1.73911, 1.64146, 2.15281, 2.15281}, {1.32797, 1.74166, 0.13599, 3.05267e-15, -1.60751e-15, -4.817, 0.61239, -1.54296, -1.54296, -1.94036, -0.198701, -0.198701, -6.95334, -9.11944, -2.69677, -3.20651, 8.07903, 6.09431, -2.39842, -0.245608, 1.73911, 0.756955, -1.9072, 0.0775154, 10.1599, 1.04041, -0.944303, 1.64146, 2.15281, 2.15281}, {1.32797, 1.74166, 0.13599, 0, 0, 1.60567, -1.83717, 4.62887, 4.62887, -1.94036, -0.198701, -0.198701, -1.64146, -2.15281, -2.15281, -0.756955, 1.9072, -6.50019, -7.71029, -7.21224, 1.19515, 0.756955, -1.9072, 0.0775154, 2.39842, 0.245608, -1.73911, 9.4029, 2.94761, 2.94761}, {1.32797, 1.74166, 0.13599, 7.73451e-16, 7.92047e-17, 1.60567, 0.61239, -1.54296, -1.54296, 5.82108, 0.596103, 0.596103, -1.64146, -2.15281, -2.15281, -0.756955, 1.9072, -0.0775154, -2.39842, -0.245608, 1.73911, -4.55492, -8.87383, -0.466443, 2.39842, 0.245608, -8.16178, -0.808098, 8.32463, 8.32463}, {-1.77636e-15, 4.817, 8.88178e-16, -0.373167, -0.373493, 3.64724, -1.41425, 0.190182, -1.85717, 1.78742, 1.78898, -1.79007, 1.95393, 3.94035, -19.0972, 2.20937, 0.226585, -2.21265, 7.40511, 0.988907, 9.72428, -9.35904, -7.3825, 9.37293, -1.74811, -1.74964, -2.29559, -0.46126, -2.44638, 4.50824}, {-2.22045e-16, -1.60567, -2.22045e-16, 1.1195, 1.12048, -10.9417, -1.41425, 0.190182, -1.85717, 1.78742, 1.78898, -1.79007, 0.46126, 8.86905, -4.50824, 7.86637, -0.534145, 5.21604, 1.74811, 1.74964, 2.29559, -2.20937, -0.226585, 2.21265, -8.89778, -8.90555, 4.86469, -0.46126, -2.44638, 4.50824}, {2.22045e-16, -1.60567, 6.66134e-16, -0.373167, -0.373493, 3.64724, 4.24275, -0.570547, 5.57152, 1.78742, 1.78898, -1.79007, 0.46126, 2.44638, -4.50824, 3.70204, 1.72056, -16.8016, 1.74811, 8.17231, 2.29559, -2.20937, -0.226585, 2.21265, -1.74811, -1.74964, -2.29559, -7.61093, -9.60229, 11.6685}, {-2.22045e-16, -1.60567, 6.66134e-16, -0.373167, -0.373493, 3.64724, -1.41425, 0.190182, -1.85717, -5.36225, -5.36694, 5.37021, 0.46126, 2.44638, -4.50824, 2.20937, 0.226585, -2.21265, 1.74811, 1.74964, 2.29559, -2.20937, 6.19609, 2.21265, -0.25544, -0.255663, -16.8846, 5.19574, -3.20711, 11.9369}, {5.57441, 0.570843, -4.24616, 1.45374e-15, 1.60567, 1.48869e-16, -1.78885, -1.78885, -1.78885, 3.64699, 0.373467, 0.373467, 2.29678, -8.17219, -1.74951, 2.21115, 0.226431, 2.21115, 11.6633, 9.60176, 7.61705, -16.7991, -1.7203, -3.70501, -4.50793, -2.44635, -0.461631, -2.29678, 1.74951, 1.74951}, {-1.85814, -0.190281, 1.41539, -6.50039e-15, -4.817, -2.58579e-15, -1.78885, -1.78885, -1.78885, 3.64699, 0.373467, 0.373467, 9.72932, -0.988391, -7.41106, 9.36656, 7.38185, 9.36656, 4.50793, 2.44635, 0.461631, -2.21115, -0.226431, -2.21115, -19.0959, -3.94022, -1.9555, -2.29678, 1.74951, 1.74951}, {-1.85814, -0.190281, 1.41539, 0, 1.60567, 0, 5.36656, 5.36656, 5.36656, 3.64699, 0.373467, 0.373467, 2.29678, -1.74951, -1.74951, 2.21115, -6.19624, 2.21115, 11.9405, 3.20747, -5.19992, -2.21115, -0.226431, -2.21115, -4.50793, -2.44635, -0.461631, -16.8847, 0.255645, 0.255645}, {-1.85814, -0.190281, 1.41539, 1.45374e-15, 1.60567, 1.48869e-16, -1.78885, -1.78885, -1.78885, -10.941, -1.1204, -1.1204, 2.29678, -1.74951, -1.74951, 2.21115, 0.226431, 2.21115, 4.50793, 2.44635, 0.461631, 5.2214, 0.534693, -7.87269, -4.50793, -8.86902, -0.461631, 4.85864, 8.90493, 8.90493}, {0.596103, -0.596103, -5.82108, 1.74166, -0.13599, -1.32797, -1.54296, 1.54296, -0.61239, 0, -1.60567, 0, -8.87383, 0.466443, 4.55492, -0.245608, -1.73911, 2.39842, 8.32463, -8.32463, 0.808098, 0.245608, 8.16178, -2.39842, -2.15281, 2.15281, 1.64146, 1.9072, 0.0775154, 0.756955}, {-0.198701, 0.198701, 1.94036, -5.22497, 0.407969, 3.98391, -1.54296, 1.54296, -0.61239, 0, -1.60567, 0, -1.1124, -0.87232, -8.51839, 5.92622, -7.91093, 4.84797, 2.15281, -2.15281, -1.64146, 0.245608, 1.73911, -2.39842, -2.15281, 8.57548, 1.64146, 1.9072, 0.0775154, 0.756955}, {-0.198701, 0.198701, 1.94036, 1.74166, -0.13599, -1.32797, 4.62887, -4.62887, 1.83717, 0, -1.60567, 0, -1.9072, -0.0775154, -0.756955, -7.21224, -1.19515, 7.71029, 2.94761, -2.94761, -9.4029, 0.245608, 1.73911, -2.39842, -2.15281, 2.15281, 1.64146, 1.9072, 6.50019, 0.756955}, {-0.198701, 0.198701, 1.94036, 1.74166, -0.13599, -1.32797, -1.54296, 1.54296, -0.61239, 0, 4.817, 0, -1.9072, -0.0775154, -0.756955, -0.245608, -1.73911, 2.39842, 2.15281, -2.15281, -1.64146, 1.04041, 0.944303, -10.1599, -9.11944, 2.69677, 6.95334, 8.07903, -6.09431, 3.20651}, {1.77636e-15, 9.45441, 0, 1.36222, 1.36261, 1.78885, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -7.1327, -3.23931, -9.36656, 2.21051, -1.68428, -2.21115, 16.4966, 3.89543, 0, -9.36389, -5.47113, 9.36656, -3.89432, -3.89543, 0, 1.6838, -2.21115, 2.21115}, {-2.22045e-16, -3.15147, 0, -4.08667, -4.08784, -5.36656, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 14.817, -2.21115, 14.8128, -1.68428, -2.21115, 3.89432, 3.89543, 0, -2.21051, 1.68428, 2.21115, -11.0477, -11.0508, 7.15542, 1.6838, -2.21115, 2.21115}, {2.22045e-16, -3.15147, 0, 1.36222, 1.36261, 1.78885, 9.4517, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 2.21115, -2.21115, -3.23838, -7.13474, -9.36656, 3.89432, 16.5013, 0, -2.21051, 1.68428, 2.21115, -3.89432, -3.89543, 0, -5.46957, -9.36656, 9.36656}, {-2.22045e-16, -3.15147, 0, 1.36222, 1.36261, 1.78885, -3.15057, 0, 0, -5.36503, -5.36656, 5.36656, -1.6838, 2.21115, -2.21115, 2.21051, -1.68428, -2.21115, 3.89432, 3.89543, 0, -2.21051, 14.2902, 2.21115, -9.34321, -9.34589, -7.15542, 14.2861, -2.21115, 2.21115}, {-2.95778e-16, 8.88178e-16, 5.41667, 1.44665, -1.44665, -0.51339, -1.44665, -0.572575, 0.978606, 1.97314e-12, 2.01922, 1.34034, -7.57474, 7.57474, 4.91993, 2.43894e-12, 2.4959, -0.575039, 7.57474, 2.99804, -2.89226, -1.03315e-11, -10.5728, -4.78632, -1.78815, -0.707741, -1.02217, 1.78815, -1.78815, -2.86637}, {1.99359e-16, 4.44089e-16, -1.80556, -4.33994, 4.33994, 1.54017, -1.44665, -0.572575, 0.978606, 1.97222e-12, 2.01922, 1.34034, -1.78815, 1.78815, 10.0886, 5.78659, 4.7862, -4.48946, 1.78815, 0.707741, 1.02217, -2.43805e-12, -2.4959, 0.575039, -1.78815, -8.78463, -6.38352, 1.78815, -1.78815, -2.86637}, {8.21831e-17, -4.44089e-16, -1.80556, 1.44665, -1.44665, -0.51339, 4.33994, 1.71772, -2.93582, 1.97167e-12, 2.01922, 1.34034, -1.78815, 1.78815, 2.86637, -5.78659, 8.28248, 1.47852, 1.78815, 0.707741, 8.24439, -2.43716e-12, -2.4959, 0.575039, -1.78815, -0.707741, -1.02217, 1.78815, -9.86504, -8.22773}, {-1.03785e-17, 0, -1.80556, 1.44665, -1.44665, -0.51339, -1.44665, -0.572575, 0.978606, -5.91996e-12, -6.05767, -4.02102, -1.78815, 1.78815, 2.86637, 2.43916e-12, 2.4959, -0.575039, 1.78815, 0.707741, 1.02217, -2.43978e-12, -2.4959, 7.79726, -7.57474, 5.07885, 1.03139, 7.57474, 0.502145, -6.7808}, {-1.83228, -4.62937, -4.62777, -1.94057, 0.198723, 0.200419, 1.32981, -1.74185, -0.13734, 0, 0, -1.60567, 9.40601, -2.94793, -2.95615, 0.754941, 1.90741, -0.0779689, -7.71791, 7.21302, -1.18762, -0.754941, -1.90741, 6.50064, 2.39867, -0.245635, 1.73698, -1.64373, 2.15304, 2.15448}, {0.61076, 1.54312, 1.54259, 5.82171, -0.596168, -0.601256, 1.32981, -1.74185, -0.13734, 0, 0, -1.60567, -0.799305, -8.32553, -8.32484, -4.5643, 8.87479, 0.471392, -2.39867, 0.245635, -1.73698, -0.754941, -1.90741, 0.0779689, 2.39867, -0.245635, 8.15966, -1.64373, 2.15304, 2.15448}, {0.61076, 1.54312, 1.54259, -1.94057, 0.198723, 0.200419, -3.98943, 5.22554, 0.412021, 0, 0, -1.60567, 1.64373, -2.15304, -2.15448, 8.51722, 1.11252, -0.879643, -4.84171, -5.92686, -7.90734, -0.754941, -1.90741, 0.0779689, 2.39867, -0.245635, 1.73698, -1.64373, 2.15304, 8.57715}, {0.61076, 1.54312, 1.54259, -1.94057, 0.198723, 0.200419, 1.32981, -1.74185, -0.13734, 0, 0, 4.817, 1.64373, -2.15304, -2.15448, 0.754941, 1.90741, -0.0779689, -2.39867, 0.245635, -1.73698, -3.19798, -8.0799, -6.09239, 10.1609, -1.04052, 0.93531, -6.96297, 9.12042, 2.70384}, {-5.36656, 5.36656, -5.36656, 0, 0, -3.15147, -0.373467, 3.64699, 2.778, -1.41539, -1.85814, -1.41539, -2.21115, 2.21115, 14.2902, 0.461631, -4.50793, 0.461631, -0.255645, -16.8847, -16.7569, 5.19992, 11.9405, 5.19992, 1.74951, 2.29678, 5.64494, 2.21115, -2.21115, -1.68428}, {1.78885, -1.78885, 1.78885, 0, 0, 9.45441, -0.373467, 3.64699, 2.778, -1.41539, -1.85814, -1.41539, -9.36656, 9.36656, -5.47113, 1.9555, -19.0959, -10.6504, -1.74951, -2.29678, -5.64494, -0.461631, 4.50793, -0.461631, 7.41106, 9.72932, 11.3065, 2.21115, -2.21115, -1.68428}, {1.78885, -1.78885, 1.78885, 0, 0, -3.15147, 1.1204, -10.941, -8.334, -1.41539, -1.85814, -1.41539, -2.21115, 2.21115, 1.68428, 0.461631, -4.50793, 13.0675, -8.90493, 4.85864, -12.8004, -0.461631, 4.50793, -0.461631, 1.74951, 2.29678, 5.64494, 7.87269, 5.2214, 3.97726}, {1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -0.373467, 3.64699, 2.778, 4.24616, 5.57441, 4.24616, -2.21115, 2.21115, 1.68428, 0.461631, -4.50793, 0.461631, -1.74951, -2.29678, -5.64494, -7.61705, 11.6633, -7.61705, 1.74951, 2.29678, 18.2508, 3.70501, -16.7991, -12.7963}, {1.64026, -3.9353, -3.8467e-12, 0.194118, 0, -1.44665, -0.509273, -1.31177, -1.28236e-12, 0.861908, 0, 1.44665, -0.34059, -1.62143, 7.57474, 0.389553, 1.62143, 1.78815, 3.34241, 5.24706, 5.12945e-12, -3.83718, -1.62143, -7.57474, -1.30532, 0, 0, -0.435881, 1.62143, -1.78815}, {-0.546753, 1.31177, 1.28098e-12, -0.582353, 3.77031e-16, 4.33994, -0.509273, -1.31177, -1.28138e-12, 0.861908, 8.26902e-17, 1.44665, 2.62289, -6.86849, 1.78815, 2.42664, 6.86849, 1.78815, 1.30532, -3.78785e-16, 4.44089e-16, -0.389553, -1.62143, -1.78815, -4.75295, -2.77626e-16, -5.78659, -0.435881, 1.62143, -1.78815}, {-0.546753, 1.31177, 1.28164e-12, 0.194118, 0, -1.44665, 1.52782, 3.9353, 3.84623e-12, 0.861908, 0, 1.44665, 0.435881, -1.62143, 1.78815, -0.386918, 1.62143, 7.57474, 3.49233, -5.24706, -5.12657e-12, -0.389553, -1.62143, -1.78815, -1.30532, 0, -4.44089e-16, -3.88351, 1.62143, -7.57474}, {-0.546753, 1.31177, 1.28164e-12, 0.194118, 0, -1.44665, -0.509273, -1.31177, -1.28138e-12, -2.58572, 0, -4.33994, 0.435881, -1.62143, 1.78815, 0.389553, 1.62143, 1.78815, 1.30532, -3.2565e-16, -2.22045e-16, 1.79746, -6.86849, -1.78815, -2.08179, 0, 5.78659, 1.60121, 6.86849, -1.78815}, {0.831641, 5.95736e-16, -6.19774, -0.482067, 1.31177, -0.482067, -0.449021, -1.31177, -0.449021, 1.2083, 1.98579e-16, -1.13482, 2.86679, -6.86849, -0.0294728, 1.15089, 0, 1.15089, 2.69376, 6.86849, -0.202503, -5.98409, -7.94315e-16, 3.38841, -0.897675, -1.62143, 1.99859, -0.938522, 1.62143, 1.95774}, {-0.277214, -1.75113e-16, 2.06591, 1.4462, -3.9353, 1.4462, -0.449021, -1.31177, -0.449021, 1.2083, 3.97157e-16, -1.13482, 2.04738, -1.62143, -10.2214, 2.94697, 5.24706, 2.94697, 0.897675, 1.62143, -1.99859, -1.15089, -2.22045e-16, -1.15089, -5.73088, -1.62143, 6.53788, -0.938522, 1.62143, 1.95774}, {-0.277214, 7.58234e-17, 2.06591, -0.482067, 1.31177, -0.482067, 1.34706, 3.9353, 1.34706, 1.2083, -2.97868e-16, -1.13482, 0.938522, -1.62143, -1.95774, 3.07916, -5.24706, 3.07916, 2.00653, 1.62143, -10.2622, -1.15089, 4.44089e-16, -1.15089, -0.897675, -1.62143, 1.99859, -5.77173, 1.62143, 6.49704}, {-0.277214, 0, 2.06591, -0.482067, 1.31177, -0.482067, -0.449021, -1.31177, -0.449021, -3.6249, 0, 3.40447, 0.938522, -1.62143, -1.95774, 1.15089, 0, 1.15089, 0.897675, 1.62143, -1.99859, -0.0420334, 0, -9.41454, 1.03059, -6.86849, 3.92685, 0.857562, 6.86849, 3.75382}, {10.941, -1.1204, -8.334, 1.78885, -1.78885, 1.78885, 1.85814, 1.41539, -1.41539, 0, 0, -3.15147, -4.85864, 8.90493, -12.8004, -4.50793, 0.461631, -0.461631, -5.2214, -7.87269, 3.97726, 4.50793, -0.461631, 13.0675, -2.21115, 2.21115, 1.68428, -2.29678, -1.74951, 5.64494}, {-3.64699, 0.373467, 2.778, -5.36656, 5.36656, -5.36656, 1.85814, 1.41539, -1.41539, 0, 0, -3.15147, 16.8847, 0.255645, -16.7569, -11.9405, -5.19992, 5.19992, 2.21115, -2.21115, -1.68428, 4.50793, -0.461631, 0.461631, -2.21115, 2.21115, 14.2902, -2.29678, -1.74951, 5.64494}, {-3.64699, 0.373467, 2.778, 1.78885, -1.78885, 1.78885, -5.57441, -4.24616, 4.24616, 0, 0, -3.15147, 2.29678, 1.74951, -5.64494, -11.6633, 7.61705, -7.61705, 16.7991, -3.70501, -12.7963, 4.50793, -0.461631, 0.461631, -2.21115, 2.21115, 1.68428, -2.29678, -1.74951, 18.2508}, {-3.64699, 0.373467, 2.778, 1.78885, -1.78885, 1.78885, 1.85814, 1.41539, -1.41539, 0, 0, 9.45441, 2.29678, 1.74951, -5.64494, -4.50793, 0.461631, -0.461631, 2.21115, -2.21115, -1.68428, 19.0959, -1.9555, -10.6504, -9.36656, 9.36656, -5.47113, -9.72932, -7.41106, 11.3065}, {1.77636e-15, 0, 9.45441, 1.78885, 1.78885, 1.78885, 1.36261, -1.78885, 1.36261, -3.15147, 0, 0, -9.36656, -9.36656, -5.47113, -3.89543, 0, -3.89543, -7.13474, 9.36656, -3.23931, 16.5013, 0, 3.89543, 1.68428, -2.21115, -2.21115, 2.21115, 2.21115, -1.68428}, {0, 0, -3.15147, -5.36656, -5.36656, -5.36656, 1.36261, -1.78885, 1.36261, -3.15147, 0, 0, -2.21115, -2.21115, 14.2902, -9.34589, 7.15542, -9.34589, -1.68428, 2.21115, 2.21115, 3.89543, 0, 3.89543, 14.2902, -2.21115, -2.21115, 2.21115, 2.21115, -1.68428}, {4.44089e-16, 0, -3.15147, 1.78885, 1.78885, 1.78885, -4.08784, 5.36656, -4.08784, -3.15147, 0, 0, -2.21115, -2.21115, 1.68428, -11.0508, -7.15542, -11.0508, -1.68428, 2.21115, 14.817, 3.89543, 0, 3.89543, 1.68428, -2.21115, -2.21115, 14.817, 2.21115, -1.68428}, {0, 0, -3.15147, 1.78885, 1.78885, 1.78885, 1.36261, -1.78885, 1.36261, 9.45441, 0, 0, -2.21115, -2.21115, 1.68428, -3.89543, 0, -3.89543, -1.68428, 2.21115, 2.21115, 3.89543, 0, 16.5013, -5.47113, -9.36656, -9.36656, -3.23931, 9.36656, -7.13474}, {5.22884, -3.98763, -5.22319, 0.200328, -1.9397, -2.54071, 8.97324e-16, 3.55112e-16, 2.34313, 1.54262, 0.610485, -1.54348, 1.10547, 8.51339, 11.1512, -0.24762, 2.3976, 0.244222, 2.1544, -1.643, -14.4208, -5.92285, -4.83954, 5.92971, -2.1544, 1.643, 5.04833, -1.90678, -0.754601, -0.988412}, {-1.74295, 1.32921, 1.74106, -0.600985, 5.81909, 7.62212, 0, 0, 2.34313, 1.54262, 0.610485, -1.54348, 8.87857, -4.56224, -5.97584, -0.24762, 2.3976, -9.12828, 2.1544, -1.643, -5.04833, 0.24762, -2.3976, -0.244222, -8.32487, -0.798945, 11.2223, -1.90678, -0.754601, -0.988412}, {-1.74295, 1.32921, 1.74106, 0.200328, -1.9397, -2.54071, 0, 0, -7.02938, 1.54262, 0.610485, -1.54348, 1.90678, 0.754601, 0.988412, -1.04893, 10.1564, 10.407, 9.12619, -6.95984, -12.0126, 0.24762, -2.3976, -0.244222, -2.1544, 1.643, 5.04833, -8.07725, -3.19654, 5.18552}, {-1.74295, 1.32921, 1.74106, 0.200328, -1.9397, -2.54071, 8.97324e-16, 3.55112e-16, 2.34313, -4.62785, -1.83146, 4.63045, 1.90678, 0.754601, 0.988412, -0.24762, 2.3976, 0.244222, 2.1544, -1.643, -5.04833, 7.21941, -7.71444, -7.20847, -2.95571, 9.40178, 15.2112, -1.90678, -0.754601, -10.3609}, {0.403167, 4.33994, -4.33994, 1.56712, -1.12319e-15, 3.41061e-16, -0.345916, 1.4404, 0.569981, -1.08682, 0.00624416, -2.01663, -8.03944, 1.78815, -1.78815, -1.50949, -1.78044, -0.704535, 1.97736, -5.75389, -4.77261, 5.85676, 1.75546, 8.77105, -0.59369, -0.00771821, 2.49269, 1.77095, -1.78815, 1.78815}, {-0.134389, -1.44665, 1.44665, -4.70136, 1.67385e-15, 3.01891e-15, -0.345916, 1.4404, 0.569981, -1.08682, 0.00624416, -2.01663, -1.2334, 7.57474, -7.57474, -0.125826, -7.54205, -2.98446, 0.59369, 0.00771821, -2.49269, 1.50949, 1.78044, 0.704535, 3.75357, -0.0326948, 10.5592, 1.77095, -1.78815, 1.78815}, {-0.134389, -1.44665, 1.44665, 1.56712, 0, 0, 1.03775, -4.32121, -1.70994, -1.08682, 0.00624416, -2.01663, -1.77095, 1.78815, -1.78815, -7.77798, -1.78044, -0.704535, 1.13125, 5.79431, -8.27928, 1.50949, 1.78044, 0.704535, -0.59369, -0.00771821, 2.49269, 6.11822, -1.81313, 9.85467}, {-0.134389, -1.44665, 1.44665, 1.56712, -2.42925e-18, 7.84555e-16, -0.345916, 1.4404, 0.569981, 3.26045, -0.0187325, 6.04988, -1.77095, 1.78815, -1.78815, -1.50949, -1.78044, -0.704535, 0.59369, 0.00771821, -2.49269, 2.04705, 7.56702, -5.08205, -6.86218, -0.00771821, 2.49269, 3.15462, -7.54977, -0.491769}, {-7.02938, 5.36656, -7.02938, -2.34313, 0, 0, 0, 0, -2.34313, 1.02097e-11, 1.78885, 1.02102e-11, 9.3725, 2.21115, -2.89626, 2.89626, 0, 2.89626, -2.89626, 2.21115, 9.3725, -2.89626, -7.15542, -2.89626, 2.89626, -2.21115, -1.26205e-11, -1.26199e-11, -2.21115, 2.89626}, {2.34313, -1.78885, 2.34313, 7.02938, 0, 0, 0, 0, -2.34313, 1.02086e-11, 1.78885, 1.02066e-11, -9.3725, 9.36656, -12.2688, 2.89626, 0, 12.2688, -2.89626, 2.21115, 1.26154e-11, -2.89626, 4.44089e-16, -2.89626, 2.89626, -9.36656, -5.34422e-11, -1.26186e-11, -2.21115, 2.89626}, {2.34313, -1.78885, 2.34313, -2.34313, 0, 0, 0, 0, 7.02938, 1.0206e-11, 1.78885, 1.02081e-11, 1.26148e-11, 2.21115, -2.89626, 12.2688, 0, 2.89626, -12.2688, 9.36656, -9.3725, -2.89626, 4.44089e-16, -2.89626, 2.89626, -2.21115, -1.26179e-11, -5.34395e-11, -9.36656, 2.89626}, {2.34313, -1.78885, 2.34313, -2.34313, 0, 0, 0, 0, -2.34313, -3.06361e-11, -5.36656, -3.06329e-11, 1.26222e-11, 2.21115, -2.89626, 2.89626, 0, 2.89626, -2.89626, 2.21115, 1.26209e-11, -12.2688, 7.15542, -12.2688, 12.2688, -2.21115, -1.26215e-11, -1.26228e-11, -2.21115, 12.2688}, {7.02938, 0, 8.88974e-16, 2.34566, -1.78885, -2.34313, -1.47457e-18, 1.04056e-15, 2.34313, -0.00253498, 1.78885, -1.02102e-11, -9.38578, 9.36656, 12.2688, -2.8994, 2.21115, -1.26206e-11, 2.89626, -4.88498e-15, -12.2688, 2.90954, -9.36656, 5.34614e-11, -2.89626, 8.88178e-16, 2.89626, 0.00313341, -2.21115, -2.89626}, {-2.34313, 0, 7.14229e-17, -7.03698, 5.36656, 7.02938, 0, 0, 2.34313, -0.00253498, 1.78885, -1.02097e-11, 9.36937, 2.21115, 2.89626, -2.8994, 2.21115, -9.3725, 2.89626, 0, -2.89626, 2.8994, -2.21115, 1.26197e-11, -2.88612, -7.15542, 2.89626, 0.00313341, -2.21115, -2.89626}, {-2.34313, 0, -3.09288e-16, 2.34566, -1.78885, -2.34313, 0, 0, -7.02938, -0.00253498, 1.78885, -1.02071e-11, -0.00313341, 2.21115, 2.89626, -12.282, 9.36656, 9.3725, 12.2688, 0, -2.89626, 2.8994, -2.21115, 1.2617e-11, -2.89626, 0, 2.89626, 0.0132733, -9.36656, -2.89626}, {-2.34313, -2.22045e-16, 6.36673e-16, 2.34566, -1.78885, -2.34313, -1.47457e-18, 1.04056e-15, 2.34313, 0.00760494, -5.36656, 3.06361e-11, -0.00313341, 2.21115, 2.89626, -2.8994, 2.21115, -1.26219e-11, 2.89626, -1.33227e-15, -2.89626, 12.2719, -2.21115, 1.26202e-11, -12.2789, 7.15542, 12.2688, 0.00313341, -2.21115, -12.2688}, {5.3029, -0.485897, 0.486322, 0.215713, 1.38996, 0.214498, 0.501223, -0.501223, -1.10401, 1.0507, -1.0507, 1.05162, 1.05543, -7.4781, -0.922752, -0.886182, -1.09853, 1.09949, -0.439523, 2.42424, 5.98103, -3.31661, 5.30132, -5.30596, -1.56537, -0.419345, -1.565, -1.91828, 1.91828, 0.0647586}, {-1.76763, 0.161966, -0.162107, -0.647139, -4.16987, -0.643495, 0.501223, -0.501223, -1.10401, 1.0507, -1.0507, 1.05162, 8.98882, -2.56614, 0.583671, -2.89107, 0.90636, 5.51552, 1.56537, 0.419345, 1.565, 0.886182, 1.09853, -1.09949, -5.76816, 3.78345, -5.77147, -1.91828, 1.91828, 0.0647586}, {-1.76763, 0.161966, -0.162107, 0.215713, 1.38996, 0.214498, -1.50367, 1.50367, 3.31202, 1.0507, -1.0507, 1.05162, 1.91828, -1.91828, -0.0647586, -1.74903, -6.65835, 0.2415, 8.63591, -0.228518, 2.21343, 0.886182, 1.09853, -1.09949, -1.56537, -0.419345, -1.565, -6.12107, 6.12107, -4.14171}, {-1.76763, 0.161966, -0.162107, 0.215713, 1.38996, 0.214498, 0.501223, -0.501223, -1.10401, -3.15209, 3.15209, -3.15485, 1.91828, -1.91828, -0.0647586, -0.886182, -1.09853, 1.09949, 1.56537, 0.419345, 1.565, 7.95672, 0.45067, -0.451064, -2.42822, -5.97917, -2.423, -3.92317, 3.92317, 4.48079}, {1.71308, 4.3282, 0.488804, 0.642112, 1.62234, -1.62234, 2.1437, 0.314496, -0.314496, -2.21478, -0.4941, 2.09977, -2.65632, -6.71135, 8.69607, -3.44345, -2.39406, 2.39406, -10.5187, 0.136594, 1.84812, 12.3026, 4.37046, -10.7931, 1.94393, -1.39458, -0.590137, 0.0878675, 0.222003, -2.20672}, {-0.571026, -1.44273, -0.162935, -1.92634, -4.86701, 4.86701, 2.1437, 0.314496, -0.314496, -2.21478, -0.4941, 2.09977, 2.19624, 5.54893, 2.85846, -12.0182, -3.65204, 3.65204, -1.94393, 1.39458, 0.590137, 3.44345, 2.39406, -2.39406, 10.8031, 0.581823, -8.98921, 0.0878675, 0.222003, -2.20672}, {-0.571026, -1.44273, -0.162935, 0.642112, 1.62234, -1.62234, -6.43109, -0.943488, 0.943488, -2.21478, -0.4941, 2.09977, -0.0878675, -0.222003, 2.20672, -6.0119, -8.88341, 8.88341, 0.340174, 7.16551, 1.24188, 3.44345, 2.39406, -2.39406, 1.94393, -1.39458, -0.590137, 8.947, 2.1984, -10.6058}, {-0.571026, -1.44273, -0.162935, 0.642112, 1.62234, -1.62234, 2.1437, 0.314496, -0.314496, 6.64435, 1.4823, -6.2993, -0.0878675, -0.222003, 2.20672, -3.44345, -2.39406, 2.39406, -1.94393, 1.39458, 0.590137, 5.72755, 8.16499, -1.74232, -0.624519, -7.88393, 5.89921, -8.48692, -1.03598, -0.948734}, {-4.62937, 4.62937, 1.83228, 0.198723, -0.198723, 1.94057, -1.74185, 0.136178, -1.32981, 0, 1.60567, 0, -2.94793, 2.94793, -9.40601, 1.90741, 0.0773091, -0.754941, 7.21302, 1.19437, 7.71791, -1.90741, -6.49998, 0.754941, -0.245635, -1.73908, -2.39867, 2.15304, -2.15304, 1.64373}, {1.54312, -1.54312, -0.61076, -0.596168, 0.596168, -5.82171, -1.74185, 0.136178, -1.32981, 6.94322e-16, 1.60567, 5.30079e-16, -8.32553, 8.32553, 0.799305, 8.87479, -0.467403, 4.5643, 0.245635, 1.73908, 2.39867, -1.90741, -0.0773091, 0.754941, -0.245635, -8.16175, -2.39867, 2.15304, -2.15304, 1.64373}, {1.54312, -1.54312, -0.61076, 0.198723, -0.198723, 1.94057, 5.22554, -0.408534, 3.98943, 0, 1.60567, 0, -2.15304, 2.15304, -1.64373, 1.11252, 0.872199, -8.51722, -5.92686, 7.91157, 4.84171, -1.90741, -0.0773091, 0.754941, -0.245635, -1.73908, -2.39867, 2.15304, -8.57571, 1.64373}, {1.54312, -1.54312, -0.61076, 0.198723, -0.198723, 1.94057, -1.74185, 0.136178, -1.32981, 0, -4.817, 0, -2.15304, 2.15304, -1.64373, 1.90741, 0.0773091, -0.754941, 0.245635, 1.73908, 2.39867, -8.0799, 6.09519, 3.19798, -1.04052, -0.94419, -10.1609, 9.12042, -2.69775, 6.96297}, {-1.38621, -1.33227e-15, 3.9353, 1.09414, 1.31177, 1.31177, 0.173581, -1.31177, 0, -1.72979, 0, 0, -6.30013, -6.86849, -5.24706, -1.56699, 4.44089e-16, -1.62143, -1.48003, 6.86849, 1.62143, 8.48614, -4.44089e-16, 1.62143, 0.785706, -1.62143, -1.62143, 1.92358, 1.62143, 0}, {0.462069, -5.96084e-17, -1.31177, -3.28242, -3.9353, -3.9353, 0.173581, -1.31177, 0, -1.72979, 2.81653e-16, 0, -3.77185, -1.62143, 5.24706, -2.26131, 5.24706, -1.62143, -0.785706, 1.62143, 1.62143, 1.56699, -2.22045e-16, 1.62143, 7.70486, -1.62143, -1.62143, 1.92358, 1.62143, 0}, {0.462069, -8.88178e-16, -1.31177, 1.09414, 1.31177, 1.31177, -0.520744, 3.9353, 0, -1.72979, 0, 0, -1.92358, -1.62143, 3.2565e-16, -5.94354, -5.24706, -6.86849, -2.63398, 1.62143, 6.86849, 1.56699, 1.11022e-15, 1.62143, 0.785706, -1.62143, -1.62143, 8.84273, 1.62143, 0}, {0.462069, 0, -1.31177, 1.09414, 1.31177, 1.31177, 0.173581, -1.31177, 0, 5.18937, 0, 0, -1.92358, -1.62143, 3.2565e-16, -1.56699, 0, -1.62143, -0.785706, 1.62143, 1.62143, -0.281287, 0, 6.86849, -3.59085, -6.86849, -6.86849, 1.22925, 6.86849, 0}, {-3.84404e-12, -3.9353, 2.80446, 1.44665, 0, 0.44688, -1.28111e-12, -1.31177, -0.870737, -1.44665, 0, 1.35868, -7.57474, -1.62143, -1.18439, -1.78815, 1.62143, 0.523916, 5.12412e-12, 5.24706, 5.71474, 7.57474, -1.62143, -5.95862, 2.22045e-16, 0, -2.23179, 1.78815, 1.62143, -0.603126}, {1.2812e-12, 1.31177, -0.934819, -4.33994, -8.15796e-16, -1.34064, -1.28111e-12, -1.31177, -0.870737, -1.44665, -1.24937e-16, 1.35868, -1.78815, -6.86849, 4.3424, -1.78815, 6.86849, 4.00686, 0, -1.43955e-16, 2.23179, 1.78815, -1.62143, -0.523916, 5.78659, 3.18053e-16, -7.66649, 1.78815, 1.62143, -0.603126}, {1.28053e-12, 1.31177, -0.934819, 1.44665, 0, 0.44688, 3.84227e-12, 3.9353, 2.61221, -1.44665, 0, 1.35868, -1.78815, -1.62143, 0.603126, -7.57474, 1.62143, -1.2636, -5.12124e-12, -5.24706, 5.97107, 1.78815, -1.62143, -0.523916, -4.44089e-16, 0, -2.23179, 7.57474, 1.62143, -6.03783}, {1.28098e-12, 1.31177, -0.934819, 1.44665, 0, 0.44688, -1.281e-12, -1.31177, -0.870737, 4.33994, 0, -4.07603, -1.78815, -1.62143, 0.603126, -1.78815, 1.62143, 0.523916, 0, -3.2565e-16, 2.23179, 1.78815, -6.86849, 3.21536, -5.78659, 0, -4.01931, 1.78815, 6.86849, 2.87982}, {5.36291, -5.36619, -5.37088, 3.64451, -0.373213, -0.376399, -1.85687, 0.190152, -1.41389, 0, -1.60567, 0, -16.8733, -0.256821, -0.242074, -2.20964, 0.226277, 2.21292, 11.9323, -3.20664, 5.19032, 2.20964, 6.1964, -2.21292, -4.50486, 2.44603, 0.465254, 2.29522, 1.74967, 1.74767}, {-1.78764, 1.78873, 1.79029, -10.9335, 1.11964, 1.1292, -1.85687, 0.190152, -1.41389, 0, -1.60567, 0, 4.85533, -8.90459, -8.90884, 5.21784, -0.53433, 7.8685, 4.50486, -2.44603, -0.465254, 2.20964, -0.226277, -2.21292, -4.50486, 8.8687, 0.465254, 2.29522, 1.74967, 1.74767}, {-1.78764, 1.78873, 1.79029, 3.64451, -0.373213, -0.376399, 5.57061, -0.570455, 4.24168, 0, -1.60567, 0, -2.29522, -1.74967, -1.74767, -16.7877, 1.71913, 3.71852, 11.6554, -9.60095, -7.62642, 2.20964, -0.226277, -2.21292, -4.50486, 2.44603, 0.465254, 2.29522, 8.17235, 1.74767}, {-1.78764, 1.78873, 1.79029, 3.64451, -0.373213, -0.376399, -1.85687, 0.190152, -1.41389, 0, 4.817, 0, -2.29522, -1.74967, -1.74767, -2.20964, 0.226277, 2.21292, 4.50486, -2.44603, -0.465254, 9.36019, -7.3812, -9.37409, -19.0829, 3.93889, 1.97085, 9.72271, 0.989068, 7.40324}, {-4.90664, -4.91093, -4.90664, 0.802238, -0.802728, -0.80343, -1.63555, -0.0313083, -1.63555, -0.802238, -0.80294, 0.80343, -6.22222, 2.17973, 2.18516, 1.03003, 1.03093, 3.01474, 6.54219, -1.85948, 6.54219, 2.17893, 2.18083, -6.22846, -3.78586e-14, 1.98471, 3.79696e-14, 3.01327, 1.03119, 1.02855}, {1.63555, 1.63698, 1.63555, -2.40672, 2.40819, 2.41029, -1.63555, -0.0313083, -1.63555, -0.802238, -0.80294, 0.80343, -9.55546, -7.57909, -7.57074, 7.57221, 1.15616, 9.55693, 3.71925e-14, -1.98471, -3.81917e-14, -1.03003, -1.03093, -3.01474, 3.20895, 5.19647, -3.21372, 3.01327, 1.03119, 1.02855}, {1.63555, 1.63698, 1.63555, 0.802238, -0.802728, -0.80343, 4.90664, 0.0939249, 4.90664, -0.802238, -0.80294, 0.80343, -3.01327, -1.03119, -1.02855, -2.17893, 4.24184, 6.22846, -6.54219, -8.53262, -6.54219, -1.03003, -1.03093, -3.01474, -3.78586e-14, 1.98471, 3.80806e-14, 6.22222, 4.24295, -2.18516}, {1.63555, 1.63698, 1.63555, 0.802238, -0.802728, -0.80343, -1.63555, -0.0313083, -1.63555, 2.40672, 2.40882, -2.41029, -3.01327, -1.03119, -1.02855, 1.03003, 1.03093, 3.01474, 3.73035e-14, -1.98471, -3.83027e-14, -7.57221, -7.57883, -9.55693, -3.20895, 5.19563, 3.21372, 9.55546, 1.15642, 7.57074}, {0.433524, 4.35281, -4.30748, -1.58383, 1.03002, -2.49725, 0.961132, -0.582294, -1.46836, 0.767201, 1.00321, 2.52978, 8.47164, -3.5998, 11.301, 0.769691, -0.553419, 4.90175, -4.85393, 4.84239, 5.91364, -3.83849, -3.45943, -15.0209, 1.0094, -2.51321, -0.0402101, -2.13634, -0.520284, -1.31199}, {-0.144508, -1.45094, 1.43583, 4.75148, -3.09006, 7.49174, 0.961132, -0.582294, -1.46836, 0.767201, 1.00321, 2.52978, 2.71437, 6.32404, -4.43132, -3.07484, 1.77576, 10.7752, -1.0094, 2.51321, 0.0402101, -0.769691, 0.553419, -4.90175, -2.0594, -6.52607, -10.1593, -2.13634, -0.520284, -1.31199}, {-0.144508, -1.45094, 1.43583, -1.58383, 1.03002, -2.49725, -2.8834, 1.74688, 4.40507, 0.767201, 1.00321, 2.52978, 2.13634, 0.520284, 1.31199, 7.10499, -4.6735, 14.8907, -0.431372, 8.31697, -5.70309, -0.769691, 0.553419, -4.90175, 1.0094, -2.51321, -0.0402101, -5.20514, -4.53314, -11.4311}, {-0.144508, -1.45094, 1.43583, -1.58383, 1.03002, -2.49725, 0.961132, -0.582294, -1.46836, -2.3016, -3.00964, -7.58933, 2.13634, 0.520284, 1.31199, 0.769691, -0.553419, 4.90175, -1.0094, 2.51321, 0.0402101, -0.191659, 6.35717, -10.6451, 7.3447, -6.63329, 9.94877, -5.98087, 1.80889, 4.56144}, {-5.22554, 3.98943, -3.78662, 0, 0, -1.80556, -0.198723, 1.94057, 0.386742, -1.54312, -0.61076, 0.156608, -2.15304, 1.64373, 7.89384, 0.245635, -2.39867, 1.75375, -1.11252, -8.51722, -3.58518, 5.92686, 4.84171, -2.38018, 1.90741, 0.754941, 2.03821, 2.15304, -1.64373, -0.671617}, {1.74185, -1.32981, 1.26221, 0, 0, 5.41667, -0.198723, 1.94057, 0.386742, -1.54312, -0.61076, 0.156608, -9.12042, 6.96297, -4.37721, 1.04052, -10.1609, 0.206785, -1.90741, -0.754941, -2.03821, -0.245635, 2.39867, -1.75375, 8.0799, 3.19798, 1.41178, 2.15304, -1.64373, -0.671617}, {1.74185, -1.32981, 1.26221, 0, 0, -1.80556, 0.596168, -5.82171, -1.16022, -1.54312, -0.61076, 0.156608, -2.15304, 1.64373, 0.671617, 0.245635, -2.39867, 8.97597, -8.87479, 4.5643, -7.08704, -0.245635, 2.39867, -1.75375, 1.90741, 0.754941, 2.03821, 8.32553, 0.799305, -1.29805}, {1.74185, -1.32981, 1.26221, 0, 0, -1.80556, -0.198723, 1.94057, 0.386742, 4.62937, 1.83228, -0.469823, -2.15304, 1.64373, 0.671617, 0.245635, -2.39867, 1.75375, -1.90741, -0.754941, -2.03821, -7.21302, 7.71791, -6.80258, 1.90741, 0.754941, 9.26043, 2.94793, -9.40601, -2.21858}, {2.47366, -6.0686, -0.0191747, -0.141226, -1.44665, 1.44665, 1.40644, 1.00594e-16, 2.53667e-16, -0.440661, -0.57622, -1.45304, 1.75867, 5.07434, -7.58264, -1.56389, 1.78815, -1.78815, -6.34501, -2.5004, -0.0079004, 3.32653, 0.516725, 7.60031, 0.719252, 2.5004, 0.0079004, -1.19377, 0.712247, 1.79605}, {-0.824552, 2.02287, 0.00639156, 0.423679, 4.33994, -4.33994, 1.40644, 3.01783e-16, 7.61e-16, -0.440661, -0.57622, -1.45304, 4.49197, -8.80371, -1.82162, -7.18964, 1.78815, -1.78815, -0.719252, -2.5004, -0.0079004, 1.56389, -1.78815, 1.78815, 2.48189, 4.80528, 5.82005, -1.19377, 0.712247, 1.79605}, {-0.824552, 2.02287, 0.00639156, -0.141226, -1.44665, 1.44665, -4.21932, 0, 0, -0.440661, -0.57622, -1.45304, 1.19377, -0.712247, -1.79605, -0.998983, 7.57474, -7.57474, 2.57896, -10.5919, -0.0334666, 1.56389, -1.78815, 1.78815, 0.719252, 2.5004, 0.0079004, 0.568875, 3.01713, 7.60821}, {-0.824552, 2.02287, 0.00639156, -0.141226, -1.44665, 1.44665, 1.40644, -3.01783e-16, -7.61e-16, 1.32198, 1.72866, 4.35912, 1.19377, -0.712247, -1.79605, -1.56389, 1.78815, -1.78815, -0.719252, -2.5004, -0.0079004, 4.8621, -9.87962, 1.76259, 1.28416, 8.28699, -5.77869, -6.81952, 0.712247, 1.79605}, {-5.82171, -0.596168, -7.61729, 0, 0, -2.34313, -0.61076, 1.54312, 1.54399, -1.32981, -1.74185, -1.73996, -2.39867, -0.245635, 9.13027, 0.754941, -1.90741, 0.987787, 0.799305, -8.32553, -11.2229, 4.5643, 8.87479, 5.97206, 1.64373, 2.15304, 5.04697, 2.39867, 0.245635, 0.242235}, {1.94057, 0.198723, 2.5391, 0, 0, 7.02938, -0.61076, 1.54312, 1.54399, -1.32981, -1.74185, -1.73996, -10.1609, -1.04052, -10.3986, 3.19798, -8.0799, -5.18817, -1.64373, -2.15304, -5.04697, -0.754941, 1.90741, -0.987787, 6.96297, 9.12042, 12.0068, 2.39867, 0.245635, 0.242235}, {1.94057, 0.198723, 2.5391, 0, 0, -2.34313, 1.83228, -4.62937, -4.63197, -1.32981, -1.74185, -1.73996, -2.39867, -0.245635, -0.242235, 0.754941, -1.90741, 10.3603, -9.40601, -2.94793, -15.2034, -0.754941, 1.90741, -0.987787, 1.64373, 2.15304, 5.04697, 7.71791, 7.21302, 7.20208}, {1.94057, 0.198723, 2.5391, 0, 0, -2.34313, -0.61076, 1.54312, 1.54399, 3.98943, 5.22554, 5.21989, -2.39867, -0.245635, -0.242235, 0.754941, -1.90741, 0.987787, -1.64373, -2.15304, -5.04697, -8.51722, 1.11252, -11.1442, 1.64373, 2.15304, 14.4195, 4.84171, -5.92686, -5.93372}, {7.02938, 8.88178e-16, -8.88178e-16, 1.54312, -1.54312, -0.61076, 2.54185, -0.198723, 1.94057, -1.74185, 1.74185, -1.32981, -5.18364, 8.0799, 3.19798, -5.0493, 2.15304, -1.64373, -10.413, 1.04052, -10.1609, 12.0167, -9.12042, 6.96297, 0.245635, -0.245635, 2.39867, -0.988857, -1.90741, -0.754941}, {-2.34313, 0, -4.44089e-16, -4.62937, 4.62937, 1.83228, 2.54185, -0.198723, 1.94057, -1.74185, 1.74185, -1.32981, 10.3614, 1.90741, 0.754941, -15.2167, 2.94793, -9.40601, -0.245635, 0.245635, -2.39867, 5.0493, -2.15304, 1.64373, 7.21302, -7.21302, 7.71791, -0.988857, -1.90741, -0.754941}, {-2.34313, 2.22045e-16, 0, 1.54312, -1.54312, -0.61076, -7.62554, 0.596168, -5.82171, -1.74185, 1.74185, -1.32981, 0.988857, 1.90741, 0.754941, -11.2218, 8.32553, 0.799305, 9.12687, 0.245635, -2.39867, 5.0493, -2.15304, 1.64373, 0.245635, -0.245635, 2.39867, 5.97853, -8.87479, 4.5643}, {-2.34313, 0, -2.22045e-16, 1.54312, -1.54312, -0.61076, 2.54185, -0.198723, 1.94057, 5.22554, -5.22554, 3.98943, 0.988857, 1.90741, 0.754941, -5.0493, 2.15304, -1.64373, -0.245635, 0.245635, -2.39867, 14.4218, -2.15304, 1.64373, -5.92686, 5.92686, 4.84171, -11.1562, -1.11252, -8.51722}, {9.45441, 8.88178e-16, 0, -1.41486, -1.85814, 1.41539, 2.77696, 3.64699, 0.373467, 1.78937, -1.78885, -1.78885, 11.3037, 9.72932, -7.41106, -1.68365, -2.21115, -2.21115, -10.6449, -19.0959, -1.9555, -5.47381, 9.36656, 9.36656, -0.46292, 4.50793, 0.461631, -5.64429, -2.29678, 1.74951}, {-3.15147, 8.88178e-16, 4.44089e-16, 4.24457, 5.57441, -4.24616, 2.77696, 3.64699, 0.373467, 1.78937, -1.78885, -1.78885, 18.2502, 2.29678, -1.74951, -12.7915, -16.7991, -3.70501, 0.46292, -4.50793, -0.461631, 1.68365, 2.21115, 2.21115, -7.62038, 11.6633, 7.61705, -5.64429, -2.29678, 1.74951}, {-3.15147, 4.44089e-16, 2.22045e-16, -1.41486, -1.85814, 1.41539, -8.33088, -10.941, -1.1204, 1.78937, -1.78885, -1.78885, 5.64429, 2.29678, -1.74951, 3.97577, 5.2214, -7.87269, 13.0688, -4.50793, -0.461631, 1.68365, 2.21115, 2.21115, -0.46292, 4.50793, 0.461631, -12.8018, 4.85864, 8.90493}, {-3.15147, -2.22045e-16, 0, -1.41486, -1.85814, 1.41539, 2.77696, 3.64699, 0.373467, -5.3681, 5.36656, 5.36656, 5.64429, 2.29678, -1.74951, -1.68365, -2.21115, -2.21115, 0.46292, -4.50793, -0.461631, 14.2895, 2.21115, 2.21115, 5.1965, 11.9405, -5.19992, -16.7521, -16.8847, 0.255645}, {-1.04981, -4.33994, -1.71772, -1.16436, 0, 0, 0.183612, -1.44665, 1.44665, 0.630806, -1.58777e-12, -2.01922, 5.6641, -1.78815, -0.707741, 1.21227, 1.78815, -1.78815, -1.39395, 5.78659, -8.28248, -3.73549, -1.78815, 9.86504, 0.659504, 1.96259e-12, 2.4959, -1.00668, 1.78815, 0.707741}, {0.349938, 1.44665, 0.572575, 3.49307, 0, 0, 0.183612, -1.44665, 1.44665, 0.630806, -1.5874e-12, -2.01922, -0.393077, -7.57474, -2.99804, 0.47782, 7.57474, -7.57474, -0.659504, -1.9625e-12, -2.4959, -1.21227, -1.78815, 1.78815, -1.86372, 8.31176e-12, 10.5728, -1.00668, 1.78815, 0.707741}, {0.349938, 1.44665, 0.572575, -1.16436, 0, 0, -0.550835, 4.33994, -4.33994, 0.630806, -1.58632e-12, -2.01922, 1.00668, -1.78815, -0.707741, 5.86969, 1.78815, -1.78815, -2.05926, -5.78659, -4.7862, -1.21227, -1.78815, 1.78815, 0.659504, 1.9608e-12, 2.4959, -3.5299, 1.78815, 8.78463}, {0.349938, 1.44665, 0.572575, -1.16436, 0, 0, 0.183612, -1.44665, 1.44665, -1.89242, 4.76004e-12, 6.05767, 1.00668, -1.78815, -0.707741, 1.21227, 1.78815, -1.78815, -0.659504, -1.9616e-12, -2.4959, -2.61202, -7.57474, -0.502145, 5.31693, 1.96124e-12, 2.4959, -1.74112, 7.57474, -5.07885}, {-5.36656, 5.36656, -5.36656, 1.85814, -0.190281, -1.41539, 0, 1.60567, 0, -3.64699, 0.373467, -0.373467, -11.9405, 3.20747, 5.19992, -2.29678, -1.74951, 1.74951, -2.21115, -6.19624, -2.21115, 16.8847, 0.255645, -0.255645, 2.21115, -0.226431, 2.21115, 4.50793, -2.44635, 0.461631}, {1.78885, -1.78885, 1.78885, -5.57441, 0.570843, 4.24616, 1.45374e-15, 1.60567, 1.48869e-16, -3.64699, 0.373467, -0.373467, -11.6633, 9.60176, -7.61705, -2.29678, -8.17219, 1.74951, -2.21115, 0.226431, -2.21115, 2.29678, 1.74951, -1.74951, 16.7991, -1.7203, 3.70501, 4.50793, -2.44635, 0.461631}, {1.78885, -1.78885, 1.78885, 1.85814, -0.190281, -1.41539, 0, -4.817, 0, -3.64699, 0.373467, -0.373467, -4.50793, 2.44635, -0.461631, -9.72932, -0.988391, 7.41106, -9.36656, 7.38185, -9.36656, 2.29678, 1.74951, -1.74951, 2.21115, -0.226431, 2.21115, 19.0959, -3.94022, 1.9555}, {1.78885, -1.78885, 1.78885, 1.85814, -0.190281, -1.41539, 0, 1.60567, 0, 10.941, -1.1204, 1.1204, -4.50793, 2.44635, -0.461631, -2.29678, -1.74951, 1.74951, -2.21115, 0.226431, -2.21115, -4.85864, 8.90493, -8.90493, -5.2214, 0.534693, 7.87269, 4.50793, -8.86902, 0.461631}, {-2.3518, -6.05767, 5.91882e-12, 0.531029, -0.572575, 1.44665, -0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -3.7495, 0.502145, -7.57474, -0.336326, 2.4959, -2.43872e-12, 0.386809, 5.07885, 7.57474, 4.56043, -2.4959, 2.43872e-12, 0.648932, 0.707741, -1.78815, 1.62538, 1.78815, 1.78815}, {0.783932, 2.01922, -1.97264e-12, -1.59309, 1.71772, -4.33994, -0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -4.76111, -9.86504, -1.78815, 0.699414, 8.28248, 5.78659, -0.648932, -0.707741, 1.78815, 0.336326, -2.4959, 2.43827e-12, 4.87303, 0.707741, -1.78815, 1.62538, 1.78815, 1.78815}, {0.783932, 2.01922, -1.9722e-12, 0.531029, -0.572575, 1.44665, 0.776805, 4.33994, 4.33994, -1.05603, 0, 0, -1.62538, -1.78815, -1.78815, -2.46044, 4.7862, -5.78659, -3.78466, -8.78463, 1.78815, 0.336326, -2.4959, 2.43783e-12, 0.648932, 0.707741, -1.78815, 5.84948, 1.78815, 1.78815}, {0.783932, 2.01922, -1.97309e-12, 0.531029, -0.572575, 1.44665, -0.258935, -1.44665, -1.44665, 3.16808, 0, 0, -1.62538, -1.78815, -1.78815, -0.336326, 2.4959, -2.43894e-12, -0.648932, -0.707741, 1.78815, -2.7994, -10.5728, 1.03313e-11, -1.47518, 2.99804, -7.57474, 2.66112, 7.57474, 7.57474}, {-5.36656, -5.36656, -5.36656, 2.778, -3.64699, -0.373467, -1.41539, 1.85814, -1.41539, -3.15147, 0, 0, -16.7569, 16.8847, -0.255645, -1.68428, 2.21115, 2.21115, 5.19992, -11.9405, 5.19992, 14.2902, -2.21115, -2.21115, 0.461631, 4.50793, 0.461631, 5.64494, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, -8.334, 10.941, 1.1204, -1.41539, 1.85814, -1.41539, -3.15147, 0, 0, -12.8004, -4.85864, -8.90493, 3.97726, -5.2214, 7.87269, -0.461631, -4.50793, -0.461631, 1.68428, -2.21115, -2.21115, 13.0675, 4.50793, 0.461631, 5.64494, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 2.778, -3.64699, -0.373467, 4.24616, -5.57441, 4.24616, -3.15147, 0, 0, -5.64494, 2.29678, -1.74951, -12.7963, 16.7991, 3.70501, -7.61705, -11.6633, -7.61705, 1.68428, -2.21115, -2.21115, 0.461631, 4.50793, 0.461631, 18.2508, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 2.778, -3.64699, -0.373467, -1.41539, 1.85814, -1.41539, 9.45441, 0, 0, -5.64494, 2.29678, -1.74951, -1.68428, 2.21115, 2.21115, -0.461631, -4.50793, -0.461631, -5.47113, -9.36656, -9.36656, -10.6504, 19.0959, 1.9555, 11.3065, -9.72932, 7.41106}, {0.408534, -3.98943, 5.22554, 1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 0.198723, -1.60567, 0, 0, -7.91157, -4.84171, -5.92686, -2.15304, 1.64373, -2.15304, -0.872199, 8.51722, 1.11252, 8.57571, -1.64373, 2.15304, 0.0773091, -0.754941, -1.90741, 1.73908, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, -4.62937, -1.83228, -4.62937, 0.198723, -1.94057, 0.198723, -1.60567, 0, 0, -1.19437, -7.71791, 7.21302, -2.94793, 9.40601, -2.94793, -0.0773091, 0.754941, 1.90741, 2.15304, -1.64373, 2.15304, 6.49998, -0.754941, -1.90741, 1.73908, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, 1.54312, 0.61076, 1.54312, -0.596168, 5.82171, -0.596168, -1.60567, 0, 0, -1.73908, -2.39867, 0.245635, -8.32553, -0.799305, -8.32553, 0.467403, -4.5643, 8.87479, 2.15304, -1.64373, 2.15304, 0.0773091, -0.754941, -1.90741, 8.16175, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, 1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 0.198723, 4.817, 0, 0, -1.73908, -2.39867, 0.245635, -2.15304, 1.64373, -2.15304, -0.0773091, 0.754941, 1.90741, 2.69775, -6.96297, 9.12042, -6.09519, -3.19798, -8.0799, 0.94419, 10.1609, -1.04052}, {-1.29949, 3.9353, 2.21079, 1.70046, 1.31177, -0.409533, -0.573592, 0, 1.62837, -1.56004, 0, -0.481907, -9.43917, -5.24706, 3.05524, -1.39289, -1.62143, -1.50656, 2.46795, 1.62143, -7.61536, 7.63304, 1.62143, 3.43419, -0.173579, -1.62143, 1.10188, 2.63731, 0, -1.4171}, {0.433164, -1.31177, -0.736929, -5.10139, -3.9353, 1.2286, -0.573592, 0, 1.62837, -1.56004, 0, -0.481907, -4.36997, 5.24706, 4.36482, 0.901477, -1.62143, -8.02004, 0.173579, 1.62143, -1.10188, 1.39289, 1.62143, 1.50656, 6.06657, -1.62143, 3.02951, 2.63731, 0, -1.4171}, {0.433164, -1.31177, -0.736929, 1.70046, 1.31177, -0.409533, 1.72078, 0, -4.88511, -1.56004, 0, -0.481907, -2.63731, 3.2565e-16, 1.4171, -8.19475, -6.86849, 0.131566, -1.55908, 6.86849, 1.84584, 1.39289, 1.62143, 1.50656, -0.173579, -1.62143, 1.10188, 8.87746, 0, 0.510523}, {0.433164, -1.31177, -0.736929, 1.70046, 1.31177, -0.409533, -0.573592, 0, 1.62837, 4.68011, 0, 1.44572, -2.63731, 3.2565e-16, 1.4171, -1.39289, -1.62143, -1.50656, 0.173579, 1.62143, -1.10188, -0.339765, 6.86849, 4.45428, -6.97544, -6.86849, 2.74001, 4.93168, 0, -7.93058}, {10.941, 1.1204, -5.07489, 1.78885, 1.78885, -0.204309, 0, 0, -2.39759, 1.85814, -1.41539, 0.910268, -4.85864, -8.90493, -1.02119, -2.21115, -2.21115, 3.21612, 4.50793, 0.461631, 10.463, -5.2214, 7.87269, -6.8572, -4.50793, -0.461631, -0.872613, -2.29678, 1.74951, 1.83843}, {-3.64699, -0.373467, 1.69163, -5.36656, -5.36656, 0.612928, 0, 0, -2.39759, 1.85814, -1.41539, 0.910268, 16.8847, -0.255645, -8.60495, -2.21115, -2.21115, 12.8065, 4.50793, 0.461631, 0.872613, 2.21115, 2.21115, -3.21612, -11.9405, 5.19992, -4.51368, -2.29678, 1.74951, 1.83843}, {-3.64699, -0.373467, 1.69163, 1.78885, 1.78885, -0.204309, 0, 0, 7.19277, 1.85814, -1.41539, 0.910268, 2.29678, -1.74951, -1.83843, -9.36656, -9.36656, 4.03336, 19.0959, 1.9555, -5.89391, 2.21115, 2.21115, -3.21612, -4.50793, -0.461631, -0.872613, -9.72932, 7.41106, -1.80264}, {-3.64699, -0.373467, 1.69163, 1.78885, 1.78885, -0.204309, 0, 0, -2.39759, -5.57441, 4.24616, -2.7308, 2.29678, -1.74951, -1.83843, -2.21115, -2.21115, 3.21612, 4.50793, 0.461631, 0.872613, 16.7991, 3.70501, -9.98265, -11.6633, -7.61705, -0.0553752, -2.29678, 1.74951, 11.4288}, {-5.36656, 5.36656, -5.36656, 3.86512e-15, 3.15147, 1.39953e-15, -3.15147, 0, 0, 1.36261, -1.36261, -1.78885, -2.21115, -14.2902, -2.21115, 3.89543, -3.89543, -1.72992e-15, 14.2902, 2.21115, -2.21115, -9.34589, 9.34589, 7.15542, -1.68428, -2.21115, 2.21115, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, -1.0595e-14, -9.45441, 4.1986e-15, -3.15147, 0, 0, 1.36261, -1.36261, -1.78885, -9.36656, 5.47113, -9.36656, 16.5013, -3.89543, 1.72992e-15, 1.68428, 2.21115, -2.21115, -3.89543, 3.89543, -2.17401e-15, -7.13474, 3.23931, 9.36656, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 9.45441, 0, 0, 1.36261, -1.36261, -1.78885, -2.21115, -1.68428, -2.21115, 3.89543, -16.5013, 0, -5.47113, 9.36656, -9.36656, -3.89543, 3.89543, -4.44089e-16, -1.68428, -2.21115, 2.21115, -3.23931, 7.13474, 9.36656}, {1.78885, -1.78885, 1.78885, -1.06606e-15, 3.15147, 1.39953e-15, -3.15147, 0, 0, -4.08784, 4.08784, 5.36656, -2.21115, -1.68428, -2.21115, 3.89543, -3.89543, -1.72992e-15, 1.68428, 2.21115, -2.21115, -11.0508, 11.0508, -7.15542, -1.68428, -14.817, 2.21115, 14.817, 1.68428, 2.21115}, {-3.13871, 2.39624, 3.14224, -1.3586, 1.03722, -0.984492, 1.05172, 0.985921, 1.29286, -0.739357, -1.22439, 0.739047, 5.8205, -4.44365, 6.44954, 0.379324, -2.50074, -0.381162, -6.8001, -4.17504, -5.47482, 2.5781, 7.39832, -2.57503, 2.59322, 0.231359, 0.303387, -0.386102, 0.294769, -2.51157}, {1.04624, -0.798747, -1.04741, 4.0758, -3.11166, 2.95348, 1.05172, 0.985921, 1.29286, -0.739357, -1.22439, 0.739047, -3.79884, 2.90022, 6.70123, -3.82756, -6.44442, -5.5526, -2.59322, -0.231359, -0.303387, -0.379324, 2.50074, 0.381162, 5.55064, 5.12894, -2.6528, -0.386102, 0.294769, -2.51157}, {1.04624, -0.798747, -1.04741, -1.3586, 1.03722, -0.984492, -3.15516, -2.95776, -3.87858, -0.739357, -1.22439, 0.739047, 0.386102, -0.294769, 2.51157, 5.81372, -6.64962, 3.55681, -6.77816, 2.96363, 3.88627, -0.379324, 2.50074, 0.381162, 2.59322, 0.231359, 0.303387, 2.57132, 5.19235, -5.46776}, {1.04624, -0.798747, -1.04741, -1.3586, 1.03722, -0.984492, 1.05172, 0.985921, 1.29286, 2.21807, 3.67318, -2.21714, 0.386102, -0.294769, 2.51157, 0.379324, -2.50074, -0.381162, -2.59322, -0.231359, -0.303387, -4.56427, 5.69573, 4.57082, 8.02762, -3.91752, 4.24135, -4.59298, -3.64891, -7.68301}, {3.49307, 0, -5.19009e-16, 0.460877, 0.572575, 1.44665, -0.183612, 1.44665, -1.44665, 0.88709, -2.01922, 1.97395e-12, -0.973962, -2.99804, -7.57474, -0.342719, -2.4959, 2.44027e-12, 2.40063, -7.57474, 7.57474, -3.20564, 10.5728, -1.03361e-11, -1.66618, 1.78815, -1.78815, -0.869547, 0.707741, 1.78815}, {-1.16436, 0, 2.63061e-17, -1.38263, -1.71772, -4.33994, -0.183612, 1.44665, -1.44665, 0.88709, -2.01922, 1.97018e-12, 5.52697, -0.707741, -1.78815, 0.391727, -8.28248, 5.78659, 1.66618, -1.78815, 1.78815, 0.342719, 2.4959, -2.43516e-12, -5.21454, 9.86504, -1.78815, -0.869547, 0.707741, 1.78815}, {-1.16436, 0, 1.0874e-16, 0.460877, 0.572575, 1.44665, 0.550835, -4.33994, 4.33994, 0.88709, -2.01922, 1.97254e-12, 0.869547, -0.707741, -1.78815, -2.18623, -4.7862, -5.78659, 6.3236, -1.78815, 1.78815, 0.342719, 2.4959, -2.43827e-12, -1.66618, 1.78815, -1.78815, -4.41791, 8.78463, 1.78815}, {-1.16436, 0, 2.47018e-16, 0.460877, 0.572575, 1.44665, -0.183612, 1.44665, -1.44665, -2.66127, 6.05767, -5.92185e-12, 0.869547, -0.707741, -1.78815, -0.342719, -2.4959, 2.44027e-12, 1.66618, -1.78815, 1.78815, 5.00014, 2.4959, -2.44081e-12, -3.50969, -0.502145, -7.57474, -0.135101, -5.07885, 7.57474}, {-4.817, 1.77636e-15, 1.9984e-15, -1.78885, 1.78885, -1.78885, -0.190167, 1.85702, 1.41407, 0.373353, -3.64588, 0.374783, 7.38185, -9.36656, 9.36656, 2.4462, -4.50655, 0.463257, -0.988987, -9.72349, -7.40418, -3.93962, 19.0901, -1.96239, 1.74966, 2.29541, 1.74789, -0.226431, 2.21115, -2.21115}, {1.60567, -4.44089e-16, -1.55431e-15, 5.36656, -5.36656, 5.36656, -0.190167, 1.85702, 1.41407, 0.373353, -3.64588, 0.374783, -6.19624, -2.21115, 2.21115, 3.20687, -11.9346, -5.19303, -1.74966, -2.29541, -1.74789, -2.4462, 4.50655, -0.463257, 0.256242, 16.8789, 0.248757, -0.226431, 2.21115, -2.21115}, {1.60567, 8.88178e-16, 0, -1.78885, 1.78885, -1.78885, 0.570501, -5.57107, -4.24221, 0.373353, -3.64588, 0.374783, 0.226431, -2.21115, 2.21115, 9.60162, -11.662, 7.61867, -8.17233, -2.29541, -1.74789, -2.4462, 4.50655, -0.463257, 1.74966, 2.29541, 1.74789, -1.71984, 16.7947, -3.71028}, {1.60567, -3.10862e-15, 1.11022e-16, -1.78885, 1.78885, -1.78885, -0.190167, 1.85702, 1.41407, -1.12006, 10.9376, -1.12435, 0.226431, -2.21115, 2.21115, 2.4462, -4.50655, 0.463257, -1.74966, -2.29541, -1.74789, -8.86888, 4.50655, -0.463257, 8.90507, -4.86001, 8.90331, 0.534237, -5.21694, -7.86743}, {-9.76996e-15, 1.33227e-14, -7.02938, 1.78885, -6.92972e-12, 0.00253498, -1.78885, 2.33948, -2.34566, 0, -2.33948, 0, -9.36656, 3.62896e-11, -2.90954, 3.9968e-15, -2.89175, 2.89626, 9.36656, -12.2497, 9.38578, -3.9968e-15, 12.2497, -2.89626, -2.21115, 2.89175, -0.00313341, 2.21115, -8.57092e-12, 2.8994}, {-1.9984e-15, 8.88178e-16, 2.34313, -5.36656, 2.07891e-11, -0.00760494, -1.78885, 2.33948, -2.34566, 0, -2.33948, 0, -2.21115, 8.55849e-12, -12.2719, 7.15542, -12.2497, 12.2789, 2.21115, -2.89175, 0.00313341, 2.66454e-15, 2.89175, -2.89626, -2.21115, 12.2497, -0.00313341, 2.21115, -8.56426e-12, 2.8994}, {4.21885e-15, -1.77636e-15, 2.34313, 1.78885, -6.9266e-12, 0.00253498, 5.36656, -7.01844, 7.03698, 0, -2.33948, 0, -2.21115, 8.56382e-12, -2.8994, -7.15542, -2.89175, 2.88612, 2.21115, -2.89175, -9.36937, -5.32907e-15, 2.89175, -2.89626, -2.21115, 2.89175, -0.00313341, 2.21115, 9.35791, 2.8994}, {0, 0, 2.34313, 1.78885, -6.92763e-12, 0.00253498, -1.78885, 2.33948, -2.34566, 0, 7.01844, 0, -2.21115, 8.56293e-12, -2.8994, 0, -2.89175, 2.89626, 2.21115, -2.89175, 0.00313341, 0, 2.89175, -12.2688, -9.36656, 2.89175, -0.0132733, 9.36656, -9.35791, 12.282}, {-2.1843e-11, 2.07647e-11, 5.36656, -2.34313, 0, 0, 0, 2.34313, 0, 2.34313, -2.34313, 1.78885, 12.2688, 8.55538e-12, 2.21115, 2.89626, -2.89626, 0, -8.99991e-12, -12.2688, 2.21115, -12.2688, 12.2688, -7.15542, 8.99991e-12, 2.89626, -2.21115, -2.89626, -8.55538e-12, -2.21115}, {7.27862e-12, -6.92069e-12, -1.78885, 7.02938, 0, 0, -1.36297e-15, 2.34313, -1.04056e-15, 2.34313, -2.34313, 1.78885, 2.89626, 3.62377e-11, 9.36656, 2.89626, -12.2688, 5.44843e-15, -8.99503e-12, -2.89626, 2.21115, -2.89626, 2.89626, -8.4211e-16, -9.3725, 12.2688, -9.36656, -2.89626, -8.55449e-12, -2.21115}, {7.2804e-12, -6.91935e-12, -1.78885, -2.34313, 0, 0, 0, -7.02938, 0, 2.34313, -2.34313, 1.78885, 2.89626, 8.55271e-12, 2.21115, 12.2688, -2.89626, 0, -3.81206e-11, -2.89626, 9.36656, -2.89626, 2.89626, 4.44089e-16, 8.99902e-12, 2.89626, -2.21115, -12.2688, 9.3725, -9.36656}, {7.27596e-12, -6.91802e-12, -1.78885, -2.34313, 0, 0, 0, 2.34313, 0, -7.02938, 7.02938, -5.36656, 2.89626, 8.55138e-12, 2.21115, 2.89626, -2.89626, 0, -8.99325e-12, -2.89626, 2.21115, -2.89626, 2.89626, 7.15542, 9.3725, 2.89626, -2.21115, -2.89626, -9.3725, -2.21115}, {6.33782, 3.11659, -8.32035, 1.25748, 1.89399, 2.48645, -0.601124, 0.601124, -3.34812, 1.45625, -1.45625, -1.91178, -3.97294, -8.63294, -16.4474, -0.811303, -3.08413, 1.06509, 5.75885, -1.86342, 14.1028, -5.01369, 8.90912, 6.58202, -3.35435, -0.541075, -0.71033, -1.05699, 1.05699, 6.50159}, {-2.11261, -1.03886, 2.77345, -3.77244, -5.68196, -7.45934, -0.601124, 0.601124, -3.34812, 1.45625, -1.45625, -1.91178, 9.50741, 3.09846, -17.5954, 1.59319, -5.48862, 14.4576, 3.35435, 0.541075, 0.71033, 0.811303, 3.08413, -1.06509, -9.17934, 5.28392, 6.93678, -1.05699, 1.05699, 6.50159}, {-2.11261, -1.03886, 2.77345, 1.25748, 1.89399, 2.48645, 1.80337, -1.80337, 10.0444, 1.45625, -1.45625, -1.91178, 1.05699, -1.05699, -6.50159, -5.84123, -10.6601, -8.8807, 11.8048, 4.69653, -10.3835, 0.811303, 3.08413, -1.06509, -3.35435, -0.541075, -0.71033, -6.88198, 6.88198, 14.1487}, {-2.11261, -1.03886, 2.77345, 1.25748, 1.89399, 2.48645, -0.601124, 0.601124, -3.34812, -4.36874, 4.36874, 5.73533, 1.05699, -1.05699, -6.50159, -0.811303, -3.08413, 1.06509, 3.35435, 0.541075, 0.71033, 9.26172, 7.23958, -12.1589, -8.38428, -8.11702, -10.6561, 1.34751, -1.34751, 19.8941}, {-4.24616, -5.57441, -4.24476, 0.373467, -3.64699, -2.77708, -1.78885, 1.78885, -1.78885, 0, 0, 3.15102, -3.70501, 16.7991, 12.7921, 1.74951, 2.29678, 5.64381, 7.61705, -11.6633, 7.61763, -1.74951, -2.29678, -18.2479, -0.461631, 4.50793, -0.462209, 2.21115, -2.21115, -1.68373}, {1.41539, 1.85814, 1.41492, -1.1204, 10.941, 8.33125, -1.78885, 1.78885, -1.78885, 1.39933e-15, -1.39933e-15, 3.15102, -7.87269, -5.2214, -3.97595, 8.90493, -4.85864, 12.7992, 0.461631, -4.50793, 0.462209, -1.74951, -2.29678, -5.64381, -0.461631, 4.50793, -13.0663, 2.21115, -2.21115, -1.68373}, {1.41539, 1.85814, 1.41492, 0.373467, -3.64699, -2.77708, 5.36656, -5.36656, 5.36656, 0, 0, 3.15102, -2.21115, 2.21115, 1.68373, 0.255645, 16.8847, 16.7521, -5.19992, -11.9405, -5.19747, -1.74951, -2.29678, -5.64381, -0.461631, 4.50793, -0.462209, 2.21115, -2.21115, -14.2878}, {1.41539, 1.85814, 1.41492, 0.373467, -3.64699, -2.77708, -1.78885, 1.78885, -1.78885, 0, 0, -9.45305, -2.21115, 2.21115, 1.68373, 1.74951, 2.29678, 5.64381, 0.461631, -4.50793, 0.462209, -7.41106, -9.72932, -11.3035, -1.9555, 19.0959, 10.6461, 9.36656, -9.36656, 5.47169}, {2.81917, 4.24616, 5.57441, -1.67083, -0.373467, 3.64699, 0.18745, 1.78885, -1.78885, 2.4231, 0, 0, 9.91012, 3.70501, -16.7991, 1.83355, -1.74951, -2.29678, 0.18006, -7.61705, 11.6633, -11.526, 1.74951, 2.29678, -0.929861, 0.461631, -4.50793, -3.22682, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, 5.01248, 1.1204, -10.941, 0.18745, 1.78885, -1.78885, 2.4231, -1.07607e-15, 1.07607e-15, 6.98571, 7.87269, 5.2214, 1.08375, -8.90493, 4.85864, 0.929861, -0.461631, 4.50793, -1.83355, 1.74951, 2.29678, -10.6223, 0.461631, -4.50793, -3.22682, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, -1.67083, -0.373467, 3.64699, -0.56235, -5.36656, 5.36656, 2.4231, 0, 0, 3.22682, 2.21115, -2.21115, 8.51686, -0.255645, -16.8847, 4.68875, 5.19992, 11.9405, -1.83355, 1.74951, 2.29678, -0.929861, 0.461631, -4.50793, -12.9192, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, -1.67083, -0.373467, 3.64699, 0.18745, 1.78885, -1.78885, -7.2693, 0, 0, 3.22682, 2.21115, -2.21115, 1.83355, -1.74951, -2.29678, 0.929861, -0.461631, 4.50793, 1.92534, 7.41106, 9.72932, 5.75345, 1.9555, -19.0959, -3.97662, -9.36656, 9.36656}, {-3.55271e-15, -7.99361e-15, -9.45441, -3.15147, 0, 0, 1.78937, -1.78885, -1.78885, 1.3621, 1.78885, -1.36261, 16.5013, -3.55271e-15, -3.89543, 1.68365, 2.21115, 2.21115, -9.36924, 9.36656, 5.47113, -7.13206, -9.36656, 3.23931, 2.21178, -2.21115, 1.68428, -3.89543, 3.55271e-15, 3.89543}, {-2.22045e-16, 2.88658e-15, 3.15147, 9.45441, 0, 0, 1.78937, -1.78885, -1.78885, 1.3621, 1.78885, -1.36261, 3.89543, -1.42109e-14, -16.5013, -5.47381, 9.36656, 9.36656, -2.21178, 2.21115, -1.68428, -1.68365, -2.21115, -2.21115, -3.23663, -9.36656, 7.13474, -3.89543, 3.55271e-15, 3.89543}, {2.22045e-16, 0, 3.15147, -3.15147, 0, 0, -5.3681, 5.36656, 5.36656, 1.3621, 1.78885, -1.36261, 3.89543, 0, -3.89543, 14.2895, 2.21115, 2.21115, -2.21178, 2.21115, -14.2902, -1.68365, -2.21115, -2.21115, 2.21178, -2.21115, 1.68428, -9.34384, -7.15542, 9.34589}, {8.88178e-16, 1.55431e-15, 3.15147, -3.15147, 0, 0, 1.78937, -1.78885, -1.78885, -4.08631, -5.36656, 4.08784, 3.89543, -2.22045e-15, -3.89543, 1.68365, 2.21115, 2.21115, -2.21178, 2.21115, -1.68428, -1.68365, -2.21115, -14.817, 14.8177, -2.21115, 1.68428, -11.0529, 7.15542, 11.0508}, {-5.22583, 5.22504, 3.98456, 2.34612, 2.92755e-15, 1.19114e-15, -2.54361, 0.198607, 1.93944, -1.54445, 1.54307, -0.611252, -14.4376, 2.15284, 1.64173, 0.244118, -0.245492, -2.39728, 11.1654, 1.11292, -8.51331, 5.93368, -5.9268, 4.84229, -0.990917, -1.90734, 0.755549, 5.05312, -2.15284, -1.64173}, {1.74194, -1.74168, -1.32819, -7.03835, -2.34918e-15, 4.45681e-15, -2.54361, 0.198607, 1.93944, -1.54445, 1.54307, -0.611252, -12.0209, 9.11956, 6.95448, 10.4186, -1.03992, -10.155, 0.990917, 1.90734, -0.755549, -0.244118, 0.245492, 2.39728, 5.18688, -8.07964, 3.20056, 5.05312, -2.15284, -1.64173}, {1.74194, -1.74168, -1.32819, 2.34612, 0, 0, 7.63084, -0.595821, -5.81832, -1.54445, 1.54307, -0.611252, -5.05312, 2.15284, 1.64173, -9.14035, -0.245492, -2.39728, -5.97686, 8.87406, 4.5572, -0.244118, 0.245492, 2.39728, -0.990917, -1.90734, 0.755549, 11.2309, -8.32513, 0.803277}, {1.74194, -1.74168, -1.32819, 2.34612, -8.98735e-16, 3.56012e-16, -2.54361, 0.198607, 1.93944, 4.63335, -4.62922, 1.83376, -5.05312, 2.15284, 1.64173, 0.244118, -0.245492, -2.39728, 0.990917, 1.90734, -0.755549, -7.21189, 7.21221, 7.71003, -10.3754, -1.90734, 0.755549, 15.2276, -2.94726, -9.39949}, {-9.45441, 1.33227e-14, -1.06581e-14, -1.78937, -1.78885, -1.78885, -1.3621, 1.78885, -1.36261, 0, 0, 3.15147, 5.47381, 9.36656, 9.36656, 3.89543, -5.32907e-15, 3.89543, 3.23663, -9.36656, 7.13474, -3.89543, 5.32907e-15, -16.5013, 2.21178, 2.21115, -1.68428, 1.68365, -2.21115, -2.21115}, {3.15147, 2.7318e-15, 0, 5.3681, 5.36656, 5.36656, -1.3621, 1.78885, -1.36261, 1.06566e-15, -1.39953e-15, 3.15147, -14.2895, 2.21115, 2.21115, 9.34384, -7.15542, 9.34589, -2.21178, -2.21115, 1.68428, -3.89543, -1.33227e-15, -3.89543, 2.21178, 2.21115, -14.2902, 1.68365, -2.21115, -2.21115}, {3.15147, 0, 2.22045e-15, -1.78937, -1.78885, -1.78885, 4.08631, -5.36656, 4.08784, 0, 0, 3.15147, -1.68365, 2.21115, 2.21115, 11.0529, 7.15542, 11.0508, -14.8177, -2.21115, 1.68428, -3.89543, 0, -3.89543, 2.21178, 2.21115, -1.68428, 1.68365, -2.21115, -14.817}, {3.15147, 0, 0, -1.78937, -1.78885, -1.78885, -1.3621, 1.78885, -1.36261, 0, 0, -9.45441, -1.68365, 2.21115, 2.21115, 3.89543, 0, 3.89543, -2.21178, -2.21115, 1.68428, -16.5013, 0, -3.89543, 9.36924, 9.36656, 5.47113, 7.13206, -9.36656, 3.23931}, {-7.03835, 0, -2.66454e-15, -2.34612, 2.34348, -1.78885, -1.03933e-11, 0.00114147, 1.78885, 0, -2.34462, 0, 9.38447, -12.2706, 9.36656, 2.89996, -2.89811, 1.33227e-15, -2.89996, -0.00597681, -9.36656, -2.89996, 12.2766, -1.33227e-15, 2.89996, 0.00141093, 2.21115, 1.28469e-11, 2.8967, -2.21115}, {2.34612, -3.9968e-15, 0, 7.03835, -7.03044, 5.36656, -1.03933e-11, 0.00114147, 1.78885, 0, -2.34462, 0, -9.38447, -2.8967, 2.21115, 2.89996, -2.90268, -7.15542, -2.89996, -0.00141093, -2.21115, -2.89996, 2.89811, 0, 2.89996, 9.37989, 2.21115, 1.28469e-11, 2.8967, -2.21115}, {2.34612, -1.77636e-15, 0, -2.34612, 2.34348, -1.78885, 3.11847e-11, -0.00342441, -5.36656, 0, -2.34462, 0, -1.28494e-11, -2.8967, 2.21115, 12.2844, -12.272, 7.15542, -12.2844, -0.00141093, -2.21115, -2.89996, 2.89811, 0, 2.89996, 0.00141093, 2.21115, 1.28488e-11, 12.2752, -2.21115}, {2.34612, 2.66454e-15, 0, -2.34612, 2.34348, -1.78885, -1.03918e-11, 0.00114147, 1.78885, 0, 7.03386, 0, -1.28455e-11, -2.8967, 2.21115, 2.89996, -2.89811, 0, -2.89996, -0.00141093, -2.21115, -12.2844, 2.89811, 0, 12.2844, -9.37251, 9.36656, 5.4412e-11, 2.89213, -9.36656}, {-4.44089e-16, 0, 5.41667, 2.01922, -1.97048e-12, 0.623753, -1.44665, -1.44665, 0.584061, -0.572575, 1.44665, 0.597742, -10.5728, 1.03177e-11, -1.03422, -0.707741, 1.78815, -1.49294, 7.57474, 7.57474, -0.826394, 2.99804, -7.57474, -0.898027, -1.78815, -1.78815, -1.50985, 2.4959, -2.43583e-12, -1.46079}, {-1.11022e-16, 2.22045e-16, -1.80556, -6.05767, 5.9153e-12, -1.87126, -1.44665, -1.44665, 0.584061, -0.572575, 1.44665, 0.597742, -2.4959, 2.43716e-12, 8.68301, 5.07885, 7.57474, -3.82918, 1.78815, 1.78815, 1.50985, 0.707741, -1.78815, 1.49294, 0.502145, -7.57474, -3.90082, 2.4959, -2.43716e-12, -1.46079}, {1.11022e-16, 0, -1.80556, 2.01922, -1.97103e-12, 0.623753, 4.33994, 4.33994, -1.75218, -0.572575, 1.44665, 0.597742, -2.4959, 2.43627e-12, 1.46079, -8.78463, 1.78815, -3.98795, 1.78815, 1.78815, 8.73207, 0.707741, -1.78815, 1.49294, -1.78815, -1.78815, -1.50985, 4.7862, -5.78659, -3.85176}, {-1.11022e-16, 2.22045e-16, -1.80556, 2.01922, -1.97085e-12, 0.623753, -1.44665, -1.44665, 0.584061, 1.71772, -4.33994, -1.79323, -2.4959, 2.43583e-12, 1.46079, -0.707741, 1.78815, -1.49294, 1.78815, 1.78815, 1.50985, 0.707741, -1.78815, 8.71516, -9.86504, -1.78815, -4.00486, 8.28248, 5.78659, -3.79703}, {8.56414, 1.25642, -1.25642, 2.63957, -0.971716, -0.633952, 1.54777, 0.0578944, 1.54777, -1.33263, 1.33263, -1.33263, -10.2923, 5.60564, 2.80174, -5.17584, 1.12955, -1.12955, -4.57563, 0.214536, -8.62192, 10.5064, -6.46006, 6.46006, -1.61547, -0.446113, 2.43083, -0.265934, -1.71878, -0.265934}, {-2.85471, -0.418807, 0.418807, -7.91871, 2.91515, 1.90186, 1.54777, 0.0578944, 1.54777, -1.33263, 1.33263, -1.33263, 11.6848, 3.39401, -1.4093, -11.3669, 0.897968, -7.32064, 1.61547, 0.446113, -2.43083, 5.17584, -1.12955, 1.12955, 3.71505, -5.77663, 7.76134, -0.265934, -1.71878, -0.265934}, {-2.85471, -0.418807, 0.418807, 2.63957, -0.971716, -0.633952, -4.64332, -0.173683, -4.64332, -1.33263, 1.33263, -1.33263, 0.265934, 1.71878, 0.265934, -15.7341, 5.01641, 1.40626, 13.0343, 2.12134, -4.10606, 5.17584, -1.12955, 1.12955, -1.61547, -0.446113, 2.43083, 5.06458, -7.0493, 5.06458}, {-2.85471, -0.418807, 0.418807, 2.63957, -0.971716, -0.633952, 1.54777, 0.0578944, 1.54777, 3.99789, -3.99789, 3.99789, 0.265934, 1.71878, 0.265934, -5.17584, 1.12955, -1.12955, 1.61547, 0.446113, -2.43083, 16.5947, 0.545684, -0.545684, -12.1737, 3.44075, 4.96664, -6.45703, -1.95036, -6.45703}, {-0.339403, 0.339403, -5.15641, -0.164984, -1.44068, -0.164984, 1.07377, 0.531894, -0.531894, -1.02192, 1.02192, -1.02192, 0.724024, 7.68336, -1.26069, -1.12333, 1.12333, 0.861388, -5.7622, -2.64519, 0.660475, 5.21103, -5.21103, 3.22631, 1.4671, 0.517615, 1.4671, -0.0640894, -1.92063, 1.92063}, {0.113134, -0.113134, 1.7188, 0.494951, 4.32205, 0.494951, 1.07377, 0.531894, -0.531894, -1.02192, 1.02192, -1.02192, -0.388448, 2.37316, -8.79583, -5.41842, -1.00425, 2.98896, -1.4671, -0.517615, -1.4671, 1.12333, -1.12333, -0.861388, 5.5548, -3.57008, 5.5548, -0.0640894, -1.92063, 1.92063}, {0.113134, -0.113134, 1.7188, -0.164984, -1.44068, -0.164984, -3.22132, -1.59568, 1.59568, -1.02192, 1.02192, -1.02192, 0.0640894, 1.92063, -1.92063, -0.463392, 6.88606, 1.52132, -1.91964, -0.0650781, -8.34231, 1.12333, -1.12333, -0.861388, 1.4671, 0.517615, 1.4671, 4.02361, -6.00832, 6.00832}, {0.113134, -0.113134, 1.7188, -0.164984, -1.44068, -0.164984, 1.07377, 0.531894, -0.531894, 3.06577, -3.06577, 3.06577, 0.0640894, 1.92063, -1.92063, -1.12333, 1.12333, 0.861388, -1.4671, -0.517615, -1.4671, 0.67079, -0.67079, -7.7366, 2.12703, 6.28035, 2.12703, -4.35919, -4.0482, 4.0482}, {-1.94182, 3.40923, 1.10711, 0.155006, 1.62575, -1.6184, 0.710689, -0.184627, 1.53026, -1.51297, -0.304717, 0.45717, -1.6117, -7.10787, 8.93018, -1.07006, -1.78133, 0.108939, -4.52129, 2.3714, -7.5564, 7.12193, 3.0002, -1.93762, 1.67853, -1.63289, 1.43535, 0.991672, 0.604862, -2.4566}, {0.647273, -1.13641, -0.369036, -0.465018, -4.87726, 4.85519, 0.710689, -0.184627, 1.53026, -1.51297, -0.304717, 0.45717, -3.58076, 3.94077, 3.93275, -3.91281, -1.04282, -6.01211, -1.67853, 1.63289, -1.43535, 1.07006, 1.78133, -0.108939, 7.73041, -0.414023, -0.393324, 0.991672, 0.604862, -2.4566}, {0.647273, -1.13641, -0.369036, 0.155006, 1.62575, -1.6184, -2.13207, 0.553881, -4.59079, -1.51297, -0.304717, 0.45717, -0.991672, -0.604862, 2.4566, -1.69008, -8.28434, 6.58252, -4.26763, 6.17852, 0.0407896, 1.07006, 1.78133, -0.108939, 1.67853, -1.63289, 1.43535, 7.04355, 1.82373, -4.28528}, {0.647273, -1.13641, -0.369036, 0.155006, 1.62575, -1.6184, 0.710689, -0.184627, 1.53026, 4.53891, 0.91415, -1.37151, -0.991672, -0.604862, 2.4566, -1.07006, -1.78133, 0.108939, -1.67853, 1.63289, -1.43535, -1.51903, 6.32696, 1.36721, 1.05851, -8.1359, 7.90894, -1.85108, 1.34337, -8.57765}, {-5.53886e-11, 0.00342441, 5.36656, 2.34612, 1.36758e-15, 3.12566e-15, 0, -2.34462, 0, -2.34612, 2.34576, 1.78885, -12.2844, 0.00141093, 2.21115, -2.89996, 2.89811, -3.86352e-15, -2.28213e-11, 12.278, 2.21115, 12.2844, -12.2812, -7.15542, 2.28213e-11, -2.89952, -2.21115, 2.89996, -0.00141093, -2.21115}, {1.22999e-11, -0.00114147, -1.78885, -7.03835, -8.19548e-15, -3.12566e-15, 0, -2.34462, 0, -2.34612, 2.34576, 1.78885, -2.89996, 0.00597681, 9.36656, -2.89996, 12.2766, -1.28784e-15, -1.52034e-11, 2.89952, 2.21115, 2.89996, -2.89811, 1.73193e-15, 9.38447, -12.2826, -9.36656, 2.89996, -0.00141093, -2.21115}, {1.22964e-11, -0.00114147, -1.78885, 2.34612, 0, 0, 0, 7.03386, 0, -2.34612, 2.34576, 1.78885, -2.89996, 0.00141093, 2.21115, -12.2844, 2.89811, 0, -6.43876e-11, 2.90409, 9.36656, 2.89996, -2.89811, 4.44089e-16, 1.51994e-11, -2.89952, -2.21115, 12.2844, -9.38446, -9.36656}, {1.22991e-11, -0.00114147, -1.78885, 2.34612, -1.36625e-15, -1.04189e-15, 0, -2.34462, 0, 7.03835, -7.03729, -5.36656, -2.89996, 0.00141093, 2.21115, -2.89996, 2.89811, 1.28784e-15, -1.52025e-11, 2.89952, 2.21115, 2.89996, -2.89354, 7.15542, -9.38447, -2.89952, -2.21115, 2.89996, 9.37707, -2.21115}, {-4.82547e-12, 4.93775, 1.89782, -1.17597e-12, 1.20344, -0.85762, 1.44665, -0.256711, 0.444168, -1.44665, 0.69919, 1.04606, 4.16911e-12, -4.26682, 5.2725, -1.78815, -1.17022, 0.511055, -7.57474, 3.37862, -1.54375, 7.57474, -1.62654, -4.69529, 1.78815, -2.35178, -0.232925, 5.34683e-13, -0.546933, -1.84202}, {1.60938e-12, -1.64592, -0.632608, 3.52988e-12, -3.61031, 2.57286, 1.44665, -0.256711, 0.444168, -1.44665, 0.69919, 1.04606, -6.97309e-12, 7.13059, 4.37245, -7.57474, -0.143371, -1.26562, -1.78815, 2.35178, 0.232925, 1.78815, 1.17022, -0.511055, 7.57474, -5.14853, -4.41716, 5.34905e-13, -0.546933, -1.84202}, {1.60738e-12, -1.64592, -0.632608, -1.17532e-12, 1.20344, -0.85762, -4.33994, 0.770134, -1.3325, -1.44665, 0.69919, 1.04606, -5.34239e-13, 0.546933, 1.84202, -1.78815, -5.98397, 3.94153, -1.78815, 8.93544, 2.76336, 1.78815, 1.17022, -0.511055, 1.78815, -2.35178, -0.232925, 5.78659, -3.34369, -6.02626}, {1.60805e-12, -1.64592, -0.632608, -1.17575e-12, 1.20344, -0.85762, 1.44665, -0.256711, 0.444168, 4.33994, -2.09757, -3.13818, -5.34461e-13, 0.546933, 1.84202, -1.78815, -1.17022, 0.511055, -1.78815, 2.35178, 0.232925, 1.78815, 7.75388, 2.01938, 1.78815, -7.16552, 3.19755, -5.78659, 0.479913, -3.61869}, {3.67809, 0.0745323, 3.75892, 1.30596, 0.948366, 0.152693, 0.0437324, -1.35943, 0.016287, -0.123659, 0.435911, 1.08399, -5.32262, -4.935, 0.74925, -1.66831, 0.508107, -0.20887, 1.28647, 7.14879, 1.46348, 2.16294, -2.25175, -4.1271, -1.4614, -1.71106, -1.52863, 0.0987948, 1.14154, -1.36002}, {-1.22603, -0.0248441, -1.25297, -3.91787, -2.8451, -0.458078, 0.0437324, -1.35943, 0.016287, -0.123659, 0.435911, 1.08399, 4.80532, -1.04216, 6.37191, -1.84323, 5.94584, -0.274019, 1.4614, 1.71106, 1.52863, 1.66831, -0.508107, 0.20887, -0.966762, -3.4547, -5.8646, 0.0987948, 1.14154, -1.36002}, {-1.22603, -0.0248441, -1.25297, 1.30596, 0.948366, 0.152693, -0.131197, 4.0783, -0.0488611, -0.123659, 0.435911, 1.08399, -0.0987948, -1.14154, 1.36002, -6.89213, -3.28536, -0.819641, 6.36551, 1.81044, 6.54052, 1.66831, -0.508107, 0.20887, -1.4614, -1.71106, -1.52863, 0.593431, -0.602108, -5.69599}, {-1.22603, -0.0248441, -1.25297, 1.30596, 0.948366, 0.152693, 0.0437324, -1.35943, 0.016287, 0.370977, -1.30773, -3.25198, -0.0987948, -1.14154, 1.36002, -1.66831, 0.508107, -0.20887, 1.4614, 1.71106, 1.52863, 6.57242, -0.40873, 5.22076, -6.68522, -5.50453, -2.1394, -0.0761347, 6.57927, -1.42517}, {5.37088, 5.36291, 5.36619, 1.99086e-15, 6.84977e-16, 1.60567, 0.376399, 3.64451, 0.373213, 1.41389, -1.85687, -0.190152, 2.21292, 2.20964, -6.1964, -0.465254, -4.50486, -2.44603, 0.242074, -16.8733, 0.256821, -5.19032, 11.9323, 3.20664, -1.74767, 2.29522, -1.74967, -2.21292, -2.20964, -0.226277}, {-1.79029, -1.78764, -1.78873, -1.24068e-15, 6.57876e-15, -4.817, 0.376399, 3.64451, 0.373213, 1.41389, -1.85687, -0.190152, 9.37409, 9.36019, 7.3812, -1.97085, -19.0829, -3.93889, 1.74767, -2.29522, 1.74967, 0.465254, 4.50486, 2.44603, -7.40324, 9.72271, -0.989068, -2.21292, -2.20964, -0.226277}, {-1.79029, -1.78764, -1.78873, 0, 0, 1.60567, -1.1292, -10.9335, -1.11964, 1.41389, -1.85687, -0.190152, 2.21292, 2.20964, 0.226277, -0.465254, -4.50486, -8.8687, 8.90884, 4.85533, 8.90459, 0.465254, 4.50486, 2.44603, -1.74767, 2.29522, -1.74967, -7.8685, 5.21784, 0.53433}, {-1.79029, -1.78764, -1.78873, -5.63596e-16, 7.40172e-16, 1.60567, 0.376399, 3.64451, 0.373213, -4.24168, 5.57061, 0.570455, 2.21292, 2.20964, 0.226277, -0.465254, -4.50486, -2.44603, 1.74767, -2.29522, 1.74967, 7.62642, 11.6554, 9.60095, -1.74767, 2.29522, -8.17235, -3.71852, -16.7877, -1.71913}, {1.24345e-14, 1.33227e-14, -9.45441, 0, -3.15057, 0, 1.78885, 1.78834, -1.78885, -1.78885, 1.36222, -1.36261, 4.88498e-15, 16.4966, -3.89543, -2.21115, 1.6838, 2.21115, -9.36656, -9.36389, 5.47113, 9.36656, -7.1327, 3.23931, 2.21115, 2.21051, 1.68428, -4.88498e-15, -3.89432, 3.89543}, {1.11022e-15, 3.77476e-15, 3.15147, 0, 9.4517, 0, 1.78885, 1.78834, -1.78885, -1.78885, 1.36222, -1.36261, -5.32907e-15, 3.89432, -16.5013, -9.36656, -5.46957, 9.36656, -2.21115, -2.21051, -1.68428, 2.21115, -1.6838, -2.21115, 9.36656, -3.23838, 7.13474, 1.33227e-15, -3.89432, 3.89543}, {-1.11022e-15, -8.65974e-15, 3.15147, 0, -3.15057, 0, -5.36656, -5.36503, 5.36656, -1.78885, 1.36222, -1.36261, 1.33227e-15, 3.89432, -3.89543, -2.21115, 14.2861, 2.21115, -2.21115, -2.21051, -14.2902, 2.21115, -1.6838, -2.21115, 2.21115, 2.21051, 1.68428, 7.15542, -9.34321, 9.34589}, {0, 2.22045e-16, 3.15147, 0, -3.15057, 0, 1.78885, 1.78834, -1.78885, 5.36656, -4.08667, 4.08784, 0, 3.89432, -3.89543, -2.21115, 1.6838, 2.21115, -2.21115, -2.21051, -1.68428, 2.21115, -1.6838, -14.817, 2.21115, 14.8128, 1.68428, -7.15542, -11.0477, 11.0508}, {-5.91616e-12, 6.05767, -4.31695, 0, 0, -1.80556, 1.44665, 0.572575, -0.146817, -1.44665, 1.44665, 0.51339, -2.43761e-12, 2.4959, 7.67533, -1.78815, -0.707741, 2.41326, -7.57474, -0.502145, -1.00994, 7.57474, -5.07885, -4.46683, 1.78815, -1.78815, 1.5972, 2.43761e-12, -2.4959, -0.45311}, {1.97087e-12, -2.01922, 1.43898, 0, 0, 5.41667, 1.44665, 0.572575, -0.146817, -1.44665, 1.44665, 0.51339, -1.03197e-11, 10.5728, -5.30282, -7.57474, -2.99804, 3.00053, -1.78815, 1.78815, -1.5972, 1.78815, 0.707741, -2.41326, 7.57474, -7.57474, -0.456356, 2.43605e-12, -2.4959, -0.45311}, {1.97242e-12, -2.01922, 1.43898, 0, 0, -1.80556, -4.33994, -1.71772, 0.44045, -1.44665, 1.44665, 0.51339, -2.43783e-12, 2.4959, 0.45311, -1.78815, -0.707741, 9.63549, -1.78815, 9.86504, -7.35313, 1.78815, 0.707741, -2.41326, 1.78815, -1.78815, 1.5972, 5.78659, -8.28248, -2.50667}, {1.97198e-12, -2.01922, 1.43898, 0, 0, -1.80556, 1.44665, 0.572575, -0.146817, 4.33994, -4.33994, -1.54017, -2.43761e-12, 2.4959, 0.45311, -1.78815, -0.707741, 2.41326, -1.78815, 1.78815, -1.5972, 1.78815, 8.78463, -8.16919, 1.78815, -1.78815, 8.81943, -5.78659, -4.7862, 0.134156}, {-4.33994, -4.33994, 1.75218, -1.97211e-12, -2.01922, 1.43898, 0, 0, -1.80556, -1.44665, 0.572575, 0.950635, -1.78815, 8.78463, -6.81267, 2.43766e-12, 2.4959, 0.45311, -1.78815, -1.78815, 10.176, 5.78659, -4.7862, -4.25565, 1.78815, 1.78815, -2.95373, 1.78815, -0.707741, 1.05674}, {1.44665, 1.44665, -0.584061, 5.92068e-12, 6.05767, -4.31695, 0, 0, -1.80556, -1.44665, 0.572575, 0.950635, -7.57474, -5.07885, 1.2795, 2.43945e-12, 2.4959, 7.67533, -1.78815, -1.78815, 2.95373, -2.43981e-12, -2.4959, -0.45311, 7.57474, -0.502145, -6.75627, 1.78815, -0.707741, 1.05674}, {1.44665, 1.44665, -0.584061, -1.97247e-12, -2.01922, 1.43898, 0, 0, 5.41667, -1.44665, 0.572575, 0.950635, -1.78815, 0.707741, -1.05674, 1.0328e-11, 10.5728, -5.30282, -7.57474, -7.57474, 5.28997, -2.43847e-12, -2.4959, -0.45311, 1.78815, 1.78815, -2.95373, 7.57474, -2.99804, -2.7458}, {1.44665, 1.44665, -0.584061, -1.97283e-12, -2.01922, 1.43898, 0, 0, -1.80556, 4.33994, -1.71772, -2.8519, -1.78815, 0.707741, -1.05674, 2.43856e-12, 2.4959, 0.45311, -1.78815, -1.78815, 2.95373, -5.78659, -8.28248, 1.88313, 1.78815, 9.86504, -8.70966, 1.78815, -0.707741, 8.27896}, {1.71772, 0.356094, 4.33994, 2.01922, -0.477594, 1.7444e-12, -1.44665, -0.786183, 1.44665, 0, 1.38248, 0, -9.86504, 2.64743, 1.78815, -0.707741, 1.56212, -1.78815, 8.28248, 4.26323, -5.78659, 0.707741, -7.09202, 1.78815, -2.4959, -1.11849, -2.1562e-12, 1.78815, -0.737058, -1.78815}, {-0.572575, -0.118698, -1.44665, -6.05767, 1.43278, -5.23264e-12, -1.44665, -0.786183, 1.44665, 4.96495e-16, 1.38248, -4.96495e-16, 0.502145, 1.21185, 7.57474, 5.07885, 4.70685, -7.57474, 2.4959, 1.11849, 2.15571e-12, 0.707741, -1.56212, 1.78815, -2.4959, -6.6484, -2.15337e-12, 1.78815, -0.737058, -1.78815}, {-0.572575, -0.118698, -1.44665, 2.01922, -0.477594, 1.7444e-12, 4.33994, 2.35855, -4.33994, 0, 1.38248, 0, -1.78815, 0.737058, 1.78815, -8.78463, 3.47249, -1.78815, 4.7862, 1.59329, 5.78659, 0.707741, -1.56212, 1.78815, -2.4959, -1.11849, -2.1562e-12, 1.78815, -6.26696, -1.78815}, {-0.572575, -0.118698, -1.44665, 2.01922, -0.477594, 1.74332e-12, -1.44665, -0.786183, 1.44665, 0, -4.14743, 0, -1.78815, 0.737058, 1.78815, -0.707741, 1.56212, -1.78815, 2.4959, 1.11849, 2.15522e-12, 2.99804, -1.08732, 7.57474, -10.5728, 0.791882, -9.12813e-12, 7.57474, 2.40768, -7.57474}, {-3.82778, -1.72626, -1.72406, -1.39459, 0.310766, 0.31037, -0.00684175, -1.71025, 0.635056, 0.125505, 0.824062, -1.52011, 5.72503, -2.33845, -2.33547, 1.73226, 1.72986, -1.16861, -1.54131, 8.24373, -4.03555, -2.23428, -5.02611, 7.24907, 1.56867, -1.40273, 1.49533, -0.146676, 1.09539, 1.09399}, {1.27593, 0.575422, 0.574688, 4.18377, -0.932299, -0.93111, -0.00684175, -1.71025, 0.635056, 0.125505, 0.824062, -1.52011, -4.95703, -3.39708, -3.39274, 1.75963, 8.57086, -3.70884, -1.56867, 1.40273, -1.49533, -1.73226, -1.72986, 1.16861, 1.06665, -4.69898, 7.57578, -0.146676, 1.09539, 1.09399}, {1.27593, 0.575422, 0.574688, -1.39459, 0.310766, 0.31037, 0.0205252, 5.13075, -1.90517, 0.125505, 0.824062, -1.52011, 0.146676, -1.09539, -1.09399, 7.31062, 0.486792, -2.41009, -6.67238, -0.898961, -3.79408, -1.73226, -1.72986, 1.16861, 1.56867, -1.40273, 1.49533, -0.648696, -2.20086, 7.17445}, {1.27593, 0.575422, 0.574688, -1.39459, 0.310766, 0.31037, -0.00684175, -1.71025, 0.635056, -0.376515, -2.47219, 4.56034, 0.146676, -1.09539, -1.09399, 1.73226, 1.72986, -1.16861, -1.56867, 1.40273, -1.49533, -6.83597, -4.03154, -1.13014, 7.14703, -2.64579, 0.253846, -0.119309, 7.93639, -1.44623}, {4.08784, 5.36656, -4.08784, 3.15147, -2.79907e-15, -3.33475e-16, -1.78885, 1.78885, 1.78885, 0, 0, -3.15147, -14.817, 2.21115, -1.68428, -1.68428, -2.21115, -2.21115, 11.0508, -7.15542, -11.0508, 1.68428, 2.21115, 14.817, -3.89543, 3.45984e-15, 3.89543, 2.21115, -2.21115, 1.68428}, {-1.36261, -1.78885, 1.36261, -9.45441, 4.1986e-15, 1.15954e-14, -1.78885, 1.78885, 1.78885, 0, 0, -3.15147, 3.23931, 9.36656, -7.13474, 5.47113, -9.36656, -9.36656, 3.89543, -1.28583e-15, -3.89543, 1.68428, 2.21115, 2.21115, -3.89543, 1.72992e-15, 16.5013, 2.21115, -2.21115, 1.68428}, {-1.36261, -1.78885, 1.36261, 3.15147, 0, 0, 5.36656, -5.36656, -5.36656, 0, 0, -3.15147, -2.21115, 2.21115, -1.68428, -14.2902, -2.21115, -2.21115, 9.34589, 7.15542, -9.34589, 1.68428, 2.21115, 2.21115, -3.89543, 0, 3.89543, 2.21115, -2.21115, 14.2902}, {-1.36261, -1.78885, 1.36261, 3.15147, 0, 2.46559e-15, -1.78885, 1.78885, 1.78885, 0, 0, 9.45441, -2.21115, 2.21115, -1.68428, -1.68428, -2.21115, -2.21115, 3.89543, 4.44089e-16, -3.89543, 7.13474, 9.36656, -3.23931, -16.5013, 0, 3.89543, 9.36656, -9.36656, -5.47113}, {1.73341, -4.36745, 1.08767, 0, 0, 1.17684, 2.01922, 1.68048e-12, -0.615915, -1.44142, -1.45582, -0.198371, 0.714206, -1.79949, -5.71389, -2.4959, -2.07719e-12, -0.693346, -9.85858, -1.79949, 3.67312, 8.26156, 5.82327, 1.48683, 1.78169, 1.79949, -1.20946, -0.714206, 1.79949, 1.00651}, {-0.577805, 1.45582, -0.362558, 2.02028e-15, 3.82793e-15, -3.53053, 2.01922, 1.68206e-12, -0.615915, -1.44142, -1.45582, -0.198371, 3.02542, -7.62276, 0.443719, -10.5728, -8.8058e-12, 1.77031, -1.78169, -1.79949, 1.20946, 2.4959, 2.0772e-12, 0.693346, 7.54736, 7.62276, -0.415974, -0.714206, 1.79949, 1.00651}, {-0.577805, 1.45582, -0.362558, 0, 0, 1.17684, -6.05767, -5.04417e-12, 1.84774, -1.44142, -1.45582, -0.198371, 0.714206, -1.79949, -1.00651, -2.4959, -2.07831e-12, -5.40072, 0.529529, -7.62276, 2.65969, 2.4959, 2.07795e-12, 0.693346, 1.78169, 1.79949, -1.20946, 5.05146, 7.62276, 1.8}, {-0.577805, 1.45582, -0.362558, 0, 0, 1.17684, 2.01922, 1.68121e-12, -0.615915, 4.32425, 4.36745, 0.595113, 0.714206, -1.79949, -1.00651, -2.4959, -2.07809e-12, -0.693346, -1.78169, -1.79949, 1.20946, 4.80711, -5.82327, 2.14358, 1.78169, 1.79949, -5.91683, -8.79109, 1.79949, 3.47017}, {-4.91714, 2.88338, 1.92681, -0.336451, -0.850591, 0.85104, -1.79955, 0.555362, -0.55742, 0.496952, 1.25636, 0.348649, -0.264293, 5.64177, -3.66222, 2.64024, 0.364922, -0.362934, 7.39658, -1.7199, 3.71258, -4.62805, -5.39034, -1.03166, -0.198389, -0.501553, -1.4829, 1.6101, -2.23941, 0.258056}, {1.63905, -0.961127, -0.642269, 1.00935, 2.55177, -2.55312, -1.79955, 0.555362, -0.55742, 0.496952, 1.25636, 0.348649, -8.16629, 6.08391, 2.31102, 9.83843, -1.85653, 1.86675, 0.198389, 0.501553, 1.4829, -2.64024, -0.364922, 0.362934, -2.1862, -5.52697, -2.87749, 1.6101, -2.23941, 0.258056}, {1.63905, -0.961127, -0.642269, -0.336451, -0.850591, 0.85104, 5.39864, -1.66609, 1.67226, 0.496952, 1.25636, 0.348649, -1.6101, 2.23941, -0.258056, 3.98605, 3.76729, -3.76709, -6.3578, 4.34606, 4.05197, -2.64024, -0.364922, 0.362934, -0.198389, -0.501553, -1.4829, -0.377708, -7.26483, -1.13654}, {1.63905, -0.961127, -0.642269, -0.336451, -0.850591, 0.85104, -1.79955, 0.555362, -0.55742, -1.49085, -3.76907, -1.04595, -1.6101, 2.23941, -0.258056, 2.64024, 0.364922, -0.362934, 0.198389, 0.501553, 1.4829, -9.19643, 3.47958, 2.93201, 1.14742, 2.90081, -4.88706, 8.80829, -4.46086, 2.48774}, {10.941, -4.49288, 1.1204, 1.85814, 0.691786, -1.41539, 0, -2.17235, 0, 1.78885, -0.0170635, 1.78885, -5.2214, -5.47341, 7.87269, -2.29678, 1.83008, 1.74951, 4.50793, 9.5234, 0.461631, -4.85864, -1.76182, -8.90493, -4.50793, -0.834003, -0.461631, -2.21115, 2.70626, -2.21115}, {-3.64699, 1.49763, -0.373467, -5.57441, -2.07536, 4.24616, 0, -2.17235, 0, 1.78885, -0.0170635, 1.78885, 16.7991, -8.69677, 3.70501, -2.29678, 10.5195, 1.74951, 4.50793, 0.834003, 0.461631, 2.29678, -1.83008, -1.74951, -11.6633, -0.76575, -7.61705, -2.21115, 2.70626, -2.21115}, {-3.64699, 1.49763, -0.373467, 1.85814, 0.691786, -1.41539, 0, 6.51705, 0, 1.78885, -0.0170635, 1.78885, 2.21115, -2.70626, 2.21115, -9.72932, -0.937068, 7.41106, 19.0959, -5.15651, 1.9555, 2.29678, -1.83008, -1.74951, -4.50793, -0.834003, -0.461631, -9.36656, 2.77452, -9.36656}, {-3.64699, 1.49763, -0.373467, 1.85814, 0.691786, -1.41539, 0, -2.17235, 0, -5.36656, 0.0511904, -5.36656, 2.21115, -2.70626, 2.21115, -2.29678, 1.83008, 1.74951, 4.50793, 0.834003, 0.461631, 16.8847, -7.82059, -0.255645, -11.9405, -3.60115, 5.19992, -2.21115, 11.3957, -2.21115}, {-4.62937, 1.83228, -4.62937, -1.60567, 0, 0, -0.136178, -1.32981, -1.74185, 0.198723, 1.94057, 0.198723, 6.49998, 0.754941, -1.90741, 2.15304, 1.64373, 2.15304, -1.19437, 7.71791, 7.21302, -2.94793, -9.40601, -2.94793, 1.73908, -2.39867, -0.245635, -0.0773091, -0.754941, 1.90741}, {1.54312, -0.61076, 1.54312, 4.817, 0, 0, -0.136178, -1.32981, -1.74185, 0.198723, 1.94057, 0.198723, -6.09519, 3.19798, -8.0799, 2.69775, 6.96297, 9.12042, -1.73908, 2.39867, 0.245635, -2.15304, -1.64373, -2.15304, 0.94419, -10.1609, -1.04052, -0.0773091, -0.754941, 1.90741}, {1.54312, -0.61076, 1.54312, -1.60567, 0, 0, 0.408534, 3.98943, 5.22554, 0.198723, 1.94057, 0.198723, 0.0773091, 0.754941, -1.90741, 8.57571, 1.64373, 2.15304, -7.91157, 4.84171, -5.92686, -2.15304, -1.64373, -2.15304, 1.73908, -2.39867, -0.245635, -0.872199, -8.51722, 1.11252}, {1.54312, -0.61076, 1.54312, -1.60567, 0, 0, -0.136178, -1.32981, -1.74185, -0.596168, -5.82171, -0.596168, 0.0773091, 0.754941, -1.90741, 2.15304, 1.64373, 2.15304, -1.73908, 2.39867, 0.245635, -8.32553, 0.799305, -8.32553, 8.16175, -2.39867, -0.245635, 0.467403, 4.5643, 8.87479}, {-5.36656, 4.08784, -4.08784, 0, 3.15147, 0, -1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -2.21115, -14.817, -1.68428, 2.21115, -1.68428, -2.21115, 7.15542, 11.0508, -11.0508, -2.21115, 1.68428, 14.817, 0, -3.89543, 3.89543, 2.21115, 2.21115, 1.68428}, {1.78885, -1.36261, 1.36261, -4.1986e-15, -9.45441, 1.15954e-14, -1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -9.36656, 3.23931, -7.13474, 9.36656, 5.47113, -9.36656, 1.28583e-15, 3.89543, -3.89543, -2.21115, 1.68428, 2.21115, -1.72992e-15, -3.89543, 16.5013, 2.21115, 2.21115, 1.68428}, {1.78885, -1.36261, 1.36261, 0, 3.15147, -9.86237e-15, 5.36656, 5.36656, -5.36656, 0, 0, -3.15147, -2.21115, -2.21115, -1.68428, 2.21115, -14.2902, -2.21115, -7.15542, 9.34589, -9.34589, -2.21115, 1.68428, 2.21115, 0, -3.89543, 3.89543, 2.21115, 2.21115, 14.2902}, {1.78885, -1.36261, 1.36261, 0, 3.15147, 0, -1.78885, -1.78885, 1.78885, 0, 0, 9.45441, -2.21115, -2.21115, -1.68428, 2.21115, -1.68428, -2.21115, -4.44089e-16, 3.89543, -3.89543, -9.36656, 7.13474, -3.23931, 0, -16.5013, 3.89543, 9.36656, 9.36656, -5.47113}, {-14.3647, 4.91028, -4.91028, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.63676, 1.63676, -1.63676, 2.33207, -6.2275, -10.2738, 3.89543, -3.193e-13, -3.19522e-13, 2.33207, 10.2738, 6.2275, 2.65162, -6.54704, 6.54704, 3.97086, -3.97086, 0.0754334, 3.97086, -0.0754334, 3.97086}, {4.78823, -1.63676, 1.63676, 4.7272, -4.7272, -4.7272, -1.57573, -1.57573, -1.57573, -1.63676, 1.63676, -1.63676, -23.1238, 6.62248, -10.5179, 10.1984, 6.30294, 6.30294, -3.97086, 3.97086, -0.0754334, -3.89543, 3.18818e-13, 3.18006e-13, 10.5179, -10.5179, 6.62248, 3.97086, -0.0754334, 3.97086}, {4.78823, -1.63676, 1.63676, -1.57573, 1.57573, 1.57573, 4.7272, 4.7272, 4.7272, -1.63676, 1.63676, -1.63676, -3.97086, 0.0754334, -3.97086, 10.1984, -6.30294, -6.30294, -23.1238, 10.5179, -6.62248, -3.89543, 3.21483e-13, 3.20892e-13, 3.97086, -3.97086, 0.0754334, 10.5179, -6.62248, 10.5179}, {4.78823, -1.63676, 1.63676, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 4.91028, -4.91028, 4.91028, -3.97086, 0.0754334, -3.97086, 3.89543, -3.19522e-13, -3.19078e-13, -3.97086, 3.97086, -0.0754334, -23.0483, 6.54704, -6.54704, 10.2738, -10.2738, -6.2275, 10.2738, 6.2275, 10.2738}, {0, -4.817, 7.10543e-15, -1.41539, -0.190281, -1.85814, -0.373467, 0.373467, 3.64699, 1.78885, -1.78885, -1.78885, 7.41106, -0.988391, 9.72932, 2.21115, -0.226431, -2.21115, 1.9555, -3.94022, -19.0959, -9.36656, 7.38185, 9.36656, -0.461631, 2.44635, 4.50793, -1.74951, 1.74951, -2.29678}, {-1.11022e-15, 1.60567, -1.55431e-15, 4.24616, 0.570843, 5.57441, -0.373467, 0.373467, 3.64699, 1.78885, -1.78885, -1.78885, 1.74951, -8.17219, 2.29678, 3.70501, -1.7203, -16.7991, 0.461631, -2.44635, -4.50793, -2.21115, 0.226431, 2.21115, -7.61705, 9.60176, 11.6633, -1.74951, 1.74951, -2.29678}, {-8.88178e-16, 1.60567, 1.11022e-15, -1.41539, -0.190281, -1.85814, 1.1204, -1.1204, -10.941, 1.78885, -1.78885, -1.78885, 1.74951, -1.74951, 2.29678, 7.87269, 0.534693, 5.2214, 0.461631, -8.86902, -4.50793, -2.21115, 0.226431, 2.21115, -0.461631, 2.44635, 4.50793, -8.90493, 8.90493, 4.85864}, {1.55431e-15, 1.60567, -4.44089e-16, -1.41539, -0.190281, -1.85814, -0.373467, 0.373467, 3.64699, -5.36656, 5.36656, 5.36656, 1.74951, -1.74951, 2.29678, 2.21115, -0.226431, -2.21115, 0.461631, -2.44635, -4.50793, -2.21115, -6.19624, 2.21115, 5.19992, 3.20747, 11.9405, -0.255645, 0.255645, -16.8847}, {-2.60507, 7.08874, -2.60507, -1.19276, 2.49131, 1.15037, -1.08957, 0.431245, -1.08957, 1.41397, -0.55964, -0.929159, 5.172, -10.1239, -7.09676, 2.82111, -3.61247, -0.0751544, 4.6317, 0.662693, 4.6317, -8.47697, 5.85103, 3.79179, -0.273431, -2.38767, -0.273431, -0.400978, 0.158705, 2.49528}, {0.868358, -2.36291, 0.868358, 3.57827, -7.47392, -3.45111, -1.08957, 0.431245, -1.08957, 1.41397, -0.55964, -0.929159, -3.07245, 9.29295, -5.96872, 7.17938, -5.33745, 4.28312, 0.273431, 2.38767, 0.273431, -2.82111, 3.61247, 0.0751544, -5.9293, -0.149113, 3.44321, -0.400978, 0.158705, 2.49528}, {0.868358, -2.36291, 0.868358, -1.19276, 2.49131, 1.15037, 3.2687, -1.29374, 3.2687, 1.41397, -0.55964, -0.929159, 0.400978, -0.158705, -2.49528, 7.59213, -13.5777, -4.67663, -3.2, 11.8393, -3.2, -2.82111, 3.61247, 0.0751544, -0.273431, -2.38767, -0.273431, -6.05684, 2.39726, 6.21192}, {0.868358, -2.36291, 0.868358, -1.19276, 2.49131, 1.15037, -1.08957, 0.431245, -1.08957, -4.2419, 1.67892, 2.78748, 0.400978, -0.158705, -2.49528, 2.82111, -3.61247, -0.0751544, 0.273431, 2.38767, 0.273431, -6.29454, 13.0641, -3.39828, 4.49759, -12.3529, -4.87491, 3.95729, -1.56628, 6.85356}, {0.133606, -1.71772, 4.33994, 0.841626, -2.01922, -1.9732e-12, -1.05603, 0, 0, 0.258935, 1.44665, 1.44665, -4.35176, 9.86504, 1.78815, 0.265013, 2.4959, 2.43901e-12, 5.58447, -0.707741, 1.78815, -1.30075, -8.28248, -5.78659, -1.36037, 0.707741, -1.78815, 0.985258, -1.78815, -1.78815}, {-0.0445353, 0.572575, -1.44665, -2.52488, 6.05767, 5.92285e-12, -1.05603, 0, 0, 0.258935, 1.44665, 1.44665, -0.807116, -0.502145, 7.57474, 4.48912, 2.4959, 2.44035e-12, 1.36037, -0.707741, 1.78815, -0.265013, -2.4959, -2.43999e-12, -2.39611, -5.07885, -7.57474, 0.985258, -1.78815, -1.78815}, {-0.0445353, 0.572575, -1.44665, 0.841626, -2.01922, -1.97392e-12, 3.16808, 0, 0, 0.258935, 1.44665, 1.44665, -0.985258, 1.78815, 1.78815, -3.10149, 10.5728, 1.03356e-11, 1.53851, -2.99804, 7.57474, -0.265013, -2.4959, -2.43954e-12, -1.36037, 0.707741, -1.78815, -0.0504837, -7.57474, -7.57474}, {-0.0445353, 0.572575, -1.44665, 0.841626, -2.01922, -1.97247e-12, -1.05603, 0, 0, -0.776806, -4.33994, -4.33994, -0.985258, 1.78815, 1.78815, 0.265013, 2.4959, 2.43811e-12, 1.36037, -0.707741, 1.78815, -0.0868717, -4.7862, 5.78659, -4.72687, 8.78463, -1.78815, 5.20936, -1.78815, -1.78815}, {-8.334, -1.1204, -10.941, -1.41539, 1.41539, -1.85814, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, 3.97726, -7.87269, 5.2214, 5.64494, -1.74951, 2.29678, 13.0675, -0.461631, -4.50793, -12.8004, 8.90493, 4.85864, -0.461631, 0.461631, 4.50793, 1.68428, 2.21115, 2.21115}, {2.778, 0.373467, 3.64699, 4.24616, -4.24616, 5.57441, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -12.7963, -3.70501, -16.7991, 18.2508, -1.74951, 2.29678, 0.461631, -0.461631, -4.50793, -5.64494, 1.74951, -2.29678, -7.61705, 7.61705, 11.6633, 1.68428, 2.21115, 2.21115}, {2.778, 0.373467, 3.64699, -1.41539, 1.41539, -1.85814, 9.45441, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -2.21115, -2.21115, 11.3065, -7.41106, 9.72932, -10.6504, -1.9555, -19.0959, -5.64494, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, -5.47113, 9.36656, 9.36656}, {2.778, 0.373467, 3.64699, -1.41539, 1.41539, -1.85814, -3.15147, 0, 0, -5.36656, 5.36656, 5.36656, -1.68428, -2.21115, -2.21115, 5.64494, -1.74951, 2.29678, 0.461631, -0.461631, -4.50793, -16.7569, 0.255645, -16.8847, 5.19992, -5.19992, 11.9405, 14.2902, 2.21115, 2.21115}, {1.01058, 2.55106, -2.5536, -2.38953, 1.40121, 0.936349, 0.591368, -0.846655, -1.49431, 2.13502, 0.295801, -0.293237, 12.9281, -6.28572, -5.95493, 2.22265, -0.685462, 0.68968, -2.68006, 5.48424, 6.77218, -10.7627, -0.497743, 0.483267, 0.314591, -2.09762, -0.794931, -3.37, 0.680893, 2.20953}, {-0.336859, -0.850352, 0.8512, 7.1686, -4.20362, -2.80905, 0.591368, -0.846655, -1.49431, 2.13502, 0.295801, -0.293237, 4.71744, 2.72051, -5.61433, -0.142821, 2.70116, 6.66693, -0.314591, 2.09762, 0.794931, -2.22265, 0.685462, -0.68968, -8.2255, -3.28082, 0.378017, -3.37, 0.680893, 2.20953}, {-0.336859, -0.850352, 0.8512, -2.38953, 1.40121, 0.936349, -1.77411, 2.53997, 4.48294, 2.13502, 0.295801, -0.293237, 3.37, -0.680893, -2.20953, 11.7808, -6.29028, -3.05572, 1.03285, 5.49902, -2.60987, -2.22265, 0.685462, -0.68968, 0.314591, -2.09762, -0.794931, -11.9101, -0.502312, 3.38248}, {-0.336859, -0.850352, 0.8512, -2.38953, 1.40121, 0.936349, 0.591368, -0.846655, -1.49431, -6.40507, -0.887404, 0.879711, 3.37, -0.680893, -2.20953, 2.22265, -0.685462, 0.68968, -0.314591, 2.09762, 0.794931, -0.875216, 4.08687, -4.09448, 9.87272, -7.70244, -4.54033, -5.73548, 4.06751, 8.18678}, {8.88178e-16, 9.4517, 0, 1.85814, -1.41498, 1.41539, -3.64699, 2.77721, 0.373467, 1.78885, 1.78834, -1.78885, -9.72932, 11.3033, -7.41106, 2.21115, -1.6838, -2.21115, 19.0959, -10.6473, -1.9555, -9.36656, -5.46957, 9.36656, -4.50793, -0.461499, 0.461631, 2.29678, -5.64333, 1.74951}, {-2.22045e-16, -3.15057, -2.22045e-16, -5.57441, 4.24495, -4.24616, -3.64699, 2.77721, 0.373467, 1.78885, 1.78834, -1.78885, -2.29678, 18.2456, -1.74951, 16.7991, -12.7926, -3.70501, 4.50793, 0.461499, -0.461631, -2.21115, 1.6838, 2.21115, -11.6633, -7.61487, 7.61705, 2.29678, -5.64333, 1.74951}, {8.88178e-16, -3.15057, 2.22045e-16, 1.85814, -1.41498, 1.41539, 10.941, -8.33162, -1.1204, 1.78885, 1.78834, -1.78885, -2.29678, 5.64333, -1.74951, -5.2214, 3.97613, -7.87269, 4.50793, 13.0638, -0.461631, -2.21115, 1.6838, 2.21115, -4.50793, -0.461499, 0.461631, -4.85864, -12.7967, 8.90493}, {2.22045e-16, -3.15057, 6.66134e-16, 1.85814, -1.41498, 1.41539, -3.64699, 2.77721, 0.373467, -5.36656, -5.36503, 5.36656, -2.29678, 5.64333, -1.74951, 2.21115, -1.6838, -2.21115, 4.50793, 0.461499, -0.461631, -2.21115, 14.2861, 2.21115, -11.9405, 5.19843, -5.19992, 16.8847, -16.7522, 0.255645}, {-3.98943, -5.23221, -5.22554, -1.94057, -2.54509, -0.198723, 0.61076, -1.54509, -1.54312, 0, 2.34612, 0, 8.51722, 11.1705, -1.11252, 1.64373, 5.05575, 2.15304, -4.84171, 5.93443, 5.92686, -1.64373, -14.4402, -2.15304, 2.39867, 0.245948, 0.245635, -0.754941, -0.990119, 1.90741}, {1.32981, 1.74407, 1.74185, 5.82171, 7.63528, 0.596168, 0.61076, -1.54509, -1.54312, -3.55726e-16, 2.34612, 8.98764e-16, -4.5643, -5.98616, -8.87479, -0.799305, 11.2361, 8.32553, -2.39867, -0.245948, -0.245635, -1.64373, -5.05575, -2.15304, 2.39867, -9.13852, 0.245635, -0.754941, -0.990119, 1.90741}, {1.32981, 1.74407, 1.74185, -1.94057, -2.54509, -0.198723, -1.83228, 4.63528, 4.62937, 0, 2.34612, 0, 0.754941, 0.990119, -1.90741, 9.40601, 15.2361, 2.94793, -7.71791, -7.22223, -7.21302, -1.64373, -5.05575, -2.15304, 2.39867, 0.245948, 0.245635, -0.754941, -10.3746, 1.90741}, {1.32981, 1.74407, 1.74185, -1.94057, -2.54509, -0.198723, 0.61076, -1.54509, -1.54312, 0, -7.03835, 0, 0.754941, 0.990119, -1.90741, 1.64373, 5.05575, 2.15304, -2.39867, -0.245948, -0.245635, -6.96297, -12.032, -9.12042, 10.1609, 10.4263, 1.04052, -3.19798, 5.19026, 8.0799}, {0, -8.88178e-15, -7.02938, -1.78885, -2.34612, -2.34313, 1.78885, 6.94391e-12, 7.11845e-12, 0, 2.34612, 0, 9.36656, 12.2844, 9.3725, 0, 2.89996, 2.89626, -9.36656, -3.63625e-11, -2.89626, 0, -12.2844, -2.89626, 2.21115, 8.58691e-12, 2.89626, -2.21115, -2.89996, -8.79889e-12}, {-9.56516e-16, 1.33227e-15, 2.34313, 5.36656, 7.03835, 7.02938, 1.78885, 6.94391e-12, 7.11845e-12, -1.04189e-15, 2.34612, -4.14601e-27, 2.21115, 2.89996, -9.3725, -7.15542, 2.89996, 2.89626, -2.21115, -8.58469e-12, -2.89626, 2.66454e-15, -2.89996, -2.89626, 2.21115, -9.38447, 2.89626, -2.21115, -2.89996, -8.79889e-12}, {0, -4.44089e-16, 2.34313, -1.78885, -2.34612, -2.34313, -5.36656, -2.08419e-11, -2.13616e-11, 0, 2.34612, 0, 2.21115, 2.89996, 8.80088e-12, 7.15542, 12.2844, 12.2688, -2.21115, -8.58691e-12, -12.2688, 0, -2.89996, -2.89626, 2.21115, 8.58691e-12, 2.89626, -2.21115, -12.2844, -8.80146e-12}, {0, 8.88178e-16, 2.34313, -1.78885, -2.34612, -2.34313, 1.78885, 6.94234e-12, 7.11741e-12, 0, -7.03835, 0, 2.21115, 2.89996, 8.79702e-12, 0, 2.89996, 2.89626, -2.21115, -8.58291e-12, -2.89626, 0, -2.89996, -12.2688, 9.36656, 9.38447, 12.2688, -9.36656, -2.89996, -3.72672e-11}, {-0.596168, 7.62554, 5.82171, -1.74185, 1.74185, 1.32981, 0, 2.34313, 0, 1.54312, -1.54312, 0.61076, 8.87479, -5.97853, -4.5643, 2.15304, -5.0493, -1.64373, -0.245635, -9.12687, 2.39867, -8.32553, 11.2218, -0.799305, 0.245635, -0.245635, -2.39867, -1.90741, -0.988857, -0.754941}, {0.198723, -2.54185, -1.94057, 5.22554, -5.22554, -3.98943, -8.97618e-16, 2.34313, -3.55272e-16, 1.54312, -1.54312, 0.61076, 1.11252, 11.1562, 8.51722, 2.15304, -14.4218, -1.64373, -0.245635, 0.245635, 2.39867, -2.15304, 5.0493, 1.64373, -5.92686, 5.92686, -4.84171, -1.90741, -0.988857, -0.754941}, {0.198723, -2.54185, -1.94057, -1.74185, 1.74185, 1.32981, 0, -7.02938, 0, 1.54312, -1.54312, 0.61076, 1.90741, 0.988857, 0.754941, 9.12042, -12.0167, -6.96297, -1.04052, 10.413, 10.1609, -2.15304, 5.0493, 1.64373, 0.245635, -0.245635, -2.39867, -8.0799, 5.18364, -3.19798}, {0.198723, -2.54185, -1.94057, -1.74185, 1.74185, 1.32981, 0, 2.34313, 0, -4.62937, 4.62937, -1.83228, 1.90741, 0.988857, 0.754941, 2.15304, -5.0493, -1.64373, -0.245635, 0.245635, 2.39867, -2.94793, 15.2167, 9.40601, 7.21302, -7.21302, -7.71791, -1.90741, -10.3614, -0.754941}, {4.7272, -4.7272, -4.7272, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 1.57573, -6.30294, -10.1984, 6.30294, 1.80456e-12, 1.805e-12, 3.89543, 10.1984, 6.30294, 6.30294, -6.30294, 6.30294, -10.1984, -3.89543, 3.19078e-13, 3.19078e-13, -2.14295e-12, 3.89543, 2.13674e-12}, {-1.57573, 1.57573, 1.57573, -4.7272, -4.7272, 4.7272, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 1.57573, 6.30294, -10.1984, -6.30294, 6.30294, 6.30294, 10.1984, 3.89543, -3.193e-13, -3.193e-13, -1.80505e-12, -1.80561e-12, -3.89543, -10.1984, 6.30294, -6.30294, -2.1394e-12, 3.89543, 2.13962e-12}, {-1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -1.57573, 4.7272, 4.7272, 4.7272, 1.57573, -1.57573, 1.57573, 2.14007e-12, -3.89543, -2.14007e-12, -6.30294, -6.30294, 10.1984, 10.1984, -6.30294, -6.30294, -1.80394e-12, -1.80428e-12, -3.89543, -3.89543, 3.20188e-13, 3.193e-13, -6.30294, 10.1984, -6.30294}, {-1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.57573, -4.7272, 4.7272, -4.7272, 2.1354e-12, -3.89543, -2.14473e-12, 1.80456e-12, 1.80456e-12, 3.89543, 3.89543, -3.19522e-13, -3.19522e-13, 6.30294, -6.30294, -10.1984, -10.1984, -6.30294, 6.30294, 6.30294, 10.1984, 6.30294}, {4.817, -8.88178e-16, 2.22045e-16, -0.136178, 1.74185, 1.32981, 0.198723, -0.198723, -1.94057, 1.54312, -1.54312, 0.61076, 2.69775, -9.12042, -6.96297, -0.0773091, -1.90741, 0.754941, 0.94419, 1.04052, 10.1609, -6.09519, 8.0799, -3.19798, -1.73908, -0.245635, -2.39867, -2.15304, 2.15304, 1.64373}, {-1.60567, 0, 2.22045e-16, 0.408534, -5.22554, -3.98943, 0.198723, -0.198723, -1.94057, 1.54312, -1.54312, 0.61076, 8.57571, -2.15304, -1.64373, -0.872199, -1.11252, 8.51722, 1.73908, 0.245635, 2.39867, 0.0773091, 1.90741, -0.754941, -7.91157, 5.92686, -4.84171, -2.15304, 2.15304, 1.64373}, {-1.60567, 0, 2.22045e-16, -0.136178, 1.74185, 1.32981, -0.596168, 0.596168, 5.82171, 1.54312, -1.54312, 0.61076, 2.15304, -2.15304, -1.64373, 0.467403, -8.87479, -4.5643, 8.16175, 0.245635, 2.39867, 0.0773091, 1.90741, -0.754941, -1.73908, -0.245635, -2.39867, -8.32553, 8.32553, -0.799305}, {-1.60567, -2.22045e-16, -2.22045e-16, -0.136178, 1.74185, 1.32981, 0.198723, -0.198723, -1.94057, -4.62937, 4.62937, -1.83228, 2.15304, -2.15304, -1.64373, -0.0773091, -1.90741, 0.754941, 1.73908, 0.245635, 2.39867, 6.49998, 1.90741, -0.754941, -1.19437, -7.21302, -7.71791, -2.94793, 2.94793, 9.40601}, {7.01844, 8.88178e-16, 0, 2.33948, 2.34313, 1.78885, 7.30061e-12, 6.91762e-12, -1.78885, 0, -2.34313, 0, -9.35791, -12.2688, -9.36656, -2.89175, -2.89626, 0, 2.89175, -3.62204e-11, 9.36656, 2.89175, 12.2688, 0, -2.89175, 8.55005e-12, -2.21115, -9.02405e-12, 2.89626, 2.21115}, {-2.33948, 0, 0, -7.01844, -7.02938, -5.36656, 7.30269e-12, 6.91918e-12, -1.78885, 0, -2.34313, 0, 9.35791, -2.89626, -2.21115, -2.89175, -2.89626, 7.15542, 2.89175, -8.55271e-12, 2.21115, 2.89175, 2.89626, 0, -2.89175, 9.3725, -2.21115, -9.02662e-12, 2.89626, 2.21115}, {-2.33948, 4.44089e-16, 2.22045e-16, 2.33948, 2.34313, 1.78885, -2.19003e-11, -2.07607e-11, 5.36656, 0, -2.34313, 0, 9.02399e-12, -2.89626, -2.21115, -12.2497, -12.2688, -7.15542, 12.2497, -8.55493e-12, 2.21115, 2.89175, 2.89626, -4.44089e-16, -2.89175, 8.55405e-12, -2.21115, -9.02341e-12, 12.2688, 2.21115}, {-2.33948, 4.44089e-16, 0, 2.33948, 2.34313, 1.78885, 7.30373e-12, 6.92178e-12, -1.78885, 0, 7.02938, 0, 9.02849e-12, -2.89626, -2.21115, -2.89175, -2.89626, 0, 2.89175, -8.55627e-12, 2.21115, 12.2497, 2.89626, 0, -12.2497, -9.3725, -9.36656, -3.82428e-11, 2.89626, 9.36656}, {-1.82966, -4.6256, 4.62804, 1.3308, -1.74043, 0.137442, -1.94068, 0.198561, -0.20043, 0, 0, 1.60567, -7.722, 7.20714, 1.1872, 0.75386, 1.90585, 0.0778573, 9.40768, -2.94553, 2.95632, -0.75386, -1.90585, -6.50053, -1.64495, 2.15129, -2.1546, 2.39881, -0.245434, -1.73697}, {0.609885, 1.54187, -1.54268, -3.99239, 5.22128, -0.412327, -1.94068, 0.198561, -0.20043, 7.7358e-16, -7.91487e-17, 1.60567, -4.83836, -5.92203, 7.90769, 8.51658, 1.11161, 0.879578, 1.64495, -2.15129, 2.1546, -0.75386, -1.90585, -0.0778573, -1.64495, 2.15129, -8.57728, 2.39881, -0.245434, -1.73697}, {0.609885, 1.54187, -1.54268, 1.3308, -1.74043, 0.137442, 5.82204, -0.595682, 0.601291, 0, 0, 1.60567, -2.39881, 0.245434, 1.73697, -4.56932, 8.86756, -0.471912, -0.794587, -8.31875, 8.32532, -0.75386, -1.90585, -0.0778573, -1.64495, 2.15129, -2.1546, 2.39881, -0.245434, -8.15964}, {0.609885, 1.54187, -1.54268, 1.3308, -1.74043, 0.137442, -1.94068, 0.198561, -0.20043, 0, 0, -4.817, -2.39881, 0.245434, 1.73697, 0.75386, 1.90585, 0.0778573, 1.64495, -2.15129, 2.1546, -3.1934, -8.07331, 6.09286, -6.96814, 9.11299, -2.70437, 10.1615, -1.03968, -0.935249}, {-4.24457, 5.57441, -4.24616, -1.78937, -1.78885, -1.78885, 3.15147, -2.85327e-15, -2.92187e-16, -2.77696, 3.64699, 0.373467, 7.62038, 11.6633, 7.61705, -1.68365, 2.21115, 2.21115, -18.2502, 2.29678, -1.74951, 12.7915, -16.7991, -3.70501, 5.64429, -2.29678, 1.74951, -0.46292, -4.50793, -0.461631}, {1.41486, -1.85814, 1.41539, 5.3681, 5.36656, 5.36656, 3.15147, 5.70654e-15, 5.84374e-16, -2.77696, 3.64699, 0.373467, -5.1965, 11.9405, -5.19992, -14.2895, 2.21115, 2.21115, -5.64429, 2.29678, -1.74951, 1.68365, -2.21115, -2.21115, 16.7521, -16.8847, 0.255645, -0.46292, -4.50793, -0.461631}, {1.41486, -1.85814, 1.41539, -1.78937, -1.78885, -1.78885, -9.45441, 0, 0, -2.77696, 3.64699, 0.373467, 0.46292, 4.50793, 0.461631, 5.47381, 9.36656, 9.36656, -11.3037, 9.72932, -7.41106, 1.68365, -2.21115, -2.21115, 5.64429, -2.29678, 1.74951, 10.6449, -19.0959, -1.9555}, {1.41486, -1.85814, 1.41539, -1.78937, -1.78885, -1.78885, 3.15147, 2.85327e-15, 2.92187e-16, 8.33088, -10.941, -1.1204, 0.46292, 4.50793, 0.461631, -1.68365, 2.21115, 2.21115, -5.64429, 2.29678, -1.74951, -3.97577, 5.2214, -7.87269, 12.8018, 4.85864, 8.90493, -13.0688, -4.50793, -0.461631}, {-4.72788, -4.72653, -4.72653, 1.57551, -1.57551, -1.57551, -1.57551, 1.57551, -1.57596, -1.57596, -1.57551, 1.57596, -10.1975, 6.30204, 6.30204, -4.83169e-13, -4.92273e-13, 3.89543, 6.30148, -10.1969, 6.30439, 6.30384, 6.30204, -10.1993, 0.000556765, 3.89487, -0.000556765, 3.89543, -1.82077e-12, -1.81766e-12}, {1.57596, 1.57551, 1.57551, -4.72653, 4.72653, 4.72653, -1.57551, 1.57551, -1.57596, -1.57596, -1.57551, 1.57596, -10.1993, -6.30204, -6.30204, 6.30204, -6.30204, 10.1993, -0.000556765, -3.89487, 0.000556765, 4.86997e-13, 4.81002e-13, -3.89543, 6.30439, 10.1969, -6.30439, 3.89543, -1.81322e-12, -1.80744e-12}, {1.57596, 1.57551, 1.57551, 1.57551, -1.57551, -1.57551, 4.72653, -4.72653, 4.72788, -1.57596, -1.57551, 1.57596, -3.89543, 1.8201e-12, 1.81388e-12, -6.30204, 6.30204, 10.1975, -6.30439, -10.1969, -6.30148, 4.87441e-13, 4.99209e-13, -3.89543, 0.000556765, 3.89487, -0.000556765, 10.1993, 6.30204, -6.30384}, {1.57596, 1.57551, 1.57551, 1.57551, -1.57551, -1.57551, -1.57551, 1.57551, -1.57596, 4.72788, 4.72653, -4.72788, -3.89543, 1.81255e-12, 1.81877e-12, -4.87832e-13, -4.87388e-13, 3.89543, -0.000556765, -3.89487, 0.000556765, -6.30384, -6.30204, -10.1975, -6.30148, 10.1969, 6.30148, 10.1975, -6.30204, 6.30384}, {5.36656, -5.36656, -5.3681, 3.64699, -0.373467, 2.77696, 0, 0, -3.15147, -1.85814, -1.41539, -1.41486, -16.8847, -0.255645, -16.7521, -4.50793, 0.461631, 0.46292, 2.21115, -2.21115, 14.2895, 11.9405, 5.19992, 5.1965, -2.21115, 2.21115, -1.68365, 2.29678, 1.74951, 5.64429}, {-1.78885, 1.78885, 1.78937, -10.941, 1.1204, -8.33088, 0, 0, -3.15147, -1.85814, -1.41539, -1.41486, 4.85864, -8.90493, -12.8018, -4.50793, 0.461631, 13.0688, 2.21115, -2.21115, 1.68365, 4.50793, -0.461631, -0.46292, 5.2214, 7.87269, 3.97577, 2.29678, 1.74951, 5.64429}, {-1.78885, 1.78885, 1.78937, 3.64699, -0.373467, 2.77696, 0, 0, 9.45441, -1.85814, -1.41539, -1.41486, -2.29678, -1.74951, -5.64429, -19.0959, 1.9555, -10.6449, 9.36656, -9.36656, -5.47381, 4.50793, -0.461631, -0.46292, -2.21115, 2.21115, -1.68365, 9.72932, 7.41106, 11.3037}, {-1.78885, 1.78885, 1.78937, 3.64699, -0.373467, 2.77696, 0, 0, -3.15147, 5.57441, 4.24616, 4.24457, -2.29678, -1.74951, -5.64429, -4.50793, 0.461631, 0.46292, 2.21115, -2.21115, 1.68365, 11.6633, -7.61705, -7.62038, -16.7991, 3.70501, -12.7915, 2.29678, 1.74951, 18.2502}, {-0.570843, 5.57441, 4.24616, -0.373467, 3.64699, -0.373467, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, 1.7203, -16.7991, 3.70501, -1.74951, -2.29678, -1.74951, -9.60176, 11.6633, -7.61705, 8.17219, 2.29678, 1.74951, 2.44635, -4.50793, 0.461631, -0.226431, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, 1.1204, -10.941, 1.1204, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, -0.534693, 5.2214, 7.87269, -8.90493, 4.85864, -8.90493, -2.44635, 4.50793, -0.461631, 1.74951, 2.29678, 1.74951, 8.86902, -4.50793, 0.461631, -0.226431, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, -0.373467, 3.64699, -0.373467, -5.36656, 5.36656, -5.36656, -1.60567, 0, 0, 0.226431, -2.21115, 2.21115, -0.255645, -16.8847, -0.255645, -3.20747, 11.9405, 5.19992, 1.74951, 2.29678, 1.74951, 2.44635, -4.50793, 0.461631, 6.19624, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, -0.373467, 3.64699, -0.373467, 1.78885, -1.78885, 1.78885, 4.817, 0, 0, 0.226431, -2.21115, 2.21115, -1.74951, -2.29678, -1.74951, -2.44635, 4.50793, -0.461631, 0.988391, 9.72932, 7.41106, 3.94022, -19.0959, 1.9555, -7.38185, 9.36656, -9.36656}, {-2.4085, 2.4085, -2.4085, 0.802834, 0.802834, -0.802834, 0.0313083, 1.63555, 1.63555, -1.63698, -1.63555, -1.63555, -5.19605, -3.21134, 3.21134, -1.03106, -3.014, -1.02929, -1.15629, -7.57148, -9.55619, 7.57896, 9.55619, 7.57148, 1.03106, 1.02929, 3.014, 1.98471, -8.43769e-15, 6.21725e-15}, {0.802834, -0.802834, 0.802834, -2.4085, -2.4085, 2.4085, 0.0313083, 1.63555, 1.63555, -1.63698, -1.63555, -1.63555, -5.19605, 3.21134, -3.21134, -1.15629, -9.55619, -7.57148, -1.03106, -1.02929, -3.014, 1.03106, 3.014, 1.02929, 7.57896, 7.57148, 9.55619, 1.98471, -7.54952e-15, 7.10543e-15}, {0.802834, -0.802834, 0.802834, 0.802834, 0.802834, -0.802834, -0.0939249, -4.90664, -4.90664, -1.63698, -1.63555, -1.63555, -1.98471, 7.10543e-15, -6.66134e-15, -4.24239, -6.22534, 2.18205, -4.24239, 2.18205, -6.22534, 1.03106, 3.014, 1.02929, 1.03106, 1.02929, 3.014, 8.53262, 6.54219, 6.54219}, {0.802834, -0.802834, 0.802834, 0.802834, 0.802834, -0.802834, 0.0313083, 1.63555, 1.63555, 4.91093, 4.90664, 4.90664, -1.98471, 6.21725e-15, -6.66134e-15, -1.03106, -3.014, -1.02929, -1.03106, -1.02929, -3.014, -2.18028, 6.22534, -2.18205, -2.18028, -2.18205, 6.22534, 1.85948, -6.54219, -6.54219}, {5.36656, 5.36656, -5.36656, 0, 0, -3.15147, 3.15147, -1.39953e-15, -1.06606e-15, -1.36261, 1.78885, 1.36261, 2.21115, 2.21115, 14.2902, -3.89543, 1.72992e-15, 3.89543, -14.2902, 2.21115, -2.21115, 9.34589, -7.15542, -9.34589, 1.68428, -2.21115, 2.21115, -2.21115, -2.21115, -1.68428}, {-1.78885, -1.78885, 1.78885, 0, 0, 9.45441, 3.15147, 2.79907e-15, 2.13212e-15, -1.36261, 1.78885, 1.36261, 9.36656, 9.36656, -5.47113, -16.5013, -1.46561e-14, 3.89543, -1.68428, 2.21115, -2.21115, 3.89543, 3.90393e-15, -3.89543, 7.13474, -9.36656, -3.23931, -2.21115, -2.21115, -1.68428}, {-1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -9.45441, 0, 0, -1.36261, 1.78885, 1.36261, 2.21115, 2.21115, 1.68428, -3.89543, 0, 16.5013, 5.47113, 9.36656, -9.36656, 3.89543, 4.44089e-16, -3.89543, 1.68428, -2.21115, 2.21115, 3.23931, -9.36656, -7.13474}, {-1.78885, -1.78885, 1.78885, 0, 0, -3.15147, 3.15147, 1.39953e-15, 1.06606e-15, 4.08784, -5.36656, -4.08784, 2.21115, 2.21115, 1.68428, -3.89543, -1.72992e-15, 3.89543, -1.68428, 2.21115, -2.21115, 11.0508, 7.15542, -11.0508, 1.68428, -2.21115, 14.817, -14.817, -2.21115, -1.68428}, {1.55756, -1.55231, 6.66925, 0.74491, 1.59978, -0.633715, 1.29557, -1.29442, 0.512752, -1.52129, -0.822804, 2.34405, -3.25865, -9.01615, 6.06606, -2.52217, -0.377453, 0.149519, -6.14194, 6.13806, 0.0630791, 8.60734, 3.66867, -9.52571, 0.95966, -0.960396, -2.11409, 0.279008, 2.61703, -3.5312}, {-0.519188, 0.517438, -2.22308, -2.23473, -4.79934, 1.90115, 1.29557, -1.29442, 0.512752, -1.52129, -0.822804, 2.34405, 1.79774, -4.68678, 12.4235, -7.70445, 4.80021, -1.90149, -0.95966, 0.960396, 2.11409, 2.52217, 0.377453, -0.149519, 7.04482, 2.33082, -11.4903, 0.279008, 2.61703, -3.5312}, {-0.519188, 0.517438, -2.22308, 0.74491, 1.59978, -0.633715, -3.88671, 3.88325, -1.53826, -1.52129, -0.822804, 2.34405, -0.279008, -2.61703, 3.5312, -5.50181, -6.77658, 2.68438, 1.11709, -1.10936, 11.0064, 2.52217, 0.377453, -0.149519, 0.95966, -0.960396, -2.11409, 6.36417, 5.90824, -12.9074}, {-0.519188, 0.517438, -2.22308, 0.74491, 1.59978, -0.633715, 1.29557, -1.29442, 0.512752, 4.56387, 2.46841, -7.03214, -0.279008, -2.61703, 3.5312, -2.52217, -0.377453, 0.149519, -0.95966, 0.960396, 2.11409, 4.59892, -1.6923, 8.74282, -2.01998, -7.35952, 0.420775, -4.90327, 7.79469, -5.58221}, {-3.62807, -1.43344, -3.62246, -0.761007, 2.64249, 1.57539, -0.983272, -2.40589, -0.977465, 0.534922, -0.714416, -1.80541, 2.48984, -14.4269, -9.74136, 2.15605, -0.292457, -0.73907, 3.65363, 12.0068, 3.62554, -4.29574, 3.15012, 7.96069, 0.279456, -2.38324, 0.28432, 0.554191, 3.85691, 3.43982}, {1.20936, 0.477813, 1.20749, 2.28302, -7.92748, -4.72616, -0.983272, -2.40589, -0.977465, 0.534922, -0.714416, -1.80541, -5.39162, -5.76816, -8.26976, 6.08913, 9.33111, 3.17079, -0.279456, 2.38324, -0.28432, -2.15605, 0.292457, 0.73907, -1.86023, 0.474427, 7.50594, 0.554191, 3.85691, 3.43982}, {1.20936, 0.477813, 1.20749, -0.761007, 2.64249, 1.57539, 2.94982, 7.21767, 2.9324, 0.534922, -0.714416, -1.80541, -0.554191, -3.85691, -3.43982, 5.20007, -10.8624, -7.04061, -5.11688, 0.471983, -5.11426, -2.15605, 0.292457, 0.73907, 0.279456, -2.38324, 0.28432, -1.5855, 6.71457, 10.6614}, {1.20936, 0.477813, 1.20749, -0.761007, 2.64249, 1.57539, -0.983272, -2.40589, -0.977465, -1.60477, 2.14325, 5.41622, -0.554191, -3.85691, -3.43982, 2.15605, -0.292457, -0.73907, -0.279456, 2.38324, -0.28432, -6.99347, -1.6188, -4.09087, 3.32348, -12.9532, -6.01722, 4.48728, 13.4805, 7.34968}, {5.81909, -7.61025, 0.600985, 0.610485, 1.54108, -1.54262, 0, -2.33948, 0, 1.32921, -1.73835, 1.74295, -0.798945, -11.2048, 8.32487, -0.754601, 0.986874, 1.90678, 2.3976, 9.11407, 0.24762, -4.56224, 5.96654, -8.87857, -2.3976, 0.243842, -0.24762, -1.643, 5.04048, -2.1544}, {-1.9397, 2.53675, -0.200328, -1.83146, -4.62324, 4.62785, 0, -2.33948, 0, 1.32921, -1.73835, 1.74295, 9.40178, -15.1875, 2.95571, -0.754601, 10.3448, 1.90678, 2.3976, -0.243842, 0.24762, 0.754601, -0.986874, -1.90678, -7.71444, 7.19725, -7.21941, -1.643, 5.04048, -2.1544}, {-1.9397, 2.53675, -0.200328, 0.610485, 1.54108, -1.54262, 0, 7.01844, 0, 1.32921, -1.73835, 1.74295, 1.643, -5.04048, 2.1544, -3.19654, -5.17745, 8.07725, 10.1564, -10.3908, 1.04893, 0.754601, -0.986874, -1.90678, -2.3976, 0.243842, -0.24762, -6.95984, 11.9939, -9.12619}, {-1.9397, 2.53675, -0.200328, 0.610485, 1.54108, -1.54262, 0, -2.33948, 0, -3.98763, 5.21506, -5.22884, 1.643, -5.04048, 2.1544, -0.754601, 0.986874, 1.90678, 2.3976, -0.243842, 0.24762, 8.51339, -11.1339, -1.10547, -4.83954, -5.92048, 5.92285, -1.643, 14.3984, -2.1544}, {4.33994, -4.33994, -1.54017, 0, 0, -1.80556, -0.572575, -1.44665, 0.668413, 2.01922, 1.97175e-12, 0.623753, 1.78815, -1.78815, 8.81943, 0.707741, 1.78815, 1.40559, 4.7862, 5.78659, -4.13444, -8.78463, -1.78815, -3.9006, -2.4959, -2.43721e-12, 1.46079, -1.78815, 1.78815, -1.5972}, {-1.44665, 1.44665, 0.51339, 0, 0, 5.41667, -0.572575, -1.44665, 0.668413, 2.01922, 1.97138e-12, 0.623753, 7.57474, -7.57474, -0.456355, 2.99804, 7.57474, -1.26807, 2.4959, 2.43641e-12, -1.46079, -0.707741, -1.78815, -1.40559, -10.5728, -1.03223e-11, -1.03422, -1.78815, 1.78815, -1.5972}, {-1.44665, 1.44665, 0.51339, 0, 0, -1.80556, 1.71772, 4.33994, -2.00524, 2.01922, 1.97175e-12, 0.623753, 1.78815, -1.78815, 1.5972, 0.707741, 1.78815, 8.62781, 8.28248, -5.78659, -3.51435, -0.707741, -1.78815, -1.40559, -2.4959, -2.43721e-12, 1.46079, -9.86504, 1.78815, -4.09222}, {-1.44665, 1.44665, 0.51339, 0, 0, -1.80556, -0.572575, -1.44665, 0.668413, -6.05767, -5.91959e-12, -1.87126, 1.78815, -1.78815, 1.5972, 0.707741, 1.78815, 1.40559, 2.4959, 2.43865e-12, -1.46079, 5.07885, -7.57474, -3.45914, -2.4959, -2.43901e-12, 8.68301, 0.502145, 7.57474, -4.27086}, {5.36656, 5.36656, 5.36656, 0.373467, 0.373467, 3.64699, 1.41048e-15, 1.60567, -1.85169e-15, 1.41539, -0.190281, -1.85814, 0.255645, 0.255645, -16.8847, -0.461631, -2.44635, -4.50793, 2.21115, -6.19624, 2.21115, -5.19992, 3.20747, 11.9405, -2.21115, -0.226431, -2.21115, -1.74951, -1.74951, 2.29678}, {-1.78885, -1.78885, -1.78885, -1.1204, -1.1204, -10.941, 8.46287e-16, 1.60567, -1.11101e-15, 1.41539, -0.190281, -1.85814, 8.90493, 8.90493, 4.85864, -0.461631, -8.86902, -4.50793, 2.21115, 0.226431, 2.21115, 0.461631, 2.44635, 4.50793, -7.87269, 0.534693, 5.2214, -1.74951, -1.74951, 2.29678}, {-1.78885, -1.78885, -1.78885, 0.373467, 0.373467, 3.64699, 0, -4.817, 0, 1.41539, -0.190281, -1.85814, 1.74951, 1.74951, -2.29678, -1.9555, -3.94022, -19.0959, 9.36656, 7.38185, 9.36656, 0.461631, 2.44635, 4.50793, -2.21115, -0.226431, -2.21115, -7.41106, -0.988391, 9.72932}, {-1.78885, -1.78885, -1.78885, 0.373467, 0.373467, 3.64699, 2.82096e-16, 1.60567, -3.70338e-16, -4.24616, 0.570843, 5.57441, 1.74951, 1.74951, -2.29678, -0.461631, -2.44635, -4.50793, 2.21115, 0.226431, 2.21115, 7.61705, 9.60176, 11.6633, -3.70501, -1.7203, -16.7991, -1.74951, -8.17219, 2.29678}, {-4.24616, -4.24616, 5.57441, 3.15147, 2.92187e-16, 2.85327e-15, -1.78885, -1.78885, -1.78885, -2.778, 0.373467, 3.64699, -18.2508, -1.74951, 2.29678, -1.68428, 2.21115, 2.21115, 7.61705, 7.61705, 11.6633, 12.7963, -3.70501, -16.7991, -0.461631, -0.461631, -4.50793, 5.64494, 1.74951, -2.29678}, {1.41539, 1.41539, -1.85814, -9.45441, -5.07516e-15, -1.27584e-14, -1.78885, -1.78885, -1.78885, -2.778, 0.373467, 3.64699, -11.3065, -7.41106, 9.72932, 5.47113, 9.36656, 9.36656, 0.461631, 0.461631, 4.50793, 1.68428, -2.21115, -2.21115, 10.6504, -1.9555, -19.0959, 5.64494, 1.74951, -2.29678}, {1.41539, 1.41539, -1.85814, 3.15147, 0, 0, 5.36656, 5.36656, 5.36656, -2.778, 0.373467, 3.64699, -5.64494, -1.74951, 2.29678, -14.2902, 2.21115, 2.21115, -5.19992, -5.19992, 11.9405, 1.68428, -2.21115, -2.21115, -0.461631, -0.461631, -4.50793, 16.7569, 0.255645, -16.8847}, {1.41539, 1.41539, -1.85814, 3.15147, 2.92187e-16, 2.85327e-15, -1.78885, -1.78885, -1.78885, 8.334, -1.1204, -10.941, -5.64494, -1.74951, 2.29678, -1.68428, 2.21115, 2.21115, 0.461631, 0.461631, 4.50793, -3.97726, -7.87269, 5.2214, -13.0675, -0.461631, -4.50793, 12.8004, 8.90493, 4.85864}, {0.972456, 0.972456, -8.84811, 1.4362, 1.4362, 1.4362, -1.66806, -0.0623937, -1.66806, 0.556017, -1.04965, -2.71751, -7.11935, -7.11935, -11.1656, 0.286601, -1.69811, 0.286601, 9.13476, 0.727372, 5.08846, -2.51067, 5.89672, 10.5834, -2.46251, -0.477797, 1.58378, 1.37456, 1.37456, 5.42086}, {-0.324152, -0.324152, 2.94937, -4.30859, -4.30859, -4.30859, -1.66806, -0.0623937, -1.66806, 0.556017, -1.04965, -2.71751, -0.0779551, -0.0779551, -17.2183, 6.95885, -1.44854, 6.95885, 2.46251, 0.477797, -1.58378, -0.286601, 1.69811, -0.286601, -4.68658, 3.72081, 12.4538, 1.37456, 1.37456, 5.42086}, {-0.324152, -0.324152, 2.94937, 1.4362, 1.4362, 1.4362, 5.00419, 0.187181, 5.00419, 0.556017, -1.04965, -2.71751, -1.37456, -1.37456, -5.42086, -5.45818, -7.4429, -5.45818, 3.75912, 1.7744, -13.3813, -0.286601, 1.69811, -0.286601, -2.46251, -0.477797, 1.58378, -0.849506, 5.57317, 16.2909}, {-0.324152, -0.324152, 2.94937, 1.4362, 1.4362, 1.4362, -1.66806, -0.0623937, -1.66806, -1.66805, 3.14895, 8.15252, -1.37456, -1.37456, -5.42086, 0.286601, -1.69811, 0.286601, 2.46251, 0.477797, -1.58378, 1.01001, 2.99472, -12.0841, -8.2073, -6.22258, -4.161, 8.04681, 1.62414, 12.0931}, {3.33613, 3.33613, 13.1567, 1.4362, 1.4362, 1.4362, 0.767151, -2.38432, -2.38432, -1.0913, 2.06017, 5.33369, -6.14546, -6.14546, -2.09916, -2.72349, 1.17194, 1.17194, -2.64229, 13.859, 17.9053, 7.0887, -9.4126, -22.5067, -0.426311, -4.32174, -8.36804, 0.400674, 0.400674, -3.64562}, {-1.11204, -1.11204, -4.38557, -4.30859, -4.30859, -4.30859, 0.767151, -2.38432, -2.38432, -1.0913, 2.06017, 5.33369, 4.0475, 4.0475, 21.1879, -5.79209, 10.7092, 10.7092, 0.426311, 4.32174, 8.36804, 2.72349, -1.17194, -1.17194, 3.9389, -12.5624, -29.7028, 0.400674, 0.400674, -3.64562}, {-1.11204, -1.11204, -4.38557, 1.4362, 1.4362, 1.4362, -2.30145, 7.15295, 7.15295, -1.0913, 2.06017, 5.33369, -0.400674, -0.400674, 3.64562, -8.46827, -4.57284, -4.57284, 4.87449, 8.76992, 25.9103, 2.72349, -1.17194, -1.17194, -0.426311, -4.32174, -8.36804, 4.76589, -7.83999, -24.9804}, {-1.11204, -1.11204, -4.38557, 1.4362, 1.4362, 1.4362, 0.767151, -2.38432, -2.38432, 3.27391, -6.1805, -16.0011, -0.400674, -0.400674, 3.64562, -2.72349, 1.17194, 1.17194, 0.426311, 4.32174, 8.36804, 7.17167, 3.27624, 16.3703, -6.1711, -10.0665, -14.1128, -2.66793, 9.93794, 5.89165}, {-6.6428, 1.48026, 1.47837, 0.647646, 0.70771, -1.63632, -0.372676, 0.942791, 0.941589, -2.48924, -1.15708, 1.18752, -6.1281, -3.09572, 9.177, -0.339882, -2.04013, 0.858732, -0.785628, -4.32662, -4.3211, 10.2968, 6.66845, -5.60881, 2.27633, 0.555453, 0.554744, 3.53752, 0.264876, -2.63172}, {2.21427, -0.493421, -0.492791, -1.94294, -2.12313, 4.90895, -0.372676, 0.942791, 0.941589, -2.48924, -1.15708, 1.18752, -12.3946, 1.70881, 4.60289, 1.15082, -5.8113, -2.90762, -2.27633, -0.555453, -0.554744, 0.339882, 2.04013, -0.858732, 12.2333, 5.18378, -4.19534, 3.53752, 0.264876, -2.63172}, {2.21427, -0.493421, -0.492791, 0.647646, 0.70771, -1.63632, 1.11803, -2.82837, -2.82477, -2.48924, -1.15708, 1.18752, -3.53752, -0.264876, 2.63172, -2.93046, -4.87097, 7.404, -11.1334, 1.41823, 1.41642, 0.339882, 2.04013, -0.858732, 2.27633, 0.555453, 0.554744, 13.4945, 4.8932, -7.38181}, {2.21427, -0.493421, -0.492791, 0.647646, 0.70771, -1.63632, -0.372676, 0.942791, 0.941589, 7.46771, 3.47124, -3.56256, -3.53752, -0.264876, 2.63172, -0.339882, -2.04013, 0.858732, -2.27633, -0.555453, -0.554744, -8.51718, 4.01381, 1.11243, -0.314251, -2.27539, 7.10002, 5.02822, -3.50629, -6.39808}, {1.12186, -2.82659, -2.82659, -1.84098, -0.449088, -0.449088, 0.510215, -1.28552, 0.320147, 1.70472, 0.792411, -0.813257, 10.1017, 1.18683, 1.18683, 1.64492, 2.14409, 0.15938, -2.20929, 5.56645, -2.84093, -8.4638, -5.31374, 3.09365, 0.16843, -0.424371, 1.56034, -2.73781, 0.609518, 0.609518}, {-0.373952, 0.942198, 0.942198, 5.52295, 1.34726, 1.34726, 0.510215, -1.28552, 0.320147, 1.70472, 0.792411, -0.813257, 4.23362, -4.37831, -4.37831, -0.395942, 7.28618, -1.12121, -0.16843, 0.424371, -1.56034, -1.64492, -2.14409, -0.15938, -6.65045, -3.59401, 4.81337, -2.73781, 0.609518, 0.609518}, {-0.373952, 0.942198, 0.942198, -1.84098, -0.449088, -0.449088, -1.53064, 3.85656, -0.960441, 1.70472, 0.792411, -0.813257, 2.73781, -0.609518, -0.609518, 9.00885, 3.94045, 1.95573, 1.32738, -3.34442, -5.32914, -1.64492, -2.14409, -0.15938, 0.16843, -0.424371, 1.56034, -9.55669, -2.56013, 3.86255}, {-0.373952, 0.942198, 0.942198, -1.84098, -0.449088, -0.449088, 0.510215, -1.28552, 0.320147, -5.11416, -2.37723, 2.43977, 2.73781, -0.609518, -0.609518, 1.64492, 2.14409, 0.15938, -0.16843, 0.424371, -1.56034, -0.149109, -5.91289, -3.92817, 7.53236, 1.37198, 3.3567, -4.77867, 5.7516, -0.67107}, {0.461366, -4.35523, -1.72378, -0.132927, -0.133043, -2.07188, -0.954792, -0.955627, -0.378232, 1.24151, -0.363075, 1.87552, 0.886107, -1.09783, 10.1383, 1.34449, 1.34567, 3.0285, 5.18945, 3.20927, 1.27021, -6.31053, 0.10663, -10.5306, -1.37028, 0.613236, 0.242715, -0.3544, 1.63001, -1.85075}, {-0.153789, 1.45174, 0.574593, 0.39878, 0.399129, 6.21564, -0.954792, -0.955627, -0.378232, 1.24151, -0.363075, 1.87552, 0.969555, -7.43698, -0.447622, 5.16366, 5.16818, 4.54143, 1.37028, -0.613236, -0.242715, -1.34449, -1.34567, -3.0285, -6.33631, 2.06554, -7.25936, -0.3544, 1.63001, -1.85075}, {-0.153789, 1.45174, 0.574593, -0.132927, -0.133043, -2.07188, 2.86438, 2.86688, 1.1347, 1.24151, -0.363075, 1.87552, 0.3544, -1.63001, 1.85075, 1.8762, 1.87784, 11.316, 1.98544, -6.42021, -2.54109, -1.34449, -1.34567, -3.0285, -1.37028, 0.613236, 0.242715, -5.32043, 3.08231, -9.35282}, {-0.153789, 1.45174, 0.574593, -0.132927, -0.133043, -2.07188, -0.954792, -0.955627, -0.378232, -3.72452, 1.08923, -5.62656, 0.3544, -1.63001, 1.85075, 1.34449, 1.34567, 3.0285, 1.37028, -0.613236, -0.242715, -0.72934, -7.15265, -5.32687, -0.838575, 1.14541, 8.53023, 3.46477, 5.45251, -0.337821}, {4.44089e-16, 7.02938, 0, 1.54187, 1.54427, 0.609885, -1.74043, -1.74314, 1.3308, 0.198561, 2.542, -1.94068, -8.07331, -5.18964, -3.1934, 0.245434, 0.245817, -2.39881, 9.11299, 12.0235, -6.96814, -1.03968, -10.4138, 10.1615, -2.15129, -5.0509, 1.64495, 1.90585, -0.987441, 0.75386}, {3.05311e-16, -2.34313, -2.22045e-16, -4.6256, -4.63281, -1.82966, -1.74043, -1.74314, 1.3308, 0.198561, 2.542, -1.94068, -1.90585, 10.3599, -0.75386, 7.20714, 7.21837, -7.722, 2.15129, 5.0509, -1.64495, -0.245434, -0.245817, 2.39881, -2.94553, -15.2189, 9.40768, 1.90585, -0.987441, 0.75386}, {-3.60822e-16, -2.34313, -2.22045e-16, 1.54187, 1.54427, 0.609885, 5.22128, 5.22942, -3.99239, 0.198561, 2.542, -1.94068, -1.90585, 0.987441, -0.75386, -5.92203, -5.93126, -4.83836, 2.15129, 14.4234, -1.64495, -0.245434, -0.245817, 2.39881, -2.15129, -5.0509, 1.64495, 1.11161, -11.1554, 8.51658}, {-5.55112e-17, -2.34313, 0, 1.54187, 1.54427, 0.609885, -1.74043, -1.74314, 1.3308, -0.595682, -7.62599, 5.82204, -1.90585, 0.987441, -0.75386, 0.245434, 0.245817, -2.39881, 2.15129, 5.0509, -1.64495, -0.245434, 9.12668, 2.39881, -8.31875, -11.228, -0.794587, 8.86756, 5.98512, -4.56932}, {4.8128, 0, 0, 1.54178, 1.54312, 0.61076, 0.198549, 0.198723, -1.94057, -0.136059, -1.74185, 1.32981, -6.08986, -8.0799, -3.19798, -2.15116, -2.15304, 1.64373, 0.943366, -1.04052, 10.1609, 2.6954, 9.12042, -6.96297, -1.73756, 0.245635, -2.39867, -0.0772416, 1.90741, 0.754941}, {-1.60427, 0, 0, -4.62533, -4.62937, -1.83228, 0.198549, 0.198723, -1.94057, -0.136059, -1.74185, 1.32981, 6.49431, -1.90741, -0.754941, -2.94536, -2.94793, 9.40601, 1.73756, -0.245635, 2.39867, 2.15116, 2.15304, -1.64373, -1.19332, 7.21302, -7.71791, -0.0772416, 1.90741, 0.754941}, {-1.60427, 2.22045e-16, -2.22045e-16, 1.54178, 1.54312, 0.61076, -0.595647, -0.596168, 5.82171, -0.136059, -1.74185, 1.32981, 0.0772416, -1.90741, -0.754941, -8.31826, -8.32553, -0.799305, 8.15463, -0.245635, 2.39867, 2.15116, 2.15304, -1.64373, -1.73756, 0.245635, -2.39867, 0.466995, 8.87479, -4.5643}, {-1.60427, 0, -2.22045e-16, 1.54178, 1.54312, 0.61076, 0.198549, 0.198723, -1.94057, 0.408178, 5.22554, -3.98943, 0.0772416, -1.90741, -0.754941, -2.15116, -2.15304, 1.64373, 1.73756, -0.245635, 2.39867, 8.56822, 2.15304, -1.64373, -7.90467, -5.92686, -4.84171, -0.871438, 1.11252, 8.51722}, {4.91028, -4.91028, -4.91028, -1.57573, -1.57573, 1.57573, 1.57573, 1.57573, 1.57573, 1.63676, -1.63676, -4.78823, 10.2738, 6.2275, -10.2738, -3.02869e-13, -3.06644e-13, -3.89543, -6.2275, -10.2738, -10.2738, -6.54704, 6.54704, 23.0483, -0.0754334, 3.97086, 3.97086, -3.97086, 0.0754334, 3.97086}, {-1.63676, 1.63676, 1.63676, 4.7272, 4.7272, -4.7272, 1.57573, 1.57573, 1.57573, 1.63676, -1.63676, -4.78823, 10.5179, -6.62248, -10.5179, -6.30294, -6.30294, -10.1984, 0.0754334, -3.97086, -3.97086, 3.01943e-13, 3.04683e-13, 3.89543, -6.62248, 10.5179, 23.1238, -3.97086, 0.0754334, 3.97086}, {-1.63676, 1.63676, 1.63676, -1.57573, -1.57573, 1.57573, -4.7272, -4.7272, -4.7272, 1.63676, -1.63676, -4.78823, 3.97086, -0.0754334, -3.97086, 6.30294, 6.30294, -10.1984, 6.62248, -10.5179, -10.5179, 3.00389e-13, 2.99798e-13, 3.89543, -0.0754334, 3.97086, 3.97086, -10.5179, 6.62248, 23.1238}, {-1.63676, 1.63676, 1.63676, -1.57573, -1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -4.91028, 4.91028, 14.3647, 3.97086, -0.0754334, -3.97086, -2.96652e-13, -3.00426e-13, -3.89543, 0.0754334, -3.97086, -3.97086, 6.54704, -6.54704, -2.65162, 6.2275, 10.2738, -2.33207, -10.2738, -6.2275, -2.33207}, {4.24616, -5.57441, -4.24616, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, -0.373467, -3.64699, -2.778, 1.74951, -2.29678, -18.2508, -2.21115, -2.21115, -1.68428, -7.61705, -11.6633, 7.61705, 3.70501, 16.7991, 12.7963, 0.461631, 4.50793, -0.461631, -1.74951, 2.29678, 5.64494}, {-1.41539, 1.85814, 1.41539, 5.07516e-15, 1.27584e-14, -9.45441, 1.78885, 1.78885, -1.78885, -0.373467, -3.64699, -2.778, 7.41106, -9.72932, -11.3065, -9.36656, -9.36656, 5.47113, -0.461631, -4.50793, 0.461631, 2.21115, 2.21115, 1.68428, 1.9555, 19.0959, 10.6504, -1.74951, 2.29678, 5.64494}, {-1.41539, 1.85814, 1.41539, 0, 0, 3.15147, -5.36656, -5.36656, 5.36656, -0.373467, -3.64699, -2.778, 1.74951, -2.29678, -5.64494, -2.21115, -2.21115, -14.2902, 5.19992, -11.9405, -5.19992, 2.21115, 2.21115, 1.68428, 0.461631, 4.50793, -0.461631, -0.255645, 16.8847, 16.7569}, {-1.41539, 1.85814, 1.41539, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, 1.1204, 10.941, 8.334, 1.74951, -2.29678, -5.64494, -2.21115, -2.21115, -1.68428, -0.461631, -4.50793, 0.461631, 7.87269, -5.2214, -3.97726, 0.461631, 4.50793, -13.0675, -8.90493, -4.85864, 12.8004}, {-5.36656, -5.36656, 5.36656, -0.373467, -3.64699, 0.373467, -1.60567, 0, 0, 0.190281, 1.85814, 1.41539, -0.255645, 16.8847, 0.255645, 2.44635, 4.50793, -0.461631, 6.19624, -2.21115, 2.21115, -3.20747, -11.9405, -5.19992, 0.226431, 2.21115, -2.21115, 1.74951, -2.29678, -1.74951}, {1.78885, 1.78885, -1.78885, 1.1204, 10.941, -1.1204, -1.60567, 0, 0, 0.190281, 1.85814, 1.41539, -8.90493, -4.85864, 8.90493, 8.86902, 4.50793, -0.461631, -0.226431, -2.21115, 2.21115, -2.44635, -4.50793, 0.461631, -0.534693, -5.2214, -7.87269, 1.74951, -2.29678, -1.74951}, {1.78885, 1.78885, -1.78885, -0.373467, -3.64699, 0.373467, 4.817, 0, 0, 0.190281, 1.85814, 1.41539, -1.74951, 2.29678, 1.74951, 3.94022, 19.0959, -1.9555, -7.38185, -9.36656, 9.36656, -2.44635, -4.50793, 0.461631, 0.226431, 2.21115, -2.21115, 0.988391, -9.72932, -7.41106}, {1.78885, 1.78885, -1.78885, -0.373467, -3.64699, 0.373467, -1.60567, 0, 0, -0.570843, -5.57441, -4.24616, -1.74951, 2.29678, 1.74951, 2.44635, 4.50793, -0.461631, -0.226431, -2.21115, 2.21115, -9.60176, -11.6633, 7.61705, 1.7203, 16.7991, -3.70501, 8.17219, -2.29678, -1.74951}, {-1.80799, -0.0150891, -4.77555, -0.827431, 1.45271, 0.471751, -0.860099, -1.45095, 0.0849431, 1.08487, -0.00678866, -2.14855, 3.58755, -7.6127, -4.43776, 2.0859, -0.00217419, -0.688112, 3.7586, 7.59105, -2.4124, -6.42536, 0.0293288, 9.28229, -0.318207, -1.78726, 2.07263, -0.277826, 1.80186, 2.55075}, {0.602665, 0.0050297, 1.59185, 2.48229, -4.35813, -1.41525, -0.860099, -1.45095, 0.0849431, 1.08487, -0.00678866, -2.14855, -2.13283, -1.82198, -8.91816, 5.5263, 5.80162, -1.02788, 0.318207, 1.78726, -2.07263, -2.0859, 0.00217419, 0.688112, -4.65767, -1.7601, 10.6668, -0.277826, 1.80186, 2.55075}, {0.602665, 0.0050297, 1.59185, -0.827431, 1.45271, 0.471751, 2.5803, 4.35285, -0.254829, 1.08487, -0.00678866, -2.14855, 0.277826, -1.80186, -2.55075, 5.39562, -5.81301, -2.57512, -2.09245, 1.76714, -8.44004, -2.0859, 0.00217419, 0.688112, -0.318207, -1.78726, 2.07263, -4.61729, 1.82902, 11.1449}, {0.602665, 0.0050297, 1.59185, -0.827431, 1.45271, 0.471751, -0.860099, -1.45095, 0.0849431, -3.2546, 0.020366, 6.44564, 0.277826, -1.80186, -2.55075, 2.0859, -0.00217419, -0.688112, 0.318207, 1.78726, -2.07263, -4.49656, -0.0179446, -5.67929, 2.99152, -7.59809, 0.185628, 3.16257, 7.60566, 2.21098}, {1.57878, 4.35912, 1.72866, 0.141226, 1.44665, -1.44665, 1.40644, -1.11582e-18, -3.53145e-16, -1.02141, 0.00639156, 2.02287, -0.0889792, -5.77869, 8.28699, -1.91302, -1.78815, 1.78815, -6.71372, 1.79605, 0.712247, 5.99864, 1.76259, -9.87962, 1.08796, -1.79605, -0.712247, -0.475926, -0.0079004, -2.5004}, {-0.526258, -1.45304, -0.57622, -0.423679, -4.33994, 4.33994, 1.40644, -3.34745e-18, -1.05944e-15, -1.02141, 0.00639156, 2.02287, 2.58096, 5.82005, 4.80528, -7.53877, -1.78815, 1.78815, -1.08796, 1.79605, 0.712247, 1.91302, 1.78815, -1.78815, 5.17359, -1.82162, -8.80371, -0.475926, -0.0079004, -2.5004}, {-0.526258, -1.45304, -0.57622, 0.141226, 1.44665, -1.44665, -4.21932, 0, 0, -1.02141, 0.00639156, 2.02287, 0.475926, 0.0079004, 2.5004, -2.47792, -7.57474, 7.57474, 1.01707, 7.60821, 3.01713, 1.91302, 1.78815, -1.78815, 1.08796, -1.79605, -0.712247, 3.6097, -0.0334666, -10.5919}, {-0.526258, -1.45304, -0.57622, 0.141226, 1.44665, -1.44665, 1.40644, 3.34745e-18, 1.05944e-15, 3.06422, -0.0191747, -6.0686, 0.475926, 0.0079004, 2.5004, -1.91302, -1.78815, 1.78815, -1.08796, 1.79605, 0.712247, 4.01805, 7.60031, 0.516725, 0.523057, -7.58264, 5.07434, -6.10168, -0.0079004, -2.5004}, {10.941, -1.1204, -1.1204, 1.78885, -1.78885, -1.78885, -3.70338e-16, -2.82096e-16, 1.60567, 1.85814, 1.41539, -0.190281, -4.85864, 8.90493, 8.90493, -2.21115, 2.21115, 0.226431, 4.50793, -0.461631, -8.86902, -5.2214, -7.87269, 0.534693, -4.50793, 0.461631, 2.44635, -2.29678, -1.74951, -1.74951}, {-3.64699, 0.373467, 0.373467, -5.36656, 5.36656, 5.36656, -1.11101e-15, -8.46287e-16, 1.60567, 1.85814, 1.41539, -0.190281, 16.8847, 0.255645, 0.255645, -2.21115, 2.21115, -6.19624, 4.50793, -0.461631, -2.44635, 2.21115, -2.21115, -0.226431, -11.9405, -5.19992, 3.20747, -2.29678, -1.74951, -1.74951}, {-3.64699, 0.373467, 0.373467, 1.78885, -1.78885, -1.78885, 0, 0, -4.817, 1.85814, 1.41539, -0.190281, 2.29678, 1.74951, 1.74951, -9.36656, 9.36656, 7.38185, 19.0959, -1.9555, -3.94022, 2.21115, -2.21115, -0.226431, -4.50793, 0.461631, 2.44635, -9.72932, -7.41106, -0.988391}, {-3.64699, 0.373467, 0.373467, 1.78885, -1.78885, -1.78885, 1.11101e-15, 8.46287e-16, 1.60567, -5.57441, -4.24616, 0.570843, 2.29678, 1.74951, 1.74951, -2.21115, 2.21115, 0.226431, 4.50793, -0.461631, -2.44635, 16.7991, -3.70501, -1.7203, -11.6633, 7.61705, 9.60176, -2.29678, -1.74951, -8.17219}, {-5.57441, -4.24616, -4.24616, 1.78885, -1.78885, -1.78885, 2.85327e-15, 3.15147, -2.92187e-16, -3.64699, -2.778, 0.373467, -11.6633, 7.61705, 7.61705, -2.21115, -1.68428, 2.21115, -2.29678, -18.2508, -1.74951, 16.7991, 12.7963, -3.70501, 2.29678, 5.64494, 1.74951, 4.50793, -0.461631, -0.461631}, {1.85814, 1.41539, 1.41539, -5.36656, 5.36656, 5.36656, -5.70654e-15, 3.15147, 5.84374e-16, -3.64699, -2.778, 0.373467, -11.9405, -5.19992, -5.19992, -2.21115, -14.2902, 2.21115, -2.29678, -5.64494, -1.74951, 2.21115, 1.68428, -2.21115, 16.8847, 16.7569, 0.255645, 4.50793, -0.461631, -0.461631}, {1.85814, 1.41539, 1.41539, 1.78885, -1.78885, -1.78885, 0, -9.45441, 0, -3.64699, -2.778, 0.373467, -4.50793, 0.461631, 0.461631, -9.36656, 5.47113, 9.36656, -9.72932, -11.3065, -7.41106, 2.21115, 1.68428, -2.21115, 2.29678, 5.64494, 1.74951, 19.0959, 10.6504, -1.9555}, {1.85814, 1.41539, 1.41539, 1.78885, -1.78885, -1.78885, -2.85327e-15, 3.15147, 2.92187e-16, 10.941, 8.334, -1.1204, -4.50793, 0.461631, 0.461631, -2.21115, -1.68428, 2.21115, -2.29678, -5.64494, -1.74951, -5.2214, -3.97726, -7.87269, -4.85864, 12.8004, 8.90493, 4.50793, -13.0675, -0.461631}, {0.184458, 9.63611, 9.63611, 0.802834, -0.802834, 0.802834, -1.57551, 1.57551, 1.57551, 0.834161, 2.43936, 0.833693, -4.12769, 8.17399, -0.233398, 0.955079, -0.955079, -2.93979, 8.32547, -4.27918, -4.27918, -4.29172, -8.80237, -0.394979, -2.02344, -2.02286, -2.02286, 0.916356, -4.96265, -2.97794}, {-0.0614861, -3.21204, -3.21204, -2.4085, 2.4085, -2.4085, -1.57551, 1.57551, 1.57551, 0.834161, 2.43936, 0.833693, -0.670412, 17.8108, 15.8261, 7.25711, -7.25711, -9.24183, 2.02344, 2.02286, 2.02286, -0.955079, 0.955079, 2.93979, -5.36008, -11.7803, -5.35763, 0.916356, -4.96265, -2.97794}, {-0.0614861, -3.21204, -3.21204, 0.802834, -0.802834, 0.802834, 4.72653, -4.72653, -4.72653, 0.834161, 2.43936, 0.833693, -0.916356, 4.96265, 2.97794, -2.25626, 2.25626, -6.15113, 2.26938, 14.871, 14.871, -0.955079, 0.955079, 2.93979, -2.02344, -2.02286, -2.02286, -2.42029, -14.7201, -6.31271}, {-0.0614861, -3.21204, -3.21204, 0.802834, -0.802834, 0.802834, -1.57551, 1.57551, 1.57551, -2.50248, -7.31808, -2.50108, -0.916356, 4.96265, 2.97794, 0.955079, -0.955079, -2.93979, 2.02344, 2.02286, 2.02286, -0.709135, 13.8032, 15.7879, -5.23477, 1.18848, -5.23419, 7.21839, -11.2647, -9.27997}, {4.72653, -4.72653, -4.72653, 1.637, 1.63653, 1.63653, 1.57573, 1.57573, -1.57573, -1.63722, -4.78777, -1.6363, -6.62398, -10.5164, -10.5164, -3.97115, -3.97057, -0.0751443, -6.30322, -10.1981, 6.30322, 10.52, 23.1217, 6.62035, 0.000278382, 3.89515, -0.000278382, 0.076001, 3.9703, 3.9703}, {-1.57551, 1.57551, 1.57551, -4.91099, -4.90958, -4.90958, 1.57573, 1.57573, -1.57573, -1.63722, -4.78777, -1.6363, 6.22604, -10.2723, -10.2723, -10.2741, -10.2735, 6.22779, -0.000278382, -3.89515, 0.000278382, 3.97115, 3.97057, 0.0751443, 6.54916, 23.0462, 6.54493, 0.076001, 3.9703, 3.9703}, {-1.57551, 1.57551, 1.57551, 1.637, 1.63653, 1.63653, -4.7272, -4.7272, 4.7272, -1.63722, -4.78777, -1.6363, -0.076001, -3.9703, -3.9703, -10.5191, -10.5167, -6.62125, 6.30176, -10.1972, -6.30176, 3.97115, 3.97057, 0.0751443, 0.000278382, 3.89515, -0.000278382, 6.62488, 23.1214, 10.5155}, {-1.57551, 1.57551, 1.57551, 1.637, 1.63653, 1.63653, 1.57573, 1.57573, -1.57573, 4.91166, 14.3633, 4.90891, -0.076001, -3.9703, -3.9703, -3.97115, -3.97057, -0.0751443, -0.000278382, -3.89515, 0.000278382, 10.2732, -2.33146, -6.22689, -6.5477, -2.65096, -6.54639, -6.22694, -2.33264, 10.2732}, {2.2538, -2.2568, -6.95596, 1.0326, -1.0322, -0.409331, 0.623613, 1.72184, 0.682817, -0.904944, -1.44191, -2.59214, -4.47814, 4.47482, -0.722725, -2.04719, -0.852443, -0.338046, -2.33666, -9.94553, -6.44129, 5.66697, 6.62007, 10.7066, -0.157789, 3.05817, 3.71002, 0.347745, -0.346017, 2.36005}, {-0.751267, 0.752267, 2.31865, -3.09779, 3.0966, 1.22799, 0.623613, 1.72184, 0.682817, -0.904944, -1.44191, -2.59214, 2.65732, -2.66305, -11.6347, -4.54164, -7.73981, -3.06931, 0.157789, -3.05817, -3.71002, 2.04719, 0.852443, 0.338046, 3.46199, 8.8258, 14.0786, 0.347745, -0.346017, 2.36005}, {-0.751267, 0.752267, 2.31865, 1.0326, -1.0322, -0.409331, -1.87084, -5.16552, -2.04845, -0.904944, -1.44191, -2.59214, -0.347745, 0.346017, -2.36005, -6.17758, 3.27636, 1.29928, 3.16286, -6.06723, -12.9846, 2.04719, 0.852443, 0.338046, -0.157789, 3.05817, 3.71002, 3.96752, 5.42161, 12.7286}, {-0.751267, 0.752267, 2.31865, 1.0326, -1.0322, -0.409331, 0.623613, 1.72184, 0.682817, 2.71483, 4.32572, 7.77641, -0.347745, 0.346017, -2.36005, -2.04719, -0.852443, -0.338046, 0.157789, -3.05817, -3.71002, 5.05226, -2.15663, -8.93656, -4.28818, 7.18697, 5.34735, -2.14671, -7.23338, -0.371216}, {4.6308, -4.62902, -1.83569, 1.74378, -1.74182, 1.32959, 2.34612, 3.47392e-16, -3.39235e-15, -2.5463, 0.198817, -1.94149, -7.22258, 7.21305, -7.71818, -5.0554, 2.15301, -1.64347, -10.3764, -1.90726, -0.756347, 15.2406, -2.94828, 9.40942, 0.991964, 1.90726, 0.756347, 0.24744, -0.245751, 2.39981}, {-1.5436, 1.54301, 0.611898, -5.23135, 5.22547, -3.98877, 2.34612, -2.31594e-16, 2.26157e-15, -2.5463, 0.198817, -1.94149, 5.92697, -5.92628, -4.8474, -14.4399, 2.15301, -1.64347, -0.991964, -1.90726, -0.756347, 5.0554, -2.15301, 1.64347, 11.1772, 1.11199, 8.5223, 0.24744, -0.245751, 2.39981}, {-1.5436, 1.54301, 0.611898, 1.74378, -1.74182, 1.32959, -7.03835, 0, 0, -2.5463, 0.198817, -1.94149, -0.24744, 0.245751, -2.39981, -12.0305, 9.12031, -6.96183, 5.18244, -8.07929, -3.20394, 5.0554, -2.15301, 1.64347, 0.991964, 1.90726, 0.756347, 10.4326, -1.04102, 10.1658}, {-1.5436, 1.54301, 0.611898, 1.74378, -1.74182, 1.32959, 2.34612, 1.15797e-16, -1.13078e-15, 7.6389, -0.59645, 5.82447, -0.24744, 0.245751, -2.39981, -5.0554, 2.15301, -1.64347, -0.991964, -1.90726, -0.756347, 11.2298, -8.32504, -0.804126, -5.98318, 8.87456, -4.56202, -9.13703, -0.245751, 2.39981}, {7.47016e-18, 3.62803, 8.88178e-16, -1.45582, 0.0794645, -1.44142, 1.45582, 0.249439, -0.577805, -1.62092e-12, 0.88044, 2.01922, 7.62276, 1.07875, 7.54736, -2.00373e-12, -0.406547, 2.4959, -7.62276, 0.188753, 3.02542, 8.48742e-12, -3.11521, -10.5728, 1.79949, -1.18651, -0.714206, -1.79949, -1.39661, -1.78169}, {-1.75097e-16, -1.20934, 0, 4.36745, -0.238394, 4.32425, 1.45582, 0.249439, -0.577805, -1.62031e-12, 0.88044, 2.01922, 1.79949, 6.23398, 1.78169, -5.82327, -1.4043, 4.80711, -1.79949, 1.18651, 0.714206, 2.00284e-12, 0.406547, -2.4959, 1.79949, -4.70827, -8.79109, -1.79949, -1.39661, -1.78169}, {-7.62205e-17, -1.20934, 0, -1.45582, 0.0794645, -1.44142, -4.36745, -0.748316, 1.73341, -1.61907e-12, 0.88044, 2.01922, 1.79949, 1.39661, 1.78169, 5.82327, -0.724405, 8.26156, -1.79949, 6.02388, 0.714206, 2.00151e-12, 0.406547, -2.4959, 1.79949, -1.18651, -0.714206, -1.79949, -4.91837, -9.85858}, {-1.9973e-16, -1.20934, 4.44089e-16, -1.45582, 0.0794645, -1.44142, 1.45582, 0.249439, -0.577805, 4.86018e-12, -2.64132, -6.05767, 1.79949, 1.39661, 1.78169, -2.00262e-12, -0.406547, 2.4959, -1.79949, 1.18651, 0.714206, 2.00364e-12, 5.24392, -2.4959, 7.62276, -1.50437, 5.05146, -7.62276, -2.39436, 0.529529}, {4.15997e-12, 1.3684, -5.1823, 1.45582, 0.310608, -0.437518, -1.45582, 0.975521, 0.61362, 1.52817e-12, -0.829997, -1.90353, -7.62276, -1.06255, 0.155649, 1.74971e-13, -1.58974, -0.217674, 7.62276, -4.54408, -5.34818, -6.28766e-12, 4.90973, 7.83181, -1.79949, 0.642, 2.8937, 1.79949, -0.179878, 1.59442}, {-1.3859e-12, -0.456132, 1.72743, -4.36745, -0.931824, 1.31255, -1.45582, 0.975521, 0.61362, 1.52713e-12, -0.829997, -1.90353, -1.79949, 2.00441, -8.50415, 5.82327, -5.49183, -2.67215, 1.79949, -0.642, -2.8937, -1.74749e-13, 1.58974, 0.217674, -1.79949, 3.96199, 10.5078, 1.79949, -0.179878, 1.59442}, {-1.38592e-12, -0.456132, 1.72743, 1.45582, 0.310608, -0.437518, 4.36745, -2.92656, -1.84086, 1.52736e-12, -0.829997, -1.90353, -1.79949, 0.179878, -1.59442, -5.82327, -2.83217, 1.5324, 1.79949, 1.18253, -9.80343, -1.74749e-13, 1.58974, 0.217674, -1.79949, 0.642, 2.8937, 1.79949, 3.14011, 9.20856}, {-1.38453e-12, -0.456132, 1.72743, 1.45582, 0.310608, -0.437518, -1.45582, 0.975521, 0.61362, -4.57858e-12, 2.48999, 5.7106, -1.79949, 0.179878, -1.59442, 1.75193e-13, -1.58974, -0.217674, 1.79949, -0.642, -2.8937, 5.36315e-12, 3.41427, -6.69206, -7.62276, -0.600431, 4.64377, 7.62276, -4.08196, -0.860057}, {3.89774, -2.39084, -3.90175, -1.08034, -0.824783, -1.26412, 1.27484, -0.81558, 1.06845, 1.10475, 0.843417, -1.10491, 7.26269, 3.33354, 5.01139, -0.240416, 2.0276, 0.241863, -5.06919, 3.28535, -7.20207, -4.17857, -5.40127, 4.17779, -0.0301684, -0.023032, 2.92828, -2.94133, -0.0344082, 0.0450763}, {-1.29925, 0.796947, 1.30058, 3.24102, 2.47435, 3.79235, 1.27484, -0.81558, 1.06845, 1.10475, 0.843417, -1.10491, 8.13832, -3.15338, -5.24742, -5.33978, 5.28992, -4.03192, 0.0301684, 0.023032, -2.92828, 0.240416, -2.0276, -0.241863, -4.44916, -3.3967, 7.34794, -2.94133, -0.0344082, 0.0450763}, {-1.29925, 0.796947, 1.30058, -1.08034, -0.824783, -1.26412, -3.82452, 2.44674, -3.20534, 1.10475, 0.843417, -1.10491, 2.94133, 0.0344082, -0.0450763, 4.08094, 5.32673, 5.29833, 5.22716, -3.16475, -8.13062, 0.240416, -2.0276, -0.241863, -0.0301684, -0.023032, 2.92828, -7.36032, -3.40808, 4.46473}, {-1.29925, 0.796947, 1.30058, -1.08034, -0.824783, -1.26412, 1.27484, -0.81558, 1.06845, -3.31424, -2.53025, 3.31474, 2.94133, 0.0344082, -0.0450763, -0.240416, 2.0276, 0.241863, 0.0301684, 0.023032, -2.92828, 5.43741, -5.21539, -5.4442, 4.29119, 3.2761, 7.98475, -8.04069, 3.22791, -4.22871}, {-7.02938, 0, 7.99361e-15, 0, 0, -2.34462, -1.02079e-11, 1.78885, 0.00114147, -2.34313, -1.78885, 2.34348, -2.89626, 0, 12.2766, 1.26176e-11, -2.21115, 2.8967, -2.89626, -9.36656, -0.00597681, 9.3725, 9.36656, -12.2706, 2.89626, 2.21115, 0.00141093, 2.89626, 0, -2.89811}, {2.34313, 0, 4.44089e-15, 0, 0, 7.03386, -1.02099e-11, 1.78885, 0.00114147, -2.34313, -1.78885, 2.34348, -12.2688, 0, 2.89811, 5.346e-11, -9.36656, 2.89213, -2.89626, -2.21115, -0.00141093, -1.26208e-11, 2.21115, -2.8967, 12.2688, 9.36656, -9.37251, 2.89626, 0, -2.89811}, {2.34313, -4.21885e-15, 2.22045e-15, 0, 0, -2.34462, 3.06361e-11, -5.36656, -0.00342441, -2.34313, -1.78885, 2.34348, -2.89626, 5.32907e-15, 2.89811, 1.26228e-11, -2.21115, 12.2752, -12.2688, -2.21115, -0.00141093, -1.26233e-11, 2.21115, -2.8967, 2.89626, 2.21115, 0.00141093, 12.2688, 7.15542, -12.272}, {2.34313, 3.10862e-15, -3.9968e-15, 0, 0, -2.34462, -1.0211e-11, 1.78885, 0.00114147, 7.02938, 5.36656, -7.03044, -2.89626, -3.55271e-15, 2.89811, 1.26215e-11, -2.21115, 2.8967, -2.89626, -2.21115, -0.00141093, -9.3725, 2.21115, -2.8967, 2.89626, 2.21115, 9.37989, 2.89626, -7.15542, -2.90268}, {-4.72653, 4.72653, 4.72653, -0.802949, -0.802719, 0.802949, -3.21204, 3.21204, -0.0614861, 2.43948, -0.833808, 0.834046, 2.25686, 6.15053, -2.25686, 4.96279, -2.97808, -0.916498, 14.871, -14.871, 2.26938, -14.7207, 6.31331, -2.41969, -2.02286, 2.02286, -2.02344, 0.954937, -2.93965, -0.954937}, {1.57551, -1.57551, -1.57551, 2.40885, 2.40816, -2.40885, -3.21204, 3.21204, -0.0614861, 2.43948, -0.833808, 0.834046, -7.25697, 9.24169, 7.25697, 17.8109, -15.8262, -0.670554, 2.02286, -2.02286, 2.02344, -4.96279, 2.97808, 0.916498, -11.7808, 5.35809, -5.35962, 0.954937, -2.93965, -0.954937}, {1.57551, -1.57551, -1.57551, -0.802949, -0.802719, 0.802949, 9.63611, -9.63611, 0.184458, 2.43948, -0.833808, 0.834046, -0.954937, 2.93965, 0.954937, 8.17459, 0.232798, -4.12829, -4.27918, 4.27918, 8.32547, -4.96279, 2.97808, 0.916498, -2.02286, 2.02286, -2.02344, -8.80297, 0.39558, -4.29112}, {1.57551, -1.57551, -1.57551, -0.802949, -0.802719, 0.802949, -3.21204, 3.21204, -0.0614861, -7.31843, 2.50142, -2.50214, -0.954937, 2.93965, 0.954937, 4.96279, -2.97808, -0.916498, 2.02286, -2.02286, 2.02344, -11.2648, 9.28012, 7.21853, 1.18894, 5.23374, -5.23523, 13.8031, -15.7878, -0.708993}, {-4.72653, 4.72653, 4.72653, 1.57596, 1.57551, 1.57551, 1.63653, -1.63653, 1.637, -4.788, 1.63653, -1.637, -10.1993, -6.30204, -6.30204, -3.97085, 0.0754226, -3.97087, -10.5164, 10.5164, -6.62398, 23.1228, -6.62153, 10.5189, 3.9703, -3.9703, 0.076001, 3.89543, -1.81144e-12, -1.80922e-12}, {1.57551, -1.57551, -1.57551, -4.72788, -4.72653, -4.72653, 1.63653, -1.63653, 1.637, -4.788, 1.63653, -1.637, -10.1975, 6.30204, 6.30204, -10.517, 6.62153, -10.5189, -3.9703, 3.9703, -0.076001, 3.97085, -0.0754226, 3.97087, 23.1223, -10.5164, 6.62398, 3.89543, -1.81766e-12, -1.81499e-12}, {1.57551, -1.57551, -1.57551, 1.57596, 1.57551, 1.57551, -4.90958, 4.90958, -4.91099, -4.788, 1.63653, -1.637, -3.89543, 1.81677e-12, 1.81988e-12, -10.2747, -6.22661, -10.2729, -10.2723, 10.2723, 6.22604, 3.97085, -0.0754226, 3.97087, 3.9703, -3.9703, 0.076001, 23.0474, -6.54611, 6.54798}, {1.57551, -1.57551, -1.57551, 1.57596, 1.57551, 1.57551, 1.63653, -1.63653, 1.637, 14.364, -4.90958, 4.91099, -3.89543, 1.81632e-12, 1.81677e-12, -3.97085, 0.0754226, -3.97087, -3.9703, 3.9703, -0.076001, -2.33118, 6.22661, 10.2729, -2.33354, -10.2723, -6.22604, -2.65068, 6.54611, -6.54798}, {-1.1204, 1.1204, 10.941, 0, -1.60567, 0, -1.78885, 1.78885, 1.78885, 1.41539, 0.190281, 1.85814, -0.461631, 8.86902, 4.50793, 2.21115, -0.226431, -2.21115, 8.90493, -8.90493, -4.85864, -7.87269, -0.534693, -5.2214, -1.74951, 1.74951, -2.29678, 0.461631, -2.44635, -4.50793}, {0.373467, -0.373467, -3.64699, 0, 4.817, 0, -1.78885, 1.78885, 1.78885, 1.41539, 0.190281, 1.85814, -1.9555, 3.94022, 19.0959, 9.36656, -7.38185, -9.36656, 1.74951, -1.74951, 2.29678, -2.21115, 0.226431, 2.21115, -7.41106, 0.988391, -9.72932, 0.461631, -2.44635, -4.50793}, {0.373467, -0.373467, -3.64699, 0, -1.60567, 0, 5.36656, -5.36656, -5.36656, 1.41539, 0.190281, 1.85814, -0.461631, 2.44635, 4.50793, 2.21115, 6.19624, -2.21115, 0.255645, -0.255645, 16.8847, -2.21115, 0.226431, 2.21115, -1.74951, 1.74951, -2.29678, -5.19992, -3.20747, -11.9405}, {0.373467, -0.373467, -3.64699, 0, -1.60567, 0, -1.78885, 1.78885, 1.78885, -4.24616, -0.570843, -5.57441, -0.461631, 2.44635, 4.50793, 2.21115, -0.226431, -2.21115, 1.74951, -1.74951, 2.29678, -3.70501, 1.7203, 16.7991, -1.74951, 8.17219, -2.29678, 7.61705, -9.60176, -11.6633}, {-9.45441, 1.33227e-15, 1.59872e-14, -1.78885, 1.78885, 1.78885, 1.41539, -1.41539, 1.85814, -2.778, -0.373467, -3.64699, 5.47113, -9.36656, -9.36656, 0.461631, -0.461631, -4.50793, -11.3065, 7.41106, -9.72932, 10.6504, 1.9555, 19.0959, 5.64494, -1.74951, 2.29678, 1.68428, 2.21115, 2.21115}, {3.15147, -1.88738e-15, -7.10543e-15, 5.36656, -5.36656, -5.36656, 1.41539, -1.41539, 1.85814, -2.778, -0.373467, -3.64699, -14.2902, -2.21115, -2.21115, -5.19992, 5.19992, -11.9405, -5.64494, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, 16.7569, -0.255645, 16.8847, 1.68428, 2.21115, 2.21115}, {3.15147, 2.55351e-15, -3.10862e-15, -1.78885, 1.78885, 1.78885, -4.24616, 4.24616, -5.57441, -2.778, -0.373467, -3.64699, -1.68428, -2.21115, -2.21115, 7.61705, -7.61705, -11.6633, -18.2508, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, 5.64494, -1.74951, 2.29678, 12.7963, 3.70501, 16.7991}, {3.15147, 6.10623e-16, 3.9968e-15, -1.78885, 1.78885, 1.78885, 1.41539, -1.41539, 1.85814, 8.334, 1.1204, 10.941, -1.68428, -2.21115, -2.21115, 0.461631, -0.461631, -4.50793, -5.64494, 1.74951, -2.29678, -13.0675, 0.461631, 4.50793, 12.8004, -8.90493, -4.85864, -3.97726, 7.87269, -5.2214}, {0.889469, 0.890856, -5.70584, -0.741046, -0.742202, -0.293121, 1.30296, -1.03813, 0.515387, -0.265426, 2.07729, -2.12421, 4.24665, 4.25327, -0.816132, -0.694566, 2.20061, -0.274736, -6.45592, 5.80278, -5.04953, 1.75627, -10.5098, 8.77158, 1.24407, -1.65026, 2.98799, -1.28247, -1.28446, 1.98862}, {-0.29649, -0.296952, 1.90195, 2.22314, 2.2266, 0.879363, 1.30296, -1.03813, 0.515387, -0.265426, 2.07729, -2.12421, 2.46842, 2.47227, -9.5964, -5.90641, 6.35314, -2.33628, -1.24407, 1.65026, -2.98799, 0.694566, -2.20061, 0.274736, 2.30577, -9.9594, 11.4848, -1.28247, -1.28446, 1.98862}, {-0.29649, -0.296952, 1.90195, -0.741046, -0.742202, -0.293121, -3.90889, 3.1144, -1.54616, -0.265426, 2.07729, -2.12421, 1.28247, 1.28446, -1.98862, 2.26962, 5.16942, 0.897749, -0.0581089, 2.83806, -10.5958, 0.694566, -2.20061, 0.274736, 1.24407, -1.65026, 2.98799, -0.220762, -9.59361, 10.4855}, {-0.29649, -0.296952, 1.90195, -0.741046, -0.742202, -0.293121, 1.30296, -1.03813, 0.515387, 0.796277, -6.23186, 6.37263, 1.28247, 1.28446, -1.98862, -0.694566, 2.20061, -0.274736, -1.24407, 1.65026, -2.98799, 1.88052, -1.01281, -7.33305, 4.20825, 1.31855, 4.16047, -6.49431, 2.86807, -0.0729313}, {1.60243, -4.68893, 4.44089e-16, 1.23856, -0.534131, 1.50236e-16, -0.868329, 0.25394, -1.31177, 0.163908, -1.28279, 1.31177, -5.82496, 0.864798, -6.66134e-16, -0.457635, 0.346335, 1.62143, 5.20686, -3.26159, 6.86849, -0.197999, 4.78481, -6.86849, -1.73355, 2.24583, -1.62143, 0.870711, 1.27173, 0}, {-0.534143, 1.56298, -2.22045e-16, -3.71569, 1.60239, -6.76061e-16, -0.868329, 0.25394, -1.31177, 0.163908, -1.28279, 1.31177, 1.26586, -7.52364, 8.88178e-16, 3.01568, -0.669425, 6.86849, 1.73355, -2.24583, 1.62143, 0.457635, -0.346335, -1.62143, -2.38918, 7.37698, -6.86849, 0.870711, 1.27173, 0}, {-0.534143, 1.56298, 2.22045e-16, 1.23856, -0.534131, -3.00472e-16, 2.60499, -0.76182, 3.9353, 0.163908, -1.28279, 1.31177, -0.870711, -1.27173, 0, -5.41189, 2.48286, 1.62143, 3.87012, -8.49775, 1.62143, 0.457635, -0.346335, -1.62143, -1.73355, 2.24583, -1.62143, 0.215077, 6.40287, -5.24706}, {-0.534143, 1.56298, 0, 1.23856, -0.534131, 4.50708e-16, -0.868329, 0.25394, -1.31177, -0.491725, 3.84836, -3.9353, -0.870711, -1.27173, -4.44089e-16, -0.457635, 0.346335, 1.62143, 1.73355, -2.24583, 1.62143, 2.59421, -6.59825, -1.62143, -6.6878, 4.38236, -1.62143, 4.34403, 0.255965, 5.24706}, {3.16808, 2.71157e-16, -8.88178e-16, -0.300269, 1.44665, -1.44665, 0.153249, -1.44665, -0.572575, 1.20305, -1.58738e-12, 2.01922, 2.87755, -7.57474, 7.57474, 0.181727, -1.96199e-12, 2.4959, 0.502898, 7.57474, 2.99804, -4.99391, 8.31151e-12, -10.5728, -1.11589, -1.78815, -0.707741, -1.67647, 1.78815, -1.78815}, {-1.05603, 1.56152e-17, 0, 0.900808, -4.33994, 4.33994, 0.153249, -1.44665, -0.572575, 1.20305, -1.58652e-12, 2.01922, 5.90057, -1.78815, 1.78815, -0.431268, 5.78659, 4.7862, 1.11589, 1.78815, 0.707741, -0.181727, 1.9611e-12, -2.4959, -5.92808, -1.78815, -8.78463, -1.67647, 1.78815, -1.78815}, {-1.05603, -4.03605e-17, 0, -0.300269, 1.44665, -1.44665, -0.459746, 4.33994, 1.71772, 1.20305, -1.58802e-12, 2.01922, 1.67647, -1.78815, 1.78815, 1.3828, -5.78659, 8.28248, 5.34, 1.78815, 0.707741, -0.181727, 1.96287e-12, -2.4959, -1.11589, -1.78815, -0.707741, -6.48866, 1.78815, -9.86504}, {-1.05603, -1.63709e-17, 4.44089e-16, -0.300269, 1.44665, -1.44665, 0.153249, -1.44665, -0.572575, -3.60914, 4.76214e-12, -6.05767, 1.67647, -1.78815, 1.78815, 0.181727, -1.96221e-12, 2.4959, 1.11589, 1.78815, 0.707741, 4.04237, 1.96294e-12, -2.4959, 0.0851836, -7.57474, 5.07885, -2.28947, 7.57474, 0.502145}, {-1.48316, 4.33994, 1.33227e-15, 0.561638, 1.44665, 4.17162e-16, -0.27448, -1.03171e-12, 1.31177, -0.781545, 1.03171e-12, -1.31177, -3.55187, -5.78659, -1.77636e-15, -0.354947, -1.78815, -1.62143, 0.8261, 1.78815, -6.86849, 3.48113, 1.78815, 6.86849, 0.27182, -1.78815, 1.62143, 1.30532, 0, 0}, {0.494387, -1.44665, 2.22045e-16, -1.68492, -4.33994, 8.34324e-16, -0.27448, -1.03124e-12, 1.31177, -0.781545, 1.03124e-12, -1.31177, -3.28287, 5.78659, -8.88178e-16, 0.742973, -1.78815, -6.86849, -0.27182, 1.78815, -1.62143, 0.354947, 1.78815, 1.62143, 3.398, -1.78815, 6.86849, 1.30532, 0, 0}, {0.494387, -1.44665, -2.22045e-16, 0.561638, 1.44665, 2.78108e-16, 0.82344, 3.09443e-12, -3.9353, -0.781545, 1.03148e-12, -1.31177, -1.30532, 3.59135e-16, 0, -2.6015, -7.57474, -1.62143, -2.24937, 7.57474, -1.62143, 0.354947, 1.78815, 1.62143, 0.27182, -1.78815, 1.62143, 4.4315, -4.1259e-12, 5.24706}, {0.494387, -1.44665, 2.22045e-16, 0.561638, 1.44665, -2.78108e-16, -0.27448, -1.03171e-12, 1.31177, 2.34464, -3.09513e-12, 3.9353, -1.30532, 3.59135e-16, 0, -0.354947, -1.78815, -1.62143, -0.27182, 1.78815, -1.62143, -1.6226, 7.57474, 1.62143, -1.97473, -7.57474, 1.62143, 2.40324, 4.12684e-12, -5.24706}, {4.33994, 0.162335, 4.33994, 0, 1.38248, 0, 1.44665, 0.246581, -0.572575, -1.76997e-12, -1.57494, 2.01922, 1.78815, -7.17185, 1.78815, -1.78815, -2.01362, 0.707741, -5.78659, -1.22423, 4.7862, 1.78815, 8.3134, -8.78463, 2.1878e-12, 0.237905, -2.4959, -1.78815, 1.64195, -1.78815}, {-1.44665, -0.0541117, -1.44665, -1.48949e-15, -4.14743, -5.64752e-15, 1.44665, 0.246581, -0.572575, -1.77017e-12, -1.57494, 2.01922, 7.57474, -1.4255, 7.57474, -7.57474, -2.99995, 2.99804, -2.18708e-12, -0.237905, 2.4959, 1.78815, 2.01362, -0.707741, 9.26812e-12, 6.53768, -10.5728, -1.78815, 1.64195, -1.78815}, {-1.44665, -0.0541117, -1.44665, -2.42885e-27, 1.38248, 2.77202e-15, -4.33994, -0.739742, 1.71772, -1.76924e-12, -1.57494, 2.01922, 1.78815, -1.64195, 1.78815, -1.78815, -7.54353, 0.707741, 5.78659, -0.021458, 8.28248, 1.78815, 2.01362, -0.707741, 2.1869e-12, 0.237905, -2.4959, -1.78815, 7.94173, -9.86504}, {-1.44665, -0.0541117, -1.44665, 0, 1.38248, 0, 1.44665, 0.246581, -0.572575, 5.31045e-12, 4.72483, -6.05767, 1.78815, -1.64195, 1.78815, -1.78815, -2.01362, 0.707741, -2.18766e-12, -0.237905, 2.4959, 7.57474, 2.23007, 5.07885, 2.18802e-12, -5.292, -2.4959, -7.57474, 0.655625, 0.502145}, {-4.33994, 1.02197, -0.540949, -9.62561e-13, 0.52571, 1.09845, -1.44665, -1.05053, -0.169142, 9.72352e-13, 0.86548, -1.10962, -1.78815, -2.33158, -5.97445, 1.78815, 0.648718, -1.14869, 5.78659, 5.92175, 0.662758, -1.78815, -4.11064, 5.58719, -1.2103e-14, -1.71961, 0.0138116, 1.78815, 0.22874, 1.58064}, {1.44665, -0.340656, 0.180316, 2.88884e-12, -1.57713, -3.29535, -1.44665, -1.05053, -0.169142, 9.72241e-13, 0.86548, -1.10962, -7.57474, 1.13389, -2.30191, 7.57474, 4.85086, -0.472119, 1.11288e-14, 1.71961, -0.0138116, -1.78815, -0.648718, 1.14869, -3.90045e-12, -5.18153, 4.45231, 1.78815, 0.22874, 1.58064}, {1.44665, -0.340656, 0.180316, -9.63744e-13, 0.52571, 1.09845, 4.33994, 3.1516, 0.507427, 9.73548e-13, 0.86548, -1.10962, -1.78815, -0.22874, -1.58064, 1.78815, -1.45412, -5.54249, -5.78659, 3.08223, -0.735077, -1.78815, -0.648718, 1.14869, -1.21179e-14, -1.71961, 0.0138116, 1.78815, -3.23318, 6.01914}, {1.44665, -0.340656, 0.180316, -9.6335e-13, 0.52571, 1.09845, -1.44665, -1.05053, -0.169142, -2.91945e-12, -2.59644, 3.32887, -1.78815, -0.22874, -1.58064, 1.78815, 0.648718, -1.14869, 1.17538e-14, 1.71961, -0.0138116, -7.57474, 0.713906, 0.427423, 3.84129e-12, -3.82245, -4.37999, 7.57474, 4.43088, 2.25721}, {-4.74899, 4.74899, 3.61742, 0.497745, -0.497745, 2.77232, -2.29648, -0.854984, 1.74929, 0.215741, 2.93573, -3.3158, -4.56292, 4.56292, -13.0256, 2.22336, 1.67207, -5.58902, 10.0679, 6.43345, -7.66893, -3.08633, -13.415, 18.8522, -0.881918, -3.01351, 0.671778, 2.57194, -2.57194, 1.93632}, {1.583, -1.583, -1.20581, -1.49324, 1.49324, -8.31697, -2.29648, -0.854984, 1.74929, 0.215741, 2.93573, -3.3158, -8.90393, 8.90393, 2.88691, 11.4093, 5.092, -12.5862, 0.881918, 3.01351, -0.671778, -2.22336, -1.67207, 5.58902, -1.74488, -14.7564, 13.935, 2.57194, -2.57194, 1.93632}, {1.583, -1.583, -1.20581, 0.497745, -0.497745, 2.77232, 6.88945, 2.56495, -5.24786, 0.215741, 2.93573, -3.3158, -2.57194, 2.57194, -1.93632, 0.232383, 3.66305, -16.6783, -5.45007, 9.3455, 4.15145, -2.22336, -1.67207, 5.58902, -0.881918, -3.01351, 0.671778, 1.70898, -14.3148, 15.1995}, {1.583, -1.583, -1.20581, 0.497745, -0.497745, 2.77232, -2.29648, -0.854984, 1.74929, -0.647223, -8.80718, 9.94741, -2.57194, 2.57194, -1.93632, 2.22336, 1.67207, -5.58902, 0.881918, 3.01351, -0.671778, -8.55536, 4.65993, 10.4123, -2.8729, -1.02253, -10.4175, 11.7579, 0.847997, -5.06083}, {6.34574, -4.8337, 3.10867, 0.725317, 2.59898, -0.725317, 1.60925, -1.2258, -1.60925, -0.219319, -2.98441, 3.37079, -1.18322, -15.6, 5.07865, -2.88568, -1.69734, 2.88568, -5.81154, 4.42679, 9.70697, 3.76295, 13.635, -16.3688, -0.625449, 0.47642, -3.26998, -1.71805, 5.20411, -2.17738}, {-2.11525, 1.61123, -1.03622, -2.17595, -7.79693, 2.17595, 1.60925, -1.2258, -1.60925, -0.219319, -2.98441, 3.37079, 10.179, -11.649, 6.32227, -9.32267, 3.20588, 9.32267, 0.625449, -0.47642, 3.26998, 2.88568, 1.69734, -2.88568, 0.251825, 12.4141, -16.7531, -1.71805, 5.20411, -2.17738}, {-2.11525, 1.61123, -1.03622, 0.725317, 2.59898, -0.725317, -4.82774, 3.67741, 4.82774, -0.219319, -2.98441, 3.37079, 1.71805, -5.20411, 2.17738, -5.78695, -12.0932, 5.78695, 9.08643, -6.92136, 7.41487, 2.88568, 1.69734, -2.88568, -0.625449, 0.47642, -3.26998, -0.840773, 17.1417, -15.6605}, {-2.11525, 1.61123, -1.03622, 0.725317, 2.59898, -0.725317, 1.60925, -1.2258, -1.60925, 0.657956, 8.95322, -10.1124, 1.71805, -5.20411, 2.17738, -2.88568, -1.69734, 2.88568, 0.625449, -0.47642, 3.26998, 11.3467, -4.7476, 1.25921, -3.52672, -9.91949, -0.36871, -8.15504, 10.1073, 4.25961}, {-5.36656, 5.36656, -5.36656, -1.78885, 1.78885, 1.36261, 0, -3.15147, 0, 0, 3.15147, -3.15147, 7.15542, -7.15542, -9.34589, 2.21115, 1.68428, -1.68428, -2.21115, 18.7124, -2.21115, -2.21115, -14.2902, 14.2902, 2.21115, -6.10657, 2.21115, 0, 3.63087e-12, 3.89543}, {1.78885, -1.78885, 1.78885, 5.36656, -5.36656, -4.08784, 0, -3.15147, 0, 0, 3.15147, -3.15147, -7.15542, 7.15542, -11.0508, 2.21115, 14.2902, -1.68428, -2.21115, 6.10657, -2.21115, -2.21115, -1.68428, 1.68428, 2.21115, -18.7124, 14.817, 0, 3.63087e-12, 3.89543}, {1.78885, -1.78885, 1.78885, -1.78885, 1.78885, 1.36261, 0, 9.45441, 0, 0, 3.15147, -3.15147, -4.44089e-16, -3.63354e-12, -3.89543, 9.36656, -5.47113, -7.13474, -9.36656, 13.262, -9.36656, -2.21115, -1.68428, 1.68428, 2.21115, -6.10657, 2.21115, 0, -12.6059, 16.5013}, {1.78885, -1.78885, 1.78885, -1.78885, 1.78885, 1.36261, 0, -3.15147, 0, 0, -9.45441, 9.45441, -4.44089e-16, -3.62865e-12, -3.89543, 2.21115, 1.68428, -1.68428, -2.21115, 6.10657, -2.21115, -9.36656, 5.47113, -5.47113, 9.36656, -13.262, -3.23931, 0, 12.6059, 3.89543}, {0, -1.77636e-15, 9.45441, -1.78885, 1.36261, 1.78885, 1.78885, 1.78885, -1.78885, 0, -3.15147, 3.15147, 9.36656, -7.13474, -5.47113, 0, -3.89543, -3.6291e-12, -9.36656, -9.36656, 13.262, 0, 16.5013, -12.6059, 2.21115, 2.21115, -6.10657, -2.21115, 1.68428, -1.68428}, {3.08199e-16, 0, -3.15147, 5.36656, -4.08784, -5.36656, 1.78885, 1.78885, -1.78885, -3.08199e-16, -3.15147, 3.15147, 2.21115, -1.68428, 14.2902, -7.15542, -11.0508, 7.15542, -2.21115, -2.21115, 6.10657, -7.65114e-32, 3.89543, 3.62544e-12, 2.21115, 14.817, -18.7124, -2.21115, 1.68428, -1.68428}, {-3.08199e-16, 8.88178e-16, -3.15147, -1.78885, 1.36261, 1.78885, -5.36656, -5.36656, 5.36656, 3.08199e-16, -3.15147, 3.15147, 2.21115, -1.68428, 1.68428, 7.15542, -9.34589, -7.15542, -2.21115, -2.21115, 18.7124, 7.65114e-32, 3.89543, 3.62633e-12, 2.21115, 2.21115, -6.10657, -2.21115, 14.2902, -14.2902}, {-3.08199e-16, 0, -3.15147, -1.78885, 1.36261, 1.78885, 1.78885, 1.78885, -1.78885, -9.24597e-16, 9.45441, -9.45441, 2.21115, -1.68428, 1.68428, 0, -3.89543, -3.62776e-12, -2.21115, -2.21115, 6.10657, 1.2328e-15, 3.89543, 12.6059, 9.36656, -3.23931, -13.262, -9.36656, -5.47113, 5.47113}, {1.6947, 4.26991, -0.547096, 2.00519, -0.0353642, -0.0353642, 0.45376, 1.14328, 1.14328, -1.89405, 0.315388, -1.29028, -9.80104, 1.94447, -0.0402465, -3.03942, -1.36946, -1.36946, -1.67766, -4.22699, -6.2117, 10.6156, 0.107907, 6.53058, -0.137376, -0.346128, 1.63859, 1.78029, -1.80301, 0.181703}, {-0.5649, -1.4233, 0.182365, -6.01556, 0.106093, 0.106093, 0.45376, 1.14328, 1.14328, -1.89405, 0.315388, -1.29028, 0.479306, 7.49622, -0.911165, -4.85446, -5.94257, -5.94257, 0.137376, 0.346128, -1.63859, 3.03942, 1.36946, 1.36946, 7.43881, -1.60768, 6.79971, 1.78029, -1.80301, 0.181703}, {-0.5649, -1.4233, 0.182365, 2.00519, -0.0353642, -0.0353642, -1.36128, -3.42984, -3.42984, -1.89405, 0.315388, -1.29028, -1.78029, 1.80301, -0.181703, -11.0602, -1.228, -1.228, 2.39697, 6.03934, -2.36805, 3.03942, 1.36946, 1.36946, -0.137376, -0.346128, 1.63859, 9.35648, -3.06456, 5.34282}, {-0.5649, -1.4233, 0.182365, 2.00519, -0.0353642, -0.0353642, 0.45376, 1.14328, 1.14328, 5.68214, -0.946164, 3.87084, -1.78029, 1.80301, -0.181703, -3.03942, -1.36946, -1.36946, 0.137376, 0.346128, -1.63859, 5.29902, 7.06267, 0.639997, -8.15812, -0.204671, 1.78004, -0.0347482, -6.37613, -4.39141}, {-1.35612, -3.4307, -3.42632, -0.759405, 0.424983, -1.91868, -2.45728, -1.10819, -1.10678, 2.76464, -0.460356, 1.88336, 3.41754, -3.63876, 8.63464, 3.97604, 0.844494, 3.73968, 12.3077, 4.38905, 4.38345, -15.0346, 0.996929, -11.2731, -2.47861, 0.0437235, 0.0436678, -0.379924, 1.93883, -0.959903}, {0.45204, 1.14357, 1.14211, 2.27821, -1.27495, 5.75605, -2.45728, -1.10819, -1.10678, 2.76464, -0.460356, 1.88336, -1.42823, -6.51309, -3.60853, 13.8052, 5.27726, 8.1668, 2.47861, -0.0437235, -0.0436678, -3.97604, -0.844494, -3.73968, -13.5372, 1.88515, -7.48976, -0.379924, 1.93883, -0.959903}, {0.45204, 1.14357, 1.14211, -0.759405, 0.424983, -1.91868, 7.37184, 3.32458, 3.32034, 2.76464, -0.460356, 1.88336, 0.379924, -1.93883, 0.959903, 7.01366, -0.855437, 11.4144, 0.670454, -4.61799, -4.6121, -3.97604, -0.844494, -3.73968, -2.47861, 0.0437235, 0.0436678, -11.4385, 3.78026, -8.49333}, {0.45204, 1.14357, 1.14211, -0.759405, 0.424983, -1.91868, -2.45728, -1.10819, -1.10678, -8.29393, 1.38107, -5.65007, 0.379924, -1.93883, 0.959903, 3.97604, 0.844494, 3.73968, 2.47861, -0.0437235, -0.0436678, -5.7842, -5.41876, -8.30811, 0.559007, -1.65621, 7.71841, 9.44919, 6.3716, 3.46721}, {-2.4085, -2.4085, 2.4085, 1.63676, -1.63676, 1.63676, -0.802834, -0.802834, -0.802834, -1.63676, 1.63676, -0.0310931, -9.56255, 7.57784, -7.57784, -1.03079, 3.01551, -1.03079, 3.21134, 3.21134, 5.19605, 7.57784, -9.56255, 1.15516, 3.73035e-14, 3.64153e-14, -1.98471, 3.01551, -1.03079, 1.03079}, {0.802834, 0.802834, -0.802834, -4.91028, 4.91028, -4.91028, -0.802834, -0.802834, -0.802834, -1.63676, 1.63676, -0.0310931, -6.22684, -2.18055, 2.18055, 2.18055, 6.22684, 2.18055, -3.73035e-14, -3.68594e-14, 1.98471, 1.03079, -3.01551, 1.03079, 6.54704, -6.54704, -1.86034, 3.01551, -1.03079, 1.03079}, {0.802834, 0.802834, -0.802834, 1.63676, -1.63676, 1.63676, 2.4085, 2.4085, 2.4085, -1.63676, 1.63676, -0.0310931, -3.01551, 1.03079, -1.03079, -7.57784, 9.56255, -7.57784, -3.21134, -3.21134, 5.19605, 1.03079, -3.01551, 1.03079, 3.77476e-14, 3.68594e-14, -1.98471, 9.56255, -7.57784, 1.15516}, {0.802834, 0.802834, -0.802834, 1.63676, -1.63676, 1.63676, -0.802834, -0.802834, -0.802834, 4.91028, -4.91028, 0.0932794, -3.01551, 1.03079, -1.03079, -1.03079, 3.01551, -1.03079, -3.68594e-14, -3.68594e-14, 1.98471, -2.18055, -6.22684, 4.24213, -6.54704, 6.54704, -8.53176, 6.22684, 2.18055, 4.24213}, {-2.4085, -2.4085, 2.4085, -2.4396, 0.833927, -0.833927, -1.57573, 1.57573, 1.57573, 3.2125, -3.2125, 0.0610269, 11.7815, -5.35886, 5.35886, 4.96322, -2.97851, -0.916924, 7.25829, -9.24301, -7.25829, -17.8132, 15.8285, 0.672816, -0.955357, 2.94007, 0.955357, -2.02315, 2.02315, -2.02315}, {0.802834, 0.802834, -0.802834, 7.31879, -2.50178, 2.50178, -1.57573, 1.57573, 1.57573, 3.2125, -3.2125, 0.0610269, -1.18819, -5.23448, 5.23448, 11.2662, -9.28144, -7.21986, 0.955357, -2.94007, -0.955357, -4.96322, 2.97851, 0.916924, -13.8053, 15.7901, 0.71125, -2.02315, 2.02315, -2.02315}, {0.802834, 0.802834, -0.802834, -2.4396, 0.833927, -0.833927, 4.7272, -4.7272, -4.7272, 3.2125, -3.2125, 0.0610269, 2.02315, -2.02315, 2.02315, 14.7216, -6.31421, 2.41878, -2.25598, -6.15141, 2.25598, -4.96322, 2.97851, 0.916924, -0.955357, 2.94007, 0.955357, -14.8731, 14.8731, -2.26726}, {0.802834, 0.802834, -0.802834, -2.4396, 0.833927, -0.833927, -1.57573, 1.57573, 1.57573, -9.63749, 9.63749, -0.183081, 2.02315, -2.02315, 2.02315, 4.96322, -2.97851, -0.916924, 0.955357, -2.94007, -0.955357, -8.17456, -0.232831, 4.12826, 8.80302, -0.395637, 4.29107, 4.27979, -4.27979, -8.32609}, {-8.88178e-16, 0, 4.817, 3.64699, 0.373467, -0.373467, -1.78885, -1.78885, 1.78885, -1.85814, 1.41539, 0.190281, -19.0959, -1.9555, 3.94022, -2.29678, 1.74951, -1.74951, 9.36656, 9.36656, -7.38185, 9.72932, -7.41106, 0.988391, -2.21115, -2.21115, 0.226431, 4.50793, 0.461631, -2.44635}, {2.22045e-16, -4.44089e-16, -1.60567, -10.941, -1.1204, 1.1204, -1.78885, -1.78885, 1.78885, -1.85814, 1.41539, 0.190281, -4.50793, -0.461631, 8.86902, 4.85864, 8.90493, -8.90493, 2.21115, 2.21115, -0.226431, 2.29678, -1.74951, 1.74951, 5.2214, -7.87269, -0.534693, 4.50793, 0.461631, -2.44635}, {-6.66134e-16, -4.44089e-16, -1.60567, 3.64699, 0.373467, -0.373467, 5.36656, 5.36656, -5.36656, -1.85814, 1.41539, 0.190281, -4.50793, -0.461631, 2.44635, -16.8847, 0.255645, -0.255645, 2.21115, 2.21115, 6.19624, 2.29678, -1.74951, 1.74951, -2.21115, -2.21115, 0.226431, 11.9405, -5.19992, -3.20747}, {-6.66134e-16, 0, -1.60567, 3.64699, 0.373467, -0.373467, -1.78885, -1.78885, 1.78885, 5.57441, -4.24616, -0.570843, -4.50793, -0.461631, 2.44635, -2.29678, 1.74951, -1.74951, 2.21115, 2.21115, -0.226431, 2.29678, -1.74951, 8.17219, -16.7991, -3.70501, 1.7203, 11.6633, 7.61705, -9.60176}, {5.57441, -4.24616, 4.24616, -1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 3.64699, -2.778, -0.373467, 11.6633, 7.61705, -7.61705, 2.21115, -1.68428, -2.21115, 2.29678, -18.2508, 1.74951, -16.7991, 12.7963, 3.70501, -2.29678, 5.64494, -1.74951, -4.50793, -0.461631, 0.461631}, {-1.85814, 1.41539, -1.41539, 5.36656, 5.36656, -5.36656, -2.85327e-15, 3.15147, 2.92187e-16, 3.64699, -2.778, -0.373467, 11.9405, -5.19992, 5.19992, 2.21115, -14.2902, -2.21115, 2.29678, -5.64494, 1.74951, -2.21115, 1.68428, 2.21115, -16.8847, 16.7569, -0.255645, -4.50793, -0.461631, 0.461631}, {-1.85814, 1.41539, -1.41539, -1.78885, -1.78885, 1.78885, 0, -9.45441, 0, 3.64699, -2.778, -0.373467, 4.50793, 0.461631, -0.461631, 9.36656, 5.47113, -9.36656, 9.72932, -11.3065, 7.41106, -2.21115, 1.68428, 2.21115, -2.29678, 5.64494, -1.74951, -19.0959, 10.6504, 1.9555}, {-1.85814, 1.41539, -1.41539, -1.78885, -1.78885, 1.78885, 0, 3.15147, 0, -10.941, 8.334, 1.1204, 4.50793, 0.461631, -0.461631, 2.21115, -1.68428, -2.21115, 2.29678, -5.64494, 1.74951, 5.2214, -3.97726, 7.87269, 4.85864, 12.8004, -8.90493, -4.50793, -13.0675, 0.461631}, {5.61089, -1.12882, 1.12882, -0.730647, 0.497098, 1.84603, 0.431092, 1.08918, -1.08918, 2.16985, -1.96255, -0.380575, 6.13753, -3.06794, -9.20083, 0.370271, -1.96075, -0.935513, 0.0545869, -6.16812, 6.16812, -9.04968, 9.81095, 2.45781, -1.77895, 1.8114, -1.8114, -3.21494, 1.07954, 1.81672}, {-1.8703, 0.376272, -0.376272, 2.19194, -1.49129, -5.53808, 0.431092, 1.08918, -1.08918, 2.16985, -1.96255, -0.380575, 10.6961, -2.58463, -0.311631, -1.3541, -6.31747, 3.42121, 1.77895, -1.8114, 1.8114, -0.370271, 1.96075, 0.935513, -10.4584, 9.6616, -0.289101, -3.21494, 1.07954, 1.81672}, {-1.8703, 0.376272, -0.376272, -0.730647, 0.497098, 1.84603, -1.29328, -3.26754, 3.26754, 2.16985, -1.96255, -0.380575, 3.21494, -1.07954, -1.81672, 3.29286, -3.94914, -8.31962, 9.26014, -3.31649, 3.31649, -0.370271, 1.96075, 0.935513, -1.77895, 1.8114, -1.8114, -11.8943, 8.92975, 3.33902}, {-1.8703, 0.376272, -0.376272, -0.730647, 0.497098, 1.84603, 0.431092, 1.08918, -1.08918, -6.50955, 5.88765, 1.14172, 3.21494, -1.07954, -1.81672, 0.370271, -1.96075, -0.935513, 1.77895, -1.8114, 1.8114, 7.11091, 0.455662, 2.4406, 1.14364, -0.176994, -9.19551, -4.93931, -3.27718, 6.17344}, {-3.9353, -0.877932, 3.73093, -2.19842e-16, -0.163745, 1.71788, -5.85173e-16, -1.31534, -0.704307, -1.31177, 1.18644, 0.230073, -1.62143, 0.495654, -7.45769, 9.95053e-16, 1.82825, -1.25284, -1.62143, 6.52549, 5.22503, 5.24706, -6.57403, 0.33255, 1.62143, -1.26412, -2.4078, 1.62143, 0.159328, 0.586185}, {1.31177, 0.292644, -1.24364, 2.59599e-16, 0.491236, -5.15363, 4.85681e-16, -1.31534, -0.704307, -1.31177, 1.18644, 0.230073, -6.86849, -1.3299, 4.38839, -2.4361e-15, 7.08962, 1.56438, -1.62143, 1.26412, 2.4078, 1.67724e-16, -1.82825, 1.25284, 6.86849, -6.0099, -3.32809, 1.62143, 0.159328, 0.586185}, {1.31177, 0.292644, -1.24364, 0, -0.163745, 1.71788, 0, 3.94603, 2.11292, -1.31177, 1.18644, 0.230073, -1.62143, -0.159328, -0.586185, 0, 2.48323, -8.12435, -6.86849, 0.0935482, 7.38238, -3.2565e-16, -1.82825, 1.25284, 1.62143, -1.26412, -2.4078, 6.86849, -4.58645, -0.334108}, {1.31177, 0.292644, -1.24364, -2.66619e-17, -0.163745, 1.71788, -2.14171e-16, -1.31534, -0.704307, 3.9353, -3.55933, -0.690219, -1.62143, -0.159328, -0.586185, 2.97685e-16, 1.82825, -1.25284, -1.62143, 1.26412, 2.4078, -5.24706, -2.99883, 6.22742, 1.62143, -0.609143, -9.27931, 1.62143, 5.4207, 3.40341}, {6.05767, -1.43278, 5.23226e-12, 0, 1.38248, 0, 0.572575, -0.389553, -1.44665, 1.44665, -1.47052, 1.44665, 2.4959, -7.82907, 2.15583e-12, -0.707741, -1.22732, 1.78815, -0.502145, 1.44939, 7.57474, -5.07885, 7.10939, -7.57474, -1.78815, 0.108825, -1.78815, -2.4959, 2.29917, -2.15583e-12}, {-2.01922, 0.477594, -1.74416e-12, -5.05799e-15, -4.14743, -2.97897e-15, 0.572575, -0.389553, -1.44665, 1.44665, -1.47052, 1.44665, 10.5728, -4.20955, 9.13047e-12, -2.99804, 0.330893, 7.57474, 1.78815, -0.108825, 1.78815, 0.707741, 1.22732, -1.78815, -7.57474, 5.99089, -7.57474, -2.4959, 2.29917, -2.15472e-12}, {-2.01922, 0.477594, -1.74438e-12, 1.98598e-15, 1.38248, 1.98598e-15, -1.71772, 1.16866, 4.33994, 1.44665, -1.47052, 1.44665, 2.4959, -2.29917, 2.15383e-12, -0.707741, -6.75722, 1.78815, 9.86504, -2.0192, 1.78815, 0.707741, 1.22732, -1.78815, -1.78815, 0.108825, -1.78815, -8.28248, 8.18124, -5.78659}, {-2.01922, 0.477594, -1.74438e-12, 0, 1.38248, 0, 0.572575, -0.389553, -1.44665, -4.33994, 4.41155, -4.33994, 2.4959, -2.29917, 2.15628e-12, -0.707741, -1.22732, 1.78815, 1.78815, -0.108825, 1.78815, 8.78463, -0.683057, -1.78815, -1.78815, -5.42108, -1.78815, -4.7862, 3.85739, 5.78659}, {-1.33227e-15, -0.577407, 6.05767, 1.31177, 0.0490665, 1.31177, 7.62271e-16, -1.57494, 2.01922, -1.31177, 1.33341, -1.31177, -6.86849, -0.49482, -4.3726, -1.62143, 1.88609, -4.11733, -4.66294e-15, 8.00861, -8.07689, 6.86849, -7.21973, 9.36439, 1.55431e-15, -1.70883, 1.33227e-15, 1.62143, 0.298554, -0.874465}, {-2.22045e-16, 0.192469, -2.01922, -3.9353, -0.147199, -3.9353, 5.0818e-16, -1.57494, 2.01922, -1.31177, 1.33341, -1.31177, -1.62143, -1.06843, 8.95135, -1.62143, 8.18587, -12.1942, -2.22045e-16, 1.70883, 1.11022e-15, 1.62143, -1.88609, 4.11733, 5.24706, -7.04247, 5.24706, 1.62143, 0.298554, -0.874465}, {0, 0.192469, -2.01922, 1.31177, 0.0490665, 1.31177, 7.62271e-16, 4.72483, -6.05767, -1.31177, 1.33341, -1.31177, -1.62143, -0.298554, 0.874465, -6.86849, 1.68982, -9.36439, 0, 0.938958, 8.07689, 1.62143, -1.88609, 4.11733, -4.44089e-16, -1.70883, -4.44089e-16, 6.86849, -5.03508, 4.3726}, {-2.22045e-16, 0.192469, -2.01922, 1.31177, 0.0490665, 1.31177, 1.52454e-15, -1.57494, 2.01922, 3.9353, -4.00023, 3.9353, -1.62143, -0.298554, 0.874465, -1.62143, 1.88609, -4.11733, -1.55431e-15, 1.70883, -1.55431e-15, 1.62143, -2.65597, 12.1942, -5.24706, -1.9051, -5.24706, 1.62143, 6.59833, -8.95135}, {5.62183, 1.10117, 1.0932, -0.543248, 1.37255, -0.969804, 0.418614, -1.05765, -1.05825, 1.99858, 0.0521603, 2.39245, 5.16081, -6.73306, 5.52839, 0.154056, -0.389233, 2.50681, 0.12443, 5.99166, 5.99148, -8.14837, 0.180592, -12.0766, -1.79889, -1.76104, -1.75849, -2.98781, 1.24286, -1.64917}, {-1.87394, -0.367057, -0.364401, 1.62974, -4.11765, 2.90941, 0.418614, -1.05765, -1.05825, 1.99858, 0.0521603, 2.39245, 10.4836, 0.225367, 3.10677, -1.5204, 3.84139, 6.7398, 1.79889, 1.76104, 1.75849, -0.154056, 0.389233, -2.50681, -9.79319, -1.96968, -11.3283, -2.98781, 1.24286, -1.64917}, {-1.87394, -0.367057, -0.364401, -0.543248, 1.37255, -0.969804, -1.25584, 3.17296, 3.17474, 1.99858, 0.0521603, 2.39245, 2.98781, -1.24286, 1.64917, 2.32705, -5.87944, 6.38603, 9.29466, 3.22927, 3.2161, -0.154056, 0.389233, -2.50681, -1.79889, -1.76104, -1.75849, -10.9821, 1.03422, -11.219}, {-1.87394, -0.367057, -0.364401, -0.543248, 1.37255, -0.969804, 0.418614, -1.05765, -1.05825, -5.99573, -0.156481, -7.17736, 2.98781, -1.24286, 1.64917, 0.154056, -0.389233, 2.50681, 1.79889, 1.76104, 1.75849, 7.34172, 1.85746, -1.04921, 0.374107, -7.25124, 2.12073, -4.66227, 5.47348, 2.58382}, {1.30457, 0.988495, -4.07489, 1.69843, -1.02425, 0.473793, -0.0497917, 1.38543, -0.379098, -1.21378, -0.0316781, -1.45299, -8.35558, 5.77034, -4.15976, -2.03783, -0.446439, -0.117049, 0.798227, -6.84692, 0.306038, 6.89295, 0.573151, 5.92901, -0.59906, 1.3052, 1.21036, 1.56186, -1.67333, 2.26459}, {-0.434858, -0.329498, 1.3583, -5.09529, 3.07276, -1.42138, -0.0497917, 1.38543, -0.379098, -1.21378, -0.0316781, -1.45299, 0.17757, 2.99132, -7.69777, -1.83866, -5.98816, 1.39934, 0.59906, -1.3052, -1.21036, 2.03783, 0.446439, 0.117049, 4.25606, 1.43192, 7.02232, 1.56186, -1.67333, 2.26459}, {-0.434858, -0.329498, 1.3583, 1.69843, -1.02425, 0.473793, 0.149375, -4.15629, 1.1373, -1.21378, -0.0316781, -1.45299, -1.56186, 1.67333, -2.26459, -8.83155, 3.65057, -2.01222, 2.33849, 0.0127912, -6.64354, 2.03783, 0.446439, 0.117049, -0.59906, 1.3052, 1.21036, 6.41699, -1.54662, 8.07655}, {-0.434858, -0.329498, 1.3583, 1.69843, -1.02425, 0.473793, -0.0497917, 1.38543, -0.379098, 3.64134, 0.0950343, 4.35897, -1.56186, 1.67333, -2.26459, -2.03783, -0.446439, -0.117049, 0.59906, -1.3052, -1.21036, 3.77726, 1.76443, -5.31614, -7.39278, 5.40222, -0.684818, 1.76103, -7.21505, 3.78098}, {-3.43097, 1.35687, -3.43142, 0.931473, 0.558277, -1.41184, -0.847096, 2.35716, -0.851503, -1.22803, -2.46315, 1.11954, -6.29089, -2.36411, 5.97866, -0.104296, -3.60368, 2.79764, 3.02181, -11.7832, 3.0447, 5.01642, 13.4563, -7.27579, 0.366568, 2.35455, 0.361307, 2.565, 0.131007, -0.331307}, {1.14366, -0.45229, 1.14381, -2.79442, -1.67483, 4.23552, -0.847096, 2.35716, -0.851503, -1.22803, -2.46315, 1.11954, -7.13962, 1.67815, -4.24392, 3.28409, -13.0323, 6.20366, -0.366568, -2.35455, -0.361307, 0.104296, 3.60368, -2.79764, 5.2787, 12.2071, -4.11684, 2.565, 0.131007, -0.331307}, {1.14366, -0.45229, 1.14381, 0.931473, 0.558277, -1.41184, 2.54129, -7.07148, 2.55451, -1.22803, -2.46315, 1.11954, -2.565, -0.131007, 0.331307, -3.83019, -5.83679, 8.445, -4.94119, -0.545391, -4.93653, 0.104296, 3.60368, -2.79764, 0.366568, 2.35455, 0.361307, 7.47713, 9.9836, -4.80945}, {1.14366, -0.45229, 1.14381, 0.931473, 0.558277, -1.41184, -0.847096, 2.35716, -0.851503, 3.6841, 7.38945, -3.35861, -2.565, -0.131007, 0.331307, -0.104296, -3.60368, 2.79764, -0.366568, -2.35455, -0.361307, -4.47033, 5.41284, -7.37287, -3.35932, 0.121443, 6.00866, 5.95338, -9.29764, 3.0747}, {5.0671, -2.00529, 0.25185, -0.295203, -1.90215, -0.29354, 1.14353, -0.452546, 1.14392, 0.840709, 1.68627, -0.766433, 3.63346, 9.13356, 1.64076, -1.04859, 2.91057, -1.05113, -3.89983, 1.54334, -5.88589, -2.31425, -9.65564, 4.11686, -0.674283, 0.266845, 1.3102, -2.45265, -1.52496, -0.466604}, {-1.68903, 0.668429, -0.0839499, 0.885608, 5.70645, 0.880621, 1.14353, -0.452546, 1.14392, 0.840709, 1.68627, -0.766433, 9.20879, -1.14875, 0.802403, -5.6227, 4.72075, -5.62682, 0.674283, -0.266845, -1.3102, 1.04859, -2.91057, 1.05113, -4.03712, -6.47823, 4.37593, -2.45265, -1.52496, -0.466604}, {-1.68903, 0.668429, -0.0839499, -0.295203, -1.90215, -0.29354, -3.43058, 1.35764, -3.43177, 0.840709, 1.68627, -0.766433, 2.45265, 1.52496, 0.466604, 0.132224, 10.5192, 0.123031, 7.43042, -2.94056, -0.974399, 1.04859, -2.91057, 1.05113, -0.674283, 0.266845, 1.3102, -5.81549, -8.27004, 2.59913}, {-1.68903, 0.668429, -0.0839499, -0.295203, -1.90215, -0.29354, 1.14353, -0.452546, 1.14392, -2.52213, -5.0588, 2.2993, 2.45265, 1.52496, 0.466604, -1.04859, 2.91057, -1.05113, 0.674283, -0.266845, -1.3102, 7.80472, -5.58428, 1.38693, 0.506528, 7.87545, 2.48436, -7.02676, 0.285222, -5.04229}, {-7.02938, 6.21725e-15, 4.44089e-16, -1.54298, 0.610212, -1.54318, 1.7461, 1.33161, 1.74203, -2.54625, -1.94182, -0.198851, 5.18286, -3.19511, 8.08019, -0.25107, -2.40023, -0.245794, -12.0389, -6.97241, -9.12139, 10.4361, 10.1675, 1.0412, 5.05456, 1.64596, 2.15327, 0.989039, 0.754264, -1.90748}, {2.34313, -1.77636e-15, -1.22125e-15, 4.62893, -1.83064, 4.62954, 1.7461, 1.33161, 1.74203, -2.54625, -1.94182, -0.198851, -10.3615, -0.754264, 1.90748, -7.23545, -7.72668, -7.21392, -5.05456, -1.64596, -2.15327, 0.25107, 2.40023, 0.245794, 15.2395, 9.41326, 2.94867, 0.989039, 0.754264, -1.90748}, {2.34313, 0, 1.38778e-16, -1.54298, 0.610212, -1.54318, -5.23829, -3.99484, -5.22609, -2.54625, -1.94182, -0.198851, -0.989039, -0.754264, 1.90748, 5.92083, -4.84108, 5.92693, -14.4271, -1.64596, -2.15327, 0.25107, 2.40023, 0.245794, 5.05456, 1.64596, 2.15327, 11.174, 8.52156, -1.11207}, {2.34313, -1.11022e-15, -3.05311e-16, -1.54298, 0.610212, -1.54318, 1.7461, 1.33161, 1.74203, 7.63874, 5.82547, 0.596554, -0.989039, -0.754264, 1.90748, -0.25107, -2.40023, -0.245794, -5.05456, -1.64596, -2.15327, -9.12143, 2.40023, 0.245794, 11.2265, -0.794885, 8.32599, -5.99534, -4.57219, -8.8756}, {2.66454e-15, 3.55271e-15, -4.817, -1.54262, 0.610485, -1.54315, -0.200328, -1.9397, -0.198633, 1.74295, 1.32921, 0.136117, 8.07725, -3.19654, 6.09533, 2.1544, 1.643, 2.15296, 1.04893, 10.1564, -0.944658, -9.12619, -6.95984, -2.69743, -0.24762, -2.3976, 1.73919, -1.90678, 0.754601, 0.0772744}, {1.55431e-15, 8.88178e-16, 1.60567, 4.62785, -1.83146, 4.62946, -0.200328, -1.9397, -0.198633, 1.74295, 1.32921, 0.136117, 1.90678, -0.754601, -6.49995, 2.95571, 9.40178, 2.9475, 0.24762, 2.3976, -1.73919, -2.1544, -1.643, -2.15296, -7.21941, -7.71444, 1.19472, -1.90678, 0.754601, 0.0772744}, {2.22045e-16, 2.22045e-16, 1.60567, -1.54262, 0.610485, -1.54315, 0.600985, 5.81909, 0.5959, 1.74295, 1.32921, 0.136117, 1.90678, -0.754601, -0.0772744, 8.32487, -0.798945, 8.32557, 0.24762, 2.3976, -8.16186, -2.1544, -1.643, -2.15296, -0.24762, -2.3976, 1.73919, -8.87857, -4.56224, -0.467193}, {-1.33227e-15, -1.11022e-15, 1.60567, -1.54262, 0.610485, -1.54315, -0.200328, -1.9397, -0.198633, -5.22884, -3.98763, -0.408351, 1.90678, -0.754601, -0.0772744, 2.1544, 1.643, 2.15296, 0.24762, 2.3976, -1.73919, -2.1544, -1.643, -8.57564, 5.92285, -4.83954, 7.9118, -1.10547, 8.51339, 0.871807}, {5.74294, 0.795668, -0.78877, 0.30138, -0.761926, 0.76354, -0.6496, 1.64227, 0.697377, 2.26253, -0.61512, -1.72384, 0.788176, 4.31733, -4.32294, 0.430423, -1.08816, -1.80579, 5.76757, -8.2712, -3.9765, -9.48055, 3.54864, 8.70115, -3.16917, 1.70212, 1.187, -1.9937, -1.26962, 1.26878}, {-1.91431, -0.265223, 0.262923, -0.904139, 2.28578, -2.29062, -0.6496, 1.64227, 0.697377, 2.26253, -0.61512, -1.72384, 9.65095, 2.33052, -2.32047, 3.02882, -7.65724, -4.5953, 3.16917, -1.70212, -1.187, -0.430423, 1.08816, 1.80579, -12.2193, 4.1626, 8.08236, -1.9937, -1.26962, 1.26878}, {-1.91431, -0.265223, 0.262923, 0.30138, -0.761926, 0.76354, 1.9488, -4.9268, -2.09213, 2.26253, -0.61512, -1.72384, 1.9937, 1.26962, -1.26878, -0.775096, 1.95954, -4.85995, 10.8264, -0.641232, -2.23869, -0.430423, 1.08816, 1.80579, -3.16917, 1.70212, 1.187, -11.0438, 1.19086, 8.16414}, {-1.91431, -0.265223, 0.262923, 0.30138, -0.761926, 0.76354, -0.6496, 1.64227, 0.697377, -6.7876, 1.84536, 5.17152, 1.9937, 1.26962, -1.26878, 0.430423, -1.08816, -1.80579, 3.16917, -1.70212, -1.187, 7.22683, 2.14905, 0.7541, -4.37469, 4.74982, -1.86717, 0.604703, -7.8387, -1.52073}, {1.33227e-15, 6.00487, 0.829413, -3.96116e-16, 2.00162, -0.810615, 1.31177, 1.30033, 0.316508, -1.31177, -1.30033, 0.770578, 2.66454e-15, -8.00649, 4.58617, -1.62143, -4.08144, 0.61075, -6.86849, -4.33448, -1.31552, 6.86849, 9.28277, -3.69306, 1.62143, -0.866843, 0.0494889, -1.11022e-15, -6.66134e-16, -1.34371}, {4.44089e-16, -2.00162, -0.276471, -2.97087e-15, -6.00487, 2.43185, 1.31177, 1.30033, 0.316508, -1.31177, -1.30033, 0.770578, -2.66454e-15, 8.00649, 2.4496, -6.86849, -9.28277, -0.655284, -1.62143, 0.866843, -0.0494889, 1.62143, 4.08144, -0.61075, 6.86849, 4.33448, -3.03282, 1.55431e-15, 1.33227e-15, -1.34371}, {-2.22045e-16, -2.00162, -0.276471, 1.38641e-15, 2.00162, -0.810615, -3.9353, -3.901, -0.949525, -1.31177, -1.30033, 0.770578, -1.33227e-15, -1.11022e-15, 1.34371, -1.62143, -12.0879, 3.85321, -1.62143, 8.87333, 1.0564, 1.62143, 4.08144, -0.61075, 1.62143, -0.866843, 0.0494889, 5.24706, 5.20133, -4.42602}, {-6.66134e-16, -2.00162, -0.276471, -1.18835e-15, 2.00162, -0.810615, 1.31177, 1.30033, 0.316508, 3.9353, 3.901, -2.31173, 2.22045e-15, 2.66454e-15, 1.34371, -1.62143, -4.08144, 0.61075, -1.62143, 0.866843, -0.0494889, 1.62143, 12.0879, 0.495134, 1.62143, -8.87333, 3.29195, -5.24706, -5.20133, -2.60975}, {-1.70622, 4.31352, 1.8317, 8.44721e-17, 1.1641e-15, 1.08709, -2.01922, 1.65815e-12, 0.375548, 1.45048, 1.43784, -0.852066, -0.702999, 1.77727, -4.93735, 2.4959, -2.05102e-12, -1.80792, 9.86978, 1.77727, -1.21169, -8.29783, -5.75136, 5.21618, -1.7929, -1.77727, -0.290501, 0.702999, -1.77727, 0.589009}, {0.568738, -1.43784, -0.610568, -2.80914e-15, -1.1641e-15, -3.26126, -2.01922, 1.65896e-12, 0.375548, 1.45048, 1.43784, -0.852066, -2.97795, 7.52863, 1.85326, 10.5728, -8.68691e-12, -3.31011, 1.7929, 1.77727, 0.290501, -2.4959, 2.05143e-12, 1.80792, -7.59483, -7.52863, 3.11776, 0.702999, -1.77727, 0.589009}, {0.568738, -1.43784, -0.610568, 0, 0, 1.08709, 6.05767, -4.97324e-12, -1.12664, 1.45048, 1.43784, -0.852066, -0.702999, 1.77727, -0.589009, 2.4959, -2.04909e-12, -6.15626, -0.482057, 7.52863, 2.73277, -2.4959, 2.04944e-12, 1.80792, -1.7929, -1.77727, -0.290501, -5.09894, -7.52863, 3.99727}, {0.568738, -1.43784, -0.610568, 0, 0, 1.08709, -2.01922, 1.6563e-12, 0.375548, -4.35145, -4.31352, 2.5562, -0.702999, 1.77727, -0.589009, 2.4959, -2.04731e-12, -1.80792, 1.7929, 1.77727, 0.290501, -4.77085, 5.75136, 4.25019, -1.7929, -1.77727, -4.63885, 8.77989, -1.77727, -0.913184}, {1.27077, -1.27077, -5.5547, 1.35703, 0.9861, 0.537103, -0.781872, 0.781872, -0.309461, -0.151563, -2.19156, -2.07921, -6.58189, -5.68687, -5.10097, -0.710928, -2.18533, -0.281381, 4.61752, -4.61752, -0.668306, 1.31718, 10.9516, 8.59822, -1.49003, 1.49003, 1.90615, 1.15379, 1.74247, 2.95256}, {-0.42359, 0.42359, 1.85157, -4.07108, -2.9583, -1.61131, -0.781872, 0.781872, -0.309461, -0.151563, -2.19156, -2.07921, 0.540572, -3.43683, -10.3588, 2.41656, -5.31282, 0.956461, 1.49003, -1.49003, -1.90615, 0.710928, 2.18533, 0.281381, -0.883782, 10.2563, 10.223, 1.15379, 1.74247, 2.95256}, {-0.42359, 0.42359, 1.85157, 1.35703, 0.9861, 0.537103, 2.34562, -2.34562, 0.928382, -0.151563, -2.19156, -2.07921, -1.15379, -1.74247, -2.95256, -6.13903, -6.12973, -2.42979, 3.18439, -3.18439, -9.31242, 0.710928, 2.18533, 0.281381, -1.49003, 1.49003, 1.90615, 1.76004, 10.5087, 11.2694}, {-0.42359, 0.42359, 1.85157, 1.35703, 0.9861, 0.537103, -0.781872, 0.781872, -0.309461, 0.454689, 6.57469, 6.23763, -1.15379, -1.74247, -2.95256, -0.710928, -2.18533, -0.281381, 1.49003, -1.49003, -1.90615, 2.40529, 0.490973, -7.12489, -6.91814, -2.45437, -0.242264, 4.28128, -1.38502, 4.1904}, {2.56157, 0.777047, 3.89096, 1.32901, 0.581011, 0.152782, -0.565397, -1.62691, -0.0938093, 0.0902443, 1.30491, 1.23801, -5.90336, -2.72205, 0.803187, -0.943878, 1.2928, -0.0728941, 4.01589, 8.83876, 2.09436, 0.5829, -6.51244, -4.87916, -1.7543, -2.33113, -1.71912, 0.587321, 0.398009, -1.41431}, {-0.853857, -0.259016, -1.29699, -3.98703, -1.74303, -0.458346, -0.565397, -1.62691, -0.0938093, 0.0902443, 1.30491, 1.23801, 2.82811, 0.638054, 6.60226, 1.31771, 7.80043, 0.302343, 1.7543, 2.33113, 1.71912, 0.943878, -1.2928, 0.0728941, -2.11527, -7.55078, -6.67117, 0.587321, 0.398009, -1.41431}, {-0.853857, -0.259016, -1.29699, 1.32901, 0.581011, 0.152782, 1.69619, 4.88072, 0.281428, 0.0902443, 1.30491, 1.23801, -0.587321, -0.398009, 1.41431, -6.25992, -1.03125, -0.684022, 5.16973, 3.36719, 6.90706, 0.943878, -1.2928, 0.0728941, -1.7543, -2.33113, -1.71912, 0.226344, -4.82164, -6.36637}, {-0.853857, -0.259016, -1.29699, 1.32901, 0.581011, 0.152782, -0.565397, -1.62691, -0.0938093, -0.270733, -3.91473, -3.71404, -0.587321, -0.398009, 1.41431, -0.943878, 1.2928, -0.0728941, 1.7543, 2.33113, 1.71912, 4.35931, -0.256736, 5.26084, -7.07034, -4.65518, -2.33025, 2.84891, 6.90564, -1.03908}, {4.07496e-12, -2.19419, -6.05767, 4.84843e-16, 1.35003, -1.83833e-15, -1.44665, -1.05122, -0.572575, 1.44665, -1.0302, -1.44665, 1.67644e-12, -7.97291, -2.4959, 1.78815, -0.369344, 0.707741, 7.57474, 4.60023, 0.502145, -7.57474, 4.49015, 5.07885, -1.78815, -0.395328, 1.78815, -1.67844e-12, 2.57279, 2.4959}, {-1.3598e-12, 0.731398, 2.01922, -2.90906e-15, -4.05009, 4.93928e-15, -1.44665, -1.05122, -0.572575, 1.44665, -1.0302, -1.44665, 7.11964e-12, -5.49838, -10.5728, 7.57474, 3.83556, 2.99804, 1.78815, 0.395328, -1.78815, -1.78815, 0.369344, -0.707741, -7.57474, 3.72548, 7.57474, -1.67977e-12, 2.57279, 2.4959}, {-1.36091e-12, 0.731398, 2.01922, 0, 1.35003, 0, 4.33994, 3.15367, 1.71772, 1.44665, -1.0302, -1.44665, 1.68221e-12, -2.57279, -2.4959, 1.78815, -5.76946, 0.707741, 1.78815, -2.53026, -9.86504, -1.78815, 0.369344, -0.707741, -1.78815, -0.395328, 1.78815, -5.78659, 6.6936, 8.28248}, {-1.36047e-12, 0.731398, 2.01922, -4.84843e-16, 1.35003, 4.84843e-16, -1.44665, -1.05122, -0.572575, -4.33994, 3.09061, 4.33994, 1.68221e-12, -2.57279, -2.4959, 1.78815, -0.369344, 0.707741, 1.78815, 0.395328, -1.78815, -1.78815, -2.55625, -8.78463, -1.78815, -5.79545, 1.78815, 5.78659, 6.77769, 4.7862}, {5.43308, 2.37521, 0.624583, 1.07522, 0.584331, -1.07522, 1.83687, -0.576694, 0.182353, -1.10106, 0.784101, 1.10106, -3.39138, -2.08096, 5.88727, -3.59954, -0.00943971, 1.10365, -7.37942, 3.99825, -0.697471, 8.00379, -3.12696, -5.50789, 0.0319413, -1.69148, -0.0319413, -0.909507, -0.256369, -1.58639}, {-1.81103, -0.791738, -0.208194, -3.22566, -1.75299, 3.22566, 1.83687, -0.576694, 0.182353, -1.10106, 0.784101, 1.10106, 8.15362, 3.42332, 2.41917, -10.947, 2.29734, 0.374233, -0.0319413, 1.69148, 0.0319413, 3.59954, 0.00943971, -1.10365, 4.43619, -4.82788, -4.43619, -0.909507, -0.256369, -1.58639}, {-1.81103, -0.791738, -0.208194, 1.07522, 0.584331, -1.07522, -5.51061, 1.73008, -0.547059, -1.10106, 0.784101, 1.10106, 0.909507, 0.256369, 1.58639, -7.90043, -2.34676, 5.40453, 7.21217, 4.85843, 0.864718, 3.59954, 0.00943971, -1.10365, 0.0319413, -1.69148, -0.0319413, 3.49474, -3.39277, -5.99064}, {-1.81103, -0.791738, -0.208194, 1.07522, 0.584331, -1.07522, 1.83687, -0.576694, 0.182353, 3.30319, -2.3523, -3.30319, 0.909507, 0.256369, 1.58639, -3.59954, -0.00943971, 1.10365, -0.0319413, 1.69148, 0.0319413, 10.8437, 3.17639, -0.270869, -4.26894, -4.0288, 4.26894, -8.25698, 2.05041, -2.3158}, {1.1204, -1.1204, 10.941, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, 0.190281, 1.41539, 1.85814, -8.90493, 8.90493, -4.85864, -0.226431, 2.21115, -2.21115, 8.86902, -0.461631, 4.50793, -0.534693, -7.87269, -5.2214, -2.44635, 0.461631, -4.50793, 1.74951, -1.74951, -2.29678}, {-0.373467, 0.373467, -3.64699, -5.36656, 5.36656, -5.36656, -1.60567, 0, 0, 0.190281, 1.41539, 1.85814, -0.255645, 0.255645, 16.8847, 6.19624, 2.21115, -2.21115, 2.44635, -0.461631, 4.50793, 0.226431, -2.21115, 2.21115, -3.20747, -5.19992, -11.9405, 1.74951, -1.74951, -2.29678}, {-0.373467, 0.373467, -3.64699, 1.78885, -1.78885, 1.78885, 4.817, 0, 0, 0.190281, 1.41539, 1.85814, -1.74951, 1.74951, 2.29678, -7.38185, 9.36656, -9.36656, 3.94022, -1.9555, 19.0959, 0.226431, -2.21115, 2.21115, -2.44635, 0.461631, -4.50793, 0.988391, -7.41106, -9.72932}, {-0.373467, 0.373467, -3.64699, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, -0.570843, -4.24616, -5.57441, -1.74951, 1.74951, 2.29678, -0.226431, 2.21115, -2.21115, 2.44635, -0.461631, 4.50793, 1.7203, -3.70501, 16.7991, -9.60176, 7.61705, -11.6633, 8.17219, -1.74951, -2.29678}, {4.24616, -4.24616, -5.57441, 1.78885, -1.78885, 1.78885, 2.92187e-16, 3.15147, 2.85327e-15, -0.373467, -2.778, -3.64699, -7.61705, 7.61705, -11.6633, -2.21115, -1.68428, -2.21115, 1.74951, -18.2508, -2.29678, 3.70501, 12.7963, 16.7991, -1.74951, 5.64494, 2.29678, 0.461631, -0.461631, 4.50793}, {-1.41539, 1.41539, 1.85814, -5.36656, 5.36656, -5.36656, -5.84374e-16, 3.15147, -5.70654e-15, -0.373467, -2.778, -3.64699, 5.19992, -5.19992, -11.9405, -2.21115, -14.2902, -2.21115, 1.74951, -5.64494, -2.29678, 2.21115, 1.68428, 2.21115, -0.255645, 16.7569, 16.8847, 0.461631, -0.461631, 4.50793}, {-1.41539, 1.41539, 1.85814, 1.78885, -1.78885, 1.78885, 0, -9.45441, 0, -0.373467, -2.778, -3.64699, -0.461631, 0.461631, -4.50793, -9.36656, 5.47113, -9.36656, 7.41106, -11.3065, -9.72932, 2.21115, 1.68428, 2.21115, -1.74951, 5.64494, 2.29678, 1.9555, 10.6504, 19.0959}, {-1.41539, 1.41539, 1.85814, 1.78885, -1.78885, 1.78885, -2.92187e-16, 3.15147, -2.85327e-15, 1.1204, 8.334, 10.941, -0.461631, 0.461631, -4.50793, -2.21115, -1.68428, -2.21115, 1.74951, -5.64494, -2.29678, 7.87269, -3.97726, -5.2214, -8.90493, 12.8004, -4.85864, 0.461631, -13.0675, 4.50793}, {-4.91028, 4.91028, 4.91028, -0.802834, -0.802834, 0.802834, -0.802834, 0.802834, -0.802834, -0.0310931, 1.63676, 1.63676, 2.18055, 6.22684, -2.18055, 1.98471, -5.77316e-15, 5.88418e-15, 2.18055, -2.18055, 6.22684, -1.86034, -6.54704, -6.54704, 1.03079, -1.03079, -3.01551, 1.03079, -3.01551, -1.03079}, {1.63676, -1.63676, -1.63676, 2.4085, 2.4085, -2.4085, -0.802834, 0.802834, -0.802834, -0.0310931, 1.63676, 1.63676, -7.57784, 9.56255, 7.57784, 5.19605, -3.21134, 3.21134, -1.03079, 1.03079, 3.01551, -1.98471, 6.51256e-15, -5.03376e-15, 1.15516, -7.57784, -9.56255, 1.03079, -3.01551, -1.03079}, {1.63676, -1.63676, -1.63676, -0.802834, -0.802834, 0.802834, 2.4085, -2.4085, 2.4085, -0.0310931, 1.63676, 1.63676, -1.03079, 3.01551, 1.03079, 5.19605, 3.21134, -3.21134, -7.57784, 7.57784, 9.56255, -1.98471, 6.51256e-15, -5.58887e-15, 1.03079, -1.03079, -3.01551, 1.15516, -9.56255, -7.57784}, {1.63676, -1.63676, -1.63676, -0.802834, -0.802834, 0.802834, -0.802834, 0.802834, -0.802834, 0.0932794, -4.91028, -4.91028, -1.03079, 3.01551, 1.03079, 1.98471, -5.55112e-15, 5.66214e-15, -1.03079, 1.03079, 3.01551, -8.53176, 6.54704, 6.54704, 4.24213, 2.18055, -6.22684, 4.24213, -6.22684, 2.18055}, {2.4085, -2.4085, 2.4085, -0.833927, 0.833927, 2.4396, 1.57573, 1.57573, 1.57573, 0.0610269, -3.2125, -3.2125, 5.35886, -5.35886, -11.7815, -0.916924, -2.97851, -4.96322, -7.25829, -9.24301, -7.25829, 0.672816, 15.8285, 17.8132, 0.955357, 2.94007, 0.955357, -2.02315, 2.02315, 2.02315}, {-0.802834, 0.802834, -0.802834, 2.50178, -2.50178, -7.31879, 1.57573, 1.57573, 1.57573, 0.0610269, -3.2125, -3.2125, 5.23448, -5.23448, 1.18819, -7.21986, -9.28144, -11.2662, -0.955357, -2.94007, -0.955357, 0.916924, 2.97851, 4.96322, 0.71125, 15.7901, 13.8053, -2.02315, 2.02315, 2.02315}, {-0.802834, 0.802834, -0.802834, -0.833927, 0.833927, 2.4396, -4.7272, -4.7272, -4.7272, 0.0610269, -3.2125, -3.2125, 2.02315, -2.02315, -2.02315, 2.41878, -6.31421, -14.7216, 2.25598, -6.15141, 2.25598, 0.916924, 2.97851, 4.96322, 0.955357, 2.94007, 0.955357, -2.26726, 14.8731, 14.8731}, {-0.802834, 0.802834, -0.802834, -0.833927, 0.833927, 2.4396, 1.57573, 1.57573, 1.57573, -0.183081, 9.63749, 9.63749, 2.02315, -2.02315, -2.02315, -0.916924, -2.97851, -4.96322, -0.955357, -2.94007, -0.955357, 4.12826, -0.232831, 8.17456, 4.29107, -0.395637, -8.80302, -8.32609, -4.27979, -4.27979}, {4.10689, -1.43706, 2.8235e-12, 0.16503, -0.581747, -1.44665, -0.119439, -0.784236, 1.44665, 1.32337, 0.886963, 9.09785e-13, 0.828026, 2.45397, 7.57474, -0.0563528, 1.68845, -3.88578e-14, 2.31753, 3.51421, -7.57474, -5.23714, -5.2363, -3.60028e-12, -1.83977, -0.377268, 1.78815, -1.48814, -0.126978, -1.78815}, {-1.36896, 0.47902, -9.395e-13, -0.495089, 1.74524, 4.33994, -0.119439, -0.784236, 1.44665, 1.32337, 0.886963, 9.08857e-13, 6.964, -1.7891, 1.78815, 0.421405, 4.82539, -5.78659, 1.83977, 0.377268, -1.78815, 0.0563528, -1.68845, 3.79696e-14, -7.13326, -3.92512, 1.78815, -1.48814, -0.126978, -1.78815}, {-1.36896, 0.47902, -9.39941e-13, 0.16503, -0.581747, -1.44665, 0.358318, 2.35271, -4.33994, 1.32337, 0.886963, 9.07744e-13, 1.48814, 0.126978, 1.78815, -0.716472, 4.01544, 5.78659, 7.31562, -1.53881, -1.78815, 0.0563528, -1.68845, 3.9968e-14, -1.83977, -0.377268, 1.78815, -6.78164, -3.67483, -1.78815}, {-1.36896, 0.47902, -9.38462e-13, 0.16503, -0.581747, -1.44665, -0.119439, -0.784236, 1.44665, -3.97012, -2.66089, -2.72546e-12, 1.48814, 0.126978, 1.78815, -0.0563528, 1.68845, -3.70814e-14, 1.83977, 0.377268, -1.78815, 5.53221, -3.60453, 3.79027e-12, -2.49989, 1.94972, 7.57474, -1.01039, 3.00996, -7.57474}, {-1.71772, 0.961283, -4.33994, 1.44665, 0.27723, -1.44665, 0, 1.39654, 0, -2.01922, -1.35334, -1.38544e-12, -8.28248, -1.05552, 5.78659, -1.78815, -2.06889, 1.78815, -0.707741, -6.9163, -1.78815, 9.86504, 7.48225, -1.78815, 0.707741, 1.33015, 1.78815, 2.4959, -0.0533958, 1.7125e-12}, {0.572575, -0.320428, 1.44665, -4.33994, -0.831689, 4.33994, 7.00055e-16, 1.39654, 4.80579e-28, -2.01922, -1.35334, -1.38617e-12, -4.7862, 1.33511, -5.78659, -1.78815, -7.65505, 1.78815, -0.707741, -1.33015, -1.78815, 1.78815, 2.06889, -1.78815, 8.78463, 6.74351, 1.78815, 2.4959, -0.0533958, 1.7134e-12}, {0.572575, -0.320428, 1.44665, 1.44665, 0.27723, -1.44665, 4.20033e-15, -4.18962, 2.88423e-27, -2.01922, -1.35334, -1.38653e-12, -2.4959, 0.0533958, -1.71421e-12, -7.57474, -3.17781, 7.57474, -2.99804, -0.0484352, -7.57474, 1.78815, 2.06889, -1.78815, 0.707741, 1.33015, 1.78815, 10.5728, 5.35997, 7.25997e-12}, {0.572575, -0.320428, 1.44665, 1.44665, 0.27723, -1.44665, 0, 1.39654, 0, 6.05767, 4.06002, 4.16395e-12, -2.4959, 0.0533958, -1.716e-12, -1.78815, -2.06889, 1.78815, -0.707741, -1.33015, -1.78815, -0.502145, 3.3506, -7.57474, -5.07885, 0.221228, 7.57474, 2.4959, -5.63955, 1.71564e-12}, {-4.35597, 0.237767, -4.31288, 0, -1.20934, 0, 0.57469, 0.297534, -1.45022, -2.02668, 0.991065, 0.0125895, -1.79476, 6.43017, -1.77701, -0.710355, 1.12706, 1.79257, -4.80387, -1.45994, 5.81643, 8.81707, -5.09132, -1.84292, 2.50511, 0.269807, -0.0155615, 1.79476, -1.5928, 1.77701}, {1.45199, -0.0792556, 1.43763, 0, 3.62803, 0, 0.57469, 0.297534, -1.45022, -2.02668, 0.991065, 0.0125895, -7.60272, 1.90982, -7.52752, -3.00911, -0.0630793, 7.59343, -2.50511, -0.269807, 0.0155615, 0.710355, -1.12706, -1.79257, 10.6118, -3.69445, -0.0659197, 1.79476, -1.5928, 1.77701}, {1.45199, -0.0792556, 1.43763, 0, -1.20934, 0, -1.72407, -0.892603, 4.35065, -2.02668, 0.991065, 0.0125895, -1.79476, 1.5928, -1.77701, -0.710355, 5.96443, 1.79257, -8.31307, 0.047215, -5.73495, 0.710355, -1.12706, -1.79257, 2.50511, 0.269807, -0.0155615, 9.90148, -5.55705, 1.72665}, {1.45199, -0.0792556, 1.43763, 0, -1.20934, 0, 0.57469, 0.297534, -1.45022, 6.08004, -2.97319, -0.0377686, -1.79476, 1.5928, -1.77701, -0.710355, 1.12706, 1.79257, -2.50511, -0.269807, 0.0155615, -5.09761, -0.810036, -7.54308, 2.50511, 5.10718, -0.0155615, -0.504, -2.78293, 7.57787}, {-1.3922, -1.05489, 4.34859, -1.6823, -0.386683, 0.0104503, -0.635567, 0.941579, 1.4506, 1.8538, -0.906526, -0.0115156, 8.23503, 1.59006, 1.737, 2.86504, -0.685889, -1.80595, 2.75426, -5.36481, -5.8037, -10.2803, 4.31199, 1.85201, -0.211987, 1.59849, 0.00131684, -1.50582, -0.0433277, -1.7788}, {0.464066, 0.35163, -1.44953, 5.0469, 1.16005, -0.0313509, -0.635567, 0.941579, 1.4506, 1.8538, -0.906526, -0.0115156, -0.350444, -1.36319, 7.57692, 5.40731, -4.4522, -7.60833, 0.211987, -1.59849, -0.00131684, -2.86504, 0.685889, 1.80595, -7.6272, 5.2246, 0.0473794, -1.50582, -0.0433277, -1.7788}, {0.464066, 0.35163, -1.44953, -1.6823, -0.386683, 0.0104503, 1.9067, -2.82474, -4.35179, 1.8538, -0.906526, -0.0115156, 1.50582, 0.0433277, 1.7788, 9.59425, 0.860843, -1.84775, -1.64428, -3.00501, 5.7968, -2.86504, 0.685889, 1.80595, -0.211987, 1.59849, 0.00131684, -8.92103, 3.58278, -1.73274}, {0.464066, 0.35163, -1.44953, -1.6823, -0.386683, 0.0104503, -0.635567, 0.941579, 1.4506, -5.56141, 2.71958, 0.0345469, 1.50582, 0.0433277, 1.7788, 2.86504, -0.685889, -1.80595, 0.211987, -1.59849, -0.00131684, -4.72131, -0.720632, 7.60407, 6.51722, 3.14523, -0.0404844, 1.03645, -3.80964, -7.58118}, {-4.91028, -4.91028, 4.91028, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, -1.63676, -1.63676, 4.78823, -10.2738, 6.2275, 10.2738, 3.77476e-15, -3.10862e-15, 3.89543, 6.2275, -10.2738, 10.2738, 6.54704, 6.54704, -23.0483, 0.0754334, 3.97086, -3.97086, 3.97086, 0.0754334, -3.97086}, {1.63676, 1.63676, -1.63676, -4.7272, 4.7272, 4.7272, -1.57573, 1.57573, -1.57573, -1.63676, -1.63676, 4.78823, -10.5179, -6.62248, 10.5179, 6.30294, -6.30294, 10.1984, -0.0754334, -3.97086, 3.97086, -3.07087e-15, 3.59047e-15, -3.89543, 6.62248, 10.5179, -23.1238, 3.97086, 0.0754334, -3.97086}, {1.63676, 1.63676, -1.63676, 1.57573, -1.57573, -1.57573, 4.7272, -4.7272, 4.7272, -1.63676, -1.63676, 4.78823, -3.97086, -0.0754334, 3.97086, -6.30294, 6.30294, 10.1984, -6.62248, -10.5179, 10.5179, -1.51655e-15, 1.81411e-15, -3.89543, 0.0754334, 3.97086, -3.97086, 10.5179, 6.62248, -23.1238}, {1.63676, 1.63676, -1.63676, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 4.91028, 4.91028, -14.3647, -3.97086, -0.0754334, 3.97086, 3.10862e-15, -2.44249e-15, 3.89543, -0.0754334, -3.97086, 3.97086, -6.54704, -6.54704, 2.65162, -6.2275, 10.2738, 2.33207, 10.2738, -6.2275, 2.33207}, {-1.37636, -1.37636, -5.42796, -2.30348, 0.847989, 0.553233, 1.22922, -1.92224, -0.562043, 0.615468, 0.615468, -1.80051, 11.4941, -5.00722, -5.1332, 1.32785, 1.32785, 0.0108901, -7.00339, 9.49791, 0.706454, -3.78972, -3.78972, 7.19114, 2.0865, -1.80893, 1.54172, -2.28016, 1.61526, 2.92027}, {0.458787, 0.458787, 1.80932, 6.91044, -2.54397, -1.6597, 1.22922, -1.92224, -0.562043, 0.615468, 0.615468, -1.80051, 0.445015, -3.45041, -10.1575, -3.58904, 9.01683, 2.25906, -2.0865, 1.80893, -1.54172, -1.32785, -1.32785, -0.0108901, -0.375375, -4.2708, 8.74375, -2.28016, 1.61526, 2.92027}, {0.458787, 0.458787, 1.80932, -2.30348, 0.847989, 0.553233, -3.68767, 5.76673, 1.68613, 0.615468, 0.615468, -1.80051, 2.28016, -1.61526, -2.92027, 10.5418, -2.0641, -2.20204, -3.92165, -0.0262169, -8.77899, -1.32785, -1.32785, -0.0108901, 2.0865, -1.80893, 1.54172, -4.74204, -0.846607, 10.1223}, {0.458787, 0.458787, 1.80932, -2.30348, 0.847989, 0.553233, 1.22922, -1.92224, -0.562043, -1.8464, -1.8464, 5.40152, 2.28016, -1.61526, -2.92027, 1.32785, 1.32785, 0.0108901, -2.0865, 1.80893, -1.54172, -3.163, -3.163, -7.24816, 11.3004, -5.20089, -0.671213, -7.19706, 9.30424, 5.16845}, {5.36656, -5.36656, -5.36656, 1.41539, 1.85814, -1.41539, 0, 0, -3.15147, 0.373467, -3.64699, 2.778, -5.19992, -11.9405, 5.19992, -1.74951, -2.29678, 5.64494, 2.21115, -2.21115, 14.2902, 0.255645, 16.8847, -16.7569, -2.21115, 2.21115, -1.68428, -0.461631, 4.50793, 0.461631}, {-1.78885, 1.78885, 1.78885, -4.24616, -5.57441, 4.24616, 0, 0, -3.15147, 0.373467, -3.64699, 2.778, 7.61705, -11.6633, -7.61705, -1.74951, -2.29678, 18.2508, 2.21115, -2.21115, 1.68428, 1.74951, 2.29678, -5.64494, -3.70501, 16.7991, -12.7963, -0.461631, 4.50793, 0.461631}, {-1.78885, 1.78885, 1.78885, 1.41539, 1.85814, -1.41539, 0, 0, 9.45441, 0.373467, -3.64699, 2.778, 0.461631, -4.50793, -0.461631, -7.41106, -9.72932, 11.3065, 9.36656, -9.36656, -5.47113, 1.74951, 2.29678, -5.64494, -2.21115, 2.21115, -1.68428, -1.9555, 19.0959, -10.6504}, {-1.78885, 1.78885, 1.78885, 1.41539, 1.85814, -1.41539, 0, 0, -3.15147, -1.1204, 10.941, -8.334, 0.461631, -4.50793, -0.461631, -1.74951, -2.29678, 5.64494, 2.21115, -2.21115, 1.68428, 8.90493, -4.85864, -12.8004, -7.87269, -5.2214, 3.97726, -0.461631, 4.50793, 13.0675}, {5.73547, -8.96906, -2.62245, 0.335815, -3.2793, -0.653542, 1.76841, -1.58918, 1.21052, -0.192397, 1.8788, -1.43113, 0.604796, 13.4752, 2.34148, -2.60096, 6.01778, -0.688458, -6.89635, 4.62559, -7.41885, 3.37055, -13.533, 6.41296, -0.177274, 1.73112, 2.57679, -1.94806, -0.357987, 0.272688}, {-1.91182, 2.98969, 0.874151, -1.00744, 9.83791, 1.96063, 1.76841, -1.58918, 1.21052, -0.192397, 1.8788, -1.43113, 9.59535, -11.6008, -3.76929, -9.67459, 12.3745, -5.53052, 0.177274, -1.73112, -2.57679, 2.60096, -6.01778, 0.688458, 0.592313, -5.78406, 8.30129, -1.94806, -0.357987, 0.272688}, {-1.91182, 2.98969, 0.874151, 0.335815, -3.2793, -0.653542, -5.30522, 4.76754, -3.63155, -0.192397, 1.8788, -1.43113, 1.94806, 0.357987, -0.272688, -3.94422, 19.135, 1.92571, 7.82457, -13.6899, -6.07339, 2.60096, -6.01778, 0.688458, -0.177274, 1.73112, 2.57679, -1.17847, -7.87317, 5.99719}, {-1.91182, 2.98969, 0.874151, 0.335815, -3.2793, -0.653542, 1.76841, -1.58918, 1.21052, 0.57719, -5.63639, 4.29338, 1.94806, 0.357987, -0.272688, -2.60096, 6.01778, -0.688458, 0.177274, -1.73112, -2.57679, 10.2483, -17.9765, -2.80815, -1.52053, 14.8483, 5.19096, -9.02168, 5.99873, -4.56938}, {-0.906892, 2.28653, -2.28852, -1.55284, 0.422175, 1.18312, -0.363916, -0.686733, -0.918335, 1.61446, 1.02673, -1.02763, 7.75714, -1.26844, -7.13784, 2.36925, 0.327011, -0.327296, 1.53183, 4.53788, 3.86554, -8.8271, -4.43394, 4.43781, -0.0761652, -1.79095, -0.192201, -1.54576, -0.420263, 2.40534}, {0.302297, -0.762175, 0.762841, 4.65853, -1.26653, -3.54937, -0.363916, -0.686733, -0.918335, 1.61446, 1.02673, -1.02763, 0.336571, 3.46896, -5.45671, 3.82491, 3.07394, 3.34604, 0.0761652, 1.79095, 0.192201, -2.36925, -0.327011, 0.327296, -6.53402, -5.89788, 3.91832, -1.54576, -0.420263, 2.40534}, {0.302297, -0.762175, 0.762841, -1.55284, 0.422175, 1.18312, 1.09175, 2.0602, 2.75501, 1.61446, 1.02673, -1.02763, 1.54576, 0.420263, -2.40534, 8.58063, -1.36169, -5.05979, -1.13302, 4.83965, -2.85916, -2.36925, -0.327011, 0.327296, -0.0761652, -1.79095, -0.192201, -8.00362, -4.52719, 6.51586}, {0.302297, -0.762175, 0.762841, -1.55284, 0.422175, 1.18312, -0.363916, -0.686733, -0.918335, -4.84339, -3.0802, 3.08289, 1.54576, 0.420263, -2.40534, 2.36925, 0.327011, -0.327296, 0.0761652, 1.79095, 0.192201, -3.57844, 2.72169, -2.72407, 6.13521, -3.47965, -4.9247, -0.0900956, 2.32667, 6.07869}, {-3.9353, 0.360586, -0.360901, -2.42845e-16, -0.455297, -1.14997, 2.03858e-16, 1.40972, 0.194715, -1.31177, -0.834228, 0.834958, -1.62143, 2.53253, 5.87264, 4.81904e-17, -1.17973, 1.18076, -1.62143, -7.23282, -1.16824, 5.24706, 4.51665, -4.52059, 1.62143, 1.59394, 0.389381, 1.62143, -0.711347, -1.27275}, {1.31177, -0.120195, 0.1203, 7.28534e-16, 1.36589, 3.44992, 2.03858e-16, 1.40972, 0.194715, -1.31177, -0.834228, 0.834958, -6.86849, 1.19213, 0.791545, -7.67241e-16, -6.81861, 0.401902, -1.62143, -1.59394, -0.389381, -3.73841e-16, 1.17973, -1.18076, 6.86849, 4.93085, -2.95045, 1.62143, -0.711347, -1.27275}, {1.31177, -0.120195, 0.1203, 7.41337e-17, -0.455297, -1.14997, 6.88614e-16, -4.22916, -0.584146, -1.31177, -0.834228, 0.834958, -1.62143, 0.711347, 1.27275, -1.04445e-16, 0.641455, 5.78066, -6.86849, -1.11316, -0.870582, -5.1774e-16, 1.17973, -1.18076, 1.62143, 1.59394, 0.389381, 6.86849, 2.62557, -4.61258}, {1.31177, -0.120195, 0.1203, -1.68711e-16, -0.455297, -1.14997, -2.56799e-17, 1.40972, 0.194715, 3.9353, 2.50269, -2.50487, -1.62143, 0.711347, 1.27275, 2.4028e-16, -1.17973, 1.18076, -1.62143, -1.59394, -0.389381, -5.24706, 1.66051, -1.66196, 1.62143, 3.41513, 4.98927, 1.62143, -6.35023, -2.05161}, {3.9353, -3.83942e-12, 1.21564, 0, -1.44665, 1.03094, 0, 1.44665, 0.774615, 1.31177, -1.27981e-12, -1.40034, 1.62143, 7.57474, -4.89721, 0, 0, -2.23179, 1.62143, -7.57474, -3.55506, -5.24706, 5.11922e-12, 7.83316, -1.62143, 1.78815, 0.456604, -1.62143, -1.78815, 0.773441}, {-1.31177, 1.28052e-12, -0.405214, 3.53326e-15, 4.33994, -3.09282, 1.17775e-15, 1.44665, 0.774615, 1.31177, -1.28052e-12, -1.40034, 6.86849, 1.78815, 0.847415, -4.71101e-15, -5.78659, -5.33025, 1.62143, -1.78815, -0.456604, 3.2565e-16, -3.17893e-28, 2.23179, -6.86849, 1.78815, 6.05797, -1.62143, -1.78815, 0.773441}, {-1.31177, 1.28099e-12, -0.405214, -9.42202e-16, -1.44665, 1.03094, -2.82661e-15, -4.33994, -2.32384, 1.31177, -1.28099e-12, -1.40034, 1.62143, 1.78815, -0.773441, 3.76881e-15, 5.78659, -6.35555, 6.86849, -1.78815, 1.16425, 3.2565e-16, -3.18011e-28, 2.23179, -1.62143, 1.78815, 0.456604, -6.86849, -1.78815, 6.37481}, {-1.31177, 1.27957e-12, -0.405214, 0, -1.44665, 1.03094, 0, 1.44665, 0.774615, -3.9353, 3.83871e-12, 4.20103, 1.62143, 1.78815, -0.773441, 0, 0, -2.23179, 1.62143, -1.78815, -0.456604, 5.24706, -5.11827e-12, 3.85265, -1.62143, 7.57474, -3.66716, -1.62143, -7.57474, -2.32502}, {-1.71772, -4.33994, -0.49013, 1.44665, -1.44665, -0.51339, 0, 0, -1.80556, -2.01922, 1.97175e-12, 2.15557, -8.28248, 5.78659, 2.4862, -1.78815, 1.78815, 2.86637, -0.707741, -1.78815, 9.25207, 9.86504, -1.78815, -11.4887, 0.707741, 1.78815, -2.02984, 2.4959, -2.43721e-12, -0.432641}, {0.572575, 1.44665, 0.163377, -4.33994, 4.33994, 1.54017, 0, 0, -1.80556, -2.01922, 1.97102e-12, 2.15557, -4.7862, -5.78659, -0.220866, -1.78815, 1.78815, 10.0886, -0.707741, -1.78815, 2.02984, 1.78815, -1.78815, -2.86637, 8.78463, 1.78815, -10.6521, 2.4959, -2.43632e-12, -0.432641}, {0.572575, 1.44665, 0.163377, 1.44665, -1.44665, -0.51339, 0, 0, 5.41667, -2.01922, 1.97175e-12, 2.15557, -2.4959, 2.43685e-12, 0.432641, -7.57474, 7.57474, 4.91994, -2.99804, -7.57474, 1.37634, 1.78815, -1.78815, -2.86637, 0.707741, 1.78815, -2.02984, 10.5728, -1.03242e-11, -9.05492}, {0.572575, 1.44665, 0.163377, 1.44665, -1.44665, -0.51339, 0, 0, -1.80556, 6.05767, -5.91306e-12, -6.46671, -2.4959, 2.43596e-12, 0.432641, -1.78815, 1.78815, 2.86637, -0.707741, -1.78815, 2.02984, -0.502145, -7.57474, -3.51988, -5.07885, 7.57474, 0.0237159, 2.4959, -2.43632e-12, 6.78958}, {5.80677, 0.989763, -2.29829, 1.66654, 1.66654, -0.659606, 0.232016, 0.232016, -2.11105, 0.0370362, -1.56863, 2.00456, -6.33358, -8.31829, 2.5068, -2.34674, -2.34674, 3.42472, 1.17767, -0.807048, 10.1067, 2.1986, 8.62127, -11.443, -2.10573, -0.121017, -1.66246, -0.332567, 1.65215, 0.131628}, {-1.93559, -0.329921, 0.766095, -4.99961, -4.99961, 1.97882, 0.232016, 0.232016, -2.11105, 0.0370362, -1.56863, 2.00456, 8.07492, -0.332464, -3.19601, -3.2748, -3.2748, 11.8689, 2.10573, 0.121017, 1.66246, 2.34674, 2.34674, -3.42472, -2.25388, 6.15351, -9.68071, -0.332567, 1.65215, 0.131628}, {-1.93559, -0.329921, 0.766095, 1.66654, 1.66654, -0.659606, -0.696049, -0.696049, 6.33316, 0.0370362, -1.56863, 2.00456, 0.332567, -1.65215, -0.131628, -9.01289, -9.01289, 6.06315, 9.84809, 1.4407, -1.40192, 2.34674, 2.34674, -3.42472, -2.10573, -0.121017, -1.66246, -0.480712, 7.92668, -7.88662}, {-1.93559, -0.329921, 0.766095, 1.66654, 1.66654, -0.659606, 0.232016, 0.232016, -2.11105, -0.111109, 4.7059, -6.01369, 0.332567, -1.65215, -0.131628, -2.34674, -2.34674, 3.42472, 2.10573, 0.121017, 1.66246, 10.0891, 3.66642, -6.4891, -8.77188, -6.78716, 0.975965, -1.26063, 0.724083, 8.57584}, {-7.02938, -6.32827e-15, -4.44089e-15, 1.74421, 1.74203, 1.33161, -1.54384, -1.54318, 0.610212, -2.54349, -0.198851, -1.94182, -12.0291, -9.12139, -6.97241, -0.247668, -0.245794, -2.40023, 5.18739, 8.08019, -3.19511, 10.4216, 1.0412, 10.1675, 0.98797, -1.90748, 0.754264, 5.05222, 2.15327, 1.64596}, {2.34313, -1.05471e-15, -8.88178e-16, -5.23263, -5.22609, -3.99484, -1.54384, -1.54318, 0.610212, -2.54349, -0.198851, -1.94182, -14.4247, -2.15327, -1.64596, 5.92769, 5.92693, -4.84108, -0.98797, 1.90748, -0.754264, 0.247668, 0.245794, 2.40023, 11.1619, -1.11207, 8.52156, 5.05222, 2.15327, 1.64596}, {2.34313, 2.33147e-15, 1.77636e-15, 1.74421, 1.74203, 1.33161, 4.63152, 4.62954, -1.83064, -2.54349, -0.198851, -1.94182, -5.05222, -2.15327, -1.64596, -7.2245, -7.21392, -7.72668, -10.3605, 1.90748, -0.754264, 0.247668, 0.245794, 2.40023, 0.98797, -1.90748, 0.754264, 15.2262, 2.94867, 9.41326}, {2.34313, -2.77556e-16, -8.88178e-16, 1.74421, 1.74203, 1.33161, -1.54384, -1.54318, 0.610212, 7.63048, 0.596554, 5.82547, -5.05222, -2.15327, -1.64596, -0.247668, -0.245794, -2.40023, -0.98797, 1.90748, -0.754264, -9.12483, 0.245794, 2.40023, -5.98886, -8.8756, -4.57219, 11.2276, 8.32599, -0.794885}, {4.62937, 4.62937, -1.83228, 1.92454e-15, 1.60567, 4.31655e-17, -0.198723, -0.198723, -1.94057, 1.74185, 0.136178, 1.32981, 1.90741, -6.49998, -0.754941, 0.245635, -1.73908, 2.39867, 2.94793, 2.94793, 9.40601, -7.21302, 1.19437, -7.71791, -2.15304, -2.15304, -1.64373, -1.90741, 0.0773091, 0.754941}, {-1.54312, -1.54312, 0.61076, -2.32061e-15, -4.817, -3.91084e-15, -0.198723, -0.198723, -1.94057, 1.74185, 0.136178, 1.32981, 8.0799, 6.09519, -3.19798, 1.04052, -0.94419, 10.1609, 2.15304, 2.15304, 1.64373, -0.245635, 1.73908, -2.39867, -9.12042, -2.69775, -6.96297, -1.90741, 0.0773091, 0.754941}, {-1.54312, -1.54312, 0.61076, 0, 1.60567, 0, 0.596168, 0.596168, 5.82171, 1.74185, 0.136178, 1.32981, 1.90741, -0.0773091, -0.754941, 0.245635, -8.16175, 2.39867, 8.32553, 8.32553, -0.799305, -0.245635, 1.73908, -2.39867, -2.15304, -2.15304, -1.64373, -8.87479, -0.467403, -4.5643}, {-1.54312, -1.54312, 0.61076, -6.94322e-16, 1.60567, -5.30079e-16, -0.198723, -0.198723, -1.94057, -5.22554, -0.408534, -3.98943, 1.90741, -0.0773091, -0.754941, 0.245635, -1.73908, 2.39867, 2.15304, 2.15304, 1.64373, 5.92686, 7.91157, -4.84171, -2.15304, -8.57571, -1.64373, -1.11252, 0.872199, 8.51722}, {-8.88178e-16, 3.03985e-15, -3.8693, 1.44142, -1.45582, 0.146636, 0.577805, 1.45582, -0.186531, -2.01922, -1.68031e-12, -1.24987, -7.54736, 7.62276, -2.36203, -2.4959, -2.07812e-12, 0.0493134, -3.02542, -7.62276, -0.617546, 10.5728, 8.79935e-12, 4.95017, 0.714206, 1.79949, 1.36367, 1.78169, -1.79949, 1.77549}, {0, -1.49289e-16, 1.28977, -4.32425, 4.36745, -0.439908, 0.577805, 1.45582, -0.186531, -2.01922, -1.67873e-12, -1.24987, -1.78169, 1.79949, -6.93455, -4.80711, -5.82327, 0.795439, -0.714206, -1.79949, -1.36367, 2.4959, 2.07523e-12, -0.0493134, 8.79109, 1.79949, 6.36315, 1.78169, -1.79949, 1.77549}, {8.88178e-16, 3.43166e-16, 1.28977, 1.44142, -1.45582, 0.146636, -1.73341, -4.36745, 0.559594, -2.01922, -1.68189e-12, -1.24987, -1.78169, 1.79949, -1.77549, -8.26156, 5.82327, -0.537231, -0.714206, -1.79949, -6.52273, 2.4959, 2.07834e-12, -0.0493134, 0.714206, 1.79949, 1.36367, 9.85858, -1.79949, 6.77497}, {0, 1.48625e-17, 1.28977, 1.44142, -1.45582, 0.146636, 0.577805, 1.45582, -0.186531, 6.05767, 5.03935e-12, 3.74961, -1.78169, 1.79949, -1.77549, -2.4959, -2.07634e-12, 0.0493134, -0.714206, -1.79949, -1.36367, 2.4959, 2.0765e-12, -5.20838, -5.05146, 7.62276, 0.777128, -0.529529, -7.62276, 2.52162}, {-0.0174717, -4.36745, 1.62174, 0.116385, -1.45582, -0.673541, -1.39583, -1.1623e-12, 0.425765, 1.27362, 1.06054e-12, 0.788355, -0.616596, 5.82327, 4.1949, 1.58148, 1.79949, 0.306268, 7.30147, -1.79949, -1.56114, -6.67598, -1.79949, -3.45969, -1.71815, 1.79949, -0.141919, 0.151058, 1.25785e-13, -1.50074}, {0.0058239, 1.45582, -0.54058, -0.349154, 4.36745, 2.02062, -1.39583, -1.1623e-12, 0.425765, 1.27362, 1.06054e-12, 0.788355, -0.174354, -5.82327, 3.66305, 7.16481, 1.79949, -1.39679, 1.71815, -1.79949, 0.141919, -1.58148, -1.79949, -0.306268, -6.81264, 1.79949, -3.29534, 0.151058, 1.25785e-13, -1.50074}, {0.0058239, 1.45582, -0.54058, 0.116385, -1.45582, -0.673541, 4.1875, 3.48841e-12, -1.27729, 1.27362, 1.061e-12, 0.788355, -0.151058, -1.26201e-13, 1.50074, 1.11595, 7.62276, 3.00043, 1.69485, -7.62276, 2.30424, -1.58148, -1.79949, -0.306268, -1.71815, 1.79949, -0.141919, -4.94344, -4.11815e-12, -4.65416}, {0.0058239, 1.45582, -0.54058, 0.116385, -1.45582, -0.673541, -1.39583, -1.16331e-12, 0.425765, -3.82087, -3.18437e-12, -2.36507, -0.151058, -1.26255e-13, 1.50074, 1.58148, 1.79949, 0.306268, 1.71815, -1.79949, 0.141919, -1.60478, -7.62276, 1.85605, -2.18368, 7.62276, 2.55224, 5.73439, 4.77913e-12, -3.20379}, {0.776806, 4.33994, 4.33994, -1.05603, 0, 0, 0.111915, 1.44665, -0.572575, 1.20305, 1.58813e-12, 2.01922, 5.84948, 1.78815, 1.78815, 1.16698, -1.78815, 0.707741, -0.265932, -5.78659, 4.7862, -5.97917, 1.78815, -8.78463, -0.181727, -1.96304e-12, -2.4959, -1.62538, -1.78815, -1.78815}, {-0.258935, -1.44665, -1.44665, 3.16808, 0, 0, 0.111915, 1.44665, -0.572575, 1.20305, 1.58704e-12, 2.01922, 2.66112, 7.57474, 7.57474, 0.719326, -7.57474, 2.99804, 0.181727, 1.96205e-12, 2.4959, -1.16698, 1.78815, -0.707741, -4.99391, -8.30986e-12, -10.5728, -1.62538, -1.78815, -1.78815}, {-0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -0.335745, -4.33994, 1.71772, 1.20305, 1.58813e-12, 2.01922, 1.62538, 1.78815, 1.78815, 5.39109, -1.78815, 0.707741, 1.21747, 5.78659, 8.28248, -1.16698, 1.78815, -0.707741, -0.181727, -1.96304e-12, -2.4959, -6.43757, -1.78815, -9.86504}, {-0.258935, -1.44665, -1.44665, -1.05603, 0, 0, 0.111915, 1.44665, -0.572575, -3.60914, -4.76221e-12, -6.05767, 1.62538, 1.78815, 1.78815, 1.16698, -1.78815, 0.707741, 0.181727, 1.9625e-12, 2.4959, -0.131244, 7.57474, 5.07885, 4.04237, -1.96214e-12, -2.4959, -2.07304, -7.57474, 0.502145}, {-1.50826, -4.33994, -0.250246, -0.36325, 9.14735e-13, 1.16277, 0.624341, -1.44665, 0.0358648, -0.763842, -1.00857e-12, -1.28205, 1.28057, -1.78815, -6.19146, -0.322725, 1.78815, -1.4816, -3.89052, 5.78659, -0.290898, 3.37809, -1.78815, 6.6098, 1.39316, 1.15988e-13, 0.147438, 0.172433, 1.78815, 1.54037}, {0.502752, 1.44665, 0.0834153, 1.08975, -2.74233e-12, -3.48831, 0.624341, -1.44665, 0.0358648, -0.763842, -1.00788e-12, -1.28205, -2.18344, -7.57474, -1.87403, -2.82009, 7.57474, -1.62505, -1.39316, -1.16267e-13, -0.147438, 0.322725, -1.78815, 1.4816, 4.44853, 4.14743e-12, 5.27564, 0.172433, 1.78815, 1.54037}, {0.502752, 1.44665, 0.0834153, -0.36325, 9.139e-13, 1.16277, -1.87302, 4.33994, -0.107594, -0.763842, -1.00765e-12, -1.28205, -0.172433, -1.78815, -1.54037, 1.13028, 1.78815, -6.13268, -3.40417, -5.78659, -0.4811, 0.322725, -1.78815, 1.4816, 1.39316, 1.15882e-13, 0.147438, 3.2278, 1.78815, 6.66858}, {0.502752, 1.44665, 0.0834153, -0.36325, 9.14526e-13, 1.16277, 0.624341, -1.44665, 0.0358648, 2.29153, 3.02502e-12, 3.84615, -0.172433, -1.78815, -1.54037, -0.322725, 1.78815, -1.4816, -1.39316, -1.1632e-13, -0.147438, -1.68828, -7.57474, 1.14793, 2.84616, -3.54214e-12, -4.50365, -2.32493, 7.57474, 1.39691}, {-5.2764, 2.09092, -1.75594, -0.883363, 0.350058, 0.882867, 0.674903, -2.28914, -0.671659, -1.55034, 2.63606, -0.796523, 2.45135, -0.971419, -5.34624, 0.257671, 2.39684, -0.261068, -5.70783, 12.8476, 2.79336, 5.94368, -12.9411, 3.44716, 3.00822, -3.69104, -0.106727, 1.0821, -0.428812, 1.81477}, {1.7588, -0.696974, 0.585315, 2.65009, -1.05017, -2.6486, 0.674903, -2.28914, -0.671659, -1.55034, 2.63606, -0.796523, -8.11729, 3.21671, -4.15603, -2.44194, 11.5534, 2.42557, -3.00822, 3.69104, 0.106727, -0.257671, -2.39684, 0.261068, 9.20957, -14.2353, 3.07936, 1.0821, -0.428812, 1.81477}, {1.7588, -0.696974, 0.585315, -0.883363, 0.350058, 0.882867, -2.02471, 6.86742, 2.01498, -1.55034, 2.63606, -0.796523, -1.0821, 0.428812, -1.81477, 3.79112, 0.996607, -3.79254, -10.0434, 6.47894, -2.23453, -0.257671, -2.39684, 0.261068, 3.00822, -3.69104, -0.106727, 7.28345, -10.973, 5.00086}, {1.7588, -0.696974, 0.585315, -0.883363, 0.350058, 0.882867, 0.674903, -2.28914, -0.671659, 4.65101, -7.90817, 2.38957, -1.0821, 0.428812, -1.81477, 0.257671, 2.39684, -0.261068, -3.00822, 3.69104, 0.106727, -7.29286, 0.391057, -2.08019, 6.54167, -5.09127, -3.6382, -1.61751, 8.72775, 4.50141}, {-0.630826, -5.80799, 0.630826, -0.387946, -0.481968, -1.21772, -0.883035, 0.3495, 0.883035, 1.06071, -1.80353, 0.544962, 1.7714, 0.130593, 6.63599, 1.57102, 0.163739, 0.413696, 4.36372, -4.22303, -4.36372, -5.81384, 7.05038, -2.59355, -0.831577, 2.82503, 0.831577, -0.219612, 1.79728, -1.7651}, {0.210275, 1.936, -0.210275, 1.16384, 1.4459, 3.65317, -0.883035, 0.3495, 0.883035, 1.06071, -1.80353, 0.544962, -0.621489, -9.54126, 2.6062, 5.10316, -1.23426, -3.11845, 0.831577, -2.82503, -0.831577, -1.57102, -0.163739, -0.413696, -5.0744, 10.0391, -1.34827, -0.219612, 1.79728, -1.7651}, {0.210275, 1.936, -0.210275, -0.387946, -0.481968, -1.21772, 2.64911, -1.0485, -2.64911, 1.06071, -1.80353, 0.544962, 0.219612, -1.79728, 1.7651, 3.1228, 2.09161, 5.28459, -0.00952469, -10.569, 0.00952469, -1.57102, -0.163739, -0.413696, -0.831577, 2.82503, 0.831577, -4.46243, 9.01139, -3.94495}, {0.210275, 1.936, -0.210275, -0.387946, -0.481968, -1.21772, -0.883035, 0.3495, 0.883035, -3.18212, 5.41059, -1.63489, 0.219612, -1.79728, 1.7651, 1.57102, 0.163739, 0.413696, 0.831577, -2.82503, -0.831577, -2.41212, -7.90772, 0.427406, 0.720206, 4.7529, 5.70247, 3.31253, 0.399276, -5.29724}, {-4.62915, 1.83443, 4.62655, 1.15731e-16, 1.13013e-15, 2.34313, -1.74201, -1.33137, 1.74389, 0.198956, 1.94285, -2.54483, -1.90731, 0.755828, -10.3625, 2.15324, 1.64567, -5.05183, 7.21395, 7.72698, -7.2249, -2.94906, -9.41706, 15.2312, -0.245923, -2.40149, 0.249326, 1.90731, -0.755828, 0.990019}, {1.54305, -0.611477, -1.54218, -3.38711e-15, -5.71373e-15, -7.02938, -1.74201, -1.33137, 1.74389, 0.198956, 1.94285, -2.54483, -8.07952, 3.20174, 5.17872, 9.12126, 6.97115, -12.0274, 0.245923, 2.40149, -0.249326, -2.15324, -1.64567, 5.05183, -1.04175, -10.1729, 10.4287, 1.90731, -0.755828, 0.990019}, {1.54305, -0.611477, -1.54218, 0, 0, 2.34313, 5.22602, 3.99411, -5.23168, 0.198956, 1.94285, -2.54483, -1.90731, 0.755828, -0.990019, 2.15324, 1.64567, -14.4243, -5.92628, 4.8474, 5.91941, -2.15324, -1.64567, 5.05183, -0.245923, -2.40149, 0.249326, 1.11149, -8.52722, 11.1694}, {1.54305, -0.611477, -1.54218, 1.15731e-16, 1.13013e-15, 2.34313, -1.74201, -1.33137, 1.74389, -0.596868, -5.82855, 7.6345, -1.90731, 0.755828, -0.990019, 2.15324, 1.64567, -5.05183, 0.245923, 2.40149, -0.249326, -8.32544, 0.800244, 11.2206, -0.245923, -2.40149, -9.12318, 8.87534, 4.56966, -5.98555}, {-4.62937, 1.83228, 4.62937, -1.60567, 0, 0, 0.198723, 1.94057, -0.198723, -0.136178, -1.32981, 1.74185, 6.49998, 0.754941, 1.90741, 1.73908, -2.39867, 0.245635, -2.94793, -9.40601, 2.94793, -1.19437, 7.71791, -7.21302, 2.15304, 1.64373, -2.15304, -0.0773091, -0.754941, -1.90741}, {1.54312, -0.61076, -1.54312, 4.817, 0, 0, 0.198723, 1.94057, -0.198723, -0.136178, -1.32981, 1.74185, -6.09519, 3.19798, 8.0799, 0.94419, -10.1609, 1.04052, -2.15304, -1.64373, 2.15304, -1.73908, 2.39867, -0.245635, 2.69775, 6.96297, -9.12042, -0.0773091, -0.754941, -1.90741}, {1.54312, -0.61076, -1.54312, -1.60567, 0, 0, -0.596168, -5.82171, 0.596168, -0.136178, -1.32981, 1.74185, 0.0773091, 0.754941, 1.90741, 8.16175, -2.39867, 0.245635, -8.32553, 0.799305, 8.32553, -1.73908, 2.39867, -0.245635, 2.15304, 1.64373, -2.15304, 0.467403, 4.5643, -8.87479}, {1.54312, -0.61076, -1.54312, -1.60567, 0, 0, 0.198723, 1.94057, -0.198723, 0.408534, 3.98943, -5.22554, 0.0773091, 0.754941, 1.90741, 1.73908, -2.39867, 0.245635, -2.15304, -1.64373, 2.15304, -7.91157, 4.84171, 5.92686, 8.57571, 1.64373, -2.15304, -0.872199, -8.51722, -1.11252}, {3.22749, -4.51945, -2.90569, 1.79579, -0.140217, 1.36925, 0.607375, 0.135762, -1.32575, -1.32734, -1.50203, -1.01206, -8.0731, -1.12793, -8.36668, -2.97048, 0.00550629, -0.0537701, -1.85046, -2.57298, 5.74449, 8.27985, 6.00261, 4.10202, -0.57904, 2.02993, -0.441503, 0.889927, 1.6888, 2.88969}, {-1.07583, 1.50648, 0.968563, -5.38738, 0.42065, -4.10774, 0.607375, 0.135762, -1.32575, -1.32734, -1.50203, -1.01206, 3.41339, -7.71473, -6.76394, -5.39998, -0.537542, 5.24921, 0.57904, -2.02993, 0.441503, 2.97048, -0.00550629, 0.0537701, 4.73032, 8.03804, 3.60675, 0.889927, 1.6888, 2.88969}, {-1.07583, 1.50648, 0.968563, 1.79579, -0.140217, 1.36925, -1.82213, -0.407286, 3.97724, -1.32734, -1.50203, -1.01206, -0.889927, -1.6888, -2.88969, -10.1537, 0.566373, -5.53076, 4.88236, -8.05586, -3.43275, 2.97048, -0.00550629, 0.0537701, -0.57904, 2.02993, -0.441503, 6.19929, 7.69691, 6.93795}, {-1.07583, 1.50648, 0.968563, 1.79579, -0.140217, 1.36925, 0.607375, 0.135762, -1.32575, 3.98202, 4.50609, 3.03619, -0.889927, -1.6888, -2.88969, -2.97048, 0.00550629, -0.0537701, 0.57904, -2.02993, 0.441503, 7.2738, -6.03144, -3.82048, -7.76222, 2.59079, -5.91849, -1.53958, 1.14575, 8.19268}, {0.596103, 2.3292, 5.82108, 0, -2.17235, 0, -1.54296, 0.977878, 0.61239, 1.74166, 1.97087, 1.32797, 0.245608, 12.3343, 2.39842, 1.9072, 1.47645, -0.756955, 8.32463, -4.16055, -0.808098, -8.87383, -9.35994, -4.55492, -2.15281, 0.249041, -1.64146, -0.245608, -3.64486, -2.39842}, {-0.198701, -0.7764, -1.94036, 0, 6.51705, 0, -1.54296, 0.977878, 0.61239, 1.74166, 1.97087, 1.32797, 1.04041, 6.75045, 10.1599, 8.07903, -2.43506, -3.20651, 2.15281, -0.249041, 1.64146, -1.9072, -1.47645, 0.756955, -9.11944, -7.63445, -6.95334, -0.245608, -3.64486, -2.39842}, {-0.198701, -0.7764, -1.94036, 0, -2.17235, 0, 4.62887, -2.93363, -1.83717, 1.74166, 1.97087, 1.32797, 0.245608, 3.64486, 2.39842, 1.9072, 10.1659, -0.756955, 2.94761, 2.85656, 9.4029, -1.9072, -1.47645, 0.756955, -2.15281, 0.249041, -1.64146, -7.21224, -11.5283, -7.71029}, {-0.198701, -0.7764, -1.94036, 0, -2.17235, 0, -1.54296, 0.977878, 0.61239, -5.22497, -5.91262, -3.98391, 0.245608, 3.64486, 2.39842, 1.9072, 1.47645, -0.756955, 2.15281, -0.249041, 1.64146, -1.1124, 1.62915, 8.51839, -2.15281, 8.93844, -1.64146, 5.92622, -7.55637, -4.84797}, {-2.37946, -3.79135, -6.81576, 0.894391, -1.25242, -0.805215, 0.086206, 0.865556, -0.85654, -1.77375, -0.876923, -0.610165, -5.66348, 4.99561, 1.40791, -1.21208, 0.478185, 2.05404, -1.43177, -6.09423, 1.67666, 8.30708, 3.02951, 0.386615, 1.08695, 2.63201, 1.74951, 2.08592, 0.0140506, 1.81295}, {0.793153, 1.26378, 2.27192, -2.68317, 3.75725, 2.41565, 0.086206, 0.865556, -0.85654, -1.77375, -0.876923, -0.610165, -5.25853, -5.06918, -10.9006, -1.55691, -2.98404, 5.4802, -1.08695, -2.63201, -1.74951, 1.21208, -0.478185, -2.05404, 8.18195, 6.1397, 4.19016, 2.08592, 0.0140506, 1.81295}, {0.793153, 1.26378, 2.27192, 0.894391, -1.25242, -0.805215, -0.258618, -2.59667, 2.56962, -1.77375, -0.876923, -0.610165, -2.08592, -0.0140506, -1.81295, -4.78965, 5.48785, 5.2749, -4.25956, -7.68714, -10.8372, 1.21208, -0.478185, -2.05404, 1.08695, 2.63201, 1.74951, 9.18092, 3.52174, 4.25361}, {0.793153, 1.26378, 2.27192, 0.894391, -1.25242, -0.805215, 0.086206, 0.865556, -0.85654, 5.32125, 2.63077, 1.83049, -2.08592, -0.0140506, -1.81295, -1.21208, 0.478185, 2.05404, -1.08695, -2.63201, -1.74951, -1.96053, -5.53332, -11.1417, -2.49062, 7.64167, 4.97037, 1.74109, -3.44817, 5.23911}, {4.58783, -0.200634, 4.23679, 1.50209, -0.951977, -0.596169, -2.69821, -0.462309, 1.0709, 2.7254, 1.34741, 0.937529, -5.97475, 4.90195, 4.86723, 1.47849, 1.74815, -0.586802, 16.0183, 2.33802, -3.86166, -12.3801, -7.13778, -3.16331, -5.22546, -0.48878, -0.421944, -0.0336074, -1.09404, -2.48256}, {-1.52928, 0.0668781, -1.41226, -4.50626, 2.85593, 1.78851, -2.69821, -0.462309, 1.0709, 2.7254, 1.34741, 0.937529, 6.15072, 0.82653, 8.1316, 12.2713, 3.59739, -4.87041, 5.22546, 0.48878, 0.421944, -1.47849, -1.74815, 0.586802, -16.1271, -5.87841, -4.17206, -0.0336074, -1.09404, -2.48256}, {-1.52928, 0.0668781, -1.41226, 1.50209, -0.951977, -0.596169, 8.09463, 1.38693, -3.21271, 2.7254, 1.34741, 0.937529, 0.0336074, 1.09404, 2.48256, -4.52987, 5.55606, 1.79787, 11.3426, 0.221267, 6.07099, -1.47849, -1.74815, 0.586802, -5.22546, -0.48878, -0.421944, -10.9352, -6.48367, -6.23267}, {-1.52928, 0.0668781, -1.41226, 1.50209, -0.951977, -0.596169, -2.69821, -0.462309, 1.0709, -8.1762, -4.04222, -2.81259, 0.0336074, 1.09404, 2.48256, 1.47849, 1.74815, -0.586802, 5.22546, 0.48878, 0.421944, 4.63862, -2.01567, 6.23585, -11.2338, 3.31913, 1.96273, 10.7592, 0.755194, -6.76616}, {1.83443, -2.90588, -4.62915, 0, -2.17235, 0, 1.94285, -0.797826, 0.198956, -1.33137, 2.00155, -1.74201, 0.755828, 10.1773, -1.90731, -2.40149, 3.67134, -0.245923, -9.41706, 2.98018, -2.94906, 7.72698, -11.6775, 7.21395, 1.64567, 0.211121, 2.15324, -0.755828, -1.48788, 1.90731}, {-0.611477, 0.968627, 1.54305, 0, 6.51705, 0, 1.94285, -0.797826, 0.198956, -1.33137, 2.00155, -1.74201, 3.20174, -2.38662, -8.07952, -10.1729, 6.86264, -1.04175, -1.64567, -0.211121, -2.15324, 2.40149, -3.67134, 0.245923, 6.97115, -7.79508, 9.12126, -0.755828, -1.48788, 1.90731}, {-0.611477, 0.968627, 1.54305, 0, -2.17235, 0, -5.82855, 2.39348, -0.596868, -1.33137, 2.00155, -1.74201, 0.755828, 1.48788, -1.90731, -2.40149, 12.3607, -0.245923, 0.800244, -4.08563, -8.32544, 2.40149, -3.67134, 0.245923, 1.64567, 0.211121, 2.15324, 4.56966, -9.49408, 8.87534}, {-0.611477, 0.968627, 1.54305, 0, -2.17235, 0, 1.94285, -0.797826, 0.198956, 3.99411, -6.00465, 5.22602, 0.755828, 1.48788, -1.90731, -2.40149, 3.67134, -0.245923, -1.64567, -0.211121, -2.15324, 4.8474, -7.54585, -5.92628, 1.64567, 8.90052, 2.15324, -8.52722, 1.70342, 1.11149}, {-3.96631, -0.406167, 1.83974, -1.35283, -0.138536, -1.77009, -0.9692, 1.50642, 1.075, 0.999931, -1.50327, 1.30834, 5.44932, 0.558033, 10.0263, 2.87019, -1.6908, 0.859181, 3.44059, -8.05506, -4.87073, -6.86992, 7.70388, -6.09254, 0.436211, 2.02938, 0.570751, -0.0379859, -0.00388992, -2.94596}, {1.3221, 0.135389, -0.613248, 4.0585, 0.415608, 5.31026, -0.9692, 1.50642, 1.075, 0.999931, -1.50327, 1.30834, -5.25042, -0.537666, 5.39896, 6.74699, -7.71647, -3.4408, -0.436211, -2.02938, -0.570751, -2.87019, 1.6908, -0.859181, -3.56351, 8.04247, -4.66261, -0.0379859, -0.00388992, -2.94596}, {1.3221, 0.135389, -0.613248, -1.35283, -0.138536, -1.77009, 2.9076, -4.51925, -3.22499, 0.999931, -1.50327, 1.30834, 0.0379859, 0.00388992, 2.94596, 8.28152, -1.13665, 7.93953, -5.72462, -2.57094, 1.88224, -2.87019, 1.6908, -0.859181, 0.436211, 2.02938, 0.570751, -4.03771, 6.00919, -8.17932}, {1.3221, 0.135389, -0.613248, -1.35283, -0.138536, -1.77009, -0.9692, 1.50642, 1.075, -2.99979, 4.50981, -3.92502, 0.0379859, 0.00388992, 2.94596, 2.87019, -1.6908, 0.859181, -0.436211, -2.02938, -0.570751, -8.1586, 1.14924, 1.59381, 5.84754, 2.58353, 7.6511, 3.83881, -6.02956, -7.24594}, {3.10069, 1.60532, -7.82452, 0.575383, -0.91145, -1.45197, 1.48006, -0.0647255, 1.36681, -1.02187, 1.51128, -2.52301, -1.73519, 5.43384, 4.37871, -2.54066, 1.20662, 0.105263, -6.47211, 1.00034, -10.3806, 6.62816, -7.25175, 9.9868, 0.551894, -0.741434, 4.91335, -0.566342, -1.78804, 1.42915}, {-1.03356, -0.535107, 2.60817, -1.72615, 2.73435, 4.3559, 1.48006, -0.0647255, 1.36681, -1.02187, 1.51128, -2.52301, 4.7006, 3.92847, -11.8619, -8.46088, 1.46552, -5.36196, -0.551894, 0.741434, -4.91335, 2.54066, -1.20662, -0.105263, 4.63939, -6.78657, 15.0054, -0.566342, -1.78804, 1.42915}, {-1.03356, -0.535107, 2.60817, 0.575383, -0.91145, -1.45197, -4.44017, 0.194177, -4.10042, -1.02187, 1.51128, -2.52301, 0.566342, 1.78804, -1.42915, -4.84219, 4.85242, 5.91313, 3.58236, 2.88186, -15.346, 2.54066, -1.20662, -0.105263, 0.551894, -0.741434, 4.91335, 3.52116, -7.83317, 11.5212}, {-1.03356, -0.535107, 2.60817, 0.575383, -0.91145, -1.45197, 1.48006, -0.0647255, 1.36681, 3.06562, -4.53385, 7.56904, 0.566342, 1.78804, -1.42915, -2.54066, 1.20662, 0.105263, -0.551894, 0.741434, -4.91335, 6.67491, 0.933809, -10.538, -1.74964, 2.90437, 10.7212, -6.48656, -1.52914, -4.03807}, {-2.63316, -2.47826, 0.36108, 0.802811, -1.2478, -0.890444, -2.35614, 1.42089, -0.657266, 0.675604, -0.999172, 1.66807, -5.2885, 5.51247, 4.8112, 1.92002, -0.213947, 1.91307, 11.252, -8.46096, 3.59026, -4.62243, 4.21063, -8.58536, -1.82742, 2.77741, -0.961199, 2.07725, -0.52127, -1.24942}, {0.877721, 0.826085, -0.12036, -2.40843, 3.7434, 2.67133, -2.35614, 1.42089, -0.657266, 0.675604, -0.999172, 1.66807, -5.58814, -2.78307, 1.73086, 11.3446, -5.8975, 4.54214, 1.82742, -2.77741, 0.961199, -1.92002, 0.213947, -1.91307, -4.52984, 6.7741, -7.63348, 2.07725, -0.52127, -1.24942}, {0.877721, 0.826085, -0.12036, 0.802811, -1.2478, -0.890444, 7.06841, -4.26266, 1.9718, 0.675604, -0.999172, 1.66807, -2.07725, 0.52127, 1.24942, -1.29123, 4.77726, 5.47485, -1.68346, -6.08175, 1.44264, -1.92002, 0.213947, -1.91307, -1.82742, 2.77741, -0.961199, -0.625163, 3.47542, -7.9217}, {0.877721, 0.826085, -0.12036, 0.802811, -1.2478, -0.890444, -2.35614, 1.42089, -0.657266, -2.02681, 2.99752, -5.00421, -2.07725, 0.52127, 1.24942, 1.92002, -0.213947, 1.91307, 1.82742, -2.77741, 0.961199, -5.4309, -3.09039, -1.43164, -5.03867, 7.76862, 2.60058, 11.5018, -6.20482, 1.37964}, {-0.815557, 4.36562, -0.135176, -1.95424, 0.460185, -0.243585, -0.0205487, 0.870319, -1.11219, 1.70294, 0.124702, 1.31071, 9.89652, -0.610825, 1.21973, 2.44098, -1.64459, 1.67583, -0.228434, -2.75832, 5.76778, -9.25274, 1.14578, -6.91867, 0.310628, -0.722961, -1.31904, -2.07955, -1.22991, -0.245392}, {0.271852, -1.45521, 0.0450587, 5.86273, -1.38055, 0.730756, -0.0205487, 0.870319, -1.11219, 1.70294, 0.124702, 1.31071, 0.99214, 7.05074, 0.0651576, 2.52317, -5.12587, 6.12457, -0.310628, 0.722961, 1.31904, -2.44098, 1.64459, -1.67583, -6.50113, -1.22177, -6.56189, -2.07955, -1.22991, -0.245392}, {0.271852, -1.45521, 0.0450587, -1.95424, 0.460185, -0.243585, 0.0616461, -2.61096, 3.33656, 1.70294, 0.124702, 1.31071, 2.07955, 1.22991, 0.245392, 10.258, -3.48533, 2.65017, -1.39804, 6.54379, 1.13881, -2.44098, 1.64459, -1.67583, 0.310628, -0.722961, -1.31904, -8.89131, -1.72872, -5.48824}, {0.271852, -1.45521, 0.0450587, -1.95424, 0.460185, -0.243585, -0.0205487, 0.870319, -1.11219, -5.10882, -0.374107, -3.93214, 2.07955, 1.22991, 0.245392, 2.44098, -1.64459, 1.67583, -0.310628, 0.722961, 1.31904, -3.52839, 7.46542, -1.85606, 8.1276, -2.5637, -0.344701, -1.99736, -4.71119, 4.20335}, {-2.82343, -2.82223, 1.11598, 0.652804, 0.651093, 1.763, 0.935946, -1.40658, 0.556196, -2.52989, -0.185258, -1.9472, -4.58144, -4.57199, -8.77136, -1.9638, 0.933829, -2.86668, -6.064, 6.20211, -2.45247, 12.0834, -0.192795, 10.6555, 2.32021, -0.575803, 0.227687, 1.97023, 1.96762, 1.71938}, {0.941145, 0.940742, -0.371993, -1.95841, -1.95328, -5.28899, 0.935946, -1.40658, 0.556196, -2.52989, -0.185258, -1.9472, -5.73481, -5.73058, -0.231403, -5.70759, 6.56014, -5.09146, -2.32021, 0.575803, -0.227687, 1.9638, -0.933829, 2.86668, 12.4398, 0.165231, 8.01649, 1.97023, 1.96762, 1.71938}, {0.941145, 0.940742, -0.371993, 0.652804, 0.651093, 1.763, -2.80784, 4.21973, -1.66859, -2.52989, -0.185258, -1.9472, -1.97023, -1.96762, -1.71938, -4.57502, -1.67054, -9.91867, -6.08479, -3.18716, 1.26029, 1.9638, -0.933829, 2.86668, 2.32021, -0.575803, 0.227687, 12.0898, 2.70865, 9.50817}, {0.941145, 0.940742, -0.371993, 0.652804, 0.651093, 1.763, 0.935946, -1.40658, 0.556196, 7.58968, 0.555775, 5.8416, -1.97023, -1.96762, -1.71938, -1.9638, 0.933829, -2.86668, -2.32021, 0.575803, -0.227687, -1.80078, -4.6968, 4.35465, -0.291002, -3.18018, -6.8243, -1.77356, 7.59392, -0.505409}, {4.38876, 6.50951, 0.486449, -0.364196, 1.94951, -0.0603643, 0.336809, -1.04259, -1.05295, 1.49031, 1.26291, 1.27547, 3.71522, -7.52572, 0.5165, 0.0338521, -1.12102, 1.37614, 0.0447138, 8.14114, 5.71377, -5.99508, -3.93064, -6.47801, -1.39195, -3.97078, -1.50195, -2.25844, -0.272335, -0.275043}, {-1.46292, -2.16984, -0.16215, 1.09259, -5.84854, 0.181093, 0.336809, -1.04259, -1.05295, 1.49031, 1.26291, 1.27547, 8.11012, 8.95169, 0.923642, -1.31338, 3.04934, 5.58796, 1.39195, 3.97078, 1.50195, -0.0338521, 1.12102, -1.37614, -7.35318, -9.02244, -6.60383, -2.25844, -0.272335, -0.275043}, {-1.46292, -2.16984, -0.16215, -0.364196, 1.94951, -0.0603643, -1.01043, 3.12777, 3.15886, 1.49031, 1.26291, 1.27547, 2.25844, 0.272335, 0.275043, 1.49064, -8.91908, 1.6176, 7.24363, 12.6501, 2.15055, -0.0338521, 1.12102, -1.37614, -1.39195, -3.97078, -1.50195, -8.21966, -5.32399, -5.37692}, {-1.46292, -2.16984, -0.16215, -0.364196, 1.94951, -0.0603643, 0.336809, -1.04259, -1.05295, -4.47092, -3.78874, -3.82641, 2.25844, 0.272335, 0.275043, 0.0338521, -1.12102, 1.37614, 1.39195, 3.97078, 1.50195, 5.81783, 9.80037, -0.727539, 0.0648337, -11.7688, -1.26049, -3.60567, 3.89803, 3.93678}, {-4.70136, 0, -1.77636e-15, -0.960805, 1.44394, -0.570969, 1.09021, -0.00626368, 2.02293, -1.69653, -1.43767, -1.45196, 3.09377, -7.56055, 2.98963, -0.159958, -1.77706, -1.79473, -7.6455, 0.0327971, -10.5922, 6.94608, 7.52775, 7.60258, 3.28465, -0.00774234, 2.50048, 0.749448, 1.7848, -0.705756}, {1.56712, -2.22045e-16, 1.11022e-15, 2.88242, -4.33181, 1.71291, 1.09021, -0.00626368, 2.02293, -1.69653, -1.43767, -1.45196, -7.01793, -1.7848, 0.705756, -4.52081, -1.75201, -9.88646, -3.28465, 0.00774234, -2.50048, 0.159958, 1.77706, 1.79473, 10.0708, 5.74295, 8.30834, 0.749448, 1.7848, -0.705756}, {1.56712, -8.88178e-16, -8.88178e-16, -0.960805, 1.44394, -0.570969, -3.27064, 0.018791, -6.0688, -1.69653, -1.43767, -1.45196, -0.749448, -1.7848, 0.705756, 3.68326, -7.5528, 0.489149, -9.55313, 0.00774234, -2.50048, 0.159958, 1.77706, 1.79473, 3.28465, -0.00774234, 2.50048, 7.53557, 7.53549, 5.1021}, {1.56712, 0, 0, -0.960805, 1.44394, -0.570969, 1.09021, -0.00626368, 2.02293, 5.08959, 4.31302, 4.35589, -0.749448, -1.7848, 0.705756, -0.159958, -1.77706, -1.79473, -3.28465, 0.00774234, -2.50048, -6.10853, 1.77706, 1.79473, 7.12787, -5.78349, 4.78436, -3.61141, 1.80986, -8.79749}}
+ + values : {{-3.9353, -4.55601, 0.673815, 0, -1.32529, -0.181463, -1.31177, -0.0269554, -1.36103, 0, -0.166427, 1.7671, -1.62143, 5.06211, 1.22778, 1.62143, 1.67146, 1.90663, 5.24706, -1.73604, 7.40408, -1.62143, -1.00576, -8.97503, 0, 1.84386, -1.95995, 1.62143, 0.239033, -0.501928}, {1.31177, 1.51867, -0.224605, 4.12325e-16, 3.97586, 0.54439, -1.31177, -0.0269554, -1.36103, 2.74179e-16, -0.166427, 1.7671, -6.86849, -6.31371, 1.40035, 6.86849, 1.77928, 7.35076, -1.56634e-16, -1.84386, 1.95995, -1.62143, -1.67146, -1.90663, -1.26573e-15, 2.50957, -9.02835, 1.62143, 0.239033, -0.501928}, {1.31177, 1.51867, -0.224605, 0, -1.32529, -0.181463, 3.9353, 0.0808662, 4.08309, 0, -0.166427, 1.7671, -1.62143, -0.239033, 0.501928, 1.62143, 6.97261, 2.63248, -5.24706, -7.91853, 2.85837, -1.62143, -1.67146, -1.90663, 0, 1.84386, -1.95995, 1.62143, 0.90474, -7.57033}, {1.31177, 1.51867, -0.224605, 0, -1.32529, -0.181463, -1.31177, -0.0269554, -1.36103, 0, 0.49928, -5.3013, -1.62143, -0.239033, 0.501928, 1.62143, 1.67146, 1.90663, -3.2565e-16, -1.84386, 1.95995, -6.86849, -7.74614, -1.00821, 0, 7.14501, -1.2341, 6.86849, 0.346855, 4.9422}, {4.62937, -1.83228, -3.04567, 1.74185, 1.32981, 2.03815, 0, 0, -2.39759, -0.198723, -1.94057, -0.655786, -7.21302, -7.71791, -11.9268, -2.15304, -1.64373, 0.444288, 1.90741, -0.754941, 11.2991, 2.94793, 9.40601, 2.17885, -1.90741, 0.754941, -1.7087, 0.245635, 2.39867, 3.77418}, {-1.54312, 0.61076, 1.01522, -5.22554, -3.98943, -6.11446, 0, 0, -2.39759, -0.198723, -1.94057, -0.655786, 5.92686, -4.84171, -7.83507, -2.15304, -1.64373, 10.0346, 1.90741, -0.754941, 1.7087, 2.15304, 1.64373, -0.444288, -1.11252, 8.51722, 0.914444, 0.245635, 2.39867, 3.77418}, {-1.54312, 0.61076, 1.01522, 1.74185, 1.32981, 2.03815, 0, 0, 7.19277, -0.198723, -1.94057, -0.655786, -0.245635, -2.39867, -3.77418, -9.12042, -6.96297, -7.70832, 8.0799, -3.19798, -2.35219, 2.15304, 1.64373, -0.444288, -1.90741, 0.754941, -1.7087, 1.04052, 10.1609, 6.39732}, {-1.54312, 0.61076, 1.01522, 1.74185, 1.32981, 2.03815, 0, 0, -2.39759, 0.596168, 5.82171, 1.96736, -0.245635, -2.39867, -3.77418, -2.15304, -1.64373, 0.444288, 1.90741, -0.754941, 1.7087, 8.32553, -0.799305, -4.50518, -8.87479, -4.5643, -9.86131, 0.245635, 2.39867, 13.3645}, {0.513102, -3.87755, -4.44089e-16, 0.57474, -0.851464, -1.31177, -1.67772, -0.393466, -9.15774e-16, 1.27402, -0.0475867, 1.31177, -2.79797, 2.86069, 6.86849, 1.36336, 1.53882, 1.62143, 8.99608, 0.462577, 4.44089e-15, -6.45943, -1.34847, -6.86849, -2.28519, 1.11129, -8.88178e-16, 0.499008, 0.545171, -1.62143}, {-0.171034, 1.29252, -2.22045e-16, -1.72422, 2.55439, 3.9353, -1.67772, -0.393466, -8.14021e-16, 1.27402, -0.0475867, 1.31177, 0.185129, -5.71524, 1.62143, 8.07425, 3.11268, 1.62143, 2.28519, -1.11129, 1.33227e-15, -1.36336, -1.53882, -1.62143, -7.38126, 1.30164, -5.24706, 0.499008, 0.545171, -1.62143}, {-0.171034, 1.29252, 4.44089e-16, 0.57474, -0.851464, -1.31177, 5.03317, 1.1804, 1.22103e-15, 1.27402, -0.0475867, 1.31177, -0.499008, -0.545171, 1.62143, -0.935598, 4.94468, 6.86849, 2.96933, -6.28136, -1.77636e-15, -1.36336, -1.53882, -1.62143, -2.28519, 1.11129, 0, -4.59706, 0.735518, -6.86849}, {-0.171034, 1.29252, 0, 0.57474, -0.851464, -1.31177, -1.67772, -0.393466, 5.5964e-16, -3.82205, 0.14276, -3.9353, -0.499008, -0.545171, 1.62143, 1.36336, 1.53882, 1.62143, 2.28519, -1.11129, -8.88178e-16, -0.679225, -6.70889, -1.62143, -4.58415, 4.51715, 5.24706, 7.2099, 2.11904, -1.62143}, {3.99239, 5.22128, -5.22376, -4.19346e-16, -1.90927e-15, 2.34313, -0.609885, 1.54187, -1.54513, 1.94068, 0.198561, -2.53925, 1.64495, 2.15129, -14.4211, 0.75386, -1.90585, -0.986372, 4.83836, -5.92203, 5.93812, -8.51658, 1.11161, 11.1434, -2.39881, -0.245434, 0.242418, -1.64495, -2.15129, 5.04857}, {-1.3308, -1.74043, 1.74125, -4.45091e-15, 2.34416e-15, -7.02938, -0.609885, 1.54187, -1.54513, 1.94068, 0.198561, -2.53925, 6.96814, 9.11299, -12.0136, 3.1934, -8.07331, 5.19416, 2.39881, 0.245434, -0.242418, -0.75386, 1.90585, 0.986372, -10.1615, -1.03968, 10.3994, -1.64495, -2.15129, 5.04857}, {-1.3308, -1.74043, 1.74125, 0, 0, 2.34313, 1.82966, -4.6256, 4.6354, 1.94068, 0.198561, -2.53925, 1.64495, 2.15129, -5.04857, 0.75386, -1.90585, -10.3589, 7.722, 7.20714, -7.20743, -0.75386, 1.90585, 0.986372, -2.39881, -0.245434, 0.242418, -9.40768, -2.94553, 15.2056}, {-1.3308, -1.74043, 1.74125, -1.12887e-15, -1.155e-16, 2.34313, -0.609885, 1.54187, -1.54513, -5.82204, -0.595682, 7.61774, 1.64495, 2.15129, -5.04857, 0.75386, -1.90585, -0.986372, 2.39881, 0.245434, -0.242418, 4.56932, 8.86756, -5.97864, -2.39881, -0.245434, -9.13008, 0.794587, -8.31875, 11.2291}, {5.36656, -5.36656, -5.3681, 1.78885, 1.36261, 1.3621, 0, 0, -3.15147, 0, -3.15147, 0, -7.15542, -9.34589, -9.34384, -2.21115, -1.68428, 2.21178, 2.21115, -2.21115, 14.2895, 2.21115, 14.2902, -2.21178, -2.21115, 2.21115, -1.68365, 0, 3.89543, 3.89543}, {-1.78885, 1.78885, 1.78937, -5.36656, -4.08784, -4.08631, 0, 0, -3.15147, 0, -3.15147, 0, 7.15542, -11.0508, -11.0529, -2.21115, -1.68428, 14.8177, 2.21115, -2.21115, 1.68365, 2.21115, 1.68428, -2.21178, -2.21115, 14.817, -1.68365, 0, 3.89543, 3.89543}, {-1.78885, 1.78885, 1.78937, 1.78885, 1.36261, 1.3621, 0, 0, 9.45441, 0, -3.15147, 0, 4.44089e-16, -3.89543, -3.89543, -9.36656, -7.13474, -3.23663, 9.36656, -9.36656, -5.47381, 2.21115, 1.68428, -2.21178, -2.21115, 2.21115, -1.68365, 0, 16.5013, 3.89543}, {-1.78885, 1.78885, 1.78937, 1.78885, 1.36261, 1.3621, 0, 0, -3.15147, 0, 9.45441, 0, 4.44089e-16, -3.89543, -3.89543, -2.21115, -1.68428, 2.21178, 2.21115, -2.21115, 1.68365, 9.36656, -5.47113, -9.36924, -9.36656, -3.23931, -7.13206, 0, 3.89543, 16.5013}, {-4.72653, -4.72788, -4.72653, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, -1.57551, -1.57596, 1.57596, -10.1969, 6.30148, 6.30439, -1.73195e-14, 1.73195e-14, 3.89543, 6.30204, -10.1975, 6.30204, 6.30204, 6.30384, -10.1993, 2.1394e-12, 3.89543, -2.14051e-12, 3.89487, 0.000556765, -0.000556765}, {1.57551, 1.57596, 1.57551, -4.72653, 4.72653, 4.72788, -1.57551, 1.57551, -1.57551, -1.57551, -1.57596, 1.57596, -10.1969, -6.30439, -6.30148, 6.30204, -6.30204, 10.1975, -2.13851e-12, -3.89543, 2.13829e-12, 1.42638e-14, -1.48241e-14, -3.89543, 6.30204, 10.1993, -6.30384, 3.89487, 0.000556765, -0.000556765}, {1.57551, 1.57596, 1.57551, 1.57551, -1.57551, -1.57596, 4.72653, -4.72653, 4.72653, -1.57551, -1.57596, 1.57596, -3.89487, -0.000556765, 0.000556765, -6.30204, 6.30204, 10.1993, -6.30204, -10.1993, -6.30204, 1.62622e-14, -1.70446e-14, -3.89543, 2.13984e-12, 3.89543, -2.14007e-12, 10.1969, 6.30439, -6.30439}, {1.57551, 1.57596, 1.57551, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, 4.72653, 4.72788, -4.72788, -3.89487, -0.000556765, 0.000556765, -1.73195e-14, 1.70974e-14, 3.89543, -2.14206e-12, -3.89543, 2.14162e-12, -6.30204, -6.30384, -10.1975, -6.30204, 10.1975, 6.30384, 10.1969, -6.30148, 6.30148}, {3.23101, 1.27881, 3.23101, -1.12016, -2.46258, 1.22297, 0.799503, 2.33566, 0.799503, 1.39766, 0.553185, -0.945467, 7.19648, 13.4211, -5.07228, 0.396353, 0.156874, -2.49991, -2.85501, -11.7028, -2.85501, -5.98699, -2.36962, 6.28178, -0.343007, 2.36014, -0.343007, -2.71584, -3.57081, 0.180421}, {-1.077, -0.426271, -1.077, 3.36048, 7.38773, -3.6689, 0.799503, 2.33566, 0.799503, 1.39766, 0.553185, -0.945467, 7.02385, 5.2759, 4.12759, -2.80166, -9.18577, -5.69792, 0.343007, -2.36014, 0.343007, -0.396353, -0.156874, 2.49991, -5.93364, 0.147394, 3.43886, -2.71584, -3.57081, 0.180421}, {-1.077, -0.426271, -1.077, -1.12016, -2.46258, 1.22297, -2.39851, -7.00698, -2.39851, 1.39766, 0.553185, -0.945467, 2.71584, 3.57081, -0.180421, 4.87699, 10.0072, -7.39177, 4.65101, -0.65505, 4.65101, -0.396353, -0.156874, 2.49991, -0.343007, 2.36014, -0.343007, -8.30647, -5.78355, 3.96229}, {-1.077, -0.426271, -1.077, -1.12016, -2.46258, 1.22297, 0.799503, 2.33566, 0.799503, -4.19298, -1.65956, 2.8364, 2.71584, 3.57081, -0.180421, 0.396353, 0.156874, -2.49991, 0.343007, -2.36014, 0.343007, 3.91165, 1.54821, 6.80792, 4.13763, 12.2104, -5.23487, -5.91385, -12.9135, -3.01759}, {-3.9353, 2.63698, 1.65871, 7.60332e-17, 1.28613, 0.176102, -3.18404e-16, -0.456132, 1.72743, -1.31177, 0.0489967, -1.35063, -1.62143, -5.64776, -0.238656, 2.99587e-16, -1.02593, -2.3529, -1.62143, 3.47483, -8.36153, 5.24706, 0.829946, 7.75543, 1.62143, -1.65031, 1.4518, 1.62143, 0.503247, -0.465751}, {1.31177, -0.878994, -0.552902, 8.56342e-16, -3.85839, -0.528305, 3.92674e-16, -0.456132, 1.72743, -1.31177, 0.0489967, -1.35063, -6.86849, 3.01273, 2.67736, -1.70324e-15, 0.798596, -9.26263, -1.62143, 1.65031, -1.4518, -1.93111e-16, 1.02593, 2.3529, 6.86849, -1.84629, 6.85433, 1.62143, 0.503247, -0.465751}, {1.31177, -0.878994, -0.552902, -5.33523e-16, 1.28613, 0.176102, 2.92961e-15, 1.3684, -5.1823, -1.31177, 0.0489967, -1.35063, -1.62143, -0.503247, 0.465751, 4.00063e-15, -6.17045, -3.0573, -6.86849, 5.16628, 0.75981, -2.19219e-15, 1.02593, 2.3529, 1.62143, -1.65031, 1.4518, 6.86849, 0.30726, 4.93678}, {1.31177, -0.878994, -0.552902, 7.60332e-17, 1.28613, 0.176102, -3.18404e-16, -0.456132, 1.72743, 3.9353, -0.14699, 4.0519, -1.62143, -0.503247, 0.465751, 2.99587e-16, -1.02593, -2.3529, -1.62143, 1.65031, -1.4518, -5.24706, 4.54191, 4.56451, 1.62143, -6.79482, 0.747392, 1.62143, 2.32778, -7.37548}, {0.56235, 5.36656, -5.36656, -1.24953, 3.64699, -0.373467, -0.986118, -1.85814, -1.41539, 2.4231, 0, 0, 6.77433, -16.8847, -0.255645, 2.76341, -2.21115, 2.21115, 5.39508, 11.9405, 5.19992, -12.4558, 2.21115, -2.21115, -1.45061, -4.50793, 0.461631, -1.77621, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, 3.74859, -10.941, 1.1204, -0.986118, -1.85814, -1.41539, 2.4231, 1.11775e-15, 8.51416e-16, 2.52601, 4.85864, -8.90493, 6.70789, 5.2214, 7.87269, 1.45061, 4.50793, -0.461631, -2.76341, 2.21115, -2.21115, -11.143, -4.50793, 0.461631, -1.77621, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, -1.24953, 3.64699, -0.373467, 2.95835, 5.57441, 4.24616, 2.4231, 0, 0, 1.77621, -2.29678, -1.74951, 7.76154, -16.7991, 3.70501, 2.20041, 11.6633, -7.61705, -2.76341, 2.21115, -2.21115, -1.45061, -4.50793, 0.461631, -11.4686, 2.29678, 1.74951}, {-0.18745, -1.78885, 1.78885, -1.24953, 3.64699, -0.373467, -0.986118, -1.85814, -1.41539, -7.2693, 0, 0, 1.77621, -2.29678, -1.74951, 2.76341, -2.21115, 2.21115, 1.45061, 4.50793, -0.461631, -2.01361, 9.36656, -9.36656, 3.54752, -19.0959, 1.9555, 2.16826, 9.72932, 7.41106}, {4.72585, 4.7272, 4.7272, -1.63629, -1.63676, 1.63676, -1.57573, 1.57528, 1.57528, 4.78731, 1.63721, -1.63631, 10.5149, 10.5179, -6.62248, 3.97028, 0.0759901, -3.97031, 10.1978, -6.30058, -6.30058, -23.1195, -6.62484, 10.5155, -3.89487, -0.000556685, -0.000556685, -3.96973, -3.97086, 0.0754336}, {-1.57528, -1.57573, -1.57573, 4.90888, 4.91028, -4.91028, -1.57573, 1.57528, 1.57528, 4.78731, 1.63721, -1.63631, 10.2709, 10.2738, 6.2275, 10.2732, -6.22515, -10.2714, 3.89487, 0.000556685, 0.000556685, -3.97028, -0.0759901, 3.97031, -23.0441, -6.5494, 6.54469, -3.96973, -3.97086, 0.0754336}, {-1.57528, -1.57573, -1.57573, -1.63629, -1.63676, 1.63676, 4.7272, -4.72585, -4.72585, 4.78731, 1.63721, -1.63631, 3.96973, 3.97086, -0.0754336, 10.5155, 6.62303, -10.5174, 10.196, 6.30349, 6.30349, -3.97028, -0.0759901, 3.97031, -3.89487, -0.000556685, -0.000556685, -23.119, -10.5197, 6.62068}, {-1.57528, -1.57573, -1.57573, -1.63629, -1.63676, 1.63676, -1.57573, 1.57528, 1.57528, -14.3619, -4.91163, 4.90893, 3.96973, 3.97086, -0.0754336, 3.97028, 0.0759901, -3.97031, 3.89487, 0.000556685, 0.000556685, 2.33085, 6.22695, 10.2732, 2.6503, 6.54649, -6.5476, 2.33321, -10.272, -6.2257}, {-2.40635, 2.40855, -2.40993, -1.57388, -1.57525, -1.57621, 3.20871, 3.21151, -0.0600473, -2.43695, -0.833412, 0.832954, 7.24946, 9.24051, 7.26022, -2.02076, -2.02253, 2.02253, -17.7925, -15.8233, -0.678532, 11.7686, 5.35618, -5.35435, 4.95766, 2.97727, 0.918721, -0.953948, -2.9395, -0.955365}, {0.802117, -0.80285, 0.803308, 4.72163, 4.72576, 4.72864, 3.20871, 3.21151, -0.0600473, -2.43695, -0.833412, 0.832954, -2.25452, 6.1509, -2.25787, -14.8556, -14.8686, 2.26272, -4.95766, -2.97727, -0.918721, 2.02076, 2.02253, -2.02253, 14.7055, 6.31092, -2.41309, -0.953948, -2.9395, -0.955365}, {0.802117, -0.80285, 0.803308, -1.57388, -1.57525, -1.57621, -9.62613, -9.63454, 0.180142, -2.43695, -0.833412, 0.832954, 0.953948, 2.9395, 0.955365, 4.27475, 4.27848, 8.32739, -8.16613, 0.234124, -4.13196, 2.02076, 2.02253, -2.02253, 4.95766, 2.97727, 0.918721, 8.79385, 0.394151, -4.28718}, {0.802117, -0.80285, 0.803308, -1.57388, -1.57525, -1.57621, 3.20871, 3.21151, -0.0600473, 7.31085, 2.50024, -2.49886, 0.953948, 2.9395, 0.955365, -2.02076, -2.02253, 2.02253, -4.95766, -2.97727, -0.918721, -1.18771, 5.23393, -5.23576, 11.2532, 9.27829, 7.22358, -13.7888, -15.7856, -0.715176}, {5.36291, -5.36781, 5.37088, 0, -3.15057, 0, -1.85687, -1.41402, 1.41389, 3.64451, 2.77532, 0.376399, 2.20964, 14.2849, 2.21292, 2.29522, 5.64214, -1.74767, 11.9323, 5.19225, -5.19032, -16.8733, -16.7434, 0.242074, -4.50486, 0.463834, -0.465254, -2.20964, -1.68266, -2.21292}, {-1.78764, 1.78927, -1.79029, 0, 9.4517, 0, -1.85687, -1.41402, 1.41389, 3.64451, 2.77532, 0.376399, 9.36019, -5.47442, 9.37409, 9.72271, 11.2982, -7.40324, 4.50486, -0.463834, 0.465254, -2.29522, -5.64214, 1.74767, -19.0829, -10.6374, -1.97085, -2.20964, -1.68266, -2.21292}, {-1.78764, 1.78927, -1.79029, 0, -3.15057, 0, 5.57061, 4.24206, -4.24168, 3.64451, 2.77532, 0.376399, 2.20964, 1.68266, 2.21292, 2.29522, 18.2444, -1.74767, 11.6554, -7.62091, 7.62642, -2.29522, -5.64214, 1.74767, -4.50486, 0.463834, -0.465254, -16.7877, -12.7839, -3.71852}, {-1.78764, 1.78927, -1.79029, 0, -3.15057, 0, -1.85687, -1.41402, 1.41389, -10.9335, -8.32596, -1.1292, 2.20964, 1.68266, 2.21292, 2.29522, 5.64214, -1.74767, 4.50486, -0.463834, 0.465254, 4.85533, -12.7992, 8.90884, -4.50486, 13.0661, -0.465254, 5.21784, 3.97342, -7.8685}, {-3.12618, -1.69082, 4.8169, -0.776768, 0.776768, 1.71093, 1.29482, -1.29482, 0.513906, -1.56011, -0.0455553, -0.619199, 2.77915, -4.76387, -6.97386, -0.640348, 0.640348, -2.75005, -8.06782, 6.08311, -0.706171, 6.8808, -0.458127, 5.22684, 2.88854, -0.903828, -1.34945, 0.32792, 1.6568, 0.130149}, {1.04206, 0.563608, -1.60563, 2.3303, -2.3303, -5.13278, 1.29482, -1.29482, 0.513906, -1.56011, -0.0455553, -0.619199, -4.49616, -3.91123, 6.29239, -5.81963, 5.81963, -4.80567, -2.88854, 0.903828, 1.34945, 0.640348, -0.640348, 2.75005, 9.12899, -0.721607, 1.12734, 0.32792, 1.6568, 0.130149}, {1.04206, 0.563608, -1.60563, -0.776768, 0.776768, 1.71093, -3.88446, 3.88446, -1.54172, -1.56011, -0.0455553, -0.619199, -0.32792, -1.6568, -0.130149, 2.46672, -2.46672, -9.59376, -7.05678, -1.3506, 7.77199, 0.640348, -0.640348, 2.75005, 2.88854, -0.903828, -1.34945, 6.56837, 1.83902, 2.60694}, {1.04206, 0.563608, -1.60563, -0.776768, 0.776768, 1.71093, 1.29482, -1.29482, 0.513906, 4.68034, 0.136666, 1.8576, -0.32792, -1.6568, -0.130149, -0.640348, 0.640348, -2.75005, -2.88854, 0.903828, 1.34945, -3.52789, -2.89478, 9.17259, 5.99561, -4.0109, -8.19316, -4.85136, 6.83608, -1.92547}, {0, 4.18682, -1.69558, 0, 0.106442, -1.13019, 1.31177, 1.47434, 0.246037, -1.31177, -0.185178, 0.318964, 0, 1.16773, 5.21915, -1.62143, -1.95396, 1.09288, -6.86849, -5.9947, -1.98688, 6.86849, 2.69467, -2.36873, 1.62143, 0.0973232, 1.00273, 0, -1.5935, -0.69838}, {6.66134e-16, -1.39561, 0.565192, -4.14281e-16, -0.319327, 3.39058, 1.31177, 1.47434, 0.246037, -1.31177, -0.185178, 0.318964, -3.55271e-15, 7.17592, -1.56239, -6.86849, -7.85133, 0.108727, -1.62143, -0.0973232, -1.00273, 1.62143, 1.95396, -1.09288, 6.86849, 0.838037, -0.273122, 1.11022e-15, -1.5935, -0.69838}, {4.44089e-16, -1.39561, 0.565192, -3.97019e-16, 0.106442, -1.13019, -3.9353, -4.42303, -0.738112, -1.31177, -0.185178, 0.318964, -2.22045e-16, 1.5935, 0.69838, -1.62143, -2.37973, 5.61365, -1.62143, 5.48511, -3.2635, 1.62143, 1.95396, -1.09288, 1.62143, 0.0973232, 1.00273, 5.24706, -0.852781, -1.97424}, {-2.22045e-16, -1.39561, 0.565192, 3.45234e-17, 0.106442, -1.13019, 1.31177, 1.47434, 0.246037, 3.9353, 0.555535, -0.956892, 2.22045e-16, 1.5935, 0.69838, -1.62143, -1.95396, 1.09288, -1.62143, -0.0973232, -1.00273, 1.62143, 7.53639, -3.35364, 1.62143, -0.328446, 5.52351, -5.24706, -7.49087, -1.68253}, {3.02999, -1.83569, -4.62902, -2.0783, 1.32959, -1.74182, 0.665193, -1.94149, 0.198817, 2.4231, 0, 0, 12.1305, -7.71818, 7.21305, 1.74669, 0.756347, 1.90726, -2.23457, 9.40942, -2.94828, -11.4391, -0.756347, -1.90726, -0.4262, -1.64347, 2.15301, -3.81734, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, 6.23489, -3.98877, 5.22547, 0.665193, -1.94149, 0.198817, 2.4231, 1.16789e-15, -1.19597e-16, 7.85732, -4.8474, -5.92628, -0.91408, 8.5223, 1.11199, 0.4262, 1.64347, -2.15301, -1.74669, -0.756347, -1.90726, -10.1186, -1.64347, 2.15301, -3.81734, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, -2.0783, 1.32959, -1.74182, -1.99558, 5.82447, -0.59645, 2.4231, 0, 0, 3.81734, -2.39981, 0.245751, 10.0599, -4.56202, 8.87456, 4.46618, -0.804126, -8.32504, -1.74669, -0.756347, -1.90726, -0.4262, -1.64347, 2.15301, -13.5097, 2.39981, -0.245751}, {-1.01, 0.611898, 1.54301, -2.0783, 1.32959, -1.74182, 0.665193, -1.94149, 0.198817, -7.2693, 0, 0, 3.81734, -2.39981, 0.245751, 1.74669, 0.756347, 1.90726, 0.4262, 1.64347, -2.15301, 2.29329, -3.20394, -8.07929, 7.88699, -6.96183, 9.12031, -6.47811, 10.1658, -1.04102}, {-1.1204, -10.941, -3.69733, -1.78885, -1.78885, 0.204309, 1.41539, -1.85814, 0.960835, 0, 0, -2.39759, 8.90493, 4.85864, -2.59316, 0.461631, 4.50793, -1.4402, -7.87269, 5.2214, -6.55438, -0.461631, -4.50793, 11.0306, 2.21115, 2.21115, 2.71104, -1.74951, 2.29678, 1.77593}, {0.373467, 3.64699, 1.23244, 5.36656, 5.36656, -0.612928, 1.41539, -1.85814, 0.960835, 0, 0, -2.39759, 0.255645, -16.8847, -6.70571, -5.19992, 11.9405, -5.28354, -2.21115, -2.21115, -2.71104, -0.461631, -4.50793, 1.4402, 2.21115, 2.21115, 12.3014, -1.74951, 2.29678, 1.77593}, {0.373467, 3.64699, 1.23244, -1.78885, -1.78885, 0.204309, -4.24616, 5.57441, -2.88251, 0, 0, -2.39759, 1.74951, -2.29678, -1.77593, 7.61705, 11.6633, -2.25744, -3.70501, -16.7991, -7.64082, -0.461631, -4.50793, 1.4402, 2.21115, 2.21115, 2.71104, -1.74951, 2.29678, 11.3663}, {0.373467, 3.64699, 1.23244, -1.78885, -1.78885, 0.204309, 1.41539, -1.85814, 0.960835, 0, 0, 7.19277, 1.74951, -2.29678, -1.77593, 0.461631, 4.50793, -1.4402, -2.21115, -2.21115, -2.71104, -1.9555, -19.0959, -3.48958, 9.36656, 9.36656, 1.89381, -7.41106, 9.72932, -2.06741}, {3.67635, 0.128375, 3.75827, 1.3465, -0.311871, 0.167791, -0.0738998, -1.11087, 1.10252, -0.0471455, 1.46553, -0.0175582, -5.53561, 1.68587, 0.669927, -1.57302, 1.7586, -1.5702, 1.90169, 5.86948, -4.2244, 1.7616, -7.62073, 1.64043, -1.60609, -1.426, -0.185698, 0.14962, -0.438387, -1.34109}, {-1.22545, -0.0427917, -1.25276, -4.03949, 0.935613, -0.503374, -0.0738998, -1.11087, 1.10252, -0.0471455, 1.46553, -0.0175582, 4.75218, 0.609554, 6.35212, -1.27742, 6.20208, -5.98029, 1.60609, 1.426, 0.185698, 1.57302, -1.7586, 1.5702, -1.4175, -7.28813, -0.115465, 0.14962, -0.438387, -1.34109}, {-1.22545, -0.0427917, -1.25276, 1.3465, -0.311871, 0.167791, 0.221699, 3.33261, -3.30757, -0.0471455, 1.46553, -0.0175582, -0.14962, 0.438387, 1.34109, -6.959, 3.00609, -2.24136, 6.50789, 1.59717, 5.19673, 1.57302, -1.7586, 1.5702, -1.60609, -1.426, -0.185698, 0.338202, -6.30052, -1.27086}, {-1.22545, -0.0427917, -1.25276, 1.3465, -0.311871, 0.167791, -0.0738998, -1.11087, 1.10252, 0.141437, -4.3966, 0.0526746, -0.14962, 0.438387, 1.34109, -1.57302, 1.7586, -1.5702, 1.60609, 1.426, 0.185698, 6.47482, -1.58744, 6.58122, -6.99207, -0.17852, -0.856863, 0.445219, 4.00509, -5.75119}, {3.98391, -5.22497, -0.407969, -0.61239, -1.54296, -1.54296, -3.86726e-16, 3.96024e-17, 1.60567, 1.94036, -0.198701, -0.198701, 4.84797, 5.92622, 7.91093, 0.756955, 1.9072, -0.0775154, 1.64146, -2.15281, -8.57548, -8.51839, -1.1124, 0.87232, -1.64146, 2.15281, 2.15281, -2.39842, 0.245608, -1.73911}, {-1.32797, 1.74166, 0.13599, 1.83717, 4.62887, 4.62887, -1.16018e-15, 1.18807e-16, 1.60567, 1.94036, -0.198701, -0.198701, 7.71029, -7.21224, 1.19515, 0.756955, 1.9072, -6.50019, 1.64146, -2.15281, -2.15281, -0.756955, -1.9072, 0.0775154, -9.4029, 2.94761, 2.94761, -2.39842, 0.245608, -1.73911}, {-1.32797, 1.74166, 0.13599, -0.61239, -1.54296, -1.54296, 0, 0, -4.817, 1.94036, -0.198701, -0.198701, 2.39842, -0.245608, 1.73911, 3.20651, 8.07903, 6.09431, 6.95334, -9.11944, -2.69677, -0.756955, -1.9072, 0.0775154, -1.64146, 2.15281, 2.15281, -10.1599, 1.04041, -0.944303}, {-1.32797, 1.74166, 0.13599, -0.61239, -1.54296, -1.54296, 1.16018e-15, -1.18807e-16, 1.60567, -5.82108, 0.596103, 0.596103, 2.39842, -0.245608, 1.73911, 0.756955, 1.9072, -0.0775154, 1.64146, -2.15281, -2.15281, 4.55492, -8.87383, -0.466443, 0.808098, 8.32463, 8.32463, -2.39842, 0.245608, -8.16178}, {4.24495, 4.24616, 5.57441, 2.77721, -0.373467, 3.64699, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -12.7926, 3.70501, -16.7991, 0.461499, 0.461631, -4.50793, 18.2456, 1.74951, 2.29678, -7.61487, -7.61705, 11.6633, -5.64333, -1.74951, -2.29678, 1.6838, -2.21115, 2.21115}, {-1.41498, -1.41539, -1.85814, -8.33162, 1.1204, -10.941, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, 3.97613, 7.87269, 5.2214, 13.0638, 0.461631, -4.50793, 5.64333, 1.74951, 2.29678, -0.461499, -0.461631, 4.50793, -12.7967, -8.90493, 4.85864, 1.6838, -2.21115, 2.21115}, {-1.41498, -1.41539, -1.85814, 2.77721, -0.373467, 3.64699, 9.4517, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 2.21115, -2.21115, -10.6473, 1.9555, -19.0959, 11.3033, 7.41106, 9.72932, -0.461499, -0.461631, 4.50793, -5.64333, -1.74951, -2.29678, -5.46957, -9.36656, 9.36656}, {-1.41498, -1.41539, -1.85814, 2.77721, -0.373467, 3.64699, -3.15057, 0, 0, -5.36503, -5.36656, 5.36656, -1.6838, 2.21115, -2.21115, 0.461499, 0.461631, -4.50793, 5.64333, 1.74951, 2.29678, 5.19843, 5.19992, 11.9405, -16.7522, -0.255645, -16.8847, 14.2861, -2.21115, 2.21115}, {-5.69487, -2.66454e-15, -2.22045e-16, -0.76309, -0.00636856, -2.01559, -0.460311, 1.45577, 1.44144, -0.67489, -1.4494, 0.574147, 1.64917, 0.0333462, 10.5538, 1.51221, -1.79156, 0.709685, 0.063805, -7.62252, -7.54749, 1.18735, 7.58918, -3.00627, 1.77744, 1.79943, 1.78172, 1.40319, -0.00787198, -2.49141}, {1.89829, -1.55431e-15, 3.33067e-16, 2.28927, 0.0191057, 6.04677, -0.460311, 1.45577, 1.44144, -0.67489, -1.4494, 0.574147, -8.99635, 0.00787198, 2.49141, 3.35345, -7.61465, -5.05609, -1.77744, -1.79943, -1.78172, -1.51221, 1.79156, -0.709685, 4.477, 7.59705, -0.514866, 1.40319, -0.00787198, -2.49141}, {1.89829, -1.9984e-15, -1.22125e-15, -0.76309, -0.00636856, -2.01559, 1.38093, -4.36732, -4.32433, -0.67489, -1.4494, 0.574147, -1.40319, 0.00787198, 2.49141, 4.56457, -1.76609, 8.77205, -9.3706, -1.79943, -1.78172, -1.51221, 1.79156, -0.709685, 1.77744, 1.79943, 1.78172, 4.10275, 5.78974, -4.78799}, {1.89829, 1.33227e-15, -5.55112e-16, -0.76309, -0.00636856, -2.01559, -0.460311, 1.45577, 1.44144, 2.02467, 4.34821, -1.72244, -1.40319, 0.00787198, 2.49141, 1.51221, -1.79156, 0.709685, -1.77744, -1.79943, -1.78172, -9.10537, 1.79156, -0.709685, 4.8298, 1.82491, 9.84408, 3.24443, -5.83096, -8.25718}, {-1.1204, -4.37783, -10.941, 1.41539, 0.69601, -1.85814, -1.78885, 0.0170635, -1.78885, 0, -2.17235, 0, -7.87269, -5.44812, 5.2214, 0.461631, -0.881407, 4.50793, 8.90493, -1.89311, 4.85864, -0.461631, 9.57081, -4.50793, -1.74951, 1.82486, 2.29678, 2.21115, 2.66408, 2.21115}, {0.373467, 1.45928, 3.64699, -4.24616, -2.08803, 5.57441, -1.78885, 0.0170635, -1.78885, 0, -2.17235, 0, -3.70501, -8.50119, -16.7991, 7.61705, -0.949661, 11.6633, 1.74951, -1.82486, -2.29678, -0.461631, 0.881407, -4.50793, -1.74951, 10.5143, 2.29678, 2.21115, 2.66408, 2.21115}, {0.373467, 1.45928, 3.64699, 1.41539, 0.69601, -1.85814, 5.36656, -0.0511904, 5.36656, 0, -2.17235, 0, -2.21115, -2.66408, -2.21115, -5.19992, -3.66545, 11.9405, 0.255645, -7.66197, -16.8847, -0.461631, 0.881407, -4.50793, -1.74951, 1.82486, 2.29678, 2.21115, 11.3535, 2.21115}, {0.373467, 1.45928, 3.64699, 1.41539, 0.69601, -1.85814, -1.78885, 0.0170635, -1.78885, 0, 6.51705, 0, -2.21115, -2.66408, -2.21115, 0.461631, -0.881407, 4.50793, 1.74951, -1.82486, -2.29678, -1.9555, -4.9557, -19.0959, -7.41106, -0.959181, 9.72932, 9.36656, 2.59583, 9.36656}, {-4.15743, -0.83732, 1.25624, -1.32462, -1.53355, 0.226806, 0.107516, 1.61619, -1.60405, -0.168703, -0.361739, 1.79599, 5.22286, 7.6848, -0.669975, 1.50443, -0.10214, 1.70236, -2.27592, -8.80746, 8.91649, -0.829614, 1.5491, -8.88631, 1.84585, 2.34271, -2.50031, 0.0756322, -1.55058, -0.237251}, {1.38581, 0.279107, -0.418747, 3.97387, 4.60066, -0.680419, 0.107516, 1.61619, -1.60405, -0.168703, -0.361739, 1.79599, -5.61888, 0.434156, 1.91224, 1.07436, -6.56689, 8.11854, -1.84585, -2.34271, 2.50031, -1.50443, 0.10214, -1.70236, 2.52067, 3.78967, -9.68425, 0.0756322, -1.55058, -0.237251}, {1.38581, 0.279107, -0.418747, -1.32462, -1.53355, 0.226806, -0.322547, -4.84856, 4.81214, -0.168703, -0.361739, 1.79599, -0.0756322, 1.55058, 0.237251, 6.80292, 6.03208, 0.795135, -7.3891, -3.45914, 4.1753, -1.50443, 0.10214, -1.70236, 1.84585, 2.34271, -2.50031, 0.750446, -0.103625, -7.4212}, {1.38581, 0.279107, -0.418747, -1.32462, -1.53355, 0.226806, 0.107516, 1.61619, -1.60405, 0.50611, 1.08522, -5.38796, -0.0756322, 1.55058, 0.237251, 1.50443, -0.10214, 1.70236, -1.84585, -2.34271, 2.50031, -7.04767, -1.01429, -0.0273746, 7.14434, 8.47693, -3.40753, -0.354431, -8.01533, 6.17893}, {-9.45441, -1.42109e-14, 0, -1.78885, -1.78885, 1.78885, -1.36261, -1.36216, -1.78885, 0, 3.15102, 0, 5.47113, 9.36656, -9.36656, 3.89543, 3.89487, 0, 3.23931, 7.13238, 9.36656, -3.89543, -16.4989, 0, 2.21115, -1.68373, -2.21115, 1.68428, -2.21115, 2.21115}, {3.15147, 5.77316e-15, -1.39933e-15, 5.36656, 5.36656, -5.36656, -1.36261, -1.36216, -1.78885, 1.06591e-15, 3.15102, 1.39933e-15, -14.2902, 2.21115, -2.21115, 9.34589, 9.34353, 7.15542, -2.21115, 1.68373, 2.21115, -3.89543, -3.89487, 3.47389e-31, 2.21115, -14.2878, -2.21115, 1.68428, -2.21115, 2.21115}, {3.15147, 1.77636e-15, 2.66454e-15, -1.78885, -1.78885, 1.78885, 4.08784, 4.08649, 5.36656, 0, 3.15102, 0, -1.68428, 2.21115, -2.21115, 11.0508, 11.0503, -7.15542, -14.817, 1.68373, 2.21115, -3.89543, -3.89487, -3.55271e-15, 2.21115, -1.68373, -2.21115, 1.68428, -14.8152, 2.21115}, {3.15147, -2.66454e-15, 0, -1.78885, -1.78885, 1.78885, -1.36261, -1.36216, -1.78885, 0, -9.45305, 0, -1.68428, 2.21115, -2.21115, 3.89543, 3.89487, 0, -2.21115, 1.68373, 2.21115, -16.5013, -3.89487, 0, 9.36656, 5.47169, -9.36656, 7.13474, 3.23751, 9.36656}, {1.36235e-15, 1.07667, 3.62612, 1.31177, 0.0458057, 1.34099, -1.31177, -1.15409, -0.162924, 1.0026e-17, 1.46718, 0.0306378, -6.86849, 0.20377, -5.52749, -6.66134e-16, 1.36992, -1.45618, 6.86849, 6.48653, 2.34713, 6.2603e-16, -7.23863, 1.33362, -1.62143, -1.87015, -1.69543, 1.62143, -0.386993, 0.163515}, {-7.28501e-17, -0.358889, -1.20871, -3.9353, -0.137417, -4.02298, -1.31177, -1.15409, -0.162924, 1.18307e-15, 1.46718, 0.0306378, -1.62143, 1.82255, 4.67132, 5.24706, 5.9863, -0.804479, 1.62143, 1.87015, 1.69543, -1.55431e-15, -1.36992, 1.45618, -1.62143, -7.73886, -1.81798, 1.62143, -0.386993, 0.163515}, {5.92827e-17, -0.358889, -1.20871, 1.31177, 0.0458057, 1.34099, 3.9353, 3.46228, 0.488772, -9.47461e-16, 1.46718, 0.0306378, -1.62143, 0.386993, -0.163515, -5.24706, 1.1867, -6.82015, 1.62143, 3.30571, 6.53026, 1.11022e-15, -1.36992, 1.45618, -1.62143, -1.87015, -1.69543, 1.62143, -6.25571, 0.0409633}, {0, -0.358889, -1.20871, 1.31177, 0.0458057, 1.34099, -1.31177, -1.15409, -0.162924, 0, -4.40153, -0.0919135, -1.62143, 0.386993, -0.163515, 0, 1.36992, -1.45618, 1.62143, 1.87015, 1.69543, 0, 0.0656375, 6.29101, -6.86849, -2.05337, -7.05941, 6.86849, 4.22939, 0.815211}, {1.26288e-15, -3.55271e-15, -3.26126, -1.4431, -0.571101, -0.587405, 1.45561, -1.44292, 0.31363, -0.0125109, 2.01402, -0.813311, 7.55617, 2.99032, 1.73198, -0.0154644, 2.48947, 0.338405, -7.62167, 7.55524, -2.9859, 0.0655081, -10.5456, 2.91484, 1.79923, -1.78355, 1.73138, -1.78377, -0.70592, 0.61764}, {9.0726e-16, -4.44089e-16, 1.08709, 4.3293, 1.7133, 1.76222, 1.45561, -1.44292, 0.31363, -0.0125109, 2.01402, -0.813311, 1.78377, 0.70592, -4.96598, -5.83791, 8.26116, -0.916114, -1.79923, 1.78355, -1.73138, 0.0154644, -2.48947, -0.338405, 1.84928, -9.83965, 4.98462, -1.78377, -0.70592, 0.61764}, {4.59702e-16, 8.88178e-16, 1.08709, -1.4431, -0.571101, -0.587405, -4.36683, 4.32877, -0.940889, -0.0125109, 2.01402, -0.813311, 1.78377, 0.70592, -0.61764, 5.75693, 4.77387, 2.68803, -1.79923, 1.78355, -6.07972, 0.0154644, -2.48947, -0.338405, 1.79923, -1.78355, 1.73138, -1.73373, -8.76202, 3.87088}, {0, -4.44089e-16, 1.08709, -1.4431, -0.571101, -0.587405, 1.45561, -1.44292, 0.31363, 0.0375328, -6.04207, 2.43993, 1.78377, 0.70592, -0.61764, -0.0154644, 2.48947, 0.338405, -1.79923, 1.78355, -1.73138, 0.0154644, -2.48947, -4.68675, 7.57163, 0.500853, 4.081, -7.60621, 5.06577, -0.63688}, {2.18368e-11, -2.07612e-11, -5.36656, -2.34313, 0, 0, 2.34313, -2.34313, -1.78885, 0, 2.34313, 0, 12.2688, -8.55449e-12, -2.21115, -8.99725e-12, 2.89626, 2.21115, -12.2688, 12.2688, 7.15542, 8.99725e-12, -12.2688, -2.21115, 2.89626, -2.89626, 0, -2.89626, 8.55449e-12, 2.21115}, {-7.27948e-12, 6.92291e-12, 1.78885, 7.02938, 0, 0, 2.34313, -2.34313, -1.78885, -1.36297e-15, 2.34313, 1.04056e-15, 2.89626, -3.62483e-11, -9.36656, -9.3725, 12.2688, 9.36656, -2.89626, 2.89626, 8.4211e-16, 8.99947e-12, -2.89626, -2.21115, 2.89626, -12.2688, -5.44843e-15, -2.89626, 8.55715e-12, 2.21115}, {-7.27773e-12, 6.92024e-12, 1.78885, -2.34313, 0, 0, -7.02938, 7.02938, 5.36656, 0, 2.34313, 0, 2.89626, -8.55405e-12, -2.21115, 9.3725, 2.89626, 2.21115, -2.89626, 2.89626, -7.15542, 8.99636e-12, -2.89626, -2.21115, 2.89626, -2.89626, 0, -2.89626, -9.3725, 2.21115}, {-7.27951e-12, 6.9198e-12, 1.78885, -2.34313, 0, 0, 2.34313, -2.34313, -1.78885, 0, -7.02938, 0, 2.89626, -8.55316e-12, -2.21115, -8.99814e-12, 2.89626, 2.21115, -2.89626, 2.89626, -4.44089e-16, 3.81171e-11, -2.89626, -9.36656, 12.2688, -2.89626, 0, -12.2688, 9.3725, 9.36656}, {0, -2.67212e-17, 7.02938, 0, -2.34313, 0, -1.78885, 2.34313, 2.34566, 1.78885, 1.02081e-11, -0.00253498, 0, 12.2688, 2.89626, 2.21115, 1.26184e-11, -2.8994, 9.36656, -12.2688, -9.38578, -9.36656, -5.34508e-11, 2.90954, -2.21115, 2.89626, 0.00313341, 0, -2.89626, -2.89626}, {0, 3.72666e-16, -2.34313, 0, 7.02938, 0, -1.78885, 2.34313, 2.34566, 1.78885, 1.02097e-11, -0.00253498, 0, 2.89626, 12.2688, 9.36656, -9.3725, -12.282, 2.21115, -2.89626, -0.00313341, -2.21115, -1.26201e-11, 2.8994, -9.36656, 2.89626, 0.0132733, 0, -2.89626, -2.89626}, {0, -1.47432e-16, -2.34313, 0, -2.34313, 0, 5.36656, -7.02938, -7.03698, 1.78885, 1.02102e-11, -0.00253498, 0, 2.89626, 2.89626, 2.21115, 9.3725, -2.8994, 2.21115, -2.89626, 9.36937, -2.21115, -1.26201e-11, 2.8994, -2.21115, 2.89626, 0.00313341, -7.15542, -2.89626, -2.88612}, {-2.22045e-16, -3.98999e-17, -2.34313, 0, -2.34313, 0, -1.78885, 2.34313, 2.34566, -5.36656, -3.06329e-11, 0.00760494, 4.44089e-16, 2.89626, 2.89626, 2.21115, 1.26215e-11, -2.8994, 2.21115, -2.89626, -0.00313341, -2.21115, -1.26209e-11, 12.2719, -2.21115, 12.2688, 0.00313341, 7.15542, -12.2688, -12.2789}, {3.55271e-15, -9.45441, -2.66454e-14, 1.78885, -1.78885, -1.78885, -1.78885, -1.36261, -1.36261, 0, 0, 3.15147, -9.36656, 5.47113, 9.36656, -1.77636e-15, 3.89543, 3.89543, 9.36656, 3.23931, 7.13474, 1.77636e-15, -3.89543, -16.5013, -2.21115, 2.21115, -1.68428, 2.21115, 1.68428, -2.21115}, {3.76824e-16, 3.15147, -2.22045e-15, -5.36656, 5.36656, 5.36656, -1.78885, -1.36261, -1.36261, 1.39953e-15, 1.06606e-15, 3.15147, -2.21115, -14.2902, 2.21115, 7.15542, 9.34589, 9.34589, 2.21115, -2.21115, 1.68428, -2.22045e-15, -3.89543, -3.89543, -2.21115, 2.21115, -14.2902, 2.21115, 1.68428, -2.21115}, {0, 3.15147, -7.10543e-15, 1.78885, -1.78885, -1.78885, 5.36656, 4.08784, 4.08784, 0, 0, 3.15147, -2.21115, -1.68428, 2.21115, -7.15542, 11.0508, 11.0508, 2.21115, -14.817, 1.68428, 0, -3.89543, -3.89543, -2.21115, 2.21115, -1.68428, 2.21115, 1.68428, -14.817}, {-5.55112e-15, 3.15147, 4.44089e-16, 1.78885, -1.78885, -1.78885, -1.78885, -1.36261, -1.36261, 0, 0, -9.45441, -2.21115, -1.68428, 2.21115, -7.10543e-15, 3.89543, 3.89543, 2.21115, -2.21115, 1.68428, 3.01981e-14, -16.5013, -3.89543, -9.36656, 9.36656, 5.47113, 9.36656, 7.13474, 3.23931}, {-5.36656, 7.03835, 7.02938, -1.78885, -6.94208e-12, -7.11741e-12, 0, 2.34612, 2.72942e-15, 0, 0, 2.34313, 7.15542, 2.89996, 2.89626, 2.21115, -2.89996, 8.79423e-12, -2.21115, -9.38447, 2.89626, -2.21115, 2.89996, -9.3725, 2.21115, 8.58089e-12, -2.89626, 0, -2.89996, -2.89626}, {1.78885, -2.34612, -2.34313, 5.36656, 2.08278e-11, 2.13522e-11, 0, 2.34612, 1.36471e-15, 0, -1.36471e-15, 2.34313, -7.15542, 12.2844, 12.2688, 2.21115, -12.2844, 8.79045e-12, -2.21115, -8.58264e-12, 2.89626, -2.21115, 2.89996, -8.79533e-12, 2.21115, 8.58868e-12, -12.2688, 0, -2.89996, -2.89626}, {1.78885, -2.34612, -2.34313, -1.78885, -6.94417e-12, -7.11741e-12, 0, -7.03835, 0, 0, 0, 2.34313, -4.44089e-16, 2.89996, 2.89626, 9.36656, -2.89996, 3.72672e-11, -9.36656, 9.38447, 12.2688, -2.21115, 2.89996, -8.79702e-12, 2.21115, 8.58346e-12, -2.89626, 0, -2.89996, -12.2688}, {1.78885, -2.34612, -2.34313, -1.78885, -6.94104e-12, -7.11845e-12, 0, 2.34612, 2.72942e-15, 0, 0, -7.02938, -4.44089e-16, 2.89996, 2.89626, 2.21115, -2.89996, 8.79551e-12, -2.21115, -8.57902e-12, 2.89626, -9.36656, 12.2844, 9.3725, 9.36656, 3.63438e-11, -2.89626, 0, -12.2844, -2.89626}, {5.36656, -5.36656, 5.36656, 3.15147, 0, 0, -1.36261, -1.78885, -1.36216, 0, 0, 3.15102, -14.2902, -2.21115, 2.21115, -2.21115, 2.21115, 1.68373, 9.34589, 7.15542, 9.34353, 2.21115, -2.21115, -14.2878, -3.89543, 0, -3.89487, 1.68428, 2.21115, -2.21115}, {-1.78885, 1.78885, -1.78885, -9.45441, -4.1986e-15, -1.05928e-14, -1.36261, -1.78885, -1.36216, 1.06591e-15, 1.39933e-15, 3.15102, 5.47113, -9.36656, 9.36656, 3.23931, 9.36656, 7.13238, 3.89543, 3.0155e-15, 3.89487, 2.21115, -2.21115, -1.68373, -3.89543, -9.05692e-15, -16.4989, 1.68428, 2.21115, -2.21115}, {-1.78885, 1.78885, -1.78885, 3.15147, 0, 0, 4.08784, 5.36656, 4.08649, 0, 0, 3.15102, -1.68428, -2.21115, 2.21115, -14.817, 2.21115, 1.68373, 11.0508, -7.15542, 11.0503, 2.21115, -2.21115, -1.68373, -3.89543, 0, -3.89487, 1.68428, 2.21115, -14.8152}, {-1.78885, 1.78885, -1.78885, 3.15147, 0, 0, -1.36261, -1.78885, -1.36216, 0, 0, -9.45305, -1.68428, -2.21115, 2.21115, -2.21115, 2.21115, 1.68373, 3.89543, -4.44089e-16, 3.89487, 9.36656, -9.36656, 5.47169, -16.5013, 0, -3.89487, 7.13474, 9.36656, 3.23751}, {3.37408, 4.04519, 4.04519, 1.73606, 1.52739, 0.215622, 1.28983, 0.0265046, 1.33827, -1.90119, -0.205494, -0.205494, -7.69991, -6.33079, 0.5377, -3.7402, -1.92072, -1.92072, -5.36342, 1.52793, -5.34056, 11.345, 2.74269, 2.74269, 0.204116, -1.63395, -0.0125188, 0.755686, 0.221243, -1.40019}, {-1.12469, -1.3484, -1.3484, -5.20817, -4.58216, -0.646866, 1.28983, 0.0265046, 1.33827, -1.90119, -0.205494, -0.205494, 3.74309, 5.17235, 6.79378, -8.89951, -2.02673, -7.27379, -0.204116, 1.63395, 0.0125188, 3.7402, 1.92072, 1.92072, 7.80888, -0.811974, 0.809457, 0.755686, 0.221243, -1.40019}, {-1.12469, -1.3484, -1.3484, 1.73606, 1.52739, 0.215622, -3.86948, -0.0795138, -4.01481, -1.90119, -0.205494, -0.205494, -0.755686, -0.221243, 1.40019, -10.6844, -8.03027, -2.7832, 4.29466, 7.02754, 5.40611, 3.7402, 1.92072, 1.92072, 0.204116, -1.63395, -0.0125188, 8.36045, 1.04322, -0.578212}, {-1.12469, -1.3484, -1.3484, 1.73606, 1.52739, 0.215622, 1.28983, 0.0265046, 1.33827, 5.70357, 0.616482, 0.616482, -0.755686, -0.221243, 1.40019, -3.7402, -1.92072, -1.92072, -0.204116, 1.63395, 0.0125188, 8.23897, 7.31431, 7.31431, -6.74011, -7.7435, -0.875007, -4.40362, 0.115225, -6.75327}, {7.02938, 7.0206, 5.36656, -2.72401e-15, 2.34147, -1.03982e-15, 2.34313, 0, 0, -1.04066e-11, -0.00126659, 1.78885, 2.89626, -9.36743, 2.21115, -2.89626, -2.89421, 1.28529e-15, -9.3725, 2.89265, 2.21115, 2.89626, 2.89928, -7.15542, 1.28666e-11, -2.89265, -2.21115, -2.89626, 0.00156559, -2.21115}, {-2.34313, -2.3402, -1.78885, 4.08602e-15, -7.0244, -3.11946e-15, 2.34313, 7.36763e-19, -1.04056e-15, -1.0403e-11, -0.00126659, 1.78885, 12.2688, 9.35923, 9.36656, -12.2688, -2.89421, 4.16314e-15, -1.28599e-11, 2.89265, 2.21115, 2.89626, 2.89421, 4.43179e-16, 5.44723e-11, -2.88758, -9.36656, -2.89626, 0.00156559, -2.21115}, {-2.34313, -2.3402, -1.78885, -2.41965e-26, 2.34147, 4.15928e-15, -7.02938, 0, 0, -1.04066e-11, -0.00126659, 1.78885, 2.89626, -0.00156559, 2.21115, -2.89626, -12.2601, -2.17783e-14, 9.3725, 12.2534, 9.36656, 2.89626, 2.89421, 5.58524e-15, 1.28633e-11, -2.89265, -2.21115, -2.89626, 0.00663197, -9.36656}, {-2.34313, -2.3402, -1.78885, 6.05094e-27, 2.34147, -1.03982e-15, 2.34313, 0, 0, 3.12292e-11, 0.00379978, -5.36656, 2.89626, -0.00156559, 2.21115, -2.89626, -2.89421, 1.28529e-15, -1.28666e-11, 2.89265, 2.21115, 12.2688, 12.255, 7.15542, 1.28671e-11, -12.2585, -2.21115, -12.2688, 0.00156559, -2.21115}, {-3.69587, -1.12113, -5.61393, -0.115297, -1.49037, 0.58988, -0.136463, 0.136463, -2.07323, -0.980196, 0.980196, -0.387956, -0.919078, 7.34175, -5.40172, 0.311194, 1.67352, 1.83353, -0.80825, -1.17646, 8.54253, 3.60959, -5.59431, -0.281701, 1.3541, 0.630611, -0.249592, 1.38027, -1.38027, 3.0422}, {1.23196, 0.373711, 1.87131, 0.345892, 4.47111, -1.76964, -0.136463, 0.136463, -2.07323, -0.980196, 0.980196, -0.387956, -6.30809, -0.114578, -10.5274, 0.857047, 1.12767, 10.1265, -1.3541, -0.630611, 0.249592, -0.311194, -1.67352, -1.83353, 5.27489, -3.29017, 1.30223, 1.38027, -1.38027, 3.0422}, {1.23196, 0.373711, 1.87131, -0.115297, -1.49037, 0.58988, 0.40939, -0.40939, 6.2197, -0.980196, 0.980196, -0.387956, -1.38027, 1.38027, -3.0422, 0.772383, 7.635, -0.525997, -6.28193, -2.12546, -7.23564, -0.311194, -1.67352, -1.83353, 1.3541, 0.630611, -0.249592, 5.30105, -5.30105, 4.59402}, {1.23196, 0.373711, 1.87131, -0.115297, -1.49037, 0.58988, -0.136463, 0.136463, -2.07323, 2.94059, -2.94059, 1.16387, -1.38027, 1.38027, -3.0422, 0.311194, 1.67352, 1.83353, -1.3541, -0.630611, 0.249592, -5.23902, -3.16837, -9.31876, 1.81529, 6.59209, -2.60911, 1.92612, -1.92612, 11.3351}, {5.57441, -4.24616, -4.24616, 3.64699, 0.373467, -2.778, -1.78885, -1.78885, -1.78885, 0, 0, 3.15147, -16.7991, -3.70501, 12.7963, -2.29678, 1.74951, 5.64494, 11.6633, 7.61705, 7.61705, 2.29678, -1.74951, -18.2508, -4.50793, -0.461631, -0.461631, 2.21115, 2.21115, -1.68428}, {-1.85814, 1.41539, 1.41539, -10.941, -1.1204, 8.334, -1.78885, -1.78885, -1.78885, 1.39953e-15, 1.39953e-15, 3.15147, 5.2214, -7.87269, -3.97726, 4.85864, 8.90493, 12.8004, 4.50793, 0.461631, 0.461631, 2.29678, -1.74951, -5.64494, -4.50793, -0.461631, -13.0675, 2.21115, 2.21115, -1.68428}, {-1.85814, 1.41539, 1.41539, 3.64699, 0.373467, -2.778, 5.36656, 5.36656, 5.36656, 0, 0, 3.15147, -2.21115, -2.21115, 1.68428, -16.8847, 0.255645, 16.7569, 11.9405, -5.19992, -5.19992, 2.29678, -1.74951, -5.64494, -4.50793, -0.461631, -0.461631, 2.21115, 2.21115, -14.2902}, {-1.85814, 1.41539, 1.41539, 3.64699, 0.373467, -2.778, -1.78885, -1.78885, -1.78885, 0, 0, -9.45441, -2.21115, -2.21115, 1.68428, -2.29678, 1.74951, 5.64494, 4.50793, 0.461631, 0.461631, 9.72932, -7.41106, -11.3065, -19.0959, -1.9555, 10.6504, 9.36656, 9.36656, 5.47113}, {0.00760494, 5.36656, -0.00379978, 1.35906e-15, -2.07964e-15, 2.34147, -2.34059, 1.78885, -2.34273, 2.34313, 0, 0, 0.00313341, 2.21115, -12.2616, 2.89313, -2.21115, 0.00156559, 12.2586, -7.15542, 12.2651, -12.2656, 2.21115, -0.00156559, -2.89626, 2.57058e-15, -2.89421, -0.00313341, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, -8.16761e-15, 3.11946e-15, -7.0244, -2.34059, 1.78885, -2.34273, 2.34313, -1.04056e-15, 1.36274e-15, 0.0132733, 9.36656, -2.90084, 12.2555, -9.36656, 9.3725, 2.89626, -2.1274e-15, 2.89421, -2.89313, 2.21115, -0.00156559, -12.2688, 6.73371e-15, -2.89421, -0.00313341, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, 5.44802e-15, 0, 2.34147, 7.02177, -5.36656, 7.0282, 2.34313, 0, 0, 0.00313341, 2.21115, -2.89578, 2.89313, -2.21115, -9.3643, 2.9064, 7.15542, 2.88915, -2.89313, 2.21115, -0.00156559, -2.89626, 0, -2.89421, -9.37564, -2.21115, 2.89578}, {-0.00253498, -1.78885, 0.00126659, -1.36201e-15, 0, 2.34147, -2.34059, 1.78885, -2.34273, -7.02938, 0, 0, 0.00313341, 2.21115, -2.89578, 2.89313, -2.21115, 0.00156559, 2.89626, 4.44089e-16, 2.89421, -2.88299, 9.36656, -0.00663197, -2.89626, 0, -12.2601, 9.35923, -9.36656, 12.2667}, {-2.0499, 2.05263, 6.32666, 0.872781, 1.47234, -0.0861955, 0.376973, -0.375702, 1.61414, -1.93305, -0.412429, 0.580942, -5.41454, -6.86355, 3.05805, -1.54478, -1.35552, -1.88864, -2.81846, 2.81293, -5.84502, 9.277, 3.00524, -0.435124, 1.31057, -1.31012, -0.61154, 1.92342, 0.974184, -2.71327}, {0.683301, -0.68421, -2.10889, -2.61834, -4.41703, 0.258586, 0.376973, -0.375702, 1.61414, -1.93305, -0.412429, 0.580942, -4.65662, 1.76266, 11.1488, -3.05267, 0.147289, -8.34521, -1.31057, 1.31012, 0.61154, 1.54478, 1.35552, 1.88864, 9.04279, 0.339593, -2.93531, 1.92342, 0.974184, -2.71327}, {0.683301, -0.68421, -2.10889, 0.872781, 1.47234, -0.0861955, -1.13092, 1.12711, -4.84242, -1.93305, -0.412429, 0.580942, -1.92342, -0.974184, 2.71327, -5.0359, -7.24489, -1.54386, -4.04377, 4.04697, 9.04709, 1.54478, 1.35552, 1.88864, 1.31057, -1.31012, -0.61154, 9.65564, 2.6239, -5.03704}, {0.683301, -0.68421, -2.10889, 0.872781, 1.47234, -0.0861955, 0.376973, -0.375702, 1.61414, 5.79916, 1.23729, -1.74283, -1.92342, -0.974184, 2.71327, -1.54478, -1.35552, -1.88864, -1.31057, 1.31012, 0.61154, -1.18842, 4.09236, 10.3242, -2.18055, -7.19949, -0.266758, 0.41553, 2.47699, -9.16983}, {3.84226, 4.31846, 0.720662, 0.104325, 0.223697, -1.11063, 1.27099, 0.0329107, 0.803582, -0.0945646, 1.18288, 0.547265, 1.03685, 0.608011, 6.11224, -1.69999, -0.317185, 0.379527, -5.07191, 1.60698, -3.91068, 2.07825, -4.41433, -2.56859, -0.0120645, -1.73863, 0.696352, -1.45415, -1.5028, -1.66974}, {-1.28075, -1.43949, -0.240221, -0.312975, -0.671092, 3.33188, 1.27099, 0.0329107, 0.803582, -0.0945646, 1.18288, 0.547265, 6.57716, 7.26075, 2.63062, -6.78396, -0.448828, -2.8348, 0.0120645, 1.73863, -0.696352, 1.69999, 0.317185, -0.379527, 0.366194, -6.47014, -1.49271, -1.45415, -1.5028, -1.66974}, {-1.28075, -1.43949, -0.240221, 0.104325, 0.223697, -1.11063, -3.81298, -0.0987322, -2.41075, -0.0945646, 1.18288, 0.547265, 1.45415, 1.5028, 1.66974, -2.11729, -1.21197, 4.82203, 5.13508, 7.49658, 0.26453, 1.69999, 0.317185, -0.379527, -0.0120645, -1.73863, 0.696352, -1.07589, -6.23432, -3.8588}, {-1.28075, -1.43949, -0.240221, 0.104325, 0.223697, -1.11063, 1.27099, 0.0329107, 0.803582, 0.283694, -3.54864, -1.64179, 1.45415, 1.5028, 1.66974, -1.69999, -0.317185, 0.379527, 0.0120645, 1.73863, -0.696352, 6.823, 6.07514, 0.581356, -0.429365, -2.63341, 5.13886, -6.53812, -1.63444, -4.88406}, {6.08004, 1.41594, 0.0377686, 0.57469, 1.08447, 1.45022, 1.45199, 0.720135, -1.43763, 0, -1.33263, 0, -0.504, -5.09498, -7.57787, -2.50511, -2.23062, -0.0155615, -5.09761, -3.18728, 7.54308, 2.50511, 7.56114, 0.0155615, -0.710355, 0.306735, -1.79257, -1.79476, 0.757084, 1.77701}, {-2.02668, -0.471981, -0.0125895, -1.72407, -3.25342, -4.35065, 1.45199, 0.720135, -1.43763, 0, -1.33263, 0, 9.90148, 1.13084, -1.72665, -8.31307, -5.11116, 5.73495, 0.710355, -0.306735, 1.79257, 2.50511, 2.23062, 0.0155615, -0.710355, 5.63725, -1.79257, -1.79476, 0.757084, 1.77701}, {-2.02668, -0.471981, -0.0125895, 0.57469, 1.08447, 1.45022, -4.35597, -2.1604, 4.31288, 0, -1.33263, 0, 1.79476, -0.757084, -1.77701, -4.80387, -6.56852, -5.81643, 8.81707, 1.58119, 1.84292, 2.50511, 2.23062, 0.0155615, -0.710355, 0.306735, -1.79257, -1.79476, 6.0876, 1.77701}, {-2.02668, -0.471981, -0.0125895, 0.57469, 1.08447, 1.45022, 1.45199, 0.720135, -1.43763, 0, 3.99789, 0, 1.79476, -0.757084, -1.77701, -2.50511, -2.23062, -0.0155615, 0.710355, -0.306735, 1.79257, 10.6118, 4.11854, 0.0659197, -3.00911, -4.03116, -7.59343, -7.60272, -2.12346, 7.52752}, {-1.37732, 4.35589, 4.31302, -1.40475, 2.02293, -0.00626368, 1.89829, -6.72683e-16, 1.70116e-15, -0.952649, -0.570969, 1.44394, 6.78788, -8.79749, 1.80986, -0.610051, -2.50048, 0.00774234, -10.5071, 1.79473, 1.77706, 4.42065, 4.78436, -5.78349, 2.9139, -1.79473, -1.77706, -1.16888, 0.705756, -1.7848}, {0.459107, -1.45196, -1.43767, 4.21425, -6.0688, 0.018791, 1.89829, -4.0361e-16, 1.0207e-15, -0.952649, -0.570969, 1.44394, -0.66755, 5.1021, 7.53549, -8.20322, -2.50048, 0.00774234, -2.9139, 1.79473, 1.77706, 0.610051, 2.50048, -0.00774234, 6.7245, 0.489149, -7.5528, -1.16888, 0.705756, -1.7848}, {0.459107, -1.45196, -1.43767, -1.40475, 2.02293, -0.00626368, -5.69487, 0, 0, -0.952649, -0.570969, 1.44394, 1.16888, -0.705756, 1.7848, 5.00895, -10.5922, 0.0327971, -4.75033, 7.60258, 7.52775, 0.610051, 2.50048, -0.00774234, 2.9139, -1.79473, -1.77706, 2.64172, 2.98963, -7.56055}, {0.459107, -1.45196, -1.43767, -1.40475, 2.02293, -0.00626368, 1.89829, -1.34537e-16, 3.40233e-16, 2.85795, 1.71291, -4.33181, 1.16888, -0.705756, 1.7848, -0.610051, -2.50048, 0.00774234, -2.9139, 1.79473, 1.77706, -1.22638, 8.30834, 5.74295, 8.5329, -9.88646, -1.75201, -8.76204, 0.705756, -1.7848}, {-5.36656, -5.36656, -5.36656, -0.373467, -3.64699, -0.373467, 0, 0, -1.60567, -1.41539, 1.85814, 0.190281, -0.255645, 16.8847, -0.255645, 0.461631, 4.50793, 2.44635, -2.21115, -2.21115, 6.19624, 5.19992, -11.9405, -3.20747, 2.21115, 2.21115, 0.226431, 1.74951, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 1.1204, 10.941, 1.1204, 0, 0, -1.60567, -1.41539, 1.85814, 0.190281, -8.90493, -4.85864, -8.90493, 0.461631, 4.50793, 8.86902, -2.21115, -2.21115, -0.226431, -0.461631, -4.50793, -2.44635, 7.87269, -5.2214, -0.534693, 1.74951, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, -0.373467, -3.64699, -0.373467, 0, 0, 4.817, -1.41539, 1.85814, 0.190281, -1.74951, 2.29678, -1.74951, 1.9555, 19.0959, 3.94022, -9.36656, -9.36656, -7.38185, -0.461631, -4.50793, -2.44635, 2.21115, 2.21115, 0.226431, 7.41106, -9.72932, 0.988391}, {1.78885, 1.78885, 1.78885, -0.373467, -3.64699, -0.373467, 0, 0, -1.60567, 4.24616, -5.57441, -0.570843, -1.74951, 2.29678, -1.74951, 0.461631, 4.50793, 2.44635, -2.21115, -2.21115, -0.226431, -7.61705, -11.6633, -9.60176, 3.70501, 16.7991, 1.7203, 1.74951, -2.29678, 8.17219}, {-7.99361e-15, -9.45441, 7.10543e-15, 1.78885, -1.36261, -1.36261, -1.78885, -1.78885, -1.78885, 0, 0, 3.15147, -9.36656, 3.23931, 7.13474, 3.55271e-15, 3.89543, 3.89543, 9.36656, 5.47113, 9.36656, -3.55271e-15, -3.89543, -16.5013, -2.21115, 1.68428, -2.21115, 2.21115, 2.21115, -1.68428}, {1.48705e-15, 3.15147, -8.88178e-16, -5.36656, 4.08784, 4.08784, -1.78885, -1.78885, -1.78885, 1.39953e-15, 1.39953e-15, 3.15147, -2.21115, -14.817, 1.68428, 7.15542, 11.0508, 11.0508, 2.21115, -1.68428, 2.21115, -3.55271e-15, -3.89543, -3.89543, -2.21115, 1.68428, -14.817, 2.21115, 2.21115, -1.68428}, {2.88658e-15, 3.15147, -2.22045e-15, 1.78885, -1.36261, -1.36261, 5.36656, 5.36656, 5.36656, 0, 0, 3.15147, -2.21115, -2.21115, 1.68428, -7.15542, 9.34589, 9.34589, 2.21115, -14.2902, 2.21115, -3.55271e-15, -3.89543, -3.89543, -2.21115, 1.68428, -2.21115, 2.21115, 2.21115, -14.2902}, {0, 3.15147, 2.22045e-15, 1.78885, -1.36261, -1.36261, -1.78885, -1.78885, -1.78885, 0, 0, -9.45441, -2.21115, -2.21115, 1.68428, 0, 3.89543, 3.89543, 2.21115, -1.68428, 2.21115, 0, -16.5013, -3.89543, -9.36656, 7.13474, 3.23931, 9.36656, 9.36656, 5.47113}, {3.05492, -2.11527, -4.36034, 0.668117, -1.63909, -0.00517894, 0.911433, 1.21439, 0.00383706, -0.561241, -0.2804, -1.4521, -2.23961, 7.71083, -1.76944, -1.95243, 0.524948, 0.00165865, -3.51362, -7.23019, -1.81665, 4.1974, 0.59665, 5.80676, -0.132105, 2.37262, 1.8013, -0.43286, -1.15448, 1.79016}, {-1.01831, 0.705091, 1.45345, -2.00435, 4.91726, 0.0155368, 0.911433, 1.21439, 0.00383706, -0.561241, -0.2804, -1.4521, 4.50609, -1.66588, -7.60394, -5.59816, -4.33263, -0.0136896, 0.132105, -2.37262, -1.8013, 1.95243, -0.524948, -0.00165865, 2.11286, 3.49421, 7.60972, -0.43286, -1.15448, 1.79016}, {-1.01831, 0.705091, 1.45345, 0.668117, -1.63909, -0.00517894, -2.7343, -3.64318, -0.0115112, -0.561241, -0.2804, -1.4521, 0.43286, 1.15448, -1.79016, -4.6249, 7.08129, 0.0223744, 4.20534, -5.19298, -7.61508, 1.95243, -0.524948, -0.00165865, -0.132105, 2.37262, 1.8013, 1.81211, -0.0328828, 7.59857}, {-1.01831, 0.705091, 1.45345, 0.668117, -1.63909, -0.00517894, 0.911433, 1.21439, 0.00383706, 1.68372, 0.841199, 4.35631, 0.43286, 1.15448, -1.79016, -1.95243, 0.524948, 0.00165865, 0.132105, -2.37262, -1.8013, 6.02566, -3.34531, -5.81544, -2.80457, 8.92896, 1.82202, -4.07859, -6.01206, 1.77481}, {5.82171, 7.62554, -0.596168, 1.32981, 1.74185, -1.74185, 0.61076, -1.54312, 1.54312, 0, 2.34313, 0, -4.5643, -5.97853, 8.87479, -2.39867, -0.245635, 0.245635, -0.799305, 11.2218, -8.32553, 2.39867, -9.12687, -0.245635, -1.64373, -5.0493, 2.15304, -0.754941, -0.988857, -1.90741}, {-1.94057, -2.54185, 0.198723, -3.98943, -5.22554, 5.22554, 0.61076, -1.54312, 1.54312, -3.55272e-16, 2.34313, -8.97618e-16, 8.51722, 11.1562, 1.11252, -4.84171, 5.92686, -5.92686, 1.64373, 5.0493, -2.15304, 2.39867, 0.245635, -0.245635, -1.64373, -14.4218, 2.15304, -0.754941, -0.988857, -1.90741}, {-1.94057, -2.54185, 0.198723, 1.32981, 1.74185, -1.74185, -1.83228, 4.62937, -4.62937, 0, 2.34313, 0, 0.754941, 0.988857, 1.90741, -7.71791, -7.21302, 7.21302, 9.40601, 15.2167, -2.94793, 2.39867, 0.245635, -0.245635, -1.64373, -5.0493, 2.15304, -0.754941, -10.3614, -1.90741}, {-1.94057, -2.54185, 0.198723, 1.32981, 1.74185, -1.74185, 0.61076, -1.54312, 1.54312, 0, -7.02938, 0, 0.754941, 0.988857, 1.90741, -2.39867, -0.245635, 0.245635, 1.64373, 5.0493, -2.15304, 10.1609, 10.413, -1.04052, -6.96297, -12.0167, 9.12042, -3.19798, 5.18364, -8.0799}, {5.81909, -7.62212, -0.600985, 0, -2.34313, 0, 0.610485, 1.54348, 1.54262, 1.32921, -1.74106, -1.74295, 2.3976, 9.12828, -0.24762, -0.754601, 0.988412, -1.90678, -0.798945, -11.2223, -8.32487, -4.56224, 5.97584, 8.87857, -1.643, 5.04833, 2.1544, -2.3976, 0.244222, 0.24762}, {-1.9397, 2.54071, 0.200328, 0, 7.02938, 0, 0.610485, 1.54348, 1.54262, 1.32921, -1.74106, -1.74295, 10.1564, -10.407, -1.04893, -3.19654, -5.18552, -8.07725, 1.643, -5.04833, -2.1544, 0.754601, -0.988412, 1.90678, -6.95984, 12.0126, 9.12619, -2.3976, 0.244222, 0.24762}, {-1.9397, 2.54071, 0.200328, 0, -2.34313, 0, -1.83146, -4.63045, -4.62785, 1.32921, -1.74106, -1.74295, 2.3976, -0.244222, -0.24762, -0.754601, 10.3609, -1.90678, 9.40178, -15.2112, -2.95571, 0.754601, -0.988412, 1.90678, -1.643, 5.04833, 2.1544, -7.71444, 7.20847, 7.21941}, {-1.9397, 2.54071, 0.200328, 0, -2.34313, 0, 0.610485, 1.54348, 1.54262, -3.98763, 5.22319, 5.22884, 2.3976, -0.244222, -0.24762, -0.754601, 0.988412, -1.90678, 1.643, -5.04833, -2.1544, 8.51339, -11.1512, 1.10547, -1.643, 14.4208, 2.1544, -4.83954, -5.92971, -5.92285}, {8.88178e-16, -4.44089e-16, 4.817, 1.32981, 1.74185, -0.136178, 0.61076, -1.54312, 1.54312, -1.94057, -0.198723, 0.198723, -6.96297, -9.12042, 2.69775, -2.39867, -0.245635, -1.73908, -3.19798, 8.0799, -6.09519, 10.1609, 1.04052, 0.94419, 0.754941, -1.90741, -0.0773091, 1.64373, 2.15304, -2.15304}, {4.44089e-16, -8.32667e-17, -1.60567, -3.98943, -5.22554, 0.408534, 0.61076, -1.54312, 1.54312, -1.94057, -0.198723, 0.198723, -1.64373, -2.15304, 8.57571, -4.84171, 5.92686, -7.91157, -0.754941, 1.90741, 0.0773091, 2.39867, 0.245635, 1.73908, 8.51722, -1.11252, -0.872199, 1.64373, 2.15304, -2.15304}, {0, -3.05311e-16, -1.60567, 1.32981, 1.74185, -0.136178, -1.83228, 4.62937, -4.62937, -1.94057, -0.198723, 0.198723, -1.64373, -2.15304, 2.15304, -7.71791, -7.21302, -1.19437, -0.754941, 1.90741, 6.49998, 2.39867, 0.245635, 1.73908, 0.754941, -1.90741, -0.0773091, 9.40601, 2.94793, -2.94793}, {-6.66134e-16, -1.94289e-16, -1.60567, 1.32981, 1.74185, -0.136178, 0.61076, -1.54312, 1.54312, 5.82171, 0.596168, -0.596168, -1.64373, -2.15304, 2.15304, -2.39867, -0.245635, -1.73908, -0.754941, 1.90741, 0.0773091, 2.39867, 0.245635, 8.16175, -4.5643, -8.87479, 0.467403, -0.799305, 8.32553, -8.32553}, {-1.28888, 1.28888, -5.54754, -0.937563, 0.937563, 0.371082, -0.607159, -0.998509, -1.77891, 1.1151, 0.490571, -0.441349, 4.3781, -4.3781, -4.22872, 1.90938, 0.0753332, 1.74017, 2.64808, 5.7593, 7.02879, -6.36977, -2.03762, 0.0252242, -0.219445, -1.76527, 0.0868549, -0.627846, 0.627846, 2.74439}, {0.429625, -0.429625, 1.84918, 2.81269, -2.81269, -1.11325, -0.607159, -0.998509, -1.77891, 1.1151, 0.490571, -0.441349, -1.09065, 1.09065, -10.1411, 4.33802, 4.06937, 8.85582, 0.219445, 1.76527, -0.0868549, -1.90938, -0.0753332, -1.74017, -4.67983, -3.72755, 1.85225, -0.627846, 0.627846, 2.74439}, {0.429625, -0.429625, 1.84918, -0.937563, 0.937563, 0.371082, 1.82148, 2.99553, 5.33673, 1.1151, 0.490571, -0.441349, 0.627846, -0.627846, -2.74439, 5.65963, -3.67492, 0.255844, -1.49906, 3.48377, -7.48357, -1.90938, -0.0753332, -1.74017, -0.219445, -1.76527, 0.0868549, -5.08823, -1.33444, 4.50979}, {0.429625, -0.429625, 1.84918, -0.937563, 0.937563, 0.371082, -0.607159, -0.998509, -1.77891, -3.34529, -1.47171, 1.32405, 0.627846, -0.627846, -2.74439, 1.90938, 0.0753332, 1.74017, 0.219445, 1.76527, -0.0868549, -3.62788, 1.64317, -9.13689, 3.53081, -5.51552, -1.39747, 1.80079, 4.62188, 9.86004}, {-4.9045, -4.90878, 4.90879, 0.803078, -0.801888, 0.80329, -1.63483, -1.63626, 0.030594, -0.803078, 0.801888, 0.802378, -6.22574, 2.17621, -2.18355, 1.0281, 3.01372, -1.03074, 6.53933, 6.54504, 1.86234, 2.18421, -6.22127, -2.17877, 7.60503e-14, -7.58282e-14, -1.98471, 3.01342, 1.03134, -1.02961}, {1.63483, 1.63626, -1.63626, -2.40924, 2.40566, -2.40987, -1.63483, -1.63626, 0.030594, -0.803078, 0.801888, 0.802378, -9.55275, -7.57638, 7.57466, 7.56743, 9.55876, -1.15311, -7.62723e-14, 7.68274e-14, 1.98471, -1.0281, -3.01372, 1.03074, 3.21231, -3.20755, -5.19423, 3.01342, 1.03134, -1.02961}, {1.63483, 1.63626, -1.63626, 0.803078, -0.801888, 0.80329, 4.9045, 4.90878, -0.0917819, -0.803078, 0.801888, 0.802378, -3.01342, -1.03134, 1.02961, -2.18421, 6.22127, -4.2439, -6.53933, -6.54504, 8.52976, -1.0281, -3.01372, 1.03074, 7.52731e-14, -7.53841e-14, -1.98471, 6.22574, -2.17621, -4.23912}, {1.63483, 1.63626, -1.63626, 0.803078, -0.801888, 0.80329, -1.63483, -1.63626, 0.030594, 2.40924, -2.40566, -2.40713, -3.01342, -1.03134, 1.02961, 1.0281, 3.01372, -1.03074, -7.52731e-14, 7.43849e-14, 1.98471, -7.56743, -9.55876, 7.57579, -3.21231, 3.20755, -5.19788, 9.55275, 7.57638, -1.15199}, {0.412021, -3.98943, -5.22554, -1.60567, 0, 0, 0.200419, -1.94057, -0.198723, 1.54259, 0.61076, -1.54312, 8.57715, -1.64373, -2.15304, 1.73698, 2.39867, 0.245635, -0.879643, 8.51722, -1.11252, -7.90734, -4.84171, 5.92686, 0.0779689, -0.754941, 1.90741, -2.15448, 1.64373, 2.15304}, {-0.13734, 1.32981, 1.74185, 4.817, 0, 0, 0.200419, -1.94057, -0.198723, 1.54259, 0.61076, -1.54312, 2.70384, -6.96297, -9.12042, 0.93531, 10.1609, 1.04052, -0.0779689, 0.754941, -1.90741, -1.73698, -2.39867, -0.245635, -6.09239, -3.19798, 8.0799, -2.15448, 1.64373, 2.15304}, {-0.13734, 1.32981, 1.74185, -1.60567, 0, 0, -0.601256, 5.82171, 0.596168, 1.54259, 0.61076, -1.54312, 2.15448, -1.64373, -2.15304, 8.15966, 2.39867, 0.245635, 0.471392, -4.5643, -8.87479, -1.73698, -2.39867, -0.245635, 0.0779689, -0.754941, 1.90741, -8.32484, -0.799305, 8.32553}, {-0.13734, 1.32981, 1.74185, -1.60567, 0, 0, 0.200419, -1.94057, -0.198723, -4.62777, -1.83228, 4.62937, 2.15448, -1.64373, -2.15304, 1.73698, 2.39867, 0.245635, -0.0779689, 0.754941, -1.90741, -1.18762, -7.71791, -7.21302, 6.50064, -0.754941, 1.90741, -2.95615, 9.40601, 2.94793}, {-2.2024, 0.148267, -4.33994, -0.546238, -1.40698, 1.37428e-12, 0.372712, 0.180326, -1.44665, -0.560609, 1.27608, -1.24642e-12, 1.9527, 7.42813, -1.78815, 0.21449, 1.51623, 1.78815, -2.85899, -0.883108, 5.78659, 2.02795, -6.62053, -1.78815, 1.36814, 0.161805, -1.58045e-13, 0.232253, -1.80021, 1.78815}, {0.734135, -0.0494224, 1.44665, 1.63871, 4.22094, -4.12207e-12, 0.372712, 0.180326, -1.44665, -0.560609, 1.27608, -1.24619e-12, -3.16879, 1.9979, -7.57474, -1.27636, 0.794924, 7.57474, -1.36814, -0.161805, 1.57656e-13, -0.21449, -1.51623, -1.78815, 3.61057, -4.9425, 4.82673e-12, 0.232253, -1.80021, 1.78815}, {0.734135, -0.0494224, 1.44665, -0.546238, -1.40698, 1.37428e-12, -1.11814, -0.540977, 4.33994, -0.560609, 1.27608, -1.24642e-12, -0.232253, 1.80021, -1.78815, 2.39944, 7.14414, 1.78815, -4.30468, 0.0358845, -5.78659, -0.21449, -1.51623, -1.78815, 1.36814, 0.161805, -1.58045e-13, 2.47469, -6.90451, 1.78815}, {0.734135, -0.0494224, 1.44665, -0.546238, -1.40698, 1.3744e-12, 0.372712, 0.180326, -1.44665, 1.68183, -3.82823, 3.73959e-12, -0.232253, 1.80021, -1.78815, 0.21449, 1.51623, 1.78815, -1.36814, -0.161805, 1.577e-13, -3.15103, -1.31854, -7.57474, 3.55309, 5.78972, -5.65567e-12, -1.25859, -2.52151, 7.57474}, {0, 9.4517, 0, -1.78885, 1.78834, -1.78937, 1.78885, 1.36222, -1.3621, 0, 0, 3.15147, 9.36656, -5.46957, 9.36924, 0, -3.89432, 3.89543, -9.36656, -3.23838, 7.13206, 0, 3.89432, -16.5013, 2.21115, -2.21051, -1.68365, -2.21115, -1.6838, -2.21178}, {-1.54779e-16, -3.15057, 0, 5.36656, -5.36503, 5.3681, 1.78885, 1.36222, -1.3621, -1.39953e-15, -1.06575e-15, 3.15147, 2.21115, 14.2861, 2.21178, -7.15542, -9.34321, 9.34384, -2.21115, 2.21051, 1.68365, 1.77636e-15, 3.89432, -3.89543, 2.21115, -2.21051, -14.2895, -2.21115, -1.6838, -2.21178}, {0, -3.15057, -4.44089e-16, -1.78885, 1.78834, -1.78937, -5.36656, -4.08667, 4.08631, 0, 0, 3.15147, 2.21115, 1.6838, 2.21178, 7.15542, -11.0477, 11.0529, -2.21115, 14.8128, 1.68365, 0, 3.89432, -3.89543, 2.21115, -2.21051, -1.68365, -2.21115, -1.6838, -14.8177}, {0, -3.15057, 0, -1.78885, 1.78834, -1.78937, 1.78885, 1.36222, -1.3621, 0, 0, -9.45441, 2.21115, 1.6838, 2.21178, 0, -3.89432, 3.89543, -2.21115, 2.21051, 1.68365, 0, 16.4966, -3.89543, 9.36656, -9.36389, 5.47381, -9.36656, -7.1327, 3.23663}, {-0.595682, -0.596202, -5.82204, 0, -1.60567, 0, 1.54187, 1.54321, -0.609885, -1.74043, -0.136279, -1.3308, -0.245434, 8.16174, -2.39881, -1.90585, 0.0771985, 0.75386, -8.31875, -8.32602, 0.794587, 8.86756, 0.467918, 4.56932, 2.15129, 2.15317, 1.64495, 0.245434, -1.73907, 2.39881}, {0.198561, 0.198734, 1.94068, 0, 4.817, 0, 1.54187, 1.54321, -0.609885, -1.74043, -0.136279, -1.3308, -1.03968, 0.94413, -10.1615, -8.07331, -6.09565, 3.1934, -2.15129, -2.15317, -1.64495, 1.90585, -0.0771985, -0.75386, 9.11299, 2.69828, 6.96814, 0.245434, -1.73907, 2.39881}, {0.198561, 0.198734, 1.94068, 0, -1.60567, 0, -4.6256, -4.62964, 1.82966, -1.74043, -0.136279, -1.3308, -0.245434, 1.73907, -2.39881, -1.90585, 6.49987, 0.75386, -2.94553, -2.9481, -9.40768, 1.90585, -0.0771985, -0.75386, 2.15129, 2.15317, 1.64495, 7.20714, -1.19395, 7.722}, {0.198561, 0.198734, 1.94068, 0, -1.60567, 0, 1.54187, 1.54321, -0.609885, 5.22128, 0.408838, 3.99239, -0.245434, 1.73907, -2.39881, -1.90585, 0.0771985, 0.75386, -2.15129, -2.15317, -1.64495, 1.11161, -0.872135, -8.51658, 2.15129, 8.57584, 1.64495, -5.92203, -7.91192, 4.83836}, {-1.34911, 3.4086, 1.4084, 1.74422, 0.694821, 0.910847, -1.68823, -0.836265, 0.836265, -0.505685, 1.27764, -1.27764, -9.68869, -2.23371, -4.18896, -0.0691986, 0.174835, -2.15955, 8.28384, 5.78316, -3.79845, 2.09194, -5.28541, 7.27013, -1.53091, -2.4381, 0.453387, 2.71183, -0.545574, 0.545574}, {0.449702, -1.1362, -0.469468, -5.23265, -2.08446, -2.73254, -1.68823, -0.836265, 0.836265, -0.505685, 1.27764, -1.27764, -4.51064, 5.09037, 1.3323, 6.68373, 3.5199, -5.50461, 1.53091, 2.4381, -0.453387, 0.0691986, -0.174835, 2.15955, 0.49183, -7.54868, 5.56396, 2.71183, -0.545574, 0.545574}, {0.449702, -1.1362, -0.469468, 1.74422, 0.694821, 0.910847, 5.0647, 2.5088, -2.5088, -0.505685, 1.27764, -1.27764, -2.71183, 0.545574, -0.545574, -7.04606, -2.60445, -5.80294, -0.267898, 6.9829, 1.42448, 0.0691986, -0.174835, 2.15955, -1.53091, -2.4381, 0.453387, 4.73457, -5.65615, 5.65615}, {0.449702, -1.1362, -0.469468, 1.74422, 0.694821, 0.910847, -1.68823, -0.836265, 0.836265, 1.51705, -3.83293, 3.83293, -2.71183, 0.545574, -0.545574, -0.0691986, 0.174835, -2.15955, 1.53091, 2.4381, -0.453387, -1.72961, 4.36997, 4.03742, -8.50777, -5.21739, -3.19, 9.46476, 2.79949, -2.79949}, {-6.58175, 1.32414, -1.32414, -0.505685, 1.27764, -1.27764, 0.857073, 0.177676, 2.16545, -2.54531, -1.01394, -1.32918, -0.0640323, -6.14426, 6.14426, -0.43434, -1.79887, -1.09739, -7.19952, -0.384749, -11.884, 10.6156, 5.85464, 6.41412, 3.77123, -0.325955, 3.22222, 2.08677, 1.03368, -1.03368}, {2.19392, -0.441379, 0.441379, 1.51705, -3.83293, 3.83293, 0.857073, 0.177676, 2.16545, -2.54531, -1.01394, -1.32918, -10.8624, 0.731834, -0.731834, -3.86263, -2.50958, -9.75919, -3.77123, 0.325955, -3.22222, 0.43434, 1.79887, 1.09739, 13.9525, 3.72981, 8.53895, 2.08677, 1.03368, -1.03368}, {2.19392, -0.441379, 0.441379, -0.505685, 1.27764, -1.27764, -2.57122, -0.533028, -6.49635, -2.54531, -1.01394, -1.32918, -2.08677, -1.03368, 1.03368, 1.5884, -6.90945, 4.01319, -12.5469, 2.09147, -4.98773, 0.43434, 1.79887, 1.09739, 3.77123, -0.325955, 3.22222, 12.268, 5.08945, 4.28305}, {2.19392, -0.441379, 0.441379, -0.505685, 1.27764, -1.27764, 0.857073, 0.177676, 2.16545, 7.63592, 3.04182, 3.98755, -2.08677, -1.03368, 1.03368, -0.43434, -1.79887, -1.09739, -3.77123, 0.325955, -3.22222, -8.34133, 3.56439, -0.668128, 5.79397, -5.43653, 8.33279, -1.34152, 0.322977, -9.69548}, {5.63148, -7.39306, 3.82293, -0.845027, -3.02792, 0.845027, 1.29407, 2.43841, 1.8574, 1.42811, -1.87484, -1.42811, 6.74491, 12.8083, -2.84948, -0.55505, 0.728676, -3.34038, -4.45555, -15.8138, -8.15032, -5.15741, 6.7707, 9.05284, -0.720736, 6.06015, 0.720736, -3.36481, -0.696607, -0.530622}, {-1.87716, 2.46435, -1.27431, 2.53508, 9.08376, -2.53508, 1.29407, 2.43841, 1.8574, 1.42811, -1.87484, -1.42811, 10.8734, -9.16081, 5.62786, -5.73134, -9.02497, -10.77, 0.720736, -6.06015, -0.720736, 0.55505, -0.728676, 3.34038, -6.43319, 13.5595, 6.43319, -3.36481, -0.696607, -0.530622}, {-1.87716, 2.46435, -1.27431, -0.845027, -3.02792, 0.845027, -3.88221, -7.31523, -5.57219, 1.42811, -1.87484, -1.42811, 3.36481, 0.696607, 0.530622, 2.82506, 12.8404, -6.72049, 8.22937, -15.9176, 4.3765, 0.55505, -0.728676, 3.34038, -0.720736, 6.06015, 0.720736, -9.07726, 6.80277, 5.18184}, {-1.87716, 2.46435, -1.27431, -0.845027, -3.02792, 0.845027, 1.29407, 2.43841, 1.8574, -4.28434, 5.62453, 4.28434, 3.36481, 0.696607, 0.530622, -0.55505, 0.728676, -3.34038, 0.720736, -6.06015, -0.720736, 8.06369, -10.5861, 8.43762, 2.65937, 18.1718, -2.65937, -8.54109, -10.4502, -7.96021}, {0, 9.45441, 0, 1.78834, 1.78885, 1.78885, -3.15057, 0, 0, 1.36222, 1.36261, -1.78885, -9.36389, -5.47113, -9.36656, 1.6838, -2.21115, -2.21115, 16.4966, 3.89543, -4.44089e-16, -7.1327, -3.23931, 9.36656, -3.89432, -3.89543, 4.44089e-16, 2.21051, -1.68428, 2.21115}, {2.22045e-16, -3.15147, 2.22045e-16, -5.36503, -5.36656, -5.36656, -3.15057, 0, 0, 1.36222, 1.36261, -1.78885, -2.21051, 14.2902, -2.21115, 14.2861, -2.21115, -2.21115, 3.89432, 3.89543, -4.44089e-16, -1.6838, 2.21115, 2.21115, -9.34321, -9.34589, 7.15542, 2.21051, -1.68428, 2.21115}, {-8.88178e-16, -3.15147, 0, 1.78834, 1.78885, 1.78885, 9.4517, 0, 0, 1.36222, 1.36261, -1.78885, -2.21051, 1.68428, -2.21115, -5.46957, -9.36656, -9.36656, 3.89432, 16.5013, 0, -1.6838, 2.21115, 2.21115, -3.89432, -3.89543, 0, -3.23838, -7.13474, 9.36656}, {4.44089e-16, -3.15147, -2.22045e-16, 1.78834, 1.78885, 1.78885, -3.15057, 0, 0, -4.08667, -4.08784, 5.36656, -2.21051, 1.68428, -2.21115, 1.6838, -2.21115, -2.21115, 3.89432, 3.89543, 0, -1.6838, 14.817, 2.21115, -11.0477, -11.0508, -7.15542, 14.8128, -1.68428, 2.21115}, {-5.36656, 5.36656, -5.36656, 2.79907e-15, 3.15147, 3.33475e-16, -1.78885, -1.36261, 1.36261, 0, 0, -3.15147, -2.21115, -14.2902, -2.21115, 2.21115, -2.21115, -1.68428, 7.15542, 9.34589, -9.34589, -2.21115, 2.21115, 14.2902, -3.45984e-15, -3.89543, 3.89543, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, -4.1986e-15, -9.45441, 1.0595e-14, -1.78885, -1.36261, 1.36261, 0, 0, -3.15147, -9.36656, 5.47113, -9.36656, 9.36656, 3.23931, -7.13474, 1.28583e-15, 3.89543, -3.89543, -2.21115, 2.21115, 1.68428, -1.72992e-15, -3.89543, 16.5013, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 5.36656, 4.08784, -4.08784, 0, 0, -3.15147, -2.21115, -1.68428, -2.21115, 2.21115, -14.817, -1.68428, -7.15542, 11.0508, -11.0508, -2.21115, 2.21115, 1.68428, 0, -3.89543, 3.89543, 2.21115, 1.68428, 14.817}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 2.46559e-15, -1.78885, -1.36261, 1.36261, 0, 0, 9.45441, -2.21115, -1.68428, -2.21115, 2.21115, -2.21115, -1.68428, -4.44089e-16, 3.89543, -3.89543, -9.36656, 9.36656, -5.47113, 0, -16.5013, 3.89543, 9.36656, 7.13474, -3.23931}, {7.01844, 1.17551e-15, 0, 2.33948, 2.34313, -1.78885, 0, -2.34313, 0, -7.30165e-12, -6.9197e-12, 1.78885, -9.35791, -12.2688, 9.36656, -2.89175, -8.55405e-12, 2.21115, 2.89175, 12.2688, 0, 2.89175, 3.62329e-11, -9.36656, -2.89175, -2.89626, 0, 9.02534e-12, 2.89626, -2.21115}, {-2.33948, -1.95894e-17, 0, -7.01844, -7.02938, 5.36656, 0, -2.34313, 0, -7.30373e-12, -6.92022e-12, 1.78885, 9.35791, -2.89626, 2.21115, -2.89175, 9.3725, 2.21115, 2.89175, 2.89626, 0, 2.89175, 8.5536e-12, -2.21115, -2.89175, -2.89626, -7.15542, 9.02791e-12, 2.89626, -2.21115}, {-2.33948, 1.32789e-16, -4.44089e-16, 2.33948, 2.34313, -1.78885, 0, 7.02938, 0, -7.30321e-12, -6.92126e-12, 1.78885, -9.02668e-12, -2.89626, 2.21115, -12.2497, -9.3725, 9.36656, 12.2497, 2.89626, 1.77636e-15, 2.89175, 8.55493e-12, -2.21115, -2.89175, -2.89626, -4.44089e-16, 3.82401e-11, 2.89626, -9.36656}, {-2.33948, -8.31579e-16, -4.44089e-16, 2.33948, 2.34313, -1.78885, 0, -2.34313, 0, 2.19143e-11, 2.07622e-11, -5.36656, -9.02861e-12, -2.89626, 2.21115, -2.89175, -8.55538e-12, 2.21115, 2.89175, 2.89626, 4.44089e-16, 12.2497, 8.55648e-12, -2.21115, -12.2497, -12.2688, 7.15542, 9.02919e-12, 12.2688, -2.21115}, {-1.00651, -1.00808, 6.45666, -0.481765, 1.86061, -0.736419, 0.984821, -1.35677, 2.55622, -0.83856, -0.839867, 0.332415, 2.10785, -10.1576, 6.51623, -0.62181, -0.62278, -2.2494, -5.57129, 6.68879, -10.7243, 3.97605, 3.98225, 0.919744, 1.63201, -1.26171, 0.499377, -0.180789, 2.71519, -3.57055}, {0.335504, 0.336027, -2.15222, 1.4453, -5.58183, 2.20926, 0.984821, -1.35677, 2.55622, -0.83856, -0.839867, 0.332415, -1.16123, -4.0593, 12.1794, -4.56109, 4.8043, -12.4743, -1.63201, 1.26171, -0.499377, 0.62181, 0.62278, 2.2494, 4.98625, 2.09776, -0.830282, -0.180789, 2.71519, -3.57055}, {0.335504, 0.336027, -2.15222, -0.481765, 1.86061, -0.736419, -2.95446, 4.07031, -7.66867, -0.83856, -0.839867, 0.332415, 0.180789, -2.71519, 3.57055, 1.30525, -8.06522, 0.696272, -2.97403, -0.0824032, 8.1095, 0.62181, 0.62278, 2.2494, 1.63201, -1.26171, 0.499377, 3.17345, 6.07466, -4.90021}, {0.335504, 0.336027, -2.15222, -0.481765, 1.86061, -0.736419, 0.984821, -1.35677, 2.55622, 2.51568, 2.5196, -0.997244, 0.180789, -2.71519, 3.57055, -0.62181, -0.62278, -2.2494, -1.63201, 1.26171, -0.499377, -0.720207, -0.72133, 10.8583, 3.55907, -8.70414, 3.44505, -4.12007, 8.14227, -13.7954}, {5.36656, -5.48024e-11, 5.58682e-11, 1.78885, -2.34313, 2.34313, 0, 2.34313, 0, 0, 0, -2.34313, -7.15542, 12.2688, -12.2688, -2.21115, 2.25797e-11, -2.89626, 2.21115, -12.2688, 2.30194e-11, 2.21115, -2.25797e-11, 12.2688, -2.21115, 2.89626, -2.30194e-11, 0, -2.89626, 2.89626}, {-1.78885, 1.21112e-11, -1.24669e-11, -5.36656, 7.02938, -7.02938, 0, 2.34313, 1.36297e-15, 0, 0, -2.34313, 7.15542, 2.89626, -2.89626, -2.21115, -9.3725, -2.89626, 2.21115, -2.89626, 1.54086e-11, 2.21115, -1.49702e-11, 2.89626, -2.21115, 2.89626, 9.3725, 0, -2.89626, 2.89626}, {-1.78885, 1.21094e-11, -1.24669e-11, 1.78885, -2.34313, 2.34313, 0, -7.02938, 0, 0, 0, -2.34313, 4.44089e-16, 2.89626, -2.89626, -9.36656, 9.3725, -12.2688, 9.36656, -2.89626, 6.52776e-11, 2.21115, -1.49685e-11, 2.89626, -2.21115, 2.89626, -1.54099e-11, 0, -2.89626, 12.2688}, {-1.78885, 1.21099e-11, -1.24638e-11, 1.78885, -2.34313, 2.34313, 0, 2.34313, 0, 0, 0, 7.02938, 4.44089e-16, 2.89626, -2.89626, -2.21115, 1.49689e-11, -2.89626, 2.21115, -2.89626, 1.54063e-11, 9.36656, -6.34088e-11, 2.89626, -9.36656, 12.2688, -9.3725, 0, -12.2688, 2.89626}, {5.09908, -2.42192, -2.42638, -0.488904, -1.23525, -1.23482, 1.75382, -0.670557, 0.933579, 0.434779, 1.0985, -0.507552, 4.66087, 5.46995, 5.46587, -1.56352, 2.3557, 0.372353, -7.08218, 2.51319, -5.888, -0.175592, -6.74968, 1.65786, 0.0669023, 0.169033, 2.15369, -2.70526, -0.528962, -0.526598}, {-1.69969, 0.807307, 0.808792, 1.46671, 3.70574, 3.70446, 1.75382, -0.670557, 0.933579, 0.434779, 1.0985, -0.507552, 9.50403, -2.70027, -2.70857, -8.5788, 5.03793, -3.36196, -0.0669023, -0.169033, -2.15369, 1.56352, -2.3557, -0.372353, -1.67221, -4.22495, 4.1839, -2.70526, -0.528962, -0.526598}, {-1.69969, 0.807307, 0.808792, -0.488904, -1.23525, -1.23482, -5.26146, 2.01167, -2.80074, 0.434779, 1.0985, -0.507552, 2.70526, 0.528962, 0.526598, 0.392092, 7.29669, 5.31163, 6.73188, -3.39826, -5.38886, 1.56352, -2.3557, -0.372353, 0.0669023, 0.169033, 2.15369, -4.44437, -4.92294, 1.50361}, {-1.69969, 0.807307, 0.808792, -0.488904, -1.23525, -1.23482, 1.75382, -0.670557, 0.933579, -1.30434, -3.29549, 1.52266, 2.70526, 0.528962, 0.526598, -1.56352, 2.3557, 0.372353, -0.0669023, -0.169033, -2.15369, 8.3623, -5.58493, -3.60752, 2.02252, 5.11002, 7.09296, -9.72053, 2.15326, -4.26091}, {-2.57735, 0.513092, -6.51263, -2.5578, 0.977952, -1.36155, -0.488614, -1.23536, -1.23466, 2.1873, 0.428435, 0.425336, 12.3309, -4.90922, 4.44581, 3.76558, 0.31817, 3.2091, 1.49649, 6.67982, 3.78144, -12.5148, -2.03191, -4.91044, 0.457966, -1.73839, 1.15722, -2.09969, 0.99741, 1.00039}, {0.859116, -0.171031, 2.17088, 7.67341, -2.93386, 4.08465, -0.488614, -1.23536, -1.23466, 2.1873, 0.428435, 0.425336, -1.33677, -0.313288, -9.6839, 5.72003, 5.2596, 8.14775, -0.457966, 1.73839, -1.15722, -3.76558, -0.31817, -3.2091, -8.29124, -3.45213, -0.54412, -2.09969, 0.99741, 1.00039}, {0.859116, -0.171031, 2.17088, -2.5578, 0.977952, -1.36155, 1.46584, 3.70607, 3.70399, 2.1873, 0.428435, 0.425336, 2.09969, -0.99741, -1.00039, 13.9968, -3.59364, 8.65529, -3.89443, 2.42251, -9.84073, -3.76558, -0.31817, -3.2091, 0.457966, -1.73839, 1.15722, -10.8489, -0.716331, -0.700957}, {0.859116, -0.171031, 2.17088, -2.5578, 0.977952, -1.36155, -0.488614, -1.23536, -1.23466, -6.5619, -1.28531, -1.27601, 2.09969, -0.99741, -1.00039, 3.76558, 0.31817, 3.2091, -0.457966, 1.73839, -1.15722, -7.20204, 0.365952, -11.8926, 10.6892, -5.6502, 6.60342, -0.145237, 5.93884, 5.93904}, {4.08784, 4.08784, -5.36656, -1.78885, -1.78885, -1.78885, 3.15147, 2.46559e-15, 0, 0, 3.15147, 0, 11.0508, 11.0508, 7.15542, -1.68428, 2.21115, 2.21115, -14.817, 1.68428, -2.21115, 1.68428, -14.817, -2.21115, 2.21115, -1.68428, 2.21115, -3.89543, -3.89543, 0}, {-1.36261, -1.36261, 1.78885, 5.36656, 5.36656, 5.36656, 3.15147, 0, 0, -2.46559e-15, 3.15147, 0, 9.34589, 9.34589, -7.15542, -14.2902, 2.21115, 2.21115, -2.21115, 1.68428, -2.21115, 1.68428, -2.21115, -2.21115, 2.21115, -14.2902, 2.21115, -3.89543, -3.89543, 0}, {-1.36261, -1.36261, 1.78885, -1.78885, -1.78885, -1.78885, -9.45441, 0, 0, 0, 3.15147, 0, 3.89543, 3.89543, -4.44089e-16, 5.47113, 9.36656, 9.36656, 3.23931, 7.13474, -9.36656, 1.68428, -2.21115, -2.21115, 2.21115, -1.68428, 2.21115, -3.89543, -16.5013, 0}, {-1.36261, -1.36261, 1.78885, -1.78885, -1.78885, -1.78885, 3.15147, 2.46559e-15, 0, 0, -9.45441, 0, 3.89543, 3.89543, -4.44089e-16, -1.68428, 2.21115, 2.21115, -2.21115, 1.68428, -2.21115, 7.13474, 3.23931, -9.36656, 9.36656, 5.47113, 9.36656, -16.5013, -3.89543, 0}, {-4.7272, 4.72585, -4.72855, -1.57528, -1.57573, -1.57573, 1.57528, 1.57573, -1.57573, -1.57573, 1.57528, 1.57528, 6.30058, 10.1978, 6.30238, 2.11209e-12, -2.11142e-12, 3.89543, -10.196, -6.30349, 6.30238, 6.30294, -6.30114, -10.1966, 3.89487, 0.000556685, 0.000556685, 0.000556685, -3.89487, 0.000556844}, {1.57573, -1.57528, 1.57618, 4.72585, 4.7272, 4.7272, 1.57528, 1.57573, -1.57573, -1.57573, 1.57528, 1.57528, -6.30349, 10.196, -6.3053, -6.30114, -6.30294, 10.1984, -3.89487, -0.000556685, -0.000556685, -2.11226e-12, 2.1147e-12, -3.89543, 10.1978, -6.30058, -6.30058, 0.000556685, -3.89487, 0.000556844}, {1.57573, -1.57528, 1.57618, -1.57528, -1.57573, -1.57573, -4.72585, -4.7272, 4.7272, -1.57573, 1.57528, 1.57528, -0.000556685, 3.89487, -0.000556844, 6.30114, 6.30294, 10.1984, -10.1978, 6.30058, -6.3053, -2.11559e-12, 2.1147e-12, -3.89543, 3.89487, 0.000556685, 0.000556685, 6.30349, -10.196, -6.30058}, {1.57573, -1.57528, 1.57618, -1.57528, -1.57573, -1.57573, 1.57528, 1.57573, -1.57573, 4.7272, -4.72585, -4.72585, -0.000556685, 3.89487, -0.000556844, 2.11831e-12, -2.1172e-12, 3.89543, -3.89487, -0.000556685, -0.000556685, -6.30294, 6.30114, -10.2002, 10.196, 6.30349, 6.30349, -6.30058, -10.1978, 6.30349}, {-5.22554, -0.410098, 3.98943, -1.54312, -1.54218, -0.61076, 3.95893e-17, 1.60497, -3.86599e-16, -0.198723, -0.199483, 1.94057, 5.92686, 7.906, 4.84171, 1.90741, -0.0776051, 0.754941, -2.15304, -8.57268, 1.64373, -1.11252, 0.875539, -8.51722, 2.15304, 2.15282, -1.64373, 0.245635, -1.73727, -2.39867}, {1.74185, 0.136699, -1.32981, 4.62937, 4.62655, 1.83228, 1.18768e-16, 1.60497, -1.1598e-15, -0.198723, -0.199483, 1.94057, -7.21302, 1.19047, 7.71791, 1.90741, -6.49747, 0.754941, -2.15304, -2.15282, 1.64373, -1.90741, 0.0776051, -0.754941, 2.94793, 2.95075, -9.40601, 0.245635, -1.73727, -2.39867}, {1.74185, 0.136699, -1.32981, -1.54312, -1.54218, -0.61076, 0, -4.8149, 0, -0.198723, -0.199483, 1.94057, -0.245635, 1.73727, 2.39867, 8.0799, 6.09113, 3.19798, -9.12042, -2.69962, 6.96297, -1.90741, 0.0776051, -0.754941, 2.15304, 2.15282, -1.64373, 1.04052, -0.939339, -10.1609}, {1.74185, 0.136699, -1.32981, -1.54312, -1.54218, -0.61076, -1.18768e-16, 1.60497, 1.1598e-15, 0.596168, 0.59845, -5.82171, -0.245635, 1.73727, 2.39867, 1.90741, -0.0776051, 0.754941, -2.15304, -2.15282, 1.64373, -8.87479, -0.469193, 4.5643, 8.32553, 8.32155, 0.799305, 0.245635, -8.15714, -2.39867}, {4.63127, 4.6267, 1.83083, -2.54134, -0.199443, 1.94018, 1.74197, 1.74168, -1.3299, 2.34313, 0, 0, 15.2148, 2.9506, -9.40456, 0.988073, -1.9063, -0.754342, -7.21287, -7.21323, 7.7178, -10.3606, 1.9063, 0.754342, 0.245001, 0.246525, -2.39819, -5.04945, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, 7.62401, 0.598329, -5.82053, 1.74197, 1.74168, -1.3299, 2.34313, -1.01311e-15, 7.73589e-16, 11.2245, 8.32176, 0.797254, -5.9798, -8.87301, 4.56526, -0.245001, -0.246525, 2.39819, -0.988073, 1.9063, 0.754342, -9.1275, 0.246525, -2.39819, -5.04945, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, -2.54134, -0.199443, 1.94018, -5.2259, -5.22503, 3.9897, 2.34313, 0, 0, 5.04945, 2.15283, -1.64385, 11.1534, -1.10853, -8.51505, 5.93003, 5.92241, 4.83929, -0.988073, 1.9063, 0.754342, 0.245001, 0.246525, -2.39819, -14.422, -2.15283, 1.64385}, {-1.54376, -1.54223, -0.610276, -2.54134, -0.199443, 1.94018, 1.74197, 1.74168, -1.3299, -7.02938, 0, 0, 5.04945, 2.15283, -1.64385, 0.988073, -1.9063, -0.754342, -0.245001, -0.246525, 2.39819, 5.18696, 8.07523, 3.19544, 10.4103, 1.0443, -10.1589, -12.0173, -9.11953, 6.96345}, {4.33994, 1.90929, -1.71772, 1.45453e-15, 1.35003, 1.01047e-16, 1.36e-12, -0.731398, -2.01922, 1.44665, 0.0177991, 1.44665, 1.78815, -6.28218, -0.707741, -1.68285e-12, -0.764672, 2.4959, 1.78815, 4.61632, 9.86504, -5.78659, 0.693475, -8.28248, -1.78815, -1.69073, -1.78815, -1.78815, 0.882056, 0.707741}, {-1.44665, -0.636431, 0.572575, -4.36359e-15, -4.05009, -2.33336e-15, 1.35855e-12, -0.731398, -2.01922, 1.44665, 0.0177991, 1.44665, 7.57474, 1.66367, -2.99804, -7.11526e-12, 2.16092, 10.5728, 1.78815, 1.69073, 1.78815, 1.68142e-12, 0.764672, -2.4959, -7.57474, -1.76193, -7.57474, -1.78815, 0.882056, 0.707741}, {-1.44665, -0.636431, 0.572575, 0, 1.35003, 0, -4.08128e-12, 2.19419, 6.05767, 1.44665, 0.0177991, 1.44665, 1.78815, -0.882056, -0.707741, -1.68158e-12, -6.16479, 2.4959, 7.57474, 4.23646, -0.502145, 1.68194e-12, 0.764672, -2.4959, -1.78815, -1.69073, -1.78815, -7.57474, 0.81086, -5.07885}, {-1.44665, -0.636431, 0.572575, -4.84843e-16, 1.35003, -4.84843e-16, 1.3596e-12, -0.731398, -2.01922, -4.33994, -0.0533972, -4.33994, 1.78815, -0.882056, -0.707741, -1.67996e-12, -0.764672, 2.4959, 1.78815, 1.69073, 1.78815, 5.78659, 3.3104, -4.7862, -1.78815, -7.09085, -1.78815, -1.78815, 3.80765, 8.78463}, {-3.79117, -3.78885, -1.50052, 0.577052, -1.02738, -1.79083, -1.45233, 0.153525, -0.574823, -0.388446, -0.389091, 1.86548, -4.58353, 3.81836, 8.75865, 1.0819, 1.08015, 2.92411, 6.04244, -2.36496, 2.39156, 0.471884, 0.476215, -10.386, -0.233129, 1.75086, -0.0922713, 2.27532, 0.291177, -1.59534}, {1.26372, 1.26295, 0.500174, -1.73116, 3.08215, 5.37248, -1.45233, 0.153525, -0.574823, -0.388446, -0.389091, 1.86548, -7.33021, -5.34298, -0.40536, 6.89121, 0.466052, 5.2234, 0.233129, -1.75086, 0.0922713, -1.0819, -1.08015, -2.92411, 1.32066, 3.30723, -7.55418, 2.27532, 0.291177, -1.59534}, {1.26372, 1.26295, 0.500174, 0.577052, -1.02738, -1.79083, 4.35698, -0.460574, 1.72447, -0.388446, -0.389091, 1.86548, -2.27532, -0.291177, 1.59534, -1.22631, 5.18969, 10.0874, -4.82176, -6.80267, -1.90843, -1.0819, -1.08015, -2.92411, -0.233129, 1.75086, -0.0922713, 3.82911, 1.84754, -9.05724}, {1.26372, 1.26295, 0.500174, 0.577052, -1.02738, -1.79083, -1.45233, 0.153525, -0.574823, 1.16534, 1.16727, -5.59643, -2.27532, -0.291177, 1.59534, 1.0819, 1.08015, 2.92411, 0.233129, -1.75086, 0.0922713, -6.13679, -6.13196, -4.9248, -2.54134, 5.8604, 7.07104, 8.08463, -0.322922, 0.703957}, {2.52504, -4.49559, -7.83624, 1.26389, 1.26265, 0.49964, -0.875592, -0.873298, -2.36467, 0.453379, -1.88788, -0.747051, -5.57746, -8.46358, -5.84486, -0.479968, -0.48126, 2.3053, 5.62503, 2.72036, 9.15287, -1.33355, 8.03278, 0.682901, -2.12267, 0.772832, 0.305817, 0.521884, 3.413, 3.8463}, {-0.841681, 1.49853, 2.61208, -3.79168, -3.78794, -1.49892, -0.875592, -0.873298, -2.36467, 0.453379, -1.88788, -0.747051, 2.84484, -9.40713, -14.2946, 3.0224, 3.01193, 11.764, 2.12267, -0.772832, -0.305817, 0.479968, 0.48126, -2.3053, -3.93618, 8.32435, 3.29402, 0.521884, 3.413, 3.8463}, {-0.841681, 1.49853, 2.61208, 1.26389, 1.26265, 0.49964, 2.62678, 2.61989, 7.09401, 0.453379, -1.88788, -0.747051, -0.521884, -3.413, -3.8463, -5.53554, -5.53184, 0.306743, 5.48939, -6.76696, -10.7541, 0.479968, 0.48126, -2.3053, -2.12267, 0.772832, 0.305817, -1.29163, 10.9645, 6.8345}, {-0.841681, 1.49853, 2.61208, 1.26389, 1.26265, 0.49964, -0.875592, -0.873298, -2.36467, -1.36014, 5.66364, 2.24115, -0.521884, -3.413, -3.8463, -0.479968, -0.48126, 2.3053, 2.12267, -0.772832, -0.305817, 3.84669, -5.51287, -12.7536, -7.17824, -4.27775, -1.69274, 4.02425, 6.90619, 13.305}, {5.37846, -0.954422, 1.65136, 0.482922, -1.73161, -0.484335, 0.65353, 0.326507, 1.69088, 0.656368, 1.08696, -0.656093, -0.312565, 8.67359, 3.21641, -1.40473, 1.7368, -1.49137, -1.20588, -2.10286, -8.17318, -1.22074, -6.08465, 4.11575, -1.40824, 0.796829, 1.40965, -1.61912, -1.74715, -1.27907}, {-1.79282, 0.318141, -0.550454, -1.44877, 5.19483, 1.45301, 0.65353, 0.326507, 1.69088, 0.656368, 1.08696, -0.656093, 8.7904, 0.474582, 3.48088, -4.01885, 0.430774, -8.2549, 1.40824, -0.796829, -1.40965, 1.40473, -1.7368, 1.49137, -4.03371, -3.55102, 4.03402, -1.61912, -1.74715, -1.27907}, {-1.79282, 0.318141, -0.550454, 0.482922, -1.73161, -0.484335, -1.96059, -0.979522, -5.07265, 0.656368, 1.08696, -0.656093, 1.61912, 1.74715, 1.27907, -3.33642, 8.66325, 0.445966, 8.57952, -2.06939, 0.792169, 1.40473, -1.7368, 1.49137, -1.40824, 0.796829, 1.40965, -4.24459, -6.095, 1.3453}, {-1.79282, 0.318141, -0.550454, 0.482922, -1.73161, -0.484335, 0.65353, 0.326507, 1.69088, -1.9691, -3.26089, 1.96828, 1.61912, 1.74715, 1.27907, -1.40473, 1.7368, -1.49137, 1.40824, -0.796829, -1.40965, 8.57601, -3.00937, 3.69319, -3.33993, 7.72327, 3.34699, -4.23324, -3.05317, -8.0426}, {-8.19974, -2.81226, -4.15773, 1.49846, -0.593081, -0.985836, -2.7214, 1.07711, -0.607179, -1.5103, -1.42145, 0.207104, -11.2245, 1.9467, 3.44883, 1.51164, -0.598298, 1.96907, 10.8709, -6.79856, 1.46615, 4.52957, 6.28411, -2.79749, 0.0146435, 2.4901, 0.962565, 5.23067, 0.425625, 0.494519}, {2.73325, 0.937419, 1.38591, -4.49537, 1.77924, 2.95751, -2.7214, 1.07711, -0.607179, -1.5103, -1.42145, 0.207104, -16.1637, -4.1753, -6.03816, 12.3972, -4.90676, 4.39779, -0.0146435, -2.4901, -0.962565, -1.51164, 0.598298, -1.96907, 6.05586, 8.17591, 0.134147, 5.23067, 0.425625, 0.494519}, {2.73325, 0.937419, 1.38591, 1.49846, -0.593081, -0.985836, 8.16419, -3.23134, 1.82154, -1.5103, -1.42145, 0.207104, -5.23067, -0.425625, -0.494519, -4.48219, 1.77402, 5.91242, -10.9476, -6.23977, -6.50621, -1.51164, 0.598298, -1.96907, 0.0146435, 2.4901, 0.962565, 11.2719, 6.11143, -0.333899}, {2.73325, 0.937419, 1.38591, 1.49846, -0.593081, -0.985836, -2.7214, 1.07711, -0.607179, 4.53091, 4.26436, -0.621313, -5.23067, -0.425625, -0.494519, 1.51164, -0.598298, 1.96907, -0.0146435, -2.4901, -0.962565, -12.4446, -3.15138, -7.51272, -5.97918, 4.86242, 4.90591, 16.1163, -3.88283, 2.92323}, {-8.88178e-16, -2.39835, -6.05767, -3.06161e-16, 0.53318, -2.01922, -1.31177, -0.650588, 1.29879, 1.31177, -0.68204, -1.29879, 1.33227e-15, -3.77994, 8.07689, 1.62143, 0.145125, 0.890503, 6.86849, 2.41835, -9.29645, -6.86849, 2.58304, 4.30465, -1.62143, 0.184002, 4.10129, 0, 1.64722, 0}, {-2.22045e-16, 0.799449, 2.01922, -9.18483e-16, -1.59954, 6.05767, -1.31177, -0.650588, 1.29879, 1.31177, -0.68204, -1.29879, 8.88178e-16, -4.84502, -8.07689, 6.86849, 2.74748, -4.30465, 1.62143, -0.184002, -4.10129, -1.62143, -0.145125, -0.890503, -6.86849, 2.91216, 9.29645, 0, 1.64722, 0}, {1.77636e-15, 0.799449, 2.01922, -2.08189e-15, 0.53318, -2.01922, 3.9353, 1.95177, -3.89637, 1.31177, -0.68204, -1.29879, 2.22045e-16, -1.64722, -6.66134e-16, 1.62143, -1.98759, 8.96739, 1.62143, -3.3818, -12.1782, -1.62143, -0.145125, -0.890503, -1.62143, 0.184002, 4.10129, -5.24706, 4.37538, 5.19516}, {-6.66134e-16, 0.799449, 2.01922, 1.04095e-15, 0.53318, -2.01922, -1.31177, -0.650588, 1.29879, -3.9353, 2.04612, 3.89637, -6.66134e-16, -1.64722, -2.22045e-16, 1.62143, 0.145125, 0.890503, 1.62143, -0.184002, -4.10129, -1.62143, -3.34292, -8.96739, -1.62143, -1.94872, 12.1782, 5.24706, 4.24957, -5.19516}, {1.77636e-15, 0, 9.45441, 1.36261, 1.78885, 1.36261, 1.78885, -1.78885, 1.78885, -3.15147, 0, 0, -7.13474, -9.36656, -3.23931, -3.89543, 0, -3.89543, -9.36656, 9.36656, -5.47113, 16.5013, 0, 3.89543, 2.21115, -2.21115, -1.68428, 1.68428, 2.21115, -2.21115}, {4.44089e-16, -4.44089e-16, -3.15147, -4.08784, -5.36656, -4.08784, 1.78885, -1.78885, 1.78885, -3.15147, 0, 0, -1.68428, -2.21115, 14.817, -11.0508, 7.15542, -11.0508, -2.21115, 2.21115, 1.68428, 3.89543, 8.88178e-16, 3.89543, 14.817, -2.21115, -1.68428, 1.68428, 2.21115, -2.21115}, {4.44089e-16, 4.44089e-16, -3.15147, 1.36261, 1.78885, 1.36261, -5.36656, 5.36656, -5.36656, -3.15147, 0, 0, -1.68428, -2.21115, 2.21115, -9.34589, -7.15542, -9.34589, -2.21115, 2.21115, 14.2902, 3.89543, -4.44089e-16, 3.89543, 2.21115, -2.21115, -1.68428, 14.2902, 2.21115, -2.21115}, {0, 2.22045e-16, -3.15147, 1.36261, 1.78885, 1.36261, 1.78885, -1.78885, 1.78885, 9.45441, 0, 0, -1.68428, -2.21115, 2.21115, -3.89543, 4.44089e-16, -3.89543, -2.21115, 2.21115, 1.68428, 3.89543, -1.77636e-15, 16.5013, -3.23931, -9.36656, -7.13474, -5.47113, 9.36656, -9.36656}, {-2.46108, 3.54412, -0.0109738, -0.670026, 0.174063, -1.44271, 0.904569, 1.43103, -0.00443094, -1.0549, -0.423716, 1.44348, 2.49428, 0.548851, 7.54959, -0.28991, -1.984, 1.78876, -5.7504, -6.03269, 0.0186792, 4.50952, 3.67886, -7.56268, 2.13213, 0.308587, -0.000955489, 0.185824, -1.2451, -1.77876}, {0.820361, -1.18137, 0.00365793, 2.01008, -0.52219, 4.32812, 0.904569, 1.43103, -0.00443094, -1.0549, -0.423716, 1.44348, -3.46727, 5.9706, 1.76413, -3.90819, -7.7081, 1.80648, -2.13213, -0.308587, 0.000955489, 0.28991, 1.984, -1.78876, 6.35174, 2.00345, -5.77487, 0.185824, -1.2451, -1.77876}, {0.820361, -1.18137, 0.00365793, -0.670026, 0.174063, -1.44271, -2.71371, -4.29308, 0.0132928, -1.0549, -0.423716, 1.44348, -0.185824, 1.2451, 1.77876, 2.39019, -2.68025, 7.55959, -5.41357, 4.41691, -0.0136762, 0.28991, 1.984, -1.78876, 2.13213, 0.308587, -0.000955489, 4.40544, 0.449758, -7.55268}, {0.820361, -1.18137, 0.00365793, -0.670026, 0.174063, -1.44271, 0.904569, 1.43103, -0.00443094, 3.16471, 1.27115, -4.33044, -0.185824, 1.2451, 1.77876, -0.28991, -1.984, 1.78876, -2.13213, -0.308587, 0.000955489, -2.99153, 6.7095, -1.80339, 4.81224, -0.387667, 5.76987, -3.43245, -6.96921, -1.76104}, {-4.81192, -4.81192, 0.736124, -0.501255, 1.51797, 0.85277, 0.0700522, -1.94917, 0.533356, -1.17277, -1.17277, -1.14075, 0.641985, -9.9308, -4.16186, 0.532996, 0.532996, -1.71335, -2.34942, 8.22336, -2.48939, 4.15809, 4.15809, 6.27635, 2.06921, -0.426686, 0.355964, 1.36304, 3.85893, 0.750782}, {1.60397, 1.60397, -0.245375, 1.50376, -4.5539, -2.55831, 0.0700522, -1.94917, 0.533356, -1.17277, -1.17277, -1.14075, -7.77893, -10.2748, 0.230717, 0.252787, 8.32967, -3.84677, -2.06921, 0.426686, -0.355964, -0.532996, -0.532996, 1.71335, 6.76029, 4.2644, 4.91897, 1.36304, 3.85893, 0.750782}, {1.60397, 1.60397, -0.245375, -0.501255, 1.51797, 0.85277, -0.210157, 5.84751, -1.60007, -1.17277, -1.17277, -1.14075, -1.36304, -3.85893, -0.750782, 2.53802, -5.53887, -5.12443, -8.4851, -5.98921, 0.625534, -0.532996, -0.532996, 1.71335, 2.06921, -0.426686, 0.355964, 6.05412, 8.55001, 5.31379}, {1.60397, 1.60397, -0.245375, -0.501255, 1.51797, 0.85277, 0.0700522, -1.94917, 0.533356, 3.51831, 3.51831, 3.42225, -1.36304, -3.85893, -0.750782, 0.532996, 0.532996, -1.71335, -2.06921, 0.426686, -0.355964, -6.94889, -6.94889, 2.69484, 4.07423, -6.49855, -3.05512, 1.08283, 11.6556, -1.38264}, {-4.7272, -4.7272, -4.7272, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 6.30294, 6.30294, -10.1984, -1.8181e-12, 3.89543, -1.80878e-12, -10.1984, 6.30294, 6.30294, 6.30294, -10.1984, 6.30294, 3.89543, -1.79678e-12, -1.79323e-12, 3.77476e-15, -3.77476e-15, 3.89543}, {1.57573, 1.57573, 1.57573, 4.7272, 4.7272, -4.7272, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, -6.30294, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -3.89543, 1.79323e-12, 1.80544e-12, 1.81771e-12, -3.89543, 1.82415e-12, 10.1984, -6.30294, 6.30294, 3.55271e-15, -3.55271e-15, 3.89543}, {1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 1.57573, -4.7272, 4.7272, 4.7272, -1.57573, 1.57573, -1.57573, -3.9968e-15, 3.10862e-15, -3.89543, 6.30294, 10.1984, -6.30294, -10.1984, -6.30294, -6.30294, 1.82792e-12, -3.89543, 1.81616e-12, 3.89543, -1.80234e-12, -1.79368e-12, 6.30294, -6.30294, 10.1984}, {1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 4.7272, -4.7272, 4.7272, -2.66454e-15, 1.33227e-15, -3.89543, -1.81033e-12, 3.89543, -1.81055e-12, -3.89543, 1.80367e-12, 1.80389e-12, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -6.30294, -6.30294, 6.30294, 10.1984}, {1.77636e-15, 8.88178e-16, 3.96048, -1.97452e-12, 2.01922, 0.776088, 1.44665, -0.572575, 0.322765, -1.44665, -1.44665, 0.221307, 1.03391e-11, -10.5728, -2.43184, -1.78815, -1.78815, -1.35826, -7.57474, 2.99804, -0.0582134, 7.57474, 7.57474, 0.47303, 1.78815, -0.707741, -1.23285, -2.44094e-12, 2.4959, -0.672511}, {2.22045e-16, 0, -1.32016, 5.92356e-12, -6.05767, -2.32827, 1.44665, -0.572575, 0.322765, -1.44665, -1.44665, 0.221307, 2.43894e-12, -2.4959, 5.95315, -7.57474, 0.502145, -2.64932, -1.78815, 0.707741, 1.23285, 1.78815, 1.78815, 1.35826, 7.57474, 5.07885, -2.11808, -2.44005e-12, 2.4959, -0.672511}, {4.44089e-16, 4.44089e-16, -1.32016, -1.97278e-12, 2.01922, 0.776088, -4.33994, 1.71772, -0.968296, -1.44665, -1.44665, 0.221307, 2.43805e-12, -2.4959, 0.672511, -1.78815, -9.86504, -4.46261, -1.78815, 0.707741, 6.51349, 1.78815, 1.78815, 1.35826, 1.78815, -0.707741, -1.23285, 5.78659, 8.28248, -1.55774}, {2.22045e-16, 2.22045e-16, -1.32016, -1.97211e-12, 2.01922, 0.776088, 1.44665, -0.572575, 0.322765, 4.33994, 4.33994, -0.663921, 2.43761e-12, -2.4959, 0.672511, -1.78815, -1.78815, -1.35826, -1.78815, 0.707741, 1.23285, 1.78815, 1.78815, 6.6389, 1.78815, -8.78463, -4.3372, -5.78659, 4.7862, -1.96357}, {-5.69487, 4.44089e-15, -2.66454e-15, -0.575562, 1.78885, 1.78885, 0.744968, -3.64699, -0.373467, -2.0677, 1.85814, -1.41539, 0.667265, -9.36656, -9.36656, -0.209397, 2.29678, -1.74951, -6.24712, 19.0959, 1.9555, 8.48018, -9.72932, 7.41106, 3.26725, -4.50793, -0.461631, 1.63498, 2.21115, 2.21115}, {1.89829, 2.66454e-15, -6.66134e-16, 1.72669, -5.36656, -5.36656, 0.744968, -3.64699, -0.373467, -2.0677, 1.85814, -1.41539, -9.22815, -2.21115, -2.21115, -3.18927, 16.8847, -0.255645, -3.26725, 4.50793, 0.461631, 0.209397, -2.29678, 1.74951, 11.538, -11.9405, 5.19992, 1.63498, 2.21115, 2.21115}, {1.89829, 3.55271e-15, 4.44089e-16, -0.575562, 1.78885, 1.78885, -2.2349, 10.941, 1.1204, -2.0677, 1.85814, -1.41539, -1.63498, -2.21115, -2.21115, 2.09285, -4.85864, -8.90493, -10.8604, 4.50793, 0.461631, 0.209397, -2.29678, 1.74951, 3.26725, -4.50793, -0.461631, 9.90577, -5.2214, 7.87269}, {1.89829, -2.66454e-15, 1.77636e-15, -0.575562, 1.78885, 1.78885, 0.744968, -3.64699, -0.373467, 6.20309, -5.57441, 4.24616, -1.63498, -2.21115, -2.21115, -0.209397, 2.29678, -1.74951, -3.26725, 4.50793, 0.461631, -7.38377, -2.29678, 1.74951, 5.5695, -11.6633, -7.61705, -1.34489, 16.7991, 3.70501}, {1.1885, -5.81832, -0.595821, 1.89829, -2.11601e-15, 5.39995e-16, -1.41683, -1.32819, -1.74168, -0.0852942, -0.611252, 1.54307, -9.44989, -2.39728, -0.245492, -0.59512, 1.64173, 2.15284, 7.9083, 4.5572, 8.87406, 0.936297, 0.803277, -8.32513, -2.24099, 0.755549, -1.90734, 1.85673, 2.39728, 0.245492}, {-0.396168, 1.93944, 0.198607, -5.69487, -1.01358e-15, -4.64389e-15, -1.41683, -1.32819, -1.74168, -0.0852942, -0.611252, 1.54307, -0.272056, -10.155, -1.03992, 5.0722, 6.95448, 9.11956, 2.24099, -0.755549, 1.90734, 0.59512, -1.64173, -2.15284, -1.89981, 3.20056, -8.07964, 1.85673, 2.39728, 0.245492}, {-0.396168, 1.93944, 0.198607, 1.89829, 0, 0, 4.25049, 3.98456, 5.22504, -0.0852942, -0.611252, 1.54307, -1.85673, -2.39728, -0.245492, -8.18828, 1.64173, 2.15284, 3.82566, -8.51331, 1.11292, 0.59512, -1.64173, -2.15284, -2.24099, 0.755549, -1.90734, 2.1979, 4.84229, -5.9268}, {-0.396168, 1.93944, 0.198607, 1.89829, 2.88057e-16, -7.27184e-16, -1.41683, -1.32819, -1.74168, 0.255883, 1.83376, -4.62922, -1.85673, -2.39728, -0.245492, -0.59512, 1.64173, 2.15284, 2.24099, -0.755549, 1.90734, 2.17979, -9.39949, -2.94726, -9.83415, 0.755549, -1.90734, 7.52404, 7.71003, 7.21221}, {-5.53939e-11, -0.00379978, 5.36656, -2.34313, -2.34273, 1.78885, -6.81003e-16, 2.34147, 0, 2.34313, 0, 0, 12.2688, 12.2651, -7.15542, 2.89626, 0.00156559, -2.21115, -2.28204e-11, -12.2616, 2.21115, -12.2688, -0.00156559, 2.21115, 2.28231e-11, 2.89578, -2.21115, -2.89626, -2.89421, 0}, {1.23088e-11, 0.00126659, -1.78885, 7.02938, 7.0282, -5.36656, -2.04301e-15, 2.34147, 0, 2.34313, -1.36201e-15, 0, 2.89626, 2.88915, 7.15542, 2.89626, -9.3643, -2.21115, -1.52118e-11, -2.89578, 2.21115, -2.89626, -0.00156559, 2.21115, -9.3725, 2.89578, -2.21115, -2.89626, -2.89421, 0}, {1.23057e-11, 0.00126659, -1.78885, -2.34313, -2.34273, 1.78885, 0, -7.0244, 0, 2.34313, 0, 0, 2.89626, 2.89421, 4.44089e-16, 12.2688, 9.3725, -9.36656, -6.44356e-11, -2.90084, 9.36656, -2.89626, -0.00156559, 2.21115, 1.52105e-11, 2.89578, -2.21115, -12.2688, -2.89421, 0}, {1.23084e-11, 0.00126659, -1.78885, -2.34313, -2.34273, 1.78885, 2.04301e-15, 2.34147, 0, -7.02938, 0, 0, 2.89626, 2.89421, 4.44089e-16, 2.89626, 0.00156559, -2.21115, -1.52163e-11, -2.89578, 2.21115, -2.89626, -0.00663197, 9.36656, 9.3725, 12.2667, -9.36656, -2.89626, -12.2601, 0}, {-7.02938, -5.36656, -7.02938, -1.21095e-11, -1.78885, -1.21105e-11, 0, 0, -2.34313, -2.34313, 0, 0, -2.89626, 7.15542, -2.89626, 1.49681e-11, 2.21115, 2.89626, -2.89626, -2.21115, 9.3725, 9.3725, -2.21115, -2.89626, 2.89626, 2.21115, 1.49694e-11, 2.89626, 0, 2.89626}, {2.34313, 1.78885, 2.34313, 5.47931e-11, 5.36656, 5.47978e-11, 0, 0, -2.34313, -2.34313, 0, 0, -12.2688, -7.15542, -12.2688, 2.2576e-11, 2.21115, 12.2688, -2.89626, -2.21115, -2.25785e-11, -2.25766e-11, -2.21115, -2.89626, 12.2688, 2.21115, 2.25779e-11, 2.89626, 0, 2.89626}, {2.34313, 1.78885, 2.34313, -1.21079e-11, -1.78885, -1.21105e-11, 0, 0, 7.02938, -2.34313, 0, 0, -2.89626, -4.44089e-16, -2.89626, 6.33979e-11, 9.36656, 2.89626, -12.2688, -9.36656, -9.3725, -1.49668e-11, -2.21115, -2.89626, 2.89626, 2.21115, 1.49694e-11, 12.2688, 0, 2.89626}, {2.34313, 1.78885, 2.34313, -1.21105e-11, -1.78885, -1.21079e-11, 0, 0, -2.34313, 7.02938, 0, 0, -2.89626, -4.44089e-16, -2.89626, 1.49694e-11, 2.21115, 2.89626, -2.89626, -2.21115, -1.49668e-11, -9.3725, -9.36656, -12.2688, 2.89626, 9.36656, 6.33979e-11, 2.89626, 0, 12.2688}, {6.00487, -2.5896, 0, 1.30033, -0.681296, -1.31177, -1.30033, -0.651333, 1.31177, 2.00162, 0.469428, 0, -4.33448, 2.50034, 6.86849, 0, 1.64722, 0, 9.28277, 2.34345, -6.86849, -8.00649, -3.52493, 0, -4.08144, 0.261882, 1.62143, -0.866843, 0.224847, -1.62143}, {-2.00162, 0.8632, -1.61346e-16, -3.901, 2.04389, 3.9353, -1.30033, -0.651333, 1.31177, 2.00162, 0.469428, -6.06985e-17, 8.87333, -3.67765, 1.62143, 5.20133, 4.25255, -5.24706, 4.08144, -0.261882, -1.62143, 5.28204e-17, -1.64722, 4.44089e-16, -12.0879, -1.61583, 1.62143, -0.866843, 0.224847, -1.62143}, {-2.00162, 0.8632, -1.00648e-16, 1.30033, -0.681296, -1.31177, 3.901, 1.954, -3.9353, 2.00162, 0.469428, -1.21397e-16, 0.866843, -0.224847, 1.62143, -5.20133, 4.3724, 5.24706, 12.0879, -3.71468, -1.62143, 4.9691e-16, -1.64722, 2.22045e-16, -4.08144, 0.261882, 1.62143, -8.87333, -1.65287, -1.62143}, {-2.00162, 0.8632, 0, 1.30033, -0.681296, -1.31177, -1.30033, -0.651333, 1.31177, -6.00487, -1.40829, 0, 0.866843, -0.224847, 1.62143, 0, 1.64722, 0, 4.08144, -0.261882, -1.62143, 8.00649, -5.10002, 0, -9.28277, 2.98706, 6.86849, 4.33448, 2.83018, -6.86849}, {-3.67855, 1.13524, -1.13945, -0.728854, -0.729491, 0.729491, -0.347691, -0.347995, -1.25767, -0.149637, 1.4559, 0.148365, 2.30068, 4.28741, -4.28915, 1.33068, 1.33185, 0.652868, 0.304891, 2.28987, 6.11578, -0.732135, -7.15545, -1.24633, 1.08587, -0.897892, -1.08509, 0.614731, -1.36945, 1.37118}, {1.22618, -0.378415, 0.379817, 2.18656, 2.18847, -2.18847, -0.347691, -0.347995, -1.25767, -0.149637, 1.4559, 0.148365, -5.51946, 2.8831, -2.89045, 2.72145, 2.72383, 5.68356, -1.08587, 0.897892, 1.08509, -1.33068, -1.33185, -0.652868, 1.68442, -6.72149, -1.67855, 0.614731, -1.36945, 1.37118}, {1.22618, -0.378415, 0.379817, -0.728854, -0.729491, 0.729491, 1.04307, 1.04399, 3.77302, -0.149637, 1.4559, 0.148365, -0.614731, 1.36945, -1.37118, 4.2461, 4.24981, -2.2651, -5.9906, 2.41155, -0.434178, -1.33068, -1.33185, -0.652868, 1.08587, -0.897892, -1.08509, 1.21328, -7.19305, 0.777722}, {1.22618, -0.378415, 0.379817, -0.728854, -0.729491, 0.729491, -0.347691, -0.347995, -1.25767, 0.448911, -4.3677, -0.445094, -0.614731, 1.36945, -1.37118, 1.33068, 1.33185, 0.652868, -1.08587, 0.897892, 1.08509, -6.23541, 0.181812, -2.17214, 4.00129, 2.02007, -4.00305, 2.0055, 0.0225343, 6.40187}, {-3.16808, 0, 5.09912e-16, -0.781545, 0, -1.31177, 0.234793, 1.31177, 1.31177, -0.509273, -1.31177, -1.26089e-16, 2.78691, 0, 6.86849, 0.675824, -1.62143, -2.22045e-16, -2.53471, -6.86849, -6.86849, 1.36127, 6.86849, 7.264e-16, 1.59554, 1.62143, 1.62143, 0.339276, 0, -1.62143}, {1.05603, 0, 6.58225e-17, 2.34464, 0, 3.9353, 0.234793, 1.31177, 1.31177, -0.509273, -1.31177, 3.78267e-16, -4.56338, 0, 1.62143, -0.263347, -6.86849, -5.24706, -1.59554, -1.62143, -1.62143, -0.675824, 1.62143, -4.44089e-16, 3.63263, 6.86849, 1.62143, 0.339276, 0, -1.62143}, {1.05603, -2.22045e-16, 6.02665e-17, -0.781545, 3.78267e-16, -1.31177, -0.704378, -3.9353, -3.9353, -0.509273, -1.31177, -5.04356e-16, -0.339276, -2.22045e-16, 1.62143, 3.80201, -1.62143, 5.24706, -5.81964, -1.62143, -1.62143, -0.675824, 1.62143, 4.44089e-16, 1.59554, 1.62143, 1.62143, 2.37637, 5.24706, -1.62143}, {1.05603, 0, 0, -0.781545, 0, -1.31177, 0.234793, 1.31177, 1.31177, 1.52782, 3.9353, 0, -0.339276, 0, 1.62143, 0.675824, -1.62143, 0, -1.59554, -1.62143, -1.62143, -4.89993, 1.62143, 0, 4.72172, 1.62143, 6.86849, -0.599895, -5.24706, -6.86849}, {-4.31352, 0.137385, -4.35145, -1.43784, 0.845244, 0.568738, 0, -1.33263, 0, 1.50855e-12, 0.53318, -2.01922, 5.75136, -4.36915, -4.77085, 1.77727, 0.602441, -0.702999, -1.77727, 7.03434, -1.7929, -1.77727, -2.73516, 8.77989, 1.77727, -1.70383, 1.7929, -1.86467e-12, 0.988174, 2.4959}, {1.43784, -0.0457949, 1.45048, 4.31352, -2.53573, -1.70622, 0, -1.33263, 0, 1.50567e-12, 0.53318, -2.01922, -5.75136, -0.804994, -8.29783, 1.77727, 5.93296, -0.702999, -1.77727, 1.70383, -1.7929, -1.77727, -0.602441, 0.702999, 1.77727, -3.83654, 9.86978, -1.86111e-12, 0.988174, 2.4959}, {1.43784, -0.0457949, 1.45048, -1.43784, 0.845244, 0.568738, 0, 3.99789, 0, 1.50891e-12, 0.53318, -2.01922, 1.86476e-12, -0.988174, -2.4959, 7.52863, -2.77854, -2.97795, -7.52863, 1.887, -7.59483, -1.77727, -0.602441, 0.702999, 1.77727, -1.70383, 1.7929, -7.90075e-12, -1.14454, 10.5728}, {1.43784, -0.0457949, 1.45048, -1.43784, 0.845244, 0.568738, 0, -1.33263, 0, -4.51484e-12, -1.59954, 6.05767, 1.85986e-12, -0.988174, -2.4959, 1.77727, 0.602441, -0.702999, -1.77727, 1.70383, -1.7929, -7.52863, -0.419261, -5.09894, 7.52863, -5.0848, -0.482057, -1.86021e-12, 6.31869, 2.4959}, {0, 7.02938, 1.2039e-15, 0, 0, -2.34313, 1.78885, 2.34313, 2.34059, -1.78885, -1.21095e-11, 0.00253498, 0, 2.89626, 12.2688, -2.21115, -2.89626, 0.00313341, -9.36656, -9.3725, -12.2555, 9.36656, 2.89626, -0.0132733, 2.21115, 1.49681e-11, 2.89313, 0, -2.89626, -2.89626}, {0, -2.34313, 2.70617e-16, 0, 0, 7.02938, 1.78885, 2.34313, 2.34059, -1.78885, -1.2111e-11, 0.00253498, 0, 12.2688, 2.89626, -9.36656, -12.2688, -9.35923, -2.21115, -1.49695e-11, -2.89313, 2.21115, 2.89626, -0.00313341, 9.36656, 6.34142e-11, 2.88299, 0, -2.89626, -2.89626}, {0, -2.34313, -2.48933e-16, 0, 0, -2.34313, -5.36656, -7.02938, -7.02177, -1.78885, -1.21116e-11, 0.00253498, 0, 2.89626, 2.89626, -2.21115, -2.89626, 9.37564, -2.21115, 9.3725, -2.89313, 2.21115, 2.89626, -0.00313341, 2.21115, 1.49707e-11, 2.89313, 7.15542, -2.89626, -2.9064}, {0, -2.34313, 8.76035e-17, 0, 0, -2.34313, 1.78885, 2.34313, 2.34059, 5.36656, 5.47978e-11, -0.00760494, 0, 2.89626, 2.89626, -2.21115, -2.89626, 0.00313341, -2.21115, -2.25774e-11, -2.89313, 2.21115, 12.2688, -0.00313341, 2.21115, 2.25779e-11, 12.2656, -7.15542, -12.2688, -12.2586}, {-3.23058, -0.349184, -0.349184, -0.223923, -1.25104, -1.25104, -0.552433, 1.28003, -0.0317341, -0.300503, -0.14539, 1.16638, -0.158596, 6.40664, 6.40664, 0.959628, -0.0358398, 1.58559, 1.56151, -6.8462, 0.0222906, 0.242385, 0.617398, -6.25109, 0.648226, 1.72608, 0.104646, 1.05429, -1.40249, -1.40249}, {1.07686, 0.116395, 0.116395, 0.671768, 3.75311, 3.75311, -0.552433, 1.28003, -0.0317341, -0.300503, -0.14539, 1.16638, -5.36172, 0.936916, 0.936916, 3.16936, -5.15596, 1.71253, -0.648226, -1.72608, -0.104646, -0.959628, 0.0358398, -1.58559, 1.85024, 2.30764, -4.56086, 1.05429, -1.40249, -1.40249}, {1.07686, 0.116395, 0.116395, -0.223923, -1.25104, -1.25104, 1.6573, -3.84009, 0.0952024, -0.300503, -0.14539, 1.16638, -1.05429, 1.40249, 1.40249, 1.85532, 4.96831, 6.58973, -4.95566, -2.19166, -0.570224, -0.959628, 0.0358398, -1.58559, 0.648226, 1.72608, 0.104646, 2.2563, -0.820936, -6.068}, {1.07686, 0.116395, 0.116395, -0.223923, -1.25104, -1.25104, -0.552433, 1.28003, -0.0317341, 0.90151, 0.436169, -3.49913, -1.05429, 1.40249, 1.40249, 0.959628, -0.0358398, 1.58559, -0.648226, -1.72608, -0.104646, -5.26706, -0.429738, -2.05117, 1.54392, 6.73022, 5.10879, 3.26402, -6.52262, -1.27556}, {5.36656, 7.02938, -7.02938, 0, 0, -2.34313, 1.78885, -1.02092e-11, 1.05679e-11, 0, 2.34313, 0, 2.21115, 2.89626, 9.3725, -2.21115, 1.26192e-11, 2.89626, -7.15542, 2.89626, -2.89626, 2.21115, -9.3725, -2.89626, 0, -2.89626, 2.89626, -2.21115, -2.89626, -1.30626e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, 7.02938, 1.78885, -1.02081e-11, 1.05669e-11, -1.04056e-15, 2.34313, -6.14662e-27, 9.36656, 12.2688, -9.3725, -9.36656, 5.34504e-11, 2.89626, -8.4211e-16, 2.89626, -2.89626, 2.21115, -1.26174e-11, -2.89626, 5.44843e-15, -12.2688, 2.89626, -2.21115, -2.89626, -1.30613e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, -2.34313, -5.36656, 3.06298e-11, -3.17084e-11, 0, 2.34313, 0, 2.21115, 2.89626, 1.3064e-11, -2.21115, 1.26202e-11, 12.2688, 7.15542, 12.2688, -12.2688, 2.21115, -1.26196e-11, -2.89626, 0, -2.89626, 2.89626, -2.21115, -12.2688, -1.30646e-11}, {-1.78885, -2.34313, 2.34313, 0, 0, -2.34313, 1.78885, -1.02092e-11, 1.05658e-11, 0, -7.02938, 0, 2.21115, 2.89626, 1.30595e-11, -2.21115, 1.26192e-11, 2.89626, 4.44089e-16, 2.89626, -2.89626, 9.36656, 9.3725, -12.2688, 0, -2.89626, 12.2688, -9.36656, -2.89626, -5.53233e-11}, {0, 9.45441, 0, 3.15147, 1.39953e-15, -1.39953e-15, -1.36261, 1.36261, 1.78885, -1.78885, 1.78885, -1.78885, -16.5013, 3.89543, 7.54952e-15, -2.21115, -1.68428, -2.21115, 7.13474, -3.23931, -9.36656, 9.36656, -5.47113, 9.36656, -1.68428, -2.21115, 2.21115, 3.89543, -3.89543, -1.77636e-15}, {8.88178e-16, -3.15147, 2.22045e-16, -9.45441, -1.00042e-15, 8.3972e-15, -1.36261, 1.36261, 1.78885, -1.78885, 1.78885, -1.78885, -3.89543, 16.5013, 5.32907e-15, 3.23931, -7.13474, -9.36656, 1.68428, 2.21115, -2.21115, 2.21115, 1.68428, 2.21115, 5.47113, -9.36656, 9.36656, 3.89543, -3.89543, -3.55271e-15}, {4.44089e-16, -3.15147, 0, 3.15147, 0, 0, 4.08784, -4.08784, -5.36656, -1.78885, 1.78885, -1.78885, -3.89543, 3.89543, 0, -14.817, -1.68428, -2.21115, 1.68428, 14.817, -2.21115, 2.21115, 1.68428, 2.21115, -1.68428, -2.21115, 2.21115, 11.0508, -11.0508, 7.15542}, {6.66134e-16, -3.15147, -2.22045e-16, 3.15147, 1.39953e-15, -1.39953e-15, -1.36261, 1.36261, 1.78885, 5.36656, -5.36656, 5.36656, -3.89543, 3.89543, 1.77636e-15, -2.21115, -1.68428, -2.21115, 1.68428, 2.21115, -2.21115, 2.21115, 14.2902, 2.21115, -14.2902, -2.21115, 2.21115, 9.34589, -9.34589, -7.15542}, {4.32877, -2.26802, -4.36683, -0.571101, 0.113693, -1.4431, 0, -1.33263, 0, 2.01402, 0.462931, -0.0125109, 4.77387, -1.52978, 5.75693, 0.70592, 1.50669, 1.78377, 1.78355, 6.04326, -1.79923, -8.76202, -3.35841, -1.73373, -1.78355, -0.712746, 1.79923, -2.48947, 1.07501, 0.0154644}, {-1.44292, 0.756005, 1.45561, 1.7133, -0.34108, 4.3293, 0, -1.33263, 0, 2.01402, 0.462931, -0.0125109, 8.26116, -4.09903, -5.83791, 0.70592, 6.8372, 1.78377, 1.78355, 0.712746, -1.79923, -0.70592, -1.50669, -1.78377, -9.83965, -2.56447, 1.84928, -2.48947, 1.07501, 0.0154644}, {-1.44292, 0.756005, 1.45561, -0.571101, 0.113693, -1.4431, 0, 3.99789, 0, 2.01402, 0.462931, -0.0125109, 2.48947, -1.07501, -0.0154644, 2.99032, 1.05191, 7.55617, 7.55524, -2.31127, -7.62167, -0.70592, -1.50669, -1.78377, -1.78355, -0.712746, 1.79923, -10.5456, -0.776716, 0.0655081}, {-1.44292, 0.756005, 1.45561, -0.571101, 0.113693, -1.4431, 0, -1.33263, 0, -6.04207, -1.38879, 0.0375328, 2.48947, -1.07501, -0.0154644, 0.70592, 1.50669, 1.78377, 1.78355, 0.712746, -1.79923, 5.06577, -4.53071, -7.60621, 0.500853, -1.16752, 7.57163, -2.48947, 6.40552, 0.0154644}, {-4.70136, -8.88178e-16, -1.57513e-15, 0.134389, 1.44665, -1.44665, -0.426776, 0.569981, 1.4404, -1.27473, -2.01663, 0.00624416, -2.64074, -7.57474, 7.57474, 0.36141, -2.49269, 0.00771821, 0.297559, -2.98446, -7.54205, 4.73753, 10.5592, -0.0326948, 1.40954, 0.704535, 1.78044, 2.10318, 1.78815, -1.78815}, {1.56712, -8.88178e-16, 1.00961e-15, -0.403167, -4.33994, 4.33994, -0.426776, 0.569981, 1.4404, -1.27473, -2.01663, 0.00624416, -8.37167, -1.78815, 1.78815, 2.06851, -4.77261, -5.75389, -1.40954, -0.704535, -1.78044, -0.36141, 2.49269, -0.00771821, 6.50848, 8.77105, 1.75546, 2.10318, 1.78815, -1.78815}, {1.56712, -1.33227e-15, 1.05818e-16, 0.134389, 1.44665, -1.44665, 1.28033, -1.70994, -4.32121, -1.27473, -2.01663, 0.00624416, -2.10318, -1.78815, 1.78815, -0.176146, -8.27928, 5.79431, -7.67803, -0.704535, -1.78044, -0.36141, 2.49269, -0.00771821, 1.40954, 0.704535, 1.78044, 7.20212, 9.85467, -1.81313}, {1.56712, 0, 4.33681e-17, 0.134389, 1.44665, -1.44665, -0.426776, 0.569981, 1.4404, 3.8242, 6.04988, -0.0187325, -2.10318, -1.78815, 1.78815, 0.36141, -2.49269, 0.00771821, -1.40954, -0.704535, -1.78044, -6.6299, 2.49269, -0.00771821, 0.871989, -5.08205, 7.56702, 3.81029, -0.491769, -7.54977}, {-3.47256, 2.13004, 3.47613, -1.55533, -0.53343, -0.78864, -0.511744, 1.83496, 0.513241, 0.909554, -0.591516, 1.43411, 6.71303, 3.6707, 5.56162, 2.55504, -1.60878, 0.340411, 1.24875, -8.73034, -1.25512, -6.19326, 3.97484, -6.07685, 0.798222, 1.39051, -0.797844, -0.49172, -1.53698, -2.40706}, {1.15752, -0.710012, -1.15871, 4.66599, 1.60029, 2.36592, -0.511744, 1.83496, 0.513241, 0.909554, -0.591516, 1.43411, -4.13836, 4.37703, 7.0419, 4.60202, -8.94861, -1.71255, -0.798222, -1.39051, 0.797844, -2.55504, 1.60878, -0.340411, -2.83999, 3.75657, -6.53428, -0.49172, -1.53698, -2.40706}, {1.15752, -0.710012, -1.15871, -1.55533, -0.53343, -0.78864, 1.53523, -5.50487, -1.53972, 0.909554, -0.591516, 1.43411, 0.49172, 1.53698, 2.40706, 8.77636, 0.524942, 3.49497, -5.4283, 1.44954, 5.43269, -2.55504, 1.60878, -0.340411, 0.798222, 1.39051, -0.797844, -4.12993, 0.829086, -8.14349}, {1.15752, -0.710012, -1.15871, -1.55533, -0.53343, -0.78864, -0.511744, 1.83496, 0.513241, -2.72866, 1.77455, -4.30233, 0.49172, 1.53698, 2.40706, 2.55504, -1.60878, 0.340411, -0.798222, -1.39051, 0.797844, -7.18512, 4.44882, 4.29443, 7.01954, 3.52423, 2.35672, 1.55526, -8.87681, -4.46002}, {-0.0259854, 4.18315, -1.68926, -1.44604, -0.0976914, -0.778579, 1.44538, 0.20404, -0.351453, -0.00800116, 1.28804, 0.566947, 7.56086, 2.23507, 3.38068, 0.000816584, -0.131455, 1.3968, -7.57881, 0.655184, 1.14422, 0.031188, -5.02069, -3.66458, 1.79729, -1.47135, 0.261592, -1.7767, -1.84431, -0.266365}, {0.00866179, -1.39438, 0.563086, 4.33812, 0.293074, 2.33574, 1.44538, 0.20404, -0.351453, -0.00800116, 1.28804, 0.566947, 1.74205, 7.42184, -1.98598, -5.7807, -0.947617, 2.80261, -1.79729, 1.47135, -0.261592, -0.000816584, 0.131455, -1.3968, 1.8293, -6.62349, -2.0062, -1.7767, -1.84431, -0.266365}, {0.00866179, -1.39438, 0.563086, -1.44604, -0.0976914, -0.778579, -4.33614, -0.612121, 1.05436, -0.00800116, 1.28804, 0.566947, 1.7767, 1.84431, 0.266365, 5.78498, 0.259311, 4.51111, -1.83194, 7.04888, -2.51393, -0.000816584, 0.131455, -1.3968, 1.79729, -1.47135, 0.261592, -1.74469, -6.99645, -2.53415}, {0.00866179, -1.39438, 0.563086, -1.44604, -0.0976914, -0.778579, 1.44538, 0.20404, -0.351453, 0.0240035, -3.86411, -1.70084, 1.7767, 1.84431, 0.266365, 0.000816584, -0.131455, 1.3968, -1.79729, 1.47135, -0.261592, -0.0354637, 5.70899, -3.64914, 7.58145, -1.08058, 3.37591, -7.55822, -2.66047, 1.13945}, {5.36656, -5.36656, -5.36656, 3.15147, -4.93118e-15, 0, -1.36261, 1.36261, -1.78885, 0, -3.15147, 0, -14.2902, -2.21115, -2.21115, -2.21115, -1.68428, 2.21115, 9.34589, -9.34589, 7.15542, 2.21115, 14.2902, -2.21115, -3.89543, 3.89543, 0, 1.68428, 2.21115, 2.21115}, {-1.78885, 1.78885, 1.78885, -9.45441, 1.0595e-14, -4.1986e-15, -1.36261, 1.36261, -1.78885, 0, -3.15147, 0, 5.47113, -9.36656, -9.36656, 3.23931, -7.13474, 9.36656, 3.89543, -3.89543, 1.28583e-15, 2.21115, 1.68428, -2.21115, -3.89543, 16.5013, -1.72992e-15, 1.68428, 2.21115, 2.21115}, {-1.78885, 1.78885, 1.78885, 3.15147, 0, 0, 4.08784, -4.08784, 5.36656, 0, -3.15147, 0, -1.68428, -2.21115, -2.21115, -14.817, -1.68428, 2.21115, 11.0508, -11.0508, -7.15542, 2.21115, 1.68428, -2.21115, -3.89543, 3.89543, 0, 1.68428, 14.817, 2.21115}, {-1.78885, 1.78885, 1.78885, 3.15147, -4.93118e-15, 0, -1.36261, 1.36261, -1.78885, 0, 9.45441, 0, -1.68428, -2.21115, -2.21115, -2.21115, -1.68428, 2.21115, 3.89543, -3.89543, -4.44089e-16, 9.36656, -5.47113, -9.36656, -16.5013, 3.89543, 0, 7.13474, -3.23931, 9.36656}, {2.81269, -2.81269, -1.11325, -0.456393, -1.88673, -0.746758, 0.886018, 1.45711, 2.59594, 0.507938, -0.507938, -2.22026, 3.5486, 8.72017, 3.45139, -0.531046, 0.531046, -2.28571, -3.48036, -8.78841, -14.0512, -1.50071, 1.50071, 11.1668, -0.0637129, 2.95998, 3.66744, -1.72302, -1.17324, -0.464361}, {-0.937563, 0.937563, 0.371082, 1.36918, 5.6602, 2.24027, 0.886018, 1.45711, 2.59594, 0.507938, -0.507938, -2.22026, 5.47328, -2.57701, -1.01997, -4.07512, -5.29738, -12.6695, 0.0637129, -2.95998, -3.66744, 0.531046, -0.531046, 2.28571, -2.09546, 4.99173, 12.5485, -1.72302, -1.17324, -0.464361}, {-0.937563, 0.937563, 0.371082, -0.456393, -1.88673, -0.746758, -2.65805, -4.37132, -7.78781, 0.507938, -0.507938, -2.22026, 1.72302, 1.17324, 0.464361, 1.29453, 8.07798, 0.701322, 3.81396, -6.71023, -5.15177, 0.531046, -0.531046, 2.28571, -0.0637129, 2.95998, 3.66744, -3.75477, 0.858512, 8.41668}, {-0.937563, 0.937563, 0.371082, -0.456393, -1.88673, -0.746758, 0.886018, 1.45711, 2.59594, -1.52381, 1.52381, 6.66078, 1.72302, 1.17324, 0.464361, -0.531046, 0.531046, -2.28571, 0.0637129, -2.95998, -3.66744, 4.2813, -4.2813, 0.801382, 1.76186, 10.5069, 6.65447, -5.2671, -7.00167, -10.8481}, {8.88178e-16, 4.08096, 0.0852192, 2.97466e-16, 0.921902, -1.18196, 1.31177, 0.0265815, 1.34059, -1.31177, 0.411835, -0.130224, -1.11022e-15, -3.1457, 6.22395, -1.62143, -1.17239, -0.196078, -6.86849, 1.54226, -6.98432, 6.86849, -0.474951, 0.716974, 1.62143, -1.64859, 1.62195, 0, -0.541913, -1.4961}, {-2.22045e-16, -1.36032, -0.0284064, -4.46199e-16, -2.76571, 3.54589, 1.31177, 0.0265815, 1.34059, -1.31177, 0.411835, -0.130224, 8.88178e-16, 5.98319, 1.60972, -6.86849, -1.27872, -5.55845, -1.62143, 1.64859, -1.62195, 1.62143, 1.17239, 0.196078, 6.86849, -3.29593, 2.14285, 0, -0.541913, -1.4961}, {-1.33227e-15, -1.36032, -0.0284064, 4.46199e-16, 0.921902, -1.18196, -3.9353, -0.0797444, -4.02178, -1.31177, 0.411835, -0.130224, 1.11022e-15, 0.541913, 1.4961, -1.62143, -4.86, 4.53177, -1.62143, 7.08987, -1.50833, 1.62143, 1.17239, 0.196078, 1.62143, -1.64859, 1.62195, 5.24706, -2.18925, -0.975202}, {1.55431e-15, -1.36032, -0.0284064, -1.04113e-15, 0.921902, -1.18196, 1.31177, 0.0265815, 1.34059, 3.9353, -1.23551, 0.390672, -4.44089e-16, 0.541913, 1.4961, -1.62143, -1.17239, -0.196078, -1.62143, 1.64859, -1.62195, 1.62143, 6.61367, 0.309704, 1.62143, -5.3362, 6.3498, -5.24706, -0.648239, -6.85847}, {1.39697, -4.32433, -4.36732, 1.89829, -2.30844e-15, -1.37509e-15, 0.0801166, 0.574147, -1.4494, -1.51275, -2.01559, -0.00636856, -9.364, -1.78172, -1.79943, -2.44545, -0.709685, 1.79156, 0.156089, -4.78799, 5.78974, 8.49644, 8.77205, -1.76609, -0.476556, 2.49141, 0.00787198, 1.77083, 1.78172, 1.79943}, {-0.465658, 1.44144, 1.45577, -5.69487, 3.6613e-15, -2.04012e-15, 0.0801166, 0.574147, -1.4494, -1.51275, -2.01559, -0.00636856, 0.0918014, -7.54749, -7.62252, -2.76591, -3.00627, 7.58918, 0.476556, -2.49141, -0.00787198, 2.44545, 0.709685, -1.79156, 5.57444, 10.5538, 0.0333462, 1.77083, 1.78172, 1.79943}, {-0.465658, 1.44144, 1.45577, 1.89829, 0, 0, -0.24035, -1.72244, 4.34821, -1.51275, -2.01559, -0.00636856, -1.77083, -1.78172, -1.79943, -10.0386, -0.709685, 1.79156, 2.33919, -8.25718, -5.83096, 2.44545, 0.709685, -1.79156, -0.476556, 2.49141, 0.00787198, 7.82183, 9.84408, 1.82491}, {-0.465658, 1.44144, 1.45577, 1.89829, 9.49861e-16, 3.00123e-18, 0.0801166, 0.574147, -1.4494, 4.53825, 6.04677, 0.0191057, -1.77083, -1.78172, -1.79943, -2.44545, -0.709685, 1.79156, 0.476556, -2.49141, -0.00787198, 4.30808, -5.05609, -7.61465, -8.06972, 2.49141, 0.00787198, 1.45037, -0.514866, 7.59705}, {4.31352, -3.43679, 1.70622, 1.43784, 0.720211, -1.45048, 0, -1.33263, 0, -1.50621e-12, -0.53318, 2.01922, -5.75136, -5.18711, 8.29783, -1.77727, 0.75699, 1.7929, 1.77727, 5.5617, 0.702999, 1.77727, 1.37573, -9.86978, -1.77727, -0.231184, -0.702999, 1.86177e-12, 2.30627, -2.4959}, {-1.43784, 1.1456, -0.568738, -4.31352, -2.16063, 4.35145, 0, -1.33263, 0, -1.50909e-12, -0.53318, 2.01922, 5.75136, -6.88865, 4.77085, -1.77727, 6.08751, 1.7929, 1.77727, 0.231184, 0.702999, 1.77727, -0.75699, -1.7929, -1.77727, 1.90153, -8.77989, 1.86534e-12, 2.30627, -2.4959}, {-1.43784, 1.1456, -0.568738, 1.43784, 0.720211, -1.45048, 0, 3.99789, 0, -1.50945e-12, -0.53318, 2.01922, -1.86543e-12, -2.30627, 2.4959, -7.52863, -2.12386, 7.59483, 7.52863, -4.3512, 2.97795, 1.77727, -0.75699, -1.7929, -1.77727, -0.231184, -0.702999, 7.90358e-12, 4.43898, -10.5728}, {-1.43784, 1.1456, -0.568738, 1.43784, 0.720211, -1.45048, 0, -1.33263, 0, 4.52348e-12, 1.59954, -6.05767, -1.86342e-12, -2.30627, 2.4959, -1.77727, 0.75699, 1.7929, 1.77727, 0.231184, 0.702999, 7.52863, -5.33938, 0.482057, -7.52863, -3.11203, 5.09894, 1.86378e-12, 7.63678, -2.4959}, {-4.90958, -4.91099, -14.364, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, -1.63653, -1.637, -1.63653, -10.2723, 6.22604, 2.33354, -1.70974e-14, 1.68754e-14, 3.89543, 6.22661, -10.2729, 2.33118, 6.54611, 6.54798, 2.65068, 0.0754226, 3.97087, 3.97085, 3.9703, 0.076001, 3.9703}, {1.63653, 1.637, 4.788, -4.72653, 4.72653, 4.72788, -1.57551, 1.57551, -1.57551, -1.63653, -1.637, -1.63653, -10.5164, -6.62398, -23.1223, 6.30204, -6.30204, 10.1975, -0.0754226, -3.97087, -3.97085, 1.38046e-14, -1.50613e-14, -3.89543, 6.62153, 10.5189, 10.517, 3.9703, 0.076001, 3.9703}, {1.63653, 1.637, 4.788, 1.57551, -1.57551, -1.57596, 4.72653, -4.72653, 4.72653, -1.63653, -1.637, -1.63653, -3.9703, -0.076001, -3.9703, -6.30204, 6.30204, 10.1993, -6.62153, -10.5189, -23.1228, 1.64691e-14, -1.72818e-14, -3.89543, 0.0754226, 3.97087, 3.97085, 10.5164, 6.62398, 10.5164}, {1.63653, 1.637, 4.788, 1.57551, -1.57551, -1.57596, -1.57551, 1.57551, -1.57551, 4.90958, 4.91099, 4.90958, -3.9703, -0.076001, -3.9703, -1.70974e-14, 1.68754e-14, 3.89543, -0.0754226, -3.97087, -3.97085, -6.54611, -6.54798, -23.0474, -6.22661, 10.2729, 10.2747, 10.2723, -6.22604, 10.2723}, {1.1292, -10.9335, -1.11964, 0, 0, 1.60567, 1.79029, -1.78764, -1.78873, -1.41389, -1.85687, -0.190152, 0.465254, -4.50486, -8.8687, -2.21292, 2.20964, 0.226277, -8.90884, 4.85533, 8.90459, 7.8685, 5.21784, 0.53433, 1.74767, 2.29522, -1.74967, -0.465254, 4.50486, 2.44603}, {-0.376399, 3.64451, 0.373213, 3.83169e-15, 8.27924e-17, -4.817, 1.79029, -1.78764, -1.78873, -1.41389, -1.85687, -0.190152, 1.97085, -19.0829, -3.93889, -9.37409, 9.36019, 7.3812, -1.74767, -2.29522, 1.74967, 2.21292, -2.20964, -0.226277, 7.40324, 9.72271, -0.989068, -0.465254, 4.50486, 2.44603}, {-0.376399, 3.64451, 0.373213, -2.25438e-15, -2.96069e-15, 1.60567, -5.37088, 5.36291, 5.36619, -1.41389, -1.85687, -0.190152, 0.465254, -4.50486, -2.44603, -2.21292, 2.20964, -6.1964, -0.242074, -16.8733, 0.256821, 2.21292, -2.20964, -0.226277, 1.74767, 2.29522, -1.74967, 5.19032, 11.9323, 3.20664}, {-0.376399, 3.64451, 0.373213, 0, 0, 1.60567, 1.79029, -1.78764, -1.78873, 4.24168, 5.57061, 0.570455, 0.465254, -4.50486, -2.44603, -2.21292, 2.20964, 0.226277, -1.74767, -2.29522, 1.74967, 3.71852, -16.7877, -1.71913, 1.74767, 2.29522, -8.17235, -7.62642, 11.6554, 9.60095}, {-9.76996e-15, 8.88178e-16, -7.02938, 1.78885, 2.33948, -2.34059, -1.78885, 6.92504e-12, -0.00253498, 0, -2.33948, 0, -9.36656, -12.2497, 9.35923, 3.9968e-15, -2.89175, 2.89626, 9.36656, -3.62599e-11, -2.88299, -3.9968e-15, 12.2497, -2.89626, -2.21115, 8.55982e-12, 2.89313, 2.21115, 2.89175, 0.00313341}, {-2.22045e-15, -1.33227e-15, 2.34313, -5.36656, -7.01844, 7.02177, -1.78885, 6.92556e-12, -0.00253498, 0, -2.33948, 0, -2.21115, -2.89175, -9.37564, 7.15542, -2.89175, 2.9064, 2.21115, -8.55893e-12, -2.89313, 2.66454e-15, 2.89175, -2.89626, -2.21115, 9.35791, 2.89313, 2.21115, 2.89175, 0.00313341}, {4.21885e-15, 3.55271e-15, 2.34313, 1.78885, 2.33948, -2.34059, 5.36656, -2.0786e-11, 0.00760494, 0, -2.33948, 0, -2.21115, -2.89175, -0.00313341, -7.15542, -12.2497, 12.2586, 2.21115, -8.58513e-12, -12.2656, -5.32907e-15, 2.89175, -2.89626, -2.21115, 8.5687e-12, 2.89313, 2.21115, 12.2497, 0.00313341}, {0, -4.44089e-16, 2.34313, 1.78885, 2.33948, -2.34059, -1.78885, 6.92763e-12, -0.00253498, 0, 7.01844, 0, -2.21115, -2.89175, -0.00313341, 0, -2.89175, 2.89626, 2.21115, -8.56293e-12, -2.89313, 0, 2.89175, -12.2688, -9.36656, -9.35791, 12.2555, 9.36656, 2.89175, 0.0132733}, {5.21741, 5.22554, 3.98943, -2.33948, 0, 0, 1.54072, 1.54312, -0.61076, 2.53789, 0.198723, 1.94057, 14.3994, 2.15304, 1.64373, 0.987318, -1.90741, 0.754941, -5.91764, -5.92686, 4.84171, -11.1389, 1.11252, -8.51722, -0.245252, -0.245635, -2.39867, -5.04144, -2.15304, -1.64373}, {-1.73914, -1.74185, -1.32981, 7.01844, 0, 0, 1.54072, 1.54312, -0.61076, 2.53789, 0.198723, 1.94057, 11.998, 9.12042, 6.96297, -5.17557, -8.0799, 3.19798, 0.245252, 0.245635, 2.39867, -0.987318, 1.90741, -0.754941, -10.3968, -1.04052, -10.1609, -5.04144, -2.15304, -1.64373}, {-1.73914, -1.74185, -1.32981, -2.33948, 0, 0, -4.62217, -4.62937, 1.83228, 2.53789, 0.198723, 1.94057, 5.04144, 2.15304, 1.64373, 10.3452, -1.90741, 0.754941, 7.20179, 7.21302, 7.71791, -0.987318, 1.90741, -0.754941, -0.245252, -0.245635, -2.39867, -15.193, -2.94793, -9.40601}, {-1.73914, -1.74185, -1.32981, -2.33948, 0, 0, 1.54072, 1.54312, -0.61076, -7.61368, -0.596168, -5.82171, 5.04144, 2.15304, 1.64373, 0.987318, -1.90741, 0.754941, 0.245252, 0.245635, 2.39867, 5.96922, 8.87479, 4.5643, 9.11266, -0.245635, -2.39867, -11.2043, -8.32553, 0.799305}, {10.9417, 1.1195, -1.12048, -2.16738e-15, -8.61236e-16, 1.60567, 1.79007, 1.78742, -1.78898, 1.85717, -1.41425, -0.190182, 4.50824, 0.46126, -8.86905, -2.21265, -2.20937, 0.226585, -4.86469, -8.89778, 8.90555, -5.21604, 7.86637, 0.534145, -2.29559, 1.74811, -1.74964, -4.50824, -0.46126, 2.44638}, {-3.64724, -0.373167, 0.373493, -8.02431e-17, 3.82867e-15, -4.817, 1.79007, 1.78742, -1.78898, 1.85717, -1.41425, -0.190182, 19.0972, 1.95393, -3.94035, -9.37293, -9.35904, 7.3825, 2.29559, -1.74811, 1.74964, 2.21265, 2.20937, -0.226585, -9.72428, 7.40511, -0.988907, -4.50824, -0.46126, 2.44638}, {-3.64724, -0.373167, 0.373493, 2.96117e-15, -2.25495e-15, 1.60567, -5.37021, -5.36225, 5.36694, 1.85717, -1.41425, -0.190182, 4.50824, 0.46126, -2.44638, -2.21265, -2.20937, -6.19609, 16.8846, -0.25544, 0.255663, 2.21265, 2.20937, -0.226585, -2.29559, 1.74811, -1.74964, -11.9369, 5.19574, 3.20711}, {-3.64724, -0.373167, 0.373493, -7.40292e-16, 5.63738e-16, 1.60567, 1.79007, 1.78742, -1.78898, -5.57152, 4.24275, 0.570547, 4.50824, 0.46126, -2.44638, -2.21265, -2.20937, 0.226585, 2.29559, -1.74811, 1.74964, 16.8016, 3.70204, -1.72056, -2.29559, 1.74811, -8.17231, -11.6685, -7.61093, 9.60229}, {1.83228, 4.62937, -4.62937, 0, 0, -1.60567, 1.94057, -0.198723, 0.198723, -1.32981, 1.74185, -0.136178, 0.754941, 1.90741, 6.49998, -2.39867, 0.245635, 1.73908, -9.40601, 2.94793, -2.94793, 7.71791, -7.21302, -1.19437, 1.64373, -2.15304, 2.15304, -0.754941, -1.90741, -0.0773091}, {-0.61076, -1.54312, 1.54312, 0, 0, 4.817, 1.94057, -0.198723, 0.198723, -1.32981, 1.74185, -0.136178, 3.19798, 8.0799, -6.09519, -10.1609, 1.04052, 0.94419, -1.64373, 2.15304, -2.15304, 2.39867, -0.245635, -1.73908, 6.96297, -9.12042, 2.69775, -0.754941, -1.90741, -0.0773091}, {-0.61076, -1.54312, 1.54312, 0, 0, -1.60567, -5.82171, 0.596168, -0.596168, -1.32981, 1.74185, -0.136178, 0.754941, 1.90741, 0.0773091, -2.39867, 0.245635, 8.16175, 0.799305, 8.32553, -8.32553, 2.39867, -0.245635, -1.73908, 1.64373, -2.15304, 2.15304, 4.5643, -8.87479, 0.467403}, {-0.61076, -1.54312, 1.54312, 0, 0, -1.60567, 1.94057, -0.198723, 0.198723, 3.98943, -5.22554, 0.408534, 0.754941, 1.90741, 0.0773091, -2.39867, 0.245635, 1.73908, -1.64373, 2.15304, -2.15304, 4.84171, 5.92686, -7.91157, 1.64373, -2.15304, 8.57571, -8.51722, -1.11252, -0.872199}, {-1.12374, 4.33994, -1.71772, 0.422512, 1.58777e-12, -2.01922, 0.258935, 1.44665, 1.44665, -1.05603, 0, 0, -2.6753, 1.78815, 9.86504, -0.842315, -1.78815, 0.707741, -1.81881, -5.78659, -8.28248, 5.06642, 1.78815, -0.707741, 0.783066, -1.96259e-12, 2.4959, 0.985258, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, -1.26754, -4.76439e-12, 6.05767, 0.258935, 1.44665, 1.44665, -1.05603, 0, 0, -2.48357, 7.57474, -0.502145, -1.87805, -7.57474, -5.07885, -0.783066, 1.9634e-12, -2.4959, 0.842315, 1.78815, -0.707741, 5.00717, -1.96304e-12, 2.4959, 0.985258, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, 0.422512, 1.58777e-12, -2.01922, -0.776805, -4.33994, -4.33994, -1.05603, 0, 0, -0.985258, 1.78815, 1.78815, -2.53236, -1.78815, 8.78463, -2.28138, 5.78659, -4.7862, 0.842315, 1.78815, -0.707741, 0.783066, -1.96259e-12, 2.4959, 5.20936, -1.78815, -1.78815}, {0.374579, -1.44665, 0.572575, 0.422512, 1.58813e-12, -2.01922, 0.258935, 1.44665, 1.44665, 3.16808, 0, 0, -0.985258, 1.78815, 1.78815, -0.842315, -1.78815, 0.707741, -0.783066, 1.9634e-12, -2.4959, -0.656, 7.57474, -2.99804, -0.906981, -8.31556e-12, 10.5728, -0.0504823, -7.57474, -7.57474}, {-4.08784, 4.08784, -5.36656, 0, 3.15147, 0, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -14.817, -2.21115, 3.89543, -3.89543, 0, 14.817, 1.68428, -2.21115, -11.0508, 11.0508, 7.15542, -2.21115, -1.68428, 2.21115, 1.68428, 2.21115, 2.21115}, {1.36261, -1.36261, 1.78885, -1.15954e-14, -9.45441, 4.1986e-15, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -7.13474, 3.23931, -9.36656, 16.5013, -3.89543, 1.72992e-15, 2.21115, 1.68428, -2.21115, -3.89543, 3.89543, -2.17401e-15, -9.36656, 5.47113, 9.36656, 1.68428, 2.21115, 2.21115}, {1.36261, -1.36261, 1.78885, 0, 3.15147, 0, 9.45441, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -2.21115, -2.21115, 3.89543, -16.5013, 0, -3.23931, 7.13474, -9.36656, -3.89543, 3.89543, -4.44089e-16, -2.21115, -1.68428, 2.21115, -5.47113, 9.36656, 9.36656}, {1.36261, -1.36261, 1.78885, 0, 3.15147, 0, -3.15147, 0, 0, -5.36656, 5.36656, 5.36656, -1.68428, -2.21115, -2.21115, 3.89543, -3.89543, 0, 2.21115, 1.68428, -2.21115, -9.34589, 9.34589, -7.15542, -2.21115, -14.2902, 2.21115, 14.2902, 2.21115, 2.21115}, {1.11747, -3.79023, -1.1121, -0.361676, -1.4194, 0.363688, 1.52298, 0.102889, 0.820003, -0.788811, 0.0531033, -1.55439, 2.35418, 5.87043, -2.3625, -1.43545, 1.6273, -1.46312, -7.51399, -2.1004, -4.7518, 4.59069, -1.83971, 7.68068, 1.42208, 1.68884, 1.47179, -0.907478, -0.192817, 0.907751}, {-0.372489, 1.26341, 0.370699, 1.08503, 4.25821, -1.09106, 1.52298, 0.102889, 0.820003, -0.788811, 0.0531033, -1.55439, 2.39743, -4.86083, -2.39055, -7.52735, 1.21575, -4.74314, -1.42208, -1.68884, -1.47179, 1.43545, -1.6273, 1.46312, 4.57732, 1.47643, 7.68935, -0.907478, -0.192817, 0.907751}, {-0.372489, 1.26341, 0.370699, -0.361676, -1.4194, 0.363688, -4.56893, -0.308667, -2.46001, -0.788811, 0.0531033, -1.55439, 0.907478, 0.192817, -0.907751, 0.0112586, 7.30492, -2.91787, 0.0678761, -6.74249, -2.95458, 1.43545, -1.6273, 1.46312, 1.42208, 1.68884, 1.47179, 2.24777, -0.40523, 7.12531}, {-0.372489, 1.26341, 0.370699, -0.361676, -1.4194, 0.363688, 1.52298, 0.102889, 0.820003, 2.36643, -0.15931, 4.66317, 0.907478, 0.192817, -0.907751, -1.43545, 1.6273, -1.46312, -1.42208, -1.68884, -1.47179, 2.9254, -6.68095, -0.0196727, 2.86879, 7.36645, 0.0170383, -6.99938, -0.604373, -2.37226}, {4.44089e-15, -4.05009, 8.88178e-16, -0.572575, -0.625677, 1.44665, 2.01922, -0.706554, 1.38558e-12, -1.44665, -0.0177991, -1.44665, 2.99804, 1.60736, -7.57474, -1.78815, 1.64673, -1.78815, -10.5728, 2.03083, -7.25442e-12, 7.57474, -1.57553, 7.57474, 2.4959, 0.79538, 1.71219e-12, -0.707741, 0.895349, 1.78815}, {-4.44089e-16, 1.35003, -2.22045e-15, 1.71772, 1.87703, -4.33994, 2.01922, -0.706554, 1.3879e-12, -1.44665, -0.0177991, -1.44665, 0.707741, -6.29547, -1.78815, -9.86504, 4.47294, -1.78815, -2.4959, -0.79538, -1.71263e-12, 1.78815, -1.64673, 1.78815, 8.28248, 0.866577, 5.78659, -0.707741, 0.895349, 1.78815}, {8.88178e-16, 1.35003, 6.66134e-16, -0.572575, -0.625677, 1.44665, -6.05767, 2.11966, -4.15591e-12, -1.44665, -0.0177991, -1.44665, 0.707741, -0.895349, -1.78815, 0.502145, 4.14944, -7.57474, -2.4959, -6.1955, -1.71596e-12, 1.78815, -1.64673, 1.78815, 2.4959, 0.79538, 1.7133e-12, 5.07885, 0.966546, 7.57474}, {2.22045e-16, 1.35003, 0, -0.572575, -0.625677, 1.44665, 2.01922, -0.706554, 1.38489e-12, 4.33994, 0.0533972, 4.33994, 0.707741, -0.895349, -1.78815, -1.78815, 1.64673, -1.78815, -2.4959, -0.79538, -1.71196e-12, 1.78815, -7.04685, 1.78815, 4.7862, 3.29809, -5.78659, -8.78463, 3.72156, 1.78815}, {1.70622, 4.31352, 1.19704, 8.51907e-16, 7.76069e-16, 1.08709, -1.45048, 1.43784, -0.312525, 2.01922, -1.65855e-12, -0.375548, 0.702999, 1.77727, -5.19885, 1.7929, -1.77727, -0.95741, 8.29783, -5.75136, 2.12961, -9.86978, 1.77727, 2.4596, -2.4959, 2.04913e-12, -0.879509, -0.702999, -1.77727, 0.850505}, {-0.568738, -1.43784, -0.399013, -2.80914e-15, 1.1641e-15, -3.26126, -1.45048, 1.43784, -0.312525, 2.01922, -1.65923e-12, -0.375548, 2.97795, 7.52863, 0.745546, 7.59483, -7.52863, 0.292691, 2.4959, -2.05105e-12, 0.879509, -1.7929, 1.77727, 0.95741, -10.5728, 8.68834e-12, 0.622683, -0.702999, -1.77727, 0.850505}, {-0.568738, -1.43784, -0.399013, 0, 0, 1.08709, 4.35145, -4.31352, 0.937576, 2.01922, -1.65685e-12, -0.375548, 0.702999, 1.77727, -0.850505, 1.7929, -1.77727, -5.30575, 4.77085, 5.75136, 2.47556, -1.7929, 1.77727, 0.95741, -2.4959, 2.04797e-12, -0.879509, -8.77989, -1.77727, 2.3527}, {-0.568738, -1.43784, -0.399013, 0, 0, 1.08709, -1.45048, 1.43784, -0.312525, -6.05767, 4.97324e-12, 1.12664, 0.702999, 1.77727, -0.850505, 1.7929, -1.77727, -0.95741, 2.4959, -2.04873e-12, 0.879509, 0.482057, 7.52863, 2.55346, -2.4959, 2.04909e-12, -5.22785, 5.09894, -7.52863, 2.10061}, {-2.41029, -2.40672, -2.40819, -0.80343, -0.802238, 0.80294, 1.63555, -1.63555, 0.0313083, -1.63555, 1.63555, -1.63698, 3.21372, 3.20895, -5.19647, -1.02855, 3.01327, -1.03119, -9.55693, 7.57221, -1.15616, 7.57074, -9.55546, 7.57909, 3.01474, -1.03003, 1.03093, 8.88178e-15, 5.77316e-15, 1.98471}, {0.80343, 0.802238, 0.802728, 2.41029, 2.40672, -2.40882, 1.63555, -1.63555, 0.0313083, -1.63555, 1.63555, -1.63698, -3.21372, -3.20895, -5.19563, -7.57074, 9.55546, -1.15642, -3.01474, 1.03003, -1.03093, 1.02855, -3.01327, 1.03119, 9.55693, -7.57221, 7.57883, 8.88178e-15, 7.54952e-15, 1.98471}, {0.80343, 0.802238, 0.802728, -0.80343, -0.802238, 0.80294, -4.90664, 4.90664, -0.0939249, -1.63555, 1.63555, -1.63698, -8.88178e-15, -7.54952e-15, -1.98471, 2.18516, 6.22222, -4.24295, -6.22846, -2.17893, -4.24184, 1.02855, -3.01327, 1.03119, 3.01474, -1.03003, 1.03093, 6.54219, -6.54219, 8.53262}, {0.80343, 0.802238, 0.802728, -0.80343, -0.802238, 0.80294, 1.63555, -1.63555, 0.0313083, 4.90664, -4.90664, 4.91093, -7.99361e-15, -8.43769e-15, -1.98471, -1.02855, 3.01327, -1.03119, -3.01474, 1.03003, -1.03093, -2.18516, -6.22222, -2.17973, 6.22846, 2.17893, -2.18083, -6.54219, 6.54219, 1.85948}, {-5.48006e-11, 5.36656, 0.00342441, 0, 0, -2.34462, 2.34313, 0, 0, -2.34313, 1.78885, 2.34576, -2.25788e-11, 2.21115, 12.278, -2.89626, 0, 2.89811, -12.2688, 2.21115, 0.00141093, 12.2688, -7.15542, -12.2812, 2.89626, -2.21115, -0.00141093, 2.25788e-11, -2.21115, -2.89952}, {1.2113e-11, -1.78885, -0.00114147, 0, 0, 7.03386, 2.34313, -1.04056e-15, -1.3645e-15, -2.34313, 1.78885, 2.34576, -6.34248e-11, 9.36656, 2.90409, -12.2688, 5.44843e-15, 2.89811, -2.89626, 2.21115, 0.00141093, 2.89626, -8.4211e-16, -2.89811, 12.2688, -9.36656, -9.38446, 1.49729e-11, -2.21115, -2.89952}, {1.2109e-11, -1.78885, -0.00114147, 0, 0, -2.34462, -7.02938, 0, 0, -2.34313, 1.78885, 2.34576, -1.49676e-11, 2.21115, 2.89952, -2.89626, 0, 12.2766, -2.89626, 9.36656, 0.00597681, 2.89626, 4.44089e-16, -2.89811, 2.89626, -2.21115, -0.00141093, 9.3725, -9.36656, -12.2826}, {1.21134e-11, -1.78885, -0.00114147, 0, 0, -2.34462, 2.34313, 0, 0, 7.02938, -5.36656, -7.03729, -1.49729e-11, 2.21115, 2.89952, -2.89626, 0, 2.89811, -2.89626, 2.21115, 0.00141093, 2.89626, 7.15542, -2.89354, 2.89626, -2.21115, 9.37707, -9.3725, -2.21115, -2.89952}, {-2.3518, -6.05767, -5.91704e-12, -0.0281756, -0.572575, -1.44665, -1.05603, 0, 0, 0.300269, -1.44665, 1.44665, -0.821464, 0.502145, 7.57474, 1.34015, 0.707741, 1.78815, 4.56043, -2.4959, -2.43827e-12, -2.54122, 5.07885, -7.57474, -0.336326, 2.4959, 2.43827e-12, 0.934166, 1.78815, -1.78815}, {0.783932, 2.01922, 1.9722e-12, 0.0845268, 1.71772, 4.33994, -1.05603, 0, 0, 0.300269, -1.44665, 1.44665, -4.06989, -9.86504, 1.78815, 5.56425, 0.707741, 1.78815, 0.336326, -2.4959, -2.43761e-12, -1.34015, -0.707741, -1.78815, -1.5374, 8.28248, -5.78659, 0.934166, 1.78815, -1.78815}, {0.783932, 2.01922, 1.97353e-12, -0.0281756, -0.572575, -1.44665, 3.16808, 0, 0, 0.300269, -1.44665, 1.44665, -0.934166, -1.78815, 1.78815, 1.45285, 2.99804, 7.57474, -2.7994, -10.5728, -1.03331e-11, -1.34015, -0.707741, -1.78815, -0.336326, 2.4959, 2.43938e-12, -0.266911, 7.57474, -7.57474}, {0.783932, 2.01922, 1.97287e-12, -0.0281756, -0.572575, -1.44665, -1.05603, 0, 0, -0.900808, 4.33994, -4.33994, -0.934166, -1.78815, 1.78815, 1.34015, 0.707741, 1.78815, 0.336326, -2.4959, -2.43872e-12, -4.47587, -8.78463, -1.78815, -0.223624, 4.7862, 5.78659, 5.15827, 1.78815, -1.78815}, {-2.45207, 5.12164, 2.36493, 0.0510009, -0.6557, 1.65667, -1.08957, 0.431245, -1.08957, 0.22121, 1.93167, 0.22121, -1.27735, 5.54352, -7.70003, 1.28374, 0.277442, -0.700975, 4.69474, -0.147797, 6.67946, -2.16858, -8.00412, -0.183865, -0.336471, -1.57718, -2.32119, 1.07335, -2.92072, 1.07335}, {0.817357, -1.70721, -0.788311, -0.153003, 1.9671, -4.97001, -1.08957, 0.431245, -1.08957, 0.22121, 1.93167, 0.22121, -4.34278, 9.74957, 2.07989, 5.64201, -1.44754, 3.6573, 0.336471, 1.57718, 2.32119, -1.28374, -0.277442, 0.700975, -1.22131, -9.30386, -3.20603, 1.07335, -2.92072, 1.07335}, {0.817357, -1.70721, -0.788311, 0.0510009, -0.6557, 1.65667, 3.2687, -1.29374, 3.2687, 0.22121, 1.93167, 0.22121, -1.07335, 2.92072, -1.07335, 1.07974, 2.90024, -7.32765, -2.93296, 8.40603, 5.47443, -1.28374, -0.277442, 0.700975, -0.336471, -1.57718, -2.32119, 0.18851, -10.6474, 0.18851}, {0.817357, -1.70721, -0.788311, 0.0510009, -0.6557, 1.65667, -1.08957, 0.431245, -1.08957, -0.66363, -5.795, -0.66363, -1.07335, 2.92072, -1.07335, 1.28374, 0.277442, -0.700975, 0.336471, 1.57718, 2.32119, -4.55317, 6.55141, 3.85422, -0.540475, 1.04562, -8.94786, 5.43162, -4.6457, 5.43162}, {-4.62937, -1.83228, -4.62937, 0.198723, -1.94057, 2.54185, 0, 0, -2.34313, -1.74185, 1.32981, -1.74185, -2.94793, 9.40601, -15.2167, -0.245635, 2.39867, -0.245635, -1.90741, -0.754941, 10.3614, 7.21302, -7.71791, 7.21302, 1.90741, 0.754941, -0.988857, 2.15304, -1.64373, 5.0493}, {1.54312, 0.61076, 1.54312, -0.596168, 5.82171, -7.62554, 0, 0, -2.34313, -1.74185, 1.32981, -1.74185, -8.32553, -0.799305, -11.2218, -0.245635, 2.39867, 9.12687, -1.90741, -0.754941, 0.988857, 0.245635, -2.39867, 0.245635, 8.87479, -4.5643, 5.97853, 2.15304, -1.64373, 5.0493}, {1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 2.54185, 0, 0, 7.02938, -1.74185, 1.32981, -1.74185, -2.15304, 1.64373, -5.0493, -1.04052, 10.1609, -10.413, -8.0799, -3.19798, -5.18364, 0.245635, -2.39867, 0.245635, 1.90741, 0.754941, -0.988857, 9.12042, -6.96297, 12.0167}, {1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 2.54185, 0, 0, -2.34313, 5.22554, -3.98943, 5.22554, -2.15304, 1.64373, -5.0493, -0.245635, 2.39867, -0.245635, -1.90741, -0.754941, 0.988857, -5.92686, -4.84171, -5.92686, 1.11252, 8.51722, -11.1562, 2.15304, -1.64373, 14.4218}, {3.9353, 3.03575, -0.94776, 1.31177, -0.633999, -0.948528, 0, 0.442478, 1.49023, 0, 1.20344, -0.85762, -5.24706, 4.57046, 4.57606, -1.62143, 0.236733, -0.669578, 1.62143, -1.06605, -8.19343, 1.62143, -5.05048, 4.10006, -1.62143, -0.703864, 2.23252, 0, -2.03446, -0.781946}, {-1.31177, -1.01192, 0.31592, -3.9353, 1.902, 2.84558, 0, 0.442478, 1.49023, 0, 1.20344, -0.85762, 5.24706, 6.08213, -0.481733, -1.62143, -1.53318, -6.63049, 1.62143, 0.703864, -2.23252, 1.62143, -0.236733, 0.669578, -1.62143, -5.51761, 5.663, 0, -2.03446, -0.781946}, {-1.31177, -1.01192, 0.31592, 1.31177, -0.633999, -0.948528, 0, -1.32743, -4.47068, 0, 1.20344, -0.85762, 3.2565e-16, 2.03446, 0.781946, -6.86849, 2.77273, 3.12453, 6.86849, 4.75153, -3.4962, 1.62143, -0.236733, 0.669578, -1.62143, -0.703864, 2.23252, 0, -6.84821, 2.64853}, {-1.31177, -1.01192, 0.31592, 1.31177, -0.633999, -0.948528, 0, 0.442478, 1.49023, 0, -3.61031, 2.57286, 3.2565e-16, 2.03446, 0.781946, -1.62143, 0.236733, -0.669578, 1.62143, 0.703864, -2.23252, 6.86849, 3.81093, -0.594102, -6.86849, 1.83213, 6.02663, 0, -3.80438, -6.74286}, {8.88178e-16, -9.65337e-16, 5.41667, 1.44665, 1.44665, 1.40715, 0.572575, -1.44665, 1.02216, -2.01922, -1.9703e-12, -0.623753, -7.57474, -7.57474, -5.13614, -2.4959, -2.43516e-12, -3.00279, -2.99804, 7.57474, -3.1203, 10.5728, 1.03164e-11, 5.4978, 0.707741, -1.78815, -0.968332, 1.78815, 1.78815, -0.492457}, {-4.44089e-16, -2.99727e-18, -1.80556, -4.33994, -4.33994, -4.22145, 0.572575, -1.44665, 1.02216, -2.01922, -1.97286e-12, -0.623753, -1.78815, -1.78815, 7.71468, -4.7862, 5.78659, -7.09142, -0.707741, 1.78815, 0.968332, 2.4959, 2.43872e-12, 3.00279, 8.78463, -1.78815, 1.52668, 1.78815, 1.78815, -0.492457}, {0, 1.65544e-16, -1.80556, 1.44665, 1.44665, 1.40715, -1.71772, 4.33994, -3.06648, -2.01922, -1.97103e-12, -0.623753, -1.78815, -1.78815, 0.492457, -8.28248, -5.78659, -8.63139, -0.707741, 1.78815, 8.19056, 2.4959, 2.43605e-12, 3.00279, 0.707741, -1.78815, -0.968332, 9.86504, 1.78815, 2.00255}, {0, 7.512e-17, -1.80556, 1.44665, 1.44665, 1.40715, 0.572575, -1.44665, 1.02216, 6.05767, 5.91749e-12, 1.87126, -1.78815, -1.78815, 0.492457, -2.4959, -2.43805e-12, -3.00279, -0.707741, 1.78815, 0.968332, 2.4959, 2.43775e-12, 10.225, -5.07885, -7.57474, -6.59693, -0.502145, 7.57474, -4.58109}, {4.36745, -2.27082, -4.32425, 1.62046e-12, 0.53318, -2.01922, 0, -1.33263, 0, 1.45582, 0.0425099, 0.577805, 1.79949, -3.72739, 8.79109, -2.00299e-12, 0.988174, 2.4959, 1.79949, 6.04211, -1.78169, -5.82327, -1.15821, -4.80711, -1.79949, -0.711591, 1.78169, -1.79949, 1.59467, -0.714206}, {-1.45582, 0.756939, 1.44142, -4.85808e-12, -1.59954, 6.05767, 0, -1.33263, 0, 1.45582, 0.0425099, 0.577805, 7.62276, -4.62243, -5.05146, -2.00164e-12, 6.31869, 2.4959, 1.79949, 0.711591, -1.78169, 2.002e-12, -0.988174, -2.4959, -7.62276, -0.881631, -0.529529, -1.79949, 1.59467, -0.714206}, {-1.45582, 0.756939, 1.44142, 1.61717e-12, 0.53318, -2.01922, 0, 3.99789, 0, 1.45582, 0.0425099, 0.577805, 1.79949, -1.59467, 0.714206, -8.46762e-12, -1.14454, 10.5728, 7.62276, -2.31617, -7.54736, 1.9993e-12, -0.988174, -2.4959, -1.79949, -0.711591, 1.78169, -7.62276, 1.42464, -3.02542}, {-1.45582, 0.756939, 1.44142, 1.61827e-12, 0.53318, -2.01922, 0, -1.33263, 0, -4.36745, -0.12753, -1.73341, 1.79949, -1.59467, 0.714206, -2.00029e-12, 0.988174, 2.4959, 1.79949, 0.711591, -1.78169, 5.82327, -4.01593, -8.26156, -1.79949, -2.84431, 9.85858, -1.79949, 6.92519, -0.714206}, {-3.26389, 1.55026, 1.55311, -0.994319, -0.995188, -0.994319, -0.203724, 1.40177, -0.203724, 0.110078, 0.110174, 1.71575, 3.86152, 5.84961, 5.84624, 1.48086, -0.502558, 1.48086, -0.278087, -6.701, 1.70663, -1.92117, 0.0618612, -8.34385, 1.09298, 1.09394, -0.891733, 0.115752, -1.86886, -1.86896}, {1.08796, -0.516753, -0.517703, 2.98296, 2.98556, 2.98296, -0.203724, 1.40177, -0.203724, 0.110078, 0.110174, 1.71575, -4.46761, 3.93587, 3.93978, 2.29576, -6.10962, 2.29576, -1.09298, -1.09394, 0.891733, -1.48086, 0.502558, -1.48086, 0.65267, 0.65324, -7.75472, 0.115752, -1.86886, -1.86896}, {1.08796, -0.516753, -0.517703, -0.994319, -0.995188, -0.994319, 0.611171, -4.2053, 0.611171, 0.110078, 0.110174, 1.71575, -0.115752, 1.86886, 1.86896, 5.45814, 3.47819, 5.45814, -5.44484, 0.973073, 2.96255, -1.48086, 0.502558, -1.48086, 1.09298, 1.09394, -0.891733, -0.32456, -2.30956, -8.73195}, {1.08796, -0.516753, -0.517703, -0.994319, -0.995188, -0.994319, -0.203724, 1.40177, -0.203724, -0.330234, -0.330523, -5.14724, -0.115752, 1.86886, 1.86896, 1.48086, -0.502558, 1.48086, -1.09298, -1.09394, 0.891733, -5.83272, 2.56957, 0.589952, 5.07026, 5.07469, 3.08554, 0.930647, -7.47593, -1.05407}, {5.37021, -5.36225, 5.37163, 3.64724, -0.373167, 0.376681, -1.85717, -1.41425, -0.191806, 0, 0, 1.60567, -16.8846, -0.25544, 0.240906, -2.21265, 2.20937, -0.228519, 11.9369, 5.19574, 3.21754, 2.21265, -2.20937, -6.19415, -4.50824, 0.46126, -2.45032, 2.29559, 1.74811, -1.74763}, {-1.79007, 1.78742, -1.79054, -10.9417, 1.1195, -1.13004, -1.85717, -1.41425, -0.191806, 7.40292e-16, 5.63738e-16, 1.60567, 4.86469, -8.89778, 8.9098, 5.21604, 7.86637, 0.538704, 4.50824, -0.46126, 2.45032, 2.21265, -2.20937, 0.228519, -4.50824, 0.46126, -8.87299, 2.29559, 1.74811, -1.74763}, {-1.79007, 1.78742, -1.79054, 3.64724, -0.373167, 0.376681, 5.57152, 4.24275, 0.575417, 0, 0, 1.60567, -2.29559, -1.74811, 1.74763, -16.8016, 3.70204, -1.73524, 11.6685, -7.61093, 9.61249, 2.21265, -2.20937, 0.228519, -4.50824, 0.46126, -2.45032, 2.29559, 1.74811, -8.1703}, {-1.79007, 1.78742, -1.79054, 3.64724, -0.373167, 0.376681, -1.85717, -1.41425, -0.191806, 0, 0, -4.817, -2.29559, -1.74811, 1.74763, -2.21265, 2.20937, -0.228519, 4.50824, -0.46126, 2.45032, 9.37293, -9.35904, 7.39069, -19.0972, 1.95393, -3.95704, 9.72428, 7.40511, -0.980408}, {-3.03198, 1.78237, 1.1993, 0.5032, 0.50364, 1.82018, -0.838801, -0.839534, 0.331788, -0.67506, 0.930018, -1.7522, -3.88404, -1.90272, -9.03645, 0.414826, 0.415188, -2.65998, 3.14277, 5.13024, -1.24312, 2.28541, -4.13526, 9.66879, 0.212431, -1.7721, -0.084027, 1.87124, -0.111844, 1.75573}, {1.01066, -0.594124, -0.399767, -1.5096, -1.51092, -5.46054, -0.838801, -0.839534, 0.331788, -0.67506, 0.930018, -1.7522, -5.91388, 2.48834, -0.156659, 3.77003, 3.77333, -3.98713, -0.212431, 1.7721, 0.084027, -0.414826, -0.415188, 2.65998, 2.91267, -5.49217, 6.92478, 1.87124, -0.111844, 1.75573}, {1.01066, -0.594124, -0.399767, 0.5032, 0.50364, 1.82018, 2.5164, 2.5186, -0.995364, -0.67506, 0.930018, -1.7522, -1.87124, 0.111844, -1.75573, -1.59797, -1.59937, -9.9407, -4.25508, 4.14859, 1.6831, -0.414826, -0.415188, 2.65998, 0.212431, -1.7721, -0.084027, 4.57148, -3.83192, 8.76454}, {1.01066, -0.594124, -0.399767, 0.5032, 0.50364, 1.82018, -0.838801, -0.839534, 0.331788, 2.02518, -2.79005, 5.25661, -1.87124, 0.111844, -1.75573, 0.414826, 0.415188, -2.65998, -0.212431, 1.7721, 0.084027, -4.45747, 1.96131, 4.25905, -1.80037, -3.78666, -7.36475, 5.22644, 3.24629, 0.428576}, {-4.62937, 1.83228, -4.62937, 0.198723, 1.94057, 2.54185, -1.74185, -1.32981, -1.74185, 0, 0, -2.34313, -2.94793, -9.40601, -15.2167, 1.90741, -0.754941, -0.988857, 7.21302, 7.71791, 7.21302, -1.90741, 0.754941, 10.3614, -0.245635, -2.39867, -0.245635, 2.15304, 1.64373, 5.0493}, {1.54312, -0.61076, 1.54312, -0.596168, -5.82171, -7.62554, -1.74185, -1.32981, -1.74185, 0, 0, -2.34313, -8.32553, 0.799305, -11.2218, 8.87479, 4.5643, 5.97853, 0.245635, 2.39867, 0.245635, -1.90741, 0.754941, 0.988857, -0.245635, -2.39867, 9.12687, 2.15304, 1.64373, 5.0493}, {1.54312, -0.61076, 1.54312, 0.198723, 1.94057, 2.54185, 5.22554, 3.98943, 5.22554, 0, 0, -2.34313, -2.15304, -1.64373, -5.0493, 1.11252, -8.51722, -11.1562, -5.92686, 4.84171, -5.92686, -1.90741, 0.754941, 0.988857, -0.245635, -2.39867, -0.245635, 2.15304, 1.64373, 14.4218}, {1.54312, -0.61076, 1.54312, 0.198723, 1.94057, 2.54185, -1.74185, -1.32981, -1.74185, 0, 0, 7.02938, -2.15304, -1.64373, -5.0493, 1.90741, -0.754941, -0.988857, 0.245635, 2.39867, 0.245635, -8.0799, 3.19798, -5.18364, -1.04052, -10.1609, -10.413, 9.12042, 6.96297, 12.0167}, {-4.33994, 0.458772, -1.71772, 0, 1.39654, 0, -1.44665, -0.27723, 1.44665, 1.76979e-12, -0.966385, -2.01922, -1.78815, -7.12335, -0.707741, 1.78815, -1.38354, -1.78815, 5.78659, 1.64062, -8.28248, -1.78815, 5.24908, 9.86504, -2.18758e-12, -0.531699, 2.4959, 1.78815, 1.53719, 0.707741}, {1.44665, -0.152924, 0.572575, 1.50464e-15, -4.18962, 4.79586e-15, -1.44665, -0.27723, 1.44665, 1.77122e-12, -0.966385, -2.01922, -7.57474, -0.925496, -2.99804, 7.57474, -0.274623, -7.57474, 2.18837e-12, 0.531699, -2.4959, -1.78815, 1.38354, 1.78815, -9.27361e-12, 3.33384, 10.5728, 1.78815, 1.53719, 0.707741}, {1.44665, -0.152924, 0.572575, 2.45632e-27, 1.39654, -2.80022e-15, 4.33994, 0.831689, -4.33994, 1.77124e-12, -0.966385, -2.01922, -1.78815, -1.53719, -0.707741, 1.78815, -6.9697, -1.78815, -5.78659, 1.1434, -4.7862, -1.78815, 1.38354, 1.78815, -2.18937e-12, -0.531699, 2.4959, 1.78815, 5.40273, 8.78463}, {1.44665, -0.152924, 0.572575, 0, 1.39654, 0, -1.44665, -0.27723, 1.44665, -5.31262e-12, 2.89915, 6.05767, -1.78815, -1.53719, -0.707741, 1.78815, -1.38354, -1.78815, 2.18856e-12, 0.531699, -2.4959, -7.57474, 1.99524, -0.502145, -2.18892e-12, -6.11785, 2.4959, 7.57474, 2.64611, -5.07885}, {3.99411, 0.408657, -5.22602, 1.94285, 0.198782, -0.198956, -0.611477, 1.5417, -1.54305, 0, -1.60427, 0, -8.52722, -0.872462, -1.11149, -1.64567, -2.15136, 2.15324, 4.8474, -7.90408, 5.92628, 1.64567, 8.56842, -2.15324, -2.40149, 1.73727, 0.245923, 0.755828, 0.0773324, 1.90731}, {-1.33137, -0.136219, 1.74201, -5.82855, -0.596347, 0.596868, -0.611477, 1.5417, -1.54305, 0, -1.60427, 0, 4.56966, 0.467544, -8.87534, 0.800244, -8.31817, 8.32544, 2.40149, -1.73727, -0.245923, 1.64567, 2.15136, -2.15324, -2.40149, 8.15434, 0.245923, 0.755828, 0.0773324, 1.90731}, {-1.33137, -0.136219, 1.74201, 1.94285, 0.198782, -0.198956, 1.83443, -4.62511, 4.62915, 0, -1.60427, 0, -0.755828, -0.0773324, -1.90731, -9.41706, -2.94649, 2.94906, 7.72698, -1.1924, -7.21395, 1.64567, 2.15136, -2.15324, -2.40149, 1.73727, 0.245923, 0.755828, 6.4944, 1.90731}, {-1.33137, -0.136219, 1.74201, 1.94285, 0.198782, -0.198956, -0.611477, 1.5417, -1.54305, 0, 4.8128, 0, -0.755828, -0.0773324, -1.90731, -1.64567, -2.15136, 2.15324, 2.40149, -1.73727, -0.245923, 6.97115, 2.69623, -9.12126, -10.1729, 0.942144, 1.04175, 3.20174, -6.08948, 8.07952}, {1.7133, -2.45292, -4.3293, -1.44292, 0.0459567, -1.45561, 0, -1.33263, 0, 2.01402, 0.469033, 0.0125109, 8.26116, -1.25129, 5.83791, 1.78355, 1.59041, 1.79923, 0.70592, 5.96708, -1.78377, -9.83965, -3.46655, -1.84928, -0.70592, -0.636563, 1.78377, -2.48947, 1.06746, -0.0154644}, {-0.571101, 0.817639, 1.4431, 4.32877, -0.13787, 4.36683, 0, -1.33263, 0, 2.01402, 0.469033, 0.0125109, 4.77387, -4.33802, -5.75693, 1.78355, 6.92093, 1.79923, 0.70592, 0.636563, -1.78377, -1.78355, -1.59041, -1.79923, -8.76202, -2.5127, 1.73373, -2.48947, 1.06746, -0.0154644}, {-0.571101, 0.817639, 1.4431, -1.44292, 0.0459567, -1.45561, 0, 3.99789, 0, 2.01402, 0.469033, 0.0125109, 2.48947, -1.06746, 0.0154644, 7.55524, 1.40659, 7.62167, 2.99032, -2.63399, -7.55617, -1.78355, -1.59041, -1.79923, -0.70592, -0.636563, 1.78377, -10.5456, -0.808671, -0.0655081}, {-0.571101, 0.817639, 1.4431, -1.44292, 0.0459567, -1.45561, 0, -1.33263, 0, -6.04207, -1.4071, -0.0375328, 2.48947, -1.06746, 0.0154644, 1.78355, 1.59041, 1.79923, 0.70592, 0.636563, -1.78377, 0.500853, -4.86097, -7.57163, 5.06577, -0.82039, 7.60621, -2.48947, 6.39798, -0.0154644}, {7.61576, -5.82053, 0.598329, -1.54462, -0.610276, -1.54223, 1.74008, -1.3299, 1.74168, 2.34313, 0, 0, 11.2256, 0.797254, 8.32176, -0.241602, 2.39819, -0.246525, -5.97333, 4.56526, -8.87301, -9.1309, -2.39819, 0.246525, -0.987004, 0.754342, 1.9063, -5.04712, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, 4.63387, 1.83083, 4.6267, 1.74008, -1.3299, 1.74168, 2.34313, 7.73589e-16, -1.01311e-15, 15.2015, -9.40456, 2.9506, -7.20193, 7.7178, -7.21323, 0.987004, -0.754342, -1.9063, 0.241602, -2.39819, 0.246525, -10.3595, 0.754342, 1.9063, -5.04712, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, -1.54462, -0.610276, -1.54223, -5.22025, 3.9897, -5.22503, 2.34313, 0, 0, 5.04712, -1.64385, 2.15283, 5.93689, 4.83929, 5.92241, 11.1413, -8.51505, -1.10853, 0.241602, -2.39819, 0.246525, -0.987004, 0.754342, 1.9063, -14.4196, 1.64385, -2.15283}, {-2.53859, 1.94018, -0.199443, -1.54462, -0.610276, -1.54223, 1.74008, -1.3299, 1.74168, -7.02938, 0, 0, 5.04712, -1.64385, 2.15283, -0.241602, 2.39819, -0.246525, 0.987004, -0.754342, -1.9063, 10.3959, -10.1589, 1.0443, 5.19149, 3.19544, 8.07523, -12.0075, 6.96345, -9.11953}, {2.66454e-15, -8.88178e-15, -7.0244, 0.00253498, 1.78885, -0.00126659, -2.34566, -1.78885, -2.3402, 2.34313, 0, 0, -0.0132733, -9.36656, -2.88758, 2.89626, 3.10862e-15, 2.89421, 12.282, 9.36656, 9.35923, -12.2688, -3.10862e-15, -2.89421, -2.8994, -2.21115, 0.00156559, 0.00313341, 2.21115, 2.89265}, {-4.44089e-16, -2.81691e-15, 2.34147, -0.00760494, -5.36656, 0.00379978, -2.34566, -1.78885, -2.3402, 2.34313, 1.04056e-15, 1.36127e-15, -0.00313341, -2.21115, -12.2585, 12.2789, 7.15542, 12.255, 2.8994, 2.21115, -0.00156559, -2.89626, 2.22045e-15, -2.89421, -12.2719, -2.21115, 0.00156559, 0.00313341, 2.21115, 2.89265}, {-8.88178e-16, -1.9984e-15, 2.34147, 0.00253498, 1.78885, -0.00126659, 7.03698, 5.36656, 7.0206, 2.34313, 0, 0, -0.00313341, -2.21115, -2.89265, 2.88612, -7.15542, 2.89928, 2.8994, 2.21115, -9.36743, -2.89626, 2.66454e-15, -2.89421, -2.8994, -2.21115, 0.00156559, -9.36937, 2.21115, 2.89265}, {4.44089e-16, 0, 2.34147, 0.00253498, 1.78885, -0.00126659, -2.34566, -1.78885, -2.3402, -7.02938, 0, 0, -0.00313341, -2.21115, -2.89265, 2.89626, 0, 2.89421, 2.8994, 2.21115, -0.00156559, -2.89626, 0, -12.2601, -2.90954, -9.36656, 0.00663197, 9.38578, 9.36656, 12.2534}, {3.98943, -5.22554, 5.22554, -0.61076, -1.54312, 1.54312, 0, 2.34313, 0, 1.94057, -2.54185, 0.198723, 4.84171, 5.92686, -5.92686, 0.754941, -0.988857, -1.90741, 1.64373, -14.4218, 2.15304, -8.51722, 11.1562, 1.11252, -1.64373, 5.0493, -2.15304, -2.39867, 0.245635, -0.245635}, {-1.32981, 1.74185, -1.74185, 1.83228, 4.62937, -4.62937, -1.12881e-15, 2.34313, -1.15595e-16, 1.94057, -2.54185, 0.198723, 7.71791, -7.21302, 7.21302, 0.754941, -10.3614, -1.90741, 1.64373, -5.0493, 2.15304, -0.754941, 0.988857, 1.90741, -9.40601, 15.2167, -2.94793, -2.39867, 0.245635, -0.245635}, {-1.32981, 1.74185, -1.74185, -0.61076, -1.54312, 1.54312, 0, -7.02938, 0, 1.94057, -2.54185, 0.198723, 2.39867, -0.245635, 0.245635, 3.19798, 5.18364, -8.0799, 6.96297, -12.0167, 9.12042, -0.754941, 0.988857, 1.90741, -1.64373, 5.0493, -2.15304, -10.1609, 10.413, -1.04052}, {-1.32981, 1.74185, -1.74185, -0.61076, -1.54312, 1.54312, 0, 2.34313, 0, -5.82171, 7.62554, -0.596168, 2.39867, -0.245635, 0.245635, 0.754941, -0.988857, -1.90741, 1.64373, -5.0493, 2.15304, 4.5643, -5.97853, 8.87479, 0.799305, 11.2218, -8.32553, -2.39867, -9.12687, -0.245635}, {9.45441, 0, -1.77636e-15, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, 1.36261, -1.78885, -1.36261, 3.89543, 0, -16.5013, -2.21115, -2.21115, -1.68428, -5.47113, -9.36656, 9.36656, -3.23931, 9.36656, 7.13474, -1.68428, 2.21115, -2.21115, -3.89543, 0, 3.89543}, {-3.15147, 2.22045e-16, 2.22045e-16, 1.00042e-15, 8.3972e-15, -9.45441, 1.78885, 1.78885, -1.78885, 1.36261, -1.78885, -1.36261, 16.5013, 5.32907e-15, -3.89543, -9.36656, -9.36656, 5.47113, 1.68428, -2.21115, 2.21115, 2.21115, 2.21115, 1.68428, -7.13474, 9.36656, 3.23931, -3.89543, -3.10862e-15, 3.89543}, {-3.15147, 4.44089e-16, 6.66134e-16, 0, 0, 3.15147, -5.36656, -5.36656, 5.36656, 1.36261, -1.78885, -1.36261, 3.89543, -8.88178e-16, -3.89543, -2.21115, -2.21115, -14.2902, 14.2902, -2.21115, 2.21115, 2.21115, 2.21115, 1.68428, -1.68428, 2.21115, -2.21115, -9.34589, 7.15542, 9.34589}, {-3.15147, 0, 2.22045e-16, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, -4.08784, 5.36656, 4.08784, 3.89543, 0, -3.89543, -2.21115, -2.21115, -1.68428, 1.68428, -2.21115, 2.21115, 14.817, 2.21115, 1.68428, -1.68428, 2.21115, -14.817, -11.0508, -7.15542, 11.0508}, {0.908154, -0.908154, 3.90885, -0.830764, 0.830764, 0.830764, 1.29079, 0.314875, 0.314875, -0.157311, -1.44836, 0.157311, 4.72412, -4.72412, -2.7394, -0.568628, -1.41609, -1.41609, -6.3845, -2.02289, -0.0381727, 1.19787, 7.20951, 0.786843, 1.22133, 0.763387, -1.22133, -1.40106, 1.40106, -0.583654}, {-0.302718, 0.302718, -1.30295, 2.49229, -2.49229, -2.49229, 1.29079, 0.314875, 0.314875, -0.157311, -1.44836, 0.157311, 2.61193, -2.61193, 5.79545, -5.7318, -2.67559, -2.67559, -1.22133, -0.763387, 1.22133, 0.568628, 1.41609, 1.41609, 1.85057, 6.55681, -1.85057, -1.40106, 1.40106, -0.583654}, {-0.302718, 0.302718, -1.30295, -0.830764, 0.830764, 0.830764, -3.87238, -0.944625, -0.944625, -0.157311, -1.44836, 0.157311, 1.40106, -1.40106, 0.583654, 2.75443, -4.73914, -4.73914, -0.0104551, -1.97426, 6.43313, 0.568628, 1.41609, 1.41609, 1.22133, 0.763387, -1.22133, -0.771816, 7.19449, -1.2129}, {-0.302718, 0.302718, -1.30295, -0.830764, 0.830764, 0.830764, 1.29079, 0.314875, 0.314875, 0.471934, 4.34507, -0.471934, 1.40106, -1.40106, 0.583654, -0.568628, -1.41609, -1.41609, -1.22133, -0.763387, 1.22133, 1.7795, 0.205215, 6.62789, 4.54438, -2.55967, -4.54438, -6.56423, 0.14156, -1.84315}, {-2.30283, -5.06257, 2.51418, -1.077, -0.426271, -1.077, 0.0318939, 0.648138, 1.63756, 0.277498, -1.90939, 0.277498, 4.69044, 0.146092, 6.67515, 1.29182, -0.274242, -0.692891, -1.11582, -5.47959, -7.53849, -2.40182, 7.9118, -0.417103, 0.988241, 2.88704, 0.988241, -0.38243, 1.55899, -2.36714}, {0.767609, 1.68752, -0.838059, 3.23101, 1.27881, 3.23101, 0.0318939, 0.648138, 1.63756, 0.277498, -1.90939, 0.277498, -2.68801, -8.30908, 5.71938, 1.16425, -2.86679, -7.24314, -0.988241, -2.88704, -0.988241, -1.29182, 0.274242, 0.692891, -0.121753, 10.5246, -0.121753, -0.38243, 1.55899, -2.36714}, {0.767609, 1.68752, -0.838059, -1.077, -0.426271, -1.077, -0.0956818, -1.94441, -4.91269, 0.277498, -1.90939, 0.277498, 0.38243, -1.55899, 2.36714, 5.59983, 1.43084, 3.61512, -4.05868, -9.63713, 2.36399, -1.29182, 0.274242, 0.692891, 0.988241, 2.88704, 0.988241, -1.49242, 9.19655, -3.47714}, {0.767609, 1.68752, -0.838059, -1.077, -0.426271, -1.077, 0.0318939, 0.648138, 1.63756, -0.832495, 5.72817, -0.832495, 0.38243, -1.55899, 2.36714, 1.29182, -0.274242, -0.692891, -0.988241, -2.88704, -0.988241, -4.36226, -6.47585, 4.04513, 5.29625, 4.59212, 5.29625, -0.510006, -1.03356, -8.91739}, {-4.7272, -4.7272, -4.7272, -1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, 6.30294, -10.1984, 6.30294, 3.89543, 1.32716e-12, -1.3276e-12, 6.30294, 6.30294, -10.1984, -10.1984, 6.30294, 6.30294, 2.9643e-13, 3.03979e-13, 3.89543, 1.65001e-12, 3.89543, 1.64713e-12}, {1.57573, 1.57573, 1.57573, 4.7272, -4.7272, 4.7272, -1.57573, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -6.30294, -10.1984, -6.30294, 10.1984, 6.30294, -6.30294, -2.96874e-13, -3.01537e-13, -3.89543, -3.89543, -1.32644e-12, 1.32544e-12, -6.30294, 6.30294, 10.1984, 1.64713e-12, 3.89543, 1.65001e-12}, {1.57573, 1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 4.7272, 4.7272, -4.7272, 1.57573, -1.57573, -1.57573, -1.64579e-12, -3.89543, -1.64313e-12, 10.1984, -6.30294, 6.30294, -6.30294, -6.30294, -10.1984, -3.89543, -1.32711e-12, 1.32721e-12, 2.99982e-13, 3.06422e-13, 3.89543, -6.30294, 10.1984, 6.30294}, {1.57573, 1.57573, 1.57573, -1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -4.7272, 4.7272, 4.7272, -1.64313e-12, -3.89543, -1.64913e-12, 3.89543, 1.32694e-12, -1.32694e-12, -3.0087e-13, -2.9754e-13, -3.89543, -10.1984, -6.30294, -6.30294, 6.30294, -6.30294, 10.1984, 6.30294, 10.1984, -6.30294}, {-1.56775, 5.44381, 3.24545, 1.20899, 0.479095, 1.20825, -1.50445, -0.59618, 0.101437, -0.227124, 1.93169, -0.227868, -6.97629, -0.265605, -4.98928, 0.365209, 0.144724, -1.61886, 7.23144, 5.36461, 0.80607, 0.543287, -7.87147, 2.53034, -1.21365, -2.97989, -1.21182, 2.14034, -1.65078, 0.156278}, {0.522584, -1.8146, -1.08182, -3.62696, -1.43729, -3.62475, -1.50445, -0.59618, 0.101437, -0.227124, 1.93169, -0.227868, -4.23068, 8.90919, 4.171, 6.383, 2.52944, -2.02461, 1.21365, 2.97989, 1.21182, -0.365209, -0.144724, 1.61886, -0.305154, -10.7066, -0.300344, 2.14034, -1.65078, 0.156278}, {0.522584, -1.8146, -1.08182, 1.20899, 0.479095, 1.20825, 4.51334, 1.78854, -0.304311, -0.227124, 1.93169, -0.227868, -2.14034, 1.65078, -0.156278, -4.47074, -1.77166, -6.45186, -0.876686, 10.2383, 5.53909, -0.365209, -0.144724, 1.61886, -1.21365, -2.97989, -1.21182, 3.04884, -9.37752, 1.06775}, {0.522584, -1.8146, -1.08182, 1.20899, 0.479095, 1.20825, -1.50445, -0.59618, 0.101437, 0.681372, -5.79506, 0.683605, -2.14034, 1.65078, -0.156278, 0.365209, 0.144724, -1.61886, 1.21365, 2.97989, 1.21182, -2.45554, 7.11368, 5.94614, -6.0496, -4.89627, -6.04482, 8.15813, 0.733943, -0.24947}, {0.31567, 3.31084, -3.29586, 0.708828, -0.490803, -1.01172, 0.848249, 1.25814, 0.0940198, -1.45185, 0.336273, -0.18092, -3.58141, 3.93402, 3.93947, -1.92465, -0.948485, 1.13434, -4.31143, -5.22358, -1.85026, 7.73207, -0.396608, -0.41066, 0.91843, 0.191009, 1.47418, 0.746096, -1.97081, 0.107415}, {-0.105223, -1.10361, 1.09862, -2.12648, 1.47241, 3.03516, 0.848249, 1.25814, 0.0940198, -1.45185, 0.336273, -0.18092, -0.325203, 6.38527, -4.5019, -5.31765, -5.98106, 0.758261, -0.91843, -0.191009, -1.47418, 1.92465, 0.948485, -1.13434, 6.72585, -1.15408, 2.19787, 0.746096, -1.97081, 0.107415}, {-0.105223, -1.10361, 1.09862, 0.708828, -0.490803, -1.01172, -2.54475, -3.77443, -0.282059, -1.45185, 0.336273, -0.18092, -0.746096, 1.97081, -0.107415, -4.75996, 1.01473, 5.18122, -0.497537, 4.22345, -5.86867, 1.92465, 0.948485, -1.13434, 0.91843, 0.191009, 1.47418, 6.55351, -3.3159, 0.831095}, {-0.105223, -1.10361, 1.09862, 0.708828, -0.490803, -1.01172, 0.848249, 1.25814, 0.0940198, 4.35556, -1.00882, 0.54276, -0.746096, 1.97081, -0.107415, -1.92465, -0.948485, 1.13434, -0.91843, -0.191009, -1.47418, 2.34555, 5.36294, -5.52882, -1.91688, 2.15422, 5.52107, -2.6469, -7.00338, -0.268664}, {2.3172, 0.917451, -2.318, 1.00416, 1.78176, 0.599951, -0.431249, 0.464989, -1.17482, 0.199489, -1.94094, -0.197793, -4.30311, -8.95143, -4.09645, -0.708156, -2.77714, 0.710583, 3.21279, -2.0567, 5.1964, -0.0898, 10.5409, 0.0805874, -1.48779, 0.196748, -0.497096, 0.286472, 1.82437, 1.69665}, {-0.772399, -0.305817, 0.772666, -3.01248, -5.34529, -1.79985, -0.431249, 0.464989, -1.17482, 0.199489, -1.94094, -0.197793, 2.80312, -0.601104, -4.78731, 1.01684, -4.6371, 5.40988, 1.48779, -0.196748, 0.497096, 0.708156, 2.77714, -0.710583, -2.28575, 7.96049, 0.294074, 0.286472, 1.82437, 1.69665}, {-0.772399, -0.305817, 0.772666, 1.00416, 1.78176, 0.599951, 1.29375, -1.39497, 3.52447, 0.199489, -1.94094, -0.197793, -0.286472, -1.82437, -1.69665, -4.72479, -9.9042, -1.68922, 4.57739, 1.02652, -2.59357, 0.708156, 2.77714, -0.710583, -1.48779, 0.196748, -0.497096, -0.511484, 9.58812, 2.48782}, {-0.772399, -0.305817, 0.772666, 1.00416, 1.78176, 0.599951, -0.431249, 0.464989, -1.17482, -0.598467, 5.82281, 0.593378, -0.286472, -1.82437, -1.69665, -0.708156, -2.77714, 0.710583, 1.48779, -0.196748, 0.497096, 3.79775, 4.00041, -3.80125, -5.50443, -6.93031, -2.8969, 2.01147, -0.0355852, 6.39595}, {-9.63611, -0.184458, -9.63611, -0.833808, -0.834046, -2.43948, -1.57551, 1.57551, -1.57551, -0.802719, -0.802949, 0.802949, 0.39558, 4.29112, 8.80297, 2.97808, -0.916498, 4.96279, 4.27918, -8.32547, 4.27918, 0.232798, 4.12829, -8.17459, 2.02286, 2.02344, 2.02286, 2.93965, -0.954937, 0.954937}, {3.21204, 0.0614861, 3.21204, 2.50142, 2.50214, 7.31843, -1.57551, 1.57551, -1.57551, -0.802719, -0.802949, 0.802949, -15.7878, 0.708993, -13.8031, 9.28012, -7.21853, 11.2648, -2.02286, -2.02344, -2.02286, -2.97808, 0.916498, -4.96279, 5.23374, 5.23523, -1.18894, 2.93965, -0.954937, 0.954937}, {3.21204, 0.0614861, 3.21204, -0.833808, -0.834046, -2.43948, 4.72653, -4.72653, 4.72653, -0.802719, -0.802949, 0.802949, -2.93965, 0.954937, -0.954937, 6.31331, 2.41969, 14.7207, -14.871, -2.26938, -14.871, -2.97808, 0.916498, -4.96279, 2.02286, 2.02344, 2.02286, 6.15053, 2.25686, -2.25686}, {3.21204, 0.0614861, 3.21204, -0.833808, -0.834046, -2.43948, -1.57551, 1.57551, -1.57551, 2.40816, 2.40885, -2.40885, -2.93965, 0.954937, -0.954937, 2.97808, -0.916498, 4.96279, -2.02286, -2.02344, -2.02286, -15.8262, 0.670554, -17.8109, 5.35809, 5.35962, 11.7808, 9.24169, -7.25697, 7.25697}, {8.88178e-16, 4.44089e-15, -3.26126, 1.4431, -0.571101, 0.0717263, 0.0125109, 2.01402, -0.807596, -1.45561, -1.44292, -0.351216, -7.55617, 2.99032, -1.71928, -1.79923, -1.78355, 0.909586, -0.0655081, -10.5456, 2.88492, 7.62167, 7.55524, 0.495278, 0.0154644, 2.48947, 0.345468, 1.78377, -0.70592, 1.43237}, {-2.22045e-16, 6.66134e-16, 1.08709, -4.3293, 1.7133, -0.215179, 0.0125109, 2.01402, -0.807596, -1.45561, -1.44292, -0.351216, -1.78377, 0.70592, -5.78072, -1.84928, -9.83965, 4.13997, -0.0154644, -2.48947, -0.345468, 1.79923, 1.78355, -0.909586, 5.83791, 8.26116, 1.75033, 1.78377, -0.70592, 1.43237}, {-6.66134e-16, -2.22045e-16, 1.08709, 1.4431, -0.571101, 0.0717263, -0.0375328, -6.04207, 2.42279, -1.45561, -1.44292, -0.351216, -1.78377, 0.70592, -1.43237, -7.57163, 0.500853, 0.622681, -0.0154644, -2.48947, -4.69381, 1.79923, 1.78355, -0.909586, 0.0154644, 2.48947, 0.345468, 7.60621, 5.06577, 2.83723}, {0, 4.44089e-16, 1.08709, 1.4431, -0.571101, 0.0717263, 0.0125109, 2.01402, -0.807596, 4.36683, 4.32877, 1.05365, -1.78377, 0.70592, -1.43237, -1.79923, -1.78355, 0.909586, -0.0154644, -2.48947, -0.345468, 1.79923, 1.78355, -5.25793, -5.75693, 4.77387, 0.0585632, 1.73373, -8.76202, 4.66276}, {4.62915, 1.83443, 4.62633, 1.74201, -1.33137, 0.13686, 3.96359e-17, -3.87053e-16, 1.60497, -0.198956, 1.94285, -0.199718, -7.21395, 7.72698, 1.18954, -2.15324, 1.64567, -2.15302, 1.90731, 0.755828, -6.49756, 2.94906, -9.41706, 2.95189, -1.90731, -0.755828, 0.0776963, 0.245923, -2.40149, -1.73698}, {-1.54305, -0.611477, -1.54211, -5.22602, 3.99411, -0.41058, 1.18908e-16, -1.16116e-15, 1.60497, -0.198956, 1.94285, -0.199718, 5.92628, 4.8474, 7.90542, -2.15324, 1.64567, -8.57288, 1.90731, 0.755828, -0.0776963, 2.15324, -1.64567, 2.15302, -1.11149, -8.52722, 0.876567, 0.245923, -2.40149, -1.73698}, {-1.54305, -0.611477, -1.54211, 1.74201, -1.33137, 0.13686, 0, 0, -4.8149, -0.198956, 1.94285, -0.199718, -0.245923, 2.40149, 1.73698, -9.12126, 6.97115, -2.70046, 8.07952, 3.20174, 6.09074, 2.15324, -1.64567, 2.15302, -1.90731, -0.755828, 0.0776963, 1.04175, -10.1729, -0.938112}, {-1.54305, -0.611477, -1.54211, 1.74201, -1.33137, 0.13686, -1.18908e-16, 1.16116e-15, 1.60497, 0.596868, -5.82855, 0.599153, -0.245923, 2.40149, 1.73698, -2.15324, 1.64567, -2.15302, 1.90731, 0.755828, -0.0776963, 8.32544, 0.800244, 8.32145, -8.87534, 4.56966, -0.469744, 0.245923, -2.40149, -8.15685}, {4.35065, -1.72407, 1.44786, 0, 0, 1.17684, 1.43763, 1.45199, 0.197849, 0.0125895, -2.02668, -0.892072, 1.79257, -0.710355, -5.56548, -1.77701, -1.79476, -1.69921, -5.73495, -8.31307, -0.439401, 1.72665, 9.90148, 5.2675, -0.0155615, 2.50511, -0.351997, -1.79257, 0.710355, 0.858106}, {-1.45022, 0.57469, -0.482621, -1.29313e-15, 4.05633e-15, -3.53053, 1.43763, 1.45199, 0.197849, 0.0125895, -2.02668, -0.892072, 7.59343, -3.00911, 1.07238, -7.52752, -7.60272, -2.49061, 0.0155615, -2.50511, 0.351997, 1.77701, 1.79476, 1.69921, -0.0659197, 10.6118, 3.21629, -1.79257, 0.710355, 0.858106}, {-1.45022, 0.57469, -0.482621, 0, 0, 1.17684, -4.31288, -4.35597, -0.593548, 0.0125895, -2.02668, -0.892072, 1.79257, -0.710355, -0.858106, -1.77701, -1.79476, -6.40659, 5.81643, -4.80387, 2.28248, 1.77701, 1.79476, 1.69921, -0.0155615, 2.50511, -0.351997, -1.84292, 8.81707, 4.42639}, {-1.45022, 0.57469, -0.482621, 0, 0, 1.17684, 1.43763, 1.45199, 0.197849, -0.0377686, 6.08004, 2.67622, 1.79257, -0.710355, -0.858106, -1.77701, -1.79476, -1.69921, 0.0155615, -2.50511, 0.351997, 7.57787, -0.504, 3.6297, -0.0155615, 2.50511, -5.05937, -7.54308, -5.09761, 0.0667081}, {2.31688, 0.916898, -2.31818, 0.572147, 2.2454, -0.575329, -1.46447, -2.59853, -0.874972, 1.66462, 0.658766, 0.677573, -2.04119, -11.3793, 2.05732, 1.10297, 0.436497, 1.79267, 8.62268, 13.9839, 3.62627, -7.76145, -3.07156, -4.50296, -2.76479, -3.58975, -0.126381, -0.247396, 2.39768, 0.243998}, {-0.772295, -0.305633, 0.772728, -1.71644, -6.7362, 1.72599, -1.46447, -2.59853, -0.874972, 1.66462, 0.658766, 0.677573, 3.33658, -1.17515, -3.33491, 6.96086, 10.8306, 5.29256, 2.76479, 3.58975, 0.126381, -1.10297, -0.436497, -1.79267, -9.42327, -6.22481, -2.83667, -0.247396, 2.39768, 0.243998}, {-0.772295, -0.305633, 0.772728, 0.572147, 2.2454, -0.575329, 4.39341, 7.7956, 2.62492, 1.66462, 0.658766, 0.677573, 0.247396, -2.39768, -0.243998, -1.18562, -8.5451, 4.09399, 5.85397, 4.81228, -2.96453, -1.10297, -0.436497, -1.79267, -2.76479, -3.58975, -0.126381, -6.90587, -0.237381, -2.46629}, {-0.772295, -0.305633, 0.772728, 0.572147, 2.2454, -0.575329, -1.46447, -2.59853, -0.874972, -4.99386, -1.9763, -2.03272, 0.247396, -2.39768, -0.243998, 1.10297, 0.436497, 1.79267, 2.76479, 3.58975, 0.126381, 1.98621, 0.786034, -4.88358, -5.05338, -12.5713, 2.17494, 5.61049, 12.7918, 3.74389}, {-7.02177, -5.36656, 7.02938, 0.00253498, -1.78885, 1.2111e-11, -2.34313, 0, 0, 0, 0, 2.34313, -2.9064, 7.15542, 2.89626, 2.89313, 2.21115, -1.49701e-11, 9.37564, -2.21115, 2.89626, -2.89313, -2.21115, -9.3725, -0.00313341, 2.21115, -2.89626, 2.89626, 0, -2.89626}, {2.34059, 1.78885, -2.34313, -0.00760494, 5.36656, -5.47978e-11, -2.34313, 0, 0, 1.36297e-15, 0, 2.34313, -12.2586, -7.15542, 12.2688, 12.2656, 2.21115, -2.25779e-11, 0.00313341, -2.21115, 2.89626, -2.89313, -2.21115, 2.25785e-11, -0.00313341, 2.21115, -12.2688, 2.89626, 0, -2.89626}, {2.34059, 1.78885, -2.34313, 0.00253498, -1.78885, 1.21079e-11, 7.02938, 0, 0, 0, 0, 2.34313, -2.89626, -4.44089e-16, 2.89626, 2.88299, 9.36656, -6.33979e-11, -9.35923, -9.36656, 12.2688, -2.89313, -2.21115, 1.49668e-11, -0.00313341, 2.21115, -2.89626, 2.89626, 0, -12.2688}, {2.34059, 1.78885, -2.34313, 0.00253498, -1.78885, 1.2111e-11, -2.34313, 0, 0, 0, 0, -7.02938, -2.89626, -4.44089e-16, 2.89626, 2.89313, 2.21115, -1.49701e-11, 0.00313341, -2.21115, 2.89626, -12.2555, -9.36656, 9.3725, -0.0132733, 9.36656, -2.89626, 12.2688, 0, -2.89626}, {0.0377686, 6.08004, 3.1372, 4.64343e-16, 1.84009e-16, 1.28977, -1.43763, 1.45199, -0.146251, 1.45022, 0.57469, -0.0977806, 0.0155615, 2.50511, -5.4607, 1.77701, -1.79476, -1.41346, 7.54308, -5.09761, 2.05838, -7.57787, -0.504, 1.80458, -1.79257, -0.710355, -1.47337, -0.0155615, -2.50511, 0.301639}, {-0.0125895, -2.02668, -1.04573, -2.77397e-15, 8.42705e-16, -3.8693, -1.43763, 1.45199, -0.146251, 1.45022, 0.57469, -0.0977806, 0.0659197, 10.6118, 3.8813, 7.52752, -7.60272, -0.82846, 1.79257, 0.710355, 1.47337, -1.77701, 1.79476, 1.41346, -7.59343, -3.00911, -1.08225, -0.0155615, -2.50511, 0.301639}, {-0.0125895, -2.02668, -1.04573, 0, 0, 1.28977, 4.31288, -4.35597, 0.438752, 1.45022, 0.57469, -0.0977806, 0.0155615, 2.50511, -0.301639, 1.77701, -1.79476, -6.57252, 1.84292, 8.81707, 5.65631, -1.77701, 1.79476, 1.41346, -1.79257, -0.710355, -1.47337, -5.81643, -4.80387, 0.692761}, {-0.0125895, -2.02668, -1.04573, 4.64343e-16, 1.84009e-16, 1.28977, -1.43763, 1.45199, -0.146251, -4.35065, -1.72407, 0.293342, 0.0155615, 2.50511, -0.301639, 1.77701, -1.79476, -1.41346, 1.79257, 0.710355, 1.47337, -1.72665, 9.90148, 5.5964, -1.79257, -0.710355, -6.63244, 5.73495, -8.31307, 0.886641}, {-4.7272, -4.7272, 4.7272, 1.57573, -1.57573, 1.57573, -1.57596, -1.57551, -1.57551, -1.57551, 1.57551, 1.57551, -10.1984, 6.30294, -6.30294, 0.000278382, 3.89515, -0.000278382, 6.30412, 6.30176, 10.1972, 6.30176, -10.1972, -6.30176, -0.000278382, 0.000278382, -3.89515, 3.89543, -9.10383e-15, 9.10383e-15}, {1.57573, 1.57573, -1.57573, -4.7272, 4.7272, -4.7272, -1.57596, -1.57551, -1.57551, -1.57551, 1.57551, 1.57551, -10.1984, -6.30294, 6.30294, 6.30412, 10.1972, 6.30176, 0.000278382, -0.000278382, 3.89515, -0.000278382, -3.89515, 0.000278382, 6.30176, -6.30176, -10.1972, 3.89543, -9.10383e-15, 9.10383e-15}, {1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 1.57573, 4.72788, 4.72653, 4.72653, -1.57551, 1.57551, 1.57551, -3.89543, 2.66454e-15, -1.44329e-14, -6.30266, 10.1981, -6.30322, -6.30266, -6.30322, 10.1981, -0.000278382, -3.89515, 0.000278382, -0.000278382, 0.000278382, -3.89515, 10.1975, -6.30204, -6.30204}, {1.57573, 1.57573, -1.57573, 1.57573, -1.57573, 1.57573, -1.57596, -1.57551, -1.57551, 4.72653, -4.72653, -4.72653, -3.89543, 1.02141e-14, -6.66134e-16, 0.000278382, 3.89515, -0.000278382, 0.000278382, -0.000278382, 3.89515, -6.30322, -10.1981, 6.30322, -6.30322, 6.30322, -10.1981, 10.1993, 6.30204, 6.30204}, {1.83228, 4.63528, 4.62937, 1.94057, -2.54509, -0.198723, -1.32981, 1.74407, 1.74185, 0, 2.34612, 0, -9.40601, 15.2361, 2.94793, -0.754941, 0.990119, -1.90741, 7.71791, -7.22223, -7.21302, 0.754941, -10.3746, 1.90741, -2.39867, 0.245948, 0.245635, 1.64373, -5.05575, -2.15304}, {-0.61076, -1.54509, -1.54312, -5.82171, 7.63528, 0.596168, -1.32981, 1.74407, 1.74185, 7.74523e-16, 2.34612, -1.01451e-15, 0.799305, 11.2361, 8.32553, 4.5643, -5.98616, -8.87479, 2.39867, -0.245948, -0.245635, 0.754941, -0.990119, 1.90741, -2.39867, -9.13852, 0.245635, 1.64373, -5.05575, -2.15304}, {-0.61076, -1.54509, -1.54312, 1.94057, -2.54509, -0.198723, 3.98943, -5.23221, -5.22554, 0, 2.34612, 0, -1.64373, 5.05575, 2.15304, -8.51722, 11.1705, -1.11252, 4.84171, 5.93443, 5.92686, 0.754941, -0.990119, 1.90741, -2.39867, 0.245948, 0.245635, 1.64373, -14.4402, -2.15304}, {-0.61076, -1.54509, -1.54312, 1.94057, -2.54509, -0.198723, -1.32981, 1.74407, 1.74185, 0, -7.03835, 0, -1.64373, 5.05575, 2.15304, -0.754941, 0.990119, -1.90741, 2.39867, -0.245948, -0.245635, 3.19798, 5.19026, 8.0799, -10.1609, 10.4263, 1.04052, 6.96297, -12.032, -9.12042}, {-1.42344, 3.96091, -1.43084, -1.98584, -0.354449, 0.357788, 0.9893, 0.397365, -1.35371, 0.52206, 1.27739, 0.518977, 9.81149, 3.4879, -2.46294, 1.23179, -0.0530468, 1.23103, -5.76653, -0.448647, 6.49858, -3.32003, -5.0565, -3.30694, 1.80933, -1.14081, -1.08374, -1.86814, -2.07011, 1.03179}, {0.474478, -1.3203, 0.476947, 5.95751, 1.06335, -1.07336, 0.9893, 0.397365, -1.35371, 0.52206, 1.27739, 0.518977, -0.029771, 7.35132, -2.93958, -2.72541, -1.64251, 6.64587, -1.80933, 1.14081, 1.08374, -1.23179, 0.0530468, -1.23103, -0.278909, -6.25036, -3.15965, -1.86814, -2.07011, 1.03179}, {0.474478, -1.3203, 0.476947, -1.98584, -0.354449, 0.357788, -2.9679, -1.1921, 4.06113, 0.52206, 1.27739, 0.518977, 1.86814, 2.07011, -1.03179, 9.17514, 1.36475, -0.200121, -3.70724, 6.42202, -0.824048, -1.23179, 0.0530468, -1.23103, 1.80933, -1.14081, -1.08374, -3.95638, -7.17965, -1.04412}, {0.474478, -1.3203, 0.476947, -1.98584, -0.354449, 0.357788, 0.9893, 0.397365, -1.35371, -1.56618, -3.83216, -1.55693, 1.86814, 2.07011, -1.03179, 1.23179, -0.0530468, 1.23103, -1.80933, 1.14081, 1.08374, -3.1297, 5.33426, -3.13882, 9.75268, 0.276984, -2.51489, -5.82534, -3.65957, 6.44663}, {5.36656, 5.36656, -5.36656, 1.41539, 1.41492, 1.85814, 0, 3.15102, 0, 0.373467, -2.77708, -3.64699, -5.19992, -5.19747, -11.9405, -1.74951, -5.64381, -2.29678, 2.21115, -14.2878, -2.21115, 0.255645, 16.7521, 16.8847, -2.21115, 1.68373, 2.21115, -0.461631, -0.462209, 4.50793}, {-1.78885, -1.78885, 1.78885, -4.24616, -4.24476, -5.57441, -2.92145e-16, 3.15102, 2.85286e-15, 0.373467, -2.77708, -3.64699, 7.61705, 7.61763, -11.6633, -1.74951, -18.2479, -2.29678, 2.21115, -1.68373, -2.21115, 1.74951, 5.64381, 2.29678, -3.70501, 12.7921, 16.7991, -0.461631, -0.462209, 4.50793}, {-1.78885, -1.78885, 1.78885, 1.41539, 1.41492, 1.85814, 0, -9.45305, 0, 0.373467, -2.77708, -3.64699, 0.461631, 0.462209, -4.50793, -7.41106, -11.3035, -9.72932, 9.36656, 5.47169, -9.36656, 1.74951, 5.64381, 2.29678, -2.21115, 1.68373, 2.21115, -1.9555, 10.6461, 19.0959}, {-1.78885, -1.78885, 1.78885, 1.41539, 1.41492, 1.85814, 0, 3.15102, 0, -1.1204, 8.33125, 10.941, 0.461631, 0.462209, -4.50793, -1.74951, -5.64381, -2.29678, 2.21115, -1.68373, -2.21115, 8.90493, 12.7992, -4.85864, -7.87269, -3.97595, -5.2214, -0.461631, -13.0663, 4.50793}, {-4.34476, -0.77549, 0.782793, -0.00873736, -1.40655, 0.564008, -1.44688, -0.0374651, -0.914786, 0.00736434, 1.18552, 0.611709, -1.74439, 7.04528, -2.63065, 1.79924, 1.7849, 0.433585, 5.78582, -0.123349, 5.11241, -1.8287, -6.52698, -2.88042, 0.00169715, 0.27321, -1.45327, 1.77934, -1.41907, 0.374623}, {1.44825, 0.258497, -0.260931, 0.0262121, 4.21965, -1.69202, -1.44688, -0.0374651, -0.914786, 0.00736434, 1.18552, 0.611709, -7.57235, 0.385087, 0.669101, 7.58676, 1.93476, 4.09273, -0.00169715, -0.27321, 1.45327, -1.79924, -1.7849, -0.433585, -0.0277602, -4.46887, -3.9001, 1.77934, -1.41907, 0.374623}, {1.44825, 0.258497, -0.260931, -0.00873736, -1.40655, 0.564008, 4.34064, 0.112395, 2.74436, 0.00736434, 1.18552, 0.611709, -1.77934, 1.41907, -0.374623, 1.83419, 7.4111, -1.82245, -5.79471, -1.3072, 2.49699, -1.79924, -1.7849, -0.433585, 0.00169715, 0.27321, -1.45327, 1.74988, -6.16115, -2.07221}, {1.44825, 0.258497, -0.260931, -0.00873736, -1.40655, 0.564008, -1.44688, -0.0374651, -0.914786, -0.022093, -3.55656, -1.83513, -1.77934, 1.41907, -0.374623, 1.79924, 1.7849, 0.433585, -0.00169715, -0.27321, 1.45327, -7.59225, -2.81889, 0.610139, 0.0366466, 5.89941, -3.7093, 7.56686, -1.26921, 4.03377}, {-4.817, -2.66454e-15, -5.32907e-15, -1.78885, -1.78885, 1.78885, 0.373353, 0.374783, -3.64588, -0.190167, 1.41407, 1.85702, 7.38185, 9.36656, -9.36656, 1.74966, 1.74789, 2.29541, -3.93962, -1.96239, 19.0901, -0.988987, -7.40418, -9.72349, 2.4462, 0.463257, -4.50655, -0.226431, -2.21115, 2.21115}, {1.60567, 6.66134e-16, 2.66454e-15, 5.36656, 5.36656, -5.36656, 0.373353, 0.374783, -3.64588, -0.190167, 1.41407, 1.85702, -6.19624, 2.21115, -2.21115, 0.256242, 0.248757, 16.8789, -2.4462, -0.463257, 4.50655, -1.74966, -1.74789, -2.29541, 3.20687, -5.19303, -11.9346, -0.226431, -2.21115, 2.21115}, {1.60567, 0, 0, -1.78885, -1.78885, 1.78885, -1.12006, -1.12435, 10.9376, -0.190167, 1.41407, 1.85702, 0.226431, 2.21115, -2.21115, 8.90507, 8.90331, -4.86001, -8.86888, -0.463257, 4.50655, -1.74966, -1.74789, -2.29541, 2.4462, 0.463257, -4.50655, 0.534237, -7.86743, -5.21694}, {1.60567, 2.22045e-16, 1.11022e-15, -1.78885, -1.78885, 1.78885, 0.373353, 0.374783, -3.64588, 0.570501, -4.24221, -5.57107, 0.226431, 2.21115, -2.21115, 1.74966, 1.74789, 2.29541, -2.4462, -0.463257, 4.50655, -8.17233, -1.74789, -2.29541, 9.60162, 7.61867, -11.662, -1.71984, -3.71028, 16.7947}, {-5.36225, -5.36694, -5.37021, 0, -1.60567, 0, -0.373167, -0.373493, -3.64724, -1.41425, 0.190182, 1.85717, -2.20937, 6.19609, -2.21265, 0.46126, 2.44638, 4.50824, -0.25544, -0.255663, 16.8846, 5.19574, -3.20711, -11.9369, 1.74811, 1.74964, -2.29559, 2.20937, 0.226585, 2.21265}, {1.78742, 1.78898, 1.79007, 0, 4.817, 0, -0.373167, -0.373493, -3.64724, -1.41425, 0.190182, 1.85717, -9.35904, -7.3825, -9.37293, 1.95393, 3.94035, 19.0972, -1.74811, -1.74964, 2.29559, -0.46126, -2.44638, -4.50824, 7.40511, 0.988907, -9.72428, 2.20937, 0.226585, 2.21265}, {1.78742, 1.78898, 1.79007, 0, -1.60567, 0, 1.1195, 1.12048, 10.9417, -1.41425, 0.190182, 1.85717, -2.20937, -0.226585, -2.21265, 0.46126, 8.86905, 4.50824, -8.89778, -8.90555, -4.86469, -0.46126, -2.44638, -4.50824, 1.74811, 1.74964, -2.29559, 7.86637, -0.534145, -5.21604}, {1.78742, 1.78898, 1.79007, 0, -1.60567, 0, -0.373167, -0.373493, -3.64724, 4.24275, -0.570547, -5.57152, -2.20937, -0.226585, -2.21265, 0.46126, 2.44638, 4.50824, -1.74811, -1.74964, 2.29559, -7.61093, -9.60229, -11.6685, 1.74811, 8.17231, -2.29559, 3.70204, 1.72056, 16.8016}, {-0.829936, -0.831314, 3.98569, 1.1323, 1.13131, 1.13131, 0.168871, -1.43624, 0.169424, -1.57782, 0.027827, 0.027827, -6.27076, -6.26615, -4.28143, -1.60834, 0.376916, -1.6078, -1.22617, 7.17775, 0.755077, 7.9196, -0.488224, 1.49649, 0.550688, -1.43277, -1.43277, 1.74155, 1.7409, -0.243816}, {0.276645, 0.277105, -1.32856, -3.3969, -3.39394, -3.39394, 0.168871, -1.43624, 0.169424, -1.57782, 0.027827, 0.027827, -2.84813, -2.84932, 5.55807, -2.28382, 6.12189, -2.2855, -0.550688, 1.43277, 1.43277, 1.60834, -0.376916, 1.6078, 6.86195, -1.54408, -1.54408, 1.74155, 1.7409, -0.243816}, {0.276645, 0.277105, -1.32856, 1.1323, 1.13131, 1.13131, -0.506612, 4.30873, -0.508273, -1.57782, 0.027827, 0.027827, -1.74155, -1.7409, 0.243816, -6.13754, -4.14833, -6.13305, -1.65727, 0.324356, 6.74703, 1.60834, -0.376916, 1.6078, 0.550688, -1.43277, -1.43277, 8.05282, 1.62959, -0.355124}, {0.276645, 0.277105, -1.32856, 1.1323, 1.13131, 1.13131, 0.168871, -1.43624, 0.169424, 4.73345, -0.0834809, -0.0834809, -1.74155, -1.7409, 0.243816, -1.60834, 0.376916, -1.6078, -0.550688, 1.43277, 1.43277, 0.501756, -1.48534, 6.92205, -3.97852, -5.95802, -5.95802, 1.06607, 7.48587, -0.921513}, {-8.33162, 1.1204, 10.941, -1.41498, -1.41539, 1.85814, -3.15057, 0, 0, 1.78834, 1.78885, 1.78885, 3.97613, 7.87269, -5.2214, 5.64333, 1.74951, -2.29678, 13.0638, 0.461631, 4.50793, -12.7967, -8.90493, -4.85864, -0.461499, -0.461631, -4.50793, 1.6838, -2.21115, -2.21115}, {2.77721, -0.373467, -3.64699, 4.24495, 4.24616, -5.57441, -3.15057, 0, 0, 1.78834, 1.78885, 1.78885, -12.7926, 3.70501, 16.7991, 18.2456, 1.74951, -2.29678, 0.461499, 0.461631, 4.50793, -5.64333, -1.74951, 2.29678, -7.61487, -7.61705, -11.6633, 1.6838, -2.21115, -2.21115}, {2.77721, -0.373467, -3.64699, -1.41498, -1.41539, 1.85814, 9.4517, 0, 0, 1.78834, 1.78885, 1.78885, -1.6838, 2.21115, 2.21115, 11.3033, 7.41106, -9.72932, -10.6473, 1.9555, 19.0959, -5.64333, -1.74951, 2.29678, -0.461499, -0.461631, -4.50793, -5.46957, -9.36656, -9.36656}, {2.77721, -0.373467, -3.64699, -1.41498, -1.41539, 1.85814, -3.15057, 0, 0, -5.36503, -5.36656, -5.36656, -1.6838, 2.21115, 2.21115, 5.64333, 1.74951, -2.29678, 0.461499, 0.461631, 4.50793, -16.7522, -0.255645, 16.8847, 5.19843, 5.19992, -11.9405, 14.2861, -2.21115, -2.21115}, {-3.98391, -5.22497, -0.407969, -1.83214e-15, -1.4677e-15, 1.60567, 0.61239, -1.54296, -1.54296, -1.94036, -0.198701, -0.198701, -1.64146, -2.15281, -8.57548, -0.756955, 1.9072, -0.0775154, -4.84797, 5.92622, 7.91093, 8.51839, -1.1124, 0.87232, 2.39842, 0.245608, -1.73911, 1.64146, 2.15281, 2.15281}, {1.32797, 1.74166, 0.13599, 3.05267e-15, -1.60751e-15, -4.817, 0.61239, -1.54296, -1.54296, -1.94036, -0.198701, -0.198701, -6.95334, -9.11944, -2.69677, -3.20651, 8.07903, 6.09431, -2.39842, -0.245608, 1.73911, 0.756955, -1.9072, 0.0775154, 10.1599, 1.04041, -0.944303, 1.64146, 2.15281, 2.15281}, {1.32797, 1.74166, 0.13599, 0, 0, 1.60567, -1.83717, 4.62887, 4.62887, -1.94036, -0.198701, -0.198701, -1.64146, -2.15281, -2.15281, -0.756955, 1.9072, -6.50019, -7.71029, -7.21224, 1.19515, 0.756955, -1.9072, 0.0775154, 2.39842, 0.245608, -1.73911, 9.4029, 2.94761, 2.94761}, {1.32797, 1.74166, 0.13599, 7.73451e-16, 7.92047e-17, 1.60567, 0.61239, -1.54296, -1.54296, 5.82108, 0.596103, 0.596103, -1.64146, -2.15281, -2.15281, -0.756955, 1.9072, -0.0775154, -2.39842, -0.245608, 1.73911, -4.55492, -8.87383, -0.466443, 2.39842, 0.245608, -8.16178, -0.808098, 8.32463, 8.32463}, {-1.77636e-15, 4.817, 8.88178e-16, -0.373167, -0.373493, 3.64724, -1.41425, 0.190182, -1.85717, 1.78742, 1.78898, -1.79007, 1.95393, 3.94035, -19.0972, 2.20937, 0.226585, -2.21265, 7.40511, 0.988907, 9.72428, -9.35904, -7.3825, 9.37293, -1.74811, -1.74964, -2.29559, -0.46126, -2.44638, 4.50824}, {0, -1.60567, 0, 1.1195, 1.12048, -10.9417, -1.41425, 0.190182, -1.85717, 1.78742, 1.78898, -1.79007, 0.46126, 8.86905, -4.50824, 7.86637, -0.534145, 5.21604, 1.74811, 1.74964, 2.29559, -2.20937, -0.226585, 2.21265, -8.89778, -8.90555, 4.86469, -0.46126, -2.44638, 4.50824}, {2.22045e-16, -1.60567, 6.66134e-16, -0.373167, -0.373493, 3.64724, 4.24275, -0.570547, 5.57152, 1.78742, 1.78898, -1.79007, 0.46126, 2.44638, -4.50824, 3.70204, 1.72056, -16.8016, 1.74811, 8.17231, 2.29559, -2.20937, -0.226585, 2.21265, -1.74811, -1.74964, -2.29559, -7.61093, -9.60229, 11.6685}, {-2.22045e-16, -1.60567, 6.66134e-16, -0.373167, -0.373493, 3.64724, -1.41425, 0.190182, -1.85717, -5.36225, -5.36694, 5.37021, 0.46126, 2.44638, -4.50824, 2.20937, 0.226585, -2.21265, 1.74811, 1.74964, 2.29559, -2.20937, 6.19609, 2.21265, -0.25544, -0.255663, -16.8846, 5.19574, -3.20711, 11.9369}, {5.57441, 0.570843, -4.24616, 1.45374e-15, 1.60567, 1.48869e-16, -1.78885, -1.78885, -1.78885, 3.64699, 0.373467, 0.373467, 2.29678, -8.17219, -1.74951, 2.21115, 0.226431, 2.21115, 11.6633, 9.60176, 7.61705, -16.7991, -1.7203, -3.70501, -4.50793, -2.44635, -0.461631, -2.29678, 1.74951, 1.74951}, {-1.85814, -0.190281, 1.41539, -6.50039e-15, -4.817, -2.58579e-15, -1.78885, -1.78885, -1.78885, 3.64699, 0.373467, 0.373467, 9.72932, -0.988391, -7.41106, 9.36656, 7.38185, 9.36656, 4.50793, 2.44635, 0.461631, -2.21115, -0.226431, -2.21115, -19.0959, -3.94022, -1.9555, -2.29678, 1.74951, 1.74951}, {-1.85814, -0.190281, 1.41539, 0, 1.60567, 0, 5.36656, 5.36656, 5.36656, 3.64699, 0.373467, 0.373467, 2.29678, -1.74951, -1.74951, 2.21115, -6.19624, 2.21115, 11.9405, 3.20747, -5.19992, -2.21115, -0.226431, -2.21115, -4.50793, -2.44635, -0.461631, -16.8847, 0.255645, 0.255645}, {-1.85814, -0.190281, 1.41539, 1.45374e-15, 1.60567, 1.48869e-16, -1.78885, -1.78885, -1.78885, -10.941, -1.1204, -1.1204, 2.29678, -1.74951, -1.74951, 2.21115, 0.226431, 2.21115, 4.50793, 2.44635, 0.461631, 5.2214, 0.534693, -7.87269, -4.50793, -8.86902, -0.461631, 4.85864, 8.90493, 8.90493}, {0.596103, -0.596103, -5.82108, 1.74166, -0.13599, -1.32797, -1.54296, 1.54296, -0.61239, 0, -1.60567, 0, -8.87383, 0.466443, 4.55492, -0.245608, -1.73911, 2.39842, 8.32463, -8.32463, 0.808098, 0.245608, 8.16178, -2.39842, -2.15281, 2.15281, 1.64146, 1.9072, 0.0775154, 0.756955}, {-0.198701, 0.198701, 1.94036, -5.22497, 0.407969, 3.98391, -1.54296, 1.54296, -0.61239, 0, -1.60567, 0, -1.1124, -0.87232, -8.51839, 5.92622, -7.91093, 4.84797, 2.15281, -2.15281, -1.64146, 0.245608, 1.73911, -2.39842, -2.15281, 8.57548, 1.64146, 1.9072, 0.0775154, 0.756955}, {-0.198701, 0.198701, 1.94036, 1.74166, -0.13599, -1.32797, 4.62887, -4.62887, 1.83717, 0, -1.60567, 0, -1.9072, -0.0775154, -0.756955, -7.21224, -1.19515, 7.71029, 2.94761, -2.94761, -9.4029, 0.245608, 1.73911, -2.39842, -2.15281, 2.15281, 1.64146, 1.9072, 6.50019, 0.756955}, {-0.198701, 0.198701, 1.94036, 1.74166, -0.13599, -1.32797, -1.54296, 1.54296, -0.61239, 0, 4.817, 0, -1.9072, -0.0775154, -0.756955, -0.245608, -1.73911, 2.39842, 2.15281, -2.15281, -1.64146, 1.04041, 0.944303, -10.1599, -9.11944, 2.69677, 6.95334, 8.07903, -6.09431, 3.20651}, {0, 9.45441, 0, 1.36222, 1.36261, 1.78885, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -7.1327, -3.23931, -9.36656, 2.21051, -1.68428, -2.21115, 16.4966, 3.89543, 0, -9.36389, -5.47113, 9.36656, -3.89432, -3.89543, 0, 1.6838, -2.21115, 2.21115}, {-2.22045e-16, -3.15147, 0, -4.08667, -4.08784, -5.36656, -3.15057, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 14.817, -2.21115, 14.8128, -1.68428, -2.21115, 3.89432, 3.89543, 0, -2.21051, 1.68428, 2.21115, -11.0477, -11.0508, 7.15542, 1.6838, -2.21115, 2.21115}, {2.22045e-16, -3.15147, 0, 1.36222, 1.36261, 1.78885, 9.4517, 0, 0, 1.78834, 1.78885, -1.78885, -1.6838, 2.21115, -2.21115, -3.23838, -7.13474, -9.36656, 3.89432, 16.5013, 0, -2.21051, 1.68428, 2.21115, -3.89432, -3.89543, 0, -5.46957, -9.36656, 9.36656}, {-2.22045e-16, -3.15147, 0, 1.36222, 1.36261, 1.78885, -3.15057, 0, 0, -5.36503, -5.36656, 5.36656, -1.6838, 2.21115, -2.21115, 2.21051, -1.68428, -2.21115, 3.89432, 3.89543, 0, -2.21051, 14.2902, 2.21115, -9.34321, -9.34589, -7.15542, 14.2861, -2.21115, 2.21115}, {-2.95778e-16, 8.88178e-16, 5.41667, 1.44665, -1.44665, -0.51339, -1.44665, -0.572575, 0.978606, 1.97314e-12, 2.01922, 1.34034, -7.57474, 7.57474, 4.91993, 2.43894e-12, 2.4959, -0.575039, 7.57474, 2.99804, -2.89226, -1.03315e-11, -10.5728, -4.78632, -1.78815, -0.707741, -1.02217, 1.78815, -1.78815, -2.86637}, {1.99359e-16, 4.44089e-16, -1.80556, -4.33994, 4.33994, 1.54017, -1.44665, -0.572575, 0.978606, 1.97222e-12, 2.01922, 1.34034, -1.78815, 1.78815, 10.0886, 5.78659, 4.7862, -4.48946, 1.78815, 0.707741, 1.02217, -2.43805e-12, -2.4959, 0.575039, -1.78815, -8.78463, -6.38352, 1.78815, -1.78815, -2.86637}, {8.21831e-17, -4.44089e-16, -1.80556, 1.44665, -1.44665, -0.51339, 4.33994, 1.71772, -2.93582, 1.97167e-12, 2.01922, 1.34034, -1.78815, 1.78815, 2.86637, -5.78659, 8.28248, 1.47852, 1.78815, 0.707741, 8.24439, -2.43716e-12, -2.4959, 0.575039, -1.78815, -0.707741, -1.02217, 1.78815, -9.86504, -8.22773}, {-1.03785e-17, 0, -1.80556, 1.44665, -1.44665, -0.51339, -1.44665, -0.572575, 0.978606, -5.91996e-12, -6.05767, -4.02102, -1.78815, 1.78815, 2.86637, 2.43916e-12, 2.4959, -0.575039, 1.78815, 0.707741, 1.02217, -2.43978e-12, -2.4959, 7.79726, -7.57474, 5.07885, 1.03139, 7.57474, 0.502145, -6.7808}, {-1.83228, -4.62937, -4.62777, -1.94057, 0.198723, 0.200419, 1.32981, -1.74185, -0.13734, 0, 0, -1.60567, 9.40601, -2.94793, -2.95615, 0.754941, 1.90741, -0.0779689, -7.71791, 7.21302, -1.18762, -0.754941, -1.90741, 6.50064, 2.39867, -0.245635, 1.73698, -1.64373, 2.15304, 2.15448}, {0.61076, 1.54312, 1.54259, 5.82171, -0.596168, -0.601256, 1.32981, -1.74185, -0.13734, 0, 0, -1.60567, -0.799305, -8.32553, -8.32484, -4.5643, 8.87479, 0.471392, -2.39867, 0.245635, -1.73698, -0.754941, -1.90741, 0.0779689, 2.39867, -0.245635, 8.15966, -1.64373, 2.15304, 2.15448}, {0.61076, 1.54312, 1.54259, -1.94057, 0.198723, 0.200419, -3.98943, 5.22554, 0.412021, 0, 0, -1.60567, 1.64373, -2.15304, -2.15448, 8.51722, 1.11252, -0.879643, -4.84171, -5.92686, -7.90734, -0.754941, -1.90741, 0.0779689, 2.39867, -0.245635, 1.73698, -1.64373, 2.15304, 8.57715}, {0.61076, 1.54312, 1.54259, -1.94057, 0.198723, 0.200419, 1.32981, -1.74185, -0.13734, 0, 0, 4.817, 1.64373, -2.15304, -2.15448, 0.754941, 1.90741, -0.0779689, -2.39867, 0.245635, -1.73698, -3.19798, -8.0799, -6.09239, 10.1609, -1.04052, 0.93531, -6.96297, 9.12042, 2.70384}, {-5.36656, 5.36656, -5.36656, 0, 0, -3.15147, -0.373467, 3.64699, 2.778, -1.41539, -1.85814, -1.41539, -2.21115, 2.21115, 14.2902, 0.461631, -4.50793, 0.461631, -0.255645, -16.8847, -16.7569, 5.19992, 11.9405, 5.19992, 1.74951, 2.29678, 5.64494, 2.21115, -2.21115, -1.68428}, {1.78885, -1.78885, 1.78885, 0, 0, 9.45441, -0.373467, 3.64699, 2.778, -1.41539, -1.85814, -1.41539, -9.36656, 9.36656, -5.47113, 1.9555, -19.0959, -10.6504, -1.74951, -2.29678, -5.64494, -0.461631, 4.50793, -0.461631, 7.41106, 9.72932, 11.3065, 2.21115, -2.21115, -1.68428}, {1.78885, -1.78885, 1.78885, 0, 0, -3.15147, 1.1204, -10.941, -8.334, -1.41539, -1.85814, -1.41539, -2.21115, 2.21115, 1.68428, 0.461631, -4.50793, 13.0675, -8.90493, 4.85864, -12.8004, -0.461631, 4.50793, -0.461631, 1.74951, 2.29678, 5.64494, 7.87269, 5.2214, 3.97726}, {1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -0.373467, 3.64699, 2.778, 4.24616, 5.57441, 4.24616, -2.21115, 2.21115, 1.68428, 0.461631, -4.50793, 0.461631, -1.74951, -2.29678, -5.64494, -7.61705, 11.6633, -7.61705, 1.74951, 2.29678, 18.2508, 3.70501, -16.7991, -12.7963}, {1.64026, -3.9353, -3.8467e-12, 0.194118, 0, -1.44665, -0.509273, -1.31177, -1.28236e-12, 0.861908, 0, 1.44665, -0.34059, -1.62143, 7.57474, 0.389553, 1.62143, 1.78815, 3.34241, 5.24706, 5.12945e-12, -3.83718, -1.62143, -7.57474, -1.30532, 0, 0, -0.435881, 1.62143, -1.78815}, {-0.546753, 1.31177, 1.28098e-12, -0.582353, 3.77031e-16, 4.33994, -0.509273, -1.31177, -1.28138e-12, 0.861908, 8.26902e-17, 1.44665, 2.62289, -6.86849, 1.78815, 2.42664, 6.86849, 1.78815, 1.30532, -3.78785e-16, 4.44089e-16, -0.389553, -1.62143, -1.78815, -4.75295, -2.77626e-16, -5.78659, -0.435881, 1.62143, -1.78815}, {-0.546753, 1.31177, 1.28164e-12, 0.194118, 0, -1.44665, 1.52782, 3.9353, 3.84623e-12, 0.861908, 0, 1.44665, 0.435881, -1.62143, 1.78815, -0.386918, 1.62143, 7.57474, 3.49233, -5.24706, -5.12657e-12, -0.389553, -1.62143, -1.78815, -1.30532, 0, -4.44089e-16, -3.88351, 1.62143, -7.57474}, {-0.546753, 1.31177, 1.28164e-12, 0.194118, 0, -1.44665, -0.509273, -1.31177, -1.28138e-12, -2.58572, 0, -4.33994, 0.435881, -1.62143, 1.78815, 0.389553, 1.62143, 1.78815, 1.30532, -3.2565e-16, -2.22045e-16, 1.79746, -6.86849, -1.78815, -2.08179, 0, 5.78659, 1.60121, 6.86849, -1.78815}, {0.831641, 5.95736e-16, -6.19774, -0.482067, 1.31177, -0.482067, -0.449021, -1.31177, -0.449021, 1.2083, 1.98579e-16, -1.13482, 2.86679, -6.86849, -0.0294728, 1.15089, 0, 1.15089, 2.69376, 6.86849, -0.202503, -5.98409, -7.94315e-16, 3.38841, -0.897675, -1.62143, 1.99859, -0.938522, 1.62143, 1.95774}, {-0.277214, -1.75113e-16, 2.06591, 1.4462, -3.9353, 1.4462, -0.449021, -1.31177, -0.449021, 1.2083, 3.97157e-16, -1.13482, 2.04738, -1.62143, -10.2214, 2.94697, 5.24706, 2.94697, 0.897675, 1.62143, -1.99859, -1.15089, -2.22045e-16, -1.15089, -5.73088, -1.62143, 6.53788, -0.938522, 1.62143, 1.95774}, {-0.277214, 7.58234e-17, 2.06591, -0.482067, 1.31177, -0.482067, 1.34706, 3.9353, 1.34706, 1.2083, -2.97868e-16, -1.13482, 0.938522, -1.62143, -1.95774, 3.07916, -5.24706, 3.07916, 2.00653, 1.62143, -10.2622, -1.15089, 4.44089e-16, -1.15089, -0.897675, -1.62143, 1.99859, -5.77173, 1.62143, 6.49704}, {-0.277214, 0, 2.06591, -0.482067, 1.31177, -0.482067, -0.449021, -1.31177, -0.449021, -3.6249, 0, 3.40447, 0.938522, -1.62143, -1.95774, 1.15089, 0, 1.15089, 0.897675, 1.62143, -1.99859, -0.0420334, 0, -9.41454, 1.03059, -6.86849, 3.92685, 0.857562, 6.86849, 3.75382}, {10.941, -1.1204, -8.334, 1.78885, -1.78885, 1.78885, 1.85814, 1.41539, -1.41539, 0, 0, -3.15147, -4.85864, 8.90493, -12.8004, -4.50793, 0.461631, -0.461631, -5.2214, -7.87269, 3.97726, 4.50793, -0.461631, 13.0675, -2.21115, 2.21115, 1.68428, -2.29678, -1.74951, 5.64494}, {-3.64699, 0.373467, 2.778, -5.36656, 5.36656, -5.36656, 1.85814, 1.41539, -1.41539, 0, 0, -3.15147, 16.8847, 0.255645, -16.7569, -11.9405, -5.19992, 5.19992, 2.21115, -2.21115, -1.68428, 4.50793, -0.461631, 0.461631, -2.21115, 2.21115, 14.2902, -2.29678, -1.74951, 5.64494}, {-3.64699, 0.373467, 2.778, 1.78885, -1.78885, 1.78885, -5.57441, -4.24616, 4.24616, 0, 0, -3.15147, 2.29678, 1.74951, -5.64494, -11.6633, 7.61705, -7.61705, 16.7991, -3.70501, -12.7963, 4.50793, -0.461631, 0.461631, -2.21115, 2.21115, 1.68428, -2.29678, -1.74951, 18.2508}, {-3.64699, 0.373467, 2.778, 1.78885, -1.78885, 1.78885, 1.85814, 1.41539, -1.41539, 0, 0, 9.45441, 2.29678, 1.74951, -5.64494, -4.50793, 0.461631, -0.461631, 2.21115, -2.21115, -1.68428, 19.0959, -1.9555, -10.6504, -9.36656, 9.36656, -5.47113, -9.72932, -7.41106, 11.3065}, {1.77636e-15, 0, 9.45441, 1.78885, 1.78885, 1.78885, 1.36261, -1.78885, 1.36261, -3.15147, 0, 0, -9.36656, -9.36656, -5.47113, -3.89543, 0, -3.89543, -7.13474, 9.36656, -3.23931, 16.5013, 0, 3.89543, 1.68428, -2.21115, -2.21115, 2.21115, 2.21115, -1.68428}, {0, 0, -3.15147, -5.36656, -5.36656, -5.36656, 1.36261, -1.78885, 1.36261, -3.15147, 0, 0, -2.21115, -2.21115, 14.2902, -9.34589, 7.15542, -9.34589, -1.68428, 2.21115, 2.21115, 3.89543, 0, 3.89543, 14.2902, -2.21115, -2.21115, 2.21115, 2.21115, -1.68428}, {4.44089e-16, 0, -3.15147, 1.78885, 1.78885, 1.78885, -4.08784, 5.36656, -4.08784, -3.15147, 0, 0, -2.21115, -2.21115, 1.68428, -11.0508, -7.15542, -11.0508, -1.68428, 2.21115, 14.817, 3.89543, 0, 3.89543, 1.68428, -2.21115, -2.21115, 14.817, 2.21115, -1.68428}, {-4.44089e-16, 0, -3.15147, 1.78885, 1.78885, 1.78885, 1.36261, -1.78885, 1.36261, 9.45441, 0, 0, -2.21115, -2.21115, 1.68428, -3.89543, 0, -3.89543, -1.68428, 2.21115, 2.21115, 3.89543, 0, 16.5013, -5.47113, -9.36656, -9.36656, -3.23931, 9.36656, -7.13474}, {5.22884, -3.98763, -5.22319, 0.200328, -1.9397, -2.54071, 8.97324e-16, 3.55112e-16, 2.34313, 1.54262, 0.610485, -1.54348, 1.10547, 8.51339, 11.1512, -0.24762, 2.3976, 0.244222, 2.1544, -1.643, -14.4208, -5.92285, -4.83954, 5.92971, -2.1544, 1.643, 5.04833, -1.90678, -0.754601, -0.988412}, {-1.74295, 1.32921, 1.74106, -0.600985, 5.81909, 7.62212, 0, 0, 2.34313, 1.54262, 0.610485, -1.54348, 8.87857, -4.56224, -5.97584, -0.24762, 2.3976, -9.12828, 2.1544, -1.643, -5.04833, 0.24762, -2.3976, -0.244222, -8.32487, -0.798945, 11.2223, -1.90678, -0.754601, -0.988412}, {-1.74295, 1.32921, 1.74106, 0.200328, -1.9397, -2.54071, 0, 0, -7.02938, 1.54262, 0.610485, -1.54348, 1.90678, 0.754601, 0.988412, -1.04893, 10.1564, 10.407, 9.12619, -6.95984, -12.0126, 0.24762, -2.3976, -0.244222, -2.1544, 1.643, 5.04833, -8.07725, -3.19654, 5.18552}, {-1.74295, 1.32921, 1.74106, 0.200328, -1.9397, -2.54071, 8.97324e-16, 3.55112e-16, 2.34313, -4.62785, -1.83146, 4.63045, 1.90678, 0.754601, 0.988412, -0.24762, 2.3976, 0.244222, 2.1544, -1.643, -5.04833, 7.21941, -7.71444, -7.20847, -2.95571, 9.40178, 15.2112, -1.90678, -0.754601, -10.3609}, {0.403167, 4.33994, -4.33994, 1.56712, -1.12319e-15, 3.41061e-16, -0.345916, 1.4404, 0.569981, -1.08682, 0.00624416, -2.01663, -8.03944, 1.78815, -1.78815, -1.50949, -1.78044, -0.704535, 1.97736, -5.75389, -4.77261, 5.85676, 1.75546, 8.77105, -0.59369, -0.00771821, 2.49269, 1.77095, -1.78815, 1.78815}, {-0.134389, -1.44665, 1.44665, -4.70136, 1.67385e-15, 3.01891e-15, -0.345916, 1.4404, 0.569981, -1.08682, 0.00624416, -2.01663, -1.2334, 7.57474, -7.57474, -0.125826, -7.54205, -2.98446, 0.59369, 0.00771821, -2.49269, 1.50949, 1.78044, 0.704535, 3.75357, -0.0326948, 10.5592, 1.77095, -1.78815, 1.78815}, {-0.134389, -1.44665, 1.44665, 1.56712, 0, 0, 1.03775, -4.32121, -1.70994, -1.08682, 0.00624416, -2.01663, -1.77095, 1.78815, -1.78815, -7.77798, -1.78044, -0.704535, 1.13125, 5.79431, -8.27928, 1.50949, 1.78044, 0.704535, -0.59369, -0.00771821, 2.49269, 6.11822, -1.81313, 9.85467}, {-0.134389, -1.44665, 1.44665, 1.56712, -2.42925e-18, 7.84555e-16, -0.345916, 1.4404, 0.569981, 3.26045, -0.0187325, 6.04988, -1.77095, 1.78815, -1.78815, -1.50949, -1.78044, -0.704535, 0.59369, 0.00771821, -2.49269, 2.04705, 7.56702, -5.08205, -6.86218, -0.00771821, 2.49269, 3.15462, -7.54977, -0.491769}, {-7.02938, 5.36656, -7.02938, -2.34313, 0, 0, 0, 0, -2.34313, 1.02097e-11, 1.78885, 1.02102e-11, 9.3725, 2.21115, -2.89626, 2.89626, 0, 2.89626, -2.89626, 2.21115, 9.3725, -2.89626, -7.15542, -2.89626, 2.89626, -2.21115, -1.26205e-11, -1.26199e-11, -2.21115, 2.89626}, {2.34313, -1.78885, 2.34313, 7.02938, 0, 0, 0, 0, -2.34313, 1.02086e-11, 1.78885, 1.02066e-11, -9.3725, 9.36656, -12.2688, 2.89626, 0, 12.2688, -2.89626, 2.21115, 1.26154e-11, -2.89626, 4.44089e-16, -2.89626, 2.89626, -9.36656, -5.34422e-11, -1.26186e-11, -2.21115, 2.89626}, {2.34313, -1.78885, 2.34313, -2.34313, 0, 0, 0, 0, 7.02938, 1.0206e-11, 1.78885, 1.02081e-11, 1.26148e-11, 2.21115, -2.89626, 12.2688, 0, 2.89626, -12.2688, 9.36656, -9.3725, -2.89626, 4.44089e-16, -2.89626, 2.89626, -2.21115, -1.26179e-11, -5.34395e-11, -9.36656, 2.89626}, {2.34313, -1.78885, 2.34313, -2.34313, 0, 0, 0, 0, -2.34313, -3.06361e-11, -5.36656, -3.06329e-11, 1.26222e-11, 2.21115, -2.89626, 2.89626, 0, 2.89626, -2.89626, 2.21115, 1.26209e-11, -12.2688, 7.15542, -12.2688, 12.2688, -2.21115, -1.26215e-11, -1.26228e-11, -2.21115, 12.2688}, {7.02938, 0, 8.88974e-16, 2.34566, -1.78885, -2.34313, -1.47457e-18, 1.04056e-15, 2.34313, -0.00253498, 1.78885, -1.02102e-11, -9.38578, 9.36656, 12.2688, -2.8994, 2.21115, -1.26206e-11, 2.89626, -4.88498e-15, -12.2688, 2.90954, -9.36656, 5.34614e-11, -2.89626, 8.88178e-16, 2.89626, 0.00313341, -2.21115, -2.89626}, {-2.34313, 0, 7.14229e-17, -7.03698, 5.36656, 7.02938, 0, 0, 2.34313, -0.00253498, 1.78885, -1.02097e-11, 9.36937, 2.21115, 2.89626, -2.8994, 2.21115, -9.3725, 2.89626, 0, -2.89626, 2.8994, -2.21115, 1.26197e-11, -2.88612, -7.15542, 2.89626, 0.00313341, -2.21115, -2.89626}, {-2.34313, 0, -3.09288e-16, 2.34566, -1.78885, -2.34313, 0, 0, -7.02938, -0.00253498, 1.78885, -1.02071e-11, -0.00313341, 2.21115, 2.89626, -12.282, 9.36656, 9.3725, 12.2688, 0, -2.89626, 2.8994, -2.21115, 1.2617e-11, -2.89626, 0, 2.89626, 0.0132733, -9.36656, -2.89626}, {-2.34313, -2.22045e-16, 6.36673e-16, 2.34566, -1.78885, -2.34313, -1.47457e-18, 1.04056e-15, 2.34313, 0.00760494, -5.36656, 3.06361e-11, -0.00313341, 2.21115, 2.89626, -2.8994, 2.21115, -1.26219e-11, 2.89626, -1.33227e-15, -2.89626, 12.2719, -2.21115, 1.26202e-11, -12.2789, 7.15542, 12.2688, 0.00313341, -2.21115, -12.2688}, {5.3029, -0.485897, 0.486322, 0.215713, 1.38996, 0.214498, 0.501223, -0.501223, -1.10401, 1.0507, -1.0507, 1.05162, 1.05543, -7.4781, -0.922752, -0.886182, -1.09853, 1.09949, -0.439523, 2.42424, 5.98103, -3.31661, 5.30132, -5.30596, -1.56537, -0.419345, -1.565, -1.91828, 1.91828, 0.0647586}, {-1.76763, 0.161966, -0.162107, -0.647139, -4.16987, -0.643495, 0.501223, -0.501223, -1.10401, 1.0507, -1.0507, 1.05162, 8.98882, -2.56614, 0.583671, -2.89107, 0.90636, 5.51552, 1.56537, 0.419345, 1.565, 0.886182, 1.09853, -1.09949, -5.76816, 3.78345, -5.77147, -1.91828, 1.91828, 0.0647586}, {-1.76763, 0.161966, -0.162107, 0.215713, 1.38996, 0.214498, -1.50367, 1.50367, 3.31202, 1.0507, -1.0507, 1.05162, 1.91828, -1.91828, -0.0647586, -1.74903, -6.65835, 0.2415, 8.63591, -0.228518, 2.21343, 0.886182, 1.09853, -1.09949, -1.56537, -0.419345, -1.565, -6.12107, 6.12107, -4.14171}, {-1.76763, 0.161966, -0.162107, 0.215713, 1.38996, 0.214498, 0.501223, -0.501223, -1.10401, -3.15209, 3.15209, -3.15485, 1.91828, -1.91828, -0.0647586, -0.886182, -1.09853, 1.09949, 1.56537, 0.419345, 1.565, 7.95672, 0.45067, -0.451064, -2.42822, -5.97917, -2.423, -3.92317, 3.92317, 4.48079}, {1.71308, 4.3282, 0.488804, 0.642112, 1.62234, -1.62234, 2.1437, 0.314496, -0.314496, -2.21478, -0.4941, 2.09977, -2.65632, -6.71135, 8.69607, -3.44345, -2.39406, 2.39406, -10.5187, 0.136594, 1.84812, 12.3026, 4.37046, -10.7931, 1.94393, -1.39458, -0.590137, 0.0878675, 0.222003, -2.20672}, {-0.571026, -1.44273, -0.162935, -1.92634, -4.86701, 4.86701, 2.1437, 0.314496, -0.314496, -2.21478, -0.4941, 2.09977, 2.19624, 5.54893, 2.85846, -12.0182, -3.65204, 3.65204, -1.94393, 1.39458, 0.590137, 3.44345, 2.39406, -2.39406, 10.8031, 0.581823, -8.98921, 0.0878675, 0.222003, -2.20672}, {-0.571026, -1.44273, -0.162935, 0.642112, 1.62234, -1.62234, -6.43109, -0.943488, 0.943488, -2.21478, -0.4941, 2.09977, -0.0878675, -0.222003, 2.20672, -6.0119, -8.88341, 8.88341, 0.340174, 7.16551, 1.24188, 3.44345, 2.39406, -2.39406, 1.94393, -1.39458, -0.590137, 8.947, 2.1984, -10.6058}, {-0.571026, -1.44273, -0.162935, 0.642112, 1.62234, -1.62234, 2.1437, 0.314496, -0.314496, 6.64435, 1.4823, -6.2993, -0.0878675, -0.222003, 2.20672, -3.44345, -2.39406, 2.39406, -1.94393, 1.39458, 0.590137, 5.72755, 8.16499, -1.74232, -0.624519, -7.88393, 5.89921, -8.48692, -1.03598, -0.948734}, {-4.62937, 4.62937, 1.83228, 0.198723, -0.198723, 1.94057, -1.74185, 0.136178, -1.32981, 0, 1.60567, 0, -2.94793, 2.94793, -9.40601, 1.90741, 0.0773091, -0.754941, 7.21302, 1.19437, 7.71791, -1.90741, -6.49998, 0.754941, -0.245635, -1.73908, -2.39867, 2.15304, -2.15304, 1.64373}, {1.54312, -1.54312, -0.61076, -0.596168, 0.596168, -5.82171, -1.74185, 0.136178, -1.32981, 6.94322e-16, 1.60567, 5.30079e-16, -8.32553, 8.32553, 0.799305, 8.87479, -0.467403, 4.5643, 0.245635, 1.73908, 2.39867, -1.90741, -0.0773091, 0.754941, -0.245635, -8.16175, -2.39867, 2.15304, -2.15304, 1.64373}, {1.54312, -1.54312, -0.61076, 0.198723, -0.198723, 1.94057, 5.22554, -0.408534, 3.98943, 0, 1.60567, 0, -2.15304, 2.15304, -1.64373, 1.11252, 0.872199, -8.51722, -5.92686, 7.91157, 4.84171, -1.90741, -0.0773091, 0.754941, -0.245635, -1.73908, -2.39867, 2.15304, -8.57571, 1.64373}, {1.54312, -1.54312, -0.61076, 0.198723, -0.198723, 1.94057, -1.74185, 0.136178, -1.32981, 0, -4.817, 0, -2.15304, 2.15304, -1.64373, 1.90741, 0.0773091, -0.754941, 0.245635, 1.73908, 2.39867, -8.0799, 6.09519, 3.19798, -1.04052, -0.94419, -10.1609, 9.12042, -2.69775, 6.96297}, {-1.38621, -1.33227e-15, 3.9353, 1.09414, 1.31177, 1.31177, 0.173581, -1.31177, 0, -1.72979, 0, 0, -6.30013, -6.86849, -5.24706, -1.56699, 4.44089e-16, -1.62143, -1.48003, 6.86849, 1.62143, 8.48614, -4.44089e-16, 1.62143, 0.785706, -1.62143, -1.62143, 1.92358, 1.62143, 0}, {0.462069, -5.96084e-17, -1.31177, -3.28242, -3.9353, -3.9353, 0.173581, -1.31177, 0, -1.72979, 2.81653e-16, 0, -3.77185, -1.62143, 5.24706, -2.26131, 5.24706, -1.62143, -0.785706, 1.62143, 1.62143, 1.56699, -2.22045e-16, 1.62143, 7.70486, -1.62143, -1.62143, 1.92358, 1.62143, 0}, {0.462069, -8.88178e-16, -1.31177, 1.09414, 1.31177, 1.31177, -0.520744, 3.9353, 0, -1.72979, 0, 0, -1.92358, -1.62143, 3.2565e-16, -5.94354, -5.24706, -6.86849, -2.63398, 1.62143, 6.86849, 1.56699, 1.11022e-15, 1.62143, 0.785706, -1.62143, -1.62143, 8.84273, 1.62143, 0}, {0.462069, 0, -1.31177, 1.09414, 1.31177, 1.31177, 0.173581, -1.31177, 0, 5.18937, 0, 0, -1.92358, -1.62143, 3.2565e-16, -1.56699, 0, -1.62143, -0.785706, 1.62143, 1.62143, -0.281287, 0, 6.86849, -3.59085, -6.86849, -6.86849, 1.22925, 6.86849, 0}, {-3.84404e-12, -3.9353, 2.80446, 1.44665, 0, 0.44688, -1.28111e-12, -1.31177, -0.870737, -1.44665, 0, 1.35868, -7.57474, -1.62143, -1.18439, -1.78815, 1.62143, 0.523916, 5.12412e-12, 5.24706, 5.71474, 7.57474, -1.62143, -5.95862, 2.22045e-16, 0, -2.23179, 1.78815, 1.62143, -0.603126}, {1.2812e-12, 1.31177, -0.934819, -4.33994, -8.15796e-16, -1.34064, -1.28111e-12, -1.31177, -0.870737, -1.44665, -1.24937e-16, 1.35868, -1.78815, -6.86849, 4.3424, -1.78815, 6.86849, 4.00686, 0, -1.43955e-16, 2.23179, 1.78815, -1.62143, -0.523916, 5.78659, 3.18053e-16, -7.66649, 1.78815, 1.62143, -0.603126}, {1.28053e-12, 1.31177, -0.934819, 1.44665, 0, 0.44688, 3.84227e-12, 3.9353, 2.61221, -1.44665, 0, 1.35868, -1.78815, -1.62143, 0.603126, -7.57474, 1.62143, -1.2636, -5.12124e-12, -5.24706, 5.97107, 1.78815, -1.62143, -0.523916, -4.44089e-16, 0, -2.23179, 7.57474, 1.62143, -6.03783}, {1.28098e-12, 1.31177, -0.934819, 1.44665, 0, 0.44688, -1.281e-12, -1.31177, -0.870737, 4.33994, 0, -4.07603, -1.78815, -1.62143, 0.603126, -1.78815, 1.62143, 0.523916, 0, -3.2565e-16, 2.23179, 1.78815, -6.86849, 3.21536, -5.78659, 0, -4.01931, 1.78815, 6.86849, 2.87982}, {5.36291, -5.36619, -5.37088, 3.64451, -0.373213, -0.376399, -1.85687, 0.190152, -1.41389, 0, -1.60567, 0, -16.8733, -0.256821, -0.242074, -2.20964, 0.226277, 2.21292, 11.9323, -3.20664, 5.19032, 2.20964, 6.1964, -2.21292, -4.50486, 2.44603, 0.465254, 2.29522, 1.74967, 1.74767}, {-1.78764, 1.78873, 1.79029, -10.9335, 1.11964, 1.1292, -1.85687, 0.190152, -1.41389, 0, -1.60567, 0, 4.85533, -8.90459, -8.90884, 5.21784, -0.53433, 7.8685, 4.50486, -2.44603, -0.465254, 2.20964, -0.226277, -2.21292, -4.50486, 8.8687, 0.465254, 2.29522, 1.74967, 1.74767}, {-1.78764, 1.78873, 1.79029, 3.64451, -0.373213, -0.376399, 5.57061, -0.570455, 4.24168, 0, -1.60567, 0, -2.29522, -1.74967, -1.74767, -16.7877, 1.71913, 3.71852, 11.6554, -9.60095, -7.62642, 2.20964, -0.226277, -2.21292, -4.50486, 2.44603, 0.465254, 2.29522, 8.17235, 1.74767}, {-1.78764, 1.78873, 1.79029, 3.64451, -0.373213, -0.376399, -1.85687, 0.190152, -1.41389, 0, 4.817, 0, -2.29522, -1.74967, -1.74767, -2.20964, 0.226277, 2.21292, 4.50486, -2.44603, -0.465254, 9.36019, -7.3812, -9.37409, -19.0829, 3.93889, 1.97085, 9.72271, 0.989068, 7.40324}, {-4.90664, -4.91093, -4.90664, 0.802238, -0.802728, -0.80343, -1.63555, -0.0313083, -1.63555, -0.802238, -0.80294, 0.80343, -6.22222, 2.17973, 2.18516, 1.03003, 1.03093, 3.01474, 6.54219, -1.85948, 6.54219, 2.17893, 2.18083, -6.22846, -3.78586e-14, 1.98471, 3.79696e-14, 3.01327, 1.03119, 1.02855}, {1.63555, 1.63698, 1.63555, -2.40672, 2.40819, 2.41029, -1.63555, -0.0313083, -1.63555, -0.802238, -0.80294, 0.80343, -9.55546, -7.57909, -7.57074, 7.57221, 1.15616, 9.55693, 3.71925e-14, -1.98471, -3.81917e-14, -1.03003, -1.03093, -3.01474, 3.20895, 5.19647, -3.21372, 3.01327, 1.03119, 1.02855}, {1.63555, 1.63698, 1.63555, 0.802238, -0.802728, -0.80343, 4.90664, 0.0939249, 4.90664, -0.802238, -0.80294, 0.80343, -3.01327, -1.03119, -1.02855, -2.17893, 4.24184, 6.22846, -6.54219, -8.53262, -6.54219, -1.03003, -1.03093, -3.01474, -3.78586e-14, 1.98471, 3.80806e-14, 6.22222, 4.24295, -2.18516}, {1.63555, 1.63698, 1.63555, 0.802238, -0.802728, -0.80343, -1.63555, -0.0313083, -1.63555, 2.40672, 2.40882, -2.41029, -3.01327, -1.03119, -1.02855, 1.03003, 1.03093, 3.01474, 3.73035e-14, -1.98471, -3.83027e-14, -7.57221, -7.57883, -9.55693, -3.20895, 5.19563, 3.21372, 9.55546, 1.15642, 7.57074}, {0.433524, 4.35281, -4.30748, -1.58383, 1.03002, -2.49725, 0.961132, -0.582294, -1.46836, 0.767201, 1.00321, 2.52978, 8.47164, -3.5998, 11.301, 0.769691, -0.553419, 4.90175, -4.85393, 4.84239, 5.91364, -3.83849, -3.45943, -15.0209, 1.0094, -2.51321, -0.0402101, -2.13634, -0.520284, -1.31199}, {-0.144508, -1.45094, 1.43583, 4.75148, -3.09006, 7.49174, 0.961132, -0.582294, -1.46836, 0.767201, 1.00321, 2.52978, 2.71437, 6.32404, -4.43132, -3.07484, 1.77576, 10.7752, -1.0094, 2.51321, 0.0402101, -0.769691, 0.553419, -4.90175, -2.0594, -6.52607, -10.1593, -2.13634, -0.520284, -1.31199}, {-0.144508, -1.45094, 1.43583, -1.58383, 1.03002, -2.49725, -2.8834, 1.74688, 4.40507, 0.767201, 1.00321, 2.52978, 2.13634, 0.520284, 1.31199, 7.10499, -4.6735, 14.8907, -0.431372, 8.31697, -5.70309, -0.769691, 0.553419, -4.90175, 1.0094, -2.51321, -0.0402101, -5.20514, -4.53314, -11.4311}, {-0.144508, -1.45094, 1.43583, -1.58383, 1.03002, -2.49725, 0.961132, -0.582294, -1.46836, -2.3016, -3.00964, -7.58933, 2.13634, 0.520284, 1.31199, 0.769691, -0.553419, 4.90175, -1.0094, 2.51321, 0.0402101, -0.191659, 6.35717, -10.6451, 7.3447, -6.63329, 9.94877, -5.98087, 1.80889, 4.56144}, {-5.22554, 3.98943, -3.78662, 0, 0, -1.80556, -0.198723, 1.94057, 0.386742, -1.54312, -0.61076, 0.156608, -2.15304, 1.64373, 7.89384, 0.245635, -2.39867, 1.75375, -1.11252, -8.51722, -3.58518, 5.92686, 4.84171, -2.38018, 1.90741, 0.754941, 2.03821, 2.15304, -1.64373, -0.671617}, {1.74185, -1.32981, 1.26221, 0, 0, 5.41667, -0.198723, 1.94057, 0.386742, -1.54312, -0.61076, 0.156608, -9.12042, 6.96297, -4.37721, 1.04052, -10.1609, 0.206785, -1.90741, -0.754941, -2.03821, -0.245635, 2.39867, -1.75375, 8.0799, 3.19798, 1.41178, 2.15304, -1.64373, -0.671617}, {1.74185, -1.32981, 1.26221, 0, 0, -1.80556, 0.596168, -5.82171, -1.16022, -1.54312, -0.61076, 0.156608, -2.15304, 1.64373, 0.671617, 0.245635, -2.39867, 8.97597, -8.87479, 4.5643, -7.08704, -0.245635, 2.39867, -1.75375, 1.90741, 0.754941, 2.03821, 8.32553, 0.799305, -1.29805}, {1.74185, -1.32981, 1.26221, 0, 0, -1.80556, -0.198723, 1.94057, 0.386742, 4.62937, 1.83228, -0.469823, -2.15304, 1.64373, 0.671617, 0.245635, -2.39867, 1.75375, -1.90741, -0.754941, -2.03821, -7.21302, 7.71791, -6.80258, 1.90741, 0.754941, 9.26043, 2.94793, -9.40601, -2.21858}, {2.47366, -6.0686, -0.0191747, -0.141226, -1.44665, 1.44665, 1.40644, 1.00594e-16, 2.53667e-16, -0.440661, -0.57622, -1.45304, 1.75867, 5.07434, -7.58264, -1.56389, 1.78815, -1.78815, -6.34501, -2.5004, -0.0079004, 3.32653, 0.516725, 7.60031, 0.719252, 2.5004, 0.0079004, -1.19377, 0.712247, 1.79605}, {-0.824552, 2.02287, 0.00639156, 0.423679, 4.33994, -4.33994, 1.40644, 3.01783e-16, 7.61e-16, -0.440661, -0.57622, -1.45304, 4.49197, -8.80371, -1.82162, -7.18964, 1.78815, -1.78815, -0.719252, -2.5004, -0.0079004, 1.56389, -1.78815, 1.78815, 2.48189, 4.80528, 5.82005, -1.19377, 0.712247, 1.79605}, {-0.824552, 2.02287, 0.00639156, -0.141226, -1.44665, 1.44665, -4.21932, 0, 0, -0.440661, -0.57622, -1.45304, 1.19377, -0.712247, -1.79605, -0.998983, 7.57474, -7.57474, 2.57896, -10.5919, -0.0334666, 1.56389, -1.78815, 1.78815, 0.719252, 2.5004, 0.0079004, 0.568875, 3.01713, 7.60821}, {-0.824552, 2.02287, 0.00639156, -0.141226, -1.44665, 1.44665, 1.40644, -3.01783e-16, -7.61e-16, 1.32198, 1.72866, 4.35912, 1.19377, -0.712247, -1.79605, -1.56389, 1.78815, -1.78815, -0.719252, -2.5004, -0.0079004, 4.8621, -9.87962, 1.76259, 1.28416, 8.28699, -5.77869, -6.81952, 0.712247, 1.79605}, {-5.82171, -0.596168, -7.61729, 0, 0, -2.34313, -0.61076, 1.54312, 1.54399, -1.32981, -1.74185, -1.73996, -2.39867, -0.245635, 9.13027, 0.754941, -1.90741, 0.987787, 0.799305, -8.32553, -11.2229, 4.5643, 8.87479, 5.97206, 1.64373, 2.15304, 5.04697, 2.39867, 0.245635, 0.242235}, {1.94057, 0.198723, 2.5391, 0, 0, 7.02938, -0.61076, 1.54312, 1.54399, -1.32981, -1.74185, -1.73996, -10.1609, -1.04052, -10.3986, 3.19798, -8.0799, -5.18817, -1.64373, -2.15304, -5.04697, -0.754941, 1.90741, -0.987787, 6.96297, 9.12042, 12.0068, 2.39867, 0.245635, 0.242235}, {1.94057, 0.198723, 2.5391, 0, 0, -2.34313, 1.83228, -4.62937, -4.63197, -1.32981, -1.74185, -1.73996, -2.39867, -0.245635, -0.242235, 0.754941, -1.90741, 10.3603, -9.40601, -2.94793, -15.2034, -0.754941, 1.90741, -0.987787, 1.64373, 2.15304, 5.04697, 7.71791, 7.21302, 7.20208}, {1.94057, 0.198723, 2.5391, 0, 0, -2.34313, -0.61076, 1.54312, 1.54399, 3.98943, 5.22554, 5.21989, -2.39867, -0.245635, -0.242235, 0.754941, -1.90741, 0.987787, -1.64373, -2.15304, -5.04697, -8.51722, 1.11252, -11.1442, 1.64373, 2.15304, 14.4195, 4.84171, -5.92686, -5.93372}, {7.02938, 8.88178e-16, -1.33227e-15, 1.54312, -1.54312, -0.61076, 2.54185, -0.198723, 1.94057, -1.74185, 1.74185, -1.32981, -5.18364, 8.0799, 3.19798, -5.0493, 2.15304, -1.64373, -10.413, 1.04052, -10.1609, 12.0167, -9.12042, 6.96297, 0.245635, -0.245635, 2.39867, -0.988857, -1.90741, -0.754941}, {-2.34313, 0, 0, -4.62937, 4.62937, 1.83228, 2.54185, -0.198723, 1.94057, -1.74185, 1.74185, -1.32981, 10.3614, 1.90741, 0.754941, -15.2167, 2.94793, -9.40601, -0.245635, 0.245635, -2.39867, 5.0493, -2.15304, 1.64373, 7.21302, -7.21302, 7.71791, -0.988857, -1.90741, -0.754941}, {-2.34313, 2.22045e-16, 0, 1.54312, -1.54312, -0.61076, -7.62554, 0.596168, -5.82171, -1.74185, 1.74185, -1.32981, 0.988857, 1.90741, 0.754941, -11.2218, 8.32553, 0.799305, 9.12687, 0.245635, -2.39867, 5.0493, -2.15304, 1.64373, 0.245635, -0.245635, 2.39867, 5.97853, -8.87479, 4.5643}, {-2.34313, 0, -2.22045e-16, 1.54312, -1.54312, -0.61076, 2.54185, -0.198723, 1.94057, 5.22554, -5.22554, 3.98943, 0.988857, 1.90741, 0.754941, -5.0493, 2.15304, -1.64373, -0.245635, 0.245635, -2.39867, 14.4218, -2.15304, 1.64373, -5.92686, 5.92686, 4.84171, -11.1562, -1.11252, -8.51722}, {9.45441, 8.88178e-16, 0, -1.41486, -1.85814, 1.41539, 2.77696, 3.64699, 0.373467, 1.78937, -1.78885, -1.78885, 11.3037, 9.72932, -7.41106, -1.68365, -2.21115, -2.21115, -10.6449, -19.0959, -1.9555, -5.47381, 9.36656, 9.36656, -0.46292, 4.50793, 0.461631, -5.64429, -2.29678, 1.74951}, {-3.15147, 8.88178e-16, 4.44089e-16, 4.24457, 5.57441, -4.24616, 2.77696, 3.64699, 0.373467, 1.78937, -1.78885, -1.78885, 18.2502, 2.29678, -1.74951, -12.7915, -16.7991, -3.70501, 0.46292, -4.50793, -0.461631, 1.68365, 2.21115, 2.21115, -7.62038, 11.6633, 7.61705, -5.64429, -2.29678, 1.74951}, {-3.15147, 4.44089e-16, 2.22045e-16, -1.41486, -1.85814, 1.41539, -8.33088, -10.941, -1.1204, 1.78937, -1.78885, -1.78885, 5.64429, 2.29678, -1.74951, 3.97577, 5.2214, -7.87269, 13.0688, -4.50793, -0.461631, 1.68365, 2.21115, 2.21115, -0.46292, 4.50793, 0.461631, -12.8018, 4.85864, 8.90493}, {-3.15147, -2.22045e-16, 0, -1.41486, -1.85814, 1.41539, 2.77696, 3.64699, 0.373467, -5.3681, 5.36656, 5.36656, 5.64429, 2.29678, -1.74951, -1.68365, -2.21115, -2.21115, 0.46292, -4.50793, -0.461631, 14.2895, 2.21115, 2.21115, 5.1965, 11.9405, -5.19992, -16.7521, -16.8847, 0.255645}, {-1.04981, -4.33994, -1.71772, -1.16436, 0, 0, 0.183612, -1.44665, 1.44665, 0.630806, -1.58777e-12, -2.01922, 5.6641, -1.78815, -0.707741, 1.21227, 1.78815, -1.78815, -1.39395, 5.78659, -8.28248, -3.73549, -1.78815, 9.86504, 0.659504, 1.96259e-12, 2.4959, -1.00668, 1.78815, 0.707741}, {0.349938, 1.44665, 0.572575, 3.49307, 0, 0, 0.183612, -1.44665, 1.44665, 0.630806, -1.5874e-12, -2.01922, -0.393077, -7.57474, -2.99804, 0.47782, 7.57474, -7.57474, -0.659504, -1.9625e-12, -2.4959, -1.21227, -1.78815, 1.78815, -1.86372, 8.31176e-12, 10.5728, -1.00668, 1.78815, 0.707741}, {0.349938, 1.44665, 0.572575, -1.16436, 0, 0, -0.550835, 4.33994, -4.33994, 0.630806, -1.58632e-12, -2.01922, 1.00668, -1.78815, -0.707741, 5.86969, 1.78815, -1.78815, -2.05926, -5.78659, -4.7862, -1.21227, -1.78815, 1.78815, 0.659504, 1.9608e-12, 2.4959, -3.5299, 1.78815, 8.78463}, {0.349938, 1.44665, 0.572575, -1.16436, 0, 0, 0.183612, -1.44665, 1.44665, -1.89242, 4.76004e-12, 6.05767, 1.00668, -1.78815, -0.707741, 1.21227, 1.78815, -1.78815, -0.659504, -1.9616e-12, -2.4959, -2.61202, -7.57474, -0.502145, 5.31693, 1.96124e-12, 2.4959, -1.74112, 7.57474, -5.07885}, {-5.36656, 5.36656, -5.36656, 1.85814, -0.190281, -1.41539, 0, 1.60567, 0, -3.64699, 0.373467, -0.373467, -11.9405, 3.20747, 5.19992, -2.29678, -1.74951, 1.74951, -2.21115, -6.19624, -2.21115, 16.8847, 0.255645, -0.255645, 2.21115, -0.226431, 2.21115, 4.50793, -2.44635, 0.461631}, {1.78885, -1.78885, 1.78885, -5.57441, 0.570843, 4.24616, 1.45374e-15, 1.60567, 1.48869e-16, -3.64699, 0.373467, -0.373467, -11.6633, 9.60176, -7.61705, -2.29678, -8.17219, 1.74951, -2.21115, 0.226431, -2.21115, 2.29678, 1.74951, -1.74951, 16.7991, -1.7203, 3.70501, 4.50793, -2.44635, 0.461631}, {1.78885, -1.78885, 1.78885, 1.85814, -0.190281, -1.41539, 0, -4.817, 0, -3.64699, 0.373467, -0.373467, -4.50793, 2.44635, -0.461631, -9.72932, -0.988391, 7.41106, -9.36656, 7.38185, -9.36656, 2.29678, 1.74951, -1.74951, 2.21115, -0.226431, 2.21115, 19.0959, -3.94022, 1.9555}, {1.78885, -1.78885, 1.78885, 1.85814, -0.190281, -1.41539, 0, 1.60567, 0, 10.941, -1.1204, 1.1204, -4.50793, 2.44635, -0.461631, -2.29678, -1.74951, 1.74951, -2.21115, 0.226431, -2.21115, -4.85864, 8.90493, -8.90493, -5.2214, 0.534693, 7.87269, 4.50793, -8.86902, 0.461631}, {-2.3518, -6.05767, 5.91882e-12, 0.531029, -0.572575, 1.44665, -0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -3.7495, 0.502145, -7.57474, -0.336326, 2.4959, -2.43872e-12, 0.386809, 5.07885, 7.57474, 4.56043, -2.4959, 2.43872e-12, 0.648932, 0.707741, -1.78815, 1.62538, 1.78815, 1.78815}, {0.783932, 2.01922, -1.97264e-12, -1.59309, 1.71772, -4.33994, -0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -4.76111, -9.86504, -1.78815, 0.699414, 8.28248, 5.78659, -0.648932, -0.707741, 1.78815, 0.336326, -2.4959, 2.43827e-12, 4.87303, 0.707741, -1.78815, 1.62538, 1.78815, 1.78815}, {0.783932, 2.01922, -1.9722e-12, 0.531029, -0.572575, 1.44665, 0.776805, 4.33994, 4.33994, -1.05603, 0, 0, -1.62538, -1.78815, -1.78815, -2.46044, 4.7862, -5.78659, -3.78466, -8.78463, 1.78815, 0.336326, -2.4959, 2.43783e-12, 0.648932, 0.707741, -1.78815, 5.84948, 1.78815, 1.78815}, {0.783932, 2.01922, -1.97331e-12, 0.531029, -0.572575, 1.44665, -0.258935, -1.44665, -1.44665, 3.16808, 0, 0, -1.62538, -1.78815, -1.78815, -0.336326, 2.4959, -2.43894e-12, -0.648932, -0.707741, 1.78815, -2.7994, -10.5728, 1.03313e-11, -1.47518, 2.99804, -7.57474, 2.66112, 7.57474, 7.57474}, {-5.36656, -5.36656, -5.36656, 2.778, -3.64699, -0.373467, -1.41539, 1.85814, -1.41539, -3.15147, 0, 0, -16.7569, 16.8847, -0.255645, -1.68428, 2.21115, 2.21115, 5.19992, -11.9405, 5.19992, 14.2902, -2.21115, -2.21115, 0.461631, 4.50793, 0.461631, 5.64494, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, -8.334, 10.941, 1.1204, -1.41539, 1.85814, -1.41539, -3.15147, 0, 0, -12.8004, -4.85864, -8.90493, 3.97726, -5.2214, 7.87269, -0.461631, -4.50793, -0.461631, 1.68428, -2.21115, -2.21115, 13.0675, 4.50793, 0.461631, 5.64494, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 2.778, -3.64699, -0.373467, 4.24616, -5.57441, 4.24616, -3.15147, 0, 0, -5.64494, 2.29678, -1.74951, -12.7963, 16.7991, 3.70501, -7.61705, -11.6633, -7.61705, 1.68428, -2.21115, -2.21115, 0.461631, 4.50793, 0.461631, 18.2508, -2.29678, 1.74951}, {1.78885, 1.78885, 1.78885, 2.778, -3.64699, -0.373467, -1.41539, 1.85814, -1.41539, 9.45441, 0, 0, -5.64494, 2.29678, -1.74951, -1.68428, 2.21115, 2.21115, -0.461631, -4.50793, -0.461631, -5.47113, -9.36656, -9.36656, -10.6504, 19.0959, 1.9555, 11.3065, -9.72932, 7.41106}, {0.408534, -3.98943, 5.22554, 1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 0.198723, -1.60567, 0, 0, -7.91157, -4.84171, -5.92686, -2.15304, 1.64373, -2.15304, -0.872199, 8.51722, 1.11252, 8.57571, -1.64373, 2.15304, 0.0773091, -0.754941, -1.90741, 1.73908, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, -4.62937, -1.83228, -4.62937, 0.198723, -1.94057, 0.198723, -1.60567, 0, 0, -1.19437, -7.71791, 7.21302, -2.94793, 9.40601, -2.94793, -0.0773091, 0.754941, 1.90741, 2.15304, -1.64373, 2.15304, 6.49998, -0.754941, -1.90741, 1.73908, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, 1.54312, 0.61076, 1.54312, -0.596168, 5.82171, -0.596168, -1.60567, 0, 0, -1.73908, -2.39867, 0.245635, -8.32553, -0.799305, -8.32553, 0.467403, -4.5643, 8.87479, 2.15304, -1.64373, 2.15304, 0.0773091, -0.754941, -1.90741, 8.16175, 2.39867, -0.245635}, {-0.136178, 1.32981, -1.74185, 1.54312, 0.61076, 1.54312, 0.198723, -1.94057, 0.198723, 4.817, 0, 0, -1.73908, -2.39867, 0.245635, -2.15304, 1.64373, -2.15304, -0.0773091, 0.754941, 1.90741, 2.69775, -6.96297, 9.12042, -6.09519, -3.19798, -8.0799, 0.94419, 10.1609, -1.04052}, {-1.29949, 3.9353, 2.21079, 1.70046, 1.31177, -0.409533, -0.573592, 0, 1.62837, -1.56004, 0, -0.481907, -9.43917, -5.24706, 3.05524, -1.39289, -1.62143, -1.50656, 2.46795, 1.62143, -7.61536, 7.63304, 1.62143, 3.43419, -0.173579, -1.62143, 1.10188, 2.63731, 0, -1.4171}, {0.433164, -1.31177, -0.736929, -5.10139, -3.9353, 1.2286, -0.573592, 0, 1.62837, -1.56004, 0, -0.481907, -4.36997, 5.24706, 4.36482, 0.901477, -1.62143, -8.02004, 0.173579, 1.62143, -1.10188, 1.39289, 1.62143, 1.50656, 6.06657, -1.62143, 3.02951, 2.63731, 0, -1.4171}, {0.433164, -1.31177, -0.736929, 1.70046, 1.31177, -0.409533, 1.72078, 0, -4.88511, -1.56004, 0, -0.481907, -2.63731, 3.2565e-16, 1.4171, -8.19475, -6.86849, 0.131566, -1.55908, 6.86849, 1.84584, 1.39289, 1.62143, 1.50656, -0.173579, -1.62143, 1.10188, 8.87746, 0, 0.510523}, {0.433164, -1.31177, -0.736929, 1.70046, 1.31177, -0.409533, -0.573592, 0, 1.62837, 4.68011, 0, 1.44572, -2.63731, 3.2565e-16, 1.4171, -1.39289, -1.62143, -1.50656, 0.173579, 1.62143, -1.10188, -0.339765, 6.86849, 4.45428, -6.97544, -6.86849, 2.74001, 4.93168, 0, -7.93058}, {10.941, 1.1204, -5.07489, 1.78885, 1.78885, -0.204309, 0, 0, -2.39759, 1.85814, -1.41539, 0.910268, -4.85864, -8.90493, -1.02119, -2.21115, -2.21115, 3.21612, 4.50793, 0.461631, 10.463, -5.2214, 7.87269, -6.8572, -4.50793, -0.461631, -0.872613, -2.29678, 1.74951, 1.83843}, {-3.64699, -0.373467, 1.69163, -5.36656, -5.36656, 0.612928, 0, 0, -2.39759, 1.85814, -1.41539, 0.910268, 16.8847, -0.255645, -8.60495, -2.21115, -2.21115, 12.8065, 4.50793, 0.461631, 0.872613, 2.21115, 2.21115, -3.21612, -11.9405, 5.19992, -4.51368, -2.29678, 1.74951, 1.83843}, {-3.64699, -0.373467, 1.69163, 1.78885, 1.78885, -0.204309, 0, 0, 7.19277, 1.85814, -1.41539, 0.910268, 2.29678, -1.74951, -1.83843, -9.36656, -9.36656, 4.03336, 19.0959, 1.9555, -5.89391, 2.21115, 2.21115, -3.21612, -4.50793, -0.461631, -0.872613, -9.72932, 7.41106, -1.80264}, {-3.64699, -0.373467, 1.69163, 1.78885, 1.78885, -0.204309, 0, 0, -2.39759, -5.57441, 4.24616, -2.7308, 2.29678, -1.74951, -1.83843, -2.21115, -2.21115, 3.21612, 4.50793, 0.461631, 0.872613, 16.7991, 3.70501, -9.98265, -11.6633, -7.61705, -0.0553752, -2.29678, 1.74951, 11.4288}, {-5.36656, 5.36656, -5.36656, 3.86512e-15, 3.15147, 1.39953e-15, -3.15147, 0, 0, 1.36261, -1.36261, -1.78885, -2.21115, -14.2902, -2.21115, 3.89543, -3.89543, -1.72992e-15, 14.2902, 2.21115, -2.21115, -9.34589, 9.34589, 7.15542, -1.68428, -2.21115, 2.21115, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, -1.0595e-14, -9.45441, 4.1986e-15, -3.15147, 0, 0, 1.36261, -1.36261, -1.78885, -9.36656, 5.47113, -9.36656, 16.5013, -3.89543, 1.72992e-15, 1.68428, 2.21115, -2.21115, -3.89543, 3.89543, -2.17401e-15, -7.13474, 3.23931, 9.36656, 2.21115, 1.68428, 2.21115}, {1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 9.45441, 0, 0, 1.36261, -1.36261, -1.78885, -2.21115, -1.68428, -2.21115, 3.89543, -16.5013, 0, -5.47113, 9.36656, -9.36656, -3.89543, 3.89543, -4.44089e-16, -1.68428, -2.21115, 2.21115, -3.23931, 7.13474, 9.36656}, {1.78885, -1.78885, 1.78885, -1.06606e-15, 3.15147, 1.39953e-15, -3.15147, 0, 0, -4.08784, 4.08784, 5.36656, -2.21115, -1.68428, -2.21115, 3.89543, -3.89543, -1.72992e-15, 1.68428, 2.21115, -2.21115, -11.0508, 11.0508, -7.15542, -1.68428, -14.817, 2.21115, 14.817, 1.68428, 2.21115}, {-3.13871, 2.39624, 3.14224, -1.3586, 1.03722, -0.984492, 1.05172, 0.985921, 1.29286, -0.739357, -1.22439, 0.739047, 5.8205, -4.44365, 6.44954, 0.379324, -2.50074, -0.381162, -6.8001, -4.17504, -5.47482, 2.5781, 7.39832, -2.57503, 2.59322, 0.231359, 0.303387, -0.386102, 0.294769, -2.51157}, {1.04624, -0.798747, -1.04741, 4.0758, -3.11166, 2.95348, 1.05172, 0.985921, 1.29286, -0.739357, -1.22439, 0.739047, -3.79884, 2.90022, 6.70123, -3.82756, -6.44442, -5.5526, -2.59322, -0.231359, -0.303387, -0.379324, 2.50074, 0.381162, 5.55064, 5.12894, -2.6528, -0.386102, 0.294769, -2.51157}, {1.04624, -0.798747, -1.04741, -1.3586, 1.03722, -0.984492, -3.15516, -2.95776, -3.87858, -0.739357, -1.22439, 0.739047, 0.386102, -0.294769, 2.51157, 5.81372, -6.64962, 3.55681, -6.77816, 2.96363, 3.88627, -0.379324, 2.50074, 0.381162, 2.59322, 0.231359, 0.303387, 2.57132, 5.19235, -5.46776}, {1.04624, -0.798747, -1.04741, -1.3586, 1.03722, -0.984492, 1.05172, 0.985921, 1.29286, 2.21807, 3.67318, -2.21714, 0.386102, -0.294769, 2.51157, 0.379324, -2.50074, -0.381162, -2.59322, -0.231359, -0.303387, -4.56427, 5.69573, 4.57082, 8.02762, -3.91752, 4.24135, -4.59298, -3.64891, -7.68301}, {3.49307, 0, -5.19009e-16, 0.460877, 0.572575, 1.44665, -0.183612, 1.44665, -1.44665, 0.88709, -2.01922, 1.97395e-12, -0.973962, -2.99804, -7.57474, -0.342719, -2.4959, 2.44027e-12, 2.40063, -7.57474, 7.57474, -3.20564, 10.5728, -1.03361e-11, -1.66618, 1.78815, -1.78815, -0.869547, 0.707741, 1.78815}, {-1.16436, 0, 2.63061e-17, -1.38263, -1.71772, -4.33994, -0.183612, 1.44665, -1.44665, 0.88709, -2.01922, 1.97018e-12, 5.52697, -0.707741, -1.78815, 0.391727, -8.28248, 5.78659, 1.66618, -1.78815, 1.78815, 0.342719, 2.4959, -2.43516e-12, -5.21454, 9.86504, -1.78815, -0.869547, 0.707741, 1.78815}, {-1.16436, 0, 1.0874e-16, 0.460877, 0.572575, 1.44665, 0.550835, -4.33994, 4.33994, 0.88709, -2.01922, 1.97254e-12, 0.869547, -0.707741, -1.78815, -2.18623, -4.7862, -5.78659, 6.3236, -1.78815, 1.78815, 0.342719, 2.4959, -2.43827e-12, -1.66618, 1.78815, -1.78815, -4.41791, 8.78463, 1.78815}, {-1.16436, 0, 2.47018e-16, 0.460877, 0.572575, 1.44665, -0.183612, 1.44665, -1.44665, -2.66127, 6.05767, -5.92185e-12, 0.869547, -0.707741, -1.78815, -0.342719, -2.4959, 2.44005e-12, 1.66618, -1.78815, 1.78815, 5.00014, 2.4959, -2.44081e-12, -3.50969, -0.502145, -7.57474, -0.135101, -5.07885, 7.57474}, {-4.817, 1.77636e-15, 1.9984e-15, -1.78885, 1.78885, -1.78885, -0.190167, 1.85702, 1.41407, 0.373353, -3.64588, 0.374783, 7.38185, -9.36656, 9.36656, 2.4462, -4.50655, 0.463257, -0.988987, -9.72349, -7.40418, -3.93962, 19.0901, -1.96239, 1.74966, 2.29541, 1.74789, -0.226431, 2.21115, -2.21115}, {1.60567, -4.44089e-16, -1.55431e-15, 5.36656, -5.36656, 5.36656, -0.190167, 1.85702, 1.41407, 0.373353, -3.64588, 0.374783, -6.19624, -2.21115, 2.21115, 3.20687, -11.9346, -5.19303, -1.74966, -2.29541, -1.74789, -2.4462, 4.50655, -0.463257, 0.256242, 16.8789, 0.248757, -0.226431, 2.21115, -2.21115}, {1.60567, 8.88178e-16, 0, -1.78885, 1.78885, -1.78885, 0.570501, -5.57107, -4.24221, 0.373353, -3.64588, 0.374783, 0.226431, -2.21115, 2.21115, 9.60162, -11.662, 7.61867, -8.17233, -2.29541, -1.74789, -2.4462, 4.50655, -0.463257, 1.74966, 2.29541, 1.74789, -1.71984, 16.7947, -3.71028}, {1.60567, -3.10862e-15, 1.11022e-16, -1.78885, 1.78885, -1.78885, -0.190167, 1.85702, 1.41407, -1.12006, 10.9376, -1.12435, 0.226431, -2.21115, 2.21115, 2.4462, -4.50655, 0.463257, -1.74966, -2.29541, -1.74789, -8.86888, 4.50655, -0.463257, 8.90507, -4.86001, 8.90331, 0.534237, -5.21694, -7.86743}, {-9.76996e-15, 1.33227e-14, -7.02938, 1.78885, -6.92972e-12, 0.00253498, -1.78885, 2.33948, -2.34566, 0, -2.33948, 0, -9.36656, 3.62896e-11, -2.90954, 3.9968e-15, -2.89175, 2.89626, 9.36656, -12.2497, 9.38578, -3.9968e-15, 12.2497, -2.89626, -2.21115, 2.89175, -0.00313341, 2.21115, -8.57092e-12, 2.8994}, {-1.9984e-15, 8.88178e-16, 2.34313, -5.36656, 2.07891e-11, -0.00760494, -1.78885, 2.33948, -2.34566, 0, -2.33948, 0, -2.21115, 8.55849e-12, -12.2719, 7.15542, -12.2497, 12.2789, 2.21115, -2.89175, 0.00313341, 2.66454e-15, 2.89175, -2.89626, -2.21115, 12.2497, -0.00313341, 2.21115, -8.56426e-12, 2.8994}, {4.21885e-15, -1.77636e-15, 2.34313, 1.78885, -6.9266e-12, 0.00253498, 5.36656, -7.01844, 7.03698, 0, -2.33948, 0, -2.21115, 8.56382e-12, -2.8994, -7.15542, -2.89175, 2.88612, 2.21115, -2.89175, -9.36937, -5.32907e-15, 2.89175, -2.89626, -2.21115, 2.89175, -0.00313341, 2.21115, 9.35791, 2.8994}, {0, 0, 2.34313, 1.78885, -6.92763e-12, 0.00253498, -1.78885, 2.33948, -2.34566, 0, 7.01844, 0, -2.21115, 8.56293e-12, -2.8994, 0, -2.89175, 2.89626, 2.21115, -2.89175, 0.00313341, 0, 2.89175, -12.2688, -9.36656, 2.89175, -0.0132733, 9.36656, -9.35791, 12.282}, {-2.1843e-11, 2.07647e-11, 5.36656, -2.34313, 0, 0, 0, 2.34313, 0, 2.34313, -2.34313, 1.78885, 12.2688, 8.55538e-12, 2.21115, 2.89626, -2.89626, 0, -8.99991e-12, -12.2688, 2.21115, -12.2688, 12.2688, -7.15542, 8.99991e-12, 2.89626, -2.21115, -2.89626, -8.55538e-12, -2.21115}, {7.27862e-12, -6.92069e-12, -1.78885, 7.02938, 0, 0, -1.36297e-15, 2.34313, -1.04056e-15, 2.34313, -2.34313, 1.78885, 2.89626, 3.62377e-11, 9.36656, 2.89626, -12.2688, 5.44843e-15, -8.99503e-12, -2.89626, 2.21115, -2.89626, 2.89626, -8.4211e-16, -9.3725, 12.2688, -9.36656, -2.89626, -8.55449e-12, -2.21115}, {7.2804e-12, -6.91935e-12, -1.78885, -2.34313, 0, 0, 0, -7.02938, 0, 2.34313, -2.34313, 1.78885, 2.89626, 8.55271e-12, 2.21115, 12.2688, -2.89626, 0, -3.81206e-11, -2.89626, 9.36656, -2.89626, 2.89626, 4.44089e-16, 8.99902e-12, 2.89626, -2.21115, -12.2688, 9.3725, -9.36656}, {7.27596e-12, -6.91802e-12, -1.78885, -2.34313, 0, 0, 0, 2.34313, 0, -7.02938, 7.02938, -5.36656, 2.89626, 8.55138e-12, 2.21115, 2.89626, -2.89626, 0, -8.99325e-12, -2.89626, 2.21115, -2.89626, 2.89626, 7.15542, 9.3725, 2.89626, -2.21115, -2.89626, -9.3725, -2.21115}, {6.33782, 3.11659, -8.32035, 1.25748, 1.89399, 2.48645, -0.601124, 0.601124, -3.34812, 1.45625, -1.45625, -1.91178, -3.97294, -8.63294, -16.4474, -0.811303, -3.08413, 1.06509, 5.75885, -1.86342, 14.1028, -5.01369, 8.90912, 6.58202, -3.35435, -0.541075, -0.71033, -1.05699, 1.05699, 6.50159}, {-2.11261, -1.03886, 2.77345, -3.77244, -5.68196, -7.45934, -0.601124, 0.601124, -3.34812, 1.45625, -1.45625, -1.91178, 9.50741, 3.09846, -17.5954, 1.59319, -5.48862, 14.4576, 3.35435, 0.541075, 0.71033, 0.811303, 3.08413, -1.06509, -9.17934, 5.28392, 6.93678, -1.05699, 1.05699, 6.50159}, {-2.11261, -1.03886, 2.77345, 1.25748, 1.89399, 2.48645, 1.80337, -1.80337, 10.0444, 1.45625, -1.45625, -1.91178, 1.05699, -1.05699, -6.50159, -5.84123, -10.6601, -8.8807, 11.8048, 4.69653, -10.3835, 0.811303, 3.08413, -1.06509, -3.35435, -0.541075, -0.71033, -6.88198, 6.88198, 14.1487}, {-2.11261, -1.03886, 2.77345, 1.25748, 1.89399, 2.48645, -0.601124, 0.601124, -3.34812, -4.36874, 4.36874, 5.73533, 1.05699, -1.05699, -6.50159, -0.811303, -3.08413, 1.06509, 3.35435, 0.541075, 0.71033, 9.26172, 7.23958, -12.1589, -8.38428, -8.11702, -10.6561, 1.34751, -1.34751, 19.8941}, {-4.24616, -5.57441, -4.24476, 0.373467, -3.64699, -2.77708, -1.78885, 1.78885, -1.78885, 0, 0, 3.15102, -3.70501, 16.7991, 12.7921, 1.74951, 2.29678, 5.64381, 7.61705, -11.6633, 7.61763, -1.74951, -2.29678, -18.2479, -0.461631, 4.50793, -0.462209, 2.21115, -2.21115, -1.68373}, {1.41539, 1.85814, 1.41492, -1.1204, 10.941, 8.33125, -1.78885, 1.78885, -1.78885, 1.39933e-15, -1.39933e-15, 3.15102, -7.87269, -5.2214, -3.97595, 8.90493, -4.85864, 12.7992, 0.461631, -4.50793, 0.462209, -1.74951, -2.29678, -5.64381, -0.461631, 4.50793, -13.0663, 2.21115, -2.21115, -1.68373}, {1.41539, 1.85814, 1.41492, 0.373467, -3.64699, -2.77708, 5.36656, -5.36656, 5.36656, 0, 0, 3.15102, -2.21115, 2.21115, 1.68373, 0.255645, 16.8847, 16.7521, -5.19992, -11.9405, -5.19747, -1.74951, -2.29678, -5.64381, -0.461631, 4.50793, -0.462209, 2.21115, -2.21115, -14.2878}, {1.41539, 1.85814, 1.41492, 0.373467, -3.64699, -2.77708, -1.78885, 1.78885, -1.78885, 0, 0, -9.45305, -2.21115, 2.21115, 1.68373, 1.74951, 2.29678, 5.64381, 0.461631, -4.50793, 0.462209, -7.41106, -9.72932, -11.3035, -1.9555, 19.0959, 10.6461, 9.36656, -9.36656, 5.47169}, {2.81917, 4.24616, 5.57441, -1.67083, -0.373467, 3.64699, 0.18745, 1.78885, -1.78885, 2.4231, 0, 0, 9.91012, 3.70501, -16.7991, 1.83355, -1.74951, -2.29678, 0.18006, -7.61705, 11.6633, -11.526, 1.74951, 2.29678, -0.929861, 0.461631, -4.50793, -3.22682, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, 5.01248, 1.1204, -10.941, 0.18745, 1.78885, -1.78885, 2.4231, -1.07607e-15, 1.07607e-15, 6.98571, 7.87269, 5.2214, 1.08375, -8.90493, 4.85864, 0.929861, -0.461631, 4.50793, -1.83355, 1.74951, 2.29678, -10.6223, 0.461631, -4.50793, -3.22682, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, -1.67083, -0.373467, 3.64699, -0.56235, -5.36656, 5.36656, 2.4231, 0, 0, 3.22682, 2.21115, -2.21115, 8.51686, -0.255645, -16.8847, 4.68875, 5.19992, 11.9405, -1.83355, 1.74951, 2.29678, -0.929861, 0.461631, -4.50793, -12.9192, -2.21115, 2.21115}, {-0.939723, -1.41539, -1.85814, -1.67083, -0.373467, 3.64699, 0.18745, 1.78885, -1.78885, -7.2693, 0, 0, 3.22682, 2.21115, -2.21115, 1.83355, -1.74951, -2.29678, 0.929861, -0.461631, 4.50793, 1.92534, 7.41106, 9.72932, 5.75345, 1.9555, -19.0959, -3.97662, -9.36656, 9.36656}, {-3.55271e-15, -7.99361e-15, -9.45441, -3.15147, 0, 0, 1.78937, -1.78885, -1.78885, 1.3621, 1.78885, -1.36261, 16.5013, -3.55271e-15, -3.89543, 1.68365, 2.21115, 2.21115, -9.36924, 9.36656, 5.47113, -7.13206, -9.36656, 3.23931, 2.21178, -2.21115, 1.68428, -3.89543, 3.55271e-15, 3.89543}, {-2.22045e-16, 2.88658e-15, 3.15147, 9.45441, 0, 0, 1.78937, -1.78885, -1.78885, 1.3621, 1.78885, -1.36261, 3.89543, -1.42109e-14, -16.5013, -5.47381, 9.36656, 9.36656, -2.21178, 2.21115, -1.68428, -1.68365, -2.21115, -2.21115, -3.23663, -9.36656, 7.13474, -3.89543, 3.55271e-15, 3.89543}, {2.22045e-16, 0, 3.15147, -3.15147, 0, 0, -5.3681, 5.36656, 5.36656, 1.3621, 1.78885, -1.36261, 3.89543, 0, -3.89543, 14.2895, 2.21115, 2.21115, -2.21178, 2.21115, -14.2902, -1.68365, -2.21115, -2.21115, 2.21178, -2.21115, 1.68428, -9.34384, -7.15542, 9.34589}, {8.88178e-16, 1.55431e-15, 3.15147, -3.15147, 0, 0, 1.78937, -1.78885, -1.78885, -4.08631, -5.36656, 4.08784, 3.89543, -2.22045e-15, -3.89543, 1.68365, 2.21115, 2.21115, -2.21178, 2.21115, -1.68428, -1.68365, -2.21115, -14.817, 14.8177, -2.21115, 1.68428, -11.0529, 7.15542, 11.0508}, {-5.22583, 5.22504, 3.98456, 2.34612, 2.92755e-15, 1.19114e-15, -2.54361, 0.198607, 1.93944, -1.54445, 1.54307, -0.611252, -14.4376, 2.15284, 1.64173, 0.244118, -0.245492, -2.39728, 11.1654, 1.11292, -8.51331, 5.93368, -5.9268, 4.84229, -0.990917, -1.90734, 0.755549, 5.05312, -2.15284, -1.64173}, {1.74194, -1.74168, -1.32819, -7.03835, -2.34918e-15, 4.45681e-15, -2.54361, 0.198607, 1.93944, -1.54445, 1.54307, -0.611252, -12.0209, 9.11956, 6.95448, 10.4186, -1.03992, -10.155, 0.990917, 1.90734, -0.755549, -0.244118, 0.245492, 2.39728, 5.18688, -8.07964, 3.20056, 5.05312, -2.15284, -1.64173}, {1.74194, -1.74168, -1.32819, 2.34612, 0, 0, 7.63084, -0.595821, -5.81832, -1.54445, 1.54307, -0.611252, -5.05312, 2.15284, 1.64173, -9.14035, -0.245492, -2.39728, -5.97686, 8.87406, 4.5572, -0.244118, 0.245492, 2.39728, -0.990917, -1.90734, 0.755549, 11.2309, -8.32513, 0.803277}, {1.74194, -1.74168, -1.32819, 2.34612, -8.98735e-16, 3.56012e-16, -2.54361, 0.198607, 1.93944, 4.63335, -4.62922, 1.83376, -5.05312, 2.15284, 1.64173, 0.244118, -0.245492, -2.39728, 0.990917, 1.90734, -0.755549, -7.21189, 7.21221, 7.71003, -10.3754, -1.90734, 0.755549, 15.2276, -2.94726, -9.39949}, {-9.45441, 1.33227e-14, -1.06581e-14, -1.78937, -1.78885, -1.78885, -1.3621, 1.78885, -1.36261, 0, 0, 3.15147, 5.47381, 9.36656, 9.36656, 3.89543, -5.32907e-15, 3.89543, 3.23663, -9.36656, 7.13474, -3.89543, 5.32907e-15, -16.5013, 2.21178, 2.21115, -1.68428, 1.68365, -2.21115, -2.21115}, {3.15147, 2.7318e-15, 0, 5.3681, 5.36656, 5.36656, -1.3621, 1.78885, -1.36261, 1.06566e-15, -1.39953e-15, 3.15147, -14.2895, 2.21115, 2.21115, 9.34384, -7.15542, 9.34589, -2.21178, -2.21115, 1.68428, -3.89543, -1.33227e-15, -3.89543, 2.21178, 2.21115, -14.2902, 1.68365, -2.21115, -2.21115}, {3.15147, 0, 2.22045e-15, -1.78937, -1.78885, -1.78885, 4.08631, -5.36656, 4.08784, 0, 0, 3.15147, -1.68365, 2.21115, 2.21115, 11.0529, 7.15542, 11.0508, -14.8177, -2.21115, 1.68428, -3.89543, 0, -3.89543, 2.21178, 2.21115, -1.68428, 1.68365, -2.21115, -14.817}, {3.15147, 0, 0, -1.78937, -1.78885, -1.78885, -1.3621, 1.78885, -1.36261, 0, 0, -9.45441, -1.68365, 2.21115, 2.21115, 3.89543, 0, 3.89543, -2.21178, -2.21115, 1.68428, -16.5013, 0, -3.89543, 9.36924, 9.36656, 5.47113, 7.13206, -9.36656, 3.23931}, {-7.03835, 0, -2.66454e-15, -2.34612, 2.34348, -1.78885, -1.03933e-11, 0.00114147, 1.78885, 0, -2.34462, 0, 9.38447, -12.2706, 9.36656, 2.89996, -2.89811, 1.33227e-15, -2.89996, -0.00597681, -9.36656, -2.89996, 12.2766, -1.33227e-15, 2.89996, 0.00141093, 2.21115, 1.28469e-11, 2.8967, -2.21115}, {2.34612, -3.9968e-15, 0, 7.03835, -7.03044, 5.36656, -1.03933e-11, 0.00114147, 1.78885, 0, -2.34462, 0, -9.38447, -2.8967, 2.21115, 2.89996, -2.90268, -7.15542, -2.89996, -0.00141093, -2.21115, -2.89996, 2.89811, 0, 2.89996, 9.37989, 2.21115, 1.28469e-11, 2.8967, -2.21115}, {2.34612, -1.77636e-15, 0, -2.34612, 2.34348, -1.78885, 3.11847e-11, -0.00342441, -5.36656, 0, -2.34462, 0, -1.28494e-11, -2.8967, 2.21115, 12.2844, -12.272, 7.15542, -12.2844, -0.00141093, -2.21115, -2.89996, 2.89811, 0, 2.89996, 0.00141093, 2.21115, 1.28488e-11, 12.2752, -2.21115}, {2.34612, 2.66454e-15, 0, -2.34612, 2.34348, -1.78885, -1.03918e-11, 0.00114147, 1.78885, 0, 7.03386, 0, -1.28455e-11, -2.8967, 2.21115, 2.89996, -2.89811, 0, -2.89996, -0.00141093, -2.21115, -12.2844, 2.89811, 0, 12.2844, -9.37251, 9.36656, 5.4412e-11, 2.89213, -9.36656}, {-1.11022e-15, 0, 5.41667, 2.01922, -1.97048e-12, 0.623753, -1.44665, -1.44665, 0.584061, -0.572575, 1.44665, 0.597742, -10.5728, 1.03175e-11, -1.03422, -0.707741, 1.78815, -1.49294, 7.57474, 7.57474, -0.826394, 2.99804, -7.57474, -0.898027, -1.78815, -1.78815, -1.50985, 2.4959, -2.43561e-12, -1.46079}, {-1.11022e-16, 2.22045e-16, -1.80556, -6.05767, 5.9153e-12, -1.87126, -1.44665, -1.44665, 0.584061, -0.572575, 1.44665, 0.597742, -2.4959, 2.43716e-12, 8.68301, 5.07885, 7.57474, -3.82918, 1.78815, 1.78815, 1.50985, 0.707741, -1.78815, 1.49294, 0.502145, -7.57474, -3.90082, 2.4959, -2.43716e-12, -1.46079}, {0, 2.22045e-16, -1.80556, 2.01922, -1.97103e-12, 0.623753, 4.33994, 4.33994, -1.75218, -0.572575, 1.44665, 0.597742, -2.4959, 2.43627e-12, 1.46079, -8.78463, 1.78815, -3.98795, 1.78815, 1.78815, 8.73207, 0.707741, -1.78815, 1.49294, -1.78815, -1.78815, -1.50985, 4.7862, -5.78659, -3.85176}, {1.11022e-16, 2.22045e-16, -1.80556, 2.01922, -1.97085e-12, 0.623753, -1.44665, -1.44665, 0.584061, 1.71772, -4.33994, -1.79323, -2.4959, 2.43583e-12, 1.46079, -0.707741, 1.78815, -1.49294, 1.78815, 1.78815, 1.50985, 0.707741, -1.78815, 8.71516, -9.86504, -1.78815, -4.00486, 8.28248, 5.78659, -3.79703}, {8.56414, 1.25642, -1.25642, 2.63957, -0.971716, -0.633952, 1.54777, 0.0578944, 1.54777, -1.33263, 1.33263, -1.33263, -10.2923, 5.60564, 2.80174, -5.17584, 1.12955, -1.12955, -4.57563, 0.214536, -8.62192, 10.5064, -6.46006, 6.46006, -1.61547, -0.446113, 2.43083, -0.265934, -1.71878, -0.265934}, {-2.85471, -0.418807, 0.418807, -7.91871, 2.91515, 1.90186, 1.54777, 0.0578944, 1.54777, -1.33263, 1.33263, -1.33263, 11.6848, 3.39401, -1.4093, -11.3669, 0.897968, -7.32064, 1.61547, 0.446113, -2.43083, 5.17584, -1.12955, 1.12955, 3.71505, -5.77663, 7.76134, -0.265934, -1.71878, -0.265934}, {-2.85471, -0.418807, 0.418807, 2.63957, -0.971716, -0.633952, -4.64332, -0.173683, -4.64332, -1.33263, 1.33263, -1.33263, 0.265934, 1.71878, 0.265934, -15.7341, 5.01641, 1.40626, 13.0343, 2.12134, -4.10606, 5.17584, -1.12955, 1.12955, -1.61547, -0.446113, 2.43083, 5.06458, -7.0493, 5.06458}, {-2.85471, -0.418807, 0.418807, 2.63957, -0.971716, -0.633952, 1.54777, 0.0578944, 1.54777, 3.99789, -3.99789, 3.99789, 0.265934, 1.71878, 0.265934, -5.17584, 1.12955, -1.12955, 1.61547, 0.446113, -2.43083, 16.5947, 0.545684, -0.545684, -12.1737, 3.44075, 4.96664, -6.45703, -1.95036, -6.45703}, {-0.339403, 0.339403, -5.15641, -0.164984, -1.44068, -0.164984, 1.07377, 0.531894, -0.531894, -1.02192, 1.02192, -1.02192, 0.724024, 7.68336, -1.26069, -1.12333, 1.12333, 0.861388, -5.7622, -2.64519, 0.660475, 5.21103, -5.21103, 3.22631, 1.4671, 0.517615, 1.4671, -0.0640894, -1.92063, 1.92063}, {0.113134, -0.113134, 1.7188, 0.494951, 4.32205, 0.494951, 1.07377, 0.531894, -0.531894, -1.02192, 1.02192, -1.02192, -0.388448, 2.37316, -8.79583, -5.41842, -1.00425, 2.98896, -1.4671, -0.517615, -1.4671, 1.12333, -1.12333, -0.861388, 5.5548, -3.57008, 5.5548, -0.0640894, -1.92063, 1.92063}, {0.113134, -0.113134, 1.7188, -0.164984, -1.44068, -0.164984, -3.22132, -1.59568, 1.59568, -1.02192, 1.02192, -1.02192, 0.0640894, 1.92063, -1.92063, -0.463392, 6.88606, 1.52132, -1.91964, -0.0650781, -8.34231, 1.12333, -1.12333, -0.861388, 1.4671, 0.517615, 1.4671, 4.02361, -6.00832, 6.00832}, {0.113134, -0.113134, 1.7188, -0.164984, -1.44068, -0.164984, 1.07377, 0.531894, -0.531894, 3.06577, -3.06577, 3.06577, 0.0640894, 1.92063, -1.92063, -1.12333, 1.12333, 0.861388, -1.4671, -0.517615, -1.4671, 0.67079, -0.67079, -7.7366, 2.12703, 6.28035, 2.12703, -4.35919, -4.0482, 4.0482}, {-1.94182, 3.40923, 1.10711, 0.155006, 1.62575, -1.6184, 0.710689, -0.184627, 1.53026, -1.51297, -0.304717, 0.45717, -1.6117, -7.10787, 8.93018, -1.07006, -1.78133, 0.108939, -4.52129, 2.3714, -7.5564, 7.12193, 3.0002, -1.93762, 1.67853, -1.63289, 1.43535, 0.991672, 0.604862, -2.4566}, {0.647273, -1.13641, -0.369036, -0.465018, -4.87726, 4.85519, 0.710689, -0.184627, 1.53026, -1.51297, -0.304717, 0.45717, -3.58076, 3.94077, 3.93275, -3.91281, -1.04282, -6.01211, -1.67853, 1.63289, -1.43535, 1.07006, 1.78133, -0.108939, 7.73041, -0.414023, -0.393324, 0.991672, 0.604862, -2.4566}, {0.647273, -1.13641, -0.369036, 0.155006, 1.62575, -1.6184, -2.13207, 0.553881, -4.59079, -1.51297, -0.304717, 0.45717, -0.991672, -0.604862, 2.4566, -1.69008, -8.28434, 6.58252, -4.26763, 6.17852, 0.0407896, 1.07006, 1.78133, -0.108939, 1.67853, -1.63289, 1.43535, 7.04355, 1.82373, -4.28528}, {0.647273, -1.13641, -0.369036, 0.155006, 1.62575, -1.6184, 0.710689, -0.184627, 1.53026, 4.53891, 0.91415, -1.37151, -0.991672, -0.604862, 2.4566, -1.07006, -1.78133, 0.108939, -1.67853, 1.63289, -1.43535, -1.51903, 6.32696, 1.36721, 1.05851, -8.1359, 7.90894, -1.85108, 1.34337, -8.57765}, {-5.53886e-11, 0.00342441, 5.36656, 2.34612, 1.36758e-15, 3.12566e-15, 0, -2.34462, 0, -2.34612, 2.34576, 1.78885, -12.2844, 0.00141093, 2.21115, -2.89996, 2.89811, -3.86352e-15, -2.28213e-11, 12.278, 2.21115, 12.2844, -12.2812, -7.15542, 2.28213e-11, -2.89952, -2.21115, 2.89996, -0.00141093, -2.21115}, {1.22999e-11, -0.00114147, -1.78885, -7.03835, -8.19548e-15, -3.12566e-15, 0, -2.34462, 0, -2.34612, 2.34576, 1.78885, -2.89996, 0.00597681, 9.36656, -2.89996, 12.2766, -1.28784e-15, -1.52034e-11, 2.89952, 2.21115, 2.89996, -2.89811, 1.73193e-15, 9.38447, -12.2826, -9.36656, 2.89996, -0.00141093, -2.21115}, {1.22964e-11, -0.00114147, -1.78885, 2.34612, 0, 0, 0, 7.03386, 0, -2.34612, 2.34576, 1.78885, -2.89996, 0.00141093, 2.21115, -12.2844, 2.89811, 0, -6.43876e-11, 2.90409, 9.36656, 2.89996, -2.89811, 4.44089e-16, 1.51994e-11, -2.89952, -2.21115, 12.2844, -9.38446, -9.36656}, {1.22991e-11, -0.00114147, -1.78885, 2.34612, -1.36625e-15, -1.04189e-15, 0, -2.34462, 0, 7.03835, -7.03729, -5.36656, -2.89996, 0.00141093, 2.21115, -2.89996, 2.89811, 1.28784e-15, -1.52025e-11, 2.89952, 2.21115, 2.89996, -2.89354, 7.15542, -9.38447, -2.89952, -2.21115, 2.89996, 9.37707, -2.21115}, {-4.82547e-12, 4.93775, 1.89782, -1.17597e-12, 1.20344, -0.85762, 1.44665, -0.256711, 0.444168, -1.44665, 0.69919, 1.04606, 4.16933e-12, -4.26682, 5.2725, -1.78815, -1.17022, 0.511055, -7.57474, 3.37862, -1.54375, 7.57474, -1.62654, -4.69529, 1.78815, -2.35178, -0.232925, 5.34461e-13, -0.546933, -1.84202}, {1.60938e-12, -1.64592, -0.632608, 3.52988e-12, -3.61031, 2.57286, 1.44665, -0.256711, 0.444168, -1.44665, 0.69919, 1.04606, -6.97309e-12, 7.13059, 4.37245, -7.57474, -0.143371, -1.26562, -1.78815, 2.35178, 0.232925, 1.78815, 1.17022, -0.511055, 7.57474, -5.14853, -4.41716, 5.34905e-13, -0.546933, -1.84202}, {1.60738e-12, -1.64592, -0.632608, -1.17532e-12, 1.20344, -0.85762, -4.33994, 0.770134, -1.3325, -1.44665, 0.69919, 1.04606, -5.34239e-13, 0.546933, 1.84202, -1.78815, -5.98397, 3.94153, -1.78815, 8.93544, 2.76336, 1.78815, 1.17022, -0.511055, 1.78815, -2.35178, -0.232925, 5.78659, -3.34369, -6.02626}, {1.60805e-12, -1.64592, -0.632608, -1.17575e-12, 1.20344, -0.85762, 1.44665, -0.256711, 0.444168, 4.33994, -2.09757, -3.13818, -5.34461e-13, 0.546933, 1.84202, -1.78815, -1.17022, 0.511055, -1.78815, 2.35178, 0.232925, 1.78815, 7.75388, 2.01938, 1.78815, -7.16552, 3.19755, -5.78659, 0.479913, -3.61869}, {3.67809, 0.0745323, 3.75892, 1.30596, 0.948366, 0.152693, 0.0437324, -1.35943, 0.016287, -0.123659, 0.435911, 1.08399, -5.32262, -4.935, 0.74925, -1.66831, 0.508107, -0.20887, 1.28647, 7.14879, 1.46348, 2.16294, -2.25175, -4.1271, -1.4614, -1.71106, -1.52863, 0.0987948, 1.14154, -1.36002}, {-1.22603, -0.0248441, -1.25297, -3.91787, -2.8451, -0.458078, 0.0437324, -1.35943, 0.016287, -0.123659, 0.435911, 1.08399, 4.80532, -1.04216, 6.37191, -1.84323, 5.94584, -0.274019, 1.4614, 1.71106, 1.52863, 1.66831, -0.508107, 0.20887, -0.966762, -3.4547, -5.8646, 0.0987948, 1.14154, -1.36002}, {-1.22603, -0.0248441, -1.25297, 1.30596, 0.948366, 0.152693, -0.131197, 4.0783, -0.0488611, -0.123659, 0.435911, 1.08399, -0.0987948, -1.14154, 1.36002, -6.89213, -3.28536, -0.819641, 6.36551, 1.81044, 6.54052, 1.66831, -0.508107, 0.20887, -1.4614, -1.71106, -1.52863, 0.593431, -0.602108, -5.69599}, {-1.22603, -0.0248441, -1.25297, 1.30596, 0.948366, 0.152693, 0.0437324, -1.35943, 0.016287, 0.370977, -1.30773, -3.25198, -0.0987948, -1.14154, 1.36002, -1.66831, 0.508107, -0.20887, 1.4614, 1.71106, 1.52863, 6.57242, -0.40873, 5.22076, -6.68522, -5.50453, -2.1394, -0.0761347, 6.57927, -1.42517}, {5.37088, 5.36291, 5.36619, 1.99086e-15, 6.84977e-16, 1.60567, 0.376399, 3.64451, 0.373213, 1.41389, -1.85687, -0.190152, 2.21292, 2.20964, -6.1964, -0.465254, -4.50486, -2.44603, 0.242074, -16.8733, 0.256821, -5.19032, 11.9323, 3.20664, -1.74767, 2.29522, -1.74967, -2.21292, -2.20964, -0.226277}, {-1.79029, -1.78764, -1.78873, -1.24068e-15, 6.57876e-15, -4.817, 0.376399, 3.64451, 0.373213, 1.41389, -1.85687, -0.190152, 9.37409, 9.36019, 7.3812, -1.97085, -19.0829, -3.93889, 1.74767, -2.29522, 1.74967, 0.465254, 4.50486, 2.44603, -7.40324, 9.72271, -0.989068, -2.21292, -2.20964, -0.226277}, {-1.79029, -1.78764, -1.78873, 0, 0, 1.60567, -1.1292, -10.9335, -1.11964, 1.41389, -1.85687, -0.190152, 2.21292, 2.20964, 0.226277, -0.465254, -4.50486, -8.8687, 8.90884, 4.85533, 8.90459, 0.465254, 4.50486, 2.44603, -1.74767, 2.29522, -1.74967, -7.8685, 5.21784, 0.53433}, {-1.79029, -1.78764, -1.78873, -5.63596e-16, 7.40172e-16, 1.60567, 0.376399, 3.64451, 0.373213, -4.24168, 5.57061, 0.570455, 2.21292, 2.20964, 0.226277, -0.465254, -4.50486, -2.44603, 1.74767, -2.29522, 1.74967, 7.62642, 11.6554, 9.60095, -1.74767, 2.29522, -8.17235, -3.71852, -16.7877, -1.71913}, {1.24345e-14, 1.42109e-14, -9.45441, 0, -3.15057, 0, 1.78885, 1.78834, -1.78885, -1.78885, 1.36222, -1.36261, 4.88498e-15, 16.4966, -3.89543, -2.21115, 1.6838, 2.21115, -9.36656, -9.36389, 5.47113, 9.36656, -7.1327, 3.23931, 2.21115, 2.21051, 1.68428, -4.88498e-15, -3.89432, 3.89543}, {1.33227e-15, 3.33067e-15, 3.15147, 0, 9.4517, 0, 1.78885, 1.78834, -1.78885, -1.78885, 1.36222, -1.36261, -5.32907e-15, 3.89432, -16.5013, -9.36656, -5.46957, 9.36656, -2.21115, -2.21051, -1.68428, 2.21115, -1.6838, -2.21115, 9.36656, -3.23838, 7.13474, 1.33227e-15, -3.89432, 3.89543}, {-1.11022e-15, -8.43769e-15, 3.15147, 0, -3.15057, 0, -5.36656, -5.36503, 5.36656, -1.78885, 1.36222, -1.36261, 1.33227e-15, 3.89432, -3.89543, -2.21115, 14.2861, 2.21115, -2.21115, -2.21051, -14.2902, 2.21115, -1.6838, -2.21115, 2.21115, 2.21051, 1.68428, 7.15542, -9.34321, 9.34589}, {0, -2.22045e-16, 3.15147, 0, -3.15057, 0, 1.78885, 1.78834, -1.78885, 5.36656, -4.08667, 4.08784, 0, 3.89432, -3.89543, -2.21115, 1.6838, 2.21115, -2.21115, -2.21051, -1.68428, 2.21115, -1.6838, -14.817, 2.21115, 14.8128, 1.68428, -7.15542, -11.0477, 11.0508}, {-5.91616e-12, 6.05767, -4.31695, 0, 0, -1.80556, 1.44665, 0.572575, -0.146817, -1.44665, 1.44665, 0.51339, -2.43761e-12, 2.4959, 7.67533, -1.78815, -0.707741, 2.41326, -7.57474, -0.502145, -1.00994, 7.57474, -5.07885, -4.46683, 1.78815, -1.78815, 1.5972, 2.43761e-12, -2.4959, -0.45311}, {1.97087e-12, -2.01922, 1.43898, 0, 0, 5.41667, 1.44665, 0.572575, -0.146817, -1.44665, 1.44665, 0.51339, -1.03206e-11, 10.5728, -5.30282, -7.57474, -2.99804, 3.00053, -1.78815, 1.78815, -1.5972, 1.78815, 0.707741, -2.41326, 7.57474, -7.57474, -0.456356, 2.43627e-12, -2.4959, -0.45311}, {1.97242e-12, -2.01922, 1.43898, 0, 0, -1.80556, -4.33994, -1.71772, 0.44045, -1.44665, 1.44665, 0.51339, -2.43783e-12, 2.4959, 0.45311, -1.78815, -0.707741, 9.63549, -1.78815, 9.86504, -7.35313, 1.78815, 0.707741, -2.41326, 1.78815, -1.78815, 1.5972, 5.78659, -8.28248, -2.50667}, {1.97198e-12, -2.01922, 1.43898, 0, 0, -1.80556, 1.44665, 0.572575, -0.146817, 4.33994, -4.33994, -1.54017, -2.43761e-12, 2.4959, 0.45311, -1.78815, -0.707741, 2.41326, -1.78815, 1.78815, -1.5972, 1.78815, 8.78463, -8.16919, 1.78815, -1.78815, 8.81943, -5.78659, -4.7862, 0.134156}, {-4.33994, -4.33994, 1.75218, -1.97211e-12, -2.01922, 1.43898, 0, 0, -1.80556, -1.44665, 0.572575, 0.950635, -1.78815, 8.78463, -6.81267, 2.43766e-12, 2.4959, 0.45311, -1.78815, -1.78815, 10.176, 5.78659, -4.7862, -4.25565, 1.78815, 1.78815, -2.95373, 1.78815, -0.707741, 1.05674}, {1.44665, 1.44665, -0.584061, 5.92068e-12, 6.05767, -4.31695, 0, 0, -1.80556, -1.44665, 0.572575, 0.950635, -7.57474, -5.07885, 1.2795, 2.43945e-12, 2.4959, 7.67533, -1.78815, -1.78815, 2.95373, -2.43981e-12, -2.4959, -0.45311, 7.57474, -0.502145, -6.75627, 1.78815, -0.707741, 1.05674}, {1.44665, 1.44665, -0.584061, -1.97247e-12, -2.01922, 1.43898, 0, 0, 5.41667, -1.44665, 0.572575, 0.950635, -1.78815, 0.707741, -1.05674, 1.0328e-11, 10.5728, -5.30282, -7.57474, -7.57474, 5.28997, -2.43847e-12, -2.4959, -0.45311, 1.78815, 1.78815, -2.95373, 7.57474, -2.99804, -2.7458}, {1.44665, 1.44665, -0.584061, -1.97283e-12, -2.01922, 1.43898, 0, 0, -1.80556, 4.33994, -1.71772, -2.8519, -1.78815, 0.707741, -1.05674, 2.43856e-12, 2.4959, 0.45311, -1.78815, -1.78815, 2.95373, -5.78659, -8.28248, 1.88313, 1.78815, 9.86504, -8.70966, 1.78815, -0.707741, 8.27896}, {1.71772, 0.356094, 4.33994, 2.01922, -0.477594, 1.7444e-12, -1.44665, -0.786183, 1.44665, 0, 1.38248, 0, -9.86504, 2.64743, 1.78815, -0.707741, 1.56212, -1.78815, 8.28248, 4.26323, -5.78659, 0.707741, -7.09202, 1.78815, -2.4959, -1.11849, -2.1562e-12, 1.78815, -0.737058, -1.78815}, {-0.572575, -0.118698, -1.44665, -6.05767, 1.43278, -5.23264e-12, -1.44665, -0.786183, 1.44665, 4.96495e-16, 1.38248, -4.96495e-16, 0.502145, 1.21185, 7.57474, 5.07885, 4.70685, -7.57474, 2.4959, 1.11849, 2.15571e-12, 0.707741, -1.56212, 1.78815, -2.4959, -6.6484, -2.15337e-12, 1.78815, -0.737058, -1.78815}, {-0.572575, -0.118698, -1.44665, 2.01922, -0.477594, 1.7444e-12, 4.33994, 2.35855, -4.33994, 0, 1.38248, 0, -1.78815, 0.737058, 1.78815, -8.78463, 3.47249, -1.78815, 4.7862, 1.59329, 5.78659, 0.707741, -1.56212, 1.78815, -2.4959, -1.11849, -2.1562e-12, 1.78815, -6.26696, -1.78815}, {-0.572575, -0.118698, -1.44665, 2.01922, -0.477594, 1.74332e-12, -1.44665, -0.786183, 1.44665, 0, -4.14743, 0, -1.78815, 0.737058, 1.78815, -0.707741, 1.56212, -1.78815, 2.4959, 1.11849, 2.15522e-12, 2.99804, -1.08732, 7.57474, -10.5728, 0.791882, -9.12813e-12, 7.57474, 2.40768, -7.57474}, {-3.82778, -1.72626, -1.72406, -1.39459, 0.310766, 0.31037, -0.00684175, -1.71025, 0.635056, 0.125505, 0.824062, -1.52011, 5.72503, -2.33845, -2.33547, 1.73226, 1.72986, -1.16861, -1.54131, 8.24373, -4.03555, -2.23428, -5.02611, 7.24907, 1.56867, -1.40273, 1.49533, -0.146676, 1.09539, 1.09399}, {1.27593, 0.575422, 0.574688, 4.18377, -0.932299, -0.93111, -0.00684175, -1.71025, 0.635056, 0.125505, 0.824062, -1.52011, -4.95703, -3.39708, -3.39274, 1.75963, 8.57086, -3.70884, -1.56867, 1.40273, -1.49533, -1.73226, -1.72986, 1.16861, 1.06665, -4.69898, 7.57578, -0.146676, 1.09539, 1.09399}, {1.27593, 0.575422, 0.574688, -1.39459, 0.310766, 0.31037, 0.0205252, 5.13075, -1.90517, 0.125505, 0.824062, -1.52011, 0.146676, -1.09539, -1.09399, 7.31062, 0.486792, -2.41009, -6.67238, -0.898961, -3.79408, -1.73226, -1.72986, 1.16861, 1.56867, -1.40273, 1.49533, -0.648696, -2.20086, 7.17445}, {1.27593, 0.575422, 0.574688, -1.39459, 0.310766, 0.31037, -0.00684175, -1.71025, 0.635056, -0.376515, -2.47219, 4.56034, 0.146676, -1.09539, -1.09399, 1.73226, 1.72986, -1.16861, -1.56867, 1.40273, -1.49533, -6.83597, -4.03154, -1.13014, 7.14703, -2.64579, 0.253846, -0.119309, 7.93639, -1.44623}, {4.08784, 5.36656, -4.08784, 3.15147, -2.79907e-15, -3.33475e-16, -1.78885, 1.78885, 1.78885, 0, 0, -3.15147, -14.817, 2.21115, -1.68428, -1.68428, -2.21115, -2.21115, 11.0508, -7.15542, -11.0508, 1.68428, 2.21115, 14.817, -3.89543, 3.45984e-15, 3.89543, 2.21115, -2.21115, 1.68428}, {-1.36261, -1.78885, 1.36261, -9.45441, 4.1986e-15, 1.15954e-14, -1.78885, 1.78885, 1.78885, 0, 0, -3.15147, 3.23931, 9.36656, -7.13474, 5.47113, -9.36656, -9.36656, 3.89543, -1.28583e-15, -3.89543, 1.68428, 2.21115, 2.21115, -3.89543, 1.72992e-15, 16.5013, 2.21115, -2.21115, 1.68428}, {-1.36261, -1.78885, 1.36261, 3.15147, 0, 0, 5.36656, -5.36656, -5.36656, 0, 0, -3.15147, -2.21115, 2.21115, -1.68428, -14.2902, -2.21115, -2.21115, 9.34589, 7.15542, -9.34589, 1.68428, 2.21115, 2.21115, -3.89543, 0, 3.89543, 2.21115, -2.21115, 14.2902}, {-1.36261, -1.78885, 1.36261, 3.15147, 0, 2.46559e-15, -1.78885, 1.78885, 1.78885, 0, 0, 9.45441, -2.21115, 2.21115, -1.68428, -1.68428, -2.21115, -2.21115, 3.89543, 4.44089e-16, -3.89543, 7.13474, 9.36656, -3.23931, -16.5013, 0, 3.89543, 9.36656, -9.36656, -5.47113}, {1.73341, -4.36745, 1.08767, 0, 0, 1.17684, 2.01922, 1.68048e-12, -0.615915, -1.44142, -1.45582, -0.198371, 0.714206, -1.79949, -5.71389, -2.4959, -2.07719e-12, -0.693346, -9.85858, -1.79949, 3.67312, 8.26156, 5.82327, 1.48683, 1.78169, 1.79949, -1.20946, -0.714206, 1.79949, 1.00651}, {-0.577805, 1.45582, -0.362558, 2.02028e-15, 3.82793e-15, -3.53053, 2.01922, 1.68206e-12, -0.615915, -1.44142, -1.45582, -0.198371, 3.02542, -7.62276, 0.443719, -10.5728, -8.8058e-12, 1.77031, -1.78169, -1.79949, 1.20946, 2.4959, 2.0772e-12, 0.693346, 7.54736, 7.62276, -0.415974, -0.714206, 1.79949, 1.00651}, {-0.577805, 1.45582, -0.362558, 0, 0, 1.17684, -6.05767, -5.04417e-12, 1.84774, -1.44142, -1.45582, -0.198371, 0.714206, -1.79949, -1.00651, -2.4959, -2.07831e-12, -5.40072, 0.529529, -7.62276, 2.65969, 2.4959, 2.07795e-12, 0.693346, 1.78169, 1.79949, -1.20946, 5.05146, 7.62276, 1.8}, {-0.577805, 1.45582, -0.362558, 0, 0, 1.17684, 2.01922, 1.68121e-12, -0.615915, 4.32425, 4.36745, 0.595113, 0.714206, -1.79949, -1.00651, -2.4959, -2.07809e-12, -0.693346, -1.78169, -1.79949, 1.20946, 4.80711, -5.82327, 2.14358, 1.78169, 1.79949, -5.91683, -8.79109, 1.79949, 3.47017}, {-4.91714, 2.88338, 1.92681, -0.336451, -0.850591, 0.85104, -1.79955, 0.555362, -0.55742, 0.496952, 1.25636, 0.348649, -0.264293, 5.64177, -3.66222, 2.64024, 0.364922, -0.362934, 7.39658, -1.7199, 3.71258, -4.62805, -5.39034, -1.03166, -0.198389, -0.501553, -1.4829, 1.6101, -2.23941, 0.258056}, {1.63905, -0.961127, -0.642269, 1.00935, 2.55177, -2.55312, -1.79955, 0.555362, -0.55742, 0.496952, 1.25636, 0.348649, -8.16629, 6.08391, 2.31102, 9.83843, -1.85653, 1.86675, 0.198389, 0.501553, 1.4829, -2.64024, -0.364922, 0.362934, -2.1862, -5.52697, -2.87749, 1.6101, -2.23941, 0.258056}, {1.63905, -0.961127, -0.642269, -0.336451, -0.850591, 0.85104, 5.39864, -1.66609, 1.67226, 0.496952, 1.25636, 0.348649, -1.6101, 2.23941, -0.258056, 3.98605, 3.76729, -3.76709, -6.3578, 4.34606, 4.05197, -2.64024, -0.364922, 0.362934, -0.198389, -0.501553, -1.4829, -0.377708, -7.26483, -1.13654}, {1.63905, -0.961127, -0.642269, -0.336451, -0.850591, 0.85104, -1.79955, 0.555362, -0.55742, -1.49085, -3.76907, -1.04595, -1.6101, 2.23941, -0.258056, 2.64024, 0.364922, -0.362934, 0.198389, 0.501553, 1.4829, -9.19643, 3.47958, 2.93201, 1.14742, 2.90081, -4.88706, 8.80829, -4.46086, 2.48774}, {10.941, -4.49288, 1.1204, 1.85814, 0.691786, -1.41539, 0, -2.17235, 0, 1.78885, -0.0170635, 1.78885, -5.2214, -5.47341, 7.87269, -2.29678, 1.83008, 1.74951, 4.50793, 9.5234, 0.461631, -4.85864, -1.76182, -8.90493, -4.50793, -0.834003, -0.461631, -2.21115, 2.70626, -2.21115}, {-3.64699, 1.49763, -0.373467, -5.57441, -2.07536, 4.24616, 0, -2.17235, 0, 1.78885, -0.0170635, 1.78885, 16.7991, -8.69677, 3.70501, -2.29678, 10.5195, 1.74951, 4.50793, 0.834003, 0.461631, 2.29678, -1.83008, -1.74951, -11.6633, -0.76575, -7.61705, -2.21115, 2.70626, -2.21115}, {-3.64699, 1.49763, -0.373467, 1.85814, 0.691786, -1.41539, 0, 6.51705, 0, 1.78885, -0.0170635, 1.78885, 2.21115, -2.70626, 2.21115, -9.72932, -0.937068, 7.41106, 19.0959, -5.15651, 1.9555, 2.29678, -1.83008, -1.74951, -4.50793, -0.834003, -0.461631, -9.36656, 2.77452, -9.36656}, {-3.64699, 1.49763, -0.373467, 1.85814, 0.691786, -1.41539, 0, -2.17235, 0, -5.36656, 0.0511904, -5.36656, 2.21115, -2.70626, 2.21115, -2.29678, 1.83008, 1.74951, 4.50793, 0.834003, 0.461631, 16.8847, -7.82059, -0.255645, -11.9405, -3.60115, 5.19992, -2.21115, 11.3957, -2.21115}, {-4.62937, 1.83228, -4.62937, -1.60567, 0, 0, -0.136178, -1.32981, -1.74185, 0.198723, 1.94057, 0.198723, 6.49998, 0.754941, -1.90741, 2.15304, 1.64373, 2.15304, -1.19437, 7.71791, 7.21302, -2.94793, -9.40601, -2.94793, 1.73908, -2.39867, -0.245635, -0.0773091, -0.754941, 1.90741}, {1.54312, -0.61076, 1.54312, 4.817, 0, 0, -0.136178, -1.32981, -1.74185, 0.198723, 1.94057, 0.198723, -6.09519, 3.19798, -8.0799, 2.69775, 6.96297, 9.12042, -1.73908, 2.39867, 0.245635, -2.15304, -1.64373, -2.15304, 0.94419, -10.1609, -1.04052, -0.0773091, -0.754941, 1.90741}, {1.54312, -0.61076, 1.54312, -1.60567, 0, 0, 0.408534, 3.98943, 5.22554, 0.198723, 1.94057, 0.198723, 0.0773091, 0.754941, -1.90741, 8.57571, 1.64373, 2.15304, -7.91157, 4.84171, -5.92686, -2.15304, -1.64373, -2.15304, 1.73908, -2.39867, -0.245635, -0.872199, -8.51722, 1.11252}, {1.54312, -0.61076, 1.54312, -1.60567, 0, 0, -0.136178, -1.32981, -1.74185, -0.596168, -5.82171, -0.596168, 0.0773091, 0.754941, -1.90741, 2.15304, 1.64373, 2.15304, -1.73908, 2.39867, 0.245635, -8.32553, 0.799305, -8.32553, 8.16175, -2.39867, -0.245635, 0.467403, 4.5643, 8.87479}, {-5.36656, 4.08784, -4.08784, 0, 3.15147, 0, -1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -2.21115, -14.817, -1.68428, 2.21115, -1.68428, -2.21115, 7.15542, 11.0508, -11.0508, -2.21115, 1.68428, 14.817, 0, -3.89543, 3.89543, 2.21115, 2.21115, 1.68428}, {1.78885, -1.36261, 1.36261, -4.1986e-15, -9.45441, 1.15954e-14, -1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -9.36656, 3.23931, -7.13474, 9.36656, 5.47113, -9.36656, 1.28583e-15, 3.89543, -3.89543, -2.21115, 1.68428, 2.21115, -1.72992e-15, -3.89543, 16.5013, 2.21115, 2.21115, 1.68428}, {1.78885, -1.36261, 1.36261, 0, 3.15147, -9.86237e-15, 5.36656, 5.36656, -5.36656, 0, 0, -3.15147, -2.21115, -2.21115, -1.68428, 2.21115, -14.2902, -2.21115, -7.15542, 9.34589, -9.34589, -2.21115, 1.68428, 2.21115, 0, -3.89543, 3.89543, 2.21115, 2.21115, 14.2902}, {1.78885, -1.36261, 1.36261, 0, 3.15147, 0, -1.78885, -1.78885, 1.78885, 0, 0, 9.45441, -2.21115, -2.21115, -1.68428, 2.21115, -1.68428, -2.21115, -4.44089e-16, 3.89543, -3.89543, -9.36656, 7.13474, -3.23931, 0, -16.5013, 3.89543, 9.36656, 9.36656, -5.47113}, {-14.3647, 4.91028, -4.91028, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.63676, 1.63676, -1.63676, 2.33207, -6.2275, -10.2738, 3.89543, -3.19522e-13, -3.19522e-13, 2.33207, 10.2738, 6.2275, 2.65162, -6.54704, 6.54704, 3.97086, -3.97086, 0.0754334, 3.97086, -0.0754334, 3.97086}, {4.78823, -1.63676, 1.63676, 4.7272, -4.7272, -4.7272, -1.57573, -1.57573, -1.57573, -1.63676, 1.63676, -1.63676, -23.1238, 6.62248, -10.5179, 10.1984, 6.30294, 6.30294, -3.97086, 3.97086, -0.0754334, -3.89543, 3.18596e-13, 3.18228e-13, 10.5179, -10.5179, 6.62248, 3.97086, -0.0754334, 3.97086}, {4.78823, -1.63676, 1.63676, -1.57573, 1.57573, 1.57573, 4.7272, 4.7272, 4.7272, -1.63676, 1.63676, -1.63676, -3.97086, 0.0754334, -3.97086, 10.1984, -6.30294, -6.30294, -23.1238, 10.5179, -6.62248, -3.89543, 3.21483e-13, 3.20892e-13, 3.97086, -3.97086, 0.0754334, 10.5179, -6.62248, 10.5179}, {4.78823, -1.63676, 1.63676, -1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, 4.91028, -4.91028, 4.91028, -3.97086, 0.0754334, -3.97086, 3.89543, -3.19522e-13, -3.19078e-13, -3.97086, 3.97086, -0.0754334, -23.0483, 6.54704, -6.54704, 10.2738, -10.2738, -6.2275, 10.2738, 6.2275, 10.2738}, {0, -4.817, 7.10543e-15, -1.41539, -0.190281, -1.85814, -0.373467, 0.373467, 3.64699, 1.78885, -1.78885, -1.78885, 7.41106, -0.988391, 9.72932, 2.21115, -0.226431, -2.21115, 1.9555, -3.94022, -19.0959, -9.36656, 7.38185, 9.36656, -0.461631, 2.44635, 4.50793, -1.74951, 1.74951, -2.29678}, {-1.11022e-15, 1.60567, -1.55431e-15, 4.24616, 0.570843, 5.57441, -0.373467, 0.373467, 3.64699, 1.78885, -1.78885, -1.78885, 1.74951, -8.17219, 2.29678, 3.70501, -1.7203, -16.7991, 0.461631, -2.44635, -4.50793, -2.21115, 0.226431, 2.21115, -7.61705, 9.60176, 11.6633, -1.74951, 1.74951, -2.29678}, {-8.88178e-16, 1.60567, 1.11022e-15, -1.41539, -0.190281, -1.85814, 1.1204, -1.1204, -10.941, 1.78885, -1.78885, -1.78885, 1.74951, -1.74951, 2.29678, 7.87269, 0.534693, 5.2214, 0.461631, -8.86902, -4.50793, -2.21115, 0.226431, 2.21115, -0.461631, 2.44635, 4.50793, -8.90493, 8.90493, 4.85864}, {1.55431e-15, 1.60567, -4.44089e-16, -1.41539, -0.190281, -1.85814, -0.373467, 0.373467, 3.64699, -5.36656, 5.36656, 5.36656, 1.74951, -1.74951, 2.29678, 2.21115, -0.226431, -2.21115, 0.461631, -2.44635, -4.50793, -2.21115, -6.19624, 2.21115, 5.19992, 3.20747, 11.9405, -0.255645, 0.255645, -16.8847}, {-2.60507, 7.08874, -2.60507, -1.19276, 2.49131, 1.15037, -1.08957, 0.431245, -1.08957, 1.41397, -0.55964, -0.929159, 5.172, -10.1239, -7.09676, 2.82111, -3.61247, -0.0751544, 4.6317, 0.662693, 4.6317, -8.47697, 5.85103, 3.79179, -0.273431, -2.38767, -0.273431, -0.400978, 0.158705, 2.49528}, {0.868358, -2.36291, 0.868358, 3.57827, -7.47392, -3.45111, -1.08957, 0.431245, -1.08957, 1.41397, -0.55964, -0.929159, -3.07245, 9.29295, -5.96872, 7.17938, -5.33745, 4.28312, 0.273431, 2.38767, 0.273431, -2.82111, 3.61247, 0.0751544, -5.9293, -0.149113, 3.44321, -0.400978, 0.158705, 2.49528}, {0.868358, -2.36291, 0.868358, -1.19276, 2.49131, 1.15037, 3.2687, -1.29374, 3.2687, 1.41397, -0.55964, -0.929159, 0.400978, -0.158705, -2.49528, 7.59213, -13.5777, -4.67663, -3.2, 11.8393, -3.2, -2.82111, 3.61247, 0.0751544, -0.273431, -2.38767, -0.273431, -6.05684, 2.39726, 6.21192}, {0.868358, -2.36291, 0.868358, -1.19276, 2.49131, 1.15037, -1.08957, 0.431245, -1.08957, -4.2419, 1.67892, 2.78748, 0.400978, -0.158705, -2.49528, 2.82111, -3.61247, -0.0751544, 0.273431, 2.38767, 0.273431, -6.29454, 13.0641, -3.39828, 4.49759, -12.3529, -4.87491, 3.95729, -1.56628, 6.85356}, {0.133606, -1.71772, 4.33994, 0.841626, -2.01922, -1.9732e-12, -1.05603, 0, 0, 0.258935, 1.44665, 1.44665, -4.35176, 9.86504, 1.78815, 0.265013, 2.4959, 2.43901e-12, 5.58447, -0.707741, 1.78815, -1.30075, -8.28248, -5.78659, -1.36037, 0.707741, -1.78815, 0.985258, -1.78815, -1.78815}, {-0.0445353, 0.572575, -1.44665, -2.52488, 6.05767, 5.92285e-12, -1.05603, 0, 0, 0.258935, 1.44665, 1.44665, -0.807116, -0.502145, 7.57474, 4.48912, 2.4959, 2.44035e-12, 1.36037, -0.707741, 1.78815, -0.265013, -2.4959, -2.43999e-12, -2.39611, -5.07885, -7.57474, 0.985258, -1.78815, -1.78815}, {-0.0445353, 0.572575, -1.44665, 0.841626, -2.01922, -1.97392e-12, 3.16808, 0, 0, 0.258935, 1.44665, 1.44665, -0.985258, 1.78815, 1.78815, -3.10149, 10.5728, 1.03356e-11, 1.53851, -2.99804, 7.57474, -0.265013, -2.4959, -2.43954e-12, -1.36037, 0.707741, -1.78815, -0.0504837, -7.57474, -7.57474}, {-0.0445353, 0.572575, -1.44665, 0.841626, -2.01922, -1.97247e-12, -1.05603, 0, 0, -0.776806, -4.33994, -4.33994, -0.985258, 1.78815, 1.78815, 0.265013, 2.4959, 2.43811e-12, 1.36037, -0.707741, 1.78815, -0.0868717, -4.7862, 5.78659, -4.72687, 8.78463, -1.78815, 5.20936, -1.78815, -1.78815}, {-8.334, -1.1204, -10.941, -1.41539, 1.41539, -1.85814, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, 3.97726, -7.87269, 5.2214, 5.64494, -1.74951, 2.29678, 13.0675, -0.461631, -4.50793, -12.8004, 8.90493, 4.85864, -0.461631, 0.461631, 4.50793, 1.68428, 2.21115, 2.21115}, {2.778, 0.373467, 3.64699, 4.24616, -4.24616, 5.57441, -3.15147, 0, 0, 1.78885, -1.78885, -1.78885, -12.7963, -3.70501, -16.7991, 18.2508, -1.74951, 2.29678, 0.461631, -0.461631, -4.50793, -5.64494, 1.74951, -2.29678, -7.61705, 7.61705, 11.6633, 1.68428, 2.21115, 2.21115}, {2.778, 0.373467, 3.64699, -1.41539, 1.41539, -1.85814, 9.45441, 0, 0, 1.78885, -1.78885, -1.78885, -1.68428, -2.21115, -2.21115, 11.3065, -7.41106, 9.72932, -10.6504, -1.9555, -19.0959, -5.64494, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, -5.47113, 9.36656, 9.36656}, {2.778, 0.373467, 3.64699, -1.41539, 1.41539, -1.85814, -3.15147, 0, 0, -5.36656, 5.36656, 5.36656, -1.68428, -2.21115, -2.21115, 5.64494, -1.74951, 2.29678, 0.461631, -0.461631, -4.50793, -16.7569, 0.255645, -16.8847, 5.19992, -5.19992, 11.9405, 14.2902, 2.21115, 2.21115}, {1.01058, 2.55106, -2.5536, -2.38953, 1.40121, 0.936349, 0.591368, -0.846655, -1.49431, 2.13502, 0.295801, -0.293237, 12.9281, -6.28572, -5.95493, 2.22265, -0.685462, 0.68968, -2.68006, 5.48424, 6.77218, -10.7627, -0.497743, 0.483267, 0.314591, -2.09762, -0.794931, -3.37, 0.680893, 2.20953}, {-0.336859, -0.850352, 0.8512, 7.1686, -4.20362, -2.80905, 0.591368, -0.846655, -1.49431, 2.13502, 0.295801, -0.293237, 4.71744, 2.72051, -5.61433, -0.142821, 2.70116, 6.66693, -0.314591, 2.09762, 0.794931, -2.22265, 0.685462, -0.68968, -8.2255, -3.28082, 0.378017, -3.37, 0.680893, 2.20953}, {-0.336859, -0.850352, 0.8512, -2.38953, 1.40121, 0.936349, -1.77411, 2.53997, 4.48294, 2.13502, 0.295801, -0.293237, 3.37, -0.680893, -2.20953, 11.7808, -6.29028, -3.05572, 1.03285, 5.49902, -2.60987, -2.22265, 0.685462, -0.68968, 0.314591, -2.09762, -0.794931, -11.9101, -0.502312, 3.38248}, {-0.336859, -0.850352, 0.8512, -2.38953, 1.40121, 0.936349, 0.591368, -0.846655, -1.49431, -6.40507, -0.887404, 0.879711, 3.37, -0.680893, -2.20953, 2.22265, -0.685462, 0.68968, -0.314591, 2.09762, 0.794931, -0.875216, 4.08687, -4.09448, 9.87272, -7.70244, -4.54033, -5.73548, 4.06751, 8.18678}, {8.88178e-16, 9.4517, 0, 1.85814, -1.41498, 1.41539, -3.64699, 2.77721, 0.373467, 1.78885, 1.78834, -1.78885, -9.72932, 11.3033, -7.41106, 2.21115, -1.6838, -2.21115, 19.0959, -10.6473, -1.9555, -9.36656, -5.46957, 9.36656, -4.50793, -0.461499, 0.461631, 2.29678, -5.64333, 1.74951}, {-2.22045e-16, -3.15057, -2.22045e-16, -5.57441, 4.24495, -4.24616, -3.64699, 2.77721, 0.373467, 1.78885, 1.78834, -1.78885, -2.29678, 18.2456, -1.74951, 16.7991, -12.7926, -3.70501, 4.50793, 0.461499, -0.461631, -2.21115, 1.6838, 2.21115, -11.6633, -7.61487, 7.61705, 2.29678, -5.64333, 1.74951}, {8.88178e-16, -3.15057, 2.22045e-16, 1.85814, -1.41498, 1.41539, 10.941, -8.33162, -1.1204, 1.78885, 1.78834, -1.78885, -2.29678, 5.64333, -1.74951, -5.2214, 3.97613, -7.87269, 4.50793, 13.0638, -0.461631, -2.21115, 1.6838, 2.21115, -4.50793, -0.461499, 0.461631, -4.85864, -12.7967, 8.90493}, {4.44089e-16, -3.15057, 2.22045e-16, 1.85814, -1.41498, 1.41539, -3.64699, 2.77721, 0.373467, -5.36656, -5.36503, 5.36656, -2.29678, 5.64333, -1.74951, 2.21115, -1.6838, -2.21115, 4.50793, 0.461499, -0.461631, -2.21115, 14.2861, 2.21115, -11.9405, 5.19843, -5.19992, 16.8847, -16.7522, 0.255645}, {-3.98943, -5.23221, -5.22554, -1.94057, -2.54509, -0.198723, 0.61076, -1.54509, -1.54312, 0, 2.34612, 0, 8.51722, 11.1705, -1.11252, 1.64373, 5.05575, 2.15304, -4.84171, 5.93443, 5.92686, -1.64373, -14.4402, -2.15304, 2.39867, 0.245948, 0.245635, -0.754941, -0.990119, 1.90741}, {1.32981, 1.74407, 1.74185, 5.82171, 7.63528, 0.596168, 0.61076, -1.54509, -1.54312, -3.55726e-16, 2.34612, 8.98764e-16, -4.5643, -5.98616, -8.87479, -0.799305, 11.2361, 8.32553, -2.39867, -0.245948, -0.245635, -1.64373, -5.05575, -2.15304, 2.39867, -9.13852, 0.245635, -0.754941, -0.990119, 1.90741}, {1.32981, 1.74407, 1.74185, -1.94057, -2.54509, -0.198723, -1.83228, 4.63528, 4.62937, 0, 2.34612, 0, 0.754941, 0.990119, -1.90741, 9.40601, 15.2361, 2.94793, -7.71791, -7.22223, -7.21302, -1.64373, -5.05575, -2.15304, 2.39867, 0.245948, 0.245635, -0.754941, -10.3746, 1.90741}, {1.32981, 1.74407, 1.74185, -1.94057, -2.54509, -0.198723, 0.61076, -1.54509, -1.54312, 0, -7.03835, 0, 0.754941, 0.990119, -1.90741, 1.64373, 5.05575, 2.15304, -2.39867, -0.245948, -0.245635, -6.96297, -12.032, -9.12042, 10.1609, 10.4263, 1.04052, -3.19798, 5.19026, 8.0799}, {0, -8.88178e-15, -7.02938, -1.78885, -2.34612, -2.34313, 1.78885, 6.94391e-12, 7.11845e-12, 0, 2.34612, 0, 9.36656, 12.2844, 9.3725, 0, 2.89996, 2.89626, -9.36656, -3.63625e-11, -2.89626, 0, -12.2844, -2.89626, 2.21115, 8.58691e-12, 2.89626, -2.21115, -2.89996, -8.79889e-12}, {-9.56516e-16, 1.33227e-15, 2.34313, 5.36656, 7.03835, 7.02938, 1.78885, 6.94391e-12, 7.11845e-12, -1.04189e-15, 2.34612, -4.14601e-27, 2.21115, 2.89996, -9.3725, -7.15542, 2.89996, 2.89626, -2.21115, -8.58469e-12, -2.89626, 2.66454e-15, -2.89996, -2.89626, 2.21115, -9.38447, 2.89626, -2.21115, -2.89996, -8.79889e-12}, {0, -4.44089e-16, 2.34313, -1.78885, -2.34612, -2.34313, -5.36656, -2.08419e-11, -2.13616e-11, 0, 2.34612, 0, 2.21115, 2.89996, 8.80088e-12, 7.15542, 12.2844, 12.2688, -2.21115, -8.58691e-12, -12.2688, 0, -2.89996, -2.89626, 2.21115, 8.58691e-12, 2.89626, -2.21115, -12.2844, -8.80146e-12}, {0, 1.33227e-15, 2.34313, -1.78885, -2.34612, -2.34313, 1.78885, 6.94234e-12, 7.11741e-12, 0, -7.03835, 0, 2.21115, 2.89996, 8.79702e-12, 0, 2.89996, 2.89626, -2.21115, -8.58291e-12, -2.89626, 0, -2.89996, -12.2688, 9.36656, 9.38447, 12.2688, -9.36656, -2.89996, -3.72672e-11}, {-0.596168, 7.62554, 5.82171, -1.74185, 1.74185, 1.32981, 0, 2.34313, 0, 1.54312, -1.54312, 0.61076, 8.87479, -5.97853, -4.5643, 2.15304, -5.0493, -1.64373, -0.245635, -9.12687, 2.39867, -8.32553, 11.2218, -0.799305, 0.245635, -0.245635, -2.39867, -1.90741, -0.988857, -0.754941}, {0.198723, -2.54185, -1.94057, 5.22554, -5.22554, -3.98943, -8.97618e-16, 2.34313, -3.55272e-16, 1.54312, -1.54312, 0.61076, 1.11252, 11.1562, 8.51722, 2.15304, -14.4218, -1.64373, -0.245635, 0.245635, 2.39867, -2.15304, 5.0493, 1.64373, -5.92686, 5.92686, -4.84171, -1.90741, -0.988857, -0.754941}, {0.198723, -2.54185, -1.94057, -1.74185, 1.74185, 1.32981, 0, -7.02938, 0, 1.54312, -1.54312, 0.61076, 1.90741, 0.988857, 0.754941, 9.12042, -12.0167, -6.96297, -1.04052, 10.413, 10.1609, -2.15304, 5.0493, 1.64373, 0.245635, -0.245635, -2.39867, -8.0799, 5.18364, -3.19798}, {0.198723, -2.54185, -1.94057, -1.74185, 1.74185, 1.32981, 0, 2.34313, 0, -4.62937, 4.62937, -1.83228, 1.90741, 0.988857, 0.754941, 2.15304, -5.0493, -1.64373, -0.245635, 0.245635, 2.39867, -2.94793, 15.2167, 9.40601, 7.21302, -7.21302, -7.71791, -1.90741, -10.3614, -0.754941}, {4.7272, -4.7272, -4.7272, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 1.57573, -6.30294, -10.1984, 6.30294, 1.80456e-12, 1.805e-12, 3.89543, 10.1984, 6.30294, 6.30294, -6.30294, 6.30294, -10.1984, -3.89543, 3.19078e-13, 3.19078e-13, -2.14295e-12, 3.89543, 2.13674e-12}, {-1.57573, 1.57573, 1.57573, -4.7272, -4.7272, 4.7272, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 1.57573, 6.30294, -10.1984, -6.30294, 6.30294, 6.30294, 10.1984, 3.89543, -3.193e-13, -3.193e-13, -1.80505e-12, -1.80561e-12, -3.89543, -10.1984, 6.30294, -6.30294, -2.1394e-12, 3.89543, 2.13962e-12}, {-1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -1.57573, 4.7272, 4.7272, 4.7272, 1.57573, -1.57573, 1.57573, 2.14007e-12, -3.89543, -2.14007e-12, -6.30294, -6.30294, 10.1984, 10.1984, -6.30294, -6.30294, -1.80394e-12, -1.80428e-12, -3.89543, -3.89543, 3.20188e-13, 3.193e-13, -6.30294, 10.1984, -6.30294}, {-1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -1.57573, -1.57573, -1.57573, -1.57573, -4.7272, 4.7272, -4.7272, 2.1354e-12, -3.89543, -2.14473e-12, 1.80456e-12, 1.80456e-12, 3.89543, 3.89543, -3.19522e-13, -3.19522e-13, 6.30294, -6.30294, -10.1984, -10.1984, -6.30294, 6.30294, 6.30294, 10.1984, 6.30294}, {4.817, -1.77636e-15, 4.44089e-16, -0.136178, 1.74185, 1.32981, 0.198723, -0.198723, -1.94057, 1.54312, -1.54312, 0.61076, 2.69775, -9.12042, -6.96297, -0.0773091, -1.90741, 0.754941, 0.94419, 1.04052, 10.1609, -6.09519, 8.0799, -3.19798, -1.73908, -0.245635, -2.39867, -2.15304, 2.15304, 1.64373}, {-1.60567, 0, 2.22045e-16, 0.408534, -5.22554, -3.98943, 0.198723, -0.198723, -1.94057, 1.54312, -1.54312, 0.61076, 8.57571, -2.15304, -1.64373, -0.872199, -1.11252, 8.51722, 1.73908, 0.245635, 2.39867, 0.0773091, 1.90741, -0.754941, -7.91157, 5.92686, -4.84171, -2.15304, 2.15304, 1.64373}, {-1.60567, 2.22045e-16, 0, -0.136178, 1.74185, 1.32981, -0.596168, 0.596168, 5.82171, 1.54312, -1.54312, 0.61076, 2.15304, -2.15304, -1.64373, 0.467403, -8.87479, -4.5643, 8.16175, 0.245635, 2.39867, 0.0773091, 1.90741, -0.754941, -1.73908, -0.245635, -2.39867, -8.32553, 8.32553, -0.799305}, {-1.60567, -2.22045e-16, -2.22045e-16, -0.136178, 1.74185, 1.32981, 0.198723, -0.198723, -1.94057, -4.62937, 4.62937, -1.83228, 2.15304, -2.15304, -1.64373, -0.0773091, -1.90741, 0.754941, 1.73908, 0.245635, 2.39867, 6.49998, 1.90741, -0.754941, -1.19437, -7.21302, -7.71791, -2.94793, 2.94793, 9.40601}, {7.01844, 8.88178e-16, 0, 2.33948, 2.34313, 1.78885, 7.30061e-12, 6.91762e-12, -1.78885, 0, -2.34313, 0, -9.35791, -12.2688, -9.36656, -2.89175, -2.89626, 0, 2.89175, -3.62204e-11, 9.36656, 2.89175, 12.2688, 0, -2.89175, 8.55005e-12, -2.21115, -9.02405e-12, 2.89626, 2.21115}, {-2.33948, 0, 0, -7.01844, -7.02938, -5.36656, 7.30269e-12, 6.91918e-12, -1.78885, 0, -2.34313, 0, 9.35791, -2.89626, -2.21115, -2.89175, -2.89626, 7.15542, 2.89175, -8.55271e-12, 2.21115, 2.89175, 2.89626, 0, -2.89175, 9.3725, -2.21115, -9.02662e-12, 2.89626, 2.21115}, {-2.33948, 4.44089e-16, 2.22045e-16, 2.33948, 2.34313, 1.78885, -2.19003e-11, -2.07607e-11, 5.36656, 0, -2.34313, 0, 9.02399e-12, -2.89626, -2.21115, -12.2497, -12.2688, -7.15542, 12.2497, -8.55493e-12, 2.21115, 2.89175, 2.89626, -4.44089e-16, -2.89175, 8.55405e-12, -2.21115, -9.02341e-12, 12.2688, 2.21115}, {-2.33948, 4.44089e-16, 0, 2.33948, 2.34313, 1.78885, 7.30373e-12, 6.92178e-12, -1.78885, 0, 7.02938, 0, 9.02849e-12, -2.89626, -2.21115, -2.89175, -2.89626, 0, 2.89175, -8.55627e-12, 2.21115, 12.2497, 2.89626, 0, -12.2497, -9.3725, -9.36656, -3.82428e-11, 2.89626, 9.36656}, {-1.82966, -4.6256, 4.62804, 1.3308, -1.74043, 0.137442, -1.94068, 0.198561, -0.20043, 0, 0, 1.60567, -7.722, 7.20714, 1.1872, 0.75386, 1.90585, 0.0778573, 9.40768, -2.94553, 2.95632, -0.75386, -1.90585, -6.50053, -1.64495, 2.15129, -2.1546, 2.39881, -0.245434, -1.73697}, {0.609885, 1.54187, -1.54268, -3.99239, 5.22128, -0.412327, -1.94068, 0.198561, -0.20043, 7.7358e-16, -7.91487e-17, 1.60567, -4.83836, -5.92203, 7.90769, 8.51658, 1.11161, 0.879578, 1.64495, -2.15129, 2.1546, -0.75386, -1.90585, -0.0778573, -1.64495, 2.15129, -8.57728, 2.39881, -0.245434, -1.73697}, {0.609885, 1.54187, -1.54268, 1.3308, -1.74043, 0.137442, 5.82204, -0.595682, 0.601291, 0, 0, 1.60567, -2.39881, 0.245434, 1.73697, -4.56932, 8.86756, -0.471912, -0.794587, -8.31875, 8.32532, -0.75386, -1.90585, -0.0778573, -1.64495, 2.15129, -2.1546, 2.39881, -0.245434, -8.15964}, {0.609885, 1.54187, -1.54268, 1.3308, -1.74043, 0.137442, -1.94068, 0.198561, -0.20043, 0, 0, -4.817, -2.39881, 0.245434, 1.73697, 0.75386, 1.90585, 0.0778573, 1.64495, -2.15129, 2.1546, -3.1934, -8.07331, 6.09286, -6.96814, 9.11299, -2.70437, 10.1615, -1.03968, -0.935249}, {-4.24457, 5.57441, -4.24616, -1.78937, -1.78885, -1.78885, 3.15147, -2.85327e-15, -2.92187e-16, -2.77696, 3.64699, 0.373467, 7.62038, 11.6633, 7.61705, -1.68365, 2.21115, 2.21115, -18.2502, 2.29678, -1.74951, 12.7915, -16.7991, -3.70501, 5.64429, -2.29678, 1.74951, -0.46292, -4.50793, -0.461631}, {1.41486, -1.85814, 1.41539, 5.3681, 5.36656, 5.36656, 3.15147, 5.70654e-15, 5.84374e-16, -2.77696, 3.64699, 0.373467, -5.1965, 11.9405, -5.19992, -14.2895, 2.21115, 2.21115, -5.64429, 2.29678, -1.74951, 1.68365, -2.21115, -2.21115, 16.7521, -16.8847, 0.255645, -0.46292, -4.50793, -0.461631}, {1.41486, -1.85814, 1.41539, -1.78937, -1.78885, -1.78885, -9.45441, 0, 0, -2.77696, 3.64699, 0.373467, 0.46292, 4.50793, 0.461631, 5.47381, 9.36656, 9.36656, -11.3037, 9.72932, -7.41106, 1.68365, -2.21115, -2.21115, 5.64429, -2.29678, 1.74951, 10.6449, -19.0959, -1.9555}, {1.41486, -1.85814, 1.41539, -1.78937, -1.78885, -1.78885, 3.15147, 2.85327e-15, 2.92187e-16, 8.33088, -10.941, -1.1204, 0.46292, 4.50793, 0.461631, -1.68365, 2.21115, 2.21115, -5.64429, 2.29678, -1.74951, -3.97577, 5.2214, -7.87269, 12.8018, 4.85864, 8.90493, -13.0688, -4.50793, -0.461631}, {-4.72788, -4.72653, -4.72653, 1.57551, -1.57551, -1.57551, -1.57551, 1.57551, -1.57596, -1.57596, -1.57551, 1.57596, -10.1975, 6.30204, 6.30204, -4.83169e-13, -4.92273e-13, 3.89543, 6.30148, -10.1969, 6.30439, 6.30384, 6.30204, -10.1993, 0.000556765, 3.89487, -0.000556765, 3.89543, -1.82077e-12, -1.81766e-12}, {1.57596, 1.57551, 1.57551, -4.72653, 4.72653, 4.72653, -1.57551, 1.57551, -1.57596, -1.57596, -1.57551, 1.57596, -10.1993, -6.30204, -6.30204, 6.30204, -6.30204, 10.1993, -0.000556765, -3.89487, 0.000556765, 4.86997e-13, 4.81002e-13, -3.89543, 6.30439, 10.1969, -6.30439, 3.89543, -1.81322e-12, -1.80744e-12}, {1.57596, 1.57551, 1.57551, 1.57551, -1.57551, -1.57551, 4.72653, -4.72653, 4.72788, -1.57596, -1.57551, 1.57596, -3.89543, 1.8201e-12, 1.81388e-12, -6.30204, 6.30204, 10.1975, -6.30439, -10.1969, -6.30148, 4.87441e-13, 4.99209e-13, -3.89543, 0.000556765, 3.89487, -0.000556765, 10.1993, 6.30204, -6.30384}, {1.57596, 1.57551, 1.57551, 1.57551, -1.57551, -1.57551, -1.57551, 1.57551, -1.57596, 4.72788, 4.72653, -4.72788, -3.89543, 1.81255e-12, 1.81899e-12, -4.87832e-13, -4.87388e-13, 3.89543, -0.000556765, -3.89487, 0.000556765, -6.30384, -6.30204, -10.1975, -6.30148, 10.1969, 6.30148, 10.1975, -6.30204, 6.30384}, {5.36656, -5.36656, -5.3681, 3.64699, -0.373467, 2.77696, 0, 0, -3.15147, -1.85814, -1.41539, -1.41486, -16.8847, -0.255645, -16.7521, -4.50793, 0.461631, 0.46292, 2.21115, -2.21115, 14.2895, 11.9405, 5.19992, 5.1965, -2.21115, 2.21115, -1.68365, 2.29678, 1.74951, 5.64429}, {-1.78885, 1.78885, 1.78937, -10.941, 1.1204, -8.33088, 0, 0, -3.15147, -1.85814, -1.41539, -1.41486, 4.85864, -8.90493, -12.8018, -4.50793, 0.461631, 13.0688, 2.21115, -2.21115, 1.68365, 4.50793, -0.461631, -0.46292, 5.2214, 7.87269, 3.97577, 2.29678, 1.74951, 5.64429}, {-1.78885, 1.78885, 1.78937, 3.64699, -0.373467, 2.77696, 0, 0, 9.45441, -1.85814, -1.41539, -1.41486, -2.29678, -1.74951, -5.64429, -19.0959, 1.9555, -10.6449, 9.36656, -9.36656, -5.47381, 4.50793, -0.461631, -0.46292, -2.21115, 2.21115, -1.68365, 9.72932, 7.41106, 11.3037}, {-1.78885, 1.78885, 1.78937, 3.64699, -0.373467, 2.77696, 0, 0, -3.15147, 5.57441, 4.24616, 4.24457, -2.29678, -1.74951, -5.64429, -4.50793, 0.461631, 0.46292, 2.21115, -2.21115, 1.68365, 11.6633, -7.61705, -7.62038, -16.7991, 3.70501, -12.7915, 2.29678, 1.74951, 18.2502}, {-0.570843, 5.57441, 4.24616, -0.373467, 3.64699, -0.373467, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, 1.7203, -16.7991, 3.70501, -1.74951, -2.29678, -1.74951, -9.60176, 11.6633, -7.61705, 8.17219, 2.29678, 1.74951, 2.44635, -4.50793, 0.461631, -0.226431, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, 1.1204, -10.941, 1.1204, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, -0.534693, 5.2214, 7.87269, -8.90493, 4.85864, -8.90493, -2.44635, 4.50793, -0.461631, 1.74951, 2.29678, 1.74951, 8.86902, -4.50793, 0.461631, -0.226431, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, -0.373467, 3.64699, -0.373467, -5.36656, 5.36656, -5.36656, -1.60567, 0, 0, 0.226431, -2.21115, 2.21115, -0.255645, -16.8847, -0.255645, -3.20747, 11.9405, 5.19992, 1.74951, 2.29678, 1.74951, 2.44635, -4.50793, 0.461631, 6.19624, 2.21115, -2.21115}, {0.190281, -1.85814, -1.41539, -0.373467, 3.64699, -0.373467, 1.78885, -1.78885, 1.78885, 4.817, 0, 0, 0.226431, -2.21115, 2.21115, -1.74951, -2.29678, -1.74951, -2.44635, 4.50793, -0.461631, 0.988391, 9.72932, 7.41106, 3.94022, -19.0959, 1.9555, -7.38185, 9.36656, -9.36656}, {-2.4085, 2.4085, -2.4085, 0.802834, 0.802834, -0.802834, 0.0313083, 1.63555, 1.63555, -1.63698, -1.63555, -1.63555, -5.19605, -3.21134, 3.21134, -1.03106, -3.014, -1.02929, -1.15629, -7.57148, -9.55619, 7.57896, 9.55619, 7.57148, 1.03106, 1.02929, 3.014, 1.98471, -7.99361e-15, 6.66134e-15}, {0.802834, -0.802834, 0.802834, -2.4085, -2.4085, 2.4085, 0.0313083, 1.63555, 1.63555, -1.63698, -1.63555, -1.63555, -5.19605, 3.21134, -3.21134, -1.15629, -9.55619, -7.57148, -1.03106, -1.02929, -3.014, 1.03106, 3.014, 1.02929, 7.57896, 7.57148, 9.55619, 1.98471, -7.54952e-15, 7.54952e-15}, {0.802834, -0.802834, 0.802834, 0.802834, 0.802834, -0.802834, -0.0939249, -4.90664, -4.90664, -1.63698, -1.63555, -1.63555, -1.98471, 7.10543e-15, -6.66134e-15, -4.24239, -6.22534, 2.18205, -4.24239, 2.18205, -6.22534, 1.03106, 3.014, 1.02929, 1.03106, 1.02929, 3.014, 8.53262, 6.54219, 6.54219}, {0.802834, -0.802834, 0.802834, 0.802834, 0.802834, -0.802834, 0.0313083, 1.63555, 1.63555, 4.91093, 4.90664, 4.90664, -1.98471, 6.21725e-15, -6.21725e-15, -1.03106, -3.014, -1.02929, -1.03106, -1.02929, -3.014, -2.18028, 6.22534, -2.18205, -2.18028, -2.18205, 6.22534, 1.85948, -6.54219, -6.54219}, {5.36656, 5.36656, -5.36656, 0, 0, -3.15147, 3.15147, -1.39953e-15, -1.06606e-15, -1.36261, 1.78885, 1.36261, 2.21115, 2.21115, 14.2902, -3.89543, 1.72992e-15, 3.89543, -14.2902, 2.21115, -2.21115, 9.34589, -7.15542, -9.34589, 1.68428, -2.21115, 2.21115, -2.21115, -2.21115, -1.68428}, {-1.78885, -1.78885, 1.78885, 0, 0, 9.45441, 3.15147, 2.79907e-15, 2.13212e-15, -1.36261, 1.78885, 1.36261, 9.36656, 9.36656, -5.47113, -16.5013, -1.46561e-14, 3.89543, -1.68428, 2.21115, -2.21115, 3.89543, 3.90393e-15, -3.89543, 7.13474, -9.36656, -3.23931, -2.21115, -2.21115, -1.68428}, {-1.78885, -1.78885, 1.78885, 0, 0, -3.15147, -9.45441, 0, 0, -1.36261, 1.78885, 1.36261, 2.21115, 2.21115, 1.68428, -3.89543, 0, 16.5013, 5.47113, 9.36656, -9.36656, 3.89543, 4.44089e-16, -3.89543, 1.68428, -2.21115, 2.21115, 3.23931, -9.36656, -7.13474}, {-1.78885, -1.78885, 1.78885, 0, 0, -3.15147, 3.15147, 1.39953e-15, 1.06606e-15, 4.08784, -5.36656, -4.08784, 2.21115, 2.21115, 1.68428, -3.89543, -1.72992e-15, 3.89543, -1.68428, 2.21115, -2.21115, 11.0508, 7.15542, -11.0508, 1.68428, -2.21115, 14.817, -14.817, -2.21115, -1.68428}, {1.55756, -1.55231, 6.66925, 0.74491, 1.59978, -0.633715, 1.29557, -1.29442, 0.512752, -1.52129, -0.822804, 2.34405, -3.25865, -9.01615, 6.06606, -2.52217, -0.377453, 0.149519, -6.14194, 6.13806, 0.0630791, 8.60734, 3.66867, -9.52571, 0.95966, -0.960396, -2.11409, 0.279008, 2.61703, -3.5312}, {-0.519188, 0.517438, -2.22308, -2.23473, -4.79934, 1.90115, 1.29557, -1.29442, 0.512752, -1.52129, -0.822804, 2.34405, 1.79774, -4.68678, 12.4235, -7.70445, 4.80021, -1.90149, -0.95966, 0.960396, 2.11409, 2.52217, 0.377453, -0.149519, 7.04482, 2.33082, -11.4903, 0.279008, 2.61703, -3.5312}, {-0.519188, 0.517438, -2.22308, 0.74491, 1.59978, -0.633715, -3.88671, 3.88325, -1.53826, -1.52129, -0.822804, 2.34405, -0.279008, -2.61703, 3.5312, -5.50181, -6.77658, 2.68438, 1.11709, -1.10936, 11.0064, 2.52217, 0.377453, -0.149519, 0.95966, -0.960396, -2.11409, 6.36417, 5.90824, -12.9074}, {-0.519188, 0.517438, -2.22308, 0.74491, 1.59978, -0.633715, 1.29557, -1.29442, 0.512752, 4.56387, 2.46841, -7.03214, -0.279008, -2.61703, 3.5312, -2.52217, -0.377453, 0.149519, -0.95966, 0.960396, 2.11409, 4.59892, -1.6923, 8.74282, -2.01998, -7.35952, 0.420775, -4.90327, 7.79469, -5.58221}, {-3.62807, -1.43344, -3.62246, -0.761007, 2.64249, 1.57539, -0.983272, -2.40589, -0.977465, 0.534922, -0.714416, -1.80541, 2.48984, -14.4269, -9.74136, 2.15605, -0.292457, -0.73907, 3.65363, 12.0068, 3.62554, -4.29574, 3.15012, 7.96069, 0.279456, -2.38324, 0.28432, 0.554191, 3.85691, 3.43982}, {1.20936, 0.477813, 1.20749, 2.28302, -7.92748, -4.72616, -0.983272, -2.40589, -0.977465, 0.534922, -0.714416, -1.80541, -5.39162, -5.76816, -8.26976, 6.08913, 9.33111, 3.17079, -0.279456, 2.38324, -0.28432, -2.15605, 0.292457, 0.73907, -1.86023, 0.474427, 7.50594, 0.554191, 3.85691, 3.43982}, {1.20936, 0.477813, 1.20749, -0.761007, 2.64249, 1.57539, 2.94982, 7.21767, 2.9324, 0.534922, -0.714416, -1.80541, -0.554191, -3.85691, -3.43982, 5.20007, -10.8624, -7.04061, -5.11688, 0.471983, -5.11426, -2.15605, 0.292457, 0.73907, 0.279456, -2.38324, 0.28432, -1.5855, 6.71457, 10.6614}, {1.20936, 0.477813, 1.20749, -0.761007, 2.64249, 1.57539, -0.983272, -2.40589, -0.977465, -1.60477, 2.14325, 5.41622, -0.554191, -3.85691, -3.43982, 2.15605, -0.292457, -0.73907, -0.279456, 2.38324, -0.28432, -6.99347, -1.6188, -4.09087, 3.32348, -12.9532, -6.01722, 4.48728, 13.4805, 7.34968}, {5.81909, -7.61025, 0.600985, 0.610485, 1.54108, -1.54262, 0, -2.33948, 0, 1.32921, -1.73835, 1.74295, -0.798945, -11.2048, 8.32487, -0.754601, 0.986874, 1.90678, 2.3976, 9.11407, 0.24762, -4.56224, 5.96654, -8.87857, -2.3976, 0.243842, -0.24762, -1.643, 5.04048, -2.1544}, {-1.9397, 2.53675, -0.200328, -1.83146, -4.62324, 4.62785, 0, -2.33948, 0, 1.32921, -1.73835, 1.74295, 9.40178, -15.1875, 2.95571, -0.754601, 10.3448, 1.90678, 2.3976, -0.243842, 0.24762, 0.754601, -0.986874, -1.90678, -7.71444, 7.19725, -7.21941, -1.643, 5.04048, -2.1544}, {-1.9397, 2.53675, -0.200328, 0.610485, 1.54108, -1.54262, 0, 7.01844, 0, 1.32921, -1.73835, 1.74295, 1.643, -5.04048, 2.1544, -3.19654, -5.17745, 8.07725, 10.1564, -10.3908, 1.04893, 0.754601, -0.986874, -1.90678, -2.3976, 0.243842, -0.24762, -6.95984, 11.9939, -9.12619}, {-1.9397, 2.53675, -0.200328, 0.610485, 1.54108, -1.54262, 0, -2.33948, 0, -3.98763, 5.21506, -5.22884, 1.643, -5.04048, 2.1544, -0.754601, 0.986874, 1.90678, 2.3976, -0.243842, 0.24762, 8.51339, -11.1339, -1.10547, -4.83954, -5.92048, 5.92285, -1.643, 14.3984, -2.1544}, {4.33994, -4.33994, -1.54017, 0, 0, -1.80556, -0.572575, -1.44665, 0.668413, 2.01922, 1.97175e-12, 0.623753, 1.78815, -1.78815, 8.81943, 0.707741, 1.78815, 1.40559, 4.7862, 5.78659, -4.13444, -8.78463, -1.78815, -3.9006, -2.4959, -2.43721e-12, 1.46079, -1.78815, 1.78815, -1.5972}, {-1.44665, 1.44665, 0.51339, 0, 0, 5.41667, -0.572575, -1.44665, 0.668413, 2.01922, 1.97138e-12, 0.623753, 7.57474, -7.57474, -0.456355, 2.99804, 7.57474, -1.26807, 2.4959, 2.43641e-12, -1.46079, -0.707741, -1.78815, -1.40559, -10.5728, -1.03223e-11, -1.03422, -1.78815, 1.78815, -1.5972}, {-1.44665, 1.44665, 0.51339, 0, 0, -1.80556, 1.71772, 4.33994, -2.00524, 2.01922, 1.97175e-12, 0.623753, 1.78815, -1.78815, 1.5972, 0.707741, 1.78815, 8.62781, 8.28248, -5.78659, -3.51435, -0.707741, -1.78815, -1.40559, -2.4959, -2.43721e-12, 1.46079, -9.86504, 1.78815, -4.09222}, {-1.44665, 1.44665, 0.51339, 0, 0, -1.80556, -0.572575, -1.44665, 0.668413, -6.05767, -5.91959e-12, -1.87126, 1.78815, -1.78815, 1.5972, 0.707741, 1.78815, 1.40559, 2.4959, 2.43865e-12, -1.46079, 5.07885, -7.57474, -3.45914, -2.4959, -2.43901e-12, 8.68301, 0.502145, 7.57474, -4.27086}, {5.36656, 5.36656, 5.36656, 0.373467, 0.373467, 3.64699, 1.41048e-15, 1.60567, -1.85169e-15, 1.41539, -0.190281, -1.85814, 0.255645, 0.255645, -16.8847, -0.461631, -2.44635, -4.50793, 2.21115, -6.19624, 2.21115, -5.19992, 3.20747, 11.9405, -2.21115, -0.226431, -2.21115, -1.74951, -1.74951, 2.29678}, {-1.78885, -1.78885, -1.78885, -1.1204, -1.1204, -10.941, 8.46287e-16, 1.60567, -1.11101e-15, 1.41539, -0.190281, -1.85814, 8.90493, 8.90493, 4.85864, -0.461631, -8.86902, -4.50793, 2.21115, 0.226431, 2.21115, 0.461631, 2.44635, 4.50793, -7.87269, 0.534693, 5.2214, -1.74951, -1.74951, 2.29678}, {-1.78885, -1.78885, -1.78885, 0.373467, 0.373467, 3.64699, 0, -4.817, 0, 1.41539, -0.190281, -1.85814, 1.74951, 1.74951, -2.29678, -1.9555, -3.94022, -19.0959, 9.36656, 7.38185, 9.36656, 0.461631, 2.44635, 4.50793, -2.21115, -0.226431, -2.21115, -7.41106, -0.988391, 9.72932}, {-1.78885, -1.78885, -1.78885, 0.373467, 0.373467, 3.64699, 2.82096e-16, 1.60567, -3.70338e-16, -4.24616, 0.570843, 5.57441, 1.74951, 1.74951, -2.29678, -0.461631, -2.44635, -4.50793, 2.21115, 0.226431, 2.21115, 7.61705, 9.60176, 11.6633, -3.70501, -1.7203, -16.7991, -1.74951, -8.17219, 2.29678}, {-4.24616, -4.24616, 5.57441, 3.15147, 2.92187e-16, 2.85327e-15, -1.78885, -1.78885, -1.78885, -2.778, 0.373467, 3.64699, -18.2508, -1.74951, 2.29678, -1.68428, 2.21115, 2.21115, 7.61705, 7.61705, 11.6633, 12.7963, -3.70501, -16.7991, -0.461631, -0.461631, -4.50793, 5.64494, 1.74951, -2.29678}, {1.41539, 1.41539, -1.85814, -9.45441, -5.07516e-15, -1.27584e-14, -1.78885, -1.78885, -1.78885, -2.778, 0.373467, 3.64699, -11.3065, -7.41106, 9.72932, 5.47113, 9.36656, 9.36656, 0.461631, 0.461631, 4.50793, 1.68428, -2.21115, -2.21115, 10.6504, -1.9555, -19.0959, 5.64494, 1.74951, -2.29678}, {1.41539, 1.41539, -1.85814, 3.15147, 0, 0, 5.36656, 5.36656, 5.36656, -2.778, 0.373467, 3.64699, -5.64494, -1.74951, 2.29678, -14.2902, 2.21115, 2.21115, -5.19992, -5.19992, 11.9405, 1.68428, -2.21115, -2.21115, -0.461631, -0.461631, -4.50793, 16.7569, 0.255645, -16.8847}, {1.41539, 1.41539, -1.85814, 3.15147, 2.92187e-16, 2.85327e-15, -1.78885, -1.78885, -1.78885, 8.334, -1.1204, -10.941, -5.64494, -1.74951, 2.29678, -1.68428, 2.21115, 2.21115, 0.461631, 0.461631, 4.50793, -3.97726, -7.87269, 5.2214, -13.0675, -0.461631, -4.50793, 12.8004, 8.90493, 4.85864}, {0.972456, 0.972456, -8.84811, 1.4362, 1.4362, 1.4362, -1.66806, -0.0623937, -1.66806, 0.556017, -1.04965, -2.71751, -7.11935, -7.11935, -11.1656, 0.286601, -1.69811, 0.286601, 9.13476, 0.727372, 5.08846, -2.51067, 5.89672, 10.5834, -2.46251, -0.477797, 1.58378, 1.37456, 1.37456, 5.42086}, {-0.324152, -0.324152, 2.94937, -4.30859, -4.30859, -4.30859, -1.66806, -0.0623937, -1.66806, 0.556017, -1.04965, -2.71751, -0.0779551, -0.0779551, -17.2183, 6.95885, -1.44854, 6.95885, 2.46251, 0.477797, -1.58378, -0.286601, 1.69811, -0.286601, -4.68658, 3.72081, 12.4538, 1.37456, 1.37456, 5.42086}, {-0.324152, -0.324152, 2.94937, 1.4362, 1.4362, 1.4362, 5.00419, 0.187181, 5.00419, 0.556017, -1.04965, -2.71751, -1.37456, -1.37456, -5.42086, -5.45818, -7.4429, -5.45818, 3.75912, 1.7744, -13.3813, -0.286601, 1.69811, -0.286601, -2.46251, -0.477797, 1.58378, -0.849506, 5.57317, 16.2909}, {-0.324152, -0.324152, 2.94937, 1.4362, 1.4362, 1.4362, -1.66806, -0.0623937, -1.66806, -1.66805, 3.14895, 8.15252, -1.37456, -1.37456, -5.42086, 0.286601, -1.69811, 0.286601, 2.46251, 0.477797, -1.58378, 1.01001, 2.99472, -12.0841, -8.2073, -6.22258, -4.161, 8.04681, 1.62414, 12.0931}, {3.33613, 3.33613, 13.1567, 1.4362, 1.4362, 1.4362, 0.767151, -2.38432, -2.38432, -1.0913, 2.06017, 5.33369, -6.14546, -6.14546, -2.09916, -2.72349, 1.17194, 1.17194, -2.64229, 13.859, 17.9053, 7.0887, -9.4126, -22.5067, -0.426311, -4.32174, -8.36804, 0.400674, 0.400674, -3.64562}, {-1.11204, -1.11204, -4.38557, -4.30859, -4.30859, -4.30859, 0.767151, -2.38432, -2.38432, -1.0913, 2.06017, 5.33369, 4.0475, 4.0475, 21.1879, -5.79209, 10.7092, 10.7092, 0.426311, 4.32174, 8.36804, 2.72349, -1.17194, -1.17194, 3.9389, -12.5624, -29.7028, 0.400674, 0.400674, -3.64562}, {-1.11204, -1.11204, -4.38557, 1.4362, 1.4362, 1.4362, -2.30145, 7.15295, 7.15295, -1.0913, 2.06017, 5.33369, -0.400674, -0.400674, 3.64562, -8.46827, -4.57284, -4.57284, 4.87449, 8.76992, 25.9103, 2.72349, -1.17194, -1.17194, -0.426311, -4.32174, -8.36804, 4.76589, -7.83999, -24.9804}, {-1.11204, -1.11204, -4.38557, 1.4362, 1.4362, 1.4362, 0.767151, -2.38432, -2.38432, 3.27391, -6.1805, -16.0011, -0.400674, -0.400674, 3.64562, -2.72349, 1.17194, 1.17194, 0.426311, 4.32174, 8.36804, 7.17167, 3.27624, 16.3703, -6.1711, -10.0665, -14.1128, -2.66793, 9.93794, 5.89165}, {-6.6428, 1.48026, 1.47837, 0.647646, 0.70771, -1.63632, -0.372676, 0.942791, 0.941589, -2.48924, -1.15708, 1.18752, -6.1281, -3.09572, 9.177, -0.339882, -2.04013, 0.858732, -0.785628, -4.32662, -4.3211, 10.2968, 6.66845, -5.60881, 2.27633, 0.555453, 0.554744, 3.53752, 0.264876, -2.63172}, {2.21427, -0.493421, -0.492791, -1.94294, -2.12313, 4.90895, -0.372676, 0.942791, 0.941589, -2.48924, -1.15708, 1.18752, -12.3946, 1.70881, 4.60289, 1.15082, -5.8113, -2.90762, -2.27633, -0.555453, -0.554744, 0.339882, 2.04013, -0.858732, 12.2333, 5.18378, -4.19534, 3.53752, 0.264876, -2.63172}, {2.21427, -0.493421, -0.492791, 0.647646, 0.70771, -1.63632, 1.11803, -2.82837, -2.82477, -2.48924, -1.15708, 1.18752, -3.53752, -0.264876, 2.63172, -2.93046, -4.87097, 7.404, -11.1334, 1.41823, 1.41642, 0.339882, 2.04013, -0.858732, 2.27633, 0.555453, 0.554744, 13.4945, 4.8932, -7.38181}, {2.21427, -0.493421, -0.492791, 0.647646, 0.70771, -1.63632, -0.372676, 0.942791, 0.941589, 7.46771, 3.47124, -3.56256, -3.53752, -0.264876, 2.63172, -0.339882, -2.04013, 0.858732, -2.27633, -0.555453, -0.554744, -8.51718, 4.01381, 1.11243, -0.314251, -2.27539, 7.10002, 5.02822, -3.50629, -6.39808}, {1.12186, -2.82659, -2.82659, -1.84098, -0.449088, -0.449088, 0.510215, -1.28552, 0.320147, 1.70472, 0.792411, -0.813257, 10.1017, 1.18683, 1.18683, 1.64492, 2.14409, 0.15938, -2.20929, 5.56645, -2.84093, -8.4638, -5.31374, 3.09365, 0.16843, -0.424371, 1.56034, -2.73781, 0.609518, 0.609518}, {-0.373952, 0.942198, 0.942198, 5.52295, 1.34726, 1.34726, 0.510215, -1.28552, 0.320147, 1.70472, 0.792411, -0.813257, 4.23362, -4.37831, -4.37831, -0.395942, 7.28618, -1.12121, -0.16843, 0.424371, -1.56034, -1.64492, -2.14409, -0.15938, -6.65045, -3.59401, 4.81337, -2.73781, 0.609518, 0.609518}, {-0.373952, 0.942198, 0.942198, -1.84098, -0.449088, -0.449088, -1.53064, 3.85656, -0.960441, 1.70472, 0.792411, -0.813257, 2.73781, -0.609518, -0.609518, 9.00885, 3.94045, 1.95573, 1.32738, -3.34442, -5.32914, -1.64492, -2.14409, -0.15938, 0.16843, -0.424371, 1.56034, -9.55669, -2.56013, 3.86255}, {-0.373952, 0.942198, 0.942198, -1.84098, -0.449088, -0.449088, 0.510215, -1.28552, 0.320147, -5.11416, -2.37723, 2.43977, 2.73781, -0.609518, -0.609518, 1.64492, 2.14409, 0.15938, -0.16843, 0.424371, -1.56034, -0.149109, -5.91289, -3.92817, 7.53236, 1.37198, 3.3567, -4.77867, 5.7516, -0.67107}, {0.461366, -4.35523, -1.72378, -0.132927, -0.133043, -2.07188, -0.954792, -0.955627, -0.378232, 1.24151, -0.363075, 1.87552, 0.886107, -1.09783, 10.1383, 1.34449, 1.34567, 3.0285, 5.18945, 3.20927, 1.27021, -6.31053, 0.10663, -10.5306, -1.37028, 0.613236, 0.242715, -0.3544, 1.63001, -1.85075}, {-0.153789, 1.45174, 0.574593, 0.39878, 0.399129, 6.21564, -0.954792, -0.955627, -0.378232, 1.24151, -0.363075, 1.87552, 0.969555, -7.43698, -0.447622, 5.16366, 5.16818, 4.54143, 1.37028, -0.613236, -0.242715, -1.34449, -1.34567, -3.0285, -6.33631, 2.06554, -7.25936, -0.3544, 1.63001, -1.85075}, {-0.153789, 1.45174, 0.574593, -0.132927, -0.133043, -2.07188, 2.86438, 2.86688, 1.1347, 1.24151, -0.363075, 1.87552, 0.3544, -1.63001, 1.85075, 1.8762, 1.87784, 11.316, 1.98544, -6.42021, -2.54109, -1.34449, -1.34567, -3.0285, -1.37028, 0.613236, 0.242715, -5.32043, 3.08231, -9.35282}, {-0.153789, 1.45174, 0.574593, -0.132927, -0.133043, -2.07188, -0.954792, -0.955627, -0.378232, -3.72452, 1.08923, -5.62656, 0.3544, -1.63001, 1.85075, 1.34449, 1.34567, 3.0285, 1.37028, -0.613236, -0.242715, -0.72934, -7.15265, -5.32687, -0.838575, 1.14541, 8.53023, 3.46477, 5.45251, -0.337821}, {4.44089e-16, 7.02938, 0, 1.54187, 1.54427, 0.609885, -1.74043, -1.74314, 1.3308, 0.198561, 2.542, -1.94068, -8.07331, -5.18964, -3.1934, 0.245434, 0.245817, -2.39881, 9.11299, 12.0235, -6.96814, -1.03968, -10.4138, 10.1615, -2.15129, -5.0509, 1.64495, 1.90585, -0.987441, 0.75386}, {2.77556e-17, -2.34313, 0, -4.6256, -4.63281, -1.82966, -1.74043, -1.74314, 1.3308, 0.198561, 2.542, -1.94068, -1.90585, 10.3599, -0.75386, 7.20714, 7.21837, -7.722, 2.15129, 5.0509, -1.64495, -0.245434, -0.245817, 2.39881, -2.94553, -15.2189, 9.40768, 1.90585, -0.987441, 0.75386}, {-3.60822e-16, -2.34313, -2.22045e-16, 1.54187, 1.54427, 0.609885, 5.22128, 5.22942, -3.99239, 0.198561, 2.542, -1.94068, -1.90585, 0.987441, -0.75386, -5.92203, -5.93126, -4.83836, 2.15129, 14.4234, -1.64495, -0.245434, -0.245817, 2.39881, -2.15129, -5.0509, 1.64495, 1.11161, -11.1554, 8.51658}, {-5.55112e-17, -2.34313, 0, 1.54187, 1.54427, 0.609885, -1.74043, -1.74314, 1.3308, -0.595682, -7.62599, 5.82204, -1.90585, 0.987441, -0.75386, 0.245434, 0.245817, -2.39881, 2.15129, 5.0509, -1.64495, -0.245434, 9.12668, 2.39881, -8.31875, -11.228, -0.794587, 8.86756, 5.98512, -4.56932}, {4.8128, 0, 0, 1.54178, 1.54312, 0.61076, 0.198549, 0.198723, -1.94057, -0.136059, -1.74185, 1.32981, -6.08986, -8.0799, -3.19798, -2.15116, -2.15304, 1.64373, 0.943366, -1.04052, 10.1609, 2.6954, 9.12042, -6.96297, -1.73756, 0.245635, -2.39867, -0.0772416, 1.90741, 0.754941}, {-1.60427, -2.22045e-16, 0, -4.62533, -4.62937, -1.83228, 0.198549, 0.198723, -1.94057, -0.136059, -1.74185, 1.32981, 6.49431, -1.90741, -0.754941, -2.94536, -2.94793, 9.40601, 1.73756, -0.245635, 2.39867, 2.15116, 2.15304, -1.64373, -1.19332, 7.21302, -7.71791, -0.0772416, 1.90741, 0.754941}, {-1.60427, 2.22045e-16, -2.22045e-16, 1.54178, 1.54312, 0.61076, -0.595647, -0.596168, 5.82171, -0.136059, -1.74185, 1.32981, 0.0772416, -1.90741, -0.754941, -8.31826, -8.32553, -0.799305, 8.15463, -0.245635, 2.39867, 2.15116, 2.15304, -1.64373, -1.73756, 0.245635, -2.39867, 0.466995, 8.87479, -4.5643}, {-1.60427, 0, 0, 1.54178, 1.54312, 0.61076, 0.198549, 0.198723, -1.94057, 0.408178, 5.22554, -3.98943, 0.0772416, -1.90741, -0.754941, -2.15116, -2.15304, 1.64373, 1.73756, -0.245635, 2.39867, 8.56822, 2.15304, -1.64373, -7.90467, -5.92686, -4.84171, -0.871438, 1.11252, 8.51722}, {4.91028, -4.91028, -4.91028, -1.57573, -1.57573, 1.57573, 1.57573, 1.57573, 1.57573, 1.63676, -1.63676, -4.78823, 10.2738, 6.2275, -10.2738, -3.02869e-13, -3.06644e-13, -3.89543, -6.2275, -10.2738, -10.2738, -6.54704, 6.54704, 23.0483, -0.0754334, 3.97086, 3.97086, -3.97086, 0.0754334, 3.97086}, {-1.63676, 1.63676, 1.63676, 4.7272, 4.7272, -4.7272, 1.57573, 1.57573, 1.57573, 1.63676, -1.63676, -4.78823, 10.5179, -6.62248, -10.5179, -6.30294, -6.30294, -10.1984, 0.0754334, -3.97086, -3.97086, 3.01943e-13, 3.04461e-13, 3.89543, -6.62248, 10.5179, 23.1238, -3.97086, 0.0754334, 3.97086}, {-1.63676, 1.63676, 1.63676, -1.57573, -1.57573, 1.57573, -4.7272, -4.7272, -4.7272, 1.63676, -1.63676, -4.78823, 3.97086, -0.0754334, -3.97086, 6.30294, 6.30294, -10.1984, 6.62248, -10.5179, -10.5179, 3.00389e-13, 2.99798e-13, 3.89543, -0.0754334, 3.97086, 3.97086, -10.5179, 6.62248, 23.1238}, {-1.63676, 1.63676, 1.63676, -1.57573, -1.57573, 1.57573, 1.57573, 1.57573, 1.57573, -4.91028, 4.91028, 14.3647, 3.97086, -0.0754334, -3.97086, -2.97096e-13, -3.00426e-13, -3.89543, 0.0754334, -3.97086, -3.97086, 6.54704, -6.54704, -2.65162, 6.2275, 10.2738, -2.33207, -10.2738, -6.2275, -2.33207}, {4.24616, -5.57441, -4.24616, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, -0.373467, -3.64699, -2.778, 1.74951, -2.29678, -18.2508, -2.21115, -2.21115, -1.68428, -7.61705, -11.6633, 7.61705, 3.70501, 16.7991, 12.7963, 0.461631, 4.50793, -0.461631, -1.74951, 2.29678, 5.64494}, {-1.41539, 1.85814, 1.41539, 5.07516e-15, 1.27584e-14, -9.45441, 1.78885, 1.78885, -1.78885, -0.373467, -3.64699, -2.778, 7.41106, -9.72932, -11.3065, -9.36656, -9.36656, 5.47113, -0.461631, -4.50793, 0.461631, 2.21115, 2.21115, 1.68428, 1.9555, 19.0959, 10.6504, -1.74951, 2.29678, 5.64494}, {-1.41539, 1.85814, 1.41539, 0, 0, 3.15147, -5.36656, -5.36656, 5.36656, -0.373467, -3.64699, -2.778, 1.74951, -2.29678, -5.64494, -2.21115, -2.21115, -14.2902, 5.19992, -11.9405, -5.19992, 2.21115, 2.21115, 1.68428, 0.461631, 4.50793, -0.461631, -0.255645, 16.8847, 16.7569}, {-1.41539, 1.85814, 1.41539, 0, 0, 3.15147, 1.78885, 1.78885, -1.78885, 1.1204, 10.941, 8.334, 1.74951, -2.29678, -5.64494, -2.21115, -2.21115, -1.68428, -0.461631, -4.50793, 0.461631, 7.87269, -5.2214, -3.97726, 0.461631, 4.50793, -13.0675, -8.90493, -4.85864, 12.8004}, {-5.36656, -5.36656, 5.36656, -0.373467, -3.64699, 0.373467, -1.60567, 0, 0, 0.190281, 1.85814, 1.41539, -0.255645, 16.8847, 0.255645, 2.44635, 4.50793, -0.461631, 6.19624, -2.21115, 2.21115, -3.20747, -11.9405, -5.19992, 0.226431, 2.21115, -2.21115, 1.74951, -2.29678, -1.74951}, {1.78885, 1.78885, -1.78885, 1.1204, 10.941, -1.1204, -1.60567, 0, 0, 0.190281, 1.85814, 1.41539, -8.90493, -4.85864, 8.90493, 8.86902, 4.50793, -0.461631, -0.226431, -2.21115, 2.21115, -2.44635, -4.50793, 0.461631, -0.534693, -5.2214, -7.87269, 1.74951, -2.29678, -1.74951}, {1.78885, 1.78885, -1.78885, -0.373467, -3.64699, 0.373467, 4.817, 0, 0, 0.190281, 1.85814, 1.41539, -1.74951, 2.29678, 1.74951, 3.94022, 19.0959, -1.9555, -7.38185, -9.36656, 9.36656, -2.44635, -4.50793, 0.461631, 0.226431, 2.21115, -2.21115, 0.988391, -9.72932, -7.41106}, {1.78885, 1.78885, -1.78885, -0.373467, -3.64699, 0.373467, -1.60567, 0, 0, -0.570843, -5.57441, -4.24616, -1.74951, 2.29678, 1.74951, 2.44635, 4.50793, -0.461631, -0.226431, -2.21115, 2.21115, -9.60176, -11.6633, 7.61705, 1.7203, 16.7991, -3.70501, 8.17219, -2.29678, -1.74951}, {-1.80799, -0.0150891, -4.77555, -0.827431, 1.45271, 0.471751, -0.860099, -1.45095, 0.0849431, 1.08487, -0.00678866, -2.14855, 3.58755, -7.6127, -4.43776, 2.0859, -0.00217419, -0.688112, 3.7586, 7.59105, -2.4124, -6.42536, 0.0293288, 9.28229, -0.318207, -1.78726, 2.07263, -0.277826, 1.80186, 2.55075}, {0.602665, 0.0050297, 1.59185, 2.48229, -4.35813, -1.41525, -0.860099, -1.45095, 0.0849431, 1.08487, -0.00678866, -2.14855, -2.13283, -1.82198, -8.91816, 5.5263, 5.80162, -1.02788, 0.318207, 1.78726, -2.07263, -2.0859, 0.00217419, 0.688112, -4.65767, -1.7601, 10.6668, -0.277826, 1.80186, 2.55075}, {0.602665, 0.0050297, 1.59185, -0.827431, 1.45271, 0.471751, 2.5803, 4.35285, -0.254829, 1.08487, -0.00678866, -2.14855, 0.277826, -1.80186, -2.55075, 5.39562, -5.81301, -2.57512, -2.09245, 1.76714, -8.44004, -2.0859, 0.00217419, 0.688112, -0.318207, -1.78726, 2.07263, -4.61729, 1.82902, 11.1449}, {0.602665, 0.0050297, 1.59185, -0.827431, 1.45271, 0.471751, -0.860099, -1.45095, 0.0849431, -3.2546, 0.020366, 6.44564, 0.277826, -1.80186, -2.55075, 2.0859, -0.00217419, -0.688112, 0.318207, 1.78726, -2.07263, -4.49656, -0.0179446, -5.67929, 2.99152, -7.59809, 0.185628, 3.16257, 7.60566, 2.21098}, {1.57878, 4.35912, 1.72866, 0.141226, 1.44665, -1.44665, 1.40644, -1.11582e-18, -3.53145e-16, -1.02141, 0.00639156, 2.02287, -0.0889792, -5.77869, 8.28699, -1.91302, -1.78815, 1.78815, -6.71372, 1.79605, 0.712247, 5.99864, 1.76259, -9.87962, 1.08796, -1.79605, -0.712247, -0.475926, -0.0079004, -2.5004}, {-0.526258, -1.45304, -0.57622, -0.423679, -4.33994, 4.33994, 1.40644, -3.34745e-18, -1.05944e-15, -1.02141, 0.00639156, 2.02287, 2.58096, 5.82005, 4.80528, -7.53877, -1.78815, 1.78815, -1.08796, 1.79605, 0.712247, 1.91302, 1.78815, -1.78815, 5.17359, -1.82162, -8.80371, -0.475926, -0.0079004, -2.5004}, {-0.526258, -1.45304, -0.57622, 0.141226, 1.44665, -1.44665, -4.21932, 0, 0, -1.02141, 0.00639156, 2.02287, 0.475926, 0.0079004, 2.5004, -2.47792, -7.57474, 7.57474, 1.01707, 7.60821, 3.01713, 1.91302, 1.78815, -1.78815, 1.08796, -1.79605, -0.712247, 3.6097, -0.0334666, -10.5919}, {-0.526258, -1.45304, -0.57622, 0.141226, 1.44665, -1.44665, 1.40644, 3.34745e-18, 1.05944e-15, 3.06422, -0.0191747, -6.0686, 0.475926, 0.0079004, 2.5004, -1.91302, -1.78815, 1.78815, -1.08796, 1.79605, 0.712247, 4.01805, 7.60031, 0.516725, 0.523057, -7.58264, 5.07434, -6.10168, -0.0079004, -2.5004}, {10.941, -1.1204, -1.1204, 1.78885, -1.78885, -1.78885, -3.70338e-16, -2.82096e-16, 1.60567, 1.85814, 1.41539, -0.190281, -4.85864, 8.90493, 8.90493, -2.21115, 2.21115, 0.226431, 4.50793, -0.461631, -8.86902, -5.2214, -7.87269, 0.534693, -4.50793, 0.461631, 2.44635, -2.29678, -1.74951, -1.74951}, {-3.64699, 0.373467, 0.373467, -5.36656, 5.36656, 5.36656, -1.11101e-15, -8.46287e-16, 1.60567, 1.85814, 1.41539, -0.190281, 16.8847, 0.255645, 0.255645, -2.21115, 2.21115, -6.19624, 4.50793, -0.461631, -2.44635, 2.21115, -2.21115, -0.226431, -11.9405, -5.19992, 3.20747, -2.29678, -1.74951, -1.74951}, {-3.64699, 0.373467, 0.373467, 1.78885, -1.78885, -1.78885, 0, 0, -4.817, 1.85814, 1.41539, -0.190281, 2.29678, 1.74951, 1.74951, -9.36656, 9.36656, 7.38185, 19.0959, -1.9555, -3.94022, 2.21115, -2.21115, -0.226431, -4.50793, 0.461631, 2.44635, -9.72932, -7.41106, -0.988391}, {-3.64699, 0.373467, 0.373467, 1.78885, -1.78885, -1.78885, 1.11101e-15, 8.46287e-16, 1.60567, -5.57441, -4.24616, 0.570843, 2.29678, 1.74951, 1.74951, -2.21115, 2.21115, 0.226431, 4.50793, -0.461631, -2.44635, 16.7991, -3.70501, -1.7203, -11.6633, 7.61705, 9.60176, -2.29678, -1.74951, -8.17219}, {-5.57441, -4.24616, -4.24616, 1.78885, -1.78885, -1.78885, 2.85327e-15, 3.15147, -2.92187e-16, -3.64699, -2.778, 0.373467, -11.6633, 7.61705, 7.61705, -2.21115, -1.68428, 2.21115, -2.29678, -18.2508, -1.74951, 16.7991, 12.7963, -3.70501, 2.29678, 5.64494, 1.74951, 4.50793, -0.461631, -0.461631}, {1.85814, 1.41539, 1.41539, -5.36656, 5.36656, 5.36656, -5.70654e-15, 3.15147, 5.84374e-16, -3.64699, -2.778, 0.373467, -11.9405, -5.19992, -5.19992, -2.21115, -14.2902, 2.21115, -2.29678, -5.64494, -1.74951, 2.21115, 1.68428, -2.21115, 16.8847, 16.7569, 0.255645, 4.50793, -0.461631, -0.461631}, {1.85814, 1.41539, 1.41539, 1.78885, -1.78885, -1.78885, 0, -9.45441, 0, -3.64699, -2.778, 0.373467, -4.50793, 0.461631, 0.461631, -9.36656, 5.47113, 9.36656, -9.72932, -11.3065, -7.41106, 2.21115, 1.68428, -2.21115, 2.29678, 5.64494, 1.74951, 19.0959, 10.6504, -1.9555}, {1.85814, 1.41539, 1.41539, 1.78885, -1.78885, -1.78885, -2.85327e-15, 3.15147, 2.92187e-16, 10.941, 8.334, -1.1204, -4.50793, 0.461631, 0.461631, -2.21115, -1.68428, 2.21115, -2.29678, -5.64494, -1.74951, -5.2214, -3.97726, -7.87269, -4.85864, 12.8004, 8.90493, 4.50793, -13.0675, -0.461631}, {0.184458, 9.63611, 9.63611, 0.802834, -0.802834, 0.802834, -1.57551, 1.57551, 1.57551, 0.834161, 2.43936, 0.833693, -4.12769, 8.17399, -0.233398, 0.955079, -0.955079, -2.93979, 8.32547, -4.27918, -4.27918, -4.29172, -8.80237, -0.394979, -2.02344, -2.02286, -2.02286, 0.916356, -4.96265, -2.97794}, {-0.0614861, -3.21204, -3.21204, -2.4085, 2.4085, -2.4085, -1.57551, 1.57551, 1.57551, 0.834161, 2.43936, 0.833693, -0.670412, 17.8108, 15.8261, 7.25711, -7.25711, -9.24183, 2.02344, 2.02286, 2.02286, -0.955079, 0.955079, 2.93979, -5.36008, -11.7803, -5.35763, 0.916356, -4.96265, -2.97794}, {-0.0614861, -3.21204, -3.21204, 0.802834, -0.802834, 0.802834, 4.72653, -4.72653, -4.72653, 0.834161, 2.43936, 0.833693, -0.916356, 4.96265, 2.97794, -2.25626, 2.25626, -6.15113, 2.26938, 14.871, 14.871, -0.955079, 0.955079, 2.93979, -2.02344, -2.02286, -2.02286, -2.42029, -14.7201, -6.31271}, {-0.0614861, -3.21204, -3.21204, 0.802834, -0.802834, 0.802834, -1.57551, 1.57551, 1.57551, -2.50248, -7.31808, -2.50108, -0.916356, 4.96265, 2.97794, 0.955079, -0.955079, -2.93979, 2.02344, 2.02286, 2.02286, -0.709135, 13.8032, 15.7879, -5.23477, 1.18848, -5.23419, 7.21839, -11.2647, -9.27997}, {4.72653, -4.72653, -4.72653, 1.637, 1.63653, 1.63653, 1.57573, 1.57573, -1.57573, -1.63722, -4.78777, -1.6363, -6.62398, -10.5164, -10.5164, -3.97115, -3.97057, -0.0751443, -6.30322, -10.1981, 6.30322, 10.52, 23.1217, 6.62035, 0.000278382, 3.89515, -0.000278382, 0.076001, 3.9703, 3.9703}, {-1.57551, 1.57551, 1.57551, -4.91099, -4.90958, -4.90958, 1.57573, 1.57573, -1.57573, -1.63722, -4.78777, -1.6363, 6.22604, -10.2723, -10.2723, -10.2741, -10.2735, 6.22779, -0.000278382, -3.89515, 0.000278382, 3.97115, 3.97057, 0.0751443, 6.54916, 23.0462, 6.54493, 0.076001, 3.9703, 3.9703}, {-1.57551, 1.57551, 1.57551, 1.637, 1.63653, 1.63653, -4.7272, -4.7272, 4.7272, -1.63722, -4.78777, -1.6363, -0.076001, -3.9703, -3.9703, -10.5191, -10.5167, -6.62125, 6.30176, -10.1972, -6.30176, 3.97115, 3.97057, 0.0751443, 0.000278382, 3.89515, -0.000278382, 6.62488, 23.1214, 10.5155}, {-1.57551, 1.57551, 1.57551, 1.637, 1.63653, 1.63653, 1.57573, 1.57573, -1.57573, 4.91166, 14.3633, 4.90891, -0.076001, -3.9703, -3.9703, -3.97115, -3.97057, -0.0751443, -0.000278382, -3.89515, 0.000278382, 10.2732, -2.33146, -6.22689, -6.5477, -2.65096, -6.54639, -6.22694, -2.33264, 10.2732}, {2.2538, -2.2568, -6.95596, 1.0326, -1.0322, -0.409331, 0.623613, 1.72184, 0.682817, -0.904944, -1.44191, -2.59214, -4.47814, 4.47482, -0.722725, -2.04719, -0.852443, -0.338046, -2.33666, -9.94553, -6.44129, 5.66697, 6.62007, 10.7066, -0.157789, 3.05817, 3.71002, 0.347745, -0.346017, 2.36005}, {-0.751267, 0.752267, 2.31865, -3.09779, 3.0966, 1.22799, 0.623613, 1.72184, 0.682817, -0.904944, -1.44191, -2.59214, 2.65732, -2.66305, -11.6347, -4.54164, -7.73981, -3.06931, 0.157789, -3.05817, -3.71002, 2.04719, 0.852443, 0.338046, 3.46199, 8.8258, 14.0786, 0.347745, -0.346017, 2.36005}, {-0.751267, 0.752267, 2.31865, 1.0326, -1.0322, -0.409331, -1.87084, -5.16552, -2.04845, -0.904944, -1.44191, -2.59214, -0.347745, 0.346017, -2.36005, -6.17758, 3.27636, 1.29928, 3.16286, -6.06723, -12.9846, 2.04719, 0.852443, 0.338046, -0.157789, 3.05817, 3.71002, 3.96752, 5.42161, 12.7286}, {-0.751267, 0.752267, 2.31865, 1.0326, -1.0322, -0.409331, 0.623613, 1.72184, 0.682817, 2.71483, 4.32572, 7.77641, -0.347745, 0.346017, -2.36005, -2.04719, -0.852443, -0.338046, 0.157789, -3.05817, -3.71002, 5.05226, -2.15663, -8.93656, -4.28818, 7.18697, 5.34735, -2.14671, -7.23338, -0.371216}, {4.6308, -4.62902, -1.83569, 1.74378, -1.74182, 1.32959, 2.34612, 3.47392e-16, -3.39235e-15, -2.5463, 0.198817, -1.94149, -7.22258, 7.21305, -7.71818, -5.0554, 2.15301, -1.64347, -10.3764, -1.90726, -0.756347, 15.2406, -2.94828, 9.40942, 0.991964, 1.90726, 0.756347, 0.24744, -0.245751, 2.39981}, {-1.5436, 1.54301, 0.611898, -5.23135, 5.22547, -3.98877, 2.34612, -2.31594e-16, 2.26157e-15, -2.5463, 0.198817, -1.94149, 5.92697, -5.92628, -4.8474, -14.4399, 2.15301, -1.64347, -0.991964, -1.90726, -0.756347, 5.0554, -2.15301, 1.64347, 11.1772, 1.11199, 8.5223, 0.24744, -0.245751, 2.39981}, {-1.5436, 1.54301, 0.611898, 1.74378, -1.74182, 1.32959, -7.03835, 0, 0, -2.5463, 0.198817, -1.94149, -0.24744, 0.245751, -2.39981, -12.0305, 9.12031, -6.96183, 5.18244, -8.07929, -3.20394, 5.0554, -2.15301, 1.64347, 0.991964, 1.90726, 0.756347, 10.4326, -1.04102, 10.1658}, {-1.5436, 1.54301, 0.611898, 1.74378, -1.74182, 1.32959, 2.34612, 1.15797e-16, -1.13078e-15, 7.6389, -0.59645, 5.82447, -0.24744, 0.245751, -2.39981, -5.0554, 2.15301, -1.64347, -0.991964, -1.90726, -0.756347, 11.2298, -8.32504, -0.804126, -5.98318, 8.87456, -4.56202, -9.13703, -0.245751, 2.39981}, {7.47016e-18, 3.62803, 8.88178e-16, -1.45582, 0.0794645, -1.44142, 1.45582, 0.249439, -0.577805, -1.62092e-12, 0.88044, 2.01922, 7.62276, 1.07875, 7.54736, -2.00373e-12, -0.406547, 2.4959, -7.62276, 0.188753, 3.02542, 8.48742e-12, -3.11521, -10.5728, 1.79949, -1.18651, -0.714206, -1.79949, -1.39661, -1.78169}, {-1.75097e-16, -1.20934, 0, 4.36745, -0.238394, 4.32425, 1.45582, 0.249439, -0.577805, -1.62031e-12, 0.88044, 2.01922, 1.79949, 6.23398, 1.78169, -5.82327, -1.4043, 4.80711, -1.79949, 1.18651, 0.714206, 2.00284e-12, 0.406547, -2.4959, 1.79949, -4.70827, -8.79109, -1.79949, -1.39661, -1.78169}, {-7.62205e-17, -1.20934, 0, -1.45582, 0.0794645, -1.44142, -4.36745, -0.748316, 1.73341, -1.61907e-12, 0.88044, 2.01922, 1.79949, 1.39661, 1.78169, 5.82327, -0.724405, 8.26156, -1.79949, 6.02388, 0.714206, 2.00151e-12, 0.406547, -2.4959, 1.79949, -1.18651, -0.714206, -1.79949, -4.91837, -9.85858}, {-1.9973e-16, -1.20934, 4.44089e-16, -1.45582, 0.0794645, -1.44142, 1.45582, 0.249439, -0.577805, 4.86018e-12, -2.64132, -6.05767, 1.79949, 1.39661, 1.78169, -2.00262e-12, -0.406547, 2.4959, -1.79949, 1.18651, 0.714206, 2.00364e-12, 5.24392, -2.4959, 7.62276, -1.50437, 5.05146, -7.62276, -2.39436, 0.529529}, {4.15997e-12, 1.3684, -5.1823, 1.45582, 0.310608, -0.437518, -1.45582, 0.975521, 0.61362, 1.52817e-12, -0.829997, -1.90353, -7.62276, -1.06255, 0.155649, 1.74749e-13, -1.58974, -0.217674, 7.62276, -4.54408, -5.34818, -6.28744e-12, 4.90973, 7.83181, -1.79949, 0.642, 2.8937, 1.79949, -0.179878, 1.59442}, {-1.3859e-12, -0.456132, 1.72743, -4.36745, -0.931824, 1.31255, -1.45582, 0.975521, 0.61362, 1.52713e-12, -0.829997, -1.90353, -1.79949, 2.00441, -8.50415, 5.82327, -5.49183, -2.67215, 1.79949, -0.642, -2.8937, -1.74527e-13, 1.58974, 0.217674, -1.79949, 3.96199, 10.5078, 1.79949, -0.179878, 1.59442}, {-1.38592e-12, -0.456132, 1.72743, 1.45582, 0.310608, -0.437518, 4.36745, -2.92656, -1.84086, 1.52736e-12, -0.829997, -1.90353, -1.79949, 0.179878, -1.59442, -5.82327, -2.83217, 1.5324, 1.79949, 1.18253, -9.80343, -1.74749e-13, 1.58974, 0.217674, -1.79949, 0.642, 2.8937, 1.79949, 3.14011, 9.20856}, {-1.38431e-12, -0.456132, 1.72743, 1.45582, 0.310608, -0.437518, -1.45582, 0.975521, 0.61362, -4.57858e-12, 2.48999, 5.7106, -1.79949, 0.179878, -1.59442, 1.75415e-13, -1.58974, -0.217674, 1.79949, -0.642, -2.8937, 5.36226e-12, 3.41427, -6.69206, -7.62276, -0.600431, 4.64377, 7.62276, -4.08196, -0.860057}, {3.89774, -2.39084, -3.90175, -1.08034, -0.824783, -1.26412, 1.27484, -0.81558, 1.06845, 1.10475, 0.843417, -1.10491, 7.26269, 3.33354, 5.01139, -0.240416, 2.0276, 0.241863, -5.06919, 3.28535, -7.20207, -4.17857, -5.40127, 4.17779, -0.0301684, -0.023032, 2.92828, -2.94133, -0.0344082, 0.0450763}, {-1.29925, 0.796947, 1.30058, 3.24102, 2.47435, 3.79235, 1.27484, -0.81558, 1.06845, 1.10475, 0.843417, -1.10491, 8.13832, -3.15338, -5.24742, -5.33978, 5.28992, -4.03192, 0.0301684, 0.023032, -2.92828, 0.240416, -2.0276, -0.241863, -4.44916, -3.3967, 7.34794, -2.94133, -0.0344082, 0.0450763}, {-1.29925, 0.796947, 1.30058, -1.08034, -0.824783, -1.26412, -3.82452, 2.44674, -3.20534, 1.10475, 0.843417, -1.10491, 2.94133, 0.0344082, -0.0450763, 4.08094, 5.32673, 5.29833, 5.22716, -3.16475, -8.13062, 0.240416, -2.0276, -0.241863, -0.0301684, -0.023032, 2.92828, -7.36032, -3.40808, 4.46473}, {-1.29925, 0.796947, 1.30058, -1.08034, -0.824783, -1.26412, 1.27484, -0.81558, 1.06845, -3.31424, -2.53025, 3.31474, 2.94133, 0.0344082, -0.0450763, -0.240416, 2.0276, 0.241863, 0.0301684, 0.023032, -2.92828, 5.43741, -5.21539, -5.4442, 4.29119, 3.2761, 7.98475, -8.04069, 3.22791, -4.22871}, {-7.02938, 0, 7.99361e-15, 0, 0, -2.34462, -1.02079e-11, 1.78885, 0.00114147, -2.34313, -1.78885, 2.34348, -2.89626, 0, 12.2766, 1.26176e-11, -2.21115, 2.8967, -2.89626, -9.36656, -0.00597681, 9.3725, 9.36656, -12.2706, 2.89626, 2.21115, 0.00141093, 2.89626, 0, -2.89811}, {2.34313, 0, 4.44089e-15, 0, 0, 7.03386, -1.02099e-11, 1.78885, 0.00114147, -2.34313, -1.78885, 2.34348, -12.2688, 0, 2.89811, 5.346e-11, -9.36656, 2.89213, -2.89626, -2.21115, -0.00141093, -1.26208e-11, 2.21115, -2.8967, 12.2688, 9.36656, -9.37251, 2.89626, 0, -2.89811}, {2.34313, -4.21885e-15, 2.22045e-15, 0, 0, -2.34462, 3.06361e-11, -5.36656, -0.00342441, -2.34313, -1.78885, 2.34348, -2.89626, 5.32907e-15, 2.89811, 1.26228e-11, -2.21115, 12.2752, -12.2688, -2.21115, -0.00141093, -1.26233e-11, 2.21115, -2.8967, 2.89626, 2.21115, 0.00141093, 12.2688, 7.15542, -12.272}, {2.34313, 3.10862e-15, -3.9968e-15, 0, 0, -2.34462, -1.0211e-11, 1.78885, 0.00114147, 7.02938, 5.36656, -7.03044, -2.89626, -3.55271e-15, 2.89811, 1.26215e-11, -2.21115, 2.8967, -2.89626, -2.21115, -0.00141093, -9.3725, 2.21115, -2.8967, 2.89626, 2.21115, 9.37989, 2.89626, -7.15542, -2.90268}, {-4.72653, 4.72653, 4.72653, -0.802949, -0.802719, 0.802949, -3.21204, 3.21204, -0.0614861, 2.43948, -0.833808, 0.834046, 2.25686, 6.15053, -2.25686, 4.96279, -2.97808, -0.916498, 14.871, -14.871, 2.26938, -14.7207, 6.31331, -2.41969, -2.02286, 2.02286, -2.02344, 0.954937, -2.93965, -0.954937}, {1.57551, -1.57551, -1.57551, 2.40885, 2.40816, -2.40885, -3.21204, 3.21204, -0.0614861, 2.43948, -0.833808, 0.834046, -7.25697, 9.24169, 7.25697, 17.8109, -15.8262, -0.670554, 2.02286, -2.02286, 2.02344, -4.96279, 2.97808, 0.916498, -11.7808, 5.35809, -5.35962, 0.954937, -2.93965, -0.954937}, {1.57551, -1.57551, -1.57551, -0.802949, -0.802719, 0.802949, 9.63611, -9.63611, 0.184458, 2.43948, -0.833808, 0.834046, -0.954937, 2.93965, 0.954937, 8.17459, 0.232798, -4.12829, -4.27918, 4.27918, 8.32547, -4.96279, 2.97808, 0.916498, -2.02286, 2.02286, -2.02344, -8.80297, 0.39558, -4.29112}, {1.57551, -1.57551, -1.57551, -0.802949, -0.802719, 0.802949, -3.21204, 3.21204, -0.0614861, -7.31843, 2.50142, -2.50214, -0.954937, 2.93965, 0.954937, 4.96279, -2.97808, -0.916498, 2.02286, -2.02286, 2.02344, -11.2648, 9.28012, 7.21853, 1.18894, 5.23374, -5.23523, 13.8031, -15.7878, -0.708993}, {-4.72653, 4.72653, 4.72653, 1.57596, 1.57551, 1.57551, 1.63653, -1.63653, 1.637, -4.788, 1.63653, -1.637, -10.1993, -6.30204, -6.30204, -3.97085, 0.0754226, -3.97087, -10.5164, 10.5164, -6.62398, 23.1228, -6.62153, 10.5189, 3.9703, -3.9703, 0.076001, 3.89543, -1.81188e-12, -1.80878e-12}, {1.57551, -1.57551, -1.57551, -4.72788, -4.72653, -4.72653, 1.63653, -1.63653, 1.637, -4.788, 1.63653, -1.637, -10.1975, 6.30204, 6.30204, -10.517, 6.62153, -10.5189, -3.9703, 3.9703, -0.076001, 3.97085, -0.0754226, 3.97087, 23.1223, -10.5164, 6.62398, 3.89543, -1.81721e-12, -1.81544e-12}, {1.57551, -1.57551, -1.57551, 1.57596, 1.57551, 1.57551, -4.90958, 4.90958, -4.91099, -4.788, 1.63653, -1.637, -3.89543, 1.81677e-12, 1.81988e-12, -10.2747, -6.22661, -10.2729, -10.2723, 10.2723, 6.22604, 3.97085, -0.0754226, 3.97087, 3.9703, -3.9703, 0.076001, 23.0474, -6.54611, 6.54798}, {1.57551, -1.57551, -1.57551, 1.57596, 1.57551, 1.57551, 1.63653, -1.63653, 1.637, 14.364, -4.90958, 4.91099, -3.89543, 1.81677e-12, 1.81677e-12, -3.97085, 0.0754226, -3.97087, -3.9703, 3.9703, -0.076001, -2.33118, 6.22661, 10.2729, -2.33354, -10.2723, -6.22604, -2.65068, 6.54611, -6.54798}, {-1.1204, 1.1204, 10.941, 0, -1.60567, 0, -1.78885, 1.78885, 1.78885, 1.41539, 0.190281, 1.85814, -0.461631, 8.86902, 4.50793, 2.21115, -0.226431, -2.21115, 8.90493, -8.90493, -4.85864, -7.87269, -0.534693, -5.2214, -1.74951, 1.74951, -2.29678, 0.461631, -2.44635, -4.50793}, {0.373467, -0.373467, -3.64699, 0, 4.817, 0, -1.78885, 1.78885, 1.78885, 1.41539, 0.190281, 1.85814, -1.9555, 3.94022, 19.0959, 9.36656, -7.38185, -9.36656, 1.74951, -1.74951, 2.29678, -2.21115, 0.226431, 2.21115, -7.41106, 0.988391, -9.72932, 0.461631, -2.44635, -4.50793}, {0.373467, -0.373467, -3.64699, 0, -1.60567, 0, 5.36656, -5.36656, -5.36656, 1.41539, 0.190281, 1.85814, -0.461631, 2.44635, 4.50793, 2.21115, 6.19624, -2.21115, 0.255645, -0.255645, 16.8847, -2.21115, 0.226431, 2.21115, -1.74951, 1.74951, -2.29678, -5.19992, -3.20747, -11.9405}, {0.373467, -0.373467, -3.64699, 0, -1.60567, 0, -1.78885, 1.78885, 1.78885, -4.24616, -0.570843, -5.57441, -0.461631, 2.44635, 4.50793, 2.21115, -0.226431, -2.21115, 1.74951, -1.74951, 2.29678, -3.70501, 1.7203, 16.7991, -1.74951, 8.17219, -2.29678, 7.61705, -9.60176, -11.6633}, {-9.45441, 2.44249e-15, 1.59872e-14, -1.78885, 1.78885, 1.78885, 1.41539, -1.41539, 1.85814, -2.778, -0.373467, -3.64699, 5.47113, -9.36656, -9.36656, 0.461631, -0.461631, -4.50793, -11.3065, 7.41106, -9.72932, 10.6504, 1.9555, 19.0959, 5.64494, -1.74951, 2.29678, 1.68428, 2.21115, 2.21115}, {3.15147, -1.77636e-15, -7.10543e-15, 5.36656, -5.36656, -5.36656, 1.41539, -1.41539, 1.85814, -2.778, -0.373467, -3.64699, -14.2902, -2.21115, -2.21115, -5.19992, 5.19992, -11.9405, -5.64494, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, 16.7569, -0.255645, 16.8847, 1.68428, 2.21115, 2.21115}, {3.15147, 2.55351e-15, -3.10862e-15, -1.78885, 1.78885, 1.78885, -4.24616, 4.24616, -5.57441, -2.778, -0.373467, -3.64699, -1.68428, -2.21115, -2.21115, 7.61705, -7.61705, -11.6633, -18.2508, 1.74951, -2.29678, -0.461631, 0.461631, 4.50793, 5.64494, -1.74951, 2.29678, 12.7963, 3.70501, 16.7991}, {3.15147, 6.10623e-16, 3.9968e-15, -1.78885, 1.78885, 1.78885, 1.41539, -1.41539, 1.85814, 8.334, 1.1204, 10.941, -1.68428, -2.21115, -2.21115, 0.461631, -0.461631, -4.50793, -5.64494, 1.74951, -2.29678, -13.0675, 0.461631, 4.50793, 12.8004, -8.90493, -4.85864, -3.97726, 7.87269, -5.2214}, {0.889469, 0.890856, -5.70584, -0.741046, -0.742202, -0.293121, 1.30296, -1.03813, 0.515387, -0.265426, 2.07729, -2.12421, 4.24665, 4.25327, -0.816132, -0.694566, 2.20061, -0.274736, -6.45592, 5.80278, -5.04953, 1.75627, -10.5098, 8.77158, 1.24407, -1.65026, 2.98799, -1.28247, -1.28446, 1.98862}, {-0.29649, -0.296952, 1.90195, 2.22314, 2.2266, 0.879363, 1.30296, -1.03813, 0.515387, -0.265426, 2.07729, -2.12421, 2.46842, 2.47227, -9.5964, -5.90641, 6.35314, -2.33628, -1.24407, 1.65026, -2.98799, 0.694566, -2.20061, 0.274736, 2.30577, -9.9594, 11.4848, -1.28247, -1.28446, 1.98862}, {-0.29649, -0.296952, 1.90195, -0.741046, -0.742202, -0.293121, -3.90889, 3.1144, -1.54616, -0.265426, 2.07729, -2.12421, 1.28247, 1.28446, -1.98862, 2.26962, 5.16942, 0.897749, -0.0581089, 2.83806, -10.5958, 0.694566, -2.20061, 0.274736, 1.24407, -1.65026, 2.98799, -0.220762, -9.59361, 10.4855}, {-0.29649, -0.296952, 1.90195, -0.741046, -0.742202, -0.293121, 1.30296, -1.03813, 0.515387, 0.796277, -6.23186, 6.37263, 1.28247, 1.28446, -1.98862, -0.694566, 2.20061, -0.274736, -1.24407, 1.65026, -2.98799, 1.88052, -1.01281, -7.33305, 4.20825, 1.31855, 4.16047, -6.49431, 2.86807, -0.0729313}, {1.60243, -4.68893, 4.44089e-16, 1.23856, -0.534131, 1.50236e-16, -0.868329, 0.25394, -1.31177, 0.163908, -1.28279, 1.31177, -5.82496, 0.864798, -6.66134e-16, -0.457635, 0.346335, 1.62143, 5.20686, -3.26159, 6.86849, -0.197999, 4.78481, -6.86849, -1.73355, 2.24583, -1.62143, 0.870711, 1.27173, 0}, {-0.534143, 1.56298, -2.22045e-16, -3.71569, 1.60239, -6.76061e-16, -0.868329, 0.25394, -1.31177, 0.163908, -1.28279, 1.31177, 1.26586, -7.52364, 8.88178e-16, 3.01568, -0.669425, 6.86849, 1.73355, -2.24583, 1.62143, 0.457635, -0.346335, -1.62143, -2.38918, 7.37698, -6.86849, 0.870711, 1.27173, 0}, {-0.534143, 1.56298, 2.22045e-16, 1.23856, -0.534131, -3.00472e-16, 2.60499, -0.76182, 3.9353, 0.163908, -1.28279, 1.31177, -0.870711, -1.27173, 0, -5.41189, 2.48286, 1.62143, 3.87012, -8.49775, 1.62143, 0.457635, -0.346335, -1.62143, -1.73355, 2.24583, -1.62143, 0.215077, 6.40287, -5.24706}, {-0.534143, 1.56298, 0, 1.23856, -0.534131, 4.50708e-16, -0.868329, 0.25394, -1.31177, -0.491725, 3.84836, -3.9353, -0.870711, -1.27173, -4.44089e-16, -0.457635, 0.346335, 1.62143, 1.73355, -2.24583, 1.62143, 2.59421, -6.59825, -1.62143, -6.6878, 4.38236, -1.62143, 4.34403, 0.255965, 5.24706}, {3.16808, 2.71157e-16, -8.88178e-16, -0.300269, 1.44665, -1.44665, 0.153249, -1.44665, -0.572575, 1.20305, -1.58738e-12, 2.01922, 2.87755, -7.57474, 7.57474, 0.181727, -1.96221e-12, 2.4959, 0.502898, 7.57474, 2.99804, -4.99391, 8.31173e-12, -10.5728, -1.11589, -1.78815, -0.707741, -1.67647, 1.78815, -1.78815}, {-1.05603, 1.56152e-17, 0, 0.900808, -4.33994, 4.33994, 0.153249, -1.44665, -0.572575, 1.20305, -1.58652e-12, 2.01922, 5.90057, -1.78815, 1.78815, -0.431268, 5.78659, 4.7862, 1.11589, 1.78815, 0.707741, -0.181727, 1.9611e-12, -2.4959, -5.92808, -1.78815, -8.78463, -1.67647, 1.78815, -1.78815}, {-1.05603, -4.03605e-17, -4.44089e-16, -0.300269, 1.44665, -1.44665, -0.459746, 4.33994, 1.71772, 1.20305, -1.58802e-12, 2.01922, 1.67647, -1.78815, 1.78815, 1.3828, -5.78659, 8.28248, 5.34, 1.78815, 0.707741, -0.181727, 1.96287e-12, -2.4959, -1.11589, -1.78815, -0.707741, -6.48866, 1.78815, -9.86504}, {-1.05603, -1.63709e-17, 4.44089e-16, -0.300269, 1.44665, -1.44665, 0.153249, -1.44665, -0.572575, -3.60914, 4.76214e-12, -6.05767, 1.67647, -1.78815, 1.78815, 0.181727, -1.96221e-12, 2.4959, 1.11589, 1.78815, 0.707741, 4.04237, 1.96294e-12, -2.4959, 0.0851836, -7.57474, 5.07885, -2.28947, 7.57474, 0.502145}, {-1.48316, 4.33994, 1.33227e-15, 0.561638, 1.44665, 4.17162e-16, -0.27448, -1.03171e-12, 1.31177, -0.781545, 1.03171e-12, -1.31177, -3.55187, -5.78659, -1.77636e-15, -0.354947, -1.78815, -1.62143, 0.8261, 1.78815, -6.86849, 3.48113, 1.78815, 6.86849, 0.27182, -1.78815, 1.62143, 1.30532, 0, 0}, {0.494387, -1.44665, 2.22045e-16, -1.68492, -4.33994, 8.34324e-16, -0.27448, -1.03124e-12, 1.31177, -0.781545, 1.03124e-12, -1.31177, -3.28287, 5.78659, -8.88178e-16, 0.742973, -1.78815, -6.86849, -0.27182, 1.78815, -1.62143, 0.354947, 1.78815, 1.62143, 3.398, -1.78815, 6.86849, 1.30532, 0, 0}, {0.494387, -1.44665, -2.22045e-16, 0.561638, 1.44665, 2.78108e-16, 0.82344, 3.09443e-12, -3.9353, -0.781545, 1.03148e-12, -1.31177, -1.30532, 3.59135e-16, 0, -2.6015, -7.57474, -1.62143, -2.24937, 7.57474, -1.62143, 0.354947, 1.78815, 1.62143, 0.27182, -1.78815, 1.62143, 4.4315, -4.1259e-12, 5.24706}, {0.494387, -1.44665, 2.22045e-16, 0.561638, 1.44665, -2.78108e-16, -0.27448, -1.03171e-12, 1.31177, 2.34464, -3.09513e-12, 3.9353, -1.30532, 3.59135e-16, 0, -0.354947, -1.78815, -1.62143, -0.27182, 1.78815, -1.62143, -1.6226, 7.57474, 1.62143, -1.97473, -7.57474, 1.62143, 2.40324, 4.12684e-12, -5.24706}, {4.33994, 0.162335, 4.33994, 0, 1.38248, 0, 1.44665, 0.246581, -0.572575, -1.76997e-12, -1.57494, 2.01922, 1.78815, -7.17185, 1.78815, -1.78815, -2.01362, 0.707741, -5.78659, -1.22423, 4.7862, 1.78815, 8.3134, -8.78463, 2.1878e-12, 0.237905, -2.4959, -1.78815, 1.64195, -1.78815}, {-1.44665, -0.0541117, -1.44665, -1.48949e-15, -4.14743, -5.64752e-15, 1.44665, 0.246581, -0.572575, -1.77017e-12, -1.57494, 2.01922, 7.57474, -1.4255, 7.57474, -7.57474, -2.99995, 2.99804, -2.18708e-12, -0.237905, 2.4959, 1.78815, 2.01362, -0.707741, 9.26812e-12, 6.53768, -10.5728, -1.78815, 1.64195, -1.78815}, {-1.44665, -0.0541117, -1.44665, -2.42885e-27, 1.38248, 2.77202e-15, -4.33994, -0.739742, 1.71772, -1.76924e-12, -1.57494, 2.01922, 1.78815, -1.64195, 1.78815, -1.78815, -7.54353, 0.707741, 5.78659, -0.021458, 8.28248, 1.78815, 2.01362, -0.707741, 2.1869e-12, 0.237905, -2.4959, -1.78815, 7.94173, -9.86504}, {-1.44665, -0.0541117, -1.44665, 0, 1.38248, 0, 1.44665, 0.246581, -0.572575, 5.31045e-12, 4.72483, -6.05767, 1.78815, -1.64195, 1.78815, -1.78815, -2.01362, 0.707741, -2.18766e-12, -0.237905, 2.4959, 7.57474, 2.23007, 5.07885, 2.18802e-12, -5.292, -2.4959, -7.57474, 0.655625, 0.502145}, {-4.33994, 1.02197, -0.540949, -9.62561e-13, 0.52571, 1.09845, -1.44665, -1.05053, -0.169142, 9.72352e-13, 0.86548, -1.10962, -1.78815, -2.33158, -5.97445, 1.78815, 0.648718, -1.14869, 5.78659, 5.92175, 0.662758, -1.78815, -4.11064, 5.58719, -1.2103e-14, -1.71961, 0.0138116, 1.78815, 0.22874, 1.58064}, {1.44665, -0.340656, 0.180316, 2.88884e-12, -1.57713, -3.29535, -1.44665, -1.05053, -0.169142, 9.72241e-13, 0.86548, -1.10962, -7.57474, 1.13389, -2.30191, 7.57474, 4.85086, -0.472119, 1.11288e-14, 1.71961, -0.0138116, -1.78815, -0.648718, 1.14869, -3.90045e-12, -5.18153, 4.45231, 1.78815, 0.22874, 1.58064}, {1.44665, -0.340656, 0.180316, -9.63744e-13, 0.52571, 1.09845, 4.33994, 3.1516, 0.507427, 9.73548e-13, 0.86548, -1.10962, -1.78815, -0.22874, -1.58064, 1.78815, -1.45412, -5.54249, -5.78659, 3.08223, -0.735077, -1.78815, -0.648718, 1.14869, -1.21179e-14, -1.71961, 0.0138116, 1.78815, -3.23318, 6.01914}, {1.44665, -0.340656, 0.180316, -9.6335e-13, 0.52571, 1.09845, -1.44665, -1.05053, -0.169142, -2.91945e-12, -2.59644, 3.32887, -1.78815, -0.22874, -1.58064, 1.78815, 0.648718, -1.14869, 1.17538e-14, 1.71961, -0.0138116, -7.57474, 0.713906, 0.427423, 3.84129e-12, -3.82245, -4.37999, 7.57474, 4.43088, 2.25721}, {-4.74899, 4.74899, 3.61742, 0.497745, -0.497745, 2.77232, -2.29648, -0.854984, 1.74929, 0.215741, 2.93573, -3.3158, -4.56292, 4.56292, -13.0256, 2.22336, 1.67207, -5.58902, 10.0679, 6.43345, -7.66893, -3.08633, -13.415, 18.8522, -0.881918, -3.01351, 0.671778, 2.57194, -2.57194, 1.93632}, {1.583, -1.583, -1.20581, -1.49324, 1.49324, -8.31697, -2.29648, -0.854984, 1.74929, 0.215741, 2.93573, -3.3158, -8.90393, 8.90393, 2.88691, 11.4093, 5.092, -12.5862, 0.881918, 3.01351, -0.671778, -2.22336, -1.67207, 5.58902, -1.74488, -14.7564, 13.935, 2.57194, -2.57194, 1.93632}, {1.583, -1.583, -1.20581, 0.497745, -0.497745, 2.77232, 6.88945, 2.56495, -5.24786, 0.215741, 2.93573, -3.3158, -2.57194, 2.57194, -1.93632, 0.232383, 3.66305, -16.6783, -5.45007, 9.3455, 4.15145, -2.22336, -1.67207, 5.58902, -0.881918, -3.01351, 0.671778, 1.70898, -14.3148, 15.1995}, {1.583, -1.583, -1.20581, 0.497745, -0.497745, 2.77232, -2.29648, -0.854984, 1.74929, -0.647223, -8.80718, 9.94741, -2.57194, 2.57194, -1.93632, 2.22336, 1.67207, -5.58902, 0.881918, 3.01351, -0.671778, -8.55536, 4.65993, 10.4123, -2.8729, -1.02253, -10.4175, 11.7579, 0.847997, -5.06083}, {6.34574, -4.8337, 3.10867, 0.725317, 2.59898, -0.725317, 1.60925, -1.2258, -1.60925, -0.219319, -2.98441, 3.37079, -1.18322, -15.6, 5.07865, -2.88568, -1.69734, 2.88568, -5.81154, 4.42679, 9.70697, 3.76295, 13.635, -16.3688, -0.625449, 0.47642, -3.26998, -1.71805, 5.20411, -2.17738}, {-2.11525, 1.61123, -1.03622, -2.17595, -7.79693, 2.17595, 1.60925, -1.2258, -1.60925, -0.219319, -2.98441, 3.37079, 10.179, -11.649, 6.32227, -9.32267, 3.20588, 9.32267, 0.625449, -0.47642, 3.26998, 2.88568, 1.69734, -2.88568, 0.251825, 12.4141, -16.7531, -1.71805, 5.20411, -2.17738}, {-2.11525, 1.61123, -1.03622, 0.725317, 2.59898, -0.725317, -4.82774, 3.67741, 4.82774, -0.219319, -2.98441, 3.37079, 1.71805, -5.20411, 2.17738, -5.78695, -12.0932, 5.78695, 9.08643, -6.92136, 7.41487, 2.88568, 1.69734, -2.88568, -0.625449, 0.47642, -3.26998, -0.840773, 17.1417, -15.6605}, {-2.11525, 1.61123, -1.03622, 0.725317, 2.59898, -0.725317, 1.60925, -1.2258, -1.60925, 0.657956, 8.95322, -10.1124, 1.71805, -5.20411, 2.17738, -2.88568, -1.69734, 2.88568, 0.625449, -0.47642, 3.26998, 11.3467, -4.7476, 1.25921, -3.52672, -9.91949, -0.36871, -8.15504, 10.1073, 4.25961}, {-5.36656, 5.36656, -5.36656, -1.78885, 1.78885, 1.36261, 0, -3.15147, 0, 0, 3.15147, -3.15147, 7.15542, -7.15542, -9.34589, 2.21115, 1.68428, -1.68428, -2.21115, 18.7124, -2.21115, -2.21115, -14.2902, 14.2902, 2.21115, -6.10657, 2.21115, 0, 3.63087e-12, 3.89543}, {1.78885, -1.78885, 1.78885, 5.36656, -5.36656, -4.08784, 0, -3.15147, 0, 0, 3.15147, -3.15147, -7.15542, 7.15542, -11.0508, 2.21115, 14.2902, -1.68428, -2.21115, 6.10657, -2.21115, -2.21115, -1.68428, 1.68428, 2.21115, -18.7124, 14.817, 0, 3.63087e-12, 3.89543}, {1.78885, -1.78885, 1.78885, -1.78885, 1.78885, 1.36261, 0, 9.45441, 0, 0, 3.15147, -3.15147, -4.44089e-16, -3.63354e-12, -3.89543, 9.36656, -5.47113, -7.13474, -9.36656, 13.262, -9.36656, -2.21115, -1.68428, 1.68428, 2.21115, -6.10657, 2.21115, 0, -12.6059, 16.5013}, {1.78885, -1.78885, 1.78885, -1.78885, 1.78885, 1.36261, 0, -3.15147, 0, 0, -9.45441, 9.45441, -4.44089e-16, -3.62865e-12, -3.89543, 2.21115, 1.68428, -1.68428, -2.21115, 6.10657, -2.21115, -9.36656, 5.47113, -5.47113, 9.36656, -13.262, -3.23931, 0, 12.6059, 3.89543}, {0, -1.77636e-15, 9.45441, -1.78885, 1.36261, 1.78885, 1.78885, 1.78885, -1.78885, 0, -3.15147, 3.15147, 9.36656, -7.13474, -5.47113, 0, -3.89543, -3.6291e-12, -9.36656, -9.36656, 13.262, 0, 16.5013, -12.6059, 2.21115, 2.21115, -6.10657, -2.21115, 1.68428, -1.68428}, {3.08199e-16, 8.88178e-16, -3.15147, 5.36656, -4.08784, -5.36656, 1.78885, 1.78885, -1.78885, -3.08199e-16, -3.15147, 3.15147, 2.21115, -1.68428, 14.2902, -7.15542, -11.0508, 7.15542, -2.21115, -2.21115, 6.10657, -7.65114e-32, 3.89543, 3.62544e-12, 2.21115, 14.817, -18.7124, -2.21115, 1.68428, -1.68428}, {-3.08199e-16, 4.44089e-16, -3.15147, -1.78885, 1.36261, 1.78885, -5.36656, -5.36656, 5.36656, 3.08199e-16, -3.15147, 3.15147, 2.21115, -1.68428, 1.68428, 7.15542, -9.34589, -7.15542, -2.21115, -2.21115, 18.7124, 7.65114e-32, 3.89543, 3.62633e-12, 2.21115, 2.21115, -6.10657, -2.21115, 14.2902, -14.2902}, {-3.08199e-16, 4.44089e-16, -3.15147, -1.78885, 1.36261, 1.78885, 1.78885, 1.78885, -1.78885, -9.24597e-16, 9.45441, -9.45441, 2.21115, -1.68428, 1.68428, 0, -3.89543, -3.62776e-12, -2.21115, -2.21115, 6.10657, 1.2328e-15, 3.89543, 12.6059, 9.36656, -3.23931, -13.262, -9.36656, -5.47113, 5.47113}, {1.6947, 4.26991, -0.547096, 2.00519, -0.0353642, -0.0353642, 0.45376, 1.14328, 1.14328, -1.89405, 0.315388, -1.29028, -9.80104, 1.94447, -0.0402465, -3.03942, -1.36946, -1.36946, -1.67766, -4.22699, -6.2117, 10.6156, 0.107907, 6.53058, -0.137376, -0.346128, 1.63859, 1.78029, -1.80301, 0.181703}, {-0.5649, -1.4233, 0.182365, -6.01556, 0.106093, 0.106093, 0.45376, 1.14328, 1.14328, -1.89405, 0.315388, -1.29028, 0.479306, 7.49622, -0.911165, -4.85446, -5.94257, -5.94257, 0.137376, 0.346128, -1.63859, 3.03942, 1.36946, 1.36946, 7.43881, -1.60768, 6.79971, 1.78029, -1.80301, 0.181703}, {-0.5649, -1.4233, 0.182365, 2.00519, -0.0353642, -0.0353642, -1.36128, -3.42984, -3.42984, -1.89405, 0.315388, -1.29028, -1.78029, 1.80301, -0.181703, -11.0602, -1.228, -1.228, 2.39697, 6.03934, -2.36805, 3.03942, 1.36946, 1.36946, -0.137376, -0.346128, 1.63859, 9.35648, -3.06456, 5.34282}, {-0.5649, -1.4233, 0.182365, 2.00519, -0.0353642, -0.0353642, 0.45376, 1.14328, 1.14328, 5.68214, -0.946164, 3.87084, -1.78029, 1.80301, -0.181703, -3.03942, -1.36946, -1.36946, 0.137376, 0.346128, -1.63859, 5.29902, 7.06267, 0.639997, -8.15812, -0.204671, 1.78004, -0.0347482, -6.37613, -4.39141}, {-1.35612, -3.4307, -3.42632, -0.759405, 0.424983, -1.91868, -2.45728, -1.10819, -1.10678, 2.76464, -0.460356, 1.88336, 3.41754, -3.63876, 8.63464, 3.97604, 0.844494, 3.73968, 12.3077, 4.38905, 4.38345, -15.0346, 0.996929, -11.2731, -2.47861, 0.0437235, 0.0436678, -0.379924, 1.93883, -0.959903}, {0.45204, 1.14357, 1.14211, 2.27821, -1.27495, 5.75605, -2.45728, -1.10819, -1.10678, 2.76464, -0.460356, 1.88336, -1.42823, -6.51309, -3.60853, 13.8052, 5.27726, 8.1668, 2.47861, -0.0437235, -0.0436678, -3.97604, -0.844494, -3.73968, -13.5372, 1.88515, -7.48976, -0.379924, 1.93883, -0.959903}, {0.45204, 1.14357, 1.14211, -0.759405, 0.424983, -1.91868, 7.37184, 3.32458, 3.32034, 2.76464, -0.460356, 1.88336, 0.379924, -1.93883, 0.959903, 7.01366, -0.855437, 11.4144, 0.670454, -4.61799, -4.6121, -3.97604, -0.844494, -3.73968, -2.47861, 0.0437235, 0.0436678, -11.4385, 3.78026, -8.49333}, {0.45204, 1.14357, 1.14211, -0.759405, 0.424983, -1.91868, -2.45728, -1.10819, -1.10678, -8.29393, 1.38107, -5.65007, 0.379924, -1.93883, 0.959903, 3.97604, 0.844494, 3.73968, 2.47861, -0.0437235, -0.0436678, -5.7842, -5.41876, -8.30811, 0.559007, -1.65621, 7.71841, 9.44919, 6.3716, 3.46721}, {-2.4085, -2.4085, 2.4085, 1.63676, -1.63676, 1.63676, -0.802834, -0.802834, -0.802834, -1.63676, 1.63676, -0.0310931, -9.56255, 7.57784, -7.57784, -1.03079, 3.01551, -1.03079, 3.21134, 3.21134, 5.19605, 7.57784, -9.56255, 1.15516, 3.73035e-14, 3.64153e-14, -1.98471, 3.01551, -1.03079, 1.03079}, {0.802834, 0.802834, -0.802834, -4.91028, 4.91028, -4.91028, -0.802834, -0.802834, -0.802834, -1.63676, 1.63676, -0.0310931, -6.22684, -2.18055, 2.18055, 2.18055, 6.22684, 2.18055, -3.77476e-14, -3.68594e-14, 1.98471, 1.03079, -3.01551, 1.03079, 6.54704, -6.54704, -1.86034, 3.01551, -1.03079, 1.03079}, {0.802834, 0.802834, -0.802834, 1.63676, -1.63676, 1.63676, 2.4085, 2.4085, 2.4085, -1.63676, 1.63676, -0.0310931, -3.01551, 1.03079, -1.03079, -7.57784, 9.56255, -7.57784, -3.21134, -3.21134, 5.19605, 1.03079, -3.01551, 1.03079, 3.73035e-14, 3.64153e-14, -1.98471, 9.56255, -7.57784, 1.15516}, {0.802834, 0.802834, -0.802834, 1.63676, -1.63676, 1.63676, -0.802834, -0.802834, -0.802834, 4.91028, -4.91028, 0.0932794, -3.01551, 1.03079, -1.03079, -1.03079, 3.01551, -1.03079, -3.68594e-14, -3.68594e-14, 1.98471, -2.18055, -6.22684, 4.24213, -6.54704, 6.54704, -8.53176, 6.22684, 2.18055, 4.24213}, {-2.4085, -2.4085, 2.4085, -2.4396, 0.833927, -0.833927, -1.57573, 1.57573, 1.57573, 3.2125, -3.2125, 0.0610269, 11.7815, -5.35886, 5.35886, 4.96322, -2.97851, -0.916924, 7.25829, -9.24301, -7.25829, -17.8132, 15.8285, 0.672816, -0.955357, 2.94007, 0.955357, -2.02315, 2.02315, -2.02315}, {0.802834, 0.802834, -0.802834, 7.31879, -2.50178, 2.50178, -1.57573, 1.57573, 1.57573, 3.2125, -3.2125, 0.0610269, -1.18819, -5.23448, 5.23448, 11.2662, -9.28144, -7.21986, 0.955357, -2.94007, -0.955357, -4.96322, 2.97851, 0.916924, -13.8053, 15.7901, 0.71125, -2.02315, 2.02315, -2.02315}, {0.802834, 0.802834, -0.802834, -2.4396, 0.833927, -0.833927, 4.7272, -4.7272, -4.7272, 3.2125, -3.2125, 0.0610269, 2.02315, -2.02315, 2.02315, 14.7216, -6.31421, 2.41878, -2.25598, -6.15141, 2.25598, -4.96322, 2.97851, 0.916924, -0.955357, 2.94007, 0.955357, -14.8731, 14.8731, -2.26726}, {0.802834, 0.802834, -0.802834, -2.4396, 0.833927, -0.833927, -1.57573, 1.57573, 1.57573, -9.63749, 9.63749, -0.183081, 2.02315, -2.02315, 2.02315, 4.96322, -2.97851, -0.916924, 0.955357, -2.94007, -0.955357, -8.17456, -0.232831, 4.12826, 8.80302, -0.395637, 4.29107, 4.27979, -4.27979, -8.32609}, {-8.88178e-16, 0, 4.817, 3.64699, 0.373467, -0.373467, -1.78885, -1.78885, 1.78885, -1.85814, 1.41539, 0.190281, -19.0959, -1.9555, 3.94022, -2.29678, 1.74951, -1.74951, 9.36656, 9.36656, -7.38185, 9.72932, -7.41106, 0.988391, -2.21115, -2.21115, 0.226431, 4.50793, 0.461631, -2.44635}, {2.22045e-16, -4.44089e-16, -1.60567, -10.941, -1.1204, 1.1204, -1.78885, -1.78885, 1.78885, -1.85814, 1.41539, 0.190281, -4.50793, -0.461631, 8.86902, 4.85864, 8.90493, -8.90493, 2.21115, 2.21115, -0.226431, 2.29678, -1.74951, 1.74951, 5.2214, -7.87269, -0.534693, 4.50793, 0.461631, -2.44635}, {0, -4.44089e-16, -1.60567, 3.64699, 0.373467, -0.373467, 5.36656, 5.36656, -5.36656, -1.85814, 1.41539, 0.190281, -4.50793, -0.461631, 2.44635, -16.8847, 0.255645, -0.255645, 2.21115, 2.21115, 6.19624, 2.29678, -1.74951, 1.74951, -2.21115, -2.21115, 0.226431, 11.9405, -5.19992, -3.20747}, {-2.22045e-16, 0, -1.60567, 3.64699, 0.373467, -0.373467, -1.78885, -1.78885, 1.78885, 5.57441, -4.24616, -0.570843, -4.50793, -0.461631, 2.44635, -2.29678, 1.74951, -1.74951, 2.21115, 2.21115, -0.226431, 2.29678, -1.74951, 8.17219, -16.7991, -3.70501, 1.7203, 11.6633, 7.61705, -9.60176}, {5.57441, -4.24616, 4.24616, -1.78885, -1.78885, 1.78885, 0, 3.15147, 0, 3.64699, -2.778, -0.373467, 11.6633, 7.61705, -7.61705, 2.21115, -1.68428, -2.21115, 2.29678, -18.2508, 1.74951, -16.7991, 12.7963, 3.70501, -2.29678, 5.64494, -1.74951, -4.50793, -0.461631, 0.461631}, {-1.85814, 1.41539, -1.41539, 5.36656, 5.36656, -5.36656, -2.85327e-15, 3.15147, 2.92187e-16, 3.64699, -2.778, -0.373467, 11.9405, -5.19992, 5.19992, 2.21115, -14.2902, -2.21115, 2.29678, -5.64494, 1.74951, -2.21115, 1.68428, 2.21115, -16.8847, 16.7569, -0.255645, -4.50793, -0.461631, 0.461631}, {-1.85814, 1.41539, -1.41539, -1.78885, -1.78885, 1.78885, 0, -9.45441, 0, 3.64699, -2.778, -0.373467, 4.50793, 0.461631, -0.461631, 9.36656, 5.47113, -9.36656, 9.72932, -11.3065, 7.41106, -2.21115, 1.68428, 2.21115, -2.29678, 5.64494, -1.74951, -19.0959, 10.6504, 1.9555}, {-1.85814, 1.41539, -1.41539, -1.78885, -1.78885, 1.78885, 0, 3.15147, 0, -10.941, 8.334, 1.1204, 4.50793, 0.461631, -0.461631, 2.21115, -1.68428, -2.21115, 2.29678, -5.64494, 1.74951, 5.2214, -3.97726, 7.87269, 4.85864, 12.8004, -8.90493, -4.50793, -13.0675, 0.461631}, {5.61089, -1.12882, 1.12882, -0.730647, 0.497098, 1.84603, 0.431092, 1.08918, -1.08918, 2.16985, -1.96255, -0.380575, 6.13753, -3.06794, -9.20083, 0.370271, -1.96075, -0.935513, 0.0545869, -6.16812, 6.16812, -9.04968, 9.81095, 2.45781, -1.77895, 1.8114, -1.8114, -3.21494, 1.07954, 1.81672}, {-1.8703, 0.376272, -0.376272, 2.19194, -1.49129, -5.53808, 0.431092, 1.08918, -1.08918, 2.16985, -1.96255, -0.380575, 10.6961, -2.58463, -0.311631, -1.3541, -6.31747, 3.42121, 1.77895, -1.8114, 1.8114, -0.370271, 1.96075, 0.935513, -10.4584, 9.6616, -0.289101, -3.21494, 1.07954, 1.81672}, {-1.8703, 0.376272, -0.376272, -0.730647, 0.497098, 1.84603, -1.29328, -3.26754, 3.26754, 2.16985, -1.96255, -0.380575, 3.21494, -1.07954, -1.81672, 3.29286, -3.94914, -8.31962, 9.26014, -3.31649, 3.31649, -0.370271, 1.96075, 0.935513, -1.77895, 1.8114, -1.8114, -11.8943, 8.92975, 3.33902}, {-1.8703, 0.376272, -0.376272, -0.730647, 0.497098, 1.84603, 0.431092, 1.08918, -1.08918, -6.50955, 5.88765, 1.14172, 3.21494, -1.07954, -1.81672, 0.370271, -1.96075, -0.935513, 1.77895, -1.8114, 1.8114, 7.11091, 0.455662, 2.4406, 1.14364, -0.176994, -9.19551, -4.93931, -3.27718, 6.17344}, {-3.9353, -0.877932, 3.73093, -2.19842e-16, -0.163745, 1.71788, -5.85173e-16, -1.31534, -0.704307, -1.31177, 1.18644, 0.230073, -1.62143, 0.495654, -7.45769, 9.95053e-16, 1.82825, -1.25284, -1.62143, 6.52549, 5.22503, 5.24706, -6.57403, 0.33255, 1.62143, -1.26412, -2.4078, 1.62143, 0.159328, 0.586185}, {1.31177, 0.292644, -1.24364, 2.59599e-16, 0.491236, -5.15363, 4.85681e-16, -1.31534, -0.704307, -1.31177, 1.18644, 0.230073, -6.86849, -1.3299, 4.38839, -2.4361e-15, 7.08962, 1.56438, -1.62143, 1.26412, 2.4078, 1.67724e-16, -1.82825, 1.25284, 6.86849, -6.0099, -3.32809, 1.62143, 0.159328, 0.586185}, {1.31177, 0.292644, -1.24364, 0, -0.163745, 1.71788, 0, 3.94603, 2.11292, -1.31177, 1.18644, 0.230073, -1.62143, -0.159328, -0.586185, 0, 2.48323, -8.12435, -6.86849, 0.0935482, 7.38238, -3.2565e-16, -1.82825, 1.25284, 1.62143, -1.26412, -2.4078, 6.86849, -4.58645, -0.334108}, {1.31177, 0.292644, -1.24364, -2.66619e-17, -0.163745, 1.71788, -2.14171e-16, -1.31534, -0.704307, 3.9353, -3.55933, -0.690219, -1.62143, -0.159328, -0.586185, 2.97685e-16, 1.82825, -1.25284, -1.62143, 1.26412, 2.4078, -5.24706, -2.99883, 6.22742, 1.62143, -0.609143, -9.27931, 1.62143, 5.4207, 3.40341}, {6.05767, -1.43278, 5.23226e-12, 0, 1.38248, 0, 0.572575, -0.389553, -1.44665, 1.44665, -1.47052, 1.44665, 2.4959, -7.82907, 2.15583e-12, -0.707741, -1.22732, 1.78815, -0.502145, 1.44939, 7.57474, -5.07885, 7.10939, -7.57474, -1.78815, 0.108825, -1.78815, -2.4959, 2.29917, -2.15583e-12}, {-2.01922, 0.477594, -1.74416e-12, -5.05799e-15, -4.14743, -2.97897e-15, 0.572575, -0.389553, -1.44665, 1.44665, -1.47052, 1.44665, 10.5728, -4.20955, 9.13225e-12, -2.99804, 0.330893, 7.57474, 1.78815, -0.108825, 1.78815, 0.707741, 1.22732, -1.78815, -7.57474, 5.99089, -7.57474, -2.4959, 2.29917, -2.15472e-12}, {-2.01922, 0.477594, -1.74438e-12, 1.98598e-15, 1.38248, 1.98598e-15, -1.71772, 1.16866, 4.33994, 1.44665, -1.47052, 1.44665, 2.4959, -2.29917, 2.15383e-12, -0.707741, -6.75722, 1.78815, 9.86504, -2.0192, 1.78815, 0.707741, 1.22732, -1.78815, -1.78815, 0.108825, -1.78815, -8.28248, 8.18124, -5.78659}, {-2.01922, 0.477594, -1.74438e-12, 0, 1.38248, 0, 0.572575, -0.389553, -1.44665, -4.33994, 4.41155, -4.33994, 2.4959, -2.29917, 2.15628e-12, -0.707741, -1.22732, 1.78815, 1.78815, -0.108825, 1.78815, 8.78463, -0.683057, -1.78815, -1.78815, -5.42108, -1.78815, -4.7862, 3.85739, 5.78659}, {-1.77636e-15, -0.577407, 6.05767, 1.31177, 0.0490665, 1.31177, 7.62271e-16, -1.57494, 2.01922, -1.31177, 1.33341, -1.31177, -6.86849, -0.49482, -4.3726, -1.62143, 1.88609, -4.11733, -4.66294e-15, 8.00861, -8.07689, 6.86849, -7.21973, 9.36439, 1.55431e-15, -1.70883, 1.11022e-15, 1.62143, 0.298554, -0.874465}, {-2.22045e-16, 0.192469, -2.01922, -3.9353, -0.147199, -3.9353, 5.0818e-16, -1.57494, 2.01922, -1.31177, 1.33341, -1.31177, -1.62143, -1.06843, 8.95135, -1.62143, 8.18587, -12.1942, -2.22045e-16, 1.70883, 1.11022e-15, 1.62143, -1.88609, 4.11733, 5.24706, -7.04247, 5.24706, 1.62143, 0.298554, -0.874465}, {0, 0.192469, -2.01922, 1.31177, 0.0490665, 1.31177, 7.62271e-16, 4.72483, -6.05767, -1.31177, 1.33341, -1.31177, -1.62143, -0.298554, 0.874465, -6.86849, 1.68982, -9.36439, 0, 0.938958, 8.07689, 1.62143, -1.88609, 4.11733, -4.44089e-16, -1.70883, -4.44089e-16, 6.86849, -5.03508, 4.3726}, {-2.22045e-16, 0.192469, -2.01922, 1.31177, 0.0490665, 1.31177, 1.52454e-15, -1.57494, 2.01922, 3.9353, -4.00023, 3.9353, -1.62143, -0.298554, 0.874465, -1.62143, 1.88609, -4.11733, -1.55431e-15, 1.70883, -1.33227e-15, 1.62143, -2.65597, 12.1942, -5.24706, -1.9051, -5.24706, 1.62143, 6.59833, -8.95135}, {5.62183, 1.10117, 1.0932, -0.543248, 1.37255, -0.969804, 0.418614, -1.05765, -1.05825, 1.99858, 0.0521603, 2.39245, 5.16081, -6.73306, 5.52839, 0.154056, -0.389233, 2.50681, 0.12443, 5.99166, 5.99148, -8.14837, 0.180592, -12.0766, -1.79889, -1.76104, -1.75849, -2.98781, 1.24286, -1.64917}, {-1.87394, -0.367057, -0.364401, 1.62974, -4.11765, 2.90941, 0.418614, -1.05765, -1.05825, 1.99858, 0.0521603, 2.39245, 10.4836, 0.225367, 3.10677, -1.5204, 3.84139, 6.7398, 1.79889, 1.76104, 1.75849, -0.154056, 0.389233, -2.50681, -9.79319, -1.96968, -11.3283, -2.98781, 1.24286, -1.64917}, {-1.87394, -0.367057, -0.364401, -0.543248, 1.37255, -0.969804, -1.25584, 3.17296, 3.17474, 1.99858, 0.0521603, 2.39245, 2.98781, -1.24286, 1.64917, 2.32705, -5.87944, 6.38603, 9.29466, 3.22927, 3.2161, -0.154056, 0.389233, -2.50681, -1.79889, -1.76104, -1.75849, -10.9821, 1.03422, -11.219}, {-1.87394, -0.367057, -0.364401, -0.543248, 1.37255, -0.969804, 0.418614, -1.05765, -1.05825, -5.99573, -0.156481, -7.17736, 2.98781, -1.24286, 1.64917, 0.154056, -0.389233, 2.50681, 1.79889, 1.76104, 1.75849, 7.34172, 1.85746, -1.04921, 0.374107, -7.25124, 2.12073, -4.66227, 5.47348, 2.58382}, {1.30457, 0.988495, -4.07489, 1.69843, -1.02425, 0.473793, -0.0497917, 1.38543, -0.379098, -1.21378, -0.0316781, -1.45299, -8.35558, 5.77034, -4.15976, -2.03783, -0.446439, -0.117049, 0.798227, -6.84692, 0.306038, 6.89295, 0.573151, 5.92901, -0.59906, 1.3052, 1.21036, 1.56186, -1.67333, 2.26459}, {-0.434858, -0.329498, 1.3583, -5.09529, 3.07276, -1.42138, -0.0497917, 1.38543, -0.379098, -1.21378, -0.0316781, -1.45299, 0.17757, 2.99132, -7.69777, -1.83866, -5.98816, 1.39934, 0.59906, -1.3052, -1.21036, 2.03783, 0.446439, 0.117049, 4.25606, 1.43192, 7.02232, 1.56186, -1.67333, 2.26459}, {-0.434858, -0.329498, 1.3583, 1.69843, -1.02425, 0.473793, 0.149375, -4.15629, 1.1373, -1.21378, -0.0316781, -1.45299, -1.56186, 1.67333, -2.26459, -8.83155, 3.65057, -2.01222, 2.33849, 0.0127912, -6.64354, 2.03783, 0.446439, 0.117049, -0.59906, 1.3052, 1.21036, 6.41699, -1.54662, 8.07655}, {-0.434858, -0.329498, 1.3583, 1.69843, -1.02425, 0.473793, -0.0497917, 1.38543, -0.379098, 3.64134, 0.0950343, 4.35897, -1.56186, 1.67333, -2.26459, -2.03783, -0.446439, -0.117049, 0.59906, -1.3052, -1.21036, 3.77726, 1.76443, -5.31614, -7.39278, 5.40222, -0.684818, 1.76103, -7.21505, 3.78098}, {-3.43097, 1.35687, -3.43142, 0.931473, 0.558277, -1.41184, -0.847096, 2.35716, -0.851503, -1.22803, -2.46315, 1.11954, -6.29089, -2.36411, 5.97866, -0.104296, -3.60368, 2.79764, 3.02181, -11.7832, 3.0447, 5.01642, 13.4563, -7.27579, 0.366568, 2.35455, 0.361307, 2.565, 0.131007, -0.331307}, {1.14366, -0.45229, 1.14381, -2.79442, -1.67483, 4.23552, -0.847096, 2.35716, -0.851503, -1.22803, -2.46315, 1.11954, -7.13962, 1.67815, -4.24392, 3.28409, -13.0323, 6.20366, -0.366568, -2.35455, -0.361307, 0.104296, 3.60368, -2.79764, 5.2787, 12.2071, -4.11684, 2.565, 0.131007, -0.331307}, {1.14366, -0.45229, 1.14381, 0.931473, 0.558277, -1.41184, 2.54129, -7.07148, 2.55451, -1.22803, -2.46315, 1.11954, -2.565, -0.131007, 0.331307, -3.83019, -5.83679, 8.445, -4.94119, -0.545391, -4.93653, 0.104296, 3.60368, -2.79764, 0.366568, 2.35455, 0.361307, 7.47713, 9.9836, -4.80945}, {1.14366, -0.45229, 1.14381, 0.931473, 0.558277, -1.41184, -0.847096, 2.35716, -0.851503, 3.6841, 7.38945, -3.35861, -2.565, -0.131007, 0.331307, -0.104296, -3.60368, 2.79764, -0.366568, -2.35455, -0.361307, -4.47033, 5.41284, -7.37287, -3.35932, 0.121443, 6.00866, 5.95338, -9.29764, 3.0747}, {5.0671, -2.00529, 0.25185, -0.295203, -1.90215, -0.29354, 1.14353, -0.452546, 1.14392, 0.840709, 1.68627, -0.766433, 3.63346, 9.13356, 1.64076, -1.04859, 2.91057, -1.05113, -3.89983, 1.54334, -5.88589, -2.31425, -9.65564, 4.11686, -0.674283, 0.266845, 1.3102, -2.45265, -1.52496, -0.466604}, {-1.68903, 0.668429, -0.0839499, 0.885608, 5.70645, 0.880621, 1.14353, -0.452546, 1.14392, 0.840709, 1.68627, -0.766433, 9.20879, -1.14875, 0.802403, -5.6227, 4.72075, -5.62682, 0.674283, -0.266845, -1.3102, 1.04859, -2.91057, 1.05113, -4.03712, -6.47823, 4.37593, -2.45265, -1.52496, -0.466604}, {-1.68903, 0.668429, -0.0839499, -0.295203, -1.90215, -0.29354, -3.43058, 1.35764, -3.43177, 0.840709, 1.68627, -0.766433, 2.45265, 1.52496, 0.466604, 0.132224, 10.5192, 0.123031, 7.43042, -2.94056, -0.974399, 1.04859, -2.91057, 1.05113, -0.674283, 0.266845, 1.3102, -5.81549, -8.27004, 2.59913}, {-1.68903, 0.668429, -0.0839499, -0.295203, -1.90215, -0.29354, 1.14353, -0.452546, 1.14392, -2.52213, -5.0588, 2.2993, 2.45265, 1.52496, 0.466604, -1.04859, 2.91057, -1.05113, 0.674283, -0.266845, -1.3102, 7.80472, -5.58428, 1.38693, 0.506528, 7.87545, 2.48436, -7.02676, 0.285222, -5.04229}, {-7.02938, 6.21725e-15, 4.44089e-16, -1.54298, 0.610212, -1.54318, 1.7461, 1.33161, 1.74203, -2.54625, -1.94182, -0.198851, 5.18286, -3.19511, 8.08019, -0.25107, -2.40023, -0.245794, -12.0389, -6.97241, -9.12139, 10.4361, 10.1675, 1.0412, 5.05456, 1.64596, 2.15327, 0.989039, 0.754264, -1.90748}, {2.34313, -1.77636e-15, -1.22125e-15, 4.62893, -1.83064, 4.62954, 1.7461, 1.33161, 1.74203, -2.54625, -1.94182, -0.198851, -10.3615, -0.754264, 1.90748, -7.23545, -7.72668, -7.21392, -5.05456, -1.64596, -2.15327, 0.25107, 2.40023, 0.245794, 15.2395, 9.41326, 2.94867, 0.989039, 0.754264, -1.90748}, {2.34313, -2.22045e-16, -1.11022e-16, -1.54298, 0.610212, -1.54318, -5.23829, -3.99484, -5.22609, -2.54625, -1.94182, -0.198851, -0.989039, -0.754264, 1.90748, 5.92083, -4.84108, 5.92693, -14.4271, -1.64596, -2.15327, 0.25107, 2.40023, 0.245794, 5.05456, 1.64596, 2.15327, 11.174, 8.52156, -1.11207}, {2.34313, -1.11022e-15, -3.05311e-16, -1.54298, 0.610212, -1.54318, 1.7461, 1.33161, 1.74203, 7.63874, 5.82547, 0.596554, -0.989039, -0.754264, 1.90748, -0.25107, -2.40023, -0.245794, -5.05456, -1.64596, -2.15327, -9.12143, 2.40023, 0.245794, 11.2265, -0.794885, 8.32599, -5.99534, -4.57219, -8.8756}, {2.66454e-15, 3.55271e-15, -4.817, -1.54262, 0.610485, -1.54315, -0.200328, -1.9397, -0.198633, 1.74295, 1.32921, 0.136117, 8.07725, -3.19654, 6.09533, 2.1544, 1.643, 2.15296, 1.04893, 10.1564, -0.944658, -9.12619, -6.95984, -2.69743, -0.24762, -2.3976, 1.73919, -1.90678, 0.754601, 0.0772744}, {1.55431e-15, 8.88178e-16, 1.60567, 4.62785, -1.83146, 4.62946, -0.200328, -1.9397, -0.198633, 1.74295, 1.32921, 0.136117, 1.90678, -0.754601, -6.49995, 2.95571, 9.40178, 2.9475, 0.24762, 2.3976, -1.73919, -2.1544, -1.643, -2.15296, -7.21941, -7.71444, 1.19472, -1.90678, 0.754601, 0.0772744}, {2.22045e-16, 2.22045e-16, 1.60567, -1.54262, 0.610485, -1.54315, 0.600985, 5.81909, 0.5959, 1.74295, 1.32921, 0.136117, 1.90678, -0.754601, -0.0772744, 8.32487, -0.798945, 8.32557, 0.24762, 2.3976, -8.16186, -2.1544, -1.643, -2.15296, -0.24762, -2.3976, 1.73919, -8.87857, -4.56224, -0.467193}, {-1.33227e-15, -8.88178e-16, 1.60567, -1.54262, 0.610485, -1.54315, -0.200328, -1.9397, -0.198633, -5.22884, -3.98763, -0.408351, 1.90678, -0.754601, -0.0772744, 2.1544, 1.643, 2.15296, 0.24762, 2.3976, -1.73919, -2.1544, -1.643, -8.57564, 5.92285, -4.83954, 7.9118, -1.10547, 8.51339, 0.871807}, {5.74294, 0.795668, -0.78877, 0.30138, -0.761926, 0.76354, -0.6496, 1.64227, 0.697377, 2.26253, -0.61512, -1.72384, 0.788176, 4.31733, -4.32294, 0.430423, -1.08816, -1.80579, 5.76757, -8.2712, -3.9765, -9.48055, 3.54864, 8.70115, -3.16917, 1.70212, 1.187, -1.9937, -1.26962, 1.26878}, {-1.91431, -0.265223, 0.262923, -0.904139, 2.28578, -2.29062, -0.6496, 1.64227, 0.697377, 2.26253, -0.61512, -1.72384, 9.65095, 2.33052, -2.32047, 3.02882, -7.65724, -4.5953, 3.16917, -1.70212, -1.187, -0.430423, 1.08816, 1.80579, -12.2193, 4.1626, 8.08236, -1.9937, -1.26962, 1.26878}, {-1.91431, -0.265223, 0.262923, 0.30138, -0.761926, 0.76354, 1.9488, -4.9268, -2.09213, 2.26253, -0.61512, -1.72384, 1.9937, 1.26962, -1.26878, -0.775096, 1.95954, -4.85995, 10.8264, -0.641232, -2.23869, -0.430423, 1.08816, 1.80579, -3.16917, 1.70212, 1.187, -11.0438, 1.19086, 8.16414}, {-1.91431, -0.265223, 0.262923, 0.30138, -0.761926, 0.76354, -0.6496, 1.64227, 0.697377, -6.7876, 1.84536, 5.17152, 1.9937, 1.26962, -1.26878, 0.430423, -1.08816, -1.80579, 3.16917, -1.70212, -1.187, 7.22683, 2.14905, 0.7541, -4.37469, 4.74982, -1.86717, 0.604703, -7.8387, -1.52073}, {8.88178e-16, 6.00487, 0.829413, -3.96116e-16, 2.00162, -0.810615, 1.31177, 1.30033, 0.316508, -1.31177, -1.30033, 0.770578, 2.44249e-15, -8.00649, 4.58617, -1.62143, -4.08144, 0.61075, -6.86849, -4.33448, -1.31552, 6.86849, 9.28277, -3.69306, 1.62143, -0.866843, 0.0494889, -8.88178e-16, -6.66134e-16, -1.34371}, {4.44089e-16, -2.00162, -0.276471, -2.97087e-15, -6.00487, 2.43185, 1.31177, 1.30033, 0.316508, -1.31177, -1.30033, 0.770578, -2.66454e-15, 8.00649, 2.4496, -6.86849, -9.28277, -0.655284, -1.62143, 0.866843, -0.0494889, 1.62143, 4.08144, -0.61075, 6.86849, 4.33448, -3.03282, 1.55431e-15, 1.33227e-15, -1.34371}, {-2.22045e-16, -2.00162, -0.276471, 1.38641e-15, 2.00162, -0.810615, -3.9353, -3.901, -0.949525, -1.31177, -1.30033, 0.770578, -1.33227e-15, -1.11022e-15, 1.34371, -1.62143, -12.0879, 3.85321, -1.62143, 8.87333, 1.0564, 1.62143, 4.08144, -0.61075, 1.62143, -0.866843, 0.0494889, 5.24706, 5.20133, -4.42602}, {-6.66134e-16, -2.00162, -0.276471, -1.18835e-15, 2.00162, -0.810615, 1.31177, 1.30033, 0.316508, 3.9353, 3.901, -2.31173, 2.22045e-15, 2.66454e-15, 1.34371, -1.62143, -4.08144, 0.61075, -1.62143, 0.866843, -0.0494889, 1.62143, 12.0879, 0.495134, 1.62143, -8.87333, 3.29195, -5.24706, -5.20133, -2.60975}, {-1.70622, 4.31352, 1.8317, 8.44721e-17, 1.1641e-15, 1.08709, -2.01922, 1.65815e-12, 0.375548, 1.45048, 1.43784, -0.852066, -0.702999, 1.77727, -4.93735, 2.4959, -2.05102e-12, -1.80792, 9.86978, 1.77727, -1.21169, -8.29783, -5.75136, 5.21618, -1.7929, -1.77727, -0.290501, 0.702999, -1.77727, 0.589009}, {0.568738, -1.43784, -0.610568, -2.80914e-15, -1.1641e-15, -3.26126, -2.01922, 1.65896e-12, 0.375548, 1.45048, 1.43784, -0.852066, -2.97795, 7.52863, 1.85326, 10.5728, -8.68691e-12, -3.31011, 1.7929, 1.77727, 0.290501, -2.4959, 2.05143e-12, 1.80792, -7.59483, -7.52863, 3.11776, 0.702999, -1.77727, 0.589009}, {0.568738, -1.43784, -0.610568, 0, 0, 1.08709, 6.05767, -4.97324e-12, -1.12664, 1.45048, 1.43784, -0.852066, -0.702999, 1.77727, -0.589009, 2.4959, -2.04909e-12, -6.15626, -0.482057, 7.52863, 2.73277, -2.4959, 2.04944e-12, 1.80792, -1.7929, -1.77727, -0.290501, -5.09894, -7.52863, 3.99727}, {0.568738, -1.43784, -0.610568, 0, 0, 1.08709, -2.01922, 1.6563e-12, 0.375548, -4.35145, -4.31352, 2.5562, -0.702999, 1.77727, -0.589009, 2.4959, -2.04731e-12, -1.80792, 1.7929, 1.77727, 0.290501, -4.77085, 5.75136, 4.25019, -1.7929, -1.77727, -4.63885, 8.77989, -1.77727, -0.913184}, {1.27077, -1.27077, -5.5547, 1.35703, 0.9861, 0.537103, -0.781872, 0.781872, -0.309461, -0.151563, -2.19156, -2.07921, -6.58189, -5.68687, -5.10097, -0.710928, -2.18533, -0.281381, 4.61752, -4.61752, -0.668306, 1.31718, 10.9516, 8.59822, -1.49003, 1.49003, 1.90615, 1.15379, 1.74247, 2.95256}, {-0.42359, 0.42359, 1.85157, -4.07108, -2.9583, -1.61131, -0.781872, 0.781872, -0.309461, -0.151563, -2.19156, -2.07921, 0.540572, -3.43683, -10.3588, 2.41656, -5.31282, 0.956461, 1.49003, -1.49003, -1.90615, 0.710928, 2.18533, 0.281381, -0.883782, 10.2563, 10.223, 1.15379, 1.74247, 2.95256}, {-0.42359, 0.42359, 1.85157, 1.35703, 0.9861, 0.537103, 2.34562, -2.34562, 0.928382, -0.151563, -2.19156, -2.07921, -1.15379, -1.74247, -2.95256, -6.13903, -6.12973, -2.42979, 3.18439, -3.18439, -9.31242, 0.710928, 2.18533, 0.281381, -1.49003, 1.49003, 1.90615, 1.76004, 10.5087, 11.2694}, {-0.42359, 0.42359, 1.85157, 1.35703, 0.9861, 0.537103, -0.781872, 0.781872, -0.309461, 0.454689, 6.57469, 6.23763, -1.15379, -1.74247, -2.95256, -0.710928, -2.18533, -0.281381, 1.49003, -1.49003, -1.90615, 2.40529, 0.490973, -7.12489, -6.91814, -2.45437, -0.242264, 4.28128, -1.38502, 4.1904}, {2.56157, 0.777047, 3.89096, 1.32901, 0.581011, 0.152782, -0.565397, -1.62691, -0.0938093, 0.0902443, 1.30491, 1.23801, -5.90336, -2.72205, 0.803187, -0.943878, 1.2928, -0.0728941, 4.01589, 8.83876, 2.09436, 0.5829, -6.51244, -4.87916, -1.7543, -2.33113, -1.71912, 0.587321, 0.398009, -1.41431}, {-0.853857, -0.259016, -1.29699, -3.98703, -1.74303, -0.458346, -0.565397, -1.62691, -0.0938093, 0.0902443, 1.30491, 1.23801, 2.82811, 0.638054, 6.60226, 1.31771, 7.80043, 0.302343, 1.7543, 2.33113, 1.71912, 0.943878, -1.2928, 0.0728941, -2.11527, -7.55078, -6.67117, 0.587321, 0.398009, -1.41431}, {-0.853857, -0.259016, -1.29699, 1.32901, 0.581011, 0.152782, 1.69619, 4.88072, 0.281428, 0.0902443, 1.30491, 1.23801, -0.587321, -0.398009, 1.41431, -6.25992, -1.03125, -0.684022, 5.16973, 3.36719, 6.90706, 0.943878, -1.2928, 0.0728941, -1.7543, -2.33113, -1.71912, 0.226344, -4.82164, -6.36637}, {-0.853857, -0.259016, -1.29699, 1.32901, 0.581011, 0.152782, -0.565397, -1.62691, -0.0938093, -0.270733, -3.91473, -3.71404, -0.587321, -0.398009, 1.41431, -0.943878, 1.2928, -0.0728941, 1.7543, 2.33113, 1.71912, 4.35931, -0.256736, 5.26084, -7.07034, -4.65518, -2.33025, 2.84891, 6.90564, -1.03908}, {4.07496e-12, -2.19419, -6.05767, 4.84843e-16, 1.35003, -1.83833e-15, -1.44665, -1.05122, -0.572575, 1.44665, -1.0302, -1.44665, 1.67644e-12, -7.97291, -2.4959, 1.78815, -0.369344, 0.707741, 7.57474, 4.60023, 0.502145, -7.57474, 4.49015, 5.07885, -1.78815, -0.395328, 1.78815, -1.67844e-12, 2.57279, 2.4959}, {-1.3598e-12, 0.731398, 2.01922, -2.90906e-15, -4.05009, 4.93928e-15, -1.44665, -1.05122, -0.572575, 1.44665, -1.0302, -1.44665, 7.11964e-12, -5.49838, -10.5728, 7.57474, 3.83556, 2.99804, 1.78815, 0.395328, -1.78815, -1.78815, 0.369344, -0.707741, -7.57474, 3.72548, 7.57474, -1.67977e-12, 2.57279, 2.4959}, {-1.36091e-12, 0.731398, 2.01922, 0, 1.35003, 0, 4.33994, 3.15367, 1.71772, 1.44665, -1.0302, -1.44665, 1.68221e-12, -2.57279, -2.4959, 1.78815, -5.76946, 0.707741, 1.78815, -2.53026, -9.86504, -1.78815, 0.369344, -0.707741, -1.78815, -0.395328, 1.78815, -5.78659, 6.6936, 8.28248}, {-1.36047e-12, 0.731398, 2.01922, -4.84843e-16, 1.35003, 4.84843e-16, -1.44665, -1.05122, -0.572575, -4.33994, 3.09061, 4.33994, 1.68221e-12, -2.57279, -2.4959, 1.78815, -0.369344, 0.707741, 1.78815, 0.395328, -1.78815, -1.78815, -2.55625, -8.78463, -1.78815, -5.79545, 1.78815, 5.78659, 6.77769, 4.7862}, {5.43308, 2.37521, 0.624583, 1.07522, 0.584331, -1.07522, 1.83687, -0.576694, 0.182353, -1.10106, 0.784101, 1.10106, -3.39138, -2.08096, 5.88727, -3.59954, -0.00943971, 1.10365, -7.37942, 3.99825, -0.697471, 8.00379, -3.12696, -5.50789, 0.0319413, -1.69148, -0.0319413, -0.909507, -0.256369, -1.58639}, {-1.81103, -0.791738, -0.208194, -3.22566, -1.75299, 3.22566, 1.83687, -0.576694, 0.182353, -1.10106, 0.784101, 1.10106, 8.15362, 3.42332, 2.41917, -10.947, 2.29734, 0.374233, -0.0319413, 1.69148, 0.0319413, 3.59954, 0.00943971, -1.10365, 4.43619, -4.82788, -4.43619, -0.909507, -0.256369, -1.58639}, {-1.81103, -0.791738, -0.208194, 1.07522, 0.584331, -1.07522, -5.51061, 1.73008, -0.547059, -1.10106, 0.784101, 1.10106, 0.909507, 0.256369, 1.58639, -7.90043, -2.34676, 5.40453, 7.21217, 4.85843, 0.864718, 3.59954, 0.00943971, -1.10365, 0.0319413, -1.69148, -0.0319413, 3.49474, -3.39277, -5.99064}, {-1.81103, -0.791738, -0.208194, 1.07522, 0.584331, -1.07522, 1.83687, -0.576694, 0.182353, 3.30319, -2.3523, -3.30319, 0.909507, 0.256369, 1.58639, -3.59954, -0.00943971, 1.10365, -0.0319413, 1.69148, 0.0319413, 10.8437, 3.17639, -0.270869, -4.26894, -4.0288, 4.26894, -8.25698, 2.05041, -2.3158}, {1.1204, -1.1204, 10.941, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, 0.190281, 1.41539, 1.85814, -8.90493, 8.90493, -4.85864, -0.226431, 2.21115, -2.21115, 8.86902, -0.461631, 4.50793, -0.534693, -7.87269, -5.2214, -2.44635, 0.461631, -4.50793, 1.74951, -1.74951, -2.29678}, {-0.373467, 0.373467, -3.64699, -5.36656, 5.36656, -5.36656, -1.60567, 0, 0, 0.190281, 1.41539, 1.85814, -0.255645, 0.255645, 16.8847, 6.19624, 2.21115, -2.21115, 2.44635, -0.461631, 4.50793, 0.226431, -2.21115, 2.21115, -3.20747, -5.19992, -11.9405, 1.74951, -1.74951, -2.29678}, {-0.373467, 0.373467, -3.64699, 1.78885, -1.78885, 1.78885, 4.817, 0, 0, 0.190281, 1.41539, 1.85814, -1.74951, 1.74951, 2.29678, -7.38185, 9.36656, -9.36656, 3.94022, -1.9555, 19.0959, 0.226431, -2.21115, 2.21115, -2.44635, 0.461631, -4.50793, 0.988391, -7.41106, -9.72932}, {-0.373467, 0.373467, -3.64699, 1.78885, -1.78885, 1.78885, -1.60567, 0, 0, -0.570843, -4.24616, -5.57441, -1.74951, 1.74951, 2.29678, -0.226431, 2.21115, -2.21115, 2.44635, -0.461631, 4.50793, 1.7203, -3.70501, 16.7991, -9.60176, 7.61705, -11.6633, 8.17219, -1.74951, -2.29678}, {4.24616, -4.24616, -5.57441, 1.78885, -1.78885, 1.78885, 2.92187e-16, 3.15147, 2.85327e-15, -0.373467, -2.778, -3.64699, -7.61705, 7.61705, -11.6633, -2.21115, -1.68428, -2.21115, 1.74951, -18.2508, -2.29678, 3.70501, 12.7963, 16.7991, -1.74951, 5.64494, 2.29678, 0.461631, -0.461631, 4.50793}, {-1.41539, 1.41539, 1.85814, -5.36656, 5.36656, -5.36656, -5.84374e-16, 3.15147, -5.70654e-15, -0.373467, -2.778, -3.64699, 5.19992, -5.19992, -11.9405, -2.21115, -14.2902, -2.21115, 1.74951, -5.64494, -2.29678, 2.21115, 1.68428, 2.21115, -0.255645, 16.7569, 16.8847, 0.461631, -0.461631, 4.50793}, {-1.41539, 1.41539, 1.85814, 1.78885, -1.78885, 1.78885, 0, -9.45441, 0, -0.373467, -2.778, -3.64699, -0.461631, 0.461631, -4.50793, -9.36656, 5.47113, -9.36656, 7.41106, -11.3065, -9.72932, 2.21115, 1.68428, 2.21115, -1.74951, 5.64494, 2.29678, 1.9555, 10.6504, 19.0959}, {-1.41539, 1.41539, 1.85814, 1.78885, -1.78885, 1.78885, -2.92187e-16, 3.15147, -2.85327e-15, 1.1204, 8.334, 10.941, -0.461631, 0.461631, -4.50793, -2.21115, -1.68428, -2.21115, 1.74951, -5.64494, -2.29678, 7.87269, -3.97726, -5.2214, -8.90493, 12.8004, -4.85864, 0.461631, -13.0675, 4.50793}, {-4.91028, 4.91028, 4.91028, -0.802834, -0.802834, 0.802834, -0.802834, 0.802834, -0.802834, -0.0310931, 1.63676, 1.63676, 2.18055, 6.22684, -2.18055, 1.98471, -5.77316e-15, 5.88418e-15, 2.18055, -2.18055, 6.22684, -1.86034, -6.54704, -6.54704, 1.03079, -1.03079, -3.01551, 1.03079, -3.01551, -1.03079}, {1.63676, -1.63676, -1.63676, 2.4085, 2.4085, -2.4085, -0.802834, 0.802834, -0.802834, -0.0310931, 1.63676, 1.63676, -7.57784, 9.56255, 7.57784, 5.19605, -3.21134, 3.21134, -1.03079, 1.03079, 3.01551, -1.98471, 6.51256e-15, -5.03376e-15, 1.15516, -7.57784, -9.56255, 1.03079, -3.01551, -1.03079}, {1.63676, -1.63676, -1.63676, -0.802834, -0.802834, 0.802834, 2.4085, -2.4085, 2.4085, -0.0310931, 1.63676, 1.63676, -1.03079, 3.01551, 1.03079, 5.19605, 3.21134, -3.21134, -7.57784, 7.57784, 9.56255, -1.98471, 6.51256e-15, -5.58887e-15, 1.03079, -1.03079, -3.01551, 1.15516, -9.56255, -7.57784}, {1.63676, -1.63676, -1.63676, -0.802834, -0.802834, 0.802834, -0.802834, 0.802834, -0.802834, 0.0932794, -4.91028, -4.91028, -1.03079, 3.01551, 1.03079, 1.98471, -5.55112e-15, 5.66214e-15, -1.03079, 1.03079, 3.01551, -8.53176, 6.54704, 6.54704, 4.24213, 2.18055, -6.22684, 4.24213, -6.22684, 2.18055}, {2.4085, -2.4085, 2.4085, -0.833927, 0.833927, 2.4396, 1.57573, 1.57573, 1.57573, 0.0610269, -3.2125, -3.2125, 5.35886, -5.35886, -11.7815, -0.916924, -2.97851, -4.96322, -7.25829, -9.24301, -7.25829, 0.672816, 15.8285, 17.8132, 0.955357, 2.94007, 0.955357, -2.02315, 2.02315, 2.02315}, {-0.802834, 0.802834, -0.802834, 2.50178, -2.50178, -7.31879, 1.57573, 1.57573, 1.57573, 0.0610269, -3.2125, -3.2125, 5.23448, -5.23448, 1.18819, -7.21986, -9.28144, -11.2662, -0.955357, -2.94007, -0.955357, 0.916924, 2.97851, 4.96322, 0.71125, 15.7901, 13.8053, -2.02315, 2.02315, 2.02315}, {-0.802834, 0.802834, -0.802834, -0.833927, 0.833927, 2.4396, -4.7272, -4.7272, -4.7272, 0.0610269, -3.2125, -3.2125, 2.02315, -2.02315, -2.02315, 2.41878, -6.31421, -14.7216, 2.25598, -6.15141, 2.25598, 0.916924, 2.97851, 4.96322, 0.955357, 2.94007, 0.955357, -2.26726, 14.8731, 14.8731}, {-0.802834, 0.802834, -0.802834, -0.833927, 0.833927, 2.4396, 1.57573, 1.57573, 1.57573, -0.183081, 9.63749, 9.63749, 2.02315, -2.02315, -2.02315, -0.916924, -2.97851, -4.96322, -0.955357, -2.94007, -0.955357, 4.12826, -0.232831, 8.17456, 4.29107, -0.395637, -8.80302, -8.32609, -4.27979, -4.27979}, {4.10689, -1.43706, 2.8235e-12, 0.16503, -0.581747, -1.44665, -0.119439, -0.784236, 1.44665, 1.32337, 0.886963, 9.09785e-13, 0.828026, 2.45397, 7.57474, -0.0563528, 1.68845, -3.88578e-14, 2.31753, 3.51421, -7.57474, -5.23714, -5.2363, -3.60028e-12, -1.83977, -0.377268, 1.78815, -1.48814, -0.126978, -1.78815}, {-1.36896, 0.47902, -9.395e-13, -0.495089, 1.74524, 4.33994, -0.119439, -0.784236, 1.44665, 1.32337, 0.886963, 9.08857e-13, 6.964, -1.7891, 1.78815, 0.421405, 4.82539, -5.78659, 1.83977, 0.377268, -1.78815, 0.0563528, -1.68845, 3.79696e-14, -7.13326, -3.92512, 1.78815, -1.48814, -0.126978, -1.78815}, {-1.36896, 0.47902, -9.39941e-13, 0.16503, -0.581747, -1.44665, 0.358318, 2.35271, -4.33994, 1.32337, 0.886963, 9.07744e-13, 1.48814, 0.126978, 1.78815, -0.716472, 4.01544, 5.78659, 7.31562, -1.53881, -1.78815, 0.0563528, -1.68845, 3.9968e-14, -1.83977, -0.377268, 1.78815, -6.78164, -3.67483, -1.78815}, {-1.36896, 0.47902, -9.38462e-13, 0.16503, -0.581747, -1.44665, -0.119439, -0.784236, 1.44665, -3.97012, -2.66089, -2.72546e-12, 1.48814, 0.126978, 1.78815, -0.0563528, 1.68845, -3.70814e-14, 1.83977, 0.377268, -1.78815, 5.53221, -3.60453, 3.79027e-12, -2.49989, 1.94972, 7.57474, -1.01039, 3.00996, -7.57474}, {-1.71772, 0.961283, -4.33994, 1.44665, 0.27723, -1.44665, 0, 1.39654, 0, -2.01922, -1.35334, -1.38544e-12, -8.28248, -1.05552, 5.78659, -1.78815, -2.06889, 1.78815, -0.707741, -6.9163, -1.78815, 9.86504, 7.48225, -1.78815, 0.707741, 1.33015, 1.78815, 2.4959, -0.0533958, 1.7125e-12}, {0.572575, -0.320428, 1.44665, -4.33994, -0.831689, 4.33994, 7.00055e-16, 1.39654, 4.80579e-28, -2.01922, -1.35334, -1.38617e-12, -4.7862, 1.33511, -5.78659, -1.78815, -7.65505, 1.78815, -0.707741, -1.33015, -1.78815, 1.78815, 2.06889, -1.78815, 8.78463, 6.74351, 1.78815, 2.4959, -0.0533958, 1.7134e-12}, {0.572575, -0.320428, 1.44665, 1.44665, 0.27723, -1.44665, 4.20033e-15, -4.18962, 2.88423e-27, -2.01922, -1.35334, -1.38653e-12, -2.4959, 0.0533958, -1.71421e-12, -7.57474, -3.17781, 7.57474, -2.99804, -0.0484352, -7.57474, 1.78815, 2.06889, -1.78815, 0.707741, 1.33015, 1.78815, 10.5728, 5.35997, 7.25997e-12}, {0.572575, -0.320428, 1.44665, 1.44665, 0.27723, -1.44665, 0, 1.39654, 0, 6.05767, 4.06002, 4.16395e-12, -2.4959, 0.0533958, -1.716e-12, -1.78815, -2.06889, 1.78815, -0.707741, -1.33015, -1.78815, -0.502145, 3.3506, -7.57474, -5.07885, 0.221228, 7.57474, 2.4959, -5.63955, 1.71564e-12}, {-4.35597, 0.237767, -4.31288, 0, -1.20934, 0, 0.57469, 0.297534, -1.45022, -2.02668, 0.991065, 0.0125895, -1.79476, 6.43017, -1.77701, -0.710355, 1.12706, 1.79257, -4.80387, -1.45994, 5.81643, 8.81707, -5.09132, -1.84292, 2.50511, 0.269807, -0.0155615, 1.79476, -1.5928, 1.77701}, {1.45199, -0.0792556, 1.43763, 0, 3.62803, 0, 0.57469, 0.297534, -1.45022, -2.02668, 0.991065, 0.0125895, -7.60272, 1.90982, -7.52752, -3.00911, -0.0630793, 7.59343, -2.50511, -0.269807, 0.0155615, 0.710355, -1.12706, -1.79257, 10.6118, -3.69445, -0.0659197, 1.79476, -1.5928, 1.77701}, {1.45199, -0.0792556, 1.43763, 0, -1.20934, 0, -1.72407, -0.892603, 4.35065, -2.02668, 0.991065, 0.0125895, -1.79476, 1.5928, -1.77701, -0.710355, 5.96443, 1.79257, -8.31307, 0.047215, -5.73495, 0.710355, -1.12706, -1.79257, 2.50511, 0.269807, -0.0155615, 9.90148, -5.55705, 1.72665}, {1.45199, -0.0792556, 1.43763, 0, -1.20934, 0, 0.57469, 0.297534, -1.45022, 6.08004, -2.97319, -0.0377686, -1.79476, 1.5928, -1.77701, -0.710355, 1.12706, 1.79257, -2.50511, -0.269807, 0.0155615, -5.09761, -0.810036, -7.54308, 2.50511, 5.10718, -0.0155615, -0.504, -2.78293, 7.57787}, {-1.3922, -1.05489, 4.34859, -1.6823, -0.386683, 0.0104503, -0.635567, 0.941579, 1.4506, 1.8538, -0.906526, -0.0115156, 8.23503, 1.59006, 1.737, 2.86504, -0.685889, -1.80595, 2.75426, -5.36481, -5.8037, -10.2803, 4.31199, 1.85201, -0.211987, 1.59849, 0.00131684, -1.50582, -0.0433277, -1.7788}, {0.464066, 0.35163, -1.44953, 5.0469, 1.16005, -0.0313509, -0.635567, 0.941579, 1.4506, 1.8538, -0.906526, -0.0115156, -0.350444, -1.36319, 7.57692, 5.40731, -4.4522, -7.60833, 0.211987, -1.59849, -0.00131684, -2.86504, 0.685889, 1.80595, -7.6272, 5.2246, 0.0473794, -1.50582, -0.0433277, -1.7788}, {0.464066, 0.35163, -1.44953, -1.6823, -0.386683, 0.0104503, 1.9067, -2.82474, -4.35179, 1.8538, -0.906526, -0.0115156, 1.50582, 0.0433277, 1.7788, 9.59425, 0.860843, -1.84775, -1.64428, -3.00501, 5.7968, -2.86504, 0.685889, 1.80595, -0.211987, 1.59849, 0.00131684, -8.92103, 3.58278, -1.73274}, {0.464066, 0.35163, -1.44953, -1.6823, -0.386683, 0.0104503, -0.635567, 0.941579, 1.4506, -5.56141, 2.71958, 0.0345469, 1.50582, 0.0433277, 1.7788, 2.86504, -0.685889, -1.80595, 0.211987, -1.59849, -0.00131684, -4.72131, -0.720632, 7.60407, 6.51722, 3.14523, -0.0404844, 1.03645, -3.80964, -7.58118}, {-4.91028, -4.91028, 4.91028, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, -1.63676, -1.63676, 4.78823, -10.2738, 6.2275, 10.2738, 3.77476e-15, -3.10862e-15, 3.89543, 6.2275, -10.2738, 10.2738, 6.54704, 6.54704, -23.0483, 0.0754334, 3.97086, -3.97086, 3.97086, 0.0754334, -3.97086}, {1.63676, 1.63676, -1.63676, -4.7272, 4.7272, 4.7272, -1.57573, 1.57573, -1.57573, -1.63676, -1.63676, 4.78823, -10.5179, -6.62248, 10.5179, 6.30294, -6.30294, 10.1984, -0.0754334, -3.97086, 3.97086, -3.07087e-15, 3.59047e-15, -3.89543, 6.62248, 10.5179, -23.1238, 3.97086, 0.0754334, -3.97086}, {1.63676, 1.63676, -1.63676, 1.57573, -1.57573, -1.57573, 4.7272, -4.7272, 4.7272, -1.63676, -1.63676, 4.78823, -3.97086, -0.0754334, 3.97086, -6.30294, 6.30294, 10.1984, -6.62248, -10.5179, 10.5179, -1.51655e-15, 1.81411e-15, -3.89543, 0.0754334, 3.97086, -3.97086, 10.5179, 6.62248, -23.1238}, {1.63676, 1.63676, -1.63676, 1.57573, -1.57573, -1.57573, -1.57573, 1.57573, -1.57573, 4.91028, 4.91028, -14.3647, -3.97086, -0.0754334, 3.97086, 3.10862e-15, -2.44249e-15, 3.89543, -0.0754334, -3.97086, 3.97086, -6.54704, -6.54704, 2.65162, -6.2275, 10.2738, 2.33207, 10.2738, -6.2275, 2.33207}, {-1.37636, -1.37636, -5.42796, -2.30348, 0.847989, 0.553233, 1.22922, -1.92224, -0.562043, 0.615468, 0.615468, -1.80051, 11.4941, -5.00722, -5.1332, 1.32785, 1.32785, 0.0108901, -7.00339, 9.49791, 0.706454, -3.78972, -3.78972, 7.19114, 2.0865, -1.80893, 1.54172, -2.28016, 1.61526, 2.92027}, {0.458787, 0.458787, 1.80932, 6.91044, -2.54397, -1.6597, 1.22922, -1.92224, -0.562043, 0.615468, 0.615468, -1.80051, 0.445015, -3.45041, -10.1575, -3.58904, 9.01683, 2.25906, -2.0865, 1.80893, -1.54172, -1.32785, -1.32785, -0.0108901, -0.375375, -4.2708, 8.74375, -2.28016, 1.61526, 2.92027}, {0.458787, 0.458787, 1.80932, -2.30348, 0.847989, 0.553233, -3.68767, 5.76673, 1.68613, 0.615468, 0.615468, -1.80051, 2.28016, -1.61526, -2.92027, 10.5418, -2.0641, -2.20204, -3.92165, -0.0262169, -8.77899, -1.32785, -1.32785, -0.0108901, 2.0865, -1.80893, 1.54172, -4.74204, -0.846607, 10.1223}, {0.458787, 0.458787, 1.80932, -2.30348, 0.847989, 0.553233, 1.22922, -1.92224, -0.562043, -1.8464, -1.8464, 5.40152, 2.28016, -1.61526, -2.92027, 1.32785, 1.32785, 0.0108901, -2.0865, 1.80893, -1.54172, -3.163, -3.163, -7.24816, 11.3004, -5.20089, -0.671213, -7.19706, 9.30424, 5.16845}, {5.36656, -5.36656, -5.36656, 1.41539, 1.85814, -1.41539, 0, 0, -3.15147, 0.373467, -3.64699, 2.778, -5.19992, -11.9405, 5.19992, -1.74951, -2.29678, 5.64494, 2.21115, -2.21115, 14.2902, 0.255645, 16.8847, -16.7569, -2.21115, 2.21115, -1.68428, -0.461631, 4.50793, 0.461631}, {-1.78885, 1.78885, 1.78885, -4.24616, -5.57441, 4.24616, 0, 0, -3.15147, 0.373467, -3.64699, 2.778, 7.61705, -11.6633, -7.61705, -1.74951, -2.29678, 18.2508, 2.21115, -2.21115, 1.68428, 1.74951, 2.29678, -5.64494, -3.70501, 16.7991, -12.7963, -0.461631, 4.50793, 0.461631}, {-1.78885, 1.78885, 1.78885, 1.41539, 1.85814, -1.41539, 0, 0, 9.45441, 0.373467, -3.64699, 2.778, 0.461631, -4.50793, -0.461631, -7.41106, -9.72932, 11.3065, 9.36656, -9.36656, -5.47113, 1.74951, 2.29678, -5.64494, -2.21115, 2.21115, -1.68428, -1.9555, 19.0959, -10.6504}, {-1.78885, 1.78885, 1.78885, 1.41539, 1.85814, -1.41539, 0, 0, -3.15147, -1.1204, 10.941, -8.334, 0.461631, -4.50793, -0.461631, -1.74951, -2.29678, 5.64494, 2.21115, -2.21115, 1.68428, 8.90493, -4.85864, -12.8004, -7.87269, -5.2214, 3.97726, -0.461631, 4.50793, 13.0675}, {5.73547, -8.96906, -2.62245, 0.335815, -3.2793, -0.653542, 1.76841, -1.58918, 1.21052, -0.192397, 1.8788, -1.43113, 0.604796, 13.4752, 2.34148, -2.60096, 6.01778, -0.688458, -6.89635, 4.62559, -7.41885, 3.37055, -13.533, 6.41296, -0.177274, 1.73112, 2.57679, -1.94806, -0.357987, 0.272688}, {-1.91182, 2.98969, 0.874151, -1.00744, 9.83791, 1.96063, 1.76841, -1.58918, 1.21052, -0.192397, 1.8788, -1.43113, 9.59535, -11.6008, -3.76929, -9.67459, 12.3745, -5.53052, 0.177274, -1.73112, -2.57679, 2.60096, -6.01778, 0.688458, 0.592313, -5.78406, 8.30129, -1.94806, -0.357987, 0.272688}, {-1.91182, 2.98969, 0.874151, 0.335815, -3.2793, -0.653542, -5.30522, 4.76754, -3.63155, -0.192397, 1.8788, -1.43113, 1.94806, 0.357987, -0.272688, -3.94422, 19.135, 1.92571, 7.82457, -13.6899, -6.07339, 2.60096, -6.01778, 0.688458, -0.177274, 1.73112, 2.57679, -1.17847, -7.87317, 5.99719}, {-1.91182, 2.98969, 0.874151, 0.335815, -3.2793, -0.653542, 1.76841, -1.58918, 1.21052, 0.57719, -5.63639, 4.29338, 1.94806, 0.357987, -0.272688, -2.60096, 6.01778, -0.688458, 0.177274, -1.73112, -2.57679, 10.2483, -17.9765, -2.80815, -1.52053, 14.8483, 5.19096, -9.02168, 5.99873, -4.56938}, {-0.906892, 2.28653, -2.28852, -1.55284, 0.422175, 1.18312, -0.363916, -0.686733, -0.918335, 1.61446, 1.02673, -1.02763, 7.75714, -1.26844, -7.13784, 2.36925, 0.327011, -0.327296, 1.53183, 4.53788, 3.86554, -8.8271, -4.43394, 4.43781, -0.0761652, -1.79095, -0.192201, -1.54576, -0.420263, 2.40534}, {0.302297, -0.762175, 0.762841, 4.65853, -1.26653, -3.54937, -0.363916, -0.686733, -0.918335, 1.61446, 1.02673, -1.02763, 0.336571, 3.46896, -5.45671, 3.82491, 3.07394, 3.34604, 0.0761652, 1.79095, 0.192201, -2.36925, -0.327011, 0.327296, -6.53402, -5.89788, 3.91832, -1.54576, -0.420263, 2.40534}, {0.302297, -0.762175, 0.762841, -1.55284, 0.422175, 1.18312, 1.09175, 2.0602, 2.75501, 1.61446, 1.02673, -1.02763, 1.54576, 0.420263, -2.40534, 8.58063, -1.36169, -5.05979, -1.13302, 4.83965, -2.85916, -2.36925, -0.327011, 0.327296, -0.0761652, -1.79095, -0.192201, -8.00362, -4.52719, 6.51586}, {0.302297, -0.762175, 0.762841, -1.55284, 0.422175, 1.18312, -0.363916, -0.686733, -0.918335, -4.84339, -3.0802, 3.08289, 1.54576, 0.420263, -2.40534, 2.36925, 0.327011, -0.327296, 0.0761652, 1.79095, 0.192201, -3.57844, 2.72169, -2.72407, 6.13521, -3.47965, -4.9247, -0.0900956, 2.32667, 6.07869}, {-3.9353, 0.360586, -0.360901, -2.42845e-16, -0.455297, -1.14997, 2.03858e-16, 1.40972, 0.194715, -1.31177, -0.834228, 0.834958, -1.62143, 2.53253, 5.87264, 4.81904e-17, -1.17973, 1.18076, -1.62143, -7.23282, -1.16824, 5.24706, 4.51665, -4.52059, 1.62143, 1.59394, 0.389381, 1.62143, -0.711347, -1.27275}, {1.31177, -0.120195, 0.1203, 7.28534e-16, 1.36589, 3.44992, 2.03858e-16, 1.40972, 0.194715, -1.31177, -0.834228, 0.834958, -6.86849, 1.19213, 0.791545, -7.67241e-16, -6.81861, 0.401902, -1.62143, -1.59394, -0.389381, -3.73841e-16, 1.17973, -1.18076, 6.86849, 4.93085, -2.95045, 1.62143, -0.711347, -1.27275}, {1.31177, -0.120195, 0.1203, 7.41337e-17, -0.455297, -1.14997, 6.88614e-16, -4.22916, -0.584146, -1.31177, -0.834228, 0.834958, -1.62143, 0.711347, 1.27275, -1.04445e-16, 0.641455, 5.78066, -6.86849, -1.11316, -0.870582, -5.1774e-16, 1.17973, -1.18076, 1.62143, 1.59394, 0.389381, 6.86849, 2.62557, -4.61258}, {1.31177, -0.120195, 0.1203, -1.68711e-16, -0.455297, -1.14997, -2.56799e-17, 1.40972, 0.194715, 3.9353, 2.50269, -2.50487, -1.62143, 0.711347, 1.27275, 2.4028e-16, -1.17973, 1.18076, -1.62143, -1.59394, -0.389381, -5.24706, 1.66051, -1.66196, 1.62143, 3.41513, 4.98927, 1.62143, -6.35023, -2.05161}, {3.9353, -3.83942e-12, 1.21564, 0, -1.44665, 1.03094, 0, 1.44665, 0.774615, 1.31177, -1.27981e-12, -1.40034, 1.62143, 7.57474, -4.89721, 0, 0, -2.23179, 1.62143, -7.57474, -3.55506, -5.24706, 5.11922e-12, 7.83316, -1.62143, 1.78815, 0.456604, -1.62143, -1.78815, 0.773441}, {-1.31177, 1.28052e-12, -0.405214, 3.53326e-15, 4.33994, -3.09282, 1.17775e-15, 1.44665, 0.774615, 1.31177, -1.28052e-12, -1.40034, 6.86849, 1.78815, 0.847415, -4.71101e-15, -5.78659, -5.33025, 1.62143, -1.78815, -0.456604, 3.2565e-16, -3.17893e-28, 2.23179, -6.86849, 1.78815, 6.05797, -1.62143, -1.78815, 0.773441}, {-1.31177, 1.28099e-12, -0.405214, -9.42202e-16, -1.44665, 1.03094, -2.82661e-15, -4.33994, -2.32384, 1.31177, -1.28099e-12, -1.40034, 1.62143, 1.78815, -0.773441, 3.76881e-15, 5.78659, -6.35555, 6.86849, -1.78815, 1.16425, 3.2565e-16, -3.18011e-28, 2.23179, -1.62143, 1.78815, 0.456604, -6.86849, -1.78815, 6.37481}, {-1.31177, 1.27957e-12, -0.405214, 0, -1.44665, 1.03094, 0, 1.44665, 0.774615, -3.9353, 3.83871e-12, 4.20103, 1.62143, 1.78815, -0.773441, 0, 0, -2.23179, 1.62143, -1.78815, -0.456604, 5.24706, -5.11827e-12, 3.85265, -1.62143, 7.57474, -3.66716, -1.62143, -7.57474, -2.32502}, {-1.71772, -4.33994, -0.49013, 1.44665, -1.44665, -0.51339, 0, 0, -1.80556, -2.01922, 1.97175e-12, 2.15557, -8.28248, 5.78659, 2.4862, -1.78815, 1.78815, 2.86637, -0.707741, -1.78815, 9.25207, 9.86504, -1.78815, -11.4887, 0.707741, 1.78815, -2.02984, 2.4959, -2.43721e-12, -0.432641}, {0.572575, 1.44665, 0.163377, -4.33994, 4.33994, 1.54017, 0, 0, -1.80556, -2.01922, 1.97102e-12, 2.15557, -4.7862, -5.78659, -0.220866, -1.78815, 1.78815, 10.0886, -0.707741, -1.78815, 2.02984, 1.78815, -1.78815, -2.86637, 8.78463, 1.78815, -10.6521, 2.4959, -2.43632e-12, -0.432641}, {0.572575, 1.44665, 0.163377, 1.44665, -1.44665, -0.51339, 0, 0, 5.41667, -2.01922, 1.97175e-12, 2.15557, -2.4959, 2.43685e-12, 0.432641, -7.57474, 7.57474, 4.91994, -2.99804, -7.57474, 1.37634, 1.78815, -1.78815, -2.86637, 0.707741, 1.78815, -2.02984, 10.5728, -1.03242e-11, -9.05492}, {0.572575, 1.44665, 0.163377, 1.44665, -1.44665, -0.51339, 0, 0, -1.80556, 6.05767, -5.91306e-12, -6.46671, -2.4959, 2.43596e-12, 0.432641, -1.78815, 1.78815, 2.86637, -0.707741, -1.78815, 2.02984, -0.502145, -7.57474, -3.51988, -5.07885, 7.57474, 0.0237159, 2.4959, -2.43632e-12, 6.78958}, {5.80677, 0.989763, -2.29829, 1.66654, 1.66654, -0.659606, 0.232016, 0.232016, -2.11105, 0.0370362, -1.56863, 2.00456, -6.33358, -8.31829, 2.5068, -2.34674, -2.34674, 3.42472, 1.17767, -0.807048, 10.1067, 2.1986, 8.62127, -11.443, -2.10573, -0.121017, -1.66246, -0.332567, 1.65215, 0.131628}, {-1.93559, -0.329921, 0.766095, -4.99961, -4.99961, 1.97882, 0.232016, 0.232016, -2.11105, 0.0370362, -1.56863, 2.00456, 8.07492, -0.332464, -3.19601, -3.2748, -3.2748, 11.8689, 2.10573, 0.121017, 1.66246, 2.34674, 2.34674, -3.42472, -2.25388, 6.15351, -9.68071, -0.332567, 1.65215, 0.131628}, {-1.93559, -0.329921, 0.766095, 1.66654, 1.66654, -0.659606, -0.696049, -0.696049, 6.33316, 0.0370362, -1.56863, 2.00456, 0.332567, -1.65215, -0.131628, -9.01289, -9.01289, 6.06315, 9.84809, 1.4407, -1.40192, 2.34674, 2.34674, -3.42472, -2.10573, -0.121017, -1.66246, -0.480712, 7.92668, -7.88662}, {-1.93559, -0.329921, 0.766095, 1.66654, 1.66654, -0.659606, 0.232016, 0.232016, -2.11105, -0.111109, 4.7059, -6.01369, 0.332567, -1.65215, -0.131628, -2.34674, -2.34674, 3.42472, 2.10573, 0.121017, 1.66246, 10.0891, 3.66642, -6.4891, -8.77188, -6.78716, 0.975965, -1.26063, 0.724083, 8.57584}, {-7.02938, -6.32827e-15, -4.44089e-15, 1.74421, 1.74203, 1.33161, -1.54384, -1.54318, 0.610212, -2.54349, -0.198851, -1.94182, -12.0291, -9.12139, -6.97241, -0.247668, -0.245794, -2.40023, 5.18739, 8.08019, -3.19511, 10.4216, 1.0412, 10.1675, 0.98797, -1.90748, 0.754264, 5.05222, 2.15327, 1.64596}, {2.34313, -1.30451e-15, -6.66134e-16, -5.23263, -5.22609, -3.99484, -1.54384, -1.54318, 0.610212, -2.54349, -0.198851, -1.94182, -14.4247, -2.15327, -1.64596, 5.92769, 5.92693, -4.84108, -0.98797, 1.90748, -0.754264, 0.247668, 0.245794, 2.40023, 11.1619, -1.11207, 8.52156, 5.05222, 2.15327, 1.64596}, {2.34313, 2.33147e-15, 1.77636e-15, 1.74421, 1.74203, 1.33161, 4.63152, 4.62954, -1.83064, -2.54349, -0.198851, -1.94182, -5.05222, -2.15327, -1.64596, -7.2245, -7.21392, -7.72668, -10.3605, 1.90748, -0.754264, 0.247668, 0.245794, 2.40023, 0.98797, -1.90748, 0.754264, 15.2262, 2.94867, 9.41326}, {2.34313, 1.38778e-16, -1.11022e-15, 1.74421, 1.74203, 1.33161, -1.54384, -1.54318, 0.610212, 7.63048, 0.596554, 5.82547, -5.05222, -2.15327, -1.64596, -0.247668, -0.245794, -2.40023, -0.98797, 1.90748, -0.754264, -9.12483, 0.245794, 2.40023, -5.98886, -8.8756, -4.57219, 11.2276, 8.32599, -0.794885}, {4.62937, 4.62937, -1.83228, 1.92454e-15, 1.60567, 4.31655e-17, -0.198723, -0.198723, -1.94057, 1.74185, 0.136178, 1.32981, 1.90741, -6.49998, -0.754941, 0.245635, -1.73908, 2.39867, 2.94793, 2.94793, 9.40601, -7.21302, 1.19437, -7.71791, -2.15304, -2.15304, -1.64373, -1.90741, 0.0773091, 0.754941}, {-1.54312, -1.54312, 0.61076, -2.32061e-15, -4.817, -3.91084e-15, -0.198723, -0.198723, -1.94057, 1.74185, 0.136178, 1.32981, 8.0799, 6.09519, -3.19798, 1.04052, -0.94419, 10.1609, 2.15304, 2.15304, 1.64373, -0.245635, 1.73908, -2.39867, -9.12042, -2.69775, -6.96297, -1.90741, 0.0773091, 0.754941}, {-1.54312, -1.54312, 0.61076, 0, 1.60567, 0, 0.596168, 0.596168, 5.82171, 1.74185, 0.136178, 1.32981, 1.90741, -0.0773091, -0.754941, 0.245635, -8.16175, 2.39867, 8.32553, 8.32553, -0.799305, -0.245635, 1.73908, -2.39867, -2.15304, -2.15304, -1.64373, -8.87479, -0.467403, -4.5643}, {-1.54312, -1.54312, 0.61076, -6.94322e-16, 1.60567, -5.30079e-16, -0.198723, -0.198723, -1.94057, -5.22554, -0.408534, -3.98943, 1.90741, -0.0773091, -0.754941, 0.245635, -1.73908, 2.39867, 2.15304, 2.15304, 1.64373, 5.92686, 7.91157, -4.84171, -2.15304, -8.57571, -1.64373, -1.11252, 0.872199, 8.51722}, {-8.88178e-16, 2.15168e-15, -3.8693, 1.44142, -1.45582, 0.146636, 0.577805, 1.45582, -0.186531, -2.01922, -1.68031e-12, -1.24987, -7.54736, 7.62276, -2.36203, -2.4959, -2.07812e-12, 0.0493134, -3.02542, -7.62276, -0.617546, 10.5728, 8.79935e-12, 4.95017, 0.714206, 1.79949, 1.36367, 1.78169, -1.79949, 1.77549}, {0, -1.49289e-16, 1.28977, -4.32425, 4.36745, -0.439908, 0.577805, 1.45582, -0.186531, -2.01922, -1.67873e-12, -1.24987, -1.78169, 1.79949, -6.93455, -4.80711, -5.82327, 0.795439, -0.714206, -1.79949, -1.36367, 2.4959, 2.07523e-12, -0.0493134, 8.79109, 1.79949, 6.36315, 1.78169, -1.79949, 1.77549}, {8.88178e-16, 3.43166e-16, 1.28977, 1.44142, -1.45582, 0.146636, -1.73341, -4.36745, 0.559594, -2.01922, -1.68189e-12, -1.24987, -1.78169, 1.79949, -1.77549, -8.26156, 5.82327, -0.537231, -0.714206, -1.79949, -6.52273, 2.4959, 2.07834e-12, -0.0493134, 0.714206, 1.79949, 1.36367, 9.85858, -1.79949, 6.77497}, {-4.44089e-16, 1.48625e-17, 1.28977, 1.44142, -1.45582, 0.146636, 0.577805, 1.45582, -0.186531, 6.05767, 5.03935e-12, 3.74961, -1.78169, 1.79949, -1.77549, -2.4959, -2.07634e-12, 0.0493134, -0.714206, -1.79949, -1.36367, 2.4959, 2.0765e-12, -5.20838, -5.05146, 7.62276, 0.777128, -0.529529, -7.62276, 2.52162}, {-0.0174717, -4.36745, 1.62174, 0.116385, -1.45582, -0.673541, -1.39583, -1.1623e-12, 0.425765, 1.27362, 1.06054e-12, 0.788355, -0.616596, 5.82327, 4.1949, 1.58148, 1.79949, 0.306268, 7.30147, -1.79949, -1.56114, -6.67598, -1.79949, -3.45969, -1.71815, 1.79949, -0.141919, 0.151058, 1.25785e-13, -1.50074}, {0.0058239, 1.45582, -0.54058, -0.349154, 4.36745, 2.02062, -1.39583, -1.1623e-12, 0.425765, 1.27362, 1.06054e-12, 0.788355, -0.174354, -5.82327, 3.66305, 7.16481, 1.79949, -1.39679, 1.71815, -1.79949, 0.141919, -1.58148, -1.79949, -0.306268, -6.81264, 1.79949, -3.29534, 0.151058, 1.25785e-13, -1.50074}, {0.0058239, 1.45582, -0.54058, 0.116385, -1.45582, -0.673541, 4.1875, 3.48841e-12, -1.27729, 1.27362, 1.061e-12, 0.788355, -0.151058, -1.26201e-13, 1.50074, 1.11595, 7.62276, 3.00043, 1.69485, -7.62276, 2.30424, -1.58148, -1.79949, -0.306268, -1.71815, 1.79949, -0.141919, -4.94344, -4.11815e-12, -4.65416}, {0.0058239, 1.45582, -0.54058, 0.116385, -1.45582, -0.673541, -1.39583, -1.16331e-12, 0.425765, -3.82087, -3.18437e-12, -2.36507, -0.151058, -1.26255e-13, 1.50074, 1.58148, 1.79949, 0.306268, 1.71815, -1.79949, 0.141919, -1.60478, -7.62276, 1.85605, -2.18368, 7.62276, 2.55224, 5.73439, 4.77913e-12, -3.20379}, {0.776806, 4.33994, 4.33994, -1.05603, 0, 0, 0.111915, 1.44665, -0.572575, 1.20305, 1.58813e-12, 2.01922, 5.84948, 1.78815, 1.78815, 1.16698, -1.78815, 0.707741, -0.265932, -5.78659, 4.7862, -5.97917, 1.78815, -8.78463, -0.181727, -1.96304e-12, -2.4959, -1.62538, -1.78815, -1.78815}, {-0.258935, -1.44665, -1.44665, 3.16808, 0, 0, 0.111915, 1.44665, -0.572575, 1.20305, 1.58704e-12, 2.01922, 2.66112, 7.57474, 7.57474, 0.719326, -7.57474, 2.99804, 0.181727, 1.96205e-12, 2.4959, -1.16698, 1.78815, -0.707741, -4.99391, -8.30986e-12, -10.5728, -1.62538, -1.78815, -1.78815}, {-0.258935, -1.44665, -1.44665, -1.05603, 0, 0, -0.335745, -4.33994, 1.71772, 1.20305, 1.58813e-12, 2.01922, 1.62538, 1.78815, 1.78815, 5.39109, -1.78815, 0.707741, 1.21747, 5.78659, 8.28248, -1.16698, 1.78815, -0.707741, -0.181727, -1.96304e-12, -2.4959, -6.43757, -1.78815, -9.86504}, {-0.258935, -1.44665, -1.44665, -1.05603, 0, 0, 0.111915, 1.44665, -0.572575, -3.60914, -4.76221e-12, -6.05767, 1.62538, 1.78815, 1.78815, 1.16698, -1.78815, 0.707741, 0.181727, 1.9625e-12, 2.4959, -0.131244, 7.57474, 5.07885, 4.04237, -1.96214e-12, -2.4959, -2.07304, -7.57474, 0.502145}, {-1.50826, -4.33994, -0.250246, -0.36325, 9.14735e-13, 1.16277, 0.624341, -1.44665, 0.0358648, -0.763842, -1.00857e-12, -1.28205, 1.28057, -1.78815, -6.19146, -0.322725, 1.78815, -1.4816, -3.89052, 5.78659, -0.290898, 3.37809, -1.78815, 6.6098, 1.39316, 1.15988e-13, 0.147438, 0.172433, 1.78815, 1.54037}, {0.502752, 1.44665, 0.0834153, 1.08975, -2.74233e-12, -3.48831, 0.624341, -1.44665, 0.0358648, -0.763842, -1.00788e-12, -1.28205, -2.18344, -7.57474, -1.87403, -2.82009, 7.57474, -1.62505, -1.39316, -1.16267e-13, -0.147438, 0.322725, -1.78815, 1.4816, 4.44853, 4.14743e-12, 5.27564, 0.172433, 1.78815, 1.54037}, {0.502752, 1.44665, 0.0834153, -0.36325, 9.139e-13, 1.16277, -1.87302, 4.33994, -0.107594, -0.763842, -1.00765e-12, -1.28205, -0.172433, -1.78815, -1.54037, 1.13028, 1.78815, -6.13268, -3.40417, -5.78659, -0.4811, 0.322725, -1.78815, 1.4816, 1.39316, 1.15882e-13, 0.147438, 3.2278, 1.78815, 6.66858}, {0.502752, 1.44665, 0.0834153, -0.36325, 9.14526e-13, 1.16277, 0.624341, -1.44665, 0.0358648, 2.29153, 3.02502e-12, 3.84615, -0.172433, -1.78815, -1.54037, -0.322725, 1.78815, -1.4816, -1.39316, -1.1632e-13, -0.147438, -1.68828, -7.57474, 1.14793, 2.84616, -3.54214e-12, -4.50365, -2.32493, 7.57474, 1.39691}, {-5.2764, 2.09092, -1.75594, -0.883363, 0.350058, 0.882867, 0.674903, -2.28914, -0.671659, -1.55034, 2.63606, -0.796523, 2.45135, -0.971419, -5.34624, 0.257671, 2.39684, -0.261068, -5.70783, 12.8476, 2.79336, 5.94368, -12.9411, 3.44716, 3.00822, -3.69104, -0.106727, 1.0821, -0.428812, 1.81477}, {1.7588, -0.696974, 0.585315, 2.65009, -1.05017, -2.6486, 0.674903, -2.28914, -0.671659, -1.55034, 2.63606, -0.796523, -8.11729, 3.21671, -4.15603, -2.44194, 11.5534, 2.42557, -3.00822, 3.69104, 0.106727, -0.257671, -2.39684, 0.261068, 9.20957, -14.2353, 3.07936, 1.0821, -0.428812, 1.81477}, {1.7588, -0.696974, 0.585315, -0.883363, 0.350058, 0.882867, -2.02471, 6.86742, 2.01498, -1.55034, 2.63606, -0.796523, -1.0821, 0.428812, -1.81477, 3.79112, 0.996607, -3.79254, -10.0434, 6.47894, -2.23453, -0.257671, -2.39684, 0.261068, 3.00822, -3.69104, -0.106727, 7.28345, -10.973, 5.00086}, {1.7588, -0.696974, 0.585315, -0.883363, 0.350058, 0.882867, 0.674903, -2.28914, -0.671659, 4.65101, -7.90817, 2.38957, -1.0821, 0.428812, -1.81477, 0.257671, 2.39684, -0.261068, -3.00822, 3.69104, 0.106727, -7.29286, 0.391057, -2.08019, 6.54167, -5.09127, -3.6382, -1.61751, 8.72775, 4.50141}, {-0.630826, -5.80799, 0.630826, -0.387946, -0.481968, -1.21772, -0.883035, 0.3495, 0.883035, 1.06071, -1.80353, 0.544962, 1.7714, 0.130593, 6.63599, 1.57102, 0.163739, 0.413696, 4.36372, -4.22303, -4.36372, -5.81384, 7.05038, -2.59355, -0.831577, 2.82503, 0.831577, -0.219612, 1.79728, -1.7651}, {0.210275, 1.936, -0.210275, 1.16384, 1.4459, 3.65317, -0.883035, 0.3495, 0.883035, 1.06071, -1.80353, 0.544962, -0.621489, -9.54126, 2.6062, 5.10316, -1.23426, -3.11845, 0.831577, -2.82503, -0.831577, -1.57102, -0.163739, -0.413696, -5.0744, 10.0391, -1.34827, -0.219612, 1.79728, -1.7651}, {0.210275, 1.936, -0.210275, -0.387946, -0.481968, -1.21772, 2.64911, -1.0485, -2.64911, 1.06071, -1.80353, 0.544962, 0.219612, -1.79728, 1.7651, 3.1228, 2.09161, 5.28459, -0.00952469, -10.569, 0.00952469, -1.57102, -0.163739, -0.413696, -0.831577, 2.82503, 0.831577, -4.46243, 9.01139, -3.94495}, {0.210275, 1.936, -0.210275, -0.387946, -0.481968, -1.21772, -0.883035, 0.3495, 0.883035, -3.18212, 5.41059, -1.63489, 0.219612, -1.79728, 1.7651, 1.57102, 0.163739, 0.413696, 0.831577, -2.82503, -0.831577, -2.41212, -7.90772, 0.427406, 0.720206, 4.7529, 5.70247, 3.31253, 0.399276, -5.29724}, {-4.62915, 1.83443, 4.62655, 1.15731e-16, 1.13013e-15, 2.34313, -1.74201, -1.33137, 1.74389, 0.198956, 1.94285, -2.54483, -1.90731, 0.755828, -10.3625, 2.15324, 1.64567, -5.05183, 7.21395, 7.72698, -7.2249, -2.94906, -9.41706, 15.2312, -0.245923, -2.40149, 0.249326, 1.90731, -0.755828, 0.990019}, {1.54305, -0.611477, -1.54218, -3.38711e-15, -5.71373e-15, -7.02938, -1.74201, -1.33137, 1.74389, 0.198956, 1.94285, -2.54483, -8.07952, 3.20174, 5.17872, 9.12126, 6.97115, -12.0274, 0.245923, 2.40149, -0.249326, -2.15324, -1.64567, 5.05183, -1.04175, -10.1729, 10.4287, 1.90731, -0.755828, 0.990019}, {1.54305, -0.611477, -1.54218, 0, 0, 2.34313, 5.22602, 3.99411, -5.23168, 0.198956, 1.94285, -2.54483, -1.90731, 0.755828, -0.990019, 2.15324, 1.64567, -14.4243, -5.92628, 4.8474, 5.91941, -2.15324, -1.64567, 5.05183, -0.245923, -2.40149, 0.249326, 1.11149, -8.52722, 11.1694}, {1.54305, -0.611477, -1.54218, 1.15731e-16, 1.13013e-15, 2.34313, -1.74201, -1.33137, 1.74389, -0.596868, -5.82855, 7.6345, -1.90731, 0.755828, -0.990019, 2.15324, 1.64567, -5.05183, 0.245923, 2.40149, -0.249326, -8.32544, 0.800244, 11.2206, -0.245923, -2.40149, -9.12318, 8.87534, 4.56966, -5.98555}, {-4.62937, 1.83228, 4.62937, -1.60567, 0, 0, 0.198723, 1.94057, -0.198723, -0.136178, -1.32981, 1.74185, 6.49998, 0.754941, 1.90741, 1.73908, -2.39867, 0.245635, -2.94793, -9.40601, 2.94793, -1.19437, 7.71791, -7.21302, 2.15304, 1.64373, -2.15304, -0.0773091, -0.754941, -1.90741}, {1.54312, -0.61076, -1.54312, 4.817, 0, 0, 0.198723, 1.94057, -0.198723, -0.136178, -1.32981, 1.74185, -6.09519, 3.19798, 8.0799, 0.94419, -10.1609, 1.04052, -2.15304, -1.64373, 2.15304, -1.73908, 2.39867, -0.245635, 2.69775, 6.96297, -9.12042, -0.0773091, -0.754941, -1.90741}, {1.54312, -0.61076, -1.54312, -1.60567, 0, 0, -0.596168, -5.82171, 0.596168, -0.136178, -1.32981, 1.74185, 0.0773091, 0.754941, 1.90741, 8.16175, -2.39867, 0.245635, -8.32553, 0.799305, 8.32553, -1.73908, 2.39867, -0.245635, 2.15304, 1.64373, -2.15304, 0.467403, 4.5643, -8.87479}, {1.54312, -0.61076, -1.54312, -1.60567, 0, 0, 0.198723, 1.94057, -0.198723, 0.408534, 3.98943, -5.22554, 0.0773091, 0.754941, 1.90741, 1.73908, -2.39867, 0.245635, -2.15304, -1.64373, 2.15304, -7.91157, 4.84171, 5.92686, 8.57571, 1.64373, -2.15304, -0.872199, -8.51722, -1.11252}, {3.22749, -4.51945, -2.90569, 1.79579, -0.140217, 1.36925, 0.607375, 0.135762, -1.32575, -1.32734, -1.50203, -1.01206, -8.0731, -1.12793, -8.36668, -2.97048, 0.00550629, -0.0537701, -1.85046, -2.57298, 5.74449, 8.27985, 6.00261, 4.10202, -0.57904, 2.02993, -0.441503, 0.889927, 1.6888, 2.88969}, {-1.07583, 1.50648, 0.968563, -5.38738, 0.42065, -4.10774, 0.607375, 0.135762, -1.32575, -1.32734, -1.50203, -1.01206, 3.41339, -7.71473, -6.76394, -5.39998, -0.537542, 5.24921, 0.57904, -2.02993, 0.441503, 2.97048, -0.00550629, 0.0537701, 4.73032, 8.03804, 3.60675, 0.889927, 1.6888, 2.88969}, {-1.07583, 1.50648, 0.968563, 1.79579, -0.140217, 1.36925, -1.82213, -0.407286, 3.97724, -1.32734, -1.50203, -1.01206, -0.889927, -1.6888, -2.88969, -10.1537, 0.566373, -5.53076, 4.88236, -8.05586, -3.43275, 2.97048, -0.00550629, 0.0537701, -0.57904, 2.02993, -0.441503, 6.19929, 7.69691, 6.93795}, {-1.07583, 1.50648, 0.968563, 1.79579, -0.140217, 1.36925, 0.607375, 0.135762, -1.32575, 3.98202, 4.50609, 3.03619, -0.889927, -1.6888, -2.88969, -2.97048, 0.00550629, -0.0537701, 0.57904, -2.02993, 0.441503, 7.2738, -6.03144, -3.82048, -7.76222, 2.59079, -5.91849, -1.53958, 1.14575, 8.19268}, {0.596103, 2.3292, 5.82108, 0, -2.17235, 0, -1.54296, 0.977878, 0.61239, 1.74166, 1.97087, 1.32797, 0.245608, 12.3343, 2.39842, 1.9072, 1.47645, -0.756955, 8.32463, -4.16055, -0.808098, -8.87383, -9.35994, -4.55492, -2.15281, 0.249041, -1.64146, -0.245608, -3.64486, -2.39842}, {-0.198701, -0.7764, -1.94036, 0, 6.51705, 0, -1.54296, 0.977878, 0.61239, 1.74166, 1.97087, 1.32797, 1.04041, 6.75045, 10.1599, 8.07903, -2.43506, -3.20651, 2.15281, -0.249041, 1.64146, -1.9072, -1.47645, 0.756955, -9.11944, -7.63445, -6.95334, -0.245608, -3.64486, -2.39842}, {-0.198701, -0.7764, -1.94036, 0, -2.17235, 0, 4.62887, -2.93363, -1.83717, 1.74166, 1.97087, 1.32797, 0.245608, 3.64486, 2.39842, 1.9072, 10.1659, -0.756955, 2.94761, 2.85656, 9.4029, -1.9072, -1.47645, 0.756955, -2.15281, 0.249041, -1.64146, -7.21224, -11.5283, -7.71029}, {-0.198701, -0.7764, -1.94036, 0, -2.17235, 0, -1.54296, 0.977878, 0.61239, -5.22497, -5.91262, -3.98391, 0.245608, 3.64486, 2.39842, 1.9072, 1.47645, -0.756955, 2.15281, -0.249041, 1.64146, -1.1124, 1.62915, 8.51839, -2.15281, 8.93844, -1.64146, 5.92622, -7.55637, -4.84797}, {-2.37946, -3.79135, -6.81576, 0.894391, -1.25242, -0.805215, 0.086206, 0.865556, -0.85654, -1.77375, -0.876923, -0.610165, -5.66348, 4.99561, 1.40791, -1.21208, 0.478185, 2.05404, -1.43177, -6.09423, 1.67666, 8.30708, 3.02951, 0.386615, 1.08695, 2.63201, 1.74951, 2.08592, 0.0140506, 1.81295}, {0.793153, 1.26378, 2.27192, -2.68317, 3.75725, 2.41565, 0.086206, 0.865556, -0.85654, -1.77375, -0.876923, -0.610165, -5.25853, -5.06918, -10.9006, -1.55691, -2.98404, 5.4802, -1.08695, -2.63201, -1.74951, 1.21208, -0.478185, -2.05404, 8.18195, 6.1397, 4.19016, 2.08592, 0.0140506, 1.81295}, {0.793153, 1.26378, 2.27192, 0.894391, -1.25242, -0.805215, -0.258618, -2.59667, 2.56962, -1.77375, -0.876923, -0.610165, -2.08592, -0.0140506, -1.81295, -4.78965, 5.48785, 5.2749, -4.25956, -7.68714, -10.8372, 1.21208, -0.478185, -2.05404, 1.08695, 2.63201, 1.74951, 9.18092, 3.52174, 4.25361}, {0.793153, 1.26378, 2.27192, 0.894391, -1.25242, -0.805215, 0.086206, 0.865556, -0.85654, 5.32125, 2.63077, 1.83049, -2.08592, -0.0140506, -1.81295, -1.21208, 0.478185, 2.05404, -1.08695, -2.63201, -1.74951, -1.96053, -5.53332, -11.1417, -2.49062, 7.64167, 4.97037, 1.74109, -3.44817, 5.23911}, {4.58783, -0.200634, 4.23679, 1.50209, -0.951977, -0.596169, -2.69821, -0.462309, 1.0709, 2.7254, 1.34741, 0.937529, -5.97475, 4.90195, 4.86723, 1.47849, 1.74815, -0.586802, 16.0183, 2.33802, -3.86166, -12.3801, -7.13778, -3.16331, -5.22546, -0.48878, -0.421944, -0.0336074, -1.09404, -2.48256}, {-1.52928, 0.0668781, -1.41226, -4.50626, 2.85593, 1.78851, -2.69821, -0.462309, 1.0709, 2.7254, 1.34741, 0.937529, 6.15072, 0.82653, 8.1316, 12.2713, 3.59739, -4.87041, 5.22546, 0.48878, 0.421944, -1.47849, -1.74815, 0.586802, -16.1271, -5.87841, -4.17206, -0.0336074, -1.09404, -2.48256}, {-1.52928, 0.0668781, -1.41226, 1.50209, -0.951977, -0.596169, 8.09463, 1.38693, -3.21271, 2.7254, 1.34741, 0.937529, 0.0336074, 1.09404, 2.48256, -4.52987, 5.55606, 1.79787, 11.3426, 0.221267, 6.07099, -1.47849, -1.74815, 0.586802, -5.22546, -0.48878, -0.421944, -10.9352, -6.48367, -6.23267}, {-1.52928, 0.0668781, -1.41226, 1.50209, -0.951977, -0.596169, -2.69821, -0.462309, 1.0709, -8.1762, -4.04222, -2.81259, 0.0336074, 1.09404, 2.48256, 1.47849, 1.74815, -0.586802, 5.22546, 0.48878, 0.421944, 4.63862, -2.01567, 6.23585, -11.2338, 3.31913, 1.96273, 10.7592, 0.755194, -6.76616}, {1.83443, -2.90588, -4.62915, 0, -2.17235, 0, 1.94285, -0.797826, 0.198956, -1.33137, 2.00155, -1.74201, 0.755828, 10.1773, -1.90731, -2.40149, 3.67134, -0.245923, -9.41706, 2.98018, -2.94906, 7.72698, -11.6775, 7.21395, 1.64567, 0.211121, 2.15324, -0.755828, -1.48788, 1.90731}, {-0.611477, 0.968627, 1.54305, 0, 6.51705, 0, 1.94285, -0.797826, 0.198956, -1.33137, 2.00155, -1.74201, 3.20174, -2.38662, -8.07952, -10.1729, 6.86264, -1.04175, -1.64567, -0.211121, -2.15324, 2.40149, -3.67134, 0.245923, 6.97115, -7.79508, 9.12126, -0.755828, -1.48788, 1.90731}, {-0.611477, 0.968627, 1.54305, 0, -2.17235, 0, -5.82855, 2.39348, -0.596868, -1.33137, 2.00155, -1.74201, 0.755828, 1.48788, -1.90731, -2.40149, 12.3607, -0.245923, 0.800244, -4.08563, -8.32544, 2.40149, -3.67134, 0.245923, 1.64567, 0.211121, 2.15324, 4.56966, -9.49408, 8.87534}, {-0.611477, 0.968627, 1.54305, 0, -2.17235, 0, 1.94285, -0.797826, 0.198956, 3.99411, -6.00465, 5.22602, 0.755828, 1.48788, -1.90731, -2.40149, 3.67134, -0.245923, -1.64567, -0.211121, -2.15324, 4.8474, -7.54585, -5.92628, 1.64567, 8.90052, 2.15324, -8.52722, 1.70342, 1.11149}, {-3.96631, -0.406167, 1.83974, -1.35283, -0.138536, -1.77009, -0.9692, 1.50642, 1.075, 0.999931, -1.50327, 1.30834, 5.44932, 0.558033, 10.0263, 2.87019, -1.6908, 0.859181, 3.44059, -8.05506, -4.87073, -6.86992, 7.70388, -6.09254, 0.436211, 2.02938, 0.570751, -0.0379859, -0.00388992, -2.94596}, {1.3221, 0.135389, -0.613248, 4.0585, 0.415608, 5.31026, -0.9692, 1.50642, 1.075, 0.999931, -1.50327, 1.30834, -5.25042, -0.537666, 5.39896, 6.74699, -7.71647, -3.4408, -0.436211, -2.02938, -0.570751, -2.87019, 1.6908, -0.859181, -3.56351, 8.04247, -4.66261, -0.0379859, -0.00388992, -2.94596}, {1.3221, 0.135389, -0.613248, -1.35283, -0.138536, -1.77009, 2.9076, -4.51925, -3.22499, 0.999931, -1.50327, 1.30834, 0.0379859, 0.00388992, 2.94596, 8.28152, -1.13665, 7.93953, -5.72462, -2.57094, 1.88224, -2.87019, 1.6908, -0.859181, 0.436211, 2.02938, 0.570751, -4.03771, 6.00919, -8.17932}, {1.3221, 0.135389, -0.613248, -1.35283, -0.138536, -1.77009, -0.9692, 1.50642, 1.075, -2.99979, 4.50981, -3.92502, 0.0379859, 0.00388992, 2.94596, 2.87019, -1.6908, 0.859181, -0.436211, -2.02938, -0.570751, -8.1586, 1.14924, 1.59381, 5.84754, 2.58353, 7.6511, 3.83881, -6.02956, -7.24594}, {3.10069, 1.60532, -7.82452, 0.575383, -0.91145, -1.45197, 1.48006, -0.0647255, 1.36681, -1.02187, 1.51128, -2.52301, -1.73519, 5.43384, 4.37871, -2.54066, 1.20662, 0.105263, -6.47211, 1.00034, -10.3806, 6.62816, -7.25175, 9.9868, 0.551894, -0.741434, 4.91335, -0.566342, -1.78804, 1.42915}, {-1.03356, -0.535107, 2.60817, -1.72615, 2.73435, 4.3559, 1.48006, -0.0647255, 1.36681, -1.02187, 1.51128, -2.52301, 4.7006, 3.92847, -11.8619, -8.46088, 1.46552, -5.36196, -0.551894, 0.741434, -4.91335, 2.54066, -1.20662, -0.105263, 4.63939, -6.78657, 15.0054, -0.566342, -1.78804, 1.42915}, {-1.03356, -0.535107, 2.60817, 0.575383, -0.91145, -1.45197, -4.44017, 0.194177, -4.10042, -1.02187, 1.51128, -2.52301, 0.566342, 1.78804, -1.42915, -4.84219, 4.85242, 5.91313, 3.58236, 2.88186, -15.346, 2.54066, -1.20662, -0.105263, 0.551894, -0.741434, 4.91335, 3.52116, -7.83317, 11.5212}, {-1.03356, -0.535107, 2.60817, 0.575383, -0.91145, -1.45197, 1.48006, -0.0647255, 1.36681, 3.06562, -4.53385, 7.56904, 0.566342, 1.78804, -1.42915, -2.54066, 1.20662, 0.105263, -0.551894, 0.741434, -4.91335, 6.67491, 0.933809, -10.538, -1.74964, 2.90437, 10.7212, -6.48656, -1.52914, -4.03807}, {-2.63316, -2.47826, 0.36108, 0.802811, -1.2478, -0.890444, -2.35614, 1.42089, -0.657266, 0.675604, -0.999172, 1.66807, -5.2885, 5.51247, 4.8112, 1.92002, -0.213947, 1.91307, 11.252, -8.46096, 3.59026, -4.62243, 4.21063, -8.58536, -1.82742, 2.77741, -0.961199, 2.07725, -0.52127, -1.24942}, {0.877721, 0.826085, -0.12036, -2.40843, 3.7434, 2.67133, -2.35614, 1.42089, -0.657266, 0.675604, -0.999172, 1.66807, -5.58814, -2.78307, 1.73086, 11.3446, -5.8975, 4.54214, 1.82742, -2.77741, 0.961199, -1.92002, 0.213947, -1.91307, -4.52984, 6.7741, -7.63348, 2.07725, -0.52127, -1.24942}, {0.877721, 0.826085, -0.12036, 0.802811, -1.2478, -0.890444, 7.06841, -4.26266, 1.9718, 0.675604, -0.999172, 1.66807, -2.07725, 0.52127, 1.24942, -1.29123, 4.77726, 5.47485, -1.68346, -6.08175, 1.44264, -1.92002, 0.213947, -1.91307, -1.82742, 2.77741, -0.961199, -0.625163, 3.47542, -7.9217}, {0.877721, 0.826085, -0.12036, 0.802811, -1.2478, -0.890444, -2.35614, 1.42089, -0.657266, -2.02681, 2.99752, -5.00421, -2.07725, 0.52127, 1.24942, 1.92002, -0.213947, 1.91307, 1.82742, -2.77741, 0.961199, -5.4309, -3.09039, -1.43164, -5.03867, 7.76862, 2.60058, 11.5018, -6.20482, 1.37964}, {-0.815557, 4.36562, -0.135176, -1.95424, 0.460185, -0.243585, -0.0205487, 0.870319, -1.11219, 1.70294, 0.124702, 1.31071, 9.89652, -0.610825, 1.21973, 2.44098, -1.64459, 1.67583, -0.228434, -2.75832, 5.76778, -9.25274, 1.14578, -6.91867, 0.310628, -0.722961, -1.31904, -2.07955, -1.22991, -0.245392}, {0.271852, -1.45521, 0.0450587, 5.86273, -1.38055, 0.730756, -0.0205487, 0.870319, -1.11219, 1.70294, 0.124702, 1.31071, 0.99214, 7.05074, 0.0651576, 2.52317, -5.12587, 6.12457, -0.310628, 0.722961, 1.31904, -2.44098, 1.64459, -1.67583, -6.50113, -1.22177, -6.56189, -2.07955, -1.22991, -0.245392}, {0.271852, -1.45521, 0.0450587, -1.95424, 0.460185, -0.243585, 0.0616461, -2.61096, 3.33656, 1.70294, 0.124702, 1.31071, 2.07955, 1.22991, 0.245392, 10.258, -3.48533, 2.65017, -1.39804, 6.54379, 1.13881, -2.44098, 1.64459, -1.67583, 0.310628, -0.722961, -1.31904, -8.89131, -1.72872, -5.48824}, {0.271852, -1.45521, 0.0450587, -1.95424, 0.460185, -0.243585, -0.0205487, 0.870319, -1.11219, -5.10882, -0.374107, -3.93214, 2.07955, 1.22991, 0.245392, 2.44098, -1.64459, 1.67583, -0.310628, 0.722961, 1.31904, -3.52839, 7.46542, -1.85606, 8.1276, -2.5637, -0.344701, -1.99736, -4.71119, 4.20335}, {-2.82343, -2.82223, 1.11598, 0.652804, 0.651093, 1.763, 0.935946, -1.40658, 0.556196, -2.52989, -0.185258, -1.9472, -4.58144, -4.57199, -8.77136, -1.9638, 0.933829, -2.86668, -6.064, 6.20211, -2.45247, 12.0834, -0.192795, 10.6555, 2.32021, -0.575803, 0.227687, 1.97023, 1.96762, 1.71938}, {0.941145, 0.940742, -0.371993, -1.95841, -1.95328, -5.28899, 0.935946, -1.40658, 0.556196, -2.52989, -0.185258, -1.9472, -5.73481, -5.73058, -0.231403, -5.70759, 6.56014, -5.09146, -2.32021, 0.575803, -0.227687, 1.9638, -0.933829, 2.86668, 12.4398, 0.165231, 8.01649, 1.97023, 1.96762, 1.71938}, {0.941145, 0.940742, -0.371993, 0.652804, 0.651093, 1.763, -2.80784, 4.21973, -1.66859, -2.52989, -0.185258, -1.9472, -1.97023, -1.96762, -1.71938, -4.57502, -1.67054, -9.91867, -6.08479, -3.18716, 1.26029, 1.9638, -0.933829, 2.86668, 2.32021, -0.575803, 0.227687, 12.0898, 2.70865, 9.50817}, {0.941145, 0.940742, -0.371993, 0.652804, 0.651093, 1.763, 0.935946, -1.40658, 0.556196, 7.58968, 0.555775, 5.8416, -1.97023, -1.96762, -1.71938, -1.9638, 0.933829, -2.86668, -2.32021, 0.575803, -0.227687, -1.80078, -4.6968, 4.35465, -0.291002, -3.18018, -6.8243, -1.77356, 7.59392, -0.505409}, {4.38876, 6.50951, 0.486449, -0.364196, 1.94951, -0.0603643, 0.336809, -1.04259, -1.05295, 1.49031, 1.26291, 1.27547, 3.71522, -7.52572, 0.5165, 0.0338521, -1.12102, 1.37614, 0.0447138, 8.14114, 5.71377, -5.99508, -3.93064, -6.47801, -1.39195, -3.97078, -1.50195, -2.25844, -0.272335, -0.275043}, {-1.46292, -2.16984, -0.16215, 1.09259, -5.84854, 0.181093, 0.336809, -1.04259, -1.05295, 1.49031, 1.26291, 1.27547, 8.11012, 8.95169, 0.923642, -1.31338, 3.04934, 5.58796, 1.39195, 3.97078, 1.50195, -0.0338521, 1.12102, -1.37614, -7.35318, -9.02244, -6.60383, -2.25844, -0.272335, -0.275043}, {-1.46292, -2.16984, -0.16215, -0.364196, 1.94951, -0.0603643, -1.01043, 3.12777, 3.15886, 1.49031, 1.26291, 1.27547, 2.25844, 0.272335, 0.275043, 1.49064, -8.91908, 1.6176, 7.24363, 12.6501, 2.15055, -0.0338521, 1.12102, -1.37614, -1.39195, -3.97078, -1.50195, -8.21966, -5.32399, -5.37692}, {-1.46292, -2.16984, -0.16215, -0.364196, 1.94951, -0.0603643, 0.336809, -1.04259, -1.05295, -4.47092, -3.78874, -3.82641, 2.25844, 0.272335, 0.275043, 0.0338521, -1.12102, 1.37614, 1.39195, 3.97078, 1.50195, 5.81783, 9.80037, -0.727539, 0.0648337, -11.7688, -1.26049, -3.60567, 3.89803, 3.93678}, {-4.70136, 0, -3.55271e-15, -0.960805, 1.44394, -0.570969, 1.09021, -0.00626368, 2.02293, -1.69653, -1.43767, -1.45196, 3.09377, -7.56055, 2.98963, -0.159958, -1.77706, -1.79473, -7.6455, 0.0327971, -10.5922, 6.94608, 7.52775, 7.60258, 3.28465, -0.00774234, 2.50048, 0.749448, 1.7848, -0.705756}, {1.56712, -2.22045e-16, 1.11022e-15, 2.88242, -4.33181, 1.71291, 1.09021, -0.00626368, 2.02293, -1.69653, -1.43767, -1.45196, -7.01793, -1.7848, 0.705756, -4.52081, -1.75201, -9.88646, -3.28465, 0.00774234, -2.50048, 0.159958, 1.77706, 1.79473, 10.0708, 5.74295, 8.30834, 0.749448, 1.7848, -0.705756}, {1.56712, -8.88178e-16, -4.44089e-16, -0.960805, 1.44394, -0.570969, -3.27064, 0.018791, -6.0688, -1.69653, -1.43767, -1.45196, -0.749448, -1.7848, 0.705756, 3.68326, -7.5528, 0.489149, -9.55313, 0.00774234, -2.50048, 0.159958, 1.77706, 1.79473, 3.28465, -0.00774234, 2.50048, 7.53557, 7.53549, 5.1021}, {1.56712, 2.22045e-16, 2.22045e-16, -0.960805, 1.44394, -0.570969, 1.09021, -0.00626368, 2.02293, 5.08959, 4.31302, 4.35589, -0.749448, -1.7848, 0.705756, -0.159958, -1.77706, -1.79473, -3.28465, 0.00774234, -2.50048, -6.10853, 1.77706, 1.79473, 7.12787, -5.78349, 4.78436, -3.61141, 1.80986, -8.79749}}
]
- + total size : 6.8e+02kB
+ + total size : 6.3e+02kB
]
- + total size : 6.8e+02kB
+ + total size : 6.3e+02kB
]
diff --git a/test/test_fem/test_interpolate_tetrahedron_4.verified b/test/test_fem/test_interpolate_tetrahedron_4.verified
index d00d0fcc7..552095fdc 100644
--- a/test/test_fem/test_interpolate_tetrahedron_4.verified
+++ b/test/test_fem/test_interpolate_tetrahedron_4.verified
@@ -1,172 +1,170 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 3
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 131
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
+ ]
(not_ghost:_triangle_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 240
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{45, 49, 35}, {45, 8, 50}, {46, 38, 51}, {23, 47, 52}, {46, 50, 10}, {37, 49, 47}, {25, 52, 48}, {40, 48, 51}, {35, 49, 36}, {38, 39, 51}, {8, 9, 50}, {23, 52, 24}, {36, 49, 37}, {9, 10, 50}, {39, 40, 51}, {24, 52, 25}, {45, 44, 49}, {45, 50, 44}, {46, 44, 50}, {44, 47, 49}, {46, 51, 44}, {44, 52, 47}, {44, 51, 48}, {44, 48, 52}, {45, 35, 53}, {45, 53, 8}, {46, 54, 38}, {23, 55, 47}, {46, 10, 54}, {37, 47, 55}, {25, 48, 56}, {40, 56, 48}, {4, 37, 55}, {6, 53, 35}, {7, 54, 10}, {7, 38, 54}, {6, 8, 53}, {5, 56, 40}, {4, 55, 23}, {5, 25, 56}, {11, 62, 58}, {14, 63, 59}, {8, 64, 60}, {17, 65, 61}, {10, 58, 64}, {19, 60, 65}, {13, 59, 62}, {16, 61, 63}, {14, 15, 63}, {11, 12, 62}, {17, 18, 65}, {8, 9, 64}, {12, 13, 62}, {15, 16, 63}, {9, 10, 64}, {18, 19, 65}, {58, 62, 57}, {59, 57, 62}, {59, 63, 57}, {61, 57, 63}, {58, 57, 64}, {60, 64, 57}, {60, 57, 65}, {61, 65, 57}, {11, 58, 67}, {14, 59, 66}, {8, 60, 69}, {17, 61, 68}, {10, 67, 58}, {19, 69, 60}, {13, 66, 59}, {16, 68, 61}, {2, 68, 16}, {3, 66, 13}, {6, 69, 19}, {7, 67, 10}, {7, 11, 67}, {3, 14, 66}, {6, 8, 69}, {2, 17, 68}, {26, 75, 71}, {29, 76, 72}, {23, 77, 73}, {20, 78, 74}, {25, 71, 77}, {22, 73, 78}, {28, 72, 75}, {31, 74, 76}, {29, 30, 76}, {26, 27, 75}, {20, 21, 78}, {23, 24, 77}, {27, 28, 75}, {30, 31, 76}, {24, 25, 77}, {21, 22, 78}, {71, 75, 70}, {72, 70, 75}, {72, 76, 70}, {70, 76, 74}, {71, 70, 77}, {70, 73, 77}, {70, 78, 73}, {70, 74, 78}, {26, 71, 80}, {29, 72, 79}, {23, 73, 82}, {20, 74, 81}, {25, 80, 71}, {22, 82, 73}, {28, 79, 72}, {31, 81, 74}, {0, 81, 31}, {1, 79, 28}, {4, 82, 22}, {5, 80, 25}, {5, 26, 80}, {1, 29, 79}, {4, 23, 82}, {0, 20, 81}, {41, 84, 88}, {14, 89, 84}, {29, 86, 90}, {32, 91, 85}, {16, 85, 89}, {43, 88, 86}, {34, 87, 91}, {31, 90, 87}, {41, 88, 42}, {14, 15, 89}, {29, 90, 30}, {32, 33, 91}, {42, 88, 43}, {15, 16, 89}, {33, 34, 91}, {30, 90, 31}, {84, 89, 83}, {84, 83, 88}, {85, 83, 89}, {86, 88, 83}, {85, 91, 83}, {86, 83, 90}, {87, 90, 83}, {87, 83, 91}, {14, 84, 92}, {41, 92, 84}, {29, 94, 86}, {32, 85, 93}, {43, 86, 94}, {16, 93, 85}, {31, 87, 95}, {34, 95, 87}, {1, 43, 94}, {2, 93, 16}, {3, 92, 41}, {3, 14, 92}, {1, 94, 29}, {2, 32, 93}, {0, 31, 95}, {0, 95, 34}, {32, 97, 101}, {17, 102, 97}, {35, 103, 98}, {20, 99, 104}, {19, 98, 102}, {34, 101, 99}, {22, 104, 100}, {37, 100, 103}, {32, 101, 33}, {35, 36, 103}, {17, 18, 102}, {20, 104, 21}, {33, 101, 34}, {18, 19, 102}, {36, 37, 103}, {21, 104, 22}, {97, 96, 101}, {97, 102, 96}, {98, 96, 102}, {99, 101, 96}, {98, 103, 96}, {99, 96, 104}, {100, 96, 103}, {100, 104, 96}, {32, 105, 97}, {17, 97, 105}, {35, 98, 106}, {20, 107, 99}, {19, 106, 98}, {34, 99, 107}, {22, 100, 108}, {37, 108, 100}, {0, 34, 107}, {2, 105, 32}, {6, 106, 19}, {6, 35, 106}, {2, 17, 105}, {4, 108, 37}, {0, 107, 20}, {4, 22, 108}, {11, 110, 115}, {38, 114, 110}, {26, 116, 112}, {41, 111, 117}, {13, 115, 111}, {40, 112, 114}, {43, 117, 113}, {28, 113, 116}, {11, 115, 12}, {38, 39, 114}, {26, 27, 116}, {41, 117, 42}, {39, 40, 114}, {12, 115, 13}, {42, 117, 43}, {27, 28, 116}, {109, 110, 114}, {109, 115, 110}, {111, 115, 109}, {112, 109, 114}, {111, 109, 117}, {112, 116, 109}, {113, 109, 116}, {113, 117, 109}, {11, 118, 110}, {38, 110, 118}, {26, 112, 120}, {41, 119, 111}, {40, 120, 112}, {13, 111, 119}, {28, 121, 113}, {43, 113, 121}, {5, 120, 40}, {3, 13, 119}, {7, 38, 118}, {7, 118, 11}, {5, 26, 120}, {3, 119, 41}, {1, 121, 28}, {1, 43, 121}}
]
+ ]
(not_ghost:_tetrahedron_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_4
+ size : 341
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{124, 123, 125, 129}, {43, 86, 130, 88}, {70, 124, 129, 126}, {48, 77, 25, 52}, {31, 0, 81, 95}, {0, 107, 81, 95}, {126, 91, 87, 101}, {124, 70, 129, 125}, {43, 121, 113, 130}, {55, 100, 82, 108}, {100, 55, 82, 73}, {23, 55, 73, 82}, {71, 75, 125, 112}, {123, 44, 124, 125}, {43, 113, 117, 130}, {94, 43, 86, 130}, {122, 123, 128, 129}, {46, 10, 58, 50}, {99, 107, 81, 20}, {125, 112, 116, 109}, {79, 72, 28, 130}, {123, 122, 125, 129}, {67, 11, 7, 118}, {123, 127, 128, 129}, {124, 44, 49, 47}, {17, 65, 18, 102}, {76, 90, 30, 31}, {54, 10, 7, 67}, {9, 10, 50, 64}, {38, 54, 7, 118}, {123, 124, 127, 129}, {12, 115, 62, 13}, {97, 61, 102, 127}, {45, 53, 8, 69}, {38, 114, 39, 51}, {125, 75, 129, 116}, {122, 44, 123, 125}, {71, 70, 77, 124}, {114, 112, 125, 109}, {32, 93, 97, 85}, {53, 6, 8, 69}, {117, 128, 129, 109}, {63, 61, 16, 89}, {76, 90, 31, 74}, {61, 85, 16, 89}, {65, 123, 60, 98}, {55, 100, 47, 73}, {100, 47, 103, 37}, {96, 123, 103, 124}, {55, 23, 4, 82}, {78, 100, 22, 73}, {61, 85, 89, 127}, {61, 127, 89, 63}, {121, 43, 94, 130}, {108, 22, 82, 4}, {14, 92, 3, 66}, {78, 21, 104, 20}, {100, 78, 104, 124}, {14, 15, 89, 63}, {90, 126, 87, 74}, {90, 76, 126, 74}, {3, 13, 66, 119}, {108, 55, 4, 82}, {58, 11, 110, 62}, {11, 115, 110, 62}, {57, 123, 60, 65}, {122, 58, 110, 62}, {115, 122, 110, 62}, {117, 128, 88, 129}, {86, 129, 130, 88}, {70, 71, 125, 124}, {107, 0, 34, 95}, {122, 114, 125, 109}, {126, 86, 83, 129}, {92, 3, 66, 119}, {129, 86, 83, 88}, {128, 41, 119, 111}, {117, 128, 111, 41}, {11, 12, 115, 62}, {33, 32, 101, 91}, {70, 124, 126, 74}, {100, 124, 47, 73}, {96, 124, 126, 127}, {78, 70, 124, 73}, {90, 76, 30, 29}, {96, 123, 124, 127}, {15, 63, 16, 89}, {121, 79, 1, 28}, {76, 70, 126, 74}, {122, 114, 109, 110}, {129, 117, 130, 88}, {123, 44, 49, 124}, {26, 80, 5, 120}, {123, 65, 102, 98}, {57, 123, 127, 128}, {117, 128, 109, 111}, {70, 78, 124, 74}, {95, 107, 81, 87}, {55, 100, 37, 47}, {77, 24, 25, 52}, {100, 78, 22, 104}, {56, 71, 25, 48}, {14, 59, 89, 84}, {96, 100, 104, 124}, {2, 105, 68, 17}, {124, 123, 103, 49}, {123, 57, 60, 64}, {44, 124, 52, 47}, {71, 112, 48, 56}, {41, 117, 88, 42}, {99, 96, 126, 101}, {97, 85, 127, 101}, {34, 91, 101, 87}, {128, 127, 83, 129}, {126, 90, 83, 86}, {75, 71, 125, 70}, {99, 126, 74, 87}, {23, 55, 47, 73}, {100, 78, 124, 73}, {32, 91, 85, 101}, {57, 122, 62, 58}, {71, 77, 25, 48}, {70, 77, 124, 73}, {114, 38, 110, 51}, {114, 40, 39, 51}, {59, 14, 89, 63}, {53, 106, 35, 6}, {45, 123, 98, 60}, {99, 126, 87, 101}, {106, 53, 69, 6}, {46, 122, 110, 51}, {128, 122, 129, 109}, {124, 100, 47, 103}, {107, 99, 81, 87}, {125, 44, 48, 51}, {38, 46, 110, 51}, {44, 123, 49, 45}, {124, 47, 49, 103}, {36, 35, 49, 103}, {46, 122, 51, 44}, {54, 67, 7, 118}, {10, 64, 58, 50}, {122, 114, 51, 125}, {11, 58, 118, 67}, {44, 122, 51, 125}, {58, 11, 118, 110}, {22, 100, 82, 73}, {46, 122, 58, 110}, {108, 100, 82, 22}, {45, 60, 8, 50}, {99, 81, 74, 20}, {60, 45, 8, 69}, {75, 71, 26, 112}, {107, 0, 81, 20}, {126, 91, 83, 87}, {31, 90, 87, 74}, {34, 107, 95, 87}, {126, 96, 127, 101}, {91, 126, 127, 101}, {92, 14, 84, 66}, {105, 32, 2, 93}, {47, 49, 103, 37}, {115, 122, 109, 110}, {33, 91, 101, 34}, {49, 36, 103, 37}, {112, 71, 48, 125}, {59, 128, 89, 84}, {19, 65, 60, 98}, {124, 126, 127, 129}, {126, 91, 127, 83}, {31, 81, 74, 87}, {81, 99, 74, 87}, {117, 113, 129, 130}, {84, 128, 88, 41}, {113, 117, 129, 109}, {90, 76, 29, 86}, {65, 19, 102, 98}, {55, 100, 108, 37}, {96, 123, 102, 98}, {14, 59, 84, 66}, {100, 96, 103, 124}, {32, 105, 97, 93}, {99, 34, 101, 87}, {127, 126, 83, 129}, {94, 29, 130, 86}, {19, 106, 69, 6}, {128, 117, 88, 41}, {123, 96, 103, 98}, {46, 38, 110, 118}, {77, 23, 24, 52}, {19, 65, 102, 18}, {121, 79, 28, 130}, {46, 54, 38, 118}, {113, 121, 28, 130}, {108, 55, 37, 4}, {112, 75, 116, 26}, {56, 40, 5, 120}, {75, 27, 28, 116}, {127, 85, 89, 83}, {66, 59, 84, 128}, {85, 61, 97, 127}, {122, 125, 129, 109}, {26, 75, 116, 27}, {128, 129, 83, 88}, {122, 123, 57, 128}, {40, 112, 56, 48}, {80, 56, 25, 5}, {84, 128, 83, 88}, {91, 85, 127, 83}, {57, 61, 63, 127}, {123, 122, 64, 50}, {3, 92, 41, 119}, {44, 123, 45, 50}, {47, 124, 52, 73}, {79, 72, 130, 29}, {32, 85, 97, 101}, {2, 93, 16, 68}, {105, 93, 68, 97}, {97, 61, 68, 17}, {85, 91, 127, 101}, {96, 97, 127, 101}, {105, 97, 68, 17}, {124, 77, 52, 73}, {56, 71, 80, 25}, {60, 64, 8, 50}, {64, 9, 8, 50}, {65, 61, 102, 17}, {93, 105, 68, 2}, {61, 97, 102, 17}, {78, 21, 22, 104}, {23, 47, 52, 73}, {112, 40, 56, 120}, {80, 56, 5, 120}, {31, 95, 81, 87}, {99, 107, 34, 87}, {58, 46, 110, 118}, {43, 121, 94, 1}, {112, 75, 125, 116}, {122, 114, 110, 51}, {77, 23, 52, 73}, {90, 126, 83, 87}, {13, 66, 111, 59}, {111, 66, 13, 119}, {66, 128, 111, 59}, {111, 128, 66, 119}, {60, 50, 123, 64}, {123, 50, 60, 45}, {74, 104, 126, 99}, {104, 20, 74, 78}, {74, 20, 104, 99}, {45, 69, 106, 53}, {45, 106, 35, 53}, {35, 106, 45, 98}, {129, 116, 109, 125}, {109, 116, 129, 113}, {54, 10, 58, 46}, {58, 10, 54, 67}, {54, 58, 118, 46}, {118, 58, 54, 67}, {113, 129, 75, 116}, {28, 113, 75, 116}, {129, 75, 70, 72}, {129, 70, 75, 125}, {43, 117, 88, 130}, {88, 117, 43, 42}, {56, 112, 80, 71}, {56, 80, 112, 120}, {80, 112, 26, 71}, {80, 26, 112, 120}, {74, 124, 104, 78}, {74, 104, 124, 126}, {126, 104, 96, 99}, {96, 104, 126, 124}, {62, 128, 57, 59}, {57, 128, 62, 122}, {130, 29, 121, 79}, {121, 29, 130, 94}, {29, 1, 121, 79}, {121, 1, 29, 94}, {58, 50, 122, 46}, {122, 50, 58, 64}, {97, 93, 61, 85}, {97, 61, 93, 68}, {61, 93, 16, 85}, {61, 16, 93, 68}, {59, 89, 127, 63}, {127, 89, 59, 128}, {59, 127, 57, 63}, {57, 127, 59, 128}, {86, 76, 126, 90}, {86, 126, 76, 129}, {125, 51, 112, 114}, {112, 51, 125, 48}, {51, 40, 112, 114}, {112, 40, 51, 48}, {48, 124, 77, 52}, {44, 48, 124, 125}, {44, 124, 48, 52}, {61, 102, 123, 65}, {123, 102, 61, 127}, {61, 123, 57, 65}, {57, 123, 61, 127}, {106, 19, 60, 98}, {60, 19, 106, 69}, {106, 60, 45, 98}, {45, 60, 106, 69}, {122, 64, 57, 123}, {57, 64, 122, 58}, {76, 129, 70, 72}, {70, 129, 76, 126}, {84, 66, 119, 92}, {84, 119, 66, 128}, {41, 84, 119, 92}, {41, 119, 84, 128}, {124, 71, 48, 77}, {124, 48, 71, 125}, {128, 89, 83, 127}, {83, 89, 128, 84}, {111, 128, 62, 59}, {62, 111, 13, 115}, {13, 111, 62, 59}, {122, 50, 44, 46}, {44, 50, 122, 123}, {102, 127, 96, 97}, {96, 127, 102, 123}, {103, 123, 45, 49}, {103, 45, 123, 98}, {35, 103, 45, 49}, {35, 45, 103, 98}, {28, 130, 75, 113}, {75, 130, 28, 72}, {130, 129, 75, 113}, {75, 129, 130, 72}, {29, 130, 76, 72}, {76, 130, 29, 86}, {130, 129, 76, 72}, {76, 129, 130, 86}, {62, 111, 122, 128}, {122, 111, 62, 115}, {111, 109, 122, 128}, {122, 109, 111, 115}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 3
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 131
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
+ ]
(not_ghost:_triangle_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 240
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{45, 49, 35}, {45, 8, 50}, {46, 38, 51}, {23, 47, 52}, {46, 50, 10}, {37, 49, 47}, {25, 52, 48}, {40, 48, 51}, {35, 49, 36}, {38, 39, 51}, {8, 9, 50}, {23, 52, 24}, {36, 49, 37}, {9, 10, 50}, {39, 40, 51}, {24, 52, 25}, {45, 44, 49}, {45, 50, 44}, {46, 44, 50}, {44, 47, 49}, {46, 51, 44}, {44, 52, 47}, {44, 51, 48}, {44, 48, 52}, {45, 35, 53}, {45, 53, 8}, {46, 54, 38}, {23, 55, 47}, {46, 10, 54}, {37, 47, 55}, {25, 48, 56}, {40, 56, 48}, {4, 37, 55}, {6, 53, 35}, {7, 54, 10}, {7, 38, 54}, {6, 8, 53}, {5, 56, 40}, {4, 55, 23}, {5, 25, 56}, {11, 62, 58}, {14, 63, 59}, {8, 64, 60}, {17, 65, 61}, {10, 58, 64}, {19, 60, 65}, {13, 59, 62}, {16, 61, 63}, {14, 15, 63}, {11, 12, 62}, {17, 18, 65}, {8, 9, 64}, {12, 13, 62}, {15, 16, 63}, {9, 10, 64}, {18, 19, 65}, {58, 62, 57}, {59, 57, 62}, {59, 63, 57}, {61, 57, 63}, {58, 57, 64}, {60, 64, 57}, {60, 57, 65}, {61, 65, 57}, {11, 58, 67}, {14, 59, 66}, {8, 60, 69}, {17, 61, 68}, {10, 67, 58}, {19, 69, 60}, {13, 66, 59}, {16, 68, 61}, {2, 68, 16}, {3, 66, 13}, {6, 69, 19}, {7, 67, 10}, {7, 11, 67}, {3, 14, 66}, {6, 8, 69}, {2, 17, 68}, {26, 75, 71}, {29, 76, 72}, {23, 77, 73}, {20, 78, 74}, {25, 71, 77}, {22, 73, 78}, {28, 72, 75}, {31, 74, 76}, {29, 30, 76}, {26, 27, 75}, {20, 21, 78}, {23, 24, 77}, {27, 28, 75}, {30, 31, 76}, {24, 25, 77}, {21, 22, 78}, {71, 75, 70}, {72, 70, 75}, {72, 76, 70}, {70, 76, 74}, {71, 70, 77}, {70, 73, 77}, {70, 78, 73}, {70, 74, 78}, {26, 71, 80}, {29, 72, 79}, {23, 73, 82}, {20, 74, 81}, {25, 80, 71}, {22, 82, 73}, {28, 79, 72}, {31, 81, 74}, {0, 81, 31}, {1, 79, 28}, {4, 82, 22}, {5, 80, 25}, {5, 26, 80}, {1, 29, 79}, {4, 23, 82}, {0, 20, 81}, {41, 84, 88}, {14, 89, 84}, {29, 86, 90}, {32, 91, 85}, {16, 85, 89}, {43, 88, 86}, {34, 87, 91}, {31, 90, 87}, {41, 88, 42}, {14, 15, 89}, {29, 90, 30}, {32, 33, 91}, {42, 88, 43}, {15, 16, 89}, {33, 34, 91}, {30, 90, 31}, {84, 89, 83}, {84, 83, 88}, {85, 83, 89}, {86, 88, 83}, {85, 91, 83}, {86, 83, 90}, {87, 90, 83}, {87, 83, 91}, {14, 84, 92}, {41, 92, 84}, {29, 94, 86}, {32, 85, 93}, {43, 86, 94}, {16, 93, 85}, {31, 87, 95}, {34, 95, 87}, {1, 43, 94}, {2, 93, 16}, {3, 92, 41}, {3, 14, 92}, {1, 94, 29}, {2, 32, 93}, {0, 31, 95}, {0, 95, 34}, {32, 97, 101}, {17, 102, 97}, {35, 103, 98}, {20, 99, 104}, {19, 98, 102}, {34, 101, 99}, {22, 104, 100}, {37, 100, 103}, {32, 101, 33}, {35, 36, 103}, {17, 18, 102}, {20, 104, 21}, {33, 101, 34}, {18, 19, 102}, {36, 37, 103}, {21, 104, 22}, {97, 96, 101}, {97, 102, 96}, {98, 96, 102}, {99, 101, 96}, {98, 103, 96}, {99, 96, 104}, {100, 96, 103}, {100, 104, 96}, {32, 105, 97}, {17, 97, 105}, {35, 98, 106}, {20, 107, 99}, {19, 106, 98}, {34, 99, 107}, {22, 100, 108}, {37, 108, 100}, {0, 34, 107}, {2, 105, 32}, {6, 106, 19}, {6, 35, 106}, {2, 17, 105}, {4, 108, 37}, {0, 107, 20}, {4, 22, 108}, {11, 110, 115}, {38, 114, 110}, {26, 116, 112}, {41, 111, 117}, {13, 115, 111}, {40, 112, 114}, {43, 117, 113}, {28, 113, 116}, {11, 115, 12}, {38, 39, 114}, {26, 27, 116}, {41, 117, 42}, {39, 40, 114}, {12, 115, 13}, {42, 117, 43}, {27, 28, 116}, {109, 110, 114}, {109, 115, 110}, {111, 115, 109}, {112, 109, 114}, {111, 109, 117}, {112, 116, 109}, {113, 109, 116}, {113, 117, 109}, {11, 118, 110}, {38, 110, 118}, {26, 112, 120}, {41, 119, 111}, {40, 120, 112}, {13, 111, 119}, {28, 121, 113}, {43, 113, 121}, {5, 120, 40}, {3, 13, 119}, {7, 38, 118}, {7, 118, 11}, {5, 26, 120}, {3, 119, 41}, {1, 121, 28}, {1, 43, 121}}
]
+ ]
(not_ghost:_tetrahedron_4) [
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_4
+ size : 341
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{124, 123, 125, 129}, {43, 86, 130, 88}, {70, 124, 129, 126}, {48, 77, 25, 52}, {31, 0, 81, 95}, {0, 107, 81, 95}, {126, 91, 87, 101}, {124, 70, 129, 125}, {43, 121, 113, 130}, {55, 100, 82, 108}, {100, 55, 82, 73}, {23, 55, 73, 82}, {71, 75, 125, 112}, {123, 44, 124, 125}, {43, 113, 117, 130}, {94, 43, 86, 130}, {122, 123, 128, 129}, {46, 10, 58, 50}, {99, 107, 81, 20}, {125, 112, 116, 109}, {79, 72, 28, 130}, {123, 122, 125, 129}, {67, 11, 7, 118}, {123, 127, 128, 129}, {124, 44, 49, 47}, {17, 65, 18, 102}, {76, 90, 30, 31}, {54, 10, 7, 67}, {9, 10, 50, 64}, {38, 54, 7, 118}, {123, 124, 127, 129}, {12, 115, 62, 13}, {97, 61, 102, 127}, {45, 53, 8, 69}, {38, 114, 39, 51}, {125, 75, 129, 116}, {122, 44, 123, 125}, {71, 70, 77, 124}, {114, 112, 125, 109}, {32, 93, 97, 85}, {53, 6, 8, 69}, {117, 128, 129, 109}, {63, 61, 16, 89}, {76, 90, 31, 74}, {61, 85, 16, 89}, {65, 123, 60, 98}, {55, 100, 47, 73}, {100, 47, 103, 37}, {96, 123, 103, 124}, {55, 23, 4, 82}, {78, 100, 22, 73}, {61, 85, 89, 127}, {61, 127, 89, 63}, {121, 43, 94, 130}, {108, 22, 82, 4}, {14, 92, 3, 66}, {78, 21, 104, 20}, {100, 78, 104, 124}, {14, 15, 89, 63}, {90, 126, 87, 74}, {90, 76, 126, 74}, {3, 13, 66, 119}, {108, 55, 4, 82}, {58, 11, 110, 62}, {11, 115, 110, 62}, {57, 123, 60, 65}, {122, 58, 110, 62}, {115, 122, 110, 62}, {117, 128, 88, 129}, {86, 129, 130, 88}, {70, 71, 125, 124}, {107, 0, 34, 95}, {122, 114, 125, 109}, {126, 86, 83, 129}, {92, 3, 66, 119}, {129, 86, 83, 88}, {128, 41, 119, 111}, {117, 128, 111, 41}, {11, 12, 115, 62}, {33, 32, 101, 91}, {70, 124, 126, 74}, {100, 124, 47, 73}, {96, 124, 126, 127}, {78, 70, 124, 73}, {90, 76, 30, 29}, {96, 123, 124, 127}, {15, 63, 16, 89}, {121, 79, 1, 28}, {76, 70, 126, 74}, {122, 114, 109, 110}, {129, 117, 130, 88}, {123, 44, 49, 124}, {26, 80, 5, 120}, {123, 65, 102, 98}, {57, 123, 127, 128}, {117, 128, 109, 111}, {70, 78, 124, 74}, {95, 107, 81, 87}, {55, 100, 37, 47}, {77, 24, 25, 52}, {100, 78, 22, 104}, {56, 71, 25, 48}, {14, 59, 89, 84}, {96, 100, 104, 124}, {2, 105, 68, 17}, {124, 123, 103, 49}, {123, 57, 60, 64}, {44, 124, 52, 47}, {71, 112, 48, 56}, {41, 117, 88, 42}, {99, 96, 126, 101}, {97, 85, 127, 101}, {34, 91, 101, 87}, {128, 127, 83, 129}, {126, 90, 83, 86}, {75, 71, 125, 70}, {99, 126, 74, 87}, {23, 55, 47, 73}, {100, 78, 124, 73}, {32, 91, 85, 101}, {57, 122, 62, 58}, {71, 77, 25, 48}, {70, 77, 124, 73}, {114, 38, 110, 51}, {114, 40, 39, 51}, {59, 14, 89, 63}, {53, 106, 35, 6}, {45, 123, 98, 60}, {99, 126, 87, 101}, {106, 53, 69, 6}, {46, 122, 110, 51}, {128, 122, 129, 109}, {124, 100, 47, 103}, {107, 99, 81, 87}, {125, 44, 48, 51}, {38, 46, 110, 51}, {44, 123, 49, 45}, {124, 47, 49, 103}, {36, 35, 49, 103}, {46, 122, 51, 44}, {54, 67, 7, 118}, {10, 64, 58, 50}, {122, 114, 51, 125}, {11, 58, 118, 67}, {44, 122, 51, 125}, {58, 11, 118, 110}, {22, 100, 82, 73}, {46, 122, 58, 110}, {108, 100, 82, 22}, {45, 60, 8, 50}, {99, 81, 74, 20}, {60, 45, 8, 69}, {75, 71, 26, 112}, {107, 0, 81, 20}, {126, 91, 83, 87}, {31, 90, 87, 74}, {34, 107, 95, 87}, {126, 96, 127, 101}, {91, 126, 127, 101}, {92, 14, 84, 66}, {105, 32, 2, 93}, {47, 49, 103, 37}, {115, 122, 109, 110}, {33, 91, 101, 34}, {49, 36, 103, 37}, {112, 71, 48, 125}, {59, 128, 89, 84}, {19, 65, 60, 98}, {124, 126, 127, 129}, {126, 91, 127, 83}, {31, 81, 74, 87}, {81, 99, 74, 87}, {117, 113, 129, 130}, {84, 128, 88, 41}, {113, 117, 129, 109}, {90, 76, 29, 86}, {65, 19, 102, 98}, {55, 100, 108, 37}, {96, 123, 102, 98}, {14, 59, 84, 66}, {100, 96, 103, 124}, {32, 105, 97, 93}, {99, 34, 101, 87}, {127, 126, 83, 129}, {94, 29, 130, 86}, {19, 106, 69, 6}, {128, 117, 88, 41}, {123, 96, 103, 98}, {46, 38, 110, 118}, {77, 23, 24, 52}, {19, 65, 102, 18}, {121, 79, 28, 130}, {46, 54, 38, 118}, {113, 121, 28, 130}, {108, 55, 37, 4}, {112, 75, 116, 26}, {56, 40, 5, 120}, {75, 27, 28, 116}, {127, 85, 89, 83}, {66, 59, 84, 128}, {85, 61, 97, 127}, {122, 125, 129, 109}, {26, 75, 116, 27}, {128, 129, 83, 88}, {122, 123, 57, 128}, {40, 112, 56, 48}, {80, 56, 25, 5}, {84, 128, 83, 88}, {91, 85, 127, 83}, {57, 61, 63, 127}, {123, 122, 64, 50}, {3, 92, 41, 119}, {44, 123, 45, 50}, {47, 124, 52, 73}, {79, 72, 130, 29}, {32, 85, 97, 101}, {2, 93, 16, 68}, {105, 93, 68, 97}, {97, 61, 68, 17}, {85, 91, 127, 101}, {96, 97, 127, 101}, {105, 97, 68, 17}, {124, 77, 52, 73}, {56, 71, 80, 25}, {60, 64, 8, 50}, {64, 9, 8, 50}, {65, 61, 102, 17}, {93, 105, 68, 2}, {61, 97, 102, 17}, {78, 21, 22, 104}, {23, 47, 52, 73}, {112, 40, 56, 120}, {80, 56, 5, 120}, {31, 95, 81, 87}, {99, 107, 34, 87}, {58, 46, 110, 118}, {43, 121, 94, 1}, {112, 75, 125, 116}, {122, 114, 110, 51}, {77, 23, 52, 73}, {90, 126, 83, 87}, {13, 66, 111, 59}, {111, 66, 13, 119}, {66, 128, 111, 59}, {111, 128, 66, 119}, {60, 50, 123, 64}, {123, 50, 60, 45}, {74, 104, 126, 99}, {104, 20, 74, 78}, {74, 20, 104, 99}, {45, 69, 106, 53}, {45, 106, 35, 53}, {35, 106, 45, 98}, {129, 116, 109, 125}, {109, 116, 129, 113}, {54, 10, 58, 46}, {58, 10, 54, 67}, {54, 58, 118, 46}, {118, 58, 54, 67}, {113, 129, 75, 116}, {28, 113, 75, 116}, {129, 75, 70, 72}, {129, 70, 75, 125}, {43, 117, 88, 130}, {88, 117, 43, 42}, {56, 112, 80, 71}, {56, 80, 112, 120}, {80, 112, 26, 71}, {80, 26, 112, 120}, {74, 124, 104, 78}, {74, 104, 124, 126}, {126, 104, 96, 99}, {96, 104, 126, 124}, {62, 128, 57, 59}, {57, 128, 62, 122}, {130, 29, 121, 79}, {121, 29, 130, 94}, {29, 1, 121, 79}, {121, 1, 29, 94}, {58, 50, 122, 46}, {122, 50, 58, 64}, {97, 93, 61, 85}, {97, 61, 93, 68}, {61, 93, 16, 85}, {61, 16, 93, 68}, {59, 89, 127, 63}, {127, 89, 59, 128}, {59, 127, 57, 63}, {57, 127, 59, 128}, {86, 76, 126, 90}, {86, 126, 76, 129}, {125, 51, 112, 114}, {112, 51, 125, 48}, {51, 40, 112, 114}, {112, 40, 51, 48}, {48, 124, 77, 52}, {44, 48, 124, 125}, {44, 124, 48, 52}, {61, 102, 123, 65}, {123, 102, 61, 127}, {61, 123, 57, 65}, {57, 123, 61, 127}, {106, 19, 60, 98}, {60, 19, 106, 69}, {106, 60, 45, 98}, {45, 60, 106, 69}, {122, 64, 57, 123}, {57, 64, 122, 58}, {76, 129, 70, 72}, {70, 129, 76, 126}, {84, 66, 119, 92}, {84, 119, 66, 128}, {41, 84, 119, 92}, {41, 119, 84, 128}, {124, 71, 48, 77}, {124, 48, 71, 125}, {128, 89, 83, 127}, {83, 89, 128, 84}, {111, 128, 62, 59}, {62, 111, 13, 115}, {13, 111, 62, 59}, {122, 50, 44, 46}, {44, 50, 122, 123}, {102, 127, 96, 97}, {96, 127, 102, 123}, {103, 123, 45, 49}, {103, 45, 123, 98}, {35, 103, 45, 49}, {35, 45, 103, 98}, {28, 130, 75, 113}, {75, 130, 28, 72}, {130, 129, 75, 113}, {75, 129, 130, 72}, {29, 130, 76, 72}, {76, 130, 29, 86}, {130, 129, 76, 72}, {76, 129, 130, 86}, {62, 111, 122, 128}, {122, 111, 62, 115}, {111, 109, 122, 128}, {122, 109, 111, 115}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 8
+ + nb vectors : 7
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 48
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{6, 8}, {8, 9}, {9, 10}, {10, 7}, {7, 11}, {11, 12}, {12, 13}, {13, 3}, {3, 14}, {14, 15}, {15, 16}, {16, 2}, {2, 17}, {17, 18}, {18, 19}, {19, 6}, {0, 20}, {20, 21}, {21, 22}, {22, 4}, {4, 23}, {23, 24}, {24, 25}, {25, 5}, {5, 26}, {26, 27}, {27, 28}, {28, 1}, {1, 29}, {29, 30}, {30, 31}, {31, 0}, {2, 32}, {32, 33}, {33, 34}, {34, 0}, {6, 35}, {35, 36}, {36, 37}, {37, 4}, {7, 38}, {38, 39}, {39, 40}, {40, 5}, {3, 41}, {41, 42}, {42, 43}, {43, 1}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_tetrahedron_4
+ size : 341
+ nb_component : 4
+ allocated size : 2000
+ memory size : 31kB
+ values : {{124, 123, 125, 129}, {43, 86, 130, 88}, {70, 124, 129, 126}, {48, 77, 25, 52}, {31, 0, 81, 95}, {0, 107, 81, 95}, {126, 91, 87, 101}, {124, 70, 129, 125}, {43, 121, 113, 130}, {55, 100, 82, 108}, {100, 55, 82, 73}, {23, 55, 73, 82}, {71, 75, 125, 112}, {123, 44, 124, 125}, {43, 113, 117, 130}, {94, 43, 86, 130}, {122, 123, 128, 129}, {46, 10, 58, 50}, {99, 107, 81, 20}, {125, 112, 116, 109}, {79, 72, 28, 130}, {123, 122, 125, 129}, {67, 11, 7, 118}, {123, 127, 128, 129}, {124, 44, 49, 47}, {17, 65, 18, 102}, {76, 90, 30, 31}, {54, 10, 7, 67}, {9, 10, 50, 64}, {38, 54, 7, 118}, {123, 124, 127, 129}, {12, 115, 62, 13}, {97, 61, 102, 127}, {45, 53, 8, 69}, {38, 114, 39, 51}, {125, 75, 129, 116}, {122, 44, 123, 125}, {71, 70, 77, 124}, {114, 112, 125, 109}, {32, 93, 97, 85}, {53, 6, 8, 69}, {117, 128, 129, 109}, {63, 61, 16, 89}, {76, 90, 31, 74}, {61, 85, 16, 89}, {65, 123, 60, 98}, {55, 100, 47, 73}, {100, 47, 103, 37}, {96, 123, 103, 124}, {55, 23, 4, 82}, {78, 100, 22, 73}, {61, 85, 89, 127}, {61, 127, 89, 63}, {121, 43, 94, 130}, {108, 22, 82, 4}, {14, 92, 3, 66}, {78, 21, 104, 20}, {100, 78, 104, 124}, {14, 15, 89, 63}, {90, 126, 87, 74}, {90, 76, 126, 74}, {3, 13, 66, 119}, {108, 55, 4, 82}, {58, 11, 110, 62}, {11, 115, 110, 62}, {57, 123, 60, 65}, {122, 58, 110, 62}, {115, 122, 110, 62}, {117, 128, 88, 129}, {86, 129, 130, 88}, {70, 71, 125, 124}, {107, 0, 34, 95}, {122, 114, 125, 109}, {126, 86, 83, 129}, {92, 3, 66, 119}, {129, 86, 83, 88}, {128, 41, 119, 111}, {117, 128, 111, 41}, {11, 12, 115, 62}, {33, 32, 101, 91}, {70, 124, 126, 74}, {100, 124, 47, 73}, {96, 124, 126, 127}, {78, 70, 124, 73}, {90, 76, 30, 29}, {96, 123, 124, 127}, {15, 63, 16, 89}, {121, 79, 1, 28}, {76, 70, 126, 74}, {122, 114, 109, 110}, {129, 117, 130, 88}, {123, 44, 49, 124}, {26, 80, 5, 120}, {123, 65, 102, 98}, {57, 123, 127, 128}, {117, 128, 109, 111}, {70, 78, 124, 74}, {95, 107, 81, 87}, {55, 100, 37, 47}, {77, 24, 25, 52}, {100, 78, 22, 104}, {56, 71, 25, 48}, {14, 59, 89, 84}, {96, 100, 104, 124}, {2, 105, 68, 17}, {124, 123, 103, 49}, {123, 57, 60, 64}, {44, 124, 52, 47}, {71, 112, 48, 56}, {41, 117, 88, 42}, {99, 96, 126, 101}, {97, 85, 127, 101}, {34, 91, 101, 87}, {128, 127, 83, 129}, {126, 90, 83, 86}, {75, 71, 125, 70}, {99, 126, 74, 87}, {23, 55, 47, 73}, {100, 78, 124, 73}, {32, 91, 85, 101}, {57, 122, 62, 58}, {71, 77, 25, 48}, {70, 77, 124, 73}, {114, 38, 110, 51}, {114, 40, 39, 51}, {59, 14, 89, 63}, {53, 106, 35, 6}, {45, 123, 98, 60}, {99, 126, 87, 101}, {106, 53, 69, 6}, {46, 122, 110, 51}, {128, 122, 129, 109}, {124, 100, 47, 103}, {107, 99, 81, 87}, {125, 44, 48, 51}, {38, 46, 110, 51}, {44, 123, 49, 45}, {124, 47, 49, 103}, {36, 35, 49, 103}, {46, 122, 51, 44}, {54, 67, 7, 118}, {10, 64, 58, 50}, {122, 114, 51, 125}, {11, 58, 118, 67}, {44, 122, 51, 125}, {58, 11, 118, 110}, {22, 100, 82, 73}, {46, 122, 58, 110}, {108, 100, 82, 22}, {45, 60, 8, 50}, {99, 81, 74, 20}, {60, 45, 8, 69}, {75, 71, 26, 112}, {107, 0, 81, 20}, {126, 91, 83, 87}, {31, 90, 87, 74}, {34, 107, 95, 87}, {126, 96, 127, 101}, {91, 126, 127, 101}, {92, 14, 84, 66}, {105, 32, 2, 93}, {47, 49, 103, 37}, {115, 122, 109, 110}, {33, 91, 101, 34}, {49, 36, 103, 37}, {112, 71, 48, 125}, {59, 128, 89, 84}, {19, 65, 60, 98}, {124, 126, 127, 129}, {126, 91, 127, 83}, {31, 81, 74, 87}, {81, 99, 74, 87}, {117, 113, 129, 130}, {84, 128, 88, 41}, {113, 117, 129, 109}, {90, 76, 29, 86}, {65, 19, 102, 98}, {55, 100, 108, 37}, {96, 123, 102, 98}, {14, 59, 84, 66}, {100, 96, 103, 124}, {32, 105, 97, 93}, {99, 34, 101, 87}, {127, 126, 83, 129}, {94, 29, 130, 86}, {19, 106, 69, 6}, {128, 117, 88, 41}, {123, 96, 103, 98}, {46, 38, 110, 118}, {77, 23, 24, 52}, {19, 65, 102, 18}, {121, 79, 28, 130}, {46, 54, 38, 118}, {113, 121, 28, 130}, {108, 55, 37, 4}, {112, 75, 116, 26}, {56, 40, 5, 120}, {75, 27, 28, 116}, {127, 85, 89, 83}, {66, 59, 84, 128}, {85, 61, 97, 127}, {122, 125, 129, 109}, {26, 75, 116, 27}, {128, 129, 83, 88}, {122, 123, 57, 128}, {40, 112, 56, 48}, {80, 56, 25, 5}, {84, 128, 83, 88}, {91, 85, 127, 83}, {57, 61, 63, 127}, {123, 122, 64, 50}, {3, 92, 41, 119}, {44, 123, 45, 50}, {47, 124, 52, 73}, {79, 72, 130, 29}, {32, 85, 97, 101}, {2, 93, 16, 68}, {105, 93, 68, 97}, {97, 61, 68, 17}, {85, 91, 127, 101}, {96, 97, 127, 101}, {105, 97, 68, 17}, {124, 77, 52, 73}, {56, 71, 80, 25}, {60, 64, 8, 50}, {64, 9, 8, 50}, {65, 61, 102, 17}, {93, 105, 68, 2}, {61, 97, 102, 17}, {78, 21, 22, 104}, {23, 47, 52, 73}, {112, 40, 56, 120}, {80, 56, 5, 120}, {31, 95, 81, 87}, {99, 107, 34, 87}, {58, 46, 110, 118}, {43, 121, 94, 1}, {112, 75, 125, 116}, {122, 114, 110, 51}, {77, 23, 52, 73}, {90, 126, 83, 87}, {13, 66, 111, 59}, {111, 66, 13, 119}, {66, 128, 111, 59}, {111, 128, 66, 119}, {60, 50, 123, 64}, {123, 50, 60, 45}, {74, 104, 126, 99}, {104, 20, 74, 78}, {74, 20, 104, 99}, {45, 69, 106, 53}, {45, 106, 35, 53}, {35, 106, 45, 98}, {129, 116, 109, 125}, {109, 116, 129, 113}, {54, 10, 58, 46}, {58, 10, 54, 67}, {54, 58, 118, 46}, {118, 58, 54, 67}, {113, 129, 75, 116}, {28, 113, 75, 116}, {129, 75, 70, 72}, {129, 70, 75, 125}, {43, 117, 88, 130}, {88, 117, 43, 42}, {56, 112, 80, 71}, {56, 80, 112, 120}, {80, 112, 26, 71}, {80, 26, 112, 120}, {74, 124, 104, 78}, {74, 104, 124, 126}, {126, 104, 96, 99}, {96, 104, 126, 124}, {62, 128, 57, 59}, {57, 128, 62, 122}, {130, 29, 121, 79}, {121, 29, 130, 94}, {29, 1, 121, 79}, {121, 1, 29, 94}, {58, 50, 122, 46}, {122, 50, 58, 64}, {97, 93, 61, 85}, {97, 61, 93, 68}, {61, 93, 16, 85}, {61, 16, 93, 68}, {59, 89, 127, 63}, {127, 89, 59, 128}, {59, 127, 57, 63}, {57, 127, 59, 128}, {86, 76, 126, 90}, {86, 126, 76, 129}, {125, 51, 112, 114}, {112, 51, 125, 48}, {51, 40, 112, 114}, {112, 40, 51, 48}, {48, 124, 77, 52}, {44, 48, 124, 125}, {44, 124, 48, 52}, {61, 102, 123, 65}, {123, 102, 61, 127}, {61, 123, 57, 65}, {57, 123, 61, 127}, {106, 19, 60, 98}, {60, 19, 106, 69}, {106, 60, 45, 98}, {45, 60, 106, 69}, {122, 64, 57, 123}, {57, 64, 122, 58}, {76, 129, 70, 72}, {70, 129, 76, 126}, {84, 66, 119, 92}, {84, 119, 66, 128}, {41, 84, 119, 92}, {41, 119, 84, 128}, {124, 71, 48, 77}, {124, 48, 71, 125}, {128, 89, 83, 127}, {83, 89, 128, 84}, {111, 128, 62, 59}, {62, 111, 13, 115}, {13, 111, 62, 59}, {122, 50, 44, 46}, {44, 50, 122, 123}, {102, 127, 96, 97}, {96, 127, 102, 123}, {103, 123, 45, 49}, {103, 45, 123, 98}, {35, 103, 45, 49}, {35, 45, 103, 98}, {28, 130, 75, 113}, {75, 130, 28, 72}, {130, 129, 75, 113}, {75, 129, 130, 72}, {29, 130, 76, 72}, {76, 130, 29, 86}, {130, 129, 76, 72}, {76, 129, 130, 86}, {62, 111, 122, 128}, {122, 111, 62, 115}, {111, 109, 122, 128}, {122, 109, 111, 115}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 240
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{45, 49, 35}, {45, 8, 50}, {46, 38, 51}, {23, 47, 52}, {46, 50, 10}, {37, 49, 47}, {25, 52, 48}, {40, 48, 51}, {35, 49, 36}, {38, 39, 51}, {8, 9, 50}, {23, 52, 24}, {36, 49, 37}, {9, 10, 50}, {39, 40, 51}, {24, 52, 25}, {45, 44, 49}, {45, 50, 44}, {46, 44, 50}, {44, 47, 49}, {46, 51, 44}, {44, 52, 47}, {44, 51, 48}, {44, 48, 52}, {45, 35, 53}, {45, 53, 8}, {46, 54, 38}, {23, 55, 47}, {46, 10, 54}, {37, 47, 55}, {25, 48, 56}, {40, 56, 48}, {4, 37, 55}, {6, 53, 35}, {7, 54, 10}, {7, 38, 54}, {6, 8, 53}, {5, 56, 40}, {4, 55, 23}, {5, 25, 56}, {11, 62, 58}, {14, 63, 59}, {8, 64, 60}, {17, 65, 61}, {10, 58, 64}, {19, 60, 65}, {13, 59, 62}, {16, 61, 63}, {14, 15, 63}, {11, 12, 62}, {17, 18, 65}, {8, 9, 64}, {12, 13, 62}, {15, 16, 63}, {9, 10, 64}, {18, 19, 65}, {58, 62, 57}, {59, 57, 62}, {59, 63, 57}, {61, 57, 63}, {58, 57, 64}, {60, 64, 57}, {60, 57, 65}, {61, 65, 57}, {11, 58, 67}, {14, 59, 66}, {8, 60, 69}, {17, 61, 68}, {10, 67, 58}, {19, 69, 60}, {13, 66, 59}, {16, 68, 61}, {2, 68, 16}, {3, 66, 13}, {6, 69, 19}, {7, 67, 10}, {7, 11, 67}, {3, 14, 66}, {6, 8, 69}, {2, 17, 68}, {26, 75, 71}, {29, 76, 72}, {23, 77, 73}, {20, 78, 74}, {25, 71, 77}, {22, 73, 78}, {28, 72, 75}, {31, 74, 76}, {29, 30, 76}, {26, 27, 75}, {20, 21, 78}, {23, 24, 77}, {27, 28, 75}, {30, 31, 76}, {24, 25, 77}, {21, 22, 78}, {71, 75, 70}, {72, 70, 75}, {72, 76, 70}, {70, 76, 74}, {71, 70, 77}, {70, 73, 77}, {70, 78, 73}, {70, 74, 78}, {26, 71, 80}, {29, 72, 79}, {23, 73, 82}, {20, 74, 81}, {25, 80, 71}, {22, 82, 73}, {28, 79, 72}, {31, 81, 74}, {0, 81, 31}, {1, 79, 28}, {4, 82, 22}, {5, 80, 25}, {5, 26, 80}, {1, 29, 79}, {4, 23, 82}, {0, 20, 81}, {41, 84, 88}, {14, 89, 84}, {29, 86, 90}, {32, 91, 85}, {16, 85, 89}, {43, 88, 86}, {34, 87, 91}, {31, 90, 87}, {41, 88, 42}, {14, 15, 89}, {29, 90, 30}, {32, 33, 91}, {42, 88, 43}, {15, 16, 89}, {33, 34, 91}, {30, 90, 31}, {84, 89, 83}, {84, 83, 88}, {85, 83, 89}, {86, 88, 83}, {85, 91, 83}, {86, 83, 90}, {87, 90, 83}, {87, 83, 91}, {14, 84, 92}, {41, 92, 84}, {29, 94, 86}, {32, 85, 93}, {43, 86, 94}, {16, 93, 85}, {31, 87, 95}, {34, 95, 87}, {1, 43, 94}, {2, 93, 16}, {3, 92, 41}, {3, 14, 92}, {1, 94, 29}, {2, 32, 93}, {0, 31, 95}, {0, 95, 34}, {32, 97, 101}, {17, 102, 97}, {35, 103, 98}, {20, 99, 104}, {19, 98, 102}, {34, 101, 99}, {22, 104, 100}, {37, 100, 103}, {32, 101, 33}, {35, 36, 103}, {17, 18, 102}, {20, 104, 21}, {33, 101, 34}, {18, 19, 102}, {36, 37, 103}, {21, 104, 22}, {97, 96, 101}, {97, 102, 96}, {98, 96, 102}, {99, 101, 96}, {98, 103, 96}, {99, 96, 104}, {100, 96, 103}, {100, 104, 96}, {32, 105, 97}, {17, 97, 105}, {35, 98, 106}, {20, 107, 99}, {19, 106, 98}, {34, 99, 107}, {22, 100, 108}, {37, 108, 100}, {0, 34, 107}, {2, 105, 32}, {6, 106, 19}, {6, 35, 106}, {2, 17, 105}, {4, 108, 37}, {0, 107, 20}, {4, 22, 108}, {11, 110, 115}, {38, 114, 110}, {26, 116, 112}, {41, 111, 117}, {13, 115, 111}, {40, 112, 114}, {43, 117, 113}, {28, 113, 116}, {11, 115, 12}, {38, 39, 114}, {26, 27, 116}, {41, 117, 42}, {39, 40, 114}, {12, 115, 13}, {42, 117, 43}, {27, 28, 116}, {109, 110, 114}, {109, 115, 110}, {111, 115, 109}, {112, 109, 114}, {111, 109, 117}, {112, 116, 109}, {113, 109, 116}, {113, 117, 109}, {11, 118, 110}, {38, 110, 118}, {26, 112, 120}, {41, 119, 111}, {40, 120, 112}, {13, 111, 119}, {28, 121, 113}, {43, 113, 121}, {5, 120, 40}, {3, 13, 119}, {7, 38, 118}, {7, 118, 11}, {5, 26, 120}, {3, 119, 41}, {1, 121, 28}, {1, 43, 121}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 131
+ nb_component : 3
+ allocated size : 2000
+ memory size : 47kB
+ values : {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {0.25, 1, 1}, {0.5, 1, 1}, {0.75, 1, 1}, {1, 1, 0.75}, {1, 1, 0.5}, {1, 1, 0.25}, {0.75, 1, 0}, {0.5, 1, 0}, {0.25, 1, 0}, {0, 1, 0.25}, {0, 1, 0.5}, {0, 1, 0.75}, {0, 0, 0.25}, {0, 0, 0.5}, {0, 0, 0.75}, {0.25, 0, 1}, {0.5, 0, 1}, {0.75, 0, 1}, {1, 0, 0.75}, {1, 0, 0.5}, {1, 0, 0.25}, {0.75, 0, 0}, {0.5, 0, 0}, {0.25, 0, 0}, {0, 0.75, 0}, {0, 0.5, 0}, {0, 0.25, 0}, {0, 0.75, 1}, {0, 0.5, 1}, {0, 0.25, 1}, {1, 0.75, 1}, {1, 0.5, 1}, {1, 0.25, 1}, {1, 0.75, 0}, {1, 0.5, 0}, {1, 0.25, 0}, {0.5, 0.502191, 1}, {0.278522, 0.721478, 1}, {0.721478, 0.721478, 1}, {0.278522, 0.278765, 1}, {0.721478, 0.278765, 1}, {0.190862, 0.50027, 1}, {0.5, 0.809381, 1}, {0.809138, 0.50027, 1}, {0.5, 0.19116, 1}, {0.141906, 0.858094, 1}, {0.858094, 0.858094, 1}, {0.141906, 0.141947, 1}, {0.858094, 0.141947, 1}, {0.5, 1, 0.5}, {0.721478, 1, 0.721478}, {0.721478, 1, 0.278522}, {0.278522, 1, 0.721478}, {0.278522, 1, 0.278522}, {0.809138, 1, 0.5}, {0.5, 1, 0.190862}, {0.5, 1, 0.809138}, {0.190862, 1, 0.5}, {0.858094, 1, 0.141906}, {0.858094, 1, 0.858094}, {0.141906, 1, 0.141906}, {0.141906, 1, 0.858094}, {0.502191, 0, 0.5}, {0.721478, 0, 0.721478}, {0.721478, 0, 0.278522}, {0.278765, 0, 0.721478}, {0.278765, 0, 0.278522}, {0.809381, 0, 0.5}, {0.50027, 0, 0.190862}, {0.50027, 0, 0.809138}, {0.19116, 0, 0.5}, {0.858094, 0, 0.141906}, {0.858094, 0, 0.858094}, {0.141947, 0, 0.141906}, {0.141947, 0, 0.858094}, {0.5, 0.5, 0}, {0.721478, 0.721478, 0}, {0.278522, 0.721478, 0}, {0.721478, 0.278522, 0}, {0.278522, 0.278522, 0}, {0.809138, 0.5, 0}, {0.5, 0.809138, 0}, {0.5, 0.190862, 0}, {0.190862, 0.5, 0}, {0.858094, 0.858094, 0}, {0.141906, 0.858094, 0}, {0.858094, 0.141906, 0}, {0.141906, 0.141906, 0}, {0, 0.5, 0.5}, {0, 0.721478, 0.278522}, {0, 0.721478, 0.721478}, {0, 0.278522, 0.278522}, {0, 0.278522, 0.721478}, {0, 0.5, 0.190862}, {0, 0.809138, 0.5}, {0, 0.5, 0.809138}, {0, 0.190862, 0.5}, {0, 0.858094, 0.141906}, {0, 0.858094, 0.858094}, {0, 0.141906, 0.141906}, {0, 0.141906, 0.858094}, {1, 0.498905, 0.498905}, {1, 0.721356, 0.721356}, {1, 0.721478, 0.278522}, {1, 0.278522, 0.721478}, {1, 0.278522, 0.278522}, {1, 0.499865, 0.809003}, {1, 0.809003, 0.499865}, {1, 0.19074, 0.499878}, {1, 0.499878, 0.19074}, {1, 0.858073, 0.858073}, {1, 0.858094, 0.141906}, {1, 0.141906, 0.858094}, {1, 0.141906, 0.141906}, {0.714627, 0.67977, 0.65326}, {0.384087, 0.668738, 0.619989}, {0.423487, 0.335588, 0.588613}, {0.764413, 0.335588, 0.588613}, {0.423487, 0.335588, 0.247688}, {0.423487, 0.676512, 0.247688}, {0.764413, 0.676512, 0.247688}, {0.682024, 0.369799, 0.338757}, {0.815437, 0.205866, 0.186526}}
]
Vector<double> [
+ id : my_fem:jacobians:_tetrahedron_4
+ size : 341
+ nb_component : 1
+ allocated size : 341
+ memory size : 2.7kB
+ values : {{0.00479073}, {0.00199542}, {0.00508286}, {0.00204347}, {0.00083906}, {0.00095268}, {0.00292548}, {0.00493659}, {0.00105059}, {0.00091729}, {0.00180199}, {0.000808556}, {0.00355095}, {0.00749049}, {0.00197348}, {0.00106177}, {0.00690231}, {0.00297989}, {0.000808006}, {0.0026847}, {0.00117185}, {0.00474423}, {0.00083918}, {0.00644814}, {0.00470655}, {0.00151785}, {0.00151785}, {0.00083906}, {0.00151591}, {0.00083918}, {0.00487222}, {0.00151892}, {0.00469074}, {0.000807775}, {0.00151892}, {0.00334996}, {0.00767187}, {0.00381537}, {0.00269174}, {0.00158543}, {0.00083906}, {0.00445593}, {0.0020418}, {0.00204272}, {0.00297957}, {0.00490403}, {0.00353679}, {0.00297957}, {0.00693536}, {0.000839299}, {0.002982}, {0.00359869}, {0.00246606}, {0.000800576}, {0.000839299}, {0.00083906}, {0.00152021}, {0.00375734}, {0.00151785}, {0.00372221}, {0.00255222}, {0.00083906}, {0.000952816}, {0.00298087}, {0.00204311}, {0.0037801}, {0.00363992}, {0.00249551}, {0.00382669}, {0.0020549}, {0.00422323}, {0.00083906}, {0.00460922}, {0.00348647}, {0.000952544}, {0.00386563}, {0.00134104}, {0.00252173}, {0.00151892}, {0.00151785}, {0.00426036}, {0.00793308}, {0.00820365}, {0.00385292}, {0.00151785}, {0.00860188}, {0.00151785}, {0.00083906}, {0.00383935}, {0.00327077}, {0.00361116}, {0.00679806}, {0.00083906}, {0.00336058}, {0.00695467}, {0.0026847}, {0.00385292}, {0.000917159}, {0.00158651}, {0.00152021}, {0.00204498}, {0.00158671}, {0.00297957}, {0.00483251}, {0.00083906}, {0.00645464}, {0.0037801}, {0.00472318}, {0.00353524}, {0.00151688}, {0.00483251}, {0.00421987}, {0.0020418}, {0.00523002}, {0.00282642}, {0.00380534}, {0.00581509}, {0.00158671}, {0.00548144}, {0.0020418}, {0.00365422}, {0.00297867}, {0.00383935}, {0.00204311}, {0.00151892}, {0.0020418}, {0.00083906}, {0.00695993}, {0.00426911}, {0.000952544}, {0.00380007}, {0.00640143}, {0.00595062}, {0.00180012}, {0.00470655}, {0.00297737}, {0.00432043}, {0.00408022}, {0.00151785}, {0.00394217}, {0.00095268}, {0.0020392}, {0.00491487}, {0.000807891}, {0.00673925}, {0.00158661}, {0.00158671}, {0.00511093}, {0.000808006}, {0.00297989}, {0.00158671}, {0.00158543}, {0.00297989}, {0.000839299}, {0.00282642}, {0.00297957}, {0.000807775}, {0.00743876}, {0.00520896}, {0.000807775}, {0.00083906}, {0.00204272}, {0.00327077}, {0.00151785}, {0.00151785}, {0.00550306}, {0.00283408}, {0.00297957}, {0.00500828}, {0.00435075}, {0.00158651}, {0.00353524}, {0.00207381}, {0.00264971}, {0.00361055}, {0.0020418}, {0.0020418}, {0.000807775}, {0.0043829}, {0.00158543}, {0.00483251}, {0.000807775}, {0.00297957}, {0.00403452}, {0.00106177}, {0.00083906}, {0.00339716}, {0.0043829}, {0.00158661}, {0.00152021}, {0.00151785}, {0.00078511}, {0.000807891}, {0.00105059}, {0.00083906}, {0.00204038}, {0.00083906}, {0.00151494}, {0.00282642}, {0.00212821}, {0.005658}, {0.0043455}, {0.00151494}, {0.00474239}, {0.00744101}, {0.00158651}, {0.000839299}, {0.00282642}, {0.00282642}, {0.00369139}, {0.00530618}, {0.00083906}, {0.00430907}, {0.00540547}, {0.00117185}, {0.00297957}, {0.00083906}, {0.000917028}, {0.00158543}, {0.00289174}, {0.00483251}, {0.000807775}, {0.00370776}, {0.000808006}, {0.0020392}, {0.00151591}, {0.0020418}, {0.000952544}, {0.00297957}, {0.00152021}, {0.002982}, {0.000807775}, {0.00095268}, {0.000807775}, {0.00158543}, {0.00353524}, {0.00083906}, {0.00243234}, {0.00260951}, {0.0020459}, {0.00282642}, {0.00158543}, {0.000807775}, {0.00197474}, {0.00100612}, {0.00334194}, {0.00487991}, {0.00481554}, {0.00204347}, {0.00298217}, {0.000917028}, {0.000807775}, {0.00158543}, {0.00339935}, {0.00361055}, {0.00158543}, {0.000807775}, {0.00180012}, {0.000917159}, {0.00304689}, {0.00203823}, {0.00419327}, {0.00444812}, {0.00321724}, {0.00151688}, {0.00180012}, {0.000917159}, {0.00158543}, {0.000807775}, {0.00425176}, {0.0068851}, {0.00483251}, {0.00743876}, {0.00369139}, {0.00671734}, {0.000948173}, {0.000932706}, {0.00083906}, {0.00083906}, {0.00402163}, {0.0027552}, {0.00353262}, {0.00179986}, {0.00158543}, {0.000807775}, {0.00289277}, {0.00478507}, {0.00369139}, {0.00407095}, {0.002979}, {0.00490513}, {0.00275294}, {0.00402124}, {0.00204048}, {0.00298091}, {0.00413525}, {0.00522266}, {0.00472318}, {0.00402975}, {0.00676786}, {0.0037801}, {0.00496655}, {0.00158543}, {0.000807775}, {0.00353262}, {0.00179986}, {0.00557565}, {0.00365422}, {0.00420433}, {0.0045964}, {0.000917028}, {0.00243872}, {0.000807775}, {0.001568}, {0.00602516}, {0.0074155}, {0.00435075}, {0.00282642}, {0.00275892}, {0.00204048}, {0.00297957}, {0.0039318}, {0.00623354}, {0.00483251}, {0.00761117}, {0.00356241}, {0.00520686}, {0.0020394}, {0.00297957}, {0.00289006}, {0.00220255}, {0.00347634}, {0.00226248}, {0.00219973}, {0.00292886}, {0.00233772}, {0.00353589}, {0.00497258}, {0.00334717}, {0.00371176}, {0.00326057}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_tetrahedron_4
- + size : 1
- + nb_component : 3
- + allocated size : 2000
- + memory size : 47kB
- + values : {{0.25, 0.25, 0.25}}
- ]
Vector<double> [
+ id : my_fem:shapes:_tetrahedron_4
+ size : 341
+ nb_component : 4
+ allocated size : 341
+ memory size : 11kB
+ values : {{0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}, {0.25, 0.25, 0.25, 0.25}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_tetrahedron_4
+ size : 341
+ nb_component : 12
+ allocated size : 341
+ memory size : 32kB
- + values : {{-2.9332, -3.39585, 0.502232, 0, 2.96343, 0.405765, 2.9332, 0.0602741, 3.04336, 0, 0.372141, -3.95136}, {3.45053, -1.3657, -2.27011, -3.89489, -2.97354, -4.55745, 0, 0, 5.36117, 0.444357, 4.33924, 1.46638}, {0.382444, -2.89016, 0, -1.28516, 1.90393, 2.9332, 3.7515, 0.879817, 0, -2.84879, 0.106407, -2.9332}, {2.97575, 3.89171, -3.89356, 0, 0, -5.23939, 1.36374, -3.44772, 3.45502, -4.3395, -0.443995, 5.67793}, {4, -4, -4.00114, -4, -3.0469, -3.04575, 0, 0, 7.0469, 0, 7.0469, 0}, {-3.52295, -3.52395, -3.52295, -3.52295, 3.52295, 3.52395, 3.52295, -3.52295, 3.52295, 3.52295, 3.52395, -3.52395}, {2.40825, 0.953172, 2.40825, 2.50475, 5.50649, -2.73463, -1.78774, -5.2227, -1.78774, -3.12526, -1.23696, 2.11413}, {-2.9332, 1.96549, 1.23633, 0, -2.87587, -0.393776, 0, 1.01994, -3.86266, 2.9332, -0.10956, 3.0201}, {0.419151, 4, -4, 2.79404, -8.15492, 0.835098, 2.20503, 4.15492, 3.1649, -5.41822, 0, 0}, {3.52244, 3.52345, 3.52345, 3.65886, 3.65991, -3.65991, 3.52345, -3.52244, -3.52244, -10.7048, -3.66092, 3.6589}, {-1.79359, 1.79523, -1.79625, 3.5193, 3.52237, 3.52452, -7.1749, -7.18117, 0.13427, 5.44919, 1.86357, -1.86254}, {3.99728, -4.00093, 4.00321, 0, 7.04488, 0, 4.15209, 3.16185, -3.16156, -8.14937, -6.2058, -0.841653}, {-2.33012, -1.26027, 3.59031, 1.73691, -1.73691, -3.82575, -2.89531, 2.89531, -1.14913, 3.48852, 0.101865, 1.38457}, {0, 3.12067, -1.26381, 0, -0.238012, 2.52719, -2.9332, -3.29673, -0.550156, 2.9332, 0.414072, -0.713225}, {2.25842, -1.36825, -3.45027, 4.64721, -2.97306, 3.89484, -1.48742, 4.3413, -0.444568, -5.41822, 0, 0}, {-0.835098, -8.15492, -2.75583, 4, 4, -0.45685, -3.1649, 4.15492, -2.14849, 0, 0, 5.36117}, {2.74019, 0.0956852, 2.80125, -3.01086, 0.697365, -0.375193, 0.165245, 2.48398, -2.46532, 0.105421, -3.27703, 0.0392613}, {2.96943, -3.89447, -0.304082, 1.36934, 3.45016, 3.45016, 0, 0, -3.59038, -4.33877, 0.444309, 0.444309}, {3.164, 3.1649, 4.15492, -6.21002, 0.835098, -8.15492, 7.04488, 0, 0, -3.99886, -4, 4}, {-4.24471, 0, -2.22045e-16, 1.70632, 0.0142405, 4.507, 1.02929, -3.25521, -3.22316, 1.5091, 3.24097, -1.28383}, {-0.835098, -3.26304, -8.15492, -3.1649, -1.55632, 4.15492, 4, -0.0381551, 4, 0, 4.85752, 0}, {-3.09877, -0.624101, 0.936346, 2.96195, 3.42913, -0.507155, -0.240412, -3.6139, 3.58676, 0.377232, 0.808874, -4.01595}, {-7.0469, 0, 0, 4, 4, -4, 3.0469, 3.04589, 4, 0, -7.04589, 0}, {0, 0.802501, 2.70275, -2.9332, -0.102425, -2.99855, 2.9332, 2.58063, 0.364309, 0, -3.28071, -0.0685083}, {4.16334e-16, -8.88178e-16, -2.4308, 3.22687, 1.27702, 1.31348, -3.25484, 3.22647, -0.701298, 0.0279753, -4.5035, 1.81862}, {1.62741e-11, -1.54712e-11, -4, 5.23939, 0, 0, -5.23939, 5.23939, 4, 0, -5.23939, 0}, {0, -7.13135e-16, 5.23939, 0, 5.23939, 0, 4, -5.23939, -5.24506, -4, -2.28255e-11, 0.00566839}, {0, -7.0469, 8.88178e-16, -4, 4, 4, 4, 3.0469, 3.0469, 0, 0, -7.0469}, {-4, 5.24608, 5.23939, 4, 1.55241e-11, 1.5915e-11, 0, -5.24608, 0, 0, 0, -5.23939}, {4, -4, 4, -7.0469, 0, 0, 3.0469, 4, 3.04589, 0, 0, -7.04589}, {2.51489, 3.01511, 3.01511, -3.88194, -3.41534, -0.482145, -2.88414, -0.0592661, -2.99246, 4.25119, 0.459499, 0.459499}, {5.23939, 5.23285, 4, 0, -5.23568, 0, -5.23939, 0, 0, 2.32699e-11, 0.00283219, -4}, {-2.75474, -0.835644, -4.18437, 0.257813, 3.33257, -1.31901, 0.305142, -0.305142, 4.63589, 2.19179, -2.19179, 0.867496}, {4.15492, -3.1649, -3.1649, -8.15492, -0.835098, 6.2118, 4, 4, 4, 0, 0, -7.0469}, {0.00566839, 4, -0.00283219, 0, 0, -5.23568, 5.23372, -4, 5.23851, -5.23939, 0, 0}, {-1.52791, 1.52994, 4.71561, -1.9516, -3.29226, 0.192739, -0.842937, 0.840096, -3.60933, 4.32244, 0.92222, -1.29903}, {2.86385, 3.21879, 0.53715, -0.233278, -0.500202, 2.48343, -2.84203, -0.0735906, -1.79686, 0.211453, -2.645, -1.22372}, {4.53179, 1.05538, 0.0281511, -1.28505, -2.42496, -3.24278, -3.24675, -1.61027, 3.21463, 0, 2.97985, 0}, {-1.02659, 3.24669, 3.21473, 3.14112, -4.52341, 0.014006, -4.24471, 0, 0, 2.13019, 1.27672, -3.22874}, {-4, -4, -4, 0.835098, 8.15492, 0.835098, 0, 0, 3.59038, 3.1649, -4.15492, -0.425481}, {0, -7.0469, 0, -4, 3.0469, 3.0469, 4, 4, 4, 0, 0, -7.0469}, {2.27701, -1.57663, -3.25, -1.49395, 3.66511, 0.0115805, -2.03803, -2.71547, -0.00857994, 1.25497, 0.626993, 3.247}, {4.33924, 5.68374, -0.444357, -2.97354, -3.89489, 3.89489, -1.3657, 3.45053, -3.45053, 0, -5.23939, 0}, {4.33729, -5.68119, -0.447948, 0, 5.23939, 0, -1.36509, -3.45133, -3.4494, -2.97221, 3.89314, 3.89735}, {0, 4.44089e-16, 3.59038, -2.97354, -3.89489, 0.304504, -1.3657, 3.45053, -3.45053, 4.33924, 0.444357, -0.444357}, {-0.960671, 0.960671, -4.13489, 2.09645, -2.09645, -0.829765, 1.35765, 2.23273, 3.97777, -2.49343, -1.09695, 0.986887}, {-3.6556, -3.65879, 3.65879, -1.79574, 1.79308, -1.79621, 3.6556, 3.65879, -0.0684102, 1.79574, -1.79308, -1.79417}, {0.307102, -2.97354, -3.89489, 3.59038, 0, 0, -0.44815, 4.33924, 0.444357, -3.44934, -1.3657, 3.45053}, {-1.64157, 0.110512, -3.2348, 1.22142, 3.1461, -3.07269e-12, -0.833409, -0.40322, 3.2348, 1.25356, -2.85339, 2.78682e-12}, {0, 7.04488, 0, 4, -3.99886, 4.00114, -4, -3.04603, 3.04575, 0, 0, -7.0469}, {-0.443995, -0.444383, -4.3395, 0, 3.59038, 0, -3.44772, -3.45073, 1.36374, 3.89171, 0.30473, 2.97575}, {-1.00556, 2.54062, 1.04976, -3.90018, -1.55367, -2.03672, 3.775, 1.86995, -1.86995, 1.13075, -2.8569, 2.8569}, {-4.90575, 0.986953, -0.986953, 1.13075, -2.8569, 2.8569, -1.91647, -0.397296, -4.84209, 5.69148, 2.26724, 2.97215}, {4.19746, -5.51046, 2.84944, 1.88954, 6.77064, -1.88954, -2.89363, -5.45245, -4.15327, -3.19336, 4.19228, 3.19336}, {8.88178e-16, 7.0469, 0, -3.99886, -4, -4, 7.04488, 0, 0, -3.04603, -3.0469, 4}, {-4, 4, -4, 0, -7.0469, 0, 4, 3.0469, -3.0469, 0, 0, 7.0469}, {5.23123, 5.81945e-16, 0, -5.23123, -5.23939, 4, 0, 5.23939, 0, 1.6327e-11, 1.54706e-11, -4}, {-0.750211, -0.75138, 4.81251, 1.07726, -4.16045, 1.64668, -2.20213, 3.03383, -5.71589, 1.87508, 1.878, -0.743302}, {4, -2.28271e-11, 2.36273e-11, -4, 5.23939, -5.23939, 0, -5.23939, 0, 0, 0, 5.23939}, {3.80063, -1.80519, -1.80851, 1.09322, 2.76209, 2.76114, -3.92166, 1.49941, -2.08755, -0.972194, -2.45631, 1.13492}, {-1.92104, 0.382436, -4.85423, 5.71942, -2.18677, 3.04452, 1.09257, 2.76234, 2.76079, -4.89095, -0.95801, -0.95108}, {3.0469, 3.0469, -4, 4, 4, 4, -7.0469, 0, 0, 0, -7.0469, 0}, {-3.52345, 3.52244, -3.52446, 3.52244, 3.52345, 3.52345, -3.52244, -3.52345, 3.52345, 3.52345, -3.52244, -3.52244}, {-3.89489, -0.305669, 2.97354, 3.45053, 3.44843, 1.3657, 0, -3.58881, 0, 0.444357, 0.446058, -4.33924}, {3.45195, 3.44854, 1.36462, 5.6826, 0.445968, -4.33837, -3.89516, -3.89451, 2.97375, -5.23939, 0, 0}, {3.2348, 1.4231, -1.28032, 0, -3.01876, 0, -3.04119e-12, 1.63545, 4.51512, -3.2348, -0.0397999, -3.2348}, {-2.82577, -2.82405, -1.11842, -1.29033, 2.2973, 4.00441, 3.2475, -0.343291, 1.28534, 0.868592, 0.870035, -4.17133}, {1.88206, -3.35082, -5.84079, -2.82615, -2.82336, -1.11723, 1.95788, 1.95275, 5.28756, -1.01379, 4.22143, 1.67046}, {4.00887, -0.711384, 1.23085, -1.07985, 3.872, 1.08301, -1.46134, -0.730093, -3.78093, -1.46768, -2.43052, 1.46707}, {-6.11172, -2.09613, -3.09899, -3.35065, 1.32617, 2.2044, 6.08523, -2.4085, 1.35769, 3.37714, 3.17846, -0.4631}, {0, -1.78762, -4.51512, 0, -1.19223, 4.51512, 2.9332, 1.45476, -2.90418, -2.9332, 1.52509, 2.90418}, {-8.88178e-16, 0, 7.0469, -3.0469, -4, -3.0469, -4, 4, -4, 7.0469, 0, 0}, {-1.83438, 2.64163, -0.00817939, 1.49822, -0.389218, 3.22599, -2.02268, -3.19987, 0.00990788, 2.35884, 0.947457, -3.22772}, {-3.58659, -3.58659, 0.548674, 1.12084, -3.39428, -1.90685, -0.156642, 4.35848, -1.19262, 2.6224, 2.6224, 2.5508}, {-3.52345, -3.52345, -3.52345, 3.52345, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345}, {4.44089e-16, 0, 2.95197, 4.40828e-12, -4.51512, -1.73539, -3.2348, 1.28032, -0.721726, 3.2348, 3.2348, -0.494857}, {-4.24471, 1.77636e-15, -4.44089e-16, 1.287, -4, -4, -1.6658, 8.15492, 0.835098, 4.62351, -4.15492, 3.1649}, {0.885858, -4.33672, -0.444099, -4.24471, 0, 0, 3.16813, 2.96992, 3.89452, 0.190724, 1.3668, -3.45042}, {-2.32703e-11, -0.00283219, 4, 5.23939, 5.23851, -4, 0, -5.23568, 0, -5.23939, 0, 0}, {-5.23939, -4, -5.23939, 2.28255e-11, 4, 2.28255e-11, 0, 0, 5.23939, 5.23939, 0, 0}, {4.47576, -1.93017, 0, -2.90763, 1.52342, 2.9332, 2.90763, 1.45643, -2.9332, -4.47576, -1.04967, 0}, {-2.74183, 0.846161, -0.849296, 1.62977, 1.63119, -1.63119, 0.777461, 0.778141, 2.81224, 0.334598, -3.25549, -0.331753}, {-2.36134, 0, 0, 1.74759, 0, 2.9332, -0.525012, -2.9332, -2.9332, 1.13877, 2.9332, 0}, {-3.21511, 0.1024, -3.24338, 3.21511, -1.89002, -1.27174, 0, 2.97985, 0, -3.36919e-12, -1.19223, 4.51512}, {0, 5.23939, 4.12864e-16, 0, 0, 5.23939, -4, -5.23939, -5.23372, 4, 2.28255e-11, -0.00566839}, {-2.40793, -0.260266, -0.260266, 0.500707, 2.7974, 2.7974, 1.23528, -2.86224, 0.0709597, 0.671946, 0.325101, -2.6081}, {4, 5.23939, -5.23939, 0, 0, 5.23939, -4, 2.28278e-11, -2.36282e-11, 0, -5.23939, 0}, {-4.44089e-16, 7.0469, 0, -7.0469, 0, 0, 3.0469, -3.0469, -4, 4, -4, 4}, {3.22647, -1.69048, -3.25484, 1.27702, -0.254226, 3.22687, 0, 2.97985, 0, -4.5035, -1.03514, 0.0279753}, {-3.50419, 0, 2.04697e-16, -0.300503, -3.2348, 3.2348, 0.9543, -1.27452, -3.22084, 2.85039, 4.50932, -0.0139624}, {-2.58829, 1.58763, 2.59096, 3.47782, 1.19279, 1.76345, 1.14429, -4.10309, -1.14764, -2.03382, 1.32267, -3.20677}, {-0.0193683, 3.11794, -1.2591, 3.23344, 0.218445, 1.74096, -3.23197, -0.456248, 0.785873, 0.0178911, -2.88013, -1.26773}, {4, -4, -4, -7.0469, 0, 0, 3.0469, -3.0469, 4, 0, 7.0469, 0}, {2.09645, -2.09645, -0.829765, 1.02053, 4.21886, 1.6698, -1.9812, -3.25819, -5.80469, -1.13578, 1.13578, 4.96465}, {0, 3.04177, 0.0635186, 0, -2.06144, 2.64295, -2.9332, -0.059438, -2.99766, 2.9332, -0.920892, 0.29119}, {1.04124, -3.22316, -3.25521, -4.24471, 0, 0, -0.179146, -1.28383, 3.24097, 3.38261, 4.507, 0.0142405}, {3.21511, -2.56163, 1.27174, -3.21511, -1.61044, 3.24338, 0, 2.97985, 0, 3.36919e-12, 1.19223, -4.51512}, {-3.65939, -3.66043, -10.7063, -3.52295, 3.52295, 3.52395, 3.52295, -3.52295, 3.52295, 3.65939, 3.66043, 3.65939}, {0.841653, -8.14937, -0.83453, 0, 0, -3.59038, -4.00321, 3.99728, 3.99972, 3.16156, 4.15209, 0.425192}, {0, -8.88178e-16, -5.23939, -4, -5.23123, 5.23372, 4, -1.54883e-11, 0.00566839, 0, 5.23123, 0}, {3.88882, 3.89489, 2.97354, 5.23123, 0, 0, -3.44516, -3.45053, 1.3657, -5.6749, -0.444357, -4.33924}, {8.15548, 0.834427, -0.835156, 0, 0, -3.59038, -4.00272, -3.99679, 4.00028, -4.15276, 3.16236, 0.425261}, {1.3657, 3.45053, -3.45053, 0, 0, 3.59038, -4.33924, 0.444357, -0.444357, 2.97354, -3.89489, 0.304504}, {-0.837584, 3.2348, -1.28032, -0.944765, -3.55036e-12, 4.51512, -0.578996, -3.2348, -3.2348, 2.36134, 0, 0}, {-3.0469, 3.0469, -4, 0, -7.0469, 0, 7.0469, 0, 0, -4, 4, 4}, {0.832911, -2.82507, -0.828908, 0.808732, 3.17388, -0.81323, -3.40548, -0.230067, -1.83358, 1.76384, -0.118743, 3.47572}, {0, -3.01876, 0, 1.28032, 1.39906, -3.2348, -4.51512, 1.5799, -3.09855e-12, 3.2348, 0.0397999, 3.2348}, {1.27174, 3.21511, 0.89222, 0, 0, -2.4308, 3.24338, -3.21511, 0.698828, -4.51512, 3.70603e-12, 0.839751}, {-1.79652, -1.79386, -1.79496, 1.79652, 1.79386, -1.79543, -3.65719, 3.65719, -0.0700075, 3.65719, -3.65719, 3.66039}, {-2.2828e-11, 4, 0.0025524, 0, 0, 5.24273, -5.23939, 0, 0, 5.23939, -4, -5.24528}, {-1.75292, -4.51512, -4.40936e-12, 0.0630025, 1.28032, 3.2348, 2.36134, 0, 0, -0.671422, 3.2348, -3.2348}, {-1.82767, 3.81744, 1.76272, -0.114041, 1.46619, -3.70442, 2.43635, -0.964293, 2.43635, -0.494641, -4.31934, -0.494641}, {-3.45053, -1.3657, -3.45053, -0.444357, 4.33924, -5.68374, 0, 0, 5.23939, 3.89489, -2.97354, 3.89489}, {2.9332, 2.26271, -0.706418, -2.9332, 1.41766, 2.12097, 0, -0.989411, -3.33225, 0, -2.69097, 1.9177}, {0, -1.39581e-17, 4.03735, -3.2348, -3.2348, -3.14648, -1.28032, 3.2348, -2.28562, 4.51512, 4.40982e-12, 1.39475}, {3.25531, -1.69257, -3.22311, -3.621e-12, -1.19223, 4.51512, 0, 2.97985, 0, -3.25531, -0.095055, -1.29201}, {-2.43276, 1.15549, 1.15762, 2.22336, 2.22531, 2.22336, 0.45554, -3.13444, 0.45554, -0.246142, -0.246357, -3.83653}, {4.00272, -3.99679, 4.00378, -8.15548, 0.834427, -0.842284, 4.15276, 3.16236, 0.42889, 0, 0, -3.59038}, {-2.25991, 1.3285, 0.893907, -1.12519, -1.12617, -4.07005, 1.87562, 1.87726, -0.7419, 1.50948, -2.07958, 3.91804}, {-3.45053, 1.3657, -3.45053, -0.444357, -4.33924, -5.68374, 3.89489, 2.97354, 3.89489, 0, 0, 5.23939}, {-3.2348, 0.341949, -1.28032, 0, -3.12276, 0, 3.2348, 0.619904, -3.2348, -3.95817e-12, 2.1609, 4.51512}, {2.97704, 0.304595, -3.89524, -4.34434, -0.444491, 0.444879, 1.36731, -3.44735, 3.45037, 0, 3.58725, 0}, {1.27702, -1.8283, -3.22687, 3.22647, -0.102762, 3.25484, 0, 2.97985, 0, -4.5035, -1.04879, -0.0279753}, {5.67645, -4.33837, 0.445968, 3.45388, 1.36462, 3.44854, -3.89094, 2.97375, -3.89451, -5.23939, 0, 0}, {0, 0, -5.23568, -0.00566839, -4, 0.00283219, 5.24506, 4, 5.23285, -5.23939, 0, 0}, {2.97354, -3.89489, 3.89489, 1.3657, 3.45053, -3.45053, 0, -5.23939, 0, -4.33924, 5.68374, -0.444357}, {7.0469, 0, 4.44089e-16, 0, 0, -7.0469, -4, -4, 4, -3.0469, 4, 3.0469}, {0.676898, -0.676898, 2.91348, 1.85764, -1.85764, -1.85764, -2.8863, -0.704082, -0.704082, 0.351759, 3.23862, -0.351759}, {-1.71643, -3.77342, 1.87396, 2.40825, 0.953172, 2.40825, -0.071317, -1.44928, -3.6617, -0.620505, 4.26953, -0.620505}, {-3.52345, -3.52345, -3.52345, 3.52345, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345}, {-1.16853, 4.05757, 2.41902, -2.70338, -1.07129, -2.70173, 3.36405, 1.3331, -0.22682, 0.507865, -4.31938, 0.509529}, {0.235286, 2.46776, -2.45659, -1.58499, 1.09747, 2.26228, -1.89674, -2.81329, -0.210235, 3.24644, -0.75193, 0.40455}, {1.72714, 0.683827, -1.72773, -2.24537, -3.98415, -1.34153, 0.964303, -1.03975, 2.62699, -0.446071, 4.34007, 0.442278}, {-7.18233, -0.137487, -7.18233, 1.86445, 1.86498, 5.45483, 3.52295, -3.52295, 3.52295, 1.79493, 1.79545, -1.79545}, {0, -8.88178e-16, -2.4308, -3.22687, 1.27702, -0.160385, -0.0279753, -4.5035, 1.80584, 3.25484, 3.22647, 0.785343}, {3.45037, 1.36731, 3.44826, -3.89524, 2.97704, -0.306029, 0, 0, -3.58881, 0.444879, -4.34434, 0.446582}, {3.24278, -1.28505, 1.07917, 0, 0, -2.6315, -3.21463, -3.24675, -0.442405, -0.0281511, 4.53179, 1.99473}, {1.7269, 0.683416, -1.72787, -1.27936, -5.02087, 1.28648, 3.27466, 5.8105, 1.9565, -3.7222, -1.47305, -1.5151}, {-5.23372, -4, 5.23939, -0.00566839, 4, -2.28255e-11, 5.23939, 0, 0, 0, 0, -5.23939}, {0.0281511, 4.53179, 2.33833, 0, 0, -2.884, 3.21463, -3.24675, 0.327026, -3.24278, -1.28505, 0.218644}, {-3.52345, -3.52345, 3.52345, -3.52345, 3.52345, -3.52345, 3.52395, 3.52295, 3.52295, 3.52295, -3.52295, -3.52295}, {1.3657, 3.45494, 3.45053, -4.33924, 5.691, 0.444357, 2.97354, -3.89986, -3.89489, 0, -5.24608, 0}, {-1.06097, 2.95229, -1.06649, 4.44047, 0.792573, -0.800037, -2.21214, -0.888535, 3.02699, -1.16736, -2.85632, -1.16047}, {4, 4, -4, -3.1649, -3.16386, -4.15492, 0, -7.04589, 0, -0.835098, 6.20975, 8.15492}, {-3.23839, -0.578016, 0.58346, 0.0195373, 3.14514, -1.26116, 3.23532, 0.0837745, 2.04552, -0.0164672, -2.6509, -1.36782}, {-3.59038, 0, -8.88178e-16, 4, 4, -4, -0.834843, -0.83804, 8.15243, 0.425226, -3.16196, -4.15243}, {-3.99679, -4.00028, -4.00272, 0, 3.59038, 0, 0.834427, 0.835156, 8.15548, 3.16236, -0.425261, -4.15276}, {-0.618598, -0.619625, 2.97076, -2.5319, -2.52969, -2.52969, -0.377606, 3.21154, -0.378844, 3.52811, -0.062223, -0.062223}, {-6.21002, 0.835098, 8.15492, 3.164, 3.1649, -4.15492, 7.04488, 0, 0, -3.99886, -4, -4}, {-2.96943, -3.89447, -0.304082, 0, 0, -3.59038, -1.36934, 3.45016, 3.45016, 4.33877, 0.444309, 0.444309}, {-4.44089e-16, 3.59038, 0, 0.834427, 0.835156, -8.15548, 3.16236, -0.425261, 4.15276, -3.99679, -4.00028, 4.00272}, {4.15492, 0.425481, -3.1649, 0, -3.59038, 0, 4, 4, 4, -8.15492, -0.835098, -0.835098}, {0.444309, -0.444309, -4.33877, -3.89447, 0.304082, 2.96943, 3.45016, -3.45016, 1.36934, 0, 3.59038, 0}, {-4.44089e-16, 7.0469, 0, -3.04603, -3.0469, -4, 7.04488, 0, 0, -3.99886, -4, 4}, {-1.90626e-16, 0, 4.03735, -3.2348, 3.2348, 1.14797, 3.2348, 1.28032, -2.18823, -4.40962e-12, -4.51512, -2.99709}, {-1.3657, -3.45053, -3.44934, 4.33924, -0.444357, -0.44815, -2.97354, 3.89489, 0.307102, 0, 0, 3.59038}, {-4, 4, -4, 0, 0, 7.0469, 0.835098, -8.15492, -6.2118, 3.1649, 4.15492, 3.1649}, {1.22258, -2.9332, -2.86482e-12, -0.434061, 0, 3.2348, 1.13877, 2.9332, 2.86495e-12, -1.92728, 0, -3.2348}, {0.619868, 0, -4.61952, 1.07793, -2.9332, 1.07793, 1.00404, 2.9332, 1.00404, -2.70184, 0, 2.53754}, {8.15492, -0.835098, -6.2118, -4, 4, -4, -4.15492, -3.1649, 3.1649, 0, 0, 7.0469}, {-1.77636e-15, 0, 7.0469, -4, -4, -4, -3.0469, 4, -3.0469, 7.0469, 0, 0}, {3.89735, -2.97221, -3.89314, -0.447948, 4.33729, 5.68119, 0, 0, -5.23939, -3.4494, -1.36509, 3.45133}, {0.300503, 3.2348, -3.2348, -3.50419, 0, 0, 0.773493, -3.22084, -1.27452, 2.43019, -0.0139624, 4.50932}, {-5.23939, 4, -5.23939, 5.23939, 0, 0, 0, 0, 5.23939, -2.28255e-11, -4, -2.28255e-11}, {5.23939, 0, -1.75044e-16, -5.24506, 4, 5.23939, 0, 0, -5.23939, 0.00566839, -4, 2.28255e-11}, {3.95255, -0.362167, 0.362483, -0.482349, -3.10803, -0.479633, -1.12077, 1.12077, 2.46863, -2.34943, 2.34943, -2.35148}, {1.27685, 3.22605, 0.364333, -1.43581, -3.62766, 3.62766, -4.79345, -0.703234, 0.703234, 4.95241, 1.10484, -4.69522}, {-3.45053, 3.45053, 1.3657, -0.444357, 0.444357, -4.33924, 3.89489, -0.304504, 2.97354, 0, -3.59038, 0}, {-1.03322, 0, 2.9332, -2.44657, -2.9332, -2.9332, -0.388139, 2.9332, 0, 3.86792, 0, 0}, {-2.86482e-12, -2.9332, 2.09032, -3.2348, 0, -0.999254, 2.86466e-12, 2.9332, 1.94703, 3.2348, 0, -3.03809}, {3.99728, -3.99972, -4.00321, -8.14937, 0.83453, 0.841653, 4.15209, -0.425192, 3.16156, 0, 3.59038, 0}, {-3.65719, -3.66039, -3.65719, -1.79386, 1.79496, 1.79652, 3.65719, 0.0700075, 3.65719, 1.79386, 1.79543, -1.79652}, {0.32313, 3.2444, -3.2106, 3.54154, -2.30319, 5.58401, -2.14916, 1.30205, 3.28335, -1.71551, -2.24325, -5.65675}, {-3.89489, 2.97354, -2.82238, 0, 0, 4.03735, 0.444357, -4.33924, -0.86478, 3.45053, 1.3657, -0.350185}, {1.84375, -4.52327, -0.014292, 0.315792, 3.2348, -3.2348, -3.14489, 0, 0, 0.985347, 1.28847, 3.24909}, {-4.33924, -0.444357, -5.6776, 0, 0, 5.23939, 1.3657, -3.45053, -3.45246, 2.97354, 3.89489, 3.89067}, {5.23939, 0, 0, -3.45053, 3.45053, 1.3657, -5.68374, 0.444357, -4.33924, 3.89489, -3.89489, 2.97354}, {7.0469, 8.88178e-16, 0, 3.16371, 4.15492, -3.1649, -6.20947, -8.15492, -0.835098, -4.00114, 4, 4}, {-0.782485, -3.2348, -1.28032, 2.60358, 0, 0, -0.410568, 3.2348, -3.2348, -1.41052, 3.55036e-12, 4.51512}, {-4, 4, -4, -4.15492, 0.425481, 3.1649, 0, -3.59038, 0, 8.15492, -0.835098, 0.835098}, {-1.75292, -4.51512, 4.40936e-12, -1.18742, 1.28032, -3.2348, 0.578996, 3.2348, 3.2348, 2.36134, 0, 0}, {-4, -4, -4, -6.2118, 8.15492, 0.835098, 3.1649, -4.15492, 3.1649, 7.0469, 0, 0}, {0.304504, -2.97354, 3.89489, -3.45053, -1.3657, -3.45053, -0.444357, 4.33924, -0.444357, 3.59038, 0, 0}, {-0.968585, 2.9332, 1.64782, -3.80236, -2.9332, 0.915743, 1.28259, 0, -3.64114, 3.48835, 0, 1.07758}, {8.15492, 0.835098, -3.7826, -4, -4, 0.45685, 0, 0, 5.36117, -4.15492, 3.1649, -2.03542}, {-4, 4, -4, 0, -7.0469, 0, 7.0469, 0, 0, -3.0469, 3.0469, 4}, {-2.33946, 1.78605, 2.34209, 3.03792, -2.3193, 2.20139, -2.35172, -2.20459, -2.89092, 1.65325, 2.73783, -1.65256}, {2.60358, 0, 3.0632e-16, -1.03055, -1.28032, -3.2348, 0.410568, -3.2348, 3.2348, -1.98359, 4.51512, -4.40967e-12}, {-3.59038, 1.77636e-15, -1.11022e-16, 4, -4, 4, 0.425226, -4.15243, -3.16196, -0.834843, 8.15243, -0.83804}, {0, 0, -5.23939, -4, 1.54883e-11, -0.00566839, 4, -5.23123, 5.24506, 0, 5.23123, 0}, {-1.62732e-11, 1.54703e-11, 4, 5.23939, 0, 0, 0, -5.23939, 0, -5.23939, 5.23939, -4}, {4.72393, 2.32297, -6.20162, -2.81181, -4.23508, -5.55986, 1.34415, -1.34415, 7.48662, -3.25627, 3.25627, 4.27486}, {-3.1649, -4.15492, -3.16386, -0.835098, 8.15492, 6.20975, 4, -4, 4, 0, 0, -7.04589}, {2.10128, 3.1649, 4.15492, 3.73608, 0.835098, -8.15492, -0.419151, -4, 4, -5.41822, 0, 0}, {0, 0, -7.0469, 7.0469, 0, 0, -4.00114, 4, 4, -3.04575, -4, 3.0469}, {-3.89511, 3.89452, 2.96992, -5.24608, 0, 0, 5.68769, -0.444099, -4.33672, 3.45349, -3.45042, 1.3668}, {-7.0469, 0, 0, 4.00114, 4, 4, 3.04575, -4, 3.0469, 0, 0, -7.0469}, {-5.24608, 0, 0, 5.24608, -5.24018, 4, 2.32367e-11, -0.0025524, -4, 0, 5.24273, 0}, {4.44089e-16, 4.44089e-16, 4.03735, -4.51512, 4.40818e-12, -1.39475, 3.2348, 3.2348, -1.306, 1.28032, -3.2348, -1.33659}, {6.38334, 0.936482, -0.936482, -5.90226, 2.17282, 1.41756, -3.46093, -0.129456, -3.46093, 2.97985, -2.97985, 2.97985}, {-0.252976, 0.252976, -3.84336, 0.368915, 3.22147, 0.368915, -2.40103, -1.18935, 1.18935, 2.28509, -2.28509, 2.28509}, {-1.44735, 2.54109, 0.82519, -0.346604, -3.63529, 3.61884, -1.58915, 0.412839, -3.42177, 3.3831, 0.681367, -1.02226}, {-2.32365e-11, 0.0025524, 4, -5.24608, 0, 0, 0, 5.24273, 0, 5.24608, -5.24528, -4}, {-3.59357e-12, 3.68038, 1.41455, 2.62736e-12, -2.69097, 1.9177, -3.2348, 0.574024, -0.993189, 3.2348, -1.56344, -2.33906}, {2.74148, 0.0555531, 2.80173, -2.9202, -2.12061, -0.341431, -0.0977885, 3.03978, -0.0364189, 0.27651, -0.974727, -2.42388}, {4.00321, 3.99728, 3.99972, 0, 0, -3.59038, -0.841653, -8.14937, -0.83453, -3.16156, 4.15209, 0.425192}, {0, 4.44089e-16, -7.0469, 0, 7.04488, 0, -4, -3.99886, 4, 4, -3.04603, 3.0469}, {-4.40759e-12, 4.51512, -3.21766, 0, 0, 4.03735, -3.2348, -1.28032, 0.328292, 3.2348, -3.2348, -1.14798}, {-3.2348, -3.2348, 1.306, 4.40977e-12, 4.51512, -3.21766, 0, 0, 4.03735, 3.2348, -1.28032, -2.12568}, {1.28032, 0.265417, 3.2348, -4.51512, 1.06793, -3.90061e-12, 3.2348, 1.75796, -3.2348, 0, -3.09131, 0}, {-2.85306, -1.28668, -1.28504, 3.1184, -0.694894, -0.694008, 0.0152986, 3.82424, -1.42003, -0.280638, -1.84266, 3.39908}, {3.0469, 4, -3.0469, -7.0469, 0, 0, 4, -4, -4, 0, 0, 7.0469}, {1.29201, -3.25531, 0.810704, 0, 0, -2.6315, -4.51512, -3.75807e-12, 1.37723, 3.22311, 3.25531, 0.443571}, {-3.66502, 2.14914, 1.43616, 0.752328, 1.90198, -1.90298, 4.02391, -1.24183, 1.24643, -1.11122, -2.8093, -0.779603}, {8.15492, -3.3488, 0.835098, -4.15492, -1.54688, 3.1649, 0, 4.85752, 0, -4, 0.0381551, -4}, {-3.45053, 1.3657, -3.45053, 3.59038, 0, 0, 0.304504, 2.97354, 3.89489, -0.444357, -4.33924, -0.444357}, {-4, 3.0469, -3.0469, 0, -7.0469, 0, 4, 4, -4, 0, 0, 7.0469}, {-10.7068, 3.65991, -3.65991, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, 3.65991, -3.65991, 3.65991}, {0, -3.59038, 4.44089e-16, 3.1649, 0.425481, 4.15492, 0.835098, -0.835098, -8.15492, -4, 4, 4}, {-1.94171, 5.28363, -1.94171, 2.66708, -5.57073, -2.5723, 2.43635, -0.964293, 2.43635, -3.16172, 1.25139, 2.07766}, {0.099584, -1.28032, 3.2348, -1.88193, 4.51512, 4.40977e-12, 2.36134, 0, 0, -0.578997, -3.2348, -3.2348}, {-6.2118, -0.835098, -8.15492, 3.1649, -3.1649, 4.15492, 7.0469, 0, 0, -4, 4, 4}, {0.75324, 1.90144, -1.90334, 5.34316, -3.13319, -2.09374, -1.32234, 1.89318, 3.34138, -4.77406, -0.661432, 0.655698}, {4.44089e-16, 7.04488, 0, -4.15492, 3.164, -3.1649, 8.15492, -6.21002, -0.835098, -4, -3.99886, 4}, {-2.97354, -3.89986, -3.89489, 4.33924, 5.691, 0.444357, -1.3657, 3.45494, 3.45053, 0, -5.24608, 0}, {0, 0, -5.23939, 4, 5.24608, 5.23939, -4, -1.55241e-11, -1.5915e-11, 0, -5.24608, 0}, {-0.444357, 5.68374, 4.33924, 3.89489, -3.89489, -2.97354, 0, -5.23939, 0, -3.45053, 3.45053, -1.3657}, {3.52345, -3.52345, -3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345, -3.52345}, {3.59038, 0, 2.22045e-16, 0.304504, -3.89489, -2.97354, -0.444357, 0.444357, 4.33924, -3.45053, 3.45053, -1.3657}, {5.23123, -8.88178e-16, 0, -5.23123, -5.23939, -4, -1.6327e-11, -1.54706e-11, 4, 0, 5.23939, 0}, {-1.36374, -3.44772, 3.44954, -2.97575, 3.89171, -0.30733, 4.3395, -0.443995, 0.448176, 0, 0, -3.59038}, {-3.16371, 4.15492, -3.1649, 4.00114, 4, 4, -7.0469, 0, 0, 6.20947, -8.15492, -0.835098}, {-3.52395, -3.52295, -3.52295, -3.52295, 3.52295, 3.52295, 3.52295, -3.52295, 3.52395, 3.52395, 3.52295, -3.52395}, {4, -4, -4.00114, -8.15492, 0.835098, -6.20947, 0, 0, 7.0469, 4.15492, 3.1649, 3.16371}, {-0.425481, 4.15492, 3.1649, 0.835098, -8.15492, 0.835098, -4, 4, -4, 3.59038, 0, 0}, {-1.79519, 1.79519, -1.79519, -1.79519, -1.79519, 1.79519, -0.0700075, -3.65719, -3.65719, 3.66039, 3.65719, 3.65719}, {4, 4, -4, 0, 0, 7.0469, -7.0469, 0, 0, 3.0469, -4, -3.0469}, {1.16094, -1.15703, 4.97097, -1.66567, -3.57722, 1.41703, -2.89698, 2.8944, -1.14655, 3.40171, 1.83985, -5.24145}, {-2.7042, -1.06842, -2.70002, 1.70166, -5.90879, -3.52267, 2.19866, 5.37974, 2.18568, -1.19612, 1.59748, 4.03701}, {4.33729, -5.67235, 0.447948, -1.36509, -3.44596, 3.4494, 0, 5.23123, 0, -2.97221, 3.88708, -3.89735}, {3.2348, -3.2348, -1.14797, 0, 0, 4.03735, 1.28032, 3.2348, -1.49462, -4.51512, -4.40977e-12, -1.39475}, {4, 4, 4, -0.835098, -0.835098, -8.15492, 0, -3.59038, 0, -3.1649, 0.425481, 4.15492}, {-3.1649, -3.1649, 4.15492, -7.0469, 0, 0, 4, 4, 4, 6.2118, -0.835098, -8.15492}, {0.724826, 0.724826, -6.59499, -3.21143, -3.21143, -3.21143, 3.7299, 0.139517, 3.7299, -1.24329, 2.34709, 6.07653}, {2.48661, 2.48661, 9.80643, -3.21143, -3.21143, -3.21143, -1.7154, 5.33149, 5.33149, 2.44023, -4.60667, -11.9265}, {-4.95125, 1.10332, 1.10192, -1.44818, -1.58249, 3.65892, 0.833328, -2.10815, -2.10546, 5.5661, 2.58731, -2.65538}, {0.836183, -2.10682, -2.10682, 4.11656, 1.00419, 1.00419, -1.14088, 2.87451, -0.715871, -3.81187, -1.77188, 1.8185}, {0.343882, -3.2462, -1.28483, 0.297233, 0.297493, 4.63286, 2.13498, 2.13685, 0.845752, -2.7761, 0.811861, -4.19379}, {2.22045e-16, 5.23939, 0, -3.44772, -3.45309, -1.36374, 3.89171, 3.89778, -2.97575, -0.443995, -5.68407, 4.3395}, {3.58725, -4.44089e-16, 0, -3.44752, -3.45053, -1.3657, -0.443969, -0.444357, 4.33924, 0.304238, 3.89489, -2.97354}, {3.65991, -3.65991, -3.65991, 3.52345, 3.52345, -3.52345, -3.52345, -3.52345, -3.52345, -3.65991, 3.65991, 10.7068}, {3.1649, -4.15492, -3.1649, 0, 0, -7.0469, -4, -4, 4, 0.835098, 8.15492, 6.2118}, {-4, -4, 4, 0.835098, 8.15492, -0.835098, 3.59038, 0, 0, -0.425481, -4.15492, -3.1649}, {-1.3476, -0.0112467, -3.55949, 1.85019, -3.24836, -1.05487, 1.92324, 3.24442, -0.189939, -2.42583, 0.0151799, 4.80429}, {1.17675, 3.24909, 1.28847, -0.315792, -3.2348, 3.2348, -3.14489, 0, 0, 2.28393, -0.014292, -4.52327}, {8.15492, -0.835098, -0.835098, -4, 4, 4, 0, 0, -3.59038, -4.15492, -3.1649, 0.425481}, {-4.15492, -3.1649, -3.1649, -4, 4, 4, 0, -7.0469, 0, 8.15492, 6.2118, -0.835098}, {0.137487, 7.18233, 7.18233, -1.79519, 1.79519, -1.79519, 3.52295, -3.52295, -3.52295, -1.86524, -5.45458, -1.86419}, {3.52295, -3.52295, -3.52295, -3.66043, -3.65939, -3.65939, -3.52345, -3.52345, 3.52345, 3.66094, 10.7058, 3.65888}, {1.67988, -1.68212, -5.18466, -2.30896, 2.30807, 0.915293, -1.39444, -3.85015, -1.52682, 2.02352, 3.2242, 5.7962}, {3.4516, -3.45027, -1.36825, -3.89922, 3.89484, -2.97306, -5.24608, 0, 0, 5.6937, -0.444568, 4.3413}, {1.94453e-16, 2.70417, 0, 3.25531, -0.177688, 3.22311, -3.25531, -0.557762, 1.29201, 3.62091e-12, -1.96872, -4.51512}, {3.09726e-12, 1.01994, -3.86266, -3.25531, -0.69454, 0.97832, 3.25531, -2.18133, -1.3721, -3.41346e-12, 1.85593, 4.25643}, {2.90521, -1.78203, -2.9082, 2.41571, 1.84427, 2.82665, -2.85063, 1.82369, -2.38912, -2.47029, -1.88594, 2.47066}, {-5.23939, 0, -8.88178e-16, 0, 0, 5.24273, 2.28278e-11, -4, -0.0025524, 5.23939, 4, -5.24018}, {-3.52295, 3.52295, 3.52295, 1.79545, 1.79493, -1.79545, 7.18233, -7.18233, 0.137487, -5.45483, 1.86445, -1.86498}, {-3.52295, 3.52295, 3.52295, -3.52395, -3.52295, -3.52295, -3.65939, 3.65939, -3.66043, 10.7063, -3.65939, 3.66043}, {-0.835098, 0.835098, 8.15492, 0, 3.59038, 0, 4, -4, -4, -3.1649, -0.425481, -4.15492}, {-7.0469, 5.55112e-16, 0, 4, -4, -4, -3.1649, 3.1649, -4.15492, 6.2118, 0.835098, 8.15492}, {0.662971, 0.664005, -4.25288, 1.65703, 1.65961, 0.655439, -2.91351, 2.32133, -1.15244, 0.59351, -4.64495, 4.74988}, {1.19438, -3.49493, 0, -2.76951, 1.19435, 0, 1.94164, -0.567827, 2.9332, -0.366511, 2.8684, -2.9332}, {2.36134, 1.0718e-17, 8.88178e-16, 0.671422, -3.2348, 3.2348, -0.342675, 3.2348, 1.28032, -2.69009, 3.55093e-12, -4.51512}, {-1.10548, 3.2348, 0, -1.25586, -3.2348, 0, 0.613756, 2.30645e-12, -2.9332, 1.74759, -2.30645e-12, 2.9332}, {3.2348, 0.120997, 3.2348, 0, -3.09131, 0, -3.2348, -0.551371, 1.28032, 3.95817e-12, 3.52168, -4.51512}, {-3.2348, 0.76173, -0.403199, 2.15323e-12, -1.17552, -2.45621, 3.2348, 2.34907, 0.378214, -2.17514e-12, -1.93527, 2.4812}, {-3.53969, 3.53969, 2.69627, -1.11299, 1.11299, -6.1991, 5.13509, 1.9118, -3.91153, -0.482412, -6.56449, 7.41436}, {4.72983, -3.60283, 2.31706, -1.62186, -5.81149, 1.62186, -3.59839, 2.74098, 3.59839, 0.490411, 6.67334, -7.53731}, {-4, 4, -4, 4, -4, -3.0469, 0, 7.0469, 0, 0, -7.0469, 7.0469}, {0, 0, 7.0469, 4, -3.0469, -4, -4, -4, 4, 0, 7.0469, -7.0469}, {1.26315, 3.1826, -0.407781, -4.48373, 0.0790768, 0.0790768, -1.01464, -2.55645, -2.55645, 4.23522, -0.705229, 2.88515}, {-1.01079, -2.55709, -2.55383, 1.69808, -0.95029, 4.29031, 5.49464, 2.47799, 2.47483, -6.18193, 1.02939, -4.21131}, {-1.79519, -1.79519, 1.79519, -3.65991, 3.65991, -3.65991, 1.79519, 1.79519, 1.79519, 3.65991, -3.65991, 0.0695263}, {-1.79519, -1.79519, 1.79519, 5.4551, -1.86472, 1.86472, 3.52345, -3.52345, -3.52345, -7.18336, 7.18336, -0.13646}, {0, -4.44089e-16, 3.59038, -8.15492, -0.835098, 0.835098, 4, 4, -4, 4.15492, -3.1649, -0.425481}, {4.15492, -3.1649, 3.1649, 4, 4, -4, 0, -7.0469, 0, -8.15492, 6.2118, 0.835098}, {4.18211, -0.841369, 0.841369, 1.63378, -1.11155, -4.12784, -0.96395, -2.43548, 2.43548, -4.85193, 4.3884, 0.850991}, {-2.9332, -0.654372, 2.78087, 0, 0.366146, -3.84129, 0, 2.94119, 1.57488, 2.9332, -2.65297, -0.514459}, {4.51512, -1.06793, 3.90044e-12, 0, -3.09131, 0, -1.28032, 0.871067, 3.2348, -3.2348, 3.28817, -3.2348}, {0, -0.430374, 4.51512, -2.9332, -0.109716, -2.9332, 0, 3.52168, -4.51512, 2.9332, -2.98159, 2.9332}, {4.19026, 0.820764, 0.814826, 1.21474, -3.06912, 2.16855, -0.936049, 2.36499, 2.36631, -4.46895, -0.116634, -5.34969}, {0.972372, 0.736781, -3.03724, -3.79781, 2.2903, -1.05943, 0.111338, -3.09792, 0.84769, 2.7141, 0.0708344, 3.24899}, {-2.55729, 1.01135, -2.55763, -2.08284, -1.24835, 3.15697, 1.89416, -5.27077, 1.90402, 2.74596, 5.50777, -2.50336}, {3.77679, -1.49465, 0.187718, 0.660093, 4.25334, 0.656376, -2.557, 1.01192, -2.55789, -1.87988, -3.77061, 1.7138}, {-5.23939, 0, -5.55112e-17, 3.4502, -1.36448, 3.45065, -3.90439, -2.97758, -3.8953, 5.69358, 4.34205, 0.444645}, {-4.44089e-16, 4.44089e-16, -3.59038, 3.4494, -1.36509, 3.45059, 0.447948, 4.33729, 0.444157, -3.89735, -2.97221, -0.304367}, {4.28053, 0.593056, -0.587914, -0.673906, 1.70372, -1.70733, 1.45255, -3.67222, -1.55938, -5.05918, 1.37545, 3.85462}, {0, 4.47576, 0.618208, 0, -4.47576, 1.81259, -2.9332, -2.90763, -0.707734, 2.9332, 2.90763, -1.72306}, {-1.27174, 3.21511, 1.36527, 0, 0, -2.4308, 4.51512, -3.70603e-12, -0.839751, -3.24338, -3.21511, 1.90528}, {0.947177, -0.947177, -4.14023, -3.0344, -2.20499, -1.201, 1.74832, -1.74832, 0.691975, 0.338905, 4.90048, 4.64925}, {1.90928, 0.579177, 2.90015, -2.97176, -1.29918, -0.341631, 1.26427, 3.63788, 0.209764, -0.201792, -2.91787, -2.76828}, {3.04112e-12, -1.63545, -4.51512, 0, -3.01876, 0, 3.2348, 2.35061, 1.28032, -3.2348, 2.3036, 3.2348}, {4.04958, 1.77038, 0.465536, -2.40427, -1.3066, 2.40427, -4.10736, 1.28953, -0.407754, 2.46205, -1.7533, -2.46205}, {0.835098, -0.835098, 8.15492, -4, 4, -4, 3.59038, 0, 0, -0.425481, -3.1649, -4.15492}, {3.1649, -3.1649, -4.15492, -4, 4, -4, 0, -7.0469, 0, 0.835098, 6.2118, 8.15492}, {-3.65991, 3.65991, 3.65991, 1.79519, 1.79519, -1.79519, 1.79519, -1.79519, 1.79519, 0.0695263, -3.65991, -3.65991}, {1.79519, -1.79519, 1.79519, 1.86472, -1.86472, -5.4551, -3.52345, -3.52345, -3.52345, -0.13646, 7.18336, 7.18336}, {3.0611, -1.07112, 2.10077e-12, -0.369018, 1.30083, 3.2348, 0.267075, 1.7536, -3.2348, -2.95915, -1.98331, -2.03061e-12}, {-1.28032, 0.716498, -3.2348, -3.2348, -0.619904, 3.2348, 0, -3.12276, 0, 4.51512, 3.02616, 3.09876e-12}, {-3.24675, 0.177221, -3.21463, 0, 2.70417, 0, -1.28505, -0.665307, 3.24278, 4.53179, -2.21609, -0.0281511}, {-1.03768, -0.786269, 3.24125, 3.76174, 0.864649, -0.0233676, 1.42117, -2.10543, -3.24363, -4.14523, 2.02705, 0.0257498}, {-3.65991, -3.65991, 3.65991, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345, 3.65991, 3.65991, -10.7068}, {-1.02588, -1.02588, -4.04576, 5.15074, -1.89616, -1.23707, -2.74863, 4.29827, 1.25677, -1.37623, -1.37623, 4.02606}, {4, -4, -4, -3.1649, -4.15492, 3.1649, 0, 0, 7.0469, -0.835098, 8.15492, -6.2118}, {4.27497, -6.68514, -1.95466, -0.750905, 7.33275, 1.46136, -3.95428, 3.55351, -2.7068, 0.430212, -4.20112, 3.20009}, {-0.675958, 1.70428, -1.70576, 3.47227, -0.944013, -2.64554, 0.813742, 1.53558, 2.05346, -3.61005, -2.29584, 2.29785}, {-2.9332, 0.268765, -0.269, 0, 1.01807, 2.57142, 0, -3.15223, -0.435397, 2.9332, 1.86539, -1.86702}, {2.9332, -2.86386e-12, 0.906086, 0, 3.2348, -2.30525, 0, -3.2348, -1.73209, -2.9332, 2.86386e-12, 3.13126}, {-1.28032, -3.2348, -0.365321, -3.2348, 3.2348, 1.14798, 0, 0, 4.03735, 4.51512, -4.40815e-12, -4.82}, {4.32811, 0.737725, -1.71304, -3.72649, -3.72649, 1.47492, -0.518804, -0.518804, 4.72046, -0.0828155, 3.50757, -4.48234}, {-5.23939, -3.88578e-16, 0, -3.90017, -3.8953, -2.97758, 3.45213, 3.45065, -1.36448, 5.68742, 0.444645, 4.34205}, {3.45053, 3.45053, -1.3657, 0, -3.59038, 0, 0.444357, 0.444357, 4.33924, -3.89489, -0.304504, -2.97354}, {0, 1.06747e-17, -2.884, -3.22311, 3.25531, -0.327888, -1.29201, -3.25531, 0.417097, 4.51512, 3.75787e-12, 2.79479}, {-0.0130226, -3.25531, 1.20877, -0.260244, 3.25531, 1.50608, 3.12118, 2.59785e-12, -0.952039, -2.84791, -2.3704e-12, -1.76282}, {0.578997, 3.2348, 3.2348, 2.36134, 0, 0, -0.250249, -3.2348, 1.28032, -2.69009, -3.55036e-12, -4.51512}, {-1.12419, -3.2348, -0.186522, 0.812252, -2.04448e-12, -2.60004, -1.39607, 3.2348, -0.0801962, 1.708, 2.2542e-12, 2.86675}, {-3.93279, 1.55848, -1.3088, 1.97526, -0.782753, -1.97415, -1.50913, 5.11867, 1.50188, 3.46666, -5.8944, 1.78108}, {-0.47019, -4.32902, 0.47019, 0.867473, 1.07771, 2.72291, 1.97453, -0.781507, -1.97453, -2.37181, 4.03281, -1.21857}, {-3.45037, 1.36731, 3.44843, 0, 0, -5.23939, 3.89524, 2.97704, -3.89946, -0.444879, -4.34434, 5.69042}, {-3.45053, 1.3657, 3.45053, 3.59038, 0, 0, -0.444357, -4.33924, 0.444357, 0.304504, 2.97354, -3.89489}, {2.40563, -3.3686, -2.16577, -4.01552, 0.313534, -3.06173, -1.35813, -0.303573, 2.96446, 2.96803, 3.35864, 2.26304}, {0.444309, 1.73608, 4.33877, 0, 4.85752, 0, 3.45016, -2.1866, -1.36934, -3.89447, -4.407, -2.96943}, {-1.77354, -2.8259, -5.08017, -1.99992, 2.80049, 1.80052, -0.192763, -1.93544, 1.91528, 3.96622, 1.96086, 1.36437}, {3.41957, -0.149544, 3.15791, -3.35877, 2.12868, 1.33307, 6.03338, 1.03375, -2.39461, -6.09418, -3.0129, -2.09638}, {1.36731, -2.16592, -3.45037, 0, 4.85752, 0, -4.34434, 1.78399, -0.444879, 2.97704, -4.4756, 3.89524}, {-2.95631, -0.302739, 1.37126, 3.02503, 0.309776, 3.95804, 2.1672, -3.36845, -2.40376, -2.23591, 3.36142, -2.92554}, {2.31112, 1.19654, -5.83206, -1.28659, 2.03806, 3.24669, -3.3095, 0.144731, -3.05627, 2.28498, -3.37933, 5.64163}, {-1.96264, -1.84718, 0.269133, -1.79514, 2.79017, 1.99109, 5.26848, -3.1772, 1.46969, -1.5107, 2.23422, -3.72992}, {-0.60788, 3.25394, -0.100754, 4.36982, -1.029, 0.544673, 0.0459483, -1.94609, 2.48692, -3.80789, -0.278843, -2.93084}, {-2.10446, -2.10356, 0.831802, -1.45971, -1.45589, -3.94218, -2.09284, 3.1452, -1.24369, 5.65702, 0.414251, 4.35407}, {3.27119, 4.85191, 0.362578, 0.814367, -4.35925, 0.134979, -0.753128, 2.3313, 2.35448, -3.33243, -2.82396, -2.85204}, {-3.50419, 0, -4.44089e-16, 2.14843, -3.22874, 1.27672, -2.43779, 0.014006, -4.52341, 3.79356, 3.21473, 3.24669}}
+ + values : {{-2.9332, -3.39585, 0.502232, 0, 2.96343, 0.405765, 2.9332, 0.0602741, 3.04336, 0, 0.372141, -3.95136}, {3.45053, -1.3657, -2.27011, -3.89489, -2.97354, -4.55745, 0, 0, 5.36117, 0.444357, 4.33924, 1.46638}, {0.382444, -2.89016, 0, -1.28516, 1.90393, 2.9332, 3.7515, 0.879817, 0, -2.84879, 0.106407, -2.9332}, {2.97575, 3.89171, -3.89356, 0, 0, -5.23939, 1.36374, -3.44772, 3.45502, -4.3395, -0.443995, 5.67793}, {4, -4, -4.00114, -4, -3.0469, -3.04575, 0, 0, 7.0469, 0, 7.0469, 0}, {-3.52295, -3.52395, -3.52295, -3.52295, 3.52295, 3.52395, 3.52295, -3.52295, 3.52295, 3.52295, 3.52395, -3.52395}, {2.40825, 0.953172, 2.40825, 2.50475, 5.50649, -2.73463, -1.78774, -5.2227, -1.78774, -3.12526, -1.23696, 2.11413}, {-2.9332, 1.96549, 1.23633, 0, -2.87587, -0.393776, 0, 1.01994, -3.86266, 2.9332, -0.10956, 3.0201}, {0.419151, 4, -4, 2.79404, -8.15492, 0.835098, 2.20503, 4.15492, 3.1649, -5.41822, 0, 0}, {3.52244, 3.52345, 3.52345, 3.65886, 3.65991, -3.65991, 3.52345, -3.52244, -3.52244, -10.7048, -3.66092, 3.6589}, {-1.79359, 1.79523, -1.79625, 3.5193, 3.52237, 3.52452, -7.1749, -7.18117, 0.13427, 5.44919, 1.86357, -1.86254}, {3.99728, -4.00093, 4.00321, 0, 7.04488, 0, 4.15209, 3.16185, -3.16156, -8.14937, -6.2058, -0.841653}, {-2.33012, -1.26027, 3.59031, 1.73691, -1.73691, -3.82575, -2.89531, 2.89531, -1.14913, 3.48852, 0.101865, 1.38457}, {0, 3.12067, -1.26381, 0, -0.238012, 2.52719, -2.9332, -3.29673, -0.550156, 2.9332, 0.414072, -0.713225}, {2.25842, -1.36825, -3.45027, 4.64721, -2.97306, 3.89484, -1.48742, 4.3413, -0.444568, -5.41822, 0, 0}, {-0.835098, -8.15492, -2.75583, 4, 4, -0.45685, -3.1649, 4.15492, -2.14849, 0, 0, 5.36117}, {2.74019, 0.0956852, 2.80125, -3.01086, 0.697365, -0.375193, 0.165245, 2.48398, -2.46532, 0.105421, -3.27703, 0.0392613}, {2.96943, -3.89447, -0.304082, 1.36934, 3.45016, 3.45016, 0, 0, -3.59038, -4.33877, 0.444309, 0.444309}, {3.164, 3.1649, 4.15492, -6.21002, 0.835098, -8.15492, 7.04488, 0, 0, -3.99886, -4, 4}, {-4.24471, 0, -2.22045e-16, 1.70632, 0.0142405, 4.507, 1.02929, -3.25521, -3.22316, 1.5091, 3.24097, -1.28383}, {-0.835098, -3.26304, -8.15492, -3.1649, -1.55632, 4.15492, 4, -0.0381551, 4, 0, 4.85752, 0}, {-3.09877, -0.624101, 0.936346, 2.96195, 3.42913, -0.507155, -0.240412, -3.6139, 3.58676, 0.377232, 0.808874, -4.01595}, {-7.0469, 0, 0, 4, 4, -4, 3.0469, 3.04589, 4, 0, -7.04589, 0}, {0, 0.802501, 2.70275, -2.9332, -0.102425, -2.99855, 2.9332, 2.58063, 0.364309, 0, -3.28071, -0.0685083}, {-3.1225e-17, 0, -2.4308, 3.22687, 1.27702, 1.31348, -3.25484, 3.22647, -0.701298, 0.0279753, -4.5035, 1.81862}, {1.62741e-11, -1.54712e-11, -4, 5.23939, 0, 0, -5.23939, 5.23939, 4, 0, -5.23939, 0}, {0, -7.13135e-16, 5.23939, 0, 5.23939, 0, 4, -5.23939, -5.24506, -4, -2.28255e-11, 0.00566839}, {0, -7.0469, 8.88178e-16, -4, 4, 4, 4, 3.0469, 3.0469, 0, 0, -7.0469}, {-4, 5.24608, 5.23939, 4, 1.55241e-11, 1.5915e-11, 0, -5.24608, 0, 0, 0, -5.23939}, {4, -4, 4, -7.0469, 0, 0, 3.0469, 4, 3.04589, 0, 0, -7.04589}, {2.51489, 3.01511, 3.01511, -3.88194, -3.41534, -0.482145, -2.88414, -0.0592661, -2.99246, 4.25119, 0.459499, 0.459499}, {5.23939, 5.23285, 4, 0, -5.23568, 0, -5.23939, 0, 0, 2.32699e-11, 0.00283219, -4}, {-2.75474, -0.835644, -4.18437, 0.257813, 3.33257, -1.31901, 0.305142, -0.305142, 4.63589, 2.19179, -2.19179, 0.867496}, {4.15492, -3.1649, -3.1649, -8.15492, -0.835098, 6.2118, 4, 4, 4, 0, 0, -7.0469}, {0.00566839, 4, -0.00283219, 0, 0, -5.23568, 5.23372, -4, 5.23851, -5.23939, 0, 0}, {-1.52791, 1.52994, 4.71561, -1.9516, -3.29226, 0.192739, -0.842937, 0.840096, -3.60933, 4.32244, 0.92222, -1.29903}, {2.86385, 3.21879, 0.53715, -0.233278, -0.500202, 2.48343, -2.84203, -0.0735906, -1.79686, 0.211453, -2.645, -1.22372}, {4.53179, 1.05538, 0.0281511, -1.28505, -2.42496, -3.24278, -3.24675, -1.61027, 3.21463, 0, 2.97985, 0}, {-1.02659, 3.24669, 3.21473, 3.14112, -4.52341, 0.014006, -4.24471, 0, 0, 2.13019, 1.27672, -3.22874}, {-4, -4, -4, 0.835098, 8.15492, 0.835098, 0, 0, 3.59038, 3.1649, -4.15492, -0.425481}, {0, -7.0469, 0, -4, 3.0469, 3.0469, 4, 4, 4, 0, 0, -7.0469}, {2.27701, -1.57663, -3.25, -1.49395, 3.66511, 0.0115805, -2.03803, -2.71547, -0.00857994, 1.25497, 0.626993, 3.247}, {4.33924, 5.68374, -0.444357, -2.97354, -3.89489, 3.89489, -1.3657, 3.45053, -3.45053, 0, -5.23939, 0}, {4.33729, -5.68119, -0.447948, 0, 5.23939, 0, -1.36509, -3.45133, -3.4494, -2.97221, 3.89314, 3.89735}, {0, 6.10623e-16, 3.59038, -2.97354, -3.89489, 0.304504, -1.3657, 3.45053, -3.45053, 4.33924, 0.444357, -0.444357}, {-0.960671, 0.960671, -4.13489, 2.09645, -2.09645, -0.829765, 1.35765, 2.23273, 3.97777, -2.49343, -1.09695, 0.986887}, {-3.6556, -3.65879, 3.65879, -1.79574, 1.79308, -1.79621, 3.6556, 3.65879, -0.0684102, 1.79574, -1.79308, -1.79417}, {0.307102, -2.97354, -3.89489, 3.59038, 0, 0, -0.44815, 4.33924, 0.444357, -3.44934, -1.3657, 3.45053}, {-1.64157, 0.110512, -3.2348, 1.22142, 3.1461, -3.07269e-12, -0.833409, -0.40322, 3.2348, 1.25356, -2.85339, 2.78682e-12}, {0, 7.04488, 0, 4, -3.99886, 4.00114, -4, -3.04603, 3.04575, 0, 0, -7.0469}, {-0.443995, -0.444383, -4.3395, 0, 3.59038, 0, -3.44772, -3.45073, 1.36374, 3.89171, 0.30473, 2.97575}, {-1.00556, 2.54062, 1.04976, -3.90018, -1.55367, -2.03672, 3.775, 1.86995, -1.86995, 1.13075, -2.8569, 2.8569}, {-4.90575, 0.986953, -0.986953, 1.13075, -2.8569, 2.8569, -1.91647, -0.397296, -4.84209, 5.69148, 2.26724, 2.97215}, {4.19746, -5.51046, 2.84944, 1.88954, 6.77064, -1.88954, -2.89363, -5.45245, -4.15327, -3.19336, 4.19228, 3.19336}, {8.88178e-16, 7.0469, 0, -3.99886, -4, -4, 7.04488, 0, 0, -3.04603, -3.0469, 4}, {-4, 4, -4, 0, -7.0469, 0, 4, 3.0469, -3.0469, 0, 0, 7.0469}, {5.23123, 5.81945e-16, 0, -5.23123, -5.23939, 4, 0, 5.23939, 0, 1.6327e-11, 1.54706e-11, -4}, {-0.750211, -0.75138, 4.81251, 1.07726, -4.16045, 1.64668, -2.20213, 3.03383, -5.71589, 1.87508, 1.878, -0.743302}, {4, -2.28271e-11, 2.36273e-11, -4, 5.23939, -5.23939, 0, -5.23939, 0, 0, 0, 5.23939}, {3.80063, -1.80519, -1.80851, 1.09322, 2.76209, 2.76114, -3.92166, 1.49941, -2.08755, -0.972194, -2.45631, 1.13492}, {-1.92104, 0.382436, -4.85423, 5.71942, -2.18677, 3.04452, 1.09257, 2.76234, 2.76079, -4.89095, -0.95801, -0.95108}, {3.0469, 3.0469, -4, 4, 4, 4, -7.0469, 0, 0, 0, -7.0469, 0}, {-3.52345, 3.52244, -3.52446, 3.52244, 3.52345, 3.52345, -3.52244, -3.52345, 3.52345, 3.52345, -3.52244, -3.52244}, {-3.89489, -0.305669, 2.97354, 3.45053, 3.44843, 1.3657, 0, -3.58881, 0, 0.444357, 0.446058, -4.33924}, {3.45195, 3.44854, 1.36462, 5.6826, 0.445968, -4.33837, -3.89516, -3.89451, 2.97375, -5.23939, 0, 0}, {3.2348, 1.4231, -1.28032, 0, -3.01876, 0, -3.04119e-12, 1.63545, 4.51512, -3.2348, -0.0397999, -3.2348}, {-2.82577, -2.82405, -1.11842, -1.29033, 2.2973, 4.00441, 3.2475, -0.343291, 1.28534, 0.868592, 0.870035, -4.17133}, {1.88206, -3.35082, -5.84079, -2.82615, -2.82336, -1.11723, 1.95788, 1.95275, 5.28756, -1.01379, 4.22143, 1.67046}, {4.00887, -0.711384, 1.23085, -1.07985, 3.872, 1.08301, -1.46134, -0.730093, -3.78093, -1.46768, -2.43052, 1.46707}, {-6.11172, -2.09613, -3.09899, -3.35065, 1.32617, 2.2044, 6.08523, -2.4085, 1.35769, 3.37714, 3.17846, -0.4631}, {0, -1.78762, -4.51512, 0, -1.19223, 4.51512, 2.9332, 1.45476, -2.90418, -2.9332, 1.52509, 2.90418}, {-8.88178e-16, 0, 7.0469, -3.0469, -4, -3.0469, -4, 4, -4, 7.0469, 0, 0}, {-1.83438, 2.64163, -0.00817939, 1.49822, -0.389218, 3.22599, -2.02268, -3.19987, 0.00990788, 2.35884, 0.947457, -3.22772}, {-3.58659, -3.58659, 0.548674, 1.12084, -3.39428, -1.90685, -0.156642, 4.35848, -1.19262, 2.6224, 2.6224, 2.5508}, {-3.52345, -3.52345, -3.52345, 3.52345, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345}, {4.44089e-16, 0, 2.95197, 4.40828e-12, -4.51512, -1.73539, -3.2348, 1.28032, -0.721726, 3.2348, 3.2348, -0.494857}, {-4.24471, 8.88178e-16, -4.44089e-16, 1.287, -4, -4, -1.6658, 8.15492, 0.835098, 4.62351, -4.15492, 3.1649}, {0.885858, -4.33672, -0.444099, -4.24471, 0, 0, 3.16813, 2.96992, 3.89452, 0.190724, 1.3668, -3.45042}, {-2.32703e-11, -0.00283219, 4, 5.23939, 5.23851, -4, 0, -5.23568, 0, -5.23939, 0, 0}, {-5.23939, -4, -5.23939, 2.28255e-11, 4, 2.28255e-11, 0, 0, 5.23939, 5.23939, 0, 0}, {4.47576, -1.93017, 0, -2.90763, 1.52342, 2.9332, 2.90763, 1.45643, -2.9332, -4.47576, -1.04967, 0}, {-2.74183, 0.846161, -0.849296, 1.62977, 1.63119, -1.63119, 0.777461, 0.778141, 2.81224, 0.334598, -3.25549, -0.331753}, {-2.36134, 0, 0, 1.74759, 0, 2.9332, -0.525012, -2.9332, -2.9332, 1.13877, 2.9332, 0}, {-3.21511, 0.1024, -3.24338, 3.21511, -1.89002, -1.27174, 0, 2.97985, 0, -3.36919e-12, -1.19223, 4.51512}, {0, 5.23939, 4.12864e-16, 0, 0, 5.23939, -4, -5.23939, -5.23372, 4, 2.28255e-11, -0.00566839}, {-2.40793, -0.260266, -0.260266, 0.500707, 2.7974, 2.7974, 1.23528, -2.86224, 0.0709597, 0.671946, 0.325101, -2.6081}, {4, 5.23939, -5.23939, 0, 0, 5.23939, -4, 2.28278e-11, -2.36282e-11, 0, -5.23939, 0}, {-4.44089e-16, 7.0469, 0, -7.0469, 0, 0, 3.0469, -3.0469, -4, 4, -4, 4}, {3.22647, -1.69048, -3.25484, 1.27702, -0.254226, 3.22687, 0, 2.97985, 0, -4.5035, -1.03514, 0.0279753}, {-3.50419, 8.88178e-16, 2.01228e-16, -0.300503, -3.2348, 3.2348, 0.9543, -1.27452, -3.22084, 2.85039, 4.50932, -0.0139624}, {-2.58829, 1.58763, 2.59096, 3.47782, 1.19279, 1.76345, 1.14429, -4.10309, -1.14764, -2.03382, 1.32267, -3.20677}, {-0.0193683, 3.11794, -1.2591, 3.23344, 0.218445, 1.74096, -3.23197, -0.456248, 0.785873, 0.0178911, -2.88013, -1.26773}, {4, -4, -4, -7.0469, 0, 0, 3.0469, -3.0469, 4, 0, 7.0469, 0}, {2.09645, -2.09645, -0.829765, 1.02053, 4.21886, 1.6698, -1.9812, -3.25819, -5.80469, -1.13578, 1.13578, 4.96465}, {0, 3.04177, 0.0635186, 0, -2.06144, 2.64295, -2.9332, -0.059438, -2.99766, 2.9332, -0.920892, 0.29119}, {1.04124, -3.22316, -3.25521, -4.24471, 0, 0, -0.179146, -1.28383, 3.24097, 3.38261, 4.507, 0.0142405}, {3.21511, -2.56163, 1.27174, -3.21511, -1.61044, 3.24338, 0, 2.97985, 0, 3.36919e-12, 1.19223, -4.51512}, {-3.65939, -3.66043, -10.7063, -3.52295, 3.52295, 3.52395, 3.52295, -3.52295, 3.52295, 3.65939, 3.66043, 3.65939}, {0.841653, -8.14937, -0.83453, 0, 0, -3.59038, -4.00321, 3.99728, 3.99972, 3.16156, 4.15209, 0.425192}, {0, -8.88178e-16, -5.23939, -4, -5.23123, 5.23372, 4, -1.54883e-11, 0.00566839, 0, 5.23123, 0}, {3.88882, 3.89489, 2.97354, 5.23123, 0, 0, -3.44516, -3.45053, 1.3657, -5.6749, -0.444357, -4.33924}, {8.15548, 0.834427, -0.835156, 0, 0, -3.59038, -4.00272, -3.99679, 4.00028, -4.15276, 3.16236, 0.425261}, {1.3657, 3.45053, -3.45053, 0, 0, 3.59038, -4.33924, 0.444357, -0.444357, 2.97354, -3.89489, 0.304504}, {-0.837584, 3.2348, -1.28032, -0.944765, -3.55036e-12, 4.51512, -0.578996, -3.2348, -3.2348, 2.36134, 0, 0}, {-3.0469, 3.0469, -4, 0, -7.0469, 0, 7.0469, 0, 0, -4, 4, 4}, {0.832911, -2.82507, -0.828908, 0.808732, 3.17388, -0.81323, -3.40548, -0.230067, -1.83358, 1.76384, -0.118743, 3.47572}, {4.44089e-16, -3.01876, 0, 1.28032, 1.39906, -3.2348, -4.51512, 1.5799, -3.09855e-12, 3.2348, 0.0397999, 3.2348}, {1.27174, 3.21511, 0.89222, 0, 0, -2.4308, 3.24338, -3.21511, 0.698828, -4.51512, 3.70603e-12, 0.839751}, {-1.79652, -1.79386, -1.79496, 1.79652, 1.79386, -1.79543, -3.65719, 3.65719, -0.0700075, 3.65719, -3.65719, 3.66039}, {-2.2828e-11, 4, 0.0025524, 0, 0, 5.24273, -5.23939, 0, 0, 5.23939, -4, -5.24528}, {-1.75292, -4.51512, -4.40936e-12, 0.0630025, 1.28032, 3.2348, 2.36134, 0, 0, -0.671422, 3.2348, -3.2348}, {-1.82767, 3.81744, 1.76272, -0.114041, 1.46619, -3.70442, 2.43635, -0.964293, 2.43635, -0.494641, -4.31934, -0.494641}, {-3.45053, -1.3657, -3.45053, -0.444357, 4.33924, -5.68374, 0, 0, 5.23939, 3.89489, -2.97354, 3.89489}, {2.9332, 2.26271, -0.706418, -2.9332, 1.41766, 2.12097, 0, -0.989411, -3.33225, 0, -2.69097, 1.9177}, {0, -1.39581e-17, 4.03735, -3.2348, -3.2348, -3.14648, -1.28032, 3.2348, -2.28562, 4.51512, 4.40982e-12, 1.39475}, {3.25531, -1.69257, -3.22311, -3.621e-12, -1.19223, 4.51512, 0, 2.97985, 0, -3.25531, -0.095055, -1.29201}, {-2.43276, 1.15549, 1.15762, 2.22336, 2.22531, 2.22336, 0.45554, -3.13444, 0.45554, -0.246142, -0.246357, -3.83653}, {4.00272, -3.99679, 4.00378, -8.15548, 0.834427, -0.842284, 4.15276, 3.16236, 0.42889, 0, 0, -3.59038}, {-2.25991, 1.3285, 0.893907, -1.12519, -1.12617, -4.07005, 1.87562, 1.87726, -0.7419, 1.50948, -2.07958, 3.91804}, {-3.45053, 1.3657, -3.45053, -0.444357, -4.33924, -5.68374, 3.89489, 2.97354, 3.89489, 0, 0, 5.23939}, {-3.2348, 0.341949, -1.28032, 0, -3.12276, 0, 3.2348, 0.619904, -3.2348, -3.95817e-12, 2.1609, 4.51512}, {2.97704, 0.304595, -3.89524, -4.34434, -0.444491, 0.444879, 1.36731, -3.44735, 3.45037, 0, 3.58725, 0}, {1.27702, -1.8283, -3.22687, 3.22647, -0.102762, 3.25484, 0, 2.97985, 0, -4.5035, -1.04879, -0.0279753}, {5.67645, -4.33837, 0.445968, 3.45388, 1.36462, 3.44854, -3.89094, 2.97375, -3.89451, -5.23939, 0, 0}, {0, 0, -5.23568, -0.00566839, -4, 0.00283219, 5.24506, 4, 5.23285, -5.23939, 0, 0}, {2.97354, -3.89489, 3.89489, 1.3657, 3.45053, -3.45053, 0, -5.23939, 0, -4.33924, 5.68374, -0.444357}, {7.0469, 0, 0, 0, 0, -7.0469, -4, -4, 4, -3.0469, 4, 3.0469}, {0.676898, -0.676898, 2.91348, 1.85764, -1.85764, -1.85764, -2.8863, -0.704082, -0.704082, 0.351759, 3.23862, -0.351759}, {-1.71643, -3.77342, 1.87396, 2.40825, 0.953172, 2.40825, -0.071317, -1.44928, -3.6617, -0.620505, 4.26953, -0.620505}, {-3.52345, -3.52345, -3.52345, 3.52345, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345}, {-1.16853, 4.05757, 2.41902, -2.70338, -1.07129, -2.70173, 3.36405, 1.3331, -0.22682, 0.507865, -4.31938, 0.509529}, {0.235286, 2.46776, -2.45659, -1.58499, 1.09747, 2.26228, -1.89674, -2.81329, -0.210235, 3.24644, -0.75193, 0.40455}, {1.72714, 0.683827, -1.72773, -2.24537, -3.98415, -1.34153, 0.964303, -1.03975, 2.62699, -0.446071, 4.34007, 0.442278}, {-7.18233, -0.137487, -7.18233, 1.86445, 1.86498, 5.45483, 3.52295, -3.52295, 3.52295, 1.79493, 1.79545, -1.79545}, {0, -8.88178e-16, -2.4308, -3.22687, 1.27702, -0.160385, -0.0279753, -4.5035, 1.80584, 3.25484, 3.22647, 0.785343}, {3.45037, 1.36731, 3.44826, -3.89524, 2.97704, -0.306029, 0, 0, -3.58881, 0.444879, -4.34434, 0.446582}, {3.24278, -1.28505, 1.07917, 0, 0, -2.6315, -3.21463, -3.24675, -0.442405, -0.0281511, 4.53179, 1.99473}, {1.7269, 0.683416, -1.72787, -1.27936, -5.02087, 1.28648, 3.27466, 5.8105, 1.9565, -3.7222, -1.47305, -1.5151}, {-5.23372, -4, 5.23939, -0.00566839, 4, -2.28255e-11, 5.23939, 0, 0, 0, 0, -5.23939}, {0.0281511, 4.53179, 2.33833, 0, 0, -2.884, 3.21463, -3.24675, 0.327026, -3.24278, -1.28505, 0.218644}, {-3.52345, -3.52345, 3.52345, -3.52345, 3.52345, -3.52345, 3.52395, 3.52295, 3.52295, 3.52295, -3.52295, -3.52295}, {1.3657, 3.45494, 3.45053, -4.33924, 5.691, 0.444357, 2.97354, -3.89986, -3.89489, 0, -5.24608, 0}, {-1.06097, 2.95229, -1.06649, 4.44047, 0.792573, -0.800037, -2.21214, -0.888535, 3.02699, -1.16736, -2.85632, -1.16047}, {4, 4, -4, -3.1649, -3.16386, -4.15492, 0, -7.04589, 0, -0.835098, 6.20975, 8.15492}, {-3.23839, -0.578016, 0.58346, 0.0195373, 3.14514, -1.26116, 3.23532, 0.0837745, 2.04552, -0.0164672, -2.6509, -1.36782}, {-3.59038, 4.44089e-16, 0, 4, 4, -4, -0.834843, -0.83804, 8.15243, 0.425226, -3.16196, -4.15243}, {-3.99679, -4.00028, -4.00272, 0, 3.59038, 0, 0.834427, 0.835156, 8.15548, 3.16236, -0.425261, -4.15276}, {-0.618598, -0.619625, 2.97076, -2.5319, -2.52969, -2.52969, -0.377606, 3.21154, -0.378844, 3.52811, -0.062223, -0.062223}, {-6.21002, 0.835098, 8.15492, 3.164, 3.1649, -4.15492, 7.04488, 0, 0, -3.99886, -4, -4}, {-2.96943, -3.89447, -0.304082, 0, 0, -3.59038, -1.36934, 3.45016, 3.45016, 4.33877, 0.444309, 0.444309}, {-4.44089e-16, 3.59038, 0, 0.834427, 0.835156, -8.15548, 3.16236, -0.425261, 4.15276, -3.99679, -4.00028, 4.00272}, {4.15492, 0.425481, -3.1649, 0, -3.59038, 0, 4, 4, 4, -8.15492, -0.835098, -0.835098}, {0.444309, -0.444309, -4.33877, -3.89447, 0.304082, 2.96943, 3.45016, -3.45016, 1.36934, 0, 3.59038, 0}, {-4.44089e-16, 7.0469, 0, -3.04603, -3.0469, -4, 7.04488, 0, 0, -3.99886, -4, 4}, {-6.34716e-16, 0, 4.03735, -3.2348, 3.2348, 1.14797, 3.2348, 1.28032, -2.18823, -4.40962e-12, -4.51512, -2.99709}, {-1.3657, -3.45053, -3.44934, 4.33924, -0.444357, -0.44815, -2.97354, 3.89489, 0.307102, 0, 0, 3.59038}, {-4, 4, -4, 0, 0, 7.0469, 0.835098, -8.15492, -6.2118, 3.1649, 4.15492, 3.1649}, {1.22258, -2.9332, -2.86482e-12, -0.434061, 0, 3.2348, 1.13877, 2.9332, 2.86495e-12, -1.92728, 0, -3.2348}, {0.619868, 0, -4.61952, 1.07793, -2.9332, 1.07793, 1.00404, 2.9332, 1.00404, -2.70184, 0, 2.53754}, {8.15492, -0.835098, -6.2118, -4, 4, -4, -4.15492, -3.1649, 3.1649, 0, 0, 7.0469}, {-1.77636e-15, 0, 7.0469, -4, -4, -4, -3.0469, 4, -3.0469, 7.0469, 0, 0}, {3.89735, -2.97221, -3.89314, -0.447948, 4.33729, 5.68119, 0, 0, -5.23939, -3.4494, -1.36509, 3.45133}, {0.300503, 3.2348, -3.2348, -3.50419, 0, 0, 0.773493, -3.22084, -1.27452, 2.43019, -0.0139624, 4.50932}, {-5.23939, 4, -5.23939, 5.23939, 0, 0, 0, 0, 5.23939, -2.28255e-11, -4, -2.28255e-11}, {5.23939, 0, -1.75044e-16, -5.24506, 4, 5.23939, 0, 0, -5.23939, 0.00566839, -4, 2.28255e-11}, {3.95255, -0.362167, 0.362483, -0.482349, -3.10803, -0.479633, -1.12077, 1.12077, 2.46863, -2.34943, 2.34943, -2.35148}, {1.27685, 3.22605, 0.364333, -1.43581, -3.62766, 3.62766, -4.79345, -0.703234, 0.703234, 4.95241, 1.10484, -4.69522}, {-3.45053, 3.45053, 1.3657, -0.444357, 0.444357, -4.33924, 3.89489, -0.304504, 2.97354, 0, -3.59038, 0}, {-1.03322, 0, 2.9332, -2.44657, -2.9332, -2.9332, -0.388139, 2.9332, 0, 3.86792, 0, 0}, {-2.86482e-12, -2.9332, 2.09032, -3.2348, 0, -0.999254, 2.86466e-12, 2.9332, 1.94703, 3.2348, 0, -3.03809}, {3.99728, -3.99972, -4.00321, -8.14937, 0.83453, 0.841653, 4.15209, -0.425192, 3.16156, 0, 3.59038, 0}, {-3.65719, -3.66039, -3.65719, -1.79386, 1.79496, 1.79652, 3.65719, 0.0700075, 3.65719, 1.79386, 1.79543, -1.79652}, {0.32313, 3.2444, -3.2106, 3.54154, -2.30319, 5.58401, -2.14916, 1.30205, 3.28335, -1.71551, -2.24325, -5.65675}, {-3.89489, 2.97354, -2.82238, 0, 0, 4.03735, 0.444357, -4.33924, -0.86478, 3.45053, 1.3657, -0.350185}, {1.84375, -4.52327, -0.014292, 0.315792, 3.2348, -3.2348, -3.14489, 0, 0, 0.985347, 1.28847, 3.24909}, {-4.33924, -0.444357, -5.6776, 0, 0, 5.23939, 1.3657, -3.45053, -3.45246, 2.97354, 3.89489, 3.89067}, {5.23939, 0, 4.44089e-16, -3.45053, 3.45053, 1.3657, -5.68374, 0.444357, -4.33924, 3.89489, -3.89489, 2.97354}, {7.0469, 8.88178e-16, 0, 3.16371, 4.15492, -3.1649, -6.20947, -8.15492, -0.835098, -4.00114, 4, 4}, {-0.782485, -3.2348, -1.28032, 2.60358, 0, 0, -0.410568, 3.2348, -3.2348, -1.41052, 3.55036e-12, 4.51512}, {-4, 4, -4, -4.15492, 0.425481, 3.1649, 0, -3.59038, 0, 8.15492, -0.835098, 0.835098}, {-1.75292, -4.51512, 4.40936e-12, -1.18742, 1.28032, -3.2348, 0.578996, 3.2348, 3.2348, 2.36134, 0, 0}, {-4, -4, -4, -6.2118, 8.15492, 0.835098, 3.1649, -4.15492, 3.1649, 7.0469, 0, 0}, {0.304504, -2.97354, 3.89489, -3.45053, -1.3657, -3.45053, -0.444357, 4.33924, -0.444357, 3.59038, 0, 0}, {-0.968585, 2.9332, 1.64782, -3.80236, -2.9332, 0.915743, 1.28259, 0, -3.64114, 3.48835, 0, 1.07758}, {8.15492, 0.835098, -3.7826, -4, -4, 0.45685, 0, 0, 5.36117, -4.15492, 3.1649, -2.03542}, {-4, 4, -4, 0, -7.0469, 0, 7.0469, 0, 0, -3.0469, 3.0469, 4}, {-2.33946, 1.78605, 2.34209, 3.03792, -2.3193, 2.20139, -2.35172, -2.20459, -2.89092, 1.65325, 2.73783, -1.65256}, {2.60358, 0, 3.0632e-16, -1.03055, -1.28032, -3.2348, 0.410568, -3.2348, 3.2348, -1.98359, 4.51512, -4.40967e-12}, {-3.59038, 1.77636e-15, -1.11022e-16, 4, -4, 4, 0.425226, -4.15243, -3.16196, -0.834843, 8.15243, -0.83804}, {0, 0, -5.23939, -4, 1.54883e-11, -0.00566839, 4, -5.23123, 5.24506, 0, 5.23123, 0}, {-1.62732e-11, 1.54703e-11, 4, 5.23939, 0, 0, 0, -5.23939, 0, -5.23939, 5.23939, -4}, {4.72393, 2.32297, -6.20162, -2.81181, -4.23508, -5.55986, 1.34415, -1.34415, 7.48662, -3.25627, 3.25627, 4.27486}, {-3.1649, -4.15492, -3.16386, -0.835098, 8.15492, 6.20975, 4, -4, 4, 0, 0, -7.04589}, {2.10128, 3.1649, 4.15492, 3.73608, 0.835098, -8.15492, -0.419151, -4, 4, -5.41822, 0, 0}, {0, 0, -7.0469, 7.0469, 0, 0, -4.00114, 4, 4, -3.04575, -4, 3.0469}, {-3.89511, 3.89452, 2.96992, -5.24608, 0, 0, 5.68769, -0.444099, -4.33672, 3.45349, -3.45042, 1.3668}, {-7.0469, 0, 0, 4.00114, 4, 4, 3.04575, -4, 3.0469, 0, 0, -7.0469}, {-5.24608, 0, 0, 5.24608, -5.24018, 4, 2.32367e-11, -0.0025524, -4, 0, 5.24273, 0}, {4.44089e-16, 4.44089e-16, 4.03735, -4.51512, 4.40818e-12, -1.39475, 3.2348, 3.2348, -1.306, 1.28032, -3.2348, -1.33659}, {6.38334, 0.936482, -0.936482, -5.90226, 2.17282, 1.41756, -3.46093, -0.129456, -3.46093, 2.97985, -2.97985, 2.97985}, {-0.252976, 0.252976, -3.84336, 0.368915, 3.22147, 0.368915, -2.40103, -1.18935, 1.18935, 2.28509, -2.28509, 2.28509}, {-1.44735, 2.54109, 0.82519, -0.346604, -3.63529, 3.61884, -1.58915, 0.412839, -3.42177, 3.3831, 0.681367, -1.02226}, {-2.32365e-11, 0.0025524, 4, -5.24608, 0, 0, 0, 5.24273, 0, 5.24608, -5.24528, -4}, {-3.59357e-12, 3.68038, 1.41455, 2.62736e-12, -2.69097, 1.9177, -3.2348, 0.574024, -0.993189, 3.2348, -1.56344, -2.33906}, {2.74148, 0.0555531, 2.80173, -2.9202, -2.12061, -0.341431, -0.0977885, 3.03978, -0.0364189, 0.27651, -0.974727, -2.42388}, {4.00321, 3.99728, 3.99972, 0, 0, -3.59038, -0.841653, -8.14937, -0.83453, -3.16156, 4.15209, 0.425192}, {0, 8.88178e-16, -7.0469, 0, 7.04488, 0, -4, -3.99886, 4, 4, -3.04603, 3.0469}, {-4.40759e-12, 4.51512, -3.21766, 0, 0, 4.03735, -3.2348, -1.28032, 0.328292, 3.2348, -3.2348, -1.14798}, {-3.2348, -3.2348, 1.306, 4.40977e-12, 4.51512, -3.21766, 0, 0, 4.03735, 3.2348, -1.28032, -2.12568}, {1.28032, 0.265417, 3.2348, -4.51512, 1.06793, -3.90061e-12, 3.2348, 1.75796, -3.2348, 0, -3.09131, 0}, {-2.85306, -1.28668, -1.28504, 3.1184, -0.694894, -0.694008, 0.0152986, 3.82424, -1.42003, -0.280638, -1.84266, 3.39908}, {3.0469, 4, -3.0469, -7.0469, 0, 0, 4, -4, -4, 0, 0, 7.0469}, {1.29201, -3.25531, 0.810704, 0, 0, -2.6315, -4.51512, -3.75807e-12, 1.37723, 3.22311, 3.25531, 0.443571}, {-3.66502, 2.14914, 1.43616, 0.752328, 1.90198, -1.90298, 4.02391, -1.24183, 1.24643, -1.11122, -2.8093, -0.779603}, {8.15492, -3.3488, 0.835098, -4.15492, -1.54688, 3.1649, 0, 4.85752, 0, -4, 0.0381551, -4}, {-3.45053, 1.3657, -3.45053, 3.59038, 0, 0, 0.304504, 2.97354, 3.89489, -0.444357, -4.33924, -0.444357}, {-4, 3.0469, -3.0469, 0, -7.0469, 0, 4, 4, -4, 0, 0, 7.0469}, {-10.7068, 3.65991, -3.65991, 3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, 3.65991, -3.65991, 3.65991}, {0, -3.59038, 4.44089e-16, 3.1649, 0.425481, 4.15492, 0.835098, -0.835098, -8.15492, -4, 4, 4}, {-1.94171, 5.28363, -1.94171, 2.66708, -5.57073, -2.5723, 2.43635, -0.964293, 2.43635, -3.16172, 1.25139, 2.07766}, {0.099584, -1.28032, 3.2348, -1.88193, 4.51512, 4.40977e-12, 2.36134, 0, 0, -0.578997, -3.2348, -3.2348}, {-6.2118, -0.835098, -8.15492, 3.1649, -3.1649, 4.15492, 7.0469, 0, 0, -4, 4, 4}, {0.75324, 1.90144, -1.90334, 5.34316, -3.13319, -2.09374, -1.32234, 1.89318, 3.34138, -4.77406, -0.661432, 0.655698}, {4.44089e-16, 7.04488, 0, -4.15492, 3.164, -3.1649, 8.15492, -6.21002, -0.835098, -4, -3.99886, 4}, {-2.97354, -3.89986, -3.89489, 4.33924, 5.691, 0.444357, -1.3657, 3.45494, 3.45053, 0, -5.24608, 0}, {0, 0, -5.23939, 4, 5.24608, 5.23939, -4, -1.55241e-11, -1.5915e-11, 0, -5.24608, 0}, {-0.444357, 5.68374, 4.33924, 3.89489, -3.89489, -2.97354, 0, -5.23939, 0, -3.45053, 3.45053, -1.3657}, {3.52345, -3.52345, -3.52345, -3.52345, -3.52345, 3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345, -3.52345}, {3.59038, 0, 0, 0.304504, -3.89489, -2.97354, -0.444357, 0.444357, 4.33924, -3.45053, 3.45053, -1.3657}, {5.23123, -8.88178e-16, 0, -5.23123, -5.23939, -4, -1.6327e-11, -1.54706e-11, 4, 0, 5.23939, 0}, {-1.36374, -3.44772, 3.44954, -2.97575, 3.89171, -0.30733, 4.3395, -0.443995, 0.448176, 0, 0, -3.59038}, {-3.16371, 4.15492, -3.1649, 4.00114, 4, 4, -7.0469, 0, 0, 6.20947, -8.15492, -0.835098}, {-3.52395, -3.52295, -3.52295, -3.52295, 3.52295, 3.52295, 3.52295, -3.52295, 3.52395, 3.52395, 3.52295, -3.52395}, {4, -4, -4.00114, -8.15492, 0.835098, -6.20947, 0, 0, 7.0469, 4.15492, 3.1649, 3.16371}, {-0.425481, 4.15492, 3.1649, 0.835098, -8.15492, 0.835098, -4, 4, -4, 3.59038, 0, 0}, {-1.79519, 1.79519, -1.79519, -1.79519, -1.79519, 1.79519, -0.0700075, -3.65719, -3.65719, 3.66039, 3.65719, 3.65719}, {4, 4, -4, 0, 0, 7.0469, -7.0469, 0, 0, 3.0469, -4, -3.0469}, {1.16094, -1.15703, 4.97097, -1.66567, -3.57722, 1.41703, -2.89698, 2.8944, -1.14655, 3.40171, 1.83985, -5.24145}, {-2.7042, -1.06842, -2.70002, 1.70166, -5.90879, -3.52267, 2.19866, 5.37974, 2.18568, -1.19612, 1.59748, 4.03701}, {4.33729, -5.67235, 0.447948, -1.36509, -3.44596, 3.4494, 0, 5.23123, 0, -2.97221, 3.88708, -3.89735}, {3.2348, -3.2348, -1.14797, 0, 0, 4.03735, 1.28032, 3.2348, -1.49462, -4.51512, -4.40977e-12, -1.39475}, {4, 4, 4, -0.835098, -0.835098, -8.15492, 0, -3.59038, 0, -3.1649, 0.425481, 4.15492}, {-3.1649, -3.1649, 4.15492, -7.0469, 0, 0, 4, 4, 4, 6.2118, -0.835098, -8.15492}, {0.724826, 0.724826, -6.59499, -3.21143, -3.21143, -3.21143, 3.7299, 0.139517, 3.7299, -1.24329, 2.34709, 6.07653}, {2.48661, 2.48661, 9.80643, -3.21143, -3.21143, -3.21143, -1.7154, 5.33149, 5.33149, 2.44023, -4.60667, -11.9265}, {-4.95125, 1.10332, 1.10192, -1.44818, -1.58249, 3.65892, 0.833328, -2.10815, -2.10546, 5.5661, 2.58731, -2.65538}, {0.836183, -2.10682, -2.10682, 4.11656, 1.00419, 1.00419, -1.14088, 2.87451, -0.715871, -3.81187, -1.77188, 1.8185}, {0.343882, -3.2462, -1.28483, 0.297233, 0.297493, 4.63286, 2.13498, 2.13685, 0.845752, -2.7761, 0.811861, -4.19379}, {5.55112e-17, 5.23939, 8.88178e-16, -3.44772, -3.45309, -1.36374, 3.89171, 3.89778, -2.97575, -0.443995, -5.68407, 4.3395}, {3.58725, -4.44089e-16, 0, -3.44752, -3.45053, -1.3657, -0.443969, -0.444357, 4.33924, 0.304238, 3.89489, -2.97354}, {3.65991, -3.65991, -3.65991, 3.52345, 3.52345, -3.52345, -3.52345, -3.52345, -3.52345, -3.65991, 3.65991, 10.7068}, {3.1649, -4.15492, -3.1649, 0, 0, -7.0469, -4, -4, 4, 0.835098, 8.15492, 6.2118}, {-4, -4, 4, 0.835098, 8.15492, -0.835098, 3.59038, 0, 0, -0.425481, -4.15492, -3.1649}, {-1.3476, -0.0112467, -3.55949, 1.85019, -3.24836, -1.05487, 1.92324, 3.24442, -0.189939, -2.42583, 0.0151799, 4.80429}, {1.17675, 3.24909, 1.28847, -0.315792, -3.2348, 3.2348, -3.14489, 0, 0, 2.28393, -0.014292, -4.52327}, {8.15492, -0.835098, -0.835098, -4, 4, 4, 0, 0, -3.59038, -4.15492, -3.1649, 0.425481}, {-4.15492, -3.1649, -3.1649, -4, 4, 4, 0, -7.0469, 0, 8.15492, 6.2118, -0.835098}, {0.137487, 7.18233, 7.18233, -1.79519, 1.79519, -1.79519, 3.52295, -3.52295, -3.52295, -1.86524, -5.45458, -1.86419}, {3.52295, -3.52295, -3.52295, -3.66043, -3.65939, -3.65939, -3.52345, -3.52345, 3.52345, 3.66094, 10.7058, 3.65888}, {1.67988, -1.68212, -5.18466, -2.30896, 2.30807, 0.915293, -1.39444, -3.85015, -1.52682, 2.02352, 3.2242, 5.7962}, {3.4516, -3.45027, -1.36825, -3.89922, 3.89484, -2.97306, -5.24608, 0, 0, 5.6937, -0.444568, 4.3413}, {1.94453e-16, 2.70417, 0, 3.25531, -0.177688, 3.22311, -3.25531, -0.557762, 1.29201, 3.62091e-12, -1.96872, -4.51512}, {3.09726e-12, 1.01994, -3.86266, -3.25531, -0.69454, 0.97832, 3.25531, -2.18133, -1.3721, -3.41346e-12, 1.85593, 4.25643}, {2.90521, -1.78203, -2.9082, 2.41571, 1.84427, 2.82665, -2.85063, 1.82369, -2.38912, -2.47029, -1.88594, 2.47066}, {-5.23939, 0, -8.88178e-16, 0, 0, 5.24273, 2.28278e-11, -4, -0.0025524, 5.23939, 4, -5.24018}, {-3.52295, 3.52295, 3.52295, 1.79545, 1.79493, -1.79545, 7.18233, -7.18233, 0.137487, -5.45483, 1.86445, -1.86498}, {-3.52295, 3.52295, 3.52295, -3.52395, -3.52295, -3.52295, -3.65939, 3.65939, -3.66043, 10.7063, -3.65939, 3.66043}, {-0.835098, 0.835098, 8.15492, 0, 3.59038, 0, 4, -4, -4, -3.1649, -0.425481, -4.15492}, {-7.0469, 5.55112e-16, 0, 4, -4, -4, -3.1649, 3.1649, -4.15492, 6.2118, 0.835098, 8.15492}, {0.662971, 0.664005, -4.25288, 1.65703, 1.65961, 0.655439, -2.91351, 2.32133, -1.15244, 0.59351, -4.64495, 4.74988}, {1.19438, -3.49493, 0, -2.76951, 1.19435, 0, 1.94164, -0.567827, 2.9332, -0.366511, 2.8684, -2.9332}, {2.36134, 1.0718e-17, 0, 0.671422, -3.2348, 3.2348, -0.342675, 3.2348, 1.28032, -2.69009, 3.55093e-12, -4.51512}, {-1.10548, 3.2348, 0, -1.25586, -3.2348, 0, 0.613756, 2.30645e-12, -2.9332, 1.74759, -2.30645e-12, 2.9332}, {3.2348, 0.120997, 3.2348, 0, -3.09131, 0, -3.2348, -0.551371, 1.28032, 3.95817e-12, 3.52168, -4.51512}, {-3.2348, 0.76173, -0.403199, 2.15323e-12, -1.17552, -2.45621, 3.2348, 2.34907, 0.378214, -2.17514e-12, -1.93527, 2.4812}, {-3.53969, 3.53969, 2.69627, -1.11299, 1.11299, -6.1991, 5.13509, 1.9118, -3.91153, -0.482412, -6.56449, 7.41436}, {4.72983, -3.60283, 2.31706, -1.62186, -5.81149, 1.62186, -3.59839, 2.74098, 3.59839, 0.490411, 6.67334, -7.53731}, {-4, 4, -4, 4, -4, -3.0469, 0, 7.0469, 0, 0, -7.0469, 7.0469}, {0, 0, 7.0469, 4, -3.0469, -4, -4, -4, 4, 0, 7.0469, -7.0469}, {1.26315, 3.1826, -0.407781, -4.48373, 0.0790768, 0.0790768, -1.01464, -2.55645, -2.55645, 4.23522, -0.705229, 2.88515}, {-1.01079, -2.55709, -2.55383, 1.69808, -0.95029, 4.29031, 5.49464, 2.47799, 2.47483, -6.18193, 1.02939, -4.21131}, {-1.79519, -1.79519, 1.79519, -3.65991, 3.65991, -3.65991, 1.79519, 1.79519, 1.79519, 3.65991, -3.65991, 0.0695263}, {-1.79519, -1.79519, 1.79519, 5.4551, -1.86472, 1.86472, 3.52345, -3.52345, -3.52345, -7.18336, 7.18336, -0.13646}, {0, -4.44089e-16, 3.59038, -8.15492, -0.835098, 0.835098, 4, 4, -4, 4.15492, -3.1649, -0.425481}, {4.15492, -3.1649, 3.1649, 4, 4, -4, 0, -7.0469, 0, -8.15492, 6.2118, 0.835098}, {4.18211, -0.841369, 0.841369, 1.63378, -1.11155, -4.12784, -0.96395, -2.43548, 2.43548, -4.85193, 4.3884, 0.850991}, {-2.9332, -0.654372, 2.78087, 0, 0.366146, -3.84129, 0, 2.94119, 1.57488, 2.9332, -2.65297, -0.514459}, {4.51512, -1.06793, 3.90044e-12, 0, -3.09131, 0, -1.28032, 0.871067, 3.2348, -3.2348, 3.28817, -3.2348}, {0, -0.430374, 4.51512, -2.9332, -0.109716, -2.9332, 0, 3.52168, -4.51512, 2.9332, -2.98159, 2.9332}, {4.19026, 0.820764, 0.814826, 1.21474, -3.06912, 2.16855, -0.936049, 2.36499, 2.36631, -4.46895, -0.116634, -5.34969}, {0.972372, 0.736781, -3.03724, -3.79781, 2.2903, -1.05943, 0.111338, -3.09792, 0.84769, 2.7141, 0.0708344, 3.24899}, {-2.55729, 1.01135, -2.55763, -2.08284, -1.24835, 3.15697, 1.89416, -5.27077, 1.90402, 2.74596, 5.50777, -2.50336}, {3.77679, -1.49465, 0.187718, 0.660093, 4.25334, 0.656376, -2.557, 1.01192, -2.55789, -1.87988, -3.77061, 1.7138}, {-5.23939, 0, -5.55112e-17, 3.4502, -1.36448, 3.45065, -3.90439, -2.97758, -3.8953, 5.69358, 4.34205, 0.444645}, {-4.44089e-16, 4.44089e-16, -3.59038, 3.4494, -1.36509, 3.45059, 0.447948, 4.33729, 0.444157, -3.89735, -2.97221, -0.304367}, {4.28053, 0.593056, -0.587914, -0.673906, 1.70372, -1.70733, 1.45255, -3.67222, -1.55938, -5.05918, 1.37545, 3.85462}, {0, 4.47576, 0.618208, 0, -4.47576, 1.81259, -2.9332, -2.90763, -0.707734, 2.9332, 2.90763, -1.72306}, {-1.27174, 3.21511, 1.36527, 0, 0, -2.4308, 4.51512, -3.70603e-12, -0.839751, -3.24338, -3.21511, 1.90528}, {0.947177, -0.947177, -4.14023, -3.0344, -2.20499, -1.201, 1.74832, -1.74832, 0.691975, 0.338905, 4.90048, 4.64925}, {1.90928, 0.579177, 2.90015, -2.97176, -1.29918, -0.341631, 1.26427, 3.63788, 0.209764, -0.201792, -2.91787, -2.76828}, {3.04112e-12, -1.63545, -4.51512, 0, -3.01876, 0, 3.2348, 2.35061, 1.28032, -3.2348, 2.3036, 3.2348}, {4.04958, 1.77038, 0.465536, -2.40427, -1.3066, 2.40427, -4.10736, 1.28953, -0.407754, 2.46205, -1.7533, -2.46205}, {0.835098, -0.835098, 8.15492, -4, 4, -4, 3.59038, 0, 0, -0.425481, -3.1649, -4.15492}, {3.1649, -3.1649, -4.15492, -4, 4, -4, 0, -7.0469, 0, 0.835098, 6.2118, 8.15492}, {-3.65991, 3.65991, 3.65991, 1.79519, 1.79519, -1.79519, 1.79519, -1.79519, 1.79519, 0.0695263, -3.65991, -3.65991}, {1.79519, -1.79519, 1.79519, 1.86472, -1.86472, -5.4551, -3.52345, -3.52345, -3.52345, -0.13646, 7.18336, 7.18336}, {3.0611, -1.07112, 2.10077e-12, -0.369018, 1.30083, 3.2348, 0.267075, 1.7536, -3.2348, -2.95915, -1.98331, -2.03061e-12}, {-1.28032, 0.716498, -3.2348, -3.2348, -0.619904, 3.2348, 0, -3.12276, 0, 4.51512, 3.02616, 3.09876e-12}, {-3.24675, 0.177221, -3.21463, 0, 2.70417, 0, -1.28505, -0.665307, 3.24278, 4.53179, -2.21609, -0.0281511}, {-1.03768, -0.786269, 3.24125, 3.76174, 0.864649, -0.0233676, 1.42117, -2.10543, -3.24363, -4.14523, 2.02705, 0.0257498}, {-3.65991, -3.65991, 3.65991, -3.52345, 3.52345, 3.52345, 3.52345, -3.52345, 3.52345, 3.65991, 3.65991, -10.7068}, {-1.02588, -1.02588, -4.04576, 5.15074, -1.89616, -1.23707, -2.74863, 4.29827, 1.25677, -1.37623, -1.37623, 4.02606}, {4, -4, -4, -3.1649, -4.15492, 3.1649, 0, 0, 7.0469, -0.835098, 8.15492, -6.2118}, {4.27497, -6.68514, -1.95466, -0.750905, 7.33275, 1.46136, -3.95428, 3.55351, -2.7068, 0.430212, -4.20112, 3.20009}, {-0.675958, 1.70428, -1.70576, 3.47227, -0.944013, -2.64554, 0.813742, 1.53558, 2.05346, -3.61005, -2.29584, 2.29785}, {-2.9332, 0.268765, -0.269, 0, 1.01807, 2.57142, 0, -3.15223, -0.435397, 2.9332, 1.86539, -1.86702}, {2.9332, -2.86386e-12, 0.906086, 0, 3.2348, -2.30525, 0, -3.2348, -1.73209, -2.9332, 2.86386e-12, 3.13126}, {-1.28032, -3.2348, -0.365321, -3.2348, 3.2348, 1.14798, 0, 0, 4.03735, 4.51512, -4.40815e-12, -4.82}, {4.32811, 0.737725, -1.71304, -3.72649, -3.72649, 1.47492, -0.518804, -0.518804, 4.72046, -0.0828155, 3.50757, -4.48234}, {-5.23939, -5.55112e-17, 0, -3.90017, -3.8953, -2.97758, 3.45213, 3.45065, -1.36448, 5.68742, 0.444645, 4.34205}, {3.45053, 3.45053, -1.3657, 0, -3.59038, 0, 0.444357, 0.444357, 4.33924, -3.89489, -0.304504, -2.97354}, {0, 1.06747e-17, -2.884, -3.22311, 3.25531, -0.327888, -1.29201, -3.25531, 0.417097, 4.51512, 3.75787e-12, 2.79479}, {-0.0130226, -3.25531, 1.20877, -0.260244, 3.25531, 1.50608, 3.12118, 2.59785e-12, -0.952039, -2.84791, -2.3704e-12, -1.76282}, {0.578997, 3.2348, 3.2348, 2.36134, 0, 0, -0.250249, -3.2348, 1.28032, -2.69009, -3.55036e-12, -4.51512}, {-1.12419, -3.2348, -0.186522, 0.812252, -2.04448e-12, -2.60004, -1.39607, 3.2348, -0.0801962, 1.708, 2.2542e-12, 2.86675}, {-3.93279, 1.55848, -1.3088, 1.97526, -0.782753, -1.97415, -1.50913, 5.11867, 1.50188, 3.46666, -5.8944, 1.78108}, {-0.47019, -4.32902, 0.47019, 0.867473, 1.07771, 2.72291, 1.97453, -0.781507, -1.97453, -2.37181, 4.03281, -1.21857}, {-3.45037, 1.36731, 3.44843, 0, 0, -5.23939, 3.89524, 2.97704, -3.89946, -0.444879, -4.34434, 5.69042}, {-3.45053, 1.3657, 3.45053, 3.59038, 0, 0, -0.444357, -4.33924, 0.444357, 0.304504, 2.97354, -3.89489}, {2.40563, -3.3686, -2.16577, -4.01552, 0.313534, -3.06173, -1.35813, -0.303573, 2.96446, 2.96803, 3.35864, 2.26304}, {0.444309, 1.73608, 4.33877, 0, 4.85752, 0, 3.45016, -2.1866, -1.36934, -3.89447, -4.407, -2.96943}, {-1.77354, -2.8259, -5.08017, -1.99992, 2.80049, 1.80052, -0.192763, -1.93544, 1.91528, 3.96622, 1.96086, 1.36437}, {3.41957, -0.149544, 3.15791, -3.35877, 2.12868, 1.33307, 6.03338, 1.03375, -2.39461, -6.09418, -3.0129, -2.09638}, {1.36731, -2.16592, -3.45037, 0, 4.85752, 0, -4.34434, 1.78399, -0.444879, 2.97704, -4.4756, 3.89524}, {-2.95631, -0.302739, 1.37126, 3.02503, 0.309776, 3.95804, 2.1672, -3.36845, -2.40376, -2.23591, 3.36142, -2.92554}, {2.31112, 1.19654, -5.83206, -1.28659, 2.03806, 3.24669, -3.3095, 0.144731, -3.05627, 2.28498, -3.37933, 5.64163}, {-1.96264, -1.84718, 0.269133, -1.79514, 2.79017, 1.99109, 5.26848, -3.1772, 1.46969, -1.5107, 2.23422, -3.72992}, {-0.60788, 3.25394, -0.100754, 4.36982, -1.029, 0.544673, 0.0459483, -1.94609, 2.48692, -3.80789, -0.278843, -2.93084}, {-2.10446, -2.10356, 0.831802, -1.45971, -1.45589, -3.94218, -2.09284, 3.1452, -1.24369, 5.65702, 0.414251, 4.35407}, {3.27119, 4.85191, 0.362578, 0.814367, -4.35925, 0.134979, -0.753128, 2.3313, 2.35448, -3.33243, -2.82396, -2.85204}, {-3.50419, 0, -8.88178e-16, 2.14843, -3.22874, 1.27672, -2.43779, 0.014006, -4.52341, 3.79356, 3.21473, 3.24669}}
]
- + total size : 2.1e+02kB
+ + total size : 1.6e+02kB
]
- + total size : 2.1e+02kB
+ + total size : 1.6e+02kB
]
diff --git a/test/test_fem/test_interpolate_triangle_3.verified b/test/test_fem/test_interpolate_triangle_3.verified
index 9274a5bd8..1cf2e0e7f 100644
--- a/test/test_fem/test_interpolate_triangle_3.verified
+++ b/test/test_fem/test_interpolate_triangle_3.verified
@@ -1,146 +1,142 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 2
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 13
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
+ ]
(not_ghost:_triangle_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 16
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{3, 9, 6}, {0, 12, 7}, {2, 10, 5}, {1, 11, 4}, {7, 8, 9}, {6, 9, 8}, {6, 8, 10}, {7, 12, 8}, {5, 10, 8}, {4, 8, 12}, {4, 11, 8}, {5, 8, 11}, {0, 4, 12}, {3, 7, 9}, {1, 5, 11}, {2, 6, 10}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 13
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_2) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
+ ]
(not_ghost:_triangle_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 16
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{3, 9, 6}, {0, 12, 7}, {2, 10, 5}, {1, 11, 4}, {7, 8, 9}, {6, 9, 8}, {6, 8, 10}, {7, 12, 8}, {5, 10, 8}, {4, 8, 12}, {4, 11, 8}, {5, 8, 11}, {0, 4, 12}, {3, 7, 9}, {1, 5, 11}, {2, 6, 10}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 7
+ + nb vectors : 6
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_2
+ size : 8
+ nb_component : 2
+ allocated size : 2000
+ memory size : 16kB
+ values : {{0, 4}, {4, 1}, {1, 5}, {5, 2}, {2, 6}, {6, 3}, {3, 7}, {7, 0}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_3
+ size : 16
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{3, 9, 6}, {0, 12, 7}, {2, 10, 5}, {1, 11, 4}, {7, 8, 9}, {6, 9, 8}, {6, 8, 10}, {7, 12, 8}, {5, 10, 8}, {4, 8, 12}, {4, 11, 8}, {5, 8, 11}, {0, 4, 12}, {3, 7, 9}, {1, 5, 11}, {2, 6, 10}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 13
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {1, 0.5}, {0.5, 1}, {0, 0.5}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}}
]
Vector<double> [
+ id : my_fem:jacobians:_triangle_3
+ size : 16
+ nb_component : 1
+ allocated size : 16
+ memory size : 0.12kB
+ values : {{0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}, {0.0625}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_triangle_3
- + size : 1
- + nb_component : 2
- + allocated size : 2000
- + memory size : 31kB
- + values : {{0.333333, 0.333333}}
- ]
Vector<double> [
+ id : my_fem:shapes:_triangle_3
+ size : 16
+ nb_component : 3
+ allocated size : 16
+ memory size : 0.38kB
+ values : {{0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}, {0.333333, 0.333333, 0.333333}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_triangle_3
+ size : 16
+ nb_component : 6
+ allocated size : 16
+ memory size : 0.75kB
+ values : {{-2, 2, 0, -4, 2, 2}, {-2, -2, 4, 0, -2, 2}, {2, 2, -4, 0, 2, -2}, {2, -2, 0, 4, -2, -2}, {-2, -2, 2, -2, 1.04929e-11, 4}, {2, 2, -4, 1.08926e-11, 2, -2}, {-2, 2, -2, -2, 4, -1.08926e-11}, {-2, 2, -1.04929e-11, -4, 2, 2}, {2, -2, 8.43547e-12, 4, -2, -2}, {2, -2, 2, 2, -4, 8.03579e-12}, {-2, -2, 4, -8.03579e-12, -2, 2}, {2, 2, -2, 2, -8.43547e-12, -4}, {-2, -2, 2, -2, 0, 4}, {-2, 2, -2, -2, 4, 0}, {2, -2, 2, 2, -4, 0}, {2, 2, -2, 2, 0, -4}}
]
- + total size : 1e+02kB
+ + total size : 72kB
]
- + total size : 1e+02kB
+ + total size : 72kB
]
diff --git a/test/test_fem/test_interpolate_triangle_6.verified b/test/test_fem/test_interpolate_triangle_6.verified
index 04bbfdea2..486013767 100644
--- a/test/test_fem/test_interpolate_triangle_6.verified
+++ b/test/test_fem/test_interpolate_triangle_6.verified
@@ -1,146 +1,142 @@
Epsilon : 3e-13
FEM [
+ id : my_fem
+ element dimension : 2
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 41
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}, {0.125, 0.875}, {0.375, 0.875}, {0.125, 0.125}, {0.125, 0.375}, {0.875, 0.875}, {0.875, 0.625}, {0.875, 0.125}, {0.625, 0.125}, {0.25, 0.5}, {0.375, 0.625}, {0.125, 0.625}, {0.5, 0.75}, {0.625, 0.625}, {0.625, 0.875}, {0.375, 0.375}, {0.75, 0.5}, {0.5, 0.25}, {0.375, 0.125}, {0.625, 0.375}, {0.875, 0.375}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 8
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 4, 5}, {4, 1, 6}, {1, 7, 8}, {7, 2, 9}, {2, 10, 11}, {10, 3, 12}, {3, 13, 14}, {13, 0, 15}}
]
+ ]
(not_ghost:_triangle_6) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 16
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{3, 17, 10, 21, 22, 12}, {0, 20, 13, 23, 24, 15}, {2, 18, 7, 25, 26, 9}, {1, 19, 4, 27, 28, 6}, {13, 16, 17, 29, 30, 31}, {10, 17, 16, 22, 30, 32}, {10, 16, 18, 32, 33, 34}, {13, 20, 16, 24, 35, 29}, {7, 18, 16, 26, 33, 36}, {4, 16, 20, 37, 35, 38}, {4, 19, 16, 28, 39, 37}, {7, 16, 19, 36, 39, 40}, {0, 4, 20, 5, 38, 23}, {3, 13, 17, 14, 31, 21}, {1, 7, 19, 8, 40, 27}, {2, 10, 18, 11, 34, 25}}
]
+ ]
]
]
]
+ mesh [
Mesh [
+ id : mesh
+ spatial dimension : 2
+ nodes [
Vector<double> [
+ id : mesh:coordinates
+ size : 41
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}, {0.125, 0.875}, {0.375, 0.875}, {0.125, 0.125}, {0.125, 0.375}, {0.875, 0.875}, {0.875, 0.625}, {0.875, 0.125}, {0.625, 0.125}, {0.25, 0.5}, {0.375, 0.625}, {0.125, 0.625}, {0.5, 0.75}, {0.625, 0.625}, {0.625, 0.875}, {0.375, 0.375}, {0.75, 0.5}, {0.5, 0.25}, {0.375, 0.125}, {0.625, 0.375}, {0.875, 0.375}}
]
]
+ connectivities [
- ByElementType<akantu::Vector<unsigned int, true>*> [
+ ByElementTypeVector<unsigned int> [
(not_ghost:_segment_3) [
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 8
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 4, 5}, {4, 1, 6}, {1, 7, 8}, {7, 2, 9}, {2, 10, 11}, {10, 3, 12}, {3, 13, 14}, {13, 0, 15}}
]
+ ]
(not_ghost:_triangle_6) [
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 16
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{3, 17, 10, 21, 22, 12}, {0, 20, 13, 23, 24, 15}, {2, 18, 7, 25, 26, 9}, {1, 19, 4, 27, 28, 6}, {13, 16, 17, 29, 30, 31}, {10, 17, 16, 22, 30, 32}, {10, 16, 18, 32, 33, 34}, {13, 20, 16, 24, 35, 29}, {7, 18, 16, 26, 33, 36}, {4, 16, 20, 37, 35, 38}, {4, 19, 16, 28, 39, 37}, {7, 16, 19, 36, 39, 40}, {0, 4, 20, 5, 38, 23}, {3, 13, 17, 14, 31, 21}, {1, 7, 19, 8, 40, 27}, {2, 10, 18, 11, 34, 25}}
]
+ ]
]
]
]
]
StaticMemory [
+ nb memories : 1
Memory [
+ memory id : 0
- + nb vectors : 7
+ + nb vectors : 6
Vector<unsigned int> [
+ id : mesh:connectivities:_segment_3
+ size : 8
+ nb_component : 3
+ allocated size : 2000
+ memory size : 23kB
+ values : {{0, 4, 5}, {4, 1, 6}, {1, 7, 8}, {7, 2, 9}, {2, 10, 11}, {10, 3, 12}, {3, 13, 14}, {13, 0, 15}}
]
Vector<unsigned int> [
+ id : mesh:connectivities:_triangle_6
+ size : 16
+ nb_component : 6
+ allocated size : 2000
+ memory size : 47kB
+ values : {{3, 17, 10, 21, 22, 12}, {0, 20, 13, 23, 24, 15}, {2, 18, 7, 25, 26, 9}, {1, 19, 4, 27, 28, 6}, {13, 16, 17, 29, 30, 31}, {10, 17, 16, 22, 30, 32}, {10, 16, 18, 32, 33, 34}, {13, 20, 16, 24, 35, 29}, {7, 18, 16, 26, 33, 36}, {4, 16, 20, 37, 35, 38}, {4, 19, 16, 28, 39, 37}, {7, 16, 19, 36, 39, 40}, {0, 4, 20, 5, 38, 23}, {3, 13, 17, 14, 31, 21}, {1, 7, 19, 8, 40, 27}, {2, 10, 18, 11, 34, 25}}
]
Vector<double> [
+ id : mesh:coordinates
+ size : 41
+ nb_component : 2
+ allocated size : 2000
+ memory size : 31kB
+ values : {{0, 0}, {1, 0}, {1, 1}, {0, 1}, {0.5, 0}, {0.25, 0}, {0.75, 0}, {1, 0.5}, {1, 0.25}, {1, 0.75}, {0.5, 1}, {0.75, 1}, {0.25, 1}, {0, 0.5}, {0, 0.75}, {0, 0.25}, {0.5, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.25}, {0.25, 0.25}, {0.125, 0.875}, {0.375, 0.875}, {0.125, 0.125}, {0.125, 0.375}, {0.875, 0.875}, {0.875, 0.625}, {0.875, 0.125}, {0.625, 0.125}, {0.25, 0.5}, {0.375, 0.625}, {0.125, 0.625}, {0.5, 0.75}, {0.625, 0.625}, {0.625, 0.875}, {0.375, 0.375}, {0.75, 0.5}, {0.5, 0.25}, {0.375, 0.125}, {0.625, 0.375}, {0.875, 0.375}}
]
Vector<double> [
+ id : my_fem:jacobians:_triangle_6
+ size : 48
+ nb_component : 1
+ allocated size : 48
+ memory size : 0.38kB
+ values : {{0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}, {0.0208333}}
]
- Vector<double> [
- + id : my_fem:quadrature_points:_triangle_6
- + size : 3
- + nb_component : 2
- + allocated size : 2000
- + memory size : 31kB
- + values : {{0.166667, 0.166667}, {0.666667, 0.166667}, {0.166667, 0.666667}}
- ]
Vector<double> [
+ id : my_fem:shapes:_triangle_6
+ size : 48
+ nb_component : 6
+ allocated size : 48
+ memory size : 2.2kB
+ values : {{0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}, {0.222222, -0.111111, -0.111111, 0.444444, 0.111111, 0.444444}, {-0.111111, 0.222222, -0.111111, 0.444444, 0.444444, 0.111111}, {-0.111111, -0.111111, 0.222222, 0.111111, 0.444444, 0.444444}}
]
Vector<double> [
+ id : my_fem:shapes_derivatives:_triangle_6
+ size : 48
+ nb_component : 12
+ allocated size : 48
+ memory size : 4.5kB
+ values : {{-3.33333, 3.33333, 0, 1.33333, -0.666667, -0.666667, -1.33333, -9.33333, 1.33333, -1.33333, 4, 6.66667}, {0.666667, -0.666667, 2.96059e-15, -6.66667, -0.666667, -0.666667, -5.33333, 2.66667, 5.33333, 2.66667, -7.40149e-16, 2.66667}, {0.666667, -0.666667, 0, 1.33333, 3.33333, 3.33333, -1.33333, -1.33333, 1.33333, -9.33333, -4, 6.66667}, {-3.33333, -3.33333, -1.33333, 0, 0.666667, -0.666667, 9.33333, -1.33333, 1.33333, 1.33333, -6.66667, 4}, {0.666667, 0.666667, 6.66667, 0, 0.666667, -0.666667, -2.66667, -5.33333, -2.66667, 5.33333, -2.66667, 4.44089e-16}, {0.666667, 0.666667, -1.33333, 0, -3.33333, 3.33333, 1.33333, -1.33333, 9.33333, 1.33333, -6.66667, -4}, {3.33333, 3.33333, 1.33333, 0, -0.666667, 0.666667, -9.33333, 1.33333, -1.33333, -1.33333, 6.66667, -4}, {-0.666667, -0.666667, -6.66667, -2.96059e-15, -0.666667, 0.666667, 2.66667, 5.33333, 2.66667, -5.33333, 2.66667, 7.40149e-16}, {-0.666667, -0.666667, 1.33333, 0, 3.33333, -3.33333, -1.33333, 1.33333, -9.33333, -1.33333, 6.66667, 4}, {3.33333, -3.33333, 0, -1.33333, 0.666667, 0.666667, 1.33333, 9.33333, -1.33333, 1.33333, -4, -6.66667}, {-0.666667, 0.666667, 0, 6.66667, 0.666667, 0.666667, 5.33333, -2.66667, -5.33333, -2.66667, -4.44089e-16, -2.66667}, {-0.666667, 0.666667, 0, -1.33333, -3.33333, -3.33333, 1.33333, 1.33333, -1.33333, 9.33333, 4, -6.66667}, {-3.33333, -3.33333, -0.666667, 0.666667, -3.49779e-12, -1.33333, 4, -6.66667, 1.33333, 1.33333, -1.33333, 9.33333}, {0.666667, 0.666667, 3.33333, -3.33333, -3.49779e-12, -1.33333, -4, -6.66667, 1.33333, 9.33333, -1.33333, 1.33333}, {0.666667, 0.666667, -0.666667, 0.666667, 1.74912e-11, 6.66667, -6.99581e-12, -2.66667, 5.33333, -2.66667, -5.33333, -2.66667}, {3.33333, 3.33333, 1.33333, -3.63028e-12, -0.666667, 0.666667, -9.33333, 1.33333, -1.33333, -1.33333, 6.66667, -4}, {-0.666667, -0.666667, -6.66667, 1.81499e-11, -0.666667, 0.666667, 2.66667, 5.33333, 2.66667, -5.33333, 2.66667, -7.26041e-12}, {-0.666667, -0.666667, 1.33333, -3.63087e-12, 3.33333, -3.33333, -1.33333, 1.33333, -9.33333, -1.33333, 6.66667, 4}, {-3.33333, 3.33333, 0.666667, 0.666667, -1.33333, 3.63087e-12, -6.66667, -4, 1.33333, -1.33333, 9.33333, 1.33333}, {0.666667, -0.666667, -3.33333, -3.33333, -1.33333, 3.63087e-12, -6.66667, 4, 9.33333, -1.33333, 1.33333, 1.33333}, {0.666667, -0.666667, 0.666667, 0.666667, 6.66667, -1.81544e-11, -2.66667, 7.26108e-12, -2.66667, -5.33333, -2.66667, 5.33333}, {-3.33333, 3.33333, 3.49705e-12, 1.33333, -0.666667, -0.666667, -1.33333, -9.33333, 1.33333, -1.33333, 4, 6.66667}, {0.666667, -0.666667, -1.74868e-11, -6.66667, -0.666667, -0.666667, -5.33333, 2.66667, 5.33333, 2.66667, 6.99515e-12, 2.66667}, {0.666667, -0.666667, 3.49765e-12, 1.33333, 3.33333, 3.33333, -1.33333, -1.33333, 1.33333, -9.33333, -4, 6.66667}, {3.33333, -3.33333, -2.81197e-12, -1.33333, 0.666667, 0.666667, 1.33333, 9.33333, -1.33333, 1.33333, -4, -6.66667}, {-0.666667, 0.666667, 1.40554e-11, 6.66667, 0.666667, 0.666667, 5.33333, -2.66667, -5.33333, -2.66667, -5.62261e-12, -2.66667}, {-0.666667, 0.666667, -2.81197e-12, -1.33333, -3.33333, -3.33333, 1.33333, 1.33333, -1.33333, 9.33333, 4, -6.66667}, {3.33333, -3.33333, -0.666667, -0.666667, 1.33333, -2.67845e-12, 6.66667, 4, -1.33333, 1.33333, -9.33333, -1.33333}, {-0.666667, 0.666667, 3.33333, 3.33333, 1.33333, -2.67904e-12, 6.66667, -4, -9.33333, 1.33333, -1.33333, -1.33333}, {-0.666667, 0.666667, -0.666667, -0.666667, -6.66667, 1.33937e-11, 2.66667, -5.35683e-12, 2.66667, 5.33333, 2.66667, -5.33333}, {-3.33333, -3.33333, -1.33333, 2.67815e-12, 0.666667, -0.666667, 9.33333, -1.33333, 1.33333, 1.33333, -6.66667, 4}, {0.666667, 0.666667, 6.66667, -1.33952e-11, 0.666667, -0.666667, -2.66667, -5.33333, -2.66667, 5.33333, -2.66667, 5.35853e-12}, {0.666667, 0.666667, -1.33333, 2.67904e-12, -3.33333, 3.33333, 1.33333, -1.33333, 9.33333, 1.33333, -6.66667, -4}, {3.33333, 3.33333, 0.666667, -0.666667, 2.81182e-12, 1.33333, -4, 6.66667, -1.33333, -1.33333, 1.33333, -9.33333}, {-0.666667, -0.666667, -3.33333, 3.33333, 2.81182e-12, 1.33333, 4, 6.66667, -1.33333, -9.33333, 1.33333, -1.33333}, {-0.666667, -0.666667, 0.666667, -0.666667, -1.40584e-11, -6.66667, 5.62269e-12, 2.66667, -5.33333, 2.66667, 5.33333, 2.66667}, {-3.33333, -3.33333, -0.666667, 0.666667, 0, -1.33333, 4, -6.66667, 1.33333, 1.33333, -1.33333, 9.33333}, {0.666667, 0.666667, 3.33333, -3.33333, 0, -1.33333, -4, -6.66667, 1.33333, 9.33333, -1.33333, 1.33333}, {0.666667, 0.666667, -0.666667, 0.666667, 0, 6.66667, 6.66134e-16, -2.66667, 5.33333, -2.66667, -5.33333, -2.66667}, {-3.33333, 3.33333, 0.666667, 0.666667, -1.33333, 0, -6.66667, -4, 1.33333, -1.33333, 9.33333, 1.33333}, {0.666667, -0.666667, -3.33333, -3.33333, -1.33333, 0, -6.66667, 4, 9.33333, -1.33333, 1.33333, 1.33333}, {0.666667, -0.666667, 0.666667, 0.666667, 6.66667, 0, -2.66667, -6.66134e-16, -2.66667, -5.33333, -2.66667, 5.33333}, {3.33333, -3.33333, -0.666667, -0.666667, 1.33333, 0, 6.66667, 4, -1.33333, 1.33333, -9.33333, -1.33333}, {-0.666667, 0.666667, 3.33333, 3.33333, 1.33333, 0, 6.66667, -4, -9.33333, 1.33333, -1.33333, -1.33333}, {-0.666667, 0.666667, -0.666667, -0.666667, -6.66667, 0, 2.66667, 6.66134e-16, 2.66667, 5.33333, 2.66667, -5.33333}, {3.33333, 3.33333, 0.666667, -0.666667, 0, 1.33333, -4, 6.66667, -1.33333, -1.33333, 1.33333, -9.33333}, {-0.666667, -0.666667, -3.33333, 3.33333, 0, 1.33333, 4, 6.66667, -1.33333, -9.33333, 1.33333, -1.33333}, {-0.666667, -0.666667, 0.666667, -0.666667, 0, -6.66667, -6.66134e-16, 2.66667, -5.33333, 2.66667, 5.33333, 2.66667}}
]
- + total size : 1.4e+02kB
+ + total size : 1.1e+02kB
]
- + total size : 1.4e+02kB
+ + total size : 1.1e+02kB
]
diff --git a/test/test_fem/test_inverse_map.cc b/test/test_fem/test_inverse_map.cc
index a483496d5..1c62e9568 100644
--- a/test/test_fem/test_inverse_map.cc
+++ b/test/test_fem/test_inverse_map.cc
@@ -1,112 +1,112 @@
/**
* @file test_inverse_map.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
*
* @date Fri May 25 12:41:57 2012
*
* @brief test of the fem class
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "fem.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh.hh"
#include "shape_lagrange.hh"
#include "integrator_gauss.hh"
/* -------------------------------------------------------------------------- */
#include <cstdlib>
#include <fstream>
#include <iostream>
/* -------------------------------------------------------------------------- */
using namespace akantu;
int main(int argc, char *argv[]) {
akantu::initialize(argc, argv);
debug::setDebugLevel(dblTest);
const ElementType type = TYPE;
UInt dim = ElementClass<type>::getSpatialDimension();
MeshIOMSH mesh_io;
Mesh my_mesh(dim);
Real lower[dim];
Real upper[dim];
my_mesh.computeBoundingBox();
my_mesh.getLowerBounds(lower);
my_mesh.getUpperBounds(upper);
std::stringstream meshfilename; meshfilename << type << ".msh";
mesh_io.read(meshfilename.str(), my_mesh);
UInt nb_elements = my_mesh.getNbElement(type);
///
FEMTemplate<IntegratorGauss,ShapeLagrange> *fem =
new FEMTemplate<IntegratorGauss,ShapeLagrange>(my_mesh, dim, "my_fem");
fem->initShapeFunctions();
UInt nb_quad_points = fem->getNbQuadraturePoints(type);
/// get the quadrature points coordinates
Vector<Real> coord_on_quad(nb_quad_points*nb_elements,
my_mesh.getSpatialDimension(),
"coord_on_quad");
fem->interpolateOnQuadraturePoints(my_mesh.getNodes(),
coord_on_quad,
my_mesh.getSpatialDimension(),
type);
/// loop over the quadrature points
Vector<Real>::iterator<types::RVector> it = coord_on_quad.begin(dim);
types::RVector natural_coords(dim);
- Real * quad = ElementClass<type>::getQuadraturePoints();
+ types::Matrix<Real> quad = GaussIntegrationElement<type>::getQuadraturePoints();
for(UInt el = 0 ; el < nb_elements ; ++el){
for(UInt q = 0 ; q < nb_quad_points ; ++q){
fem->inverseMap(*it, el, type, natural_coords);
for (UInt i = 0; i < dim; ++i) {
const Real eps = 1e-13;
- AKANTU_DEBUG_ASSERT(std::abs((natural_coords[i] - quad[i])/(upper[i]-lower[i])) < eps,
+ AKANTU_DEBUG_ASSERT(std::abs((natural_coords(i) - quad(i,q))/(upper[i]-lower[i])) < eps,
"real coordinates inversion test failed:"
- << natural_coords[i] << " - " << quad[i]
- << " = " << (natural_coords[i] - quad[i])/(upper[i]-lower[i]));
+ << natural_coords(i) << " - " << quad(i, q)
+ << " = " << (natural_coords(i) - quad(i, q))/(upper[i]-lower[i]));
}
++it;
}
}
std::cout << "inverse completed over " << nb_elements << " elements" << std::endl;
delete fem;
finalize();
return EXIT_SUCCESS;
}
diff --git a/test/test_mesh_utils/test_mesh_partitionate/CMakeLists.txt b/test/test_mesh_utils/test_mesh_partitionate/CMakeLists.txt
index 2fb34851f..e841c7f31 100644
--- a/test/test_mesh_utils/test_mesh_partitionate/CMakeLists.txt
+++ b/test/test_mesh_utils/test_mesh_partitionate/CMakeLists.txt
@@ -1,45 +1,45 @@
#===============================================================================
# @file CMakeLists.txt
#
# @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
#
# @date Fri Sep 03 15:56:15 2010
#
# @brief configuration for mesh partitioner tests
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
# @section DESCRIPTION
#
#===============================================================================
add_mesh(test_mesh_partitionate_mesh
triangle.geo 2 2)
register_test(test_mesh_partitionate_scotch
SOURCES test_mesh_partitionate_scotch.cc
DEPENDENCIES test_mesh_partitionate_mesh
DIRECTORIES_TO_CREATE paraview
)
register_test(test_mesh_partitionate_scotch_advanced
- SOURCE test_mesh_partitionate_scotch_advanced.cc
+ SOURCES test_mesh_partitionate_scotch_advanced.cc
FILES_TO_COPY squares_L.msh squares_H.msh
DIRECTORIES_TO_CREATE paraview)
diff --git a/test/test_mesh_utils/test_mesh_partitionate/test_mesh_partitionate_scotch_advanced.cc b/test/test_mesh_utils/test_mesh_partitionate/test_mesh_partitionate_scotch_advanced.cc
index 2bdc1b061..0bd207349 100644
--- a/test/test_mesh_utils/test_mesh_partitionate/test_mesh_partitionate_scotch_advanced.cc
+++ b/test/test_mesh_utils/test_mesh_partitionate/test_mesh_partitionate_scotch_advanced.cc
@@ -1,391 +1,391 @@
/**
* @file test_mesh_partitionate_scotch_advanced.cc
* @author Nicolas Richart <nicolas.richart@epfl.ch>
* @author David Kammer <david.kammer@epfl.ch>
* @date Tue Oct 16 09:20:24 2012
*
* @brief
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "aka_vector.hh"
#include "mesh.hh"
#include "fem.hh"
#include "mesh_io_msh.hh"
#include "mesh_utils.hh"
#include "mesh_partition_scotch.hh"
/* -------------------------------------------------------------------------- */
#ifdef AKANTU_USE_IOHELPER
# include "io_helper.hh"
#endif //AKANTU_USE_IOHELPER
akantu::ElementType type = akantu::_quadrangle_4;
akantu::UInt nb_quadrature_points = 4;
akantu::UInt nb_nodes_per_element = 4;
/* -------------------------------------------------------------------------- */
void getInterfaceNodePairs(akantu::Mesh & mesh,
akantu::Vector<akantu::UInt> & pairs);
void getPartition(const akantu::Mesh & mesh,
const akantu::MeshPartition::EdgeLoadFunctor & fctr,
const akantu::Vector<akantu::UInt> & pairs,
akantu::MeshPartition * partition,
akantu::Vector<double> & parts);
void dumpParaview(akantu::Mesh & mesh, std::string name,
double * part_1, double * part_2);
/* -------------------------------------------------------------------------- */
class DoNotCutInterfaceFunctor : public akantu::MeshPartition::EdgeLoadFunctor {
public:
DoNotCutInterfaceFunctor(const akantu::Mesh & mesh) : mesh(mesh) {
}
virtual inline akantu::Int operator()(const akantu::Element & el1,
const akantu::Element & el2) const {
const akantu::Vector<akantu::UInt> & conn_1 = this->mesh.getConnectivity(el1.type);
const akantu::Vector<akantu::UInt> & conn_2 = this->mesh.getConnectivity(el2.type);
std::set<akantu::UInt> nodes;
// count number of nodes
akantu::UInt nb_npe_1 = this->mesh.getNbNodesPerElement(el1.type);
for (akantu::UInt i=0; i<nb_npe_1; ++i) {
nodes.insert(conn_1(el1.element,i));
}
akantu::UInt nb_npe_2 = this->mesh.getNbNodesPerElement(el2.type);
for (akantu::UInt i=0; i<nb_npe_2; ++i) {
nodes.insert(conn_2(el2.element,i));
}
int max_nb_element = std::max(this->mesh.getNbElement(el1.type),
this->mesh.getNbElement(el2.type));
int max_nb_npe = std::max(nb_npe_1, nb_npe_2);
// get barycenter of elements to put different weights in vert. and horiz. dir.
akantu::Real bc_1[2];
mesh.getBarycenter(el1.element,el1.type,bc_1);
akantu::Real bc_2[2];
mesh.getBarycenter(el2.element,el2.type,bc_2);
akantu::Real bc_diff[2];
bc_diff[0] = std::fabs(bc_1[0] - bc_2[0]);
bc_diff[1] = std::fabs(bc_1[1] - bc_2[1]);
// put weights according to criterion
int weight = 1;
if (nodes.size() == nb_npe_1 + nb_npe_2)
weight = max_nb_element*max_nb_npe*4;
else if (bc_diff[0] < bc_diff[1])
weight = 5;
return weight;
}
protected:
const akantu::Mesh & mesh;
};
/* -------------------------------------------------------------------------- */
/* Main */
/* -------------------------------------------------------------------------- */
int main(int argc, char *argv[])
{
akantu::initialize(argc, argv);
akantu::debug::setDebugLevel(akantu::dblDump);
akantu::debug::setDebugLevel(akantu::dblWarning);
int dim = 2;
akantu::MeshIOMSH mesh_io;
/* ---------- check if node pairs are considered with mesh_L --------- */
akantu::Mesh mesh_l(dim);
mesh_io.read("squares_L.msh", mesh_l);
// get interface node pairs
akantu::Vector<akantu::UInt> pairs_l(0,2);
akantu::Vector<akantu::UInt> pairs_empty(0,2);
getInterfaceNodePairs(mesh_l,pairs_l);
akantu::MeshPartition * partition = new akantu::MeshPartitionScotch(mesh_l, mesh_l.getSpatialDimension());
// make normal partition -> it should cut along the interface
akantu::Vector<double> parts(0,nb_quadrature_points);
getPartition(mesh_l,
akantu::MeshPartition::ConstEdgeLoadFunctor(),
pairs_empty,
partition,
parts);
double * part = parts.storage();
// make partition with node pairs -> it should cut perpendicular to the interface
akantu::Vector<double> parts_adv(0,nb_quadrature_points);
getPartition(mesh_l,
akantu::MeshPartition::ConstEdgeLoadFunctor(),
pairs_l,
partition,
parts_adv);
double * part_adv = parts_adv.storage();
// output to visualize
#ifdef AKANTU_USE_IOHELPER
dumpParaview(mesh_l, "test-scotch-partition-mesh-L",
part, part_adv);
#endif //AKANTU_USE_IOHELPER
// check
unsigned int nb_element = mesh_l.getNbElement(type);
akantu::Real bb_center[2];
mesh_l.getBarycenter(0,type,bb_center);
// define solution for part
unsigned int top_p_v = 0;
unsigned int bot_p_v = 1;
if (!(bb_center[1] > 0 && parts(0,0) == top_p_v) &&
!(bb_center[1] < 0 && parts(0,0) == bot_p_v)) {
top_p_v = 1;
bot_p_v = 0;
}
std::cout << "top part = " << top_p_v << " | bot part = " << bot_p_v << std::endl;
// define solution for part_adv
unsigned int left_p_v = 0;
unsigned int right_p_v = 1;
if (!(bb_center[0] > 0 && parts_adv(0,0) == right_p_v) &&
!(bb_center[0] < 0 && parts_adv(0,0) == left_p_v)) {
left_p_v = 1;
right_p_v = 0;
}
std::cout << "left part = " << left_p_v << " | right part = " << right_p_v << std::endl;
// check
for (akantu::UInt i=1; i<nb_element; ++i) {
mesh_l.getBarycenter(i,type,bb_center);
if (!(bb_center[1] > 0 && parts(i,0) == top_p_v) &&
!(bb_center[1] < 0 && parts(i,0) == bot_p_v)) {
std::cerr << " ** ERROR with mesh-L without node pairs" << std::endl;
return EXIT_FAILURE;
}
if (!(bb_center[0] > 0 && parts_adv(i,0) == right_p_v) &&
!(bb_center[0] < 0 && parts_adv(i,0) == left_p_v)) {
std::cerr << " ** ERROR with mesh-L with node pairs" << std::endl;
return EXIT_FAILURE;
}
}
delete partition;
/* ---------- check if node pairs and functor are considered with mesh_H --------- */
akantu::Mesh mesh_h(dim,"mesh_h",1);
mesh_io.read("squares_H.msh", mesh_h);
akantu::Vector<akantu::UInt> pairs_h(0,2);
getInterfaceNodePairs(mesh_h,pairs_h);
partition = new akantu::MeshPartitionScotch(mesh_h, mesh_h.getSpatialDimension());
// make normal partition -> it should cut along the interface
getPartition(mesh_h,
akantu::MeshPartition::ConstEdgeLoadFunctor(),
pairs_h,
partition,
parts);
part = parts.storage();
// make partition with node pairs -> it should cut perpendicular to the interface
DoNotCutInterfaceFunctor fctr = DoNotCutInterfaceFunctor(mesh_h);
getPartition(mesh_h,
fctr,
pairs_h,
partition,
parts_adv);
part_adv = parts_adv.storage();
// output to visualize
#ifdef AKANTU_USE_IOHELPER
dumpParaview(mesh_h, "test-scotch-partition-mesh-H",
part, part_adv);
#endif //AKANTU_USE_IOHELPER
// check
nb_element = mesh_h.getNbElement(type);
mesh_h.getBarycenter(0,type,bb_center);
// define solution for part
top_p_v = 0;
bot_p_v = 1;
if (!(bb_center[1] > 0 && parts(0,0) == top_p_v) &&
!(bb_center[1] < 0 && parts(0,0) == bot_p_v)) {
top_p_v = 1;
bot_p_v = 0;
}
std::cout << "top part = " << top_p_v << " | bot part = " << bot_p_v << std::endl;
// define solution for part_adv
left_p_v = 0;
right_p_v = 1;
if (!(bb_center[0] > 0 && parts_adv(0,0) == right_p_v) &&
!(bb_center[0] < 0 && parts_adv(0,0) == left_p_v)) {
left_p_v = 1;
right_p_v = 0;
}
std::cout << "left part = " << left_p_v << " | right part = " << right_p_v << std::endl;
// check
for (akantu::UInt i=1; i<nb_element; ++i) {
mesh_h.getBarycenter(i,type,bb_center);
if (!(bb_center[1] > 0 && parts(i,0) == top_p_v) &&
!(bb_center[1] < 0 && parts(i,0) == bot_p_v)) {
std::cerr << " ** ERROR with mesh-H with node pairs and without functor" << std::endl;
return EXIT_FAILURE;
}
if (!(bb_center[0] > 0 && parts_adv(i,0) == right_p_v) &&
!(bb_center[0] < 0 && parts_adv(i,0) == left_p_v)) {
std::cerr << " ** ERROR with mesh-H with node pairs and with functor" << std::endl;
return EXIT_FAILURE;
}
}
delete partition;
akantu::finalize();
return EXIT_SUCCESS;
}
/* -------------------------------------------------------------------------- */
void dumpParaview(akantu::Mesh & mesh, std::string name,
double * part_1, double * part_2) {
unsigned int nb_nodes = mesh.getNbNodes();
unsigned int nb_element = mesh.getNbElement(type);
iohelper::DumperParaview dumper;
- dumper.SetMode(iohelper::TEXT);
- dumper.SetPoints(mesh.getNodes().values, mesh.getSpatialDimension(),
+ dumper.setMode(iohelper::TEXT);
+ dumper.setPoints(mesh.getNodes().values, mesh.getSpatialDimension(),
nb_nodes, name);
- dumper.SetConnectivity((int*) mesh.getConnectivity(type).values,
+ dumper.setConnectivity((int*) mesh.getConnectivity(type).values,
iohelper::QUAD1, nb_element, iohelper::C_MODE);
- dumper.AddElemDataField(part_1, 1, "partition_1");
- dumper.AddElemDataField(part_2, 1, "partition_2");
- dumper.SetPrefix("paraview");
- dumper.Init();
- dumper.Dump();
+ dumper.addElemDataField("partition_1", part_1, 1, nb_element);
+ dumper.addElemDataField("partition_2", part_2, 1, nb_element);
+ dumper.setPrefix("paraview");
+ dumper.init();
+ dumper.dump();
}
/* -------------------------------------------------------------------------- */
void getPartition(const akantu::Mesh & mesh,
const akantu::MeshPartition::EdgeLoadFunctor & fctr,
const akantu::Vector<akantu::UInt> & pairs,
akantu::MeshPartition * partition,
akantu::Vector<double> & parts) {
// partition->partitionate(2, akantu::MeshPartition::ConstEdgeLoadFunctor(), pairs_l);
partition->partitionate(2, fctr, pairs);
// get partition value for each element
unsigned int nb_element = mesh.getNbElement(type);
parts.resize(nb_element);
// double * part = new double[nb_element*nb_quadrature_points];
akantu::UInt * part_val = partition->getPartition(type).values;
for (unsigned int i = 0; i < nb_element; ++i)
for (unsigned int q = 0; q < nb_quadrature_points; ++q)
//part[i*nb_quadrature_points + q] = part_val[i];
parts(i,q) = part_val[i];
}
/* -------------------------------------------------------------------------- */
void getInterfaceNodePairs(akantu::Mesh & mesh,
akantu::Vector<akantu::UInt> & pairs) {
// put correct number of surfaces (gmsh starts with 1 but we need 0)
akantu::Vector<unsigned int> & surf = const_cast<akantu::Vector<unsigned int> &>(mesh.getUIntData(akantu::_segment_2, "tag_1"));
akantu::Vector<unsigned int>::iterator<> it = surf.begin();
akantu::Vector<unsigned int>::iterator<> end = surf.end();
for (;it != end; ++it) --(*it);
// set surface id
mesh.setSurfaceIDsFromIntData("tag_1");
akantu::CSR<akantu::UInt> all_surface_nodes;
akantu::MeshUtils::buildNodesPerSurface(mesh, all_surface_nodes);
// find top interface nodes
akantu::Vector<akantu::UInt> top_nodes(0);
int top = 1;
for (akantu::CSR<akantu::UInt>::iterator node = all_surface_nodes.begin(top);
node != all_surface_nodes.end(top);
++node) {
top_nodes.push_back(*node);
}
// find bottom interface nodes
akantu::Vector<akantu::UInt> bot_nodes(0);
int bot = 4;
for (akantu::CSR<akantu::UInt>::iterator node = all_surface_nodes.begin(bot);
node != all_surface_nodes.end(bot);
++node) {
bot_nodes.push_back(*node);
}
// verify that there is the same number of top and bottom nodes
int nb_pairs = 0;
if (bot_nodes.getSize() != top_nodes.getSize()) {
std::cerr << " ** ERROR: Interface does not have the same number of top and bottom nodes" << std::endl;
}
else {
nb_pairs = top_nodes.getSize();
}
// make pairs according to their x coordinate
const akantu::Vector<akantu::Real> & coords = mesh.getNodes();
int dir = 0;
for (int i=0; i<nb_pairs; ++i) {
int top_min = -1;
int bot_min = -1;
double top_min_v = std::numeric_limits<double>::max();
double bot_min_v = std::numeric_limits<double>::max();
for (akantu::UInt j=0; j<top_nodes.getSize(); ++j) {
if (coords(top_nodes(j),dir) < top_min_v) {
top_min = j;
top_min_v = coords(top_nodes(j),dir);
}
if (coords(bot_nodes(j),dir) < bot_min_v) {
bot_min = j;
bot_min_v = coords(bot_nodes(j),dir);
}
}
akantu::UInt pair[2];
pair[0] = top_nodes(top_min);
pair[1] = bot_nodes(bot_min);
pairs.push_back(pair);
top_nodes.erase(top_min);
bot_nodes.erase(bot_min);
}
}
diff --git a/test/test_model/test_heat_transfer_model/test_heat_transfer_model_cube3d_istropic_conductivity.cc b/test/test_model/test_heat_transfer_model/test_heat_transfer_model_cube3d_istropic_conductivity.cc
index 49bf76c2e..7c53770eb 100644
--- a/test/test_model/test_heat_transfer_model/test_heat_transfer_model_cube3d_istropic_conductivity.cc
+++ b/test/test_model/test_heat_transfer_model/test_heat_transfer_model_cube3d_istropic_conductivity.cc
@@ -1,169 +1,150 @@
/**
* @file test_heat_transfer_model_cube3d_istropic_conductivity.cc
*
* @author Rui Wang <rui.wang@epfl.ch>
*
* @date Sun May 01 19:14:43 2011
*
* @brief test of the class HeatTransferModel on the 3d cube
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh.hh"
#include "heat_transfer_model.hh"
#include <iostream>
#include <fstream>
#include <string.h>
using namespace std;
/* -------------------------------------------------------------------------- */
akantu::UInt spatial_dimension = 3;
akantu:: ElementType type = akantu::_tetrahedron_4;
/* -------------------------------------------------------------------------- */
#ifdef AKANTU_USE_IOHELPER
#include "io_helper.hh"
iohelper::ElemType paraview_type = iohelper::TETRA1;
static void paraviewInit(akantu::HeatTransferModel & model, iohelper::Dumper & dumper);
static void paraviewDump(iohelper::Dumper & dumper);
#endif //AKANTU_USE_IOHELPER
/* -------------------------------------------------------------------------- */
int main(int argc, char *argv[])
{
akantu::initialize(argc, argv);
akantu::Mesh mesh(spatial_dimension);
akantu::MeshIOMSH mesh_io;
mesh_io.read("cube1.msh", mesh);
akantu::HeatTransferModel model(mesh);
//initialize everything
model.initFull("material.dat");
//assemble the lumped capacity
model.assembleCapacityLumped();
//get stable time step
akantu::Real time_step = model.getStableTimeStep()*0.8;
cout<<"time step is:"<<time_step<<endl;
model.setTimeStep(time_step);
/// boundary conditions
const akantu::Vector<akantu::Real> & nodes = model.getFEM().getMesh().getNodes();
akantu::Vector<bool> & boundary = model.getBoundary();
akantu::Vector<akantu::Real> & temperature = model.getTemperature();
akantu::Real eps = 1e-15;
double length = 1.;
akantu::UInt nb_nodes = model.getFEM().getMesh().getNbNodes();
for (akantu::UInt i = 0; i < nb_nodes; ++i) {
//temperature(i) = t1 - (t1 - t2) * sin(nodes(i, 0) * M_PI / length);
temperature(i) = 100.;
if(nodes(i,0) < eps) {
boundary(i) = true;
temperature(i) = 300.;
}
//set the second boundary condition
if(std::abs(nodes(i,0) - length) < eps) {
boundary(i) = true;
temperature(i) = 300.;
}
// //to insert a heat source
// if(std::abs(nodes(i,0) - length/2.) < 0.025 && std::abs(nodes(i,1) - length/2.) < 0.025 && std::abs(nodes(i,2) - length/2.) < 0.025) {
// boundary(i) = true;
// temperature(i) = 300.;
// }
}
#ifdef AKANTU_USE_IOHELPER
iohelper::DumperParaview dumper;
paraviewInit(model,dumper);
#endif
// //for testing
int max_steps = 1000;
for(int i=0; i<max_steps; i++)
{
model.explicitPred();
model.updateResidual();
model.explicitCorr();
#ifdef AKANTU_USE_IOHELPER
if(i % 100 == 0)
paraviewDump(dumper);
#endif
if(i % 10000 == 0)
std::cout << "Step " << i << "/" << max_steps << std::endl;
}
cout<< "\n\n Stable Time Step is : " << time_step << "\n \n" <<endl;
return 0;
}
/* -------------------------------------------------------------------------- */
#ifdef AKANTU_USE_IOHELPER
/* -------------------------------------------------------------------------- */
void paraviewInit(akantu::HeatTransferModel & model, iohelper::Dumper & dumper) {
- akantu::UInt nb_nodes = model.getFEM().getMesh().getNbNodes();
- akantu::UInt nb_element = model.getFEM().getMesh().getNbElement(type);
#pragma message "To change with new dumper"
- // dumper.SetMode(iohelper::TEXT);
- // dumper.SetPoints(model.getFEM().getMesh().getNodes().values,
- // spatial_dimension, nb_nodes, "coordinates_cube3d_istropic_conductivity");
- // dumper.SetConnectivity((int *)model.getFEM().getMesh().getConnectivity(type).values,
- // paraview_type, nb_element, iohelper::C_MODE);
- // dumper.AddNodeDataField(model.getTemperature().values,
- // 1, "temperature");
- // dumper.AddNodeDataField(model.getResidual().values,
- // 1, "residual");
- // dumper.AddNodeDataField(model.getTemperatureRate().values,
- // 1, "temperature_rate");
- // dumper.AddNodeDataField(model.getCapacityLumped().values,
- // 1, "capacity");
- // dumper.AddElemDataField(model.getTemperatureGradient(type).values,
- // spatial_dimension, "temperature_gradient");
- // dumper.SetPrefix("paraview/");
- // dumper.Init();
- // dumper.Dump();
+
}
/* -------------------------------------------------------------------------- */
void paraviewDump(iohelper::Dumper & dumper) {
// dumper.Dump();
}
/* -------------------------------------------------------------------------- */
#endif
/* -------------------------------------------------------------------------- */
diff --git a/test/test_model/test_solid_mechanics_model/patch_tests/implicit/CMakeLists.txt b/test/test_model/test_solid_mechanics_model/patch_tests/implicit/CMakeLists.txt
index a2107d06e..5a94c1b06 100644
--- a/test/test_model/test_solid_mechanics_model/patch_tests/implicit/CMakeLists.txt
+++ b/test/test_model/test_solid_mechanics_model/patch_tests/implicit/CMakeLists.txt
@@ -1,55 +1,54 @@
#===============================================================================
# @file CMakeLists.txt
#
# @author David Simon Kammer <david.kammer@epfl.ch>
# @author Nicolas Richart <nicolas.richart@epfl.ch>
#
# @date Thu Feb 17 16:05:48 2011
#
# @brief configuration for the implicit patch test
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
# @section DESCRIPTION
#
#===============================================================================
macro(register_patch_test name type plane_strain)
if("${plane_strain}" STREQUAL "false")
set(_mat ../data/material_check_stress_plane_stress.dat)
else()
set(_mat ../data/material_check_stress_plane_strain.dat)
endif()
- message("MATERIAL ${name} ${plane_strain} ${_mat}")
register_test(patch_test_implicit_${name}
SOURCES patch_test_implicit.cc
FILES_TO_COPY ../data/_${type}.msh ${_mat}
COMPILE_OPTIONS "TYPE=_${type};PLANE_STRAIN=${plane_strain}"
PACKAGE implicit
)
endmacro()
foreach(_type ${LIST_TYPES})
register_patch_test(${_type} ${_type} true)
endforeach()
foreach(_type ${LIST_TYPES_2D})
register_patch_test(plane_strain_${_type} ${_type} true)
register_patch_test(plane_stress_${_type} ${_type} false)
endforeach()
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/CMakeLists.txt b/test/test_model/test_solid_mechanics_model/test_cohesive/CMakeLists.txt
index 3f243c10d..ca7f762e5 100644
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/CMakeLists.txt
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/CMakeLists.txt
@@ -1,56 +1,42 @@
#===============================================================================
# @file CMakeLists.txt
#
# @author Marco Vocialta <marco.vocialta@epfl.ch>
#
# @date Tue May 08 13:01:18 2012
#
# @brief configuration for cohesive elements tests
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
# @section DESCRIPTION
#
#===============================================================================
add_akantu_test(test_cohesive_buildfacets "test_cohesive_buildfacets")
add_akantu_test(test_cohesive_intrinsic "test_cohesive_intrinsic")
add_akantu_test(test_cohesive_extrinsic "test_cohesive_extrinsic")
add_akantu_test(test_cohesive_buildfragments "test_cohesive_buildfragments")
add_akantu_test(test_cohesive_intrinsic_impl "test_cohesive_intrinsic_impl"
PACKAGE implicit)
-add_akantu_test(test_cohesive_parallel "test_cohesive_parallel"
+add_akantu_test(test_cohesive_parallel_intrinsic "test_cohesive_parallel_intrinsic"
+ PACKAGE parallel)
+add_akantu_test(test_cohesive_parallel_extrinsic "test_cohesive_parallel_extrinsic"
PACKAGE parallel)
#===============================================================================
-
-#register_test(test_cohesive test_cohesive.cc)
-#
-##===============================================================================
-#configure_file(
-# ${CMAKE_CURRENT_SOURCE_DIR}/material.dat
-# ${CMAKE_CURRENT_BINARY_DIR}/material.dat
-# COPYONLY
-# )
-#configure_file(
-# ${CMAKE_CURRENT_SOURCE_DIR}/mesh.msh
-# ${CMAKE_CURRENT_BINARY_DIR}/mesh.msh
-# COPYONLY
-# )
-#file(COPY run DESTINATION .)
-#file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/paraview)
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_buildfacets/test_cohesive_buildfacets_hexahedron.cc b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_buildfacets/test_cohesive_buildfacets_hexahedron.cc
index ff253f47c..7abe48dc5 100644
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_buildfacets/test_cohesive_buildfacets_hexahedron.cc
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_buildfacets/test_cohesive_buildfacets_hexahedron.cc
@@ -1,231 +1,228 @@
/**
* @file test_cohesive_buildfacets_hexahedron.cc
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Wed Oct 03 10:20:53 2012
*
* @brief Test for cohesive elements
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <iostream>
#include <limits>
#include <fstream>
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh.hh"
#include "mesh_utils.hh"
#include "solid_mechanics_model.hh"
#include "material.hh"
/* -------------------------------------------------------------------------- */
using namespace akantu;
int main(int argc, char *argv[]) {
initialize(argc, argv);
- // debug::setDebugLevel(dblDump);
-
const UInt spatial_dimension = 3;
const ElementType type = _hexahedron_8;
Mesh mesh(spatial_dimension);
- MeshIOMSH mesh_io;
- mesh_io.read("hexahedron.msh", mesh);
- Mesh mesh_facets(spatial_dimension, const_cast<Vector<Real> &>(mesh.getNodes()), "mesh_facets", 1);
-
- // std::cout << mesh << std::endl;
+ mesh.read("hexahedron.msh");
+ Mesh mesh_facets(spatial_dimension, mesh.getNodes(), "mesh_facets");
MeshUtils::buildAllFacets(mesh, mesh_facets);
+ // debug::setDebugLevel(dblDump);
+ // std::cout << mesh << std::endl;
// std::cout << mesh_facets << std::endl;
- const ElementType type_facet = mesh.getFacetElementType(type);
- const ElementType type_subfacet = mesh.getFacetElementType(type_facet);
- const ElementType type_subsubfacet = mesh.getFacetElementType(type_subfacet);
+ const ElementType type_facet = mesh.getFacetType(type);
+ const ElementType type_subfacet = mesh.getFacetType(type_facet);
+ const ElementType type_subsubfacet = mesh.getFacetType(type_subfacet);
/* ------------------------------------------------------------------------ */
/* Element to Subelement testing */
/* ------------------------------------------------------------------------ */
- const Vector<Vector<Element> > & el_to_subel3 = mesh_facets.getElementToSubelement(type_facet);
- const Vector<Vector<Element> > & el_to_subel2 = mesh_facets.getElementToSubelement(type_subfacet);
- const Vector<Vector<Element> > & el_to_subel1 = mesh_facets.getElementToSubelement(type_subsubfacet);
+ const Vector< std::vector<Element> > & el_to_subel3 = mesh_facets.getElementToSubelement(type_facet);
+ const Vector< std::vector<Element> > & el_to_subel2 = mesh_facets.getElementToSubelement(type_subfacet);
+ const Vector< std::vector<Element> > & el_to_subel1 = mesh_facets.getElementToSubelement(type_subsubfacet);
/// build vectors for comparison
Vector<Element> hexahedron(2);
hexahedron(0).type = type;
hexahedron(0).element = 0;
hexahedron(1).type = type;
hexahedron(1).element = 3;
Vector<Element> quadrangle(4);
quadrangle(0).type = type_facet;
quadrangle(0).element = 1;
quadrangle(1).type = type_facet;
- quadrangle(1).element = 11;
+ quadrangle(1).element = 2;
quadrangle(2).type = type_facet;
quadrangle(2).element = 7;
quadrangle(3).type = type_facet;
- quadrangle(3).element = 2;
+ quadrangle(3).element = 11;
Vector<Element> segment(5);
segment(0).type = type_subfacet;
segment(0).element = 0;
segment(1).type = type_subfacet;
segment(1).element = 1;
segment(2).type = type_subfacet;
segment(2).element = 4;
segment(3).type = type_subfacet;
segment(3).element = 15;
segment(4).type = type_subfacet;
segment(4).element = 22;
/// comparison
for (UInt i = 0; i < hexahedron.getSize(); ++i) {
- if (hexahedron(i).type != el_to_subel3(1)(i).type ||
- hexahedron(i).element != el_to_subel3(1)(i).element) {
- std::cout << hexahedron(i).element << " " << el_to_subel3(4)(i).element << std::endl;
+ if (hexahedron(i).type != el_to_subel3(1)[i].type ||
+ hexahedron(i).element != el_to_subel3(1)[i].element) {
+ std::cout << hexahedron(i).element << " " << el_to_subel3(4)[i].element << std::endl;
std::cout << "The two hexahedrons connected to quadrangle 1 are wrong"
<< std::endl;
return EXIT_FAILURE;
}
}
for (UInt i = 0; i < quadrangle.getSize(); ++i) {
- if (quadrangle(i).type != el_to_subel2(4)(i).type ||
- quadrangle(i).element != el_to_subel2(4)(i).element) {
+ if (quadrangle(i).type != el_to_subel2(4)[i].type ||
+ quadrangle(i).element != el_to_subel2(4)[i].element) {
std::cout << "The quadrangles connected to segment 4 are wrong"
<< std::endl;
return EXIT_FAILURE;
}
}
for (UInt i = 0; i < segment.getSize(); ++i) {
- if (segment(i).type != el_to_subel1(1)(i).type ||
- segment(i).element != el_to_subel1(1)(i).element) {
+ if (segment(i).type != el_to_subel1(1)[i].type ||
+ segment(i).element != el_to_subel1(1)[i].element) {
std::cout << "The segments connected to point 1 are wrong"
<< std::endl;
return EXIT_FAILURE;
}
}
/* ------------------------------------------------------------------------ */
/* Subelement to Element testing */
/* ------------------------------------------------------------------------ */
const Vector<Element> & subel_to_el3 = mesh_facets.getSubelementToElement(type);
const Vector<Element> & subel_to_el2 = mesh_facets.getSubelementToElement(type_facet);
const Vector<Element> & subel_to_el1 = mesh_facets.getSubelementToElement(type_subfacet);
/// build vectors for comparison
Vector<Element> quadrangle2(mesh.getNbFacetsPerElement(type));
quadrangle2(0).type = type_facet;
quadrangle2(0).element = 1;
quadrangle2(1).type = type_facet;
quadrangle2(1).element = 11;
quadrangle2(2).type = type_facet;
quadrangle2(2).element = 16;
quadrangle2(3).type = type_facet;
quadrangle2(3).element = 17;
quadrangle2(4).type = type_facet;
quadrangle2(4).element = 18;
quadrangle2(5).type = type_facet;
quadrangle2(5).element = 19;
Vector<Element> segment2(4);
segment2(0).type = type_subfacet;
segment2(0).element = 3;
segment2(1).type = type_subfacet;
segment2(1).element = 6;
segment2(2).type = type_subfacet;
segment2(2).element = 9;
segment2(3).type = type_subfacet;
segment2(3).element = 11;
Vector<Element> point(2);
- point(0).type = mesh.getFacetElementType(type_subfacet);
+ point(0).type = mesh.getFacetType(type_subfacet);
point(0).element = 5;
- point(1).type = mesh.getFacetElementType(type_subfacet);
+ point(1).type = mesh.getFacetType(type_subfacet);
point(1).element = 7;
/// comparison
for (UInt i = 0; i < quadrangle2.getSize(); ++i) {
if (quadrangle2(i).type != subel_to_el3(3, i).type ||
quadrangle2(i).element != subel_to_el3(3, i).element) {
std::cout << "The quadrangles connected to hexahedron 3 are wrong"
<< std::endl;
return EXIT_FAILURE;
}
}
for (UInt i = 0; i < segment2.getSize(); ++i) {
if (segment2(i).type != subel_to_el2(4, i).type ||
segment2(i).element != subel_to_el2(4, i).element) {
std::cout << "The segments connected to quadrangle 4 are wrong"
<< std::endl;
return EXIT_FAILURE;
}
}
for (UInt i = 0; i < point.getSize(); ++i) {
if (point(i).type != subel_to_el1(11, i).type ||
point(i).element != subel_to_el1(11, i).element) {
std::cout << "The points connected to segment 11 are wrong"
<< std::endl;
return EXIT_FAILURE;
}
}
finalize();
std::cout << "OK: test_cohesive_buildfacets was passed!" << std::endl;
return EXIT_SUCCESS;
}
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_buildfacets/test_cohesive_buildfacets_tetrahedron.cc b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_buildfacets/test_cohesive_buildfacets_tetrahedron.cc
index 3194e7c45..2c2e906b8 100644
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_buildfacets/test_cohesive_buildfacets_tetrahedron.cc
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_buildfacets/test_cohesive_buildfacets_tetrahedron.cc
@@ -1,254 +1,253 @@
/**
* @file test_cohesive_buildfacets_tetrahedron.cc
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Wed Oct 03 10:20:53 2012
*
* @brief Test for cohesive elements
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <iostream>
#include <limits>
#include <fstream>
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh.hh"
#include "mesh_utils.hh"
#include "solid_mechanics_model.hh"
#include "material.hh"
/* -------------------------------------------------------------------------- */
using namespace akantu;
int main(int argc, char *argv[]) {
initialize(argc, argv);
- // debug::setDebugLevel(dblDump);
-
const UInt spatial_dimension = 3;
const ElementType type = _tetrahedron_10;
Mesh mesh(spatial_dimension);
- MeshIOMSH mesh_io;
- mesh_io.read("tetrahedron.msh", mesh);
- Mesh mesh_facets(spatial_dimension, const_cast<Vector<Real> &>(mesh.getNodes()), "mesh_facets", 1);
+ mesh.read("tetrahedron.msh");
+ Mesh mesh_facets(spatial_dimension, mesh.getNodes(), "mesh_facets");
MeshUtils::buildAllFacets(mesh, mesh_facets);
- // std::cout << mesh << std::endl;
+ // debug::setDebugLevel(dblDump);
+ // std::cout << mesh << std::endl;
+ // std::cout << mesh_facets << std::endl;
- const ElementType type_facet = mesh.getFacetElementType(type);
- const ElementType type_subfacet = mesh.getFacetElementType(type_facet);
- const ElementType type_subsubfacet = mesh.getFacetElementType(type_subfacet);
+ const ElementType type_facet = mesh.getFacetType(type);
+ const ElementType type_subfacet = mesh.getFacetType(type_facet);
+ const ElementType type_subsubfacet = mesh.getFacetType(type_subfacet);
/* ------------------------------------------------------------------------ */
/* Element to Subelement testing */
/* ------------------------------------------------------------------------ */
- const Vector<Vector<Element> > & el_to_subel3 = mesh_facets.getElementToSubelement(type_facet);
- const Vector<Vector<Element> > & el_to_subel2 = mesh_facets.getElementToSubelement(type_subfacet);
- const Vector<Vector<Element> > & el_to_subel1 = mesh_facets.getElementToSubelement(type_subsubfacet);
+ const Vector< std::vector<Element> > & el_to_subel3 = mesh_facets.getElementToSubelement(type_facet);
+ const Vector< std::vector<Element> > & el_to_subel2 = mesh_facets.getElementToSubelement(type_subfacet);
+ const Vector< std::vector<Element> > & el_to_subel1 = mesh_facets.getElementToSubelement(type_subsubfacet);
/// build vectors for comparison
Vector<Element> tetrahedron(2);
tetrahedron(0).type = type;
tetrahedron(0).element = 1;
tetrahedron(1).type = type;
tetrahedron(1).element = 11;
Vector<Element> triangle(8);
triangle(0).type = type_facet;
- triangle(0).element = 2;
+ triangle(0).element = 0;
triangle(1).type = type_facet;
- triangle(1).element = 0;
+ triangle(1).element = 2;
triangle(2).type = type_facet;
triangle(2).element = 4;
triangle(3).type = type_facet;
triangle(3).element = 7;
triangle(4).type = type_facet;
- triangle(4).element = 26;
+ triangle(4).element = 16;
triangle(5).type = type_facet;
- triangle(5).element = 24;
+ triangle(5).element = 18;
triangle(6).type = type_facet;
- triangle(6).element = 16;
+ triangle(6).element = 24;
triangle(7).type = type_facet;
- triangle(7).element = 18;
+ triangle(7).element = 26;
Vector<Element> segment(13);
segment(0).type = type_subfacet;
segment(0).element = 0;
segment(1).type = type_subfacet;
segment(1).element = 1;
segment(2).type = type_subfacet;
segment(2).element = 3;
segment(3).type = type_subfacet;
segment(3).element = 7;
segment(4).type = type_subfacet;
segment(4).element = 9;
segment(5).type = type_subfacet;
segment(5).element = 12;
segment(6).type = type_subfacet;
segment(6).element = 13;
segment(7).type = type_subfacet;
segment(7).element = 16;
segment(8).type = type_subfacet;
segment(8).element = 18;
segment(9).type = type_subfacet;
segment(9).element = 21;
segment(10).type = type_subfacet;
segment(10).element = 27;
segment(11).type = type_subfacet;
segment(11).element = 32;
segment(12).type = type_subfacet;
segment(12).element = 34;
/// comparison
for (UInt i = 0; i < tetrahedron.getSize(); ++i) {
- if (tetrahedron(i).type != el_to_subel3(4)(i).type ||
- tetrahedron(i).element != el_to_subel3(4)(i).element) {
- std::cout << tetrahedron(i).element << " " << el_to_subel3(4)(i).element << std::endl;
+ if (tetrahedron(i).type != el_to_subel3(4)[i].type ||
+ tetrahedron(i).element != el_to_subel3(4)[i].element) {
+ std::cout << tetrahedron(i).element << " " << el_to_subel3(4)[i].element << std::endl;
std::cout << "The two tetrahedrons connected to triangle 4 are wrong"
<< std::endl;
return EXIT_FAILURE;
}
}
for (UInt i = 0; i < triangle.getSize(); ++i) {
- if (triangle(i).type != el_to_subel2(0)(i).type ||
- triangle(i).element != el_to_subel2(0)(i).element) {
+ if (triangle(i).type != el_to_subel2(0)[i].type ||
+ triangle(i).element != el_to_subel2(0)[i].element) {
std::cout << "The triangles connected to segment 0 are wrong"
<< std::endl;
return EXIT_FAILURE;
}
}
for (UInt i = 0; i < segment.getSize(); ++i) {
- if (segment(i).type != el_to_subel1(1)(i).type ||
- segment(i).element != el_to_subel1(1)(i).element) {
+ if (segment(i).type != el_to_subel1(1)[i].type ||
+ segment(i).element != el_to_subel1(1)[i].element) {
std::cout << "The segments connected to point 1 are wrong"
<< std::endl;
return EXIT_FAILURE;
}
}
/* ------------------------------------------------------------------------ */
/* Subelement to Element testing */
/* ------------------------------------------------------------------------ */
const Vector<Element> & subel_to_el3 = mesh_facets.getSubelementToElement(type);
const Vector<Element> & subel_to_el2 = mesh_facets.getSubelementToElement(type_facet);
const Vector<Element> & subel_to_el1 = mesh_facets.getSubelementToElement(type_subfacet);
/// build vectors for comparison
Vector<Element> triangle2(mesh.getNbFacetsPerElement(type));
triangle2(0).type = type_facet;
triangle2(0).element = 4;
triangle2(1).type = type_facet;
triangle2(1).element = 5;
triangle2(2).type = type_facet;
triangle2(2).element = 6;
triangle2(3).type = type_facet;
triangle2(3).element = 7;
Vector<Element> segment2(3);
segment2(0).type = type_subfacet;
segment2(0).element = 1;
segment2(1).type = type_subfacet;
segment2(1).element = 3;
segment2(2).type = type_subfacet;
segment2(2).element = 4;
Vector<Element> point(2);
- point(0).type = mesh.getFacetElementType(type_subfacet);
+ point(0).type = mesh.getFacetType(type_subfacet);
point(0).element = 1;
- point(1).type = mesh.getFacetElementType(type_subfacet);
+ point(1).type = mesh.getFacetType(type_subfacet);
point(1).element = 2;
/// comparison
for (UInt i = 0; i < triangle2.getSize(); ++i) {
if (triangle2(i).type != subel_to_el3(1, i).type ||
triangle2(i).element != subel_to_el3(1, i).element) {
std::cout << "The triangles connected to tetrahedron 1 are wrong"
<< std::endl;
return EXIT_FAILURE;
}
}
for (UInt i = 0; i < segment2.getSize(); ++i) {
if (segment2(i).type != subel_to_el2(1, i).type ||
segment2(i).element != subel_to_el2(1, i).element) {
std::cout << "The segments connected to triangle 1 are wrong"
<< std::endl;
return EXIT_FAILURE;
}
}
for (UInt i = 0; i < point.getSize(); ++i) {
if (point(i).type != subel_to_el1(1, i).type ||
point(i).element != subel_to_el1(1, i).element) {
std::cout << "The points connected to segment 1 are wrong"
<< std::endl;
return EXIT_FAILURE;
}
}
finalize();
std::cout << "OK: test_cohesive_buildfacets was passed!" << std::endl;
return EXIT_SUCCESS;
}
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_buildfragments/test_cohesive_buildfragments.cc b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_buildfragments/test_cohesive_buildfragments.cc
index eaadb8b68..fbea68e16 100644
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_buildfragments/test_cohesive_buildfragments.cc
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_buildfragments/test_cohesive_buildfragments.cc
@@ -1,216 +1,217 @@
/**
* @file test_cohesive_buildfragments.cc
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Wed Jun 13 11:29:49 2012
*
* @brief Test for cohesive elements
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <limits>
#include <fstream>
#include <iostream>
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh.hh"
#include "mesh_utils.hh"
#include "solid_mechanics_model_cohesive.hh"
#include "material.hh"
//#include "io_helper.hh"
/* -------------------------------------------------------------------------- */
using namespace akantu;
int main(int argc, char *argv[]) {
initialize(argc, argv);
debug::setDebugLevel(dblWarning);
const UInt spatial_dimension = 2;
const UInt max_steps = 200;
Mesh mesh(spatial_dimension);
mesh.read("mesh.msh");
SolidMechanicsModelCohesive model(mesh);
/// model initialization
- model.initExtrinsic("material.dat");
+ model.initFull("material.dat", _explicit_dynamic, _extrinsic);
+
Real time_step = model.getStableTimeStep()*0.05;
model.setTimeStep(time_step);
// std::cout << "Time step: " << time_step << std::endl;
model.assembleMassLumped();
Real strain_rate = 1.e5;
Real L = 0.03;
Real theoretical_mass = L * L/20. * 2500;
Real disp_increment = strain_rate * L / 2. * time_step;
Real epsilon = std::numeric_limits<Real>::epsilon();
Vector<Real> & velocity = model.getVelocity();
Vector<bool> & boundary = model.getBoundary();
Vector<Real> & displacement = model.getDisplacement();
// const Vector<Real> & residual = model.getResidual();
const Vector<Real> & position = mesh.getNodes();
UInt nb_nodes = mesh.getNbNodes();
/// initial conditions
for (UInt n = 0; n < nb_nodes; ++n)
velocity(n, 0) = strain_rate * position(n, 0);
/// boundary conditions
for (UInt n = 0; n < nb_nodes; ++n) {
if (std::abs((position(n, 0) - L/2) / (L/2)) < epsilon) {
boundary(n, 0) = true;
displacement(n, 0) += disp_increment;
}
if (std::abs((position(n, 0) - (-1.) * L/2) / ( (-1) * L/2)) < epsilon) {
boundary(n, 0) = true;
displacement(n, 0) -= disp_increment;
}
}
model.updateResidual();
// model.setBaseName("extrinsic");
// model.addDumpFieldVector("displacement");
// model.addDumpField("velocity" );
// model.addDumpField("acceleration");
// model.addDumpField("residual" );
// model.addDumpField("stress");
// model.addDumpField("strain");
// model.dump();
ElementType type_facet = model.getFacetType();
ElementType type_cohesive = model.getCohesiveElementType();
UInt cohesive_index = model.getCohesiveIndex();
UInt nb_quad_per_facet = model.getFEM("FacetsFEM").getNbQuadraturePoints(type_facet);
MaterialCohesive & mat_cohesive
= dynamic_cast<MaterialCohesive&>(model.getMaterial(cohesive_index));
const Vector<Real> & damage = mat_cohesive.getDamage(type_cohesive);
const Vector<Real> & fragment_mass = model.getFragmentsMass();
/// assign sigma limit
const Mesh & mesh_facets = model.getMeshFacets();
Real sigma_c = 300.e6;
Real rand = 0.1;
Vector<Real> & sigma_lim = model.getSigmaLimit();
const Vector<UInt> connectivity = mesh_facets.getConnectivity(type_facet);
UInt nb_facet = connectivity.getSize();
std::srand(1);
for (UInt f = 0; f < nb_facet; ++f)
sigma_lim(f) = sigma_c * (1 + std::rand()/(Real)RAND_MAX * rand);
/// Main loop
for (UInt s = 1; s <= max_steps; ++s) {
model.checkCohesiveStress();
model.explicitPred();
model.updateResidual();
model.updateAcceleration();
model.explicitCorr();
/// apply boundary conditions
for (UInt n = 0; n < nb_nodes; ++n) {
if (std::abs((position(n, 0) - L/2) / (L/2)) < epsilon) {
displacement(n, 0) += disp_increment;
}
if (std::abs((position(n, 0) - (-1.) * L/2) / ( (-1) * L/2)) < epsilon) {
displacement(n, 0) -= disp_increment;
}
}
if(s % 1 == 0) {
// model.dump();
std::cout << "passing step " << s << "/" << max_steps << std::endl;
model.computeFragmentsData();
/// check number of fragments
UInt nb_fragment_num = model.getNbFragment();
UInt nb_cohesive_elements = mesh.getNbElement(type_cohesive);
UInt nb_fragment = 1;
for (UInt el = 0; el < nb_cohesive_elements; ++el) {
UInt q = 0;
while (q < nb_quad_per_facet &&
std::abs(damage(el * nb_quad_per_facet + q) - 1) < epsilon) ++q;
if (q == nb_quad_per_facet) {
++nb_fragment;
}
}
if (nb_fragment != nb_fragment_num) {
std::cout << "The number of fragments is wrong!" << std::endl;
return EXIT_FAILURE;
}
/// check mass computation
Real total_mass = 0.;
for (UInt frag = 0; frag < nb_fragment_num; ++frag) {
total_mass += fragment_mass(frag);
}
if (std::abs(theoretical_mass - total_mass) > epsilon * theoretical_mass * 100) {
std::cout << "The fragments' mass is wrong!" << std::endl;
return EXIT_FAILURE;
}
}
}
/// check velocities
UInt nb_fragment = model.getNbFragment();
const Vector<Real> & fragment_velocity = model.getFragmentsVelocity();
for (UInt frag = 0; frag < nb_fragment; ++frag) {
Real vel = ((frag + 0.5) / nb_fragment * 2 - 1) * disp_increment / time_step;
if (std::abs(fragment_velocity(frag) - vel) > 100) {
std::cout << "The fragments' velocity is wrong!" << std::endl;
return EXIT_FAILURE;
}
}
finalize();
std::cout << "OK: test_cohesive_buildfragments was passed!" << std::endl;
return EXIT_SUCCESS;
}
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/CMakeLists.txt b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/CMakeLists.txt
index cd0278932..5649f3587 100644
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/CMakeLists.txt
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/CMakeLists.txt
@@ -1,54 +1,45 @@
#===============================================================================
# @file CMakeLists.txt
#
# @author Marco Vocialta <marco.vocialta@epfl.ch>
#
# @date Tue May 08 13:01:18 2012
#
# @brief configuration for extrinsic cohesive elements tests
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
# @section DESCRIPTION
#
#===============================================================================
-register_test(test_cohesive_extrinsic test_cohesive_extrinsic.cc)
-register_test(test_cohesive_extrinsic_quadrangle test_cohesive_extrinsic_quadrangle.cc)
+add_mesh(test_cohesive_extrinsic_mesh triangle.geo 2 2)
+add_mesh(test_cohesive_extrinsic_quadrangle_mesh quadrangle.geo 2 2)
-#add_mesh(test_cohesive_extrinsic_mesh mesh.geo 2 2)
-#add_dependencies(test_cohesive_extrinsic test_cohesive_extrinsic_mesh)
+register_test(test_cohesive_extrinsic
+ SOURCES test_cohesive_extrinsic.cc
+ DEPENDENCIES test_cohesive_extrinsic_mesh
+ PACKAGE cohesive_element
+ FILES_TO_COPY material.dat
+ DIRECTORIES_TO_CREATE paraview)
-#===============================================================================
-configure_file(
- ${CMAKE_CURRENT_SOURCE_DIR}/material.dat
- ${CMAKE_CURRENT_BINARY_DIR}/material.dat
- COPYONLY
- )
-configure_file(
- ${CMAKE_CURRENT_SOURCE_DIR}/mesh.msh
- ${CMAKE_CURRENT_BINARY_DIR}/mesh.msh
- COPYONLY
- )
-configure_file(
- ${CMAKE_CURRENT_SOURCE_DIR}/quadrangle.msh
- ${CMAKE_CURRENT_BINARY_DIR}/quadrangle.msh
- COPYONLY
- )
-file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/paraview)
+register_test(test_cohesive_extrinsic_quadrangle
+ SOURCES test_cohesive_extrinsic_quadrangle.cc
+ DEPENDENCIES test_cohesive_extrinsic_quadrangle_mesh
+ PACKAGE cohesive_element)
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/mesh.msh b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/mesh.msh
deleted file mode 100644
index 2f027b42b..000000000
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/mesh.msh
+++ /dev/null
@@ -1,66 +0,0 @@
-$MeshFormat
-2.2 0 8
-$EndMeshFormat
-$Nodes
-41
-1 1 1 0
-2 -1 1 0
-3 -1 -1 0
-4 1 -1 0
-5 2.081668171172169e-12 1 0
-6 0.5000000000009475 1 0
-7 -0.4999999999989593 1 0
-8 -1 2.081668171172169e-12 0
-9 -1 0.5000000000009475 0
-10 -1 -0.4999999999989593 0
-11 -2.081668171172169e-12 -1 0
-12 -0.5000000000009475 -1 0
-13 0.4999999999989593 -1 0
-14 1 -2.081668171172169e-12 0
-15 1 -0.5000000000009475 0
-16 1 0.4999999999989593 0
-17 -2.890743200367751e-14 2.892130979148533e-14 0
-18 0.4999999999993061 -0.500000000000694 0
-19 0.500000000000694 0.4999999999993061 0
-20 -0.4999999999993061 0.500000000000694 0
-21 -0.5000000000006987 -0.4999999999993013 0
-22 0.7499999999996531 -0.7500000000003471 0
-23 0.2499999999986122 -0.7500000000003471 0
-24 0.7500000000003471 0.7499999999996531 0
-25 0.7500000000003471 0.2499999999986122 0
-26 -0.7499999999996531 0.7500000000003471 0
-27 -0.2499999999986122 0.7500000000003471 0
-28 -0.7500000000003493 -0.7499999999996506 0
-29 -0.7500000000003493 -0.2499999999986098 0
-30 1.026380369584245e-12 0.5000000000000144 0
-31 0.2500000000003325 0.2499999999996675 0
-32 0.2500000000013878 0.7499999999996531 0
-33 -0.5000000000000144 1.055294740481827e-12 0
-34 -0.2499999999996675 0.2500000000003614 0
-35 -0.7499999999996531 0.2500000000013878 0
-36 0.2499999999996386 -0.2500000000003325 0
-37 -1.055287801587923e-12 -0.4999999999999855 0
-38 0.4999999999999856 -1.026373430690342e-12 0
-39 0.7499999999996531 -0.2500000000013878 0
-40 -0.2500000000003638 -0.2499999999996362 0
-41 -0.2500000000013902 -0.7499999999996507 0
-$EndNodes
-$Elements
-16
-1 9 2 7 6 4 18 11 22 23 13
-2 9 2 7 6 1 19 14 24 25 16
-3 9 2 7 6 5 2 20 7 26 27
-4 9 2 7 6 3 21 8 28 29 10
-5 9 2 7 6 5 17 19 30 31 32
-6 9 2 7 6 8 17 20 33 34 35
-7 9 2 7 6 11 18 17 23 36 37
-8 9 2 7 6 14 17 18 38 36 39
-9 9 2 7 6 14 19 17 25 31 38
-10 9 2 7 6 5 20 17 27 34 30
-11 9 2 7 6 8 21 17 29 40 33
-12 9 2 7 6 11 17 21 37 40 41
-13 9 2 7 6 4 14 18 15 39 22
-14 9 2 7 6 2 8 20 9 35 26
-15 9 2 7 6 5 19 1 32 24 6
-16 9 2 7 6 3 11 21 12 41 28
-$EndElements
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/quadrangle.geo b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/quadrangle.geo
new file mode 100644
index 000000000..b9b37bb8a
--- /dev/null
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/quadrangle.geo
@@ -0,0 +1,18 @@
+h = 1.;
+
+Point(1) = { 1, 1, 0, h};
+Point(2) = {-1, 1, 0, h};
+Point(3) = {-1,-1, 0, h};
+Point(4) = { 1,-1, 0, h};
+Line(1) = {1, 2};
+Line(2) = {2, 3};
+Line(3) = {3, 4};
+Line(4) = {4, 1};
+Line Loop(5) = {1, 2, 3, 4};
+Plane Surface(6) = {5};
+Physical Surface(7) = {6};
+
+Transfinite Line {1, 2, 3, 4} = 3;
+Transfinite Surface "*";
+Recombine Surface "*";
+Mesh.SecondOrderIncomplete = 1;
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/quadrangle.msh b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/quadrangle.msh
deleted file mode 100644
index 62ab1799a..000000000
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/quadrangle.msh
+++ /dev/null
@@ -1,34 +0,0 @@
-$MeshFormat
-2.2 0 8
-$EndMeshFormat
-$Nodes
-21
-1 -1 1 0
-2 1 1 0
-3 1 -1 0
-4 -1 -1 0
-5 1 -2.081668171172169e-12 0
-6 1 -0.5000000000009475 0
-7 1 0.4999999999989593 0
-8 2.081668171172169e-12 1 0
-9 0.5000000000009475 1 0
-10 -0.4999999999989593 1 0
-11 -1 2.081668171172169e-12 0
-12 -1 0.5000000000009475 0
-13 -1 -0.4999999999989593 0
-14 -2.081668171172169e-12 -1 0
-15 -0.5000000000009475 -1 0
-16 0.4999999999989593 -1 0
-17 0 -4.33300469310004e-24 0
-18 0.5 -1.040834085588251e-12 0
-19 -1.040834085586084e-12 -0.5 0
-20 -0.5 1.040834085583918e-12 0
-21 1.040834085586084e-12 0.5 0
-$EndNodes
-$Elements
-4
-1 16 2 7 6 3 5 17 14 6 18 19 16
-2 16 2 7 6 14 17 11 4 19 20 13 15
-3 16 2 7 6 5 2 8 17 7 9 21 18
-4 16 2 7 6 17 8 1 11 21 10 12 20
-$EndElements
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/test_cohesive_extrinsic.cc b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/test_cohesive_extrinsic.cc
index 7e8ccb70e..c4fec55ab 100644
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/test_cohesive_extrinsic.cc
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/test_cohesive_extrinsic.cc
@@ -1,214 +1,214 @@
/**
* @file test_cohesive_extrinsic.cc
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Tue May 08 13:01:18 2012
*
* @brief Test for cohesive elements
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <limits>
#include <fstream>
#include <iostream>
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh.hh"
#include "mesh_utils.hh"
#include "solid_mechanics_model_cohesive.hh"
#include "material.hh"
// #if defined(AKANTU_USE_IOHELPER)
// # include "io_helper.hh"
// #endif
/* -------------------------------------------------------------------------- */
using namespace akantu;
int main(int argc, char *argv[]) {
initialize(argc, argv);
debug::setDebugLevel(dblWarning);
const UInt spatial_dimension = 2;
const UInt max_steps = 1000;
const ElementType type = _triangle_6;
Mesh mesh(spatial_dimension);
- mesh.read("mesh.msh");
+ mesh.read("triangle.msh");
SolidMechanicsModelCohesive model(mesh);
/// model initialization
- model.initExtrinsic("material.dat");
+ model.initFull("material.dat", _explicit_dynamic, _extrinsic);
Real time_step = model.getStableTimeStep()*0.05;
model.setTimeStep(time_step);
// std::cout << "Time step: " << time_step << std::endl;
model.assembleMassLumped();
/* ------------------------------------------------------------------------ */
/* Facet part */
/* ------------------------------------------------------------------------ */
// std::cout << mesh << std::endl;
const Mesh & mesh_facets = model.getMeshFacets();
- const ElementType type_facet = mesh.getFacetElementType(type);
+ const ElementType type_facet = mesh.getFacetType(type);
UInt nb_facet = mesh_facets.getNbElement(type_facet);
Vector<Real> & position = mesh.getNodes();
Vector<Real> & sigma_lim = model.getSigmaLimit();
Vector<bool> & facet_check = model.getFacetsCheck();
Real * bary_facet = new Real[spatial_dimension];
for (UInt f = 0; f < nb_facet; ++f) {
mesh_facets.getBarycenter(f, type_facet, bary_facet);
if (bary_facet[1] < 0.30 && bary_facet[1] > 0.20) {
sigma_lim(f) = 100;
facet_check(f) = true;
std::cout << f << std::endl;
}
else {
sigma_lim(f) = 1e10;
facet_check(f) = false;
}
}
delete[] bary_facet;
// std::cout << mesh << std::endl;
/* ------------------------------------------------------------------------ */
/* End of facet part */
/* ------------------------------------------------------------------------ */
Vector<Real> & velocity = model.getVelocity();
Vector<bool> & boundary = model.getBoundary();
Vector<Real> & displacement = model.getDisplacement();
// const Vector<Real> & residual = model.getResidual();
UInt nb_nodes = mesh.getNbNodes();
/// boundary conditions
for (UInt n = 0; n < nb_nodes; ++n) {
if (position(n, 1) > 0.99 || position(n, 1) < -0.99)
boundary(n, 1) = true;
if (position(n, 0) > 0.99 || position(n, 0) < -0.99)
boundary(n, 0) = true;
}
model.updateResidual();
model.setBaseName("extrinsic");
model.addDumpFieldVector("displacement");
model.addDumpField("velocity" );
model.addDumpField("acceleration");
model.addDumpField("residual" );
model.addDumpField("stress");
model.addDumpField("strain");
model.dump();
/// initial conditions
Real loading_rate = 0.5;
Real disp_update = loading_rate * time_step;
for (UInt n = 0; n < nb_nodes; ++n) {
velocity(n, 1) = loading_rate * position(n, 1);
}
// std::ofstream edis("edis.txt");
// std::ofstream erev("erev.txt");
// Vector<Real> & residual = model.getResidual();
// const Vector<Real> & stress = model.getMaterial(0).getStress(type);
/// Main loop
for (UInt s = 1; s <= max_steps; ++s) {
/// update displacement on extreme nodes
for (UInt n = 0; n < nb_nodes; ++n) {
if (position(n, 1) > 0.99 || position(n, 1) < -0.99)
displacement(n, 1) += disp_update * position(n, 1);
}
model.checkCohesiveStress();
model.explicitPred();
model.updateResidual();
model.updateAcceleration();
model.explicitCorr();
if(s % 1 == 0) {
model.dump();
std::cout << "passing step " << s << "/" << max_steps << std::endl;
}
// Real Ed = dynamic_cast<MaterialCohesive&> (model.getMaterial(1)).getDissipatedEnergy();
// Real Er = dynamic_cast<MaterialCohesive&> (model.getMaterial(1)).getReversibleEnergy();
// edis << s << " "
// << Ed << std::endl;
// erev << s << " "
// << Er << std::endl;
}
// edis.close();
// erev.close();
+ // mesh.write("mesh_final.msh");
+
Real Ed = model.getEnergy("dissipated");
Real Edt = 200*std::sqrt(2);
std::cout << Ed << " " << Edt << std::endl;
if (Ed < Edt * 0.999 || Ed > Edt * 1.001 || std::isnan(Ed)) {
std::cout << "The dissipated energy is incorrect" << std::endl;
return EXIT_FAILURE;
}
// for (UInt n = 0; n < position.getSize(); ++n) {
// for (UInt s = 0; s < spatial_dimension; ++s) {
// position(n, s) += displacement(n, s);
// }
// }
- // mesh.write("mesh_final.msh");
-
finalize();
std::cout << "OK: test_cohesive_extrinsic was passed!" << std::endl;
return EXIT_SUCCESS;
}
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/test_cohesive_extrinsic_quadrangle.cc b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/test_cohesive_extrinsic_quadrangle.cc
index 7b43f44ad..068ce5d17 100644
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/test_cohesive_extrinsic_quadrangle.cc
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/test_cohesive_extrinsic_quadrangle.cc
@@ -1,248 +1,249 @@
/**
* @file test_cohesive_extrinsic_quadrangle.cc
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Wed Oct 03 10:20:53 2012
*
* @brief Test for extrinsic cohesive elements and quadrangles
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <limits>
#include <fstream>
#include <iostream>
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh.hh"
#include "mesh_utils.hh"
#include "solid_mechanics_model_cohesive.hh"
#include "material.hh"
#if defined(AKANTU_USE_IOHELPER)
# include "io_helper.hh"
#endif
/* -------------------------------------------------------------------------- */
using namespace akantu;
int main(int argc, char *argv[]) {
initialize(argc, argv);
debug::setDebugLevel(dblWarning);
const UInt spatial_dimension = 2;
const UInt max_steps = 1000;
const ElementType type = _quadrangle_8;
Mesh mesh(spatial_dimension);
- MeshIOMSH mesh_io;
- mesh_io.read("quadrangle.msh", mesh);
+ mesh.read("quadrangle.msh");
SolidMechanicsModelCohesive model(mesh);
/// model initialization
- model.initExtrinsic("material.dat");
+ model.initFull("material.dat", _explicit_dynamic, _extrinsic);
Real time_step = model.getStableTimeStep()*0.05;
model.setTimeStep(time_step);
// std::cout << "Time step: " << time_step << std::endl;
model.assembleMassLumped();
/* ------------------------------------------------------------------------ */
/* Facet part */
/* ------------------------------------------------------------------------ */
// std::cout << mesh << std::endl;
const Mesh & mesh_facets = model.getMeshFacets();
- const ElementType type_facet = mesh.getFacetElementType(type);
+ const ElementType type_facet = mesh.getFacetType(type);
UInt nb_facet = mesh_facets.getNbElement(type_facet);
const Vector<Real> & position = mesh.getNodes();
// const Vector<UInt> & connectivity = mesh_facets.getConnectivity(type_facet);
Vector<Real> & sigma_lim = model.getSigmaLimit();
Vector<bool> & facet_check = model.getFacetsCheck();
Real * bary_facet = new Real[spatial_dimension];
for (UInt f = 0; f < nb_facet; ++f) {
mesh_facets.getBarycenter(f, type_facet, bary_facet);
if (bary_facet[1] < 0.05 && bary_facet[1] > -0.05) {
sigma_lim(f) = 100;
facet_check(f) = true;
std::cout << f << std::endl;
}
else {
sigma_lim(f) = 1e10;
facet_check(f) = false;
}
}
delete[] bary_facet;
// std::cout << mesh << std::endl;
/* ------------------------------------------------------------------------ */
/* End of facet part */
/* ------------------------------------------------------------------------ */
Vector<Real> & velocity = model.getVelocity();
Vector<bool> & boundary = model.getBoundary();
Vector<Real> & displacement = model.getDisplacement();
// const Vector<Real> & residual = model.getResidual();
UInt nb_nodes = mesh.getNbNodes();
/// boundary conditions
for (UInt n = 0; n < nb_nodes; ++n) {
if (position(n, 1) > 0.99 || position(n, 1) < -0.99)
boundary(n, 1) = true;
if (position(n, 0) > 0.99 || position(n, 0) < -0.99)
boundary(n, 0) = true;
}
model.updateResidual();
// iohelper::ElemType paraview_type = iohelper::QUAD2;
// UInt nb_element = mesh.getNbElement(type);
// /// initialize the paraview output
// iohelper::DumperParaview dumper;
// dumper.SetMode(iohelper::TEXT);
// dumper.SetPoints(mesh.getNodes().values,
// spatial_dimension, mesh.getNbNodes(), "explicit");
// dumper.SetConnectivity((int *)mesh.getConnectivity(type).values,
// paraview_type, nb_element, iohelper::C_MODE);
// dumper.AddNodeDataField(model.getDisplacement().values,
// spatial_dimension, "displacements");
// dumper.AddNodeDataField(model.getVelocity().values,
// spatial_dimension, "velocity");
// dumper.AddNodeDataField(model.getAcceleration().values,
// spatial_dimension, "acceleration");
// dumper.AddNodeDataField(model.getResidual().values,
// spatial_dimension, "forces");
// dumper.AddElemDataField(model.getMaterial(0).getStrain(type).values,
// spatial_dimension*spatial_dimension, "strain");
// dumper.AddElemDataField(model.getMaterial(0).getStress(type).values,
// spatial_dimension*spatial_dimension, "stress");
// dumper.SetEmbeddedValue("displacements", 1);
// dumper.SetEmbeddedValue("forces", 1);
// dumper.SetPrefix("paraview/");
// dumper.Init();
// dumper.Dump();
/// initial conditions
Real loading_rate = 0.2;
Real disp_update = loading_rate * time_step;
for (UInt n = 0; n < nb_nodes; ++n) {
velocity(n, 1) = loading_rate * position(n, 1);
}
// std::ofstream edis("edis.txt");
// std::ofstream erev("erev.txt");
// Vector<Real> & residual = model.getResidual();
// const Vector<Real> & stress = model.getMaterial(0).getStress(type);
/// Main loop
for (UInt s = 1; s <= max_steps; ++s) {
/// update displacement on extreme nodes
for (UInt n = 0; n < nb_nodes; ++n) {
if (position(n, 1) > 0.99 || position(n, 1) < -0.99)
displacement(n, 1) += disp_update * position(n, 1);
}
model.checkCohesiveStress();
model.explicitPred();
model.updateResidual();
model.updateAcceleration();
model.explicitCorr();
if(s % 1 == 0) {
// dumper.SetPoints(mesh.getNodes().values,
// spatial_dimension, mesh.getNbNodes(), "explicit");
// dumper.SetConnectivity((int *)mesh.getConnectivity(type).values,
// paraview_type, nb_element, iohelper::C_MODE);
// dumper.AddNodeDataField(model.getDisplacement().values,
// spatial_dimension, "displacements");
// dumper.AddNodeDataField(model.getVelocity().values,
// spatial_dimension, "velocity");
// dumper.AddNodeDataField(model.getAcceleration().values,
// spatial_dimension, "acceleration");
// dumper.AddNodeDataField(model.getResidual().values,
// spatial_dimension, "forces");
// dumper.AddElemDataField(model.getMaterial(0).getStrain(type).values,
// spatial_dimension*spatial_dimension, "strain");
// dumper.AddElemDataField(model.getMaterial(0).getStress(type).values,
// spatial_dimension*spatial_dimension, "stress");
// dumper.SetEmbeddedValue("displacements", 1);
// dumper.SetEmbeddedValue("forces", 1);
// dumper.SetPrefix("paraview/");
// dumper.Init();
// dumper.Dump();
std::cout << "passing step " << s << "/" << max_steps << std::endl;
}
// Real Ed = dynamic_cast<MaterialCohesive&> (model.getMaterial(1)).getDissipatedEnergy();
// Real Er = dynamic_cast<MaterialCohesive&> (model.getMaterial(1)).getReversibleEnergy();
// edis << s << " "
// << Ed << std::endl;
// erev << s << " "
// << Er << std::endl;
}
// edis.close();
// erev.close();
+ mesh.write("mesh_final.msh");
+
Real Ed = model.getEnergy("dissipated");
Real Edt = 200;
std::cout << Ed << " " << Edt << std::endl;
if (Ed < Edt * 0.99 || Ed > Edt * 1.01) {
std::cout << "The dissipated energy is incorrect" << std::endl;
return EXIT_FAILURE;
}
finalize();
std::cout << "OK: test_cohesive_extrinsic_quadrangle was passed!" << std::endl;
return EXIT_SUCCESS;
}
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/triangle.geo b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/triangle.geo
new file mode 100644
index 000000000..cbe3dd7a7
--- /dev/null
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_extrinsic/triangle.geo
@@ -0,0 +1,15 @@
+h = 1.;
+
+Point(1) = { 1, 1, 0, h};
+Point(2) = {-1, 1, 0, h};
+Point(3) = {-1,-1, 0, h};
+Point(4) = { 1,-1, 0, h};
+Line(1) = {1, 2};
+Line(2) = {2, 3};
+Line(3) = {3, 4};
+Line(4) = {4, 1};
+Line Loop(5) = {1, 2, 3, 4};
+Plane Surface(6) = {5};
+Physical Surface(7) = {6};
+
+Transfinite Line {1, 2, 3, 4} = 3;
\ No newline at end of file
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/CMakeLists.txt b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/CMakeLists.txt
index 3d9576399..713880daa 100644
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/CMakeLists.txt
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/CMakeLists.txt
@@ -1,51 +1,44 @@
#===============================================================================
# @file CMakeLists.txt
#
# @author Marco Vocialta <marco.vocialta@epfl.ch>
#
# @date Tue May 08 13:01:18 2012
#
# @brief test for intrinsic cohesive element configuration
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
# @section DESCRIPTION
#
#===============================================================================
+add_mesh(test_cohesive_intrinsic_mesh triangle.geo 2 2)
+add_mesh(test_cohesive_intrinsic_quadrangle_mesh quadrangle.geo 2 2)
-register_test(test_cohesive_intrinsic test_cohesive_intrinsic.cc)
-register_test(test_cohesive_intrinsic_quadrangle test_cohesive_intrinsic_quadrangle.cc)
+register_test(test_cohesive_intrinsic
+ SOURCES test_cohesive_intrinsic.cc
+ DEPENDENCIES test_cohesive_intrinsic_mesh
+ PACKAGE cohesive_element
+ FILES_TO_COPY material.dat
+ DIRECTORIES_TO_CREATE paraview)
-#===============================================================================
-configure_file(
- ${CMAKE_CURRENT_SOURCE_DIR}/material.dat
- ${CMAKE_CURRENT_BINARY_DIR}/material.dat
- COPYONLY
- )
-configure_file(
- ${CMAKE_CURRENT_SOURCE_DIR}/mesh.msh
- ${CMAKE_CURRENT_BINARY_DIR}/mesh.msh
- COPYONLY
- )
-configure_file(
- ${CMAKE_CURRENT_SOURCE_DIR}/quadrangle.msh
- ${CMAKE_CURRENT_BINARY_DIR}/quadrangle.msh
- COPYONLY
- )
-file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/paraview)
+register_test(test_cohesive_intrinsic_quadrangle
+ SOURCES test_cohesive_intrinsic_quadrangle.cc
+ DEPENDENCIES test_cohesive_intrinsic_quadrangle_mesh
+ PACKAGE cohesive_element)
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/mesh.msh b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/mesh.msh
deleted file mode 100644
index 2f027b42b..000000000
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/mesh.msh
+++ /dev/null
@@ -1,66 +0,0 @@
-$MeshFormat
-2.2 0 8
-$EndMeshFormat
-$Nodes
-41
-1 1 1 0
-2 -1 1 0
-3 -1 -1 0
-4 1 -1 0
-5 2.081668171172169e-12 1 0
-6 0.5000000000009475 1 0
-7 -0.4999999999989593 1 0
-8 -1 2.081668171172169e-12 0
-9 -1 0.5000000000009475 0
-10 -1 -0.4999999999989593 0
-11 -2.081668171172169e-12 -1 0
-12 -0.5000000000009475 -1 0
-13 0.4999999999989593 -1 0
-14 1 -2.081668171172169e-12 0
-15 1 -0.5000000000009475 0
-16 1 0.4999999999989593 0
-17 -2.890743200367751e-14 2.892130979148533e-14 0
-18 0.4999999999993061 -0.500000000000694 0
-19 0.500000000000694 0.4999999999993061 0
-20 -0.4999999999993061 0.500000000000694 0
-21 -0.5000000000006987 -0.4999999999993013 0
-22 0.7499999999996531 -0.7500000000003471 0
-23 0.2499999999986122 -0.7500000000003471 0
-24 0.7500000000003471 0.7499999999996531 0
-25 0.7500000000003471 0.2499999999986122 0
-26 -0.7499999999996531 0.7500000000003471 0
-27 -0.2499999999986122 0.7500000000003471 0
-28 -0.7500000000003493 -0.7499999999996506 0
-29 -0.7500000000003493 -0.2499999999986098 0
-30 1.026380369584245e-12 0.5000000000000144 0
-31 0.2500000000003325 0.2499999999996675 0
-32 0.2500000000013878 0.7499999999996531 0
-33 -0.5000000000000144 1.055294740481827e-12 0
-34 -0.2499999999996675 0.2500000000003614 0
-35 -0.7499999999996531 0.2500000000013878 0
-36 0.2499999999996386 -0.2500000000003325 0
-37 -1.055287801587923e-12 -0.4999999999999855 0
-38 0.4999999999999856 -1.026373430690342e-12 0
-39 0.7499999999996531 -0.2500000000013878 0
-40 -0.2500000000003638 -0.2499999999996362 0
-41 -0.2500000000013902 -0.7499999999996507 0
-$EndNodes
-$Elements
-16
-1 9 2 7 6 4 18 11 22 23 13
-2 9 2 7 6 1 19 14 24 25 16
-3 9 2 7 6 5 2 20 7 26 27
-4 9 2 7 6 3 21 8 28 29 10
-5 9 2 7 6 5 17 19 30 31 32
-6 9 2 7 6 8 17 20 33 34 35
-7 9 2 7 6 11 18 17 23 36 37
-8 9 2 7 6 14 17 18 38 36 39
-9 9 2 7 6 14 19 17 25 31 38
-10 9 2 7 6 5 20 17 27 34 30
-11 9 2 7 6 8 21 17 29 40 33
-12 9 2 7 6 11 17 21 37 40 41
-13 9 2 7 6 4 14 18 15 39 22
-14 9 2 7 6 2 8 20 9 35 26
-15 9 2 7 6 5 19 1 32 24 6
-16 9 2 7 6 3 11 21 12 41 28
-$EndElements
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/quadrangle.geo b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/quadrangle.geo
new file mode 100644
index 000000000..b9b37bb8a
--- /dev/null
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/quadrangle.geo
@@ -0,0 +1,18 @@
+h = 1.;
+
+Point(1) = { 1, 1, 0, h};
+Point(2) = {-1, 1, 0, h};
+Point(3) = {-1,-1, 0, h};
+Point(4) = { 1,-1, 0, h};
+Line(1) = {1, 2};
+Line(2) = {2, 3};
+Line(3) = {3, 4};
+Line(4) = {4, 1};
+Line Loop(5) = {1, 2, 3, 4};
+Plane Surface(6) = {5};
+Physical Surface(7) = {6};
+
+Transfinite Line {1, 2, 3, 4} = 3;
+Transfinite Surface "*";
+Recombine Surface "*";
+Mesh.SecondOrderIncomplete = 1;
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/quadrangle.msh b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/quadrangle.msh
deleted file mode 100644
index 62ab1799a..000000000
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/quadrangle.msh
+++ /dev/null
@@ -1,34 +0,0 @@
-$MeshFormat
-2.2 0 8
-$EndMeshFormat
-$Nodes
-21
-1 -1 1 0
-2 1 1 0
-3 1 -1 0
-4 -1 -1 0
-5 1 -2.081668171172169e-12 0
-6 1 -0.5000000000009475 0
-7 1 0.4999999999989593 0
-8 2.081668171172169e-12 1 0
-9 0.5000000000009475 1 0
-10 -0.4999999999989593 1 0
-11 -1 2.081668171172169e-12 0
-12 -1 0.5000000000009475 0
-13 -1 -0.4999999999989593 0
-14 -2.081668171172169e-12 -1 0
-15 -0.5000000000009475 -1 0
-16 0.4999999999989593 -1 0
-17 0 -4.33300469310004e-24 0
-18 0.5 -1.040834085588251e-12 0
-19 -1.040834085586084e-12 -0.5 0
-20 -0.5 1.040834085583918e-12 0
-21 1.040834085586084e-12 0.5 0
-$EndNodes
-$Elements
-4
-1 16 2 7 6 3 5 17 14 6 18 19 16
-2 16 2 7 6 14 17 11 4 19 20 13 15
-3 16 2 7 6 5 2 8 17 7 9 21 18
-4 16 2 7 6 17 8 1 11 21 10 12 20
-$EndElements
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/test_cohesive_intrinsic.cc b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/test_cohesive_intrinsic.cc
index ab7792cca..a0dfda462 100644
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/test_cohesive_intrinsic.cc
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/test_cohesive_intrinsic.cc
@@ -1,250 +1,251 @@
/**
* @file test_cohesive_intrinsic.cc
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Tue May 08 13:01:18 2012
*
* @brief Test for cohesive elements
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <limits>
#include <fstream>
#include <iostream>
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh.hh"
#include "mesh_utils.hh"
#include "solid_mechanics_model_cohesive.hh"
#include "material.hh"
//#include "io_helper.hh"
/* -------------------------------------------------------------------------- */
using namespace akantu;
static void updateDisplacement(SolidMechanicsModelCohesive &,
Vector<UInt> &,
ElementType,
Real);
int main(int argc, char *argv[]) {
initialize(argc, argv);
- debug::setDebugLevel(dblDump);
+ // debug::setDebugLevel(dblDump);
const UInt spatial_dimension = 2;
const UInt max_steps = 350;
const ElementType type = _triangle_6;
Mesh mesh(spatial_dimension);
- mesh.read("mesh.msh");
+ mesh.read("triangle.msh");
/* ------------------------------------------------------------------------ */
/* Facet part */
/* ------------------------------------------------------------------------ */
std::cout << mesh << std::endl;
Mesh mesh_facets(spatial_dimension, mesh.getNodes(), "mesh_facets");
MeshUtils::buildAllFacets(mesh, mesh_facets);
std::cout << mesh_facets << std::endl;
- const ElementType type_facet = Mesh::getFacetElementType(type);
+ const ElementType type_facet = Mesh::getFacetType(type);
+
UInt nb_facet = mesh_facets.getNbElement(type_facet);
// const Vector<Real> & position = mesh.getNodes();
// Vector<Real> & displacement = model.getDisplacement();
// const Vector<UInt> & connectivity = mesh_facets.getConnectivity(type_facet);
Vector<UInt> facet_insertion;
Real * bary_facet = new Real[spatial_dimension];
for (UInt f = 0; f < nb_facet; ++f) {
mesh_facets.getBarycenter(f, type_facet, bary_facet);
if (bary_facet[0] > -0.26 && bary_facet[0] < -0.24) facet_insertion.push_back(f);
}
delete[] bary_facet;
MeshUtils::insertIntrinsicCohesiveElements(mesh,
mesh_facets,
type_facet,
facet_insertion);
- // mesh_io.write("mesh_cohesive.msh", mesh);
+ mesh.write("mesh_cohesive.msh");
// std::cout << mesh << std::endl;
/* ------------------------------------------------------------------------ */
/* End of facet part */
/* ------------------------------------------------------------------------ */
SolidMechanicsModelCohesive model(mesh);
/// model initialization
- model.initIntrinsic("material.dat");
+ model.initFull("material.dat");
Real time_step = model.getStableTimeStep()*0.8;
model.setTimeStep(time_step);
// std::cout << "Time step: " << time_step << std::endl;
model.assembleMassLumped();
Vector<bool> & boundary = model.getBoundary();
// const Vector<Real> & residual = model.getResidual();
UInt nb_nodes = mesh.getNbNodes();
UInt nb_element = mesh.getNbElement(type);
/// boundary conditions
for (UInt dim = 0; dim < spatial_dimension; ++dim) {
for (UInt n = 0; n < nb_nodes; ++n) {
boundary(n, dim) = true;
}
}
model.updateResidual();
model.setBaseName("intrinsic");
model.addDumpFieldVector("displacement");
model.addDumpField("velocity" );
model.addDumpField("acceleration");
model.addDumpField("residual" );
model.addDumpField("stress");
model.addDumpField("strain");
model.addDumpField("force");
model.dump();
/// update displacement
Vector<UInt> elements;
Real * bary = new Real[spatial_dimension];
for (UInt el = 0; el < nb_element; ++el) {
mesh.getBarycenter(el, type, bary);
if (bary[0] > -0.25) elements.push_back(el);
}
delete[] bary;
Real increment = 0.01;
updateDisplacement(model, elements, type, increment);
// for (UInt n = 0; n < nb_nodes; ++n) {
// if (position(n, 1) + displacement(n, 1) > 0) {
// if (position(n, 0) == 0) {
// displacement(n, 1) -= 0.25;
// }
// if (position(n, 0) == 1) {
// displacement(n, 1) += 0.25;
// }
// }
// }
// std::ofstream edis("edis.txt");
// std::ofstream erev("erev.txt");
/// Main loop
for (UInt s = 1; s <= max_steps; ++s) {
model.explicitPred();
model.updateResidual();
model.updateAcceleration();
model.explicitCorr();
updateDisplacement(model, elements, type, increment);
if(s % 1 == 0) {
model.dump();
std::cout << "passing step " << s << "/" << max_steps << std::endl;
}
// // update displacement
// for (UInt n = 0; n < nb_nodes; ++n) {
// if (position(n, 1) + displacement(n, 1) > 0) {
// displacement(n, 0) -= 0.01;
// }
// }
// Real Ed = dynamic_cast<MaterialCohesive&> (model.getMaterial(1)).getDissipatedEnergy();
// Real Er = dynamic_cast<MaterialCohesive&> (model.getMaterial(1)).getReversibleEnergy();
// edis << s << " "
// << Ed << std::endl;
// erev << s << " "
// << Er << std::endl;
}
// edis.close();
// erev.close();
Real Ed = model.getEnergy("dissipated");
Real Edt = 2 * sqrt(2);
std::cout << Ed << " " << Edt << std::endl;
if (Ed < Edt * 0.999 || Ed > Edt * 1.001 || std::isnan(Ed)) {
std::cout << "The dissipated energy is incorrect" << std::endl;
return EXIT_FAILURE;
}
finalize();
std::cout << "OK: test_cohesive_intrinsic was passed!" << std::endl;
return EXIT_SUCCESS;
}
static void updateDisplacement(SolidMechanicsModelCohesive & model,
Vector<UInt> & elements,
ElementType type,
Real increment) {
Mesh & mesh = model.getFEM().getMesh();
UInt nb_element = elements.getSize();
UInt nb_nodes = mesh.getNbNodes();
UInt nb_nodes_per_element = mesh.getNbNodesPerElement(type);
const Vector<UInt> & connectivity = mesh.getConnectivity(type);
Vector<Real> & displacement = model.getDisplacement();
Vector<bool> update(nb_nodes);
update.clear();
for (UInt el = 0; el < nb_element; ++el) {
for (UInt n = 0; n < nb_nodes_per_element; ++n) {
UInt node = connectivity(elements(el), n);
if (!update(node)) {
displacement(node, 0) += increment;
// displacement(node, 1) += increment;
update(node) = true;
}
}
}
}
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/test_cohesive_intrinsic_quadrangle.cc b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/test_cohesive_intrinsic_quadrangle.cc
index 881d14d3c..ee9211eae 100644
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/test_cohesive_intrinsic_quadrangle.cc
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/test_cohesive_intrinsic_quadrangle.cc
@@ -1,267 +1,250 @@
/**
* @file test_cohesive_intrinsic_quadrangle.cc
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Wed Oct 03 10:20:53 2012
*
* @brief Intrinsic cohesive elements' test for quadrangles
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
#include <limits>
#include <fstream>
#include <iostream>
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh.hh"
#include "mesh_utils.hh"
#include "solid_mechanics_model_cohesive.hh"
#include "material.hh"
#include "io_helper.hh"
/* -------------------------------------------------------------------------- */
using namespace akantu;
static void updateDisplacement(SolidMechanicsModelCohesive &,
Vector<UInt> &,
ElementType,
Real);
int main(int argc, char *argv[]) {
initialize(argc, argv);
- // debug::setDebugLevel(dblDump);
-
const UInt spatial_dimension = 2;
const UInt max_steps = 350;
const ElementType type = _quadrangle_8;
Mesh mesh(spatial_dimension);
mesh.read("quadrangle.msh");
/* ------------------------------------------------------------------------ */
/* Facet part */
/* ------------------------------------------------------------------------ */
- std::cout << mesh << std::endl;
-
Mesh mesh_facets(spatial_dimension, mesh.getNodes(), "mesh_facets");
MeshUtils::buildAllFacets(mesh, mesh_facets);
+ debug::setDebugLevel(dblDump);
+ std::cout << mesh << std::endl;
std::cout << mesh_facets << std::endl;
+ debug::setDebugLevel(dblWarning);
+
+ const ElementType type_facet = Mesh::getFacetType(type);
- const ElementType type_facet = Mesh::getFacetElementType(type);
UInt nb_facet = mesh_facets.getNbElement(type_facet);
// const Vector<Real> & position = mesh.getNodes();
// Vector<Real> & displacement = model.getDisplacement();
// const Vector<UInt> & connectivity = mesh_facets.getConnectivity(type_facet);
Vector<UInt> facet_insertion;
Real * bary_facet = new Real[spatial_dimension];
for (UInt f = 0; f < nb_facet; ++f) {
mesh_facets.getBarycenter(f, type_facet, bary_facet);
if (bary_facet[0] > -0.01 && bary_facet[0] < 0.01) facet_insertion.push_back(f);
}
delete[] bary_facet;
MeshUtils::insertIntrinsicCohesiveElements(mesh,
mesh_facets,
type_facet,
facet_insertion);
- // mesh_io.write("mesh_cohesive.msh", mesh);
+ mesh.write("mesh_cohesive.msh");
// std::cout << mesh << std::endl;
/* ------------------------------------------------------------------------ */
/* End of facet part */
/* ------------------------------------------------------------------------ */
SolidMechanicsModelCohesive model(mesh);
/// model initialization
- model.initIntrinsic("material.dat");
+ model.initFull("material.dat");
Real time_step = model.getStableTimeStep()*0.8;
model.setTimeStep(time_step);
// std::cout << "Time step: " << time_step << std::endl;
model.assembleMassLumped();
Vector<bool> & boundary = model.getBoundary();
// const Vector<Real> & residual = model.getResidual();
UInt nb_nodes = mesh.getNbNodes();
UInt nb_element = mesh.getNbElement(type);
/// boundary conditions
for (UInt dim = 0; dim < spatial_dimension; ++dim) {
for (UInt n = 0; n < nb_nodes; ++n) {
boundary(n, dim) = true;
}
}
model.updateResidual();
- // iohelper::ElemType paraview_type = iohelper::QUAD2;
-
- // /// initialize the paraview output
- // iohelper::DumperParaview dumper;
- // dumper.SetPoints(model.getFEM().getMesh().getNodes().values,
- // spatial_dimension, nb_nodes, "explicit");
- // dumper.SetConnectivity((int *)model.getFEM().getMesh().getConnectivity(type).values,
- // paraview_type, nb_element, iohelper::C_MODE);
- // dumper.AddNodeDataField(model.getDisplacement().values,
- // spatial_dimension, "displacements");
- // dumper.AddNodeDataField(model.getVelocity().values,
- // spatial_dimension, "velocity");
- // dumper.AddNodeDataField(model.getAcceleration().values,
- // spatial_dimension, "acceleration");
- // dumper.AddNodeDataField(model.getResidual().values,
- // spatial_dimension, "forces");
- // dumper.AddElemDataField(model.getMaterial(0).getStrain(type).values,
- // spatial_dimension*spatial_dimension, "strain");
- // dumper.AddElemDataField(model.getMaterial(0).getStress(type).values,
- // spatial_dimension*spatial_dimension, "stress");
- // dumper.SetEmbeddedValue("displacements", 1);
- // dumper.SetEmbeddedValue("forces", 1);
- // dumper.SetPrefix("paraview/");
- // dumper.Init();
- // dumper.Dump();
-
+ model.setBaseName("intrinsic_quadrangle");
+ model.addDumpFieldVector("displacement");
+ model.addDumpField("velocity" );
+ model.addDumpField("acceleration");
+ model.addDumpField("residual" );
+ model.addDumpField("stress");
+ model.addDumpField("strain");
+ model.addDumpField("force");
+ model.dump();
/// update displacement
Vector<UInt> elements;
Real * bary = new Real[spatial_dimension];
for (UInt el = 0; el < nb_element; ++el) {
mesh.getBarycenter(el, type, bary);
if (bary[0] > 0.) elements.push_back(el);
}
delete[] bary;
Real increment = 0.01;
updateDisplacement(model, elements, type, increment);
// for (UInt n = 0; n < nb_nodes; ++n) {
// if (position(n, 1) + displacement(n, 1) > 0) {
// if (position(n, 0) == 0) {
// displacement(n, 1) -= 0.25;
// }
// if (position(n, 0) == 1) {
// displacement(n, 1) += 0.25;
// }
// }
// }
// std::ofstream edis("edis.txt");
// std::ofstream erev("erev.txt");
/// Main loop
for (UInt s = 1; s <= max_steps; ++s) {
model.explicitPred();
model.updateResidual();
model.updateAcceleration();
model.explicitCorr();
updateDisplacement(model, elements, type, increment);
if(s % 1 == 0) {
- // dumper.Dump();
+ model.dump();
std::cout << "passing step " << s << "/" << max_steps << std::endl;
}
// // update displacement
// for (UInt n = 0; n < nb_nodes; ++n) {
// if (position(n, 1) + displacement(n, 1) > 0) {
// displacement(n, 0) -= 0.01;
// }
// }
// Real Ed = dynamic_cast<MaterialCohesive&> (model.getMaterial(1)).getDissipatedEnergy();
// Real Er = dynamic_cast<MaterialCohesive&> (model.getMaterial(1)).getReversibleEnergy();
// edis << s << " "
// << Ed << std::endl;
// erev << s << " "
// << Er << std::endl;
}
// edis.close();
// erev.close();
Real Ed = model.getEnergy("dissipated");
Real Edt = 2;
std::cout << Ed << " " << Edt << std::endl;
if (Ed < Edt * 0.999 || Ed > Edt * 1.001) {
std::cout << "The dissipated energy is incorrect" << std::endl;
return EXIT_FAILURE;
}
finalize();
std::cout << "OK: test_cohesive_intrinsic_quadrangle was passed!" << std::endl;
return EXIT_SUCCESS;
}
static void updateDisplacement(SolidMechanicsModelCohesive & model,
Vector<UInt> & elements,
ElementType type,
Real increment) {
Mesh & mesh = model.getFEM().getMesh();
UInt nb_element = elements.getSize();
UInt nb_nodes = mesh.getNbNodes();
UInt nb_nodes_per_element = mesh.getNbNodesPerElement(type);
const Vector<UInt> & connectivity = mesh.getConnectivity(type);
Vector<Real> & displacement = model.getDisplacement();
Vector<bool> update(nb_nodes);
update.clear();
for (UInt el = 0; el < nb_element; ++el) {
for (UInt n = 0; n < nb_nodes_per_element; ++n) {
UInt node = connectivity(elements(el), n);
if (!update(node)) {
displacement(node, 0) += increment;
// displacement(node, 1) += increment;
update(node) = true;
}
}
}
}
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/triangle.geo b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/triangle.geo
new file mode 100644
index 000000000..cbe3dd7a7
--- /dev/null
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic/triangle.geo
@@ -0,0 +1,15 @@
+h = 1.;
+
+Point(1) = { 1, 1, 0, h};
+Point(2) = {-1, 1, 0, h};
+Point(3) = {-1,-1, 0, h};
+Point(4) = { 1,-1, 0, h};
+Line(1) = {1, 2};
+Line(2) = {2, 3};
+Line(3) = {3, 4};
+Line(4) = {4, 1};
+Line Loop(5) = {1, 2, 3, 4};
+Plane Surface(6) = {5};
+Physical Surface(7) = {6};
+
+Transfinite Line {1, 2, 3, 4} = 3;
\ No newline at end of file
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/CMakeLists.txt b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/CMakeLists.txt
index f4e373b5f..a38012cf5 100644
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/CMakeLists.txt
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/CMakeLists.txt
@@ -1,46 +1,40 @@
#===============================================================================
# @file CMakeLists.txt
#
-# @author Seyedeh Mohadeseh Taheri Mousavi <mohadeseh.taherimousavi@epfl.ch>
# @author Marco Vocialta <marco.vocialta@epfl.ch>
+# @author Seyedeh Mohadeseh Taheri Mousavi <mohadeseh.taherimousavi@epfl.ch>
#
# @date Mon Jul 09 14:13:56 2012
#
# @brief configuration for intrinsic implicit cohesive elements
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
# @section DESCRIPTION
#
#===============================================================================
-register_test(test_cohesive_intrinsic_impl test_cohesive_intrinsic_impl.cc)
-
-#===============================================================================
-configure_file(
- ${CMAKE_CURRENT_SOURCE_DIR}/material.dat
- ${CMAKE_CURRENT_BINARY_DIR}/material.dat
- COPYONLY
- )
-
+add_mesh(test_cohesive_intrinsic_impl_mesh implicit.geo 2 2)
-file(COPY material.dat DESTINATION .)
-file(COPY simple.msh DESTINATION .)
-file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/paraview)
-file(COPY simple.msh DESTINATION .)
\ No newline at end of file
+register_test(test_cohesive_intrinsic_impl
+ SOURCES test_cohesive_intrinsic_impl.cc
+ DEPENDENCIES test_cohesive_intrinsic_impl_mesh
+ PACKAGE cohesive_element
+ FILES_TO_COPY material.dat
+ DIRECTORIES_TO_CREATE paraview)
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/implicit.geo b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/implicit.geo
new file mode 100644
index 000000000..c5a938295
--- /dev/null
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/implicit.geo
@@ -0,0 +1,19 @@
+h = 1.;
+
+Point(1) = {0., 0., 0., h};
+Point(2) = {1., 0., 0., h};
+Point(3) = {1., 2., 0., h};
+Point(4) = {0., 2., 0., h};
+
+Line(1) = {1, 2};
+Line(2) = {2, 3};
+Line(3) = {3, 4};
+Line(4) = {4, 1};
+
+Line Loop(5) = {1, 2, 3, 4};
+Plane Surface(6) = {5};
+Physical Surface(7) = {6};
+
+Transfinite Line {1, 3} = 2;
+Transfinite Line {2, 4} = 3;
+Transfinite Surface "*" Right;
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/material.dat b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/material.dat
index 07a3370ff..d5503f4cb 100644
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/material.dat
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/material.dat
@@ -1,15 +1,12 @@
material elastic [
name = steel
rho = 1 # density
E = 6 # young's modulus
nu = 0.0 # poisson's ratio
]
+
material cohesive_exponential [
name = cohesive
sigma_c = 1
- G_cI = 0.25
- G_cII = 0.25
+ delta_c = 0.5
]
-
-
-
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/simple.msh b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/simple.msh
deleted file mode 100644
index 12e6dc843..000000000
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/simple.msh
+++ /dev/null
@@ -1,27 +0,0 @@
-$MeshFormat
-2.1 0 8
-$EndMeshFormat
-$Nodes
-15
-1 0 0 0
-2 0.5 0 0
-3 1 0 0
-4 0 0.5 0
-5 0.5 0.5 0
-6 1 0.5 0
-7 0 1 0
-8 0.5 1 0
-9 1 1 0
-10 0 1.5 0
-11 0.5 1.5 0
-12 1 1.5 0
-13 0 2 0
-14 0.5 2 0
-15 1 2 0
-$EndNodes
-$Elements
-4
-1 9 3 11 10 0 1 3 9 2 6 5
-2 9 3 11 10 0 1 9 7 5 8 4
-3 9 3 11 10 0 7 9 15 8 12 11
-4 9 3 11 10 0 7 15 13 11 14 10
\ No newline at end of file
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/test_cohesive_intrinsic_impl.cc b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/test_cohesive_intrinsic_impl.cc
index 14cbfbca7..8fdafd8d6 100644
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/test_cohesive_intrinsic_impl.cc
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_intrinsic_impl/test_cohesive_intrinsic_impl.cc
@@ -1,183 +1,195 @@
/**
* @file test_cohesive_intrinsic_impl.cc
*
* @author Seyedeh Mohadeseh Taheri Mousavi <mohadeseh.taherimousavi@epfl.ch>
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Mon Jul 09 14:13:56 2012
*
* @brief Test for cohesive elements
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <limits>
#include <fstream>
#include <iostream>
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io_msh.hh"
#include "mesh_utils.hh"
#include "solid_mechanics_model_cohesive.hh"
#include "material.hh"
/* -------------------------------------------------------------------------- */
using namespace akantu;
int main(int argc, char *argv[]) {
initialize(argc, argv);
debug::setDebugLevel(dblError);
const UInt spatial_dimension = 2;
const ElementType type = _triangle_6;
Mesh mesh(spatial_dimension);
- MeshIOMSH mesh_io;
- mesh_io.read("simple.msh", mesh);
+ mesh.read("implicit.msh");
- SolidMechanicsModelCohesive model(mesh);
-
- /// model initialization
- model.initFull("material.dat", _static);
-
- const Mesh & mesh_facets = model.getMeshFacets();
+ Mesh mesh_facets(spatial_dimension, mesh.getNodes(), "mesh_facets");
+ MeshUtils::buildAllFacets(mesh, mesh_facets);
- const ElementType type_facet = mesh.getFacetElementType(type);
+ const ElementType type_facet = mesh.getFacetType(type);
UInt nb_facet = mesh_facets.getNbElement(type_facet);
Vector<UInt> facet_insertion;
Real * bary_facet = new Real[spatial_dimension];
for (UInt f = 0; f < nb_facet; ++f) {
mesh_facets.getBarycenter(f, type_facet, bary_facet);
- if (bary_facet[1] == 1){
+ if (bary_facet[1] < 1.1 && bary_facet[1] > .9){
facet_insertion.push_back(f);}
}
delete[] bary_facet;
- model.insertCohesiveElements(facet_insertion);
+ MeshUtils::insertIntrinsicCohesiveElements(mesh,
+ mesh_facets,
+ type_facet,
+ facet_insertion);
+
+ // mesh.write("implicit_cohesive.msh");
+
+ SolidMechanicsModelCohesive model(mesh);
+
+ /// model initialization
+ model.initFull("material.dat", _static);
/// boundary conditions
Vector<bool> & boundary = model.getBoundary();
UInt nb_nodes = mesh.getNbNodes();
- Vector<Real> &position = const_cast <Vector<Real>&> (mesh.getNodes());
+ Vector<Real> & position = mesh.getNodes();
Vector<Real> & displacement = model.getDisplacement();
-
for (UInt n = 0; n < nb_nodes; ++n) {
if (std::abs(position(n,1))< Math::getTolerance()){
boundary(n, 1) = true;
displacement(n,1) = 0.0;
}
if ((std::abs(position(n,0))< Math::getTolerance())&& (position(n,1)< 1.1)){
boundary(n, 0) = true;
displacement(n,0) = 0.0;
}
if ((std::abs(position(n,0)-1)< Math::getTolerance())&&(std::abs(position(n,1)-1)< Math::getTolerance())){
boundary(n, 0) = true;
displacement(n,0) = 0.0;
}
if (std::abs(position(n,1)-2)< Math::getTolerance()){
boundary(n, 1) = true;
}
}
model.setBaseName("intrinsic_impl");
model.addDumpField("displacement");
model.addDumpField("mass" );
model.addDumpField("velocity" );
model.addDumpField("acceleration");
model.addDumpField("force" );
model.addDumpField("residual" );
- model.addDumpField("damage" );
+ // model.addDumpField("damage" );
model.addDumpField("stress" );
model.addDumpField("strain" );
model.dump();
const MaterialCohesive & mat_coh = dynamic_cast< const MaterialCohesive &> (model.getMaterial(1));
- const Vector<Real> & opening = mat_coh.getOpening(_cohesive_2d_6);
- //const Vector<Real> & traction = mat_coh.getTraction(_cohesive_2d_6);
+ ElementType type_cohesive = model.getCohesiveElementType();
+
+ const Vector<Real> & opening = mat_coh.getOpening(type_cohesive);
+ //const Vector<Real> & traction = mat_coh.getTraction(type_cohesive);
model.updateResidual();
const Vector<Real> & residual = model.getResidual();
UInt max_step = 1000;
Real increment = 3./max_step;
Real error_tol = 10e-6;
std::ofstream fout;
fout.open("output");
/// Main loop
for ( UInt nstep = 0; nstep < max_step; ++nstep){
Real norm = 10;
UInt count = 0;
for (UInt n = 0; n < nb_nodes; ++n) {
if (std::abs(position(n,1)-2)< Math::getTolerance()){
displacement(n,1) += increment;
}
}
do{
std::cout << "Iter : " << ++count << " - residual norm : " << norm << std::endl;
model.assembleStiffnessMatrix();
- if ((nstep == 0)&&(count == 1))
+ if ((nstep == 0)&&(count == 2)) {
model.getStiffnessMatrix().saveMatrix("stiffness_matrix.lastout");
-
+ std::cout << "Count: " << count << std::endl;
+ }
+
model.solveStatic();
model.updateResidual();
} while(!model.testConvergenceResidual(1e-5, norm) && (count < 100)) ;
std::cout << "Step : " << nstep << " - residual norm : " << norm << std::endl;
model.dump();
Real resid = 0;
for (UInt n = 0; n < nb_nodes; ++n) {
- if (std::abs(position(n,1)-2)< Math::getTolerance()){
- resid += residual.values[spatial_dimension* n + 1];
+ if (std::abs(position(n, 1) - 2.) < Math::getTolerance()){
+ resid += residual(n, 1);
}
}
- Real analytical = exp(1) * std::abs(opening.values[3]) * exp (-std::abs(opening.values[3])/0.5)/0.5;
+ Real analytical = exp(1) * std::abs(opening(0, 1)) * exp (-std::abs(opening(0, 1))/0.5)/0.5;
//the residual force is comparing with the theoretical value of the cohesive law
- error_tol = std::abs((- resid - analytical)/analytical);
+ error_tol = std::abs((std::abs(resid) - analytical)/analytical);
fout << nstep << " " << -resid << " " << analytical << " " << error_tol << std::endl;
- if (error_tol > 1e-4)
+ if (error_tol > 1e-3) {
+ std::cout << "Relative error: " << error_tol << std::endl;
+ std::cout << "Test failed!" << std::endl;
return EXIT_FAILURE;
+ }
}
fout.close();
- // finalize();
+ finalize();
+ std::cout << "Test passed!" << std::endl;
return EXIT_SUCCESS;
}
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel/mesh.msh b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel/mesh.msh
deleted file mode 100644
index 2f027b42b..000000000
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel/mesh.msh
+++ /dev/null
@@ -1,66 +0,0 @@
-$MeshFormat
-2.2 0 8
-$EndMeshFormat
-$Nodes
-41
-1 1 1 0
-2 -1 1 0
-3 -1 -1 0
-4 1 -1 0
-5 2.081668171172169e-12 1 0
-6 0.5000000000009475 1 0
-7 -0.4999999999989593 1 0
-8 -1 2.081668171172169e-12 0
-9 -1 0.5000000000009475 0
-10 -1 -0.4999999999989593 0
-11 -2.081668171172169e-12 -1 0
-12 -0.5000000000009475 -1 0
-13 0.4999999999989593 -1 0
-14 1 -2.081668171172169e-12 0
-15 1 -0.5000000000009475 0
-16 1 0.4999999999989593 0
-17 -2.890743200367751e-14 2.892130979148533e-14 0
-18 0.4999999999993061 -0.500000000000694 0
-19 0.500000000000694 0.4999999999993061 0
-20 -0.4999999999993061 0.500000000000694 0
-21 -0.5000000000006987 -0.4999999999993013 0
-22 0.7499999999996531 -0.7500000000003471 0
-23 0.2499999999986122 -0.7500000000003471 0
-24 0.7500000000003471 0.7499999999996531 0
-25 0.7500000000003471 0.2499999999986122 0
-26 -0.7499999999996531 0.7500000000003471 0
-27 -0.2499999999986122 0.7500000000003471 0
-28 -0.7500000000003493 -0.7499999999996506 0
-29 -0.7500000000003493 -0.2499999999986098 0
-30 1.026380369584245e-12 0.5000000000000144 0
-31 0.2500000000003325 0.2499999999996675 0
-32 0.2500000000013878 0.7499999999996531 0
-33 -0.5000000000000144 1.055294740481827e-12 0
-34 -0.2499999999996675 0.2500000000003614 0
-35 -0.7499999999996531 0.2500000000013878 0
-36 0.2499999999996386 -0.2500000000003325 0
-37 -1.055287801587923e-12 -0.4999999999999855 0
-38 0.4999999999999856 -1.026373430690342e-12 0
-39 0.7499999999996531 -0.2500000000013878 0
-40 -0.2500000000003638 -0.2499999999996362 0
-41 -0.2500000000013902 -0.7499999999996507 0
-$EndNodes
-$Elements
-16
-1 9 2 7 6 4 18 11 22 23 13
-2 9 2 7 6 1 19 14 24 25 16
-3 9 2 7 6 5 2 20 7 26 27
-4 9 2 7 6 3 21 8 28 29 10
-5 9 2 7 6 5 17 19 30 31 32
-6 9 2 7 6 8 17 20 33 34 35
-7 9 2 7 6 11 18 17 23 36 37
-8 9 2 7 6 14 17 18 38 36 39
-9 9 2 7 6 14 19 17 25 31 38
-10 9 2 7 6 5 20 17 27 34 30
-11 9 2 7 6 8 21 17 29 40 33
-12 9 2 7 6 11 17 21 37 40 41
-13 9 2 7 6 4 14 18 15 39 22
-14 9 2 7 6 2 8 20 9 35 26
-15 9 2 7 6 5 19 1 32 24 6
-16 9 2 7 6 3 11 21 12 41 28
-$EndElements
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel/CMakeLists.txt b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel_intrinsic/CMakeLists.txt
similarity index 79%
rename from test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel/CMakeLists.txt
rename to test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel_intrinsic/CMakeLists.txt
index e7e6c6510..0d408035b 100644
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel/CMakeLists.txt
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel_intrinsic/CMakeLists.txt
@@ -1,37 +1,40 @@
#===============================================================================
# @file CMakeLists.txt
#
# @author Marco Vocialta <marco.vocialta@epfl.ch>
#
# @date Wed Nov 28 17:05:18 2012
#
-# @brief configuration for parallel test for cohesive elements
+# @brief configuration for parallel test for intrinsic cohesive elements
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
# @section DESCRIPTION
#
#===============================================================================
+add_mesh(test_cohesive_parallel_intrinsic_mesh mesh.geo 2 2)
+
if(AKANTU_PARALLEL)
- register_test(test_cohesive_parallel
- SOURCES test_cohesive_parallel.cc
+ register_test(test_cohesive_parallel_intrinsic
+ SOURCES test_cohesive_parallel_intrinsic.cc
+ DEPENDENCIES test_cohesive_parallel_intrinsic_mesh
PACKAGE cohesive_element
- FILES_TO_COPY mesh.msh material.dat
+ FILES_TO_COPY material.dat
DIRECTORIES_TO_CREATE paraview)
endif()
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel/material.dat b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel_intrinsic/material.dat
similarity index 100%
rename from test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel/material.dat
rename to test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel_intrinsic/material.dat
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel_intrinsic/mesh.geo b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel_intrinsic/mesh.geo
new file mode 100644
index 000000000..944294575
--- /dev/null
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel_intrinsic/mesh.geo
@@ -0,0 +1,24 @@
+h = 1.;
+
+Point(1) = {0, 0, 0, h};
+Point(2) = {0, 1, 0, h};
+Point(3) = {-1, 1, 0, h};
+Point(4) = {-1, 0, 0, h};
+Point(6) = {1, 0, 0, h};
+Point(7) = {1, 1, 0, h};
+Point(8) = {1, -1, 0, h};
+Point(9) = {0, -1, 0, h};
+Point(10) = {-1, -1, 0, h};
+Line(1) = {10, 9};
+Line(2) = {9, 8};
+Line(3) = {8, 6};
+Line(4) = {6, 7};
+Line(5) = {7, 2};
+Line(6) = {2, 3};
+Line(7) = {3, 4};
+Line(8) = {4, 10};
+Line Loop(9) = {3, 4, 5, 6, 7, 8, 1, 2};
+Plane Surface(10) = {9};
+Physical Surface(11) = {10};
+
+Transfinite Line {1, 2, 3, 4, 5, 6, 7, 8} = 2;
\ No newline at end of file
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel/test_cohesive_parallel.cc b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel_intrinsic/test_cohesive_parallel_intrinsic.cc
similarity index 89%
rename from test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel/test_cohesive_parallel.cc
rename to test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel_intrinsic/test_cohesive_parallel_intrinsic.cc
index be07832af..ef9c25994 100644
--- a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel/test_cohesive_parallel.cc
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel_intrinsic/test_cohesive_parallel_intrinsic.cc
@@ -1,190 +1,192 @@
/**
- * @file test_cohesive_parallel.cc
+ * @file test_cohesive_parallel_intrinsic.cc
* @author Marco Vocialta <marco.vocialta@epfl.ch>
* @date Wed Nov 28 16:59:11 2012
*
- * @brief parallel test for cohesive elements
+ * @brief parallel test for intrinsic cohesive elements
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include "mesh_io.hh"
#include "mesh_utils.hh"
#include "model.hh"
#include "solid_mechanics_model_cohesive.hh"
#include "dumper_paraview.hh"
#include "static_communicator.hh"
#include "dof_synchronizer.hh"
/* -------------------------------------------------------------------------- */
using namespace akantu;
int main(int argc, char *argv[]) {
initialize(argc, argv);
debug::setDebugLevel(dblInfo);
const UInt max_steps = 350;
UInt spatial_dimension = 2;
Mesh mesh(spatial_dimension);
Mesh mesh_facets(spatial_dimension, mesh.getNodes(), "mesh_facets");
ElementType type = _triangle_6;
- ElementType type_facet = Mesh::getFacetElementType(type);
+ ElementType type_facet = Mesh::getFacetType(type);
StaticCommunicator & comm = StaticCommunicator::getStaticCommunicator();
Int psize = comm.getNbProc();
Int prank = comm.whoAmI();
akantu::MeshPartition * partition = NULL;
if(prank == 0) {
// Read the mesh
mesh.read("mesh.msh");
/// insert cohesive elements
MeshUtils::buildAllFacets(mesh, mesh_facets);
UInt nb_facet = mesh_facets.getNbElement(type_facet);
Vector<UInt> facet_insertion;
Real * bary_facet = new Real[spatial_dimension];
for (UInt f = 0; f < nb_facet; ++f) {
mesh_facets.getBarycenter(f, type_facet, bary_facet);
if (bary_facet[0] > -0.26 && bary_facet[0] < -0.24) facet_insertion.push_back(f);
}
delete[] bary_facet;
MeshUtils::insertIntrinsicCohesiveElements(mesh,
mesh_facets,
type_facet,
facet_insertion);
/// partition the mesh
partition = new MeshPartitionScotch(mesh, spatial_dimension);
debug::setDebugLevel(dblDump);
partition->partitionate(psize);
debug::setDebugLevel(dblInfo);
}
SolidMechanicsModelCohesive model(mesh);
model.initParallel(partition);
debug::setDebugLevel(dblDump);
std::cout << mesh << std::endl;
debug::setDebugLevel(dblInfo);
- model.initIntrinsic("material.dat");
+ model.initFull("material.dat");
Real time_step = model.getStableTimeStep()*0.8;
model.setTimeStep(time_step);
// std::cout << "Time step: " << time_step << std::endl;
model.assembleMassLumped();
Vector<Real> & position = mesh.getNodes();
Vector<Real> & velocity = model.getVelocity();
Vector<bool> & boundary = model.getBoundary();
// Vector<Real> & displacement = model.getDisplacement();
// const Vector<Real> & residual = model.getResidual();
UInt nb_nodes = mesh.getNbNodes();
Real epsilon = std::numeric_limits<Real>::epsilon();
for (UInt n = 0; n < nb_nodes; ++n) {
if (std::abs(position(n, 0) - 1.) < epsilon)
boundary(n, 0) = true;
}
model.synchronizeBoundaries();
model.updateResidual();
model.setBaseName("intrinsic_parallel");
model.addDumpFieldVector("displacement");
model.addDumpField("velocity" );
model.addDumpField("acceleration");
model.addDumpField("residual" );
model.addDumpField("stress");
model.addDumpField("strain");
//model.addDumpField("partitions");
model.addDumpField("force");
model.getDumper().getDumper().setMode(iohelper::BASE64);
model.dump();
/// initial conditions
Real loading_rate = .2;
for (UInt n = 0; n < nb_nodes; ++n) {
velocity(n, 0) = loading_rate * position(n, 0);
}
/// Main loop
for (UInt s = 1; s <= max_steps; ++s) {
model.explicitPred();
model.updateResidual();
model.updateAcceleration();
model.explicitCorr();
if(s % 1 == 0) {
model.dump();
- std::cout << "passing step " << s << "/" << max_steps << std::endl;
+ if(prank == 0) std::cout << "passing step " << s << "/" << max_steps << std::endl;
}
// // update displacement
// for (UInt n = 0; n < nb_nodes; ++n) {
// if (position(n, 1) + displacement(n, 1) > 0) {
// displacement(n, 0) -= 0.01;
// }
// }
// Real Ed = dynamic_cast<MaterialCohesive&> (model.getMaterial(1)).getDissipatedEnergy();
// Real Er = dynamic_cast<MaterialCohesive&> (model.getMaterial(1)).getReversibleEnergy();
// edis << s << " "
// << Ed << std::endl;
// erev << s << " "
// << Er << std::endl;
}
// edis.close();
// erev.close();
Real Ed = model.getEnergy("dissipated");
Real Edt = 2 * sqrt(2);
- std::cout << Ed << " " << Edt << std::endl;
+ if(prank == 0) {
+ std::cout << Ed << " " << Edt << std::endl;
- if (Ed < Edt * 0.99 || Ed > Edt * 1.01 || std::isnan(Ed)) {
- std::cout << "The dissipated energy is incorrect" << std::endl;
- return EXIT_FAILURE;
+ if (std::abs((Ed - Edt) / Edt) > 0.01 || std::isnan(Ed)) {
+ std::cout << "The dissipated energy is incorrect" << std::endl;
+ return EXIT_FAILURE;
+ }
}
-
finalize();
+ if(prank == 0) std::cout << "OK: Test passed!" << std::endl;
return EXIT_SUCCESS;
}
diff --git a/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel_intrinsic/test_cohesive_parallel_intrinsic.sh b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel_intrinsic/test_cohesive_parallel_intrinsic.sh
new file mode 100755
index 000000000..0c360f4fe
--- /dev/null
+++ b/test/test_model/test_solid_mechanics_model/test_cohesive/test_cohesive_parallel_intrinsic/test_cohesive_parallel_intrinsic.sh
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+mpirun -np 2 ./test_cohesive_parallel_intrinsic
diff --git a/test/test_model/test_solid_mechanics_model/test_materials/CMakeLists.txt b/test/test_model/test_solid_mechanics_model/test_materials/CMakeLists.txt
index 83c4cabce..00271c61f 100644
--- a/test/test_model/test_solid_mechanics_model/test_materials/CMakeLists.txt
+++ b/test/test_model/test_solid_mechanics_model/test_materials/CMakeLists.txt
@@ -1,59 +1,61 @@
#===============================================================================
# @file CMakeLists.txt
#
# @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
#
# @date Fri Nov 26 00:17:56 2010
#
# @brief configuration for materials tests
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
# @section DESCRIPTION
#
#===============================================================================
add_akantu_test(test_material_viscoelastic "test the visco elastic materials"
PACKAGE extra_materials)
add_mesh(test_local_material_square_mesh triangle.geo 2 2)
add_mesh(test_local_material_circle_mesh circle.geo 2 2)
add_mesh(test_local_material_bar_mesh bar.geo 2 1)
add_mesh(test_local_material_barre_trou_mesh barre_trou.geo 2 2)
register_test(test_local_material
SOURCES test_local_material.cc local_material_damage.cc
EXTRA_FILES local_material_damage.hh local_material_damage_inline_impl.cc
DEPENDENCIES test_local_material_square_mesh test_local_material_circle_mesh
test_local_material_barre_trou_mesh
FILES_TO_COPY material.dat
DIRECTORIES_TO_CREATE paraview
)
add_mesh(test_material_non_local_mesh mesh.geo 2 2 OUTPUT mesh.msh)
register_test(test_material_damage_non_local
SOURCES test_material_damage_non_local.cc
DEPENDENCIES test_material_non_local_mesh
FILES_TO_COPY material_damage_non_local.dat
DIRECTORIES_TO_CREATE paraview
)
#===============================================================================
+add_mesh(test_interpolate_stress_mesh interpolation.geo 2 2)
register_test(test_interpolate_stress test_interpolate_stress.cc
FILES_TO_COPY material.dat
+ DEPENDENCIES test_interpolate_stress_mesh
DIRECTORIES_TO_CREATE paraview)
diff --git a/test/test_model/test_solid_mechanics_model/test_materials/interpolation.geo b/test/test_model/test_solid_mechanics_model/test_materials/interpolation.geo
new file mode 100644
index 000000000..437ba7080
--- /dev/null
+++ b/test/test_model/test_solid_mechanics_model/test_materials/interpolation.geo
@@ -0,0 +1,19 @@
+h = 1;
+
+Point(1) = {0, 0, 0, h};
+Point(2) = {1, 0, 0, h};
+Point(3) = {1, 1, 0, h};
+Point(4) = {0, 1, 0, h};
+
+Line(1) = {1, 2};
+Line(2) = {2, 3};
+Line(3) = {3, 4};
+Line(4) = {4, 1};
+
+Line Loop(5) = {1, 2, 3, 4};
+Plane Surface(6) = {5};
+Physical Surface(7) = {6};
+
+Transfinite Line {1, 2, 3, 4} = 4;
+Transfinite Surface "*";
+//Recombine Surface "*";
diff --git a/test/test_model/test_solid_mechanics_model/test_materials/test_interpolate_stress.cc b/test/test_model/test_solid_mechanics_model/test_materials/test_interpolate_stress.cc
index 23caf1264..8e3ac7293 100644
--- a/test/test_model/test_solid_mechanics_model/test_materials/test_interpolate_stress.cc
+++ b/test/test_model/test_solid_mechanics_model/test_materials/test_interpolate_stress.cc
@@ -1,182 +1,181 @@
/**
* @file test_interpolate_stress.cc
*
* @author Marco Vocialta <marco.vocialta@epfl.ch>
*
* @date Thu Jun 07 10:10:01 2012
*
* @brief Test for the stress interpolation function
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <limits>
#include <fstream>
#include <iostream>
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh.hh"
#include "mesh_utils.hh"
#include "solid_mechanics_model.hh"
#include "material.hh"
/* -------------------------------------------------------------------------- */
using namespace akantu;
static Real plane(Real, Real);
int main(int argc, char *argv[]) {
initialize(argc, argv);
debug::setDebugLevel(dblWarning);
const UInt spatial_dimension = 2;
const ElementType type = _triangle_6;
Mesh mesh(spatial_dimension);
- MeshIOMSH mesh_io;
- mesh_io.read("triangle.msh", mesh);
- const ElementType type_facet = mesh.getFacetElementType(type);;
+ mesh.read("interpolation.msh");
+ const ElementType type_facet = mesh.getFacetType(type);;
MeshUtils::buildAllFacets(mesh, mesh);
SolidMechanicsModel model(mesh);
/// model initialization
model.initFull("../material.dat");
Vector<Real> & position = mesh.getNodes();
UInt nb_facet = mesh.getNbElement(type_facet);
UInt nb_element = mesh.getNbElement(type);
/// compute quadrature points positions on facets
typedef FEMTemplate<IntegratorGauss,ShapeLagrange> MyFEMType;
model.registerFEMObject<MyFEMType>("FacetsFEM", mesh, spatial_dimension-1);
model.getFEM("FacetsFEM").initShapeFunctions();
UInt nb_quad_per_facet = model.getFEM("FacetsFEM").getNbQuadraturePoints(type_facet);
UInt nb_tot_quad = nb_quad_per_facet * nb_facet;
Vector<Real> quad_facets(nb_tot_quad, spatial_dimension);
model.getFEM("FacetsFEM").interpolateOnQuadraturePoints(position,
quad_facets,
spatial_dimension,
type_facet);
Vector<Element> & facet_to_element = mesh.getSubelementToElement(type);
UInt nb_facet_per_elem = facet_to_element.getNbComponent();
ByElementTypeReal element_quad_facet;
element_quad_facet.alloc(nb_element * nb_facet_per_elem * nb_quad_per_facet,
spatial_dimension,
type);
Vector<Real> & el_q_facet = element_quad_facet(type);
for (UInt el = 0; el < nb_element; ++el) {
for (UInt f = 0; f < nb_facet_per_elem; ++f) {
UInt global_facet = facet_to_element(el, f).element;
for (UInt q = 0; q < nb_quad_per_facet; ++q) {
for (UInt s = 0; s < spatial_dimension; ++s) {
el_q_facet(el * nb_facet_per_elem * nb_quad_per_facet
+ f * nb_quad_per_facet + q, s)
= quad_facets(global_facet * nb_quad_per_facet + q, s);
}
}
}
}
/// compute quadrature points position of the elements
UInt nb_quad_per_element = model.getFEM().getNbQuadraturePoints(type);
UInt nb_tot_quad_el = nb_quad_per_element * nb_element;
Vector<Real> quad_elements(nb_tot_quad_el, spatial_dimension);
model.getFEM().interpolateOnQuadraturePoints(position,
quad_elements,
spatial_dimension,
type);
/// assign some values to stresses
Vector<Real> & stress
= const_cast<Vector<Real>&>(model.getMaterial(0).getStress(type));
for (UInt q = 0; q < nb_tot_quad_el; ++q) {
for (UInt s = 0; s < spatial_dimension * spatial_dimension; ++s) {
stress(q, s) = s * plane(quad_elements(q, 0), quad_elements(q, 1));
}
}
/// interpolate stresses on facets' quadrature points
model.getMaterial(0).initElementalFieldInterpolation(element_quad_facet);
Vector<Real> interpolated_stress(nb_element * nb_facet_per_elem * nb_quad_per_facet,
stress.getNbComponent());
model.getMaterial(0).interpolateStress(type,
interpolated_stress);
/// check results
for (UInt el = 0; el < nb_element; ++el) {
for (UInt f = 0; f < nb_facet_per_elem; ++f) {
for (UInt q = 0; q < nb_quad_per_facet; ++q) {
for (UInt s = 0; s < spatial_dimension * spatial_dimension; ++s) {
Real x = el_q_facet(el * nb_facet_per_elem * nb_quad_per_facet
+ f * nb_quad_per_facet + q, 0);
Real y = el_q_facet(el * nb_facet_per_elem * nb_quad_per_facet
+ f * nb_quad_per_facet + q, 1);
Real theoretical = s * plane(x, y);
Real numerical = interpolated_stress(el * nb_facet_per_elem * nb_quad_per_facet
+ f * nb_quad_per_facet + q, s);
Real tolerance = 1000 * (theoretical + 1) * std::numeric_limits<Real>::epsilon();
if (std::abs(theoretical - numerical) > tolerance) {
std::cout << "Theoretical and numerical values aren't coincident!" << std::endl;
return EXIT_FAILURE;
}
}
}
}
}
std::cout << "OK: Stress interpolation test passed." << std::endl;
return EXIT_SUCCESS;
}
Real plane(Real x, Real y) {
return 1. + 2. * x + 3. * y;
}
diff --git a/test/test_model/test_solid_mechanics_model/test_solid_mechanics_model_bar_traction2d.cc b/test/test_model/test_solid_mechanics_model/test_solid_mechanics_model_bar_traction2d.cc
index ff91ab015..5788bcf58 100644
--- a/test/test_model/test_solid_mechanics_model/test_solid_mechanics_model_bar_traction2d.cc
+++ b/test/test_model/test_solid_mechanics_model/test_solid_mechanics_model_bar_traction2d.cc
@@ -1,202 +1,204 @@
/**
* @file test_solid_mechanics_model_bar_traction2d.cc
*
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Fri Sep 03 15:56:56 2010
*
* @brief test of the class SolidMechanicsModel
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <limits>
#include <fstream>
#include <iostream>
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh.hh"
#include "solid_mechanics_model.hh"
#include "material.hh"
/* -------------------------------------------------------------------------- */
#ifdef AKANTU_USE_IOHELPER
# include "io_helper.hh"
iohelper::ElemType paraview_type = iohelper::TRIANGLE2;
#endif //AKANTU_USE_IOHELPER
//#define CHECK_STRESS
akantu::ElementType type = akantu::_triangle_6;
akantu::SolidMechanicsModel * model;
akantu::UInt spatial_dimension = 2;
akantu::UInt nb_nodes;
akantu::UInt nb_element;
akantu::UInt nb_quadrature_points;
akantu::Vector<akantu::Real> * stress;
akantu::Vector<akantu::Real> * strain;
int main(int argc, char *argv[])
{
akantu::initialize(argc, argv);
akantu::UInt max_steps = 5000;
akantu::Real time_factor = 0.8;
// akantu::Real epot, ekin;
akantu::Mesh mesh(spatial_dimension);
akantu::MeshIOMSH mesh_io;
mesh_io.read("bar2.msh", mesh);
model = new akantu::SolidMechanicsModel(mesh);
nb_nodes = model->getFEM().getMesh().getNbNodes();
nb_element = model->getFEM().getMesh().getNbElement(type);
/// model initialization
model->initFull("material.dat");
std::cout << model->getMaterial(0) << std::endl;
model->initMaterials();
model->assembleMassLumped();
nb_quadrature_points = model->getFEM().getNbQuadraturePoints(type);
stress = new akantu::Vector<akantu::Real>(nb_element * nb_quadrature_points,
spatial_dimension* spatial_dimension);
strain = new akantu::Vector<akantu::Real>(nb_element * nb_quadrature_points,
spatial_dimension * spatial_dimension);
/// boundary conditions
akantu::Real eps = 1e-16;
const akantu::Vector<akantu::Real> & pos = mesh.getNodes();
akantu::Vector<akantu::Real> & disp = model->getDisplacement();
akantu::Vector<bool> & boun = model->getBoundary();
for (akantu::UInt i = 0; i < nb_nodes; ++i) {
if(pos(i, 0) >= 9.) disp(i, 0) = (pos(i, 0) - 9) / 100.;
if(pos(i) <= eps) boun(i, 0) = true;
if(pos(i, 1) <= eps || pos(i, 1) >= 1 - eps ) boun(i, 1) = true;
}
/// set the time step
akantu::Real time_step = model->getStableTimeStep() * time_factor;
std::cout << "Time Step = " << time_step << "s" << std::endl;
model->setTimeStep(time_step);
/// initialize the paraview output
model->updateResidual();
model->setBaseName("bar_traction_2d");
model->addDumpField("displacement");
model->addDumpField("mass" );
model->addDumpField("velocity" );
model->addDumpField("acceleration");
model->addDumpField("force" );
model->addDumpField("residual" );
+ model->addDumpField("stress" );
+ model->addDumpField("strain" );
model->dump();
#ifdef CHECK_STRESS
std::ofstream outfile;
outfile.open("stress");
#endif // CHECK_STRESS
std::ofstream energy;
energy.open("energy_bar_2d.csv");
energy << "id,rtime,epot,ekin,tot" << std::endl;
for(akantu::UInt s = 1; s <= max_steps; ++s) {
model->explicitPred();
model->updateResidual();
model->updateAcceleration();
model->explicitCorr();
akantu::Real epot = model->getPotentialEnergy();
akantu::Real ekin = model->getKineticEnergy();
energy << s << "," << (s-1)*time_step << "," << epot << "," << ekin << "," << epot + ekin
<< std::endl;
#ifdef CHECK_STRESS
/// search the position of the maximum of stress to determine the wave speed
akantu::Real max_stress = std::numeric_limits<akantu::Real>::min();
akantu::Real * stress = model->getMaterial(0).getStress(type).values;
for (akantu::UInt i = 0; i < nb_element; ++i) {
if(max_stress < stress[i*spatial_dimension*spatial_dimension]) {
max_stress = stress[i*spatial_dimension*spatial_dimension];
}
}
akantu::Real * coord = model->getFEM().getMesh().getNodes().values;
akantu::Real * disp_val = model->getDisplacement().values;
akantu::UInt * conn = model->getFEM().getMesh().getConnectivity(type).values;
akantu::UInt nb_nodes_per_element = model->getFEM().getMesh().getNbNodesPerElement(type);
akantu::Real * coords = new akantu::Real[spatial_dimension];
akantu::Real min_x = std::numeric_limits<akantu::Real>::max();
akantu::Real max_x = std::numeric_limits<akantu::Real>::min();
akantu::Real stress_range = 5e7;
for (akantu::UInt el = 0; el < nb_element; ++el) {
if(stress[el*spatial_dimension*spatial_dimension] > max_stress - stress_range) {
akantu::UInt el_offset = el * nb_nodes_per_element;
memset(coords, 0, spatial_dimension*sizeof(akantu::Real));
for (akantu::UInt n = 0; n < nb_nodes_per_element; ++n) {
for (akantu::UInt i = 0; i < spatial_dimension; ++i) {
akantu::UInt node = conn[el_offset + n] * spatial_dimension;
coords[i] += (coord[node + i] + disp_val[node + i])
/ ((akantu::Real) nb_nodes_per_element);
}
}
min_x = min_x < coords[0] ? min_x : coords[0];
max_x = max_x > coords[0] ? max_x : coords[0];
}
}
outfile << s << " " << .5 * (min_x + max_x) << " " << min_x << " " << max_x << " " << max_x - min_x << " " << max_stress << std::endl;
delete [] coords;
#endif // CHECK_STRESS
#ifdef AKANTU_USE_IOHELPER
if(s % 100 == 0) model->dump();
#endif //AKANTU_USE_IOHELPER
if(s % 100 == 0) std::cout << "passing step " << s << "/" << max_steps << std::endl;
}
energy.close();
#ifdef CHECK_STRESS
outfile.close();
#endif // CHECK_STRESS
delete model;
akantu::finalize();
return EXIT_SUCCESS;
}
diff --git a/test/test_model/test_solid_mechanics_model/test_solid_mechanics_model_bar_traction2d_structured.cc b/test/test_model/test_solid_mechanics_model/test_solid_mechanics_model_bar_traction2d_structured.cc
index 97f9b8ffe..8341038e0 100644
--- a/test/test_model/test_solid_mechanics_model/test_solid_mechanics_model_bar_traction2d_structured.cc
+++ b/test/test_model/test_solid_mechanics_model/test_solid_mechanics_model_bar_traction2d_structured.cc
@@ -1,130 +1,130 @@
/**
* @file test_solid_mechanics_model_bar_traction2d_structured.cc
*
* @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
* @author Nicolas Richart <nicolas.richart@epfl.ch>
*
* @date Mon Dec 13 10:46:04 2010
*
* @brief test of the class SolidMechanicsModel
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <limits>
#include <fstream>
#include <iostream>
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh.hh"
#include "solid_mechanics_model.hh"
#include "material.hh"
/* -------------------------------------------------------------------------- */
#ifdef AKANTU_USE_IOHELPER
# include "io_helper.hh"
#endif //AKANTU_USE_IOHELPER
int main(int argc, char *argv[])
{
akantu::initialize(argc, argv);
akantu::UInt spatial_dimension = 2;
akantu::UInt max_steps = 10000;
akantu::Real time_factor = 0.2;
akantu::Real epot, ekin;
akantu::Mesh mesh(spatial_dimension);
akantu::MeshIOMSH mesh_io;
mesh_io.read("bar_structured1.msh", mesh);
akantu::SolidMechanicsModel * model = new akantu::SolidMechanicsModel(mesh);
/// model initialization
model->initVectors();
/// set vectors to 0
akantu::UInt nb_nodes = model->getFEM().getMesh().getNbNodes();
memset(model->getForce().values, 0,
spatial_dimension*nb_nodes*sizeof(akantu::Real));
memset(model->getVelocity().values, 0,
spatial_dimension*nb_nodes*sizeof(akantu::Real));
memset(model->getAcceleration().values, 0,
spatial_dimension*nb_nodes*sizeof(akantu::Real));
memset(model->getDisplacement().values, 0,
spatial_dimension*nb_nodes*sizeof(akantu::Real));
model->initExplicit();
model->initModel();
model->readMaterials("material.dat");
model->initMaterials();
std::cout << model->getMaterial(0) << std::endl;
model->assembleMassLumped();
/// boundary conditions
akantu::Real eps = 1e-16;
for (akantu::UInt i = 0; i < nb_nodes; ++i) {
if(model->getFEM().getMesh().getNodes().values[spatial_dimension*i] >= 9)
model->getDisplacement().values[spatial_dimension*i] = (model->getFEM().getMesh().getNodes().values[spatial_dimension*i] - 9) / 100. ;
if(model->getFEM().getMesh().getNodes().values[spatial_dimension*i] <= eps)
model->getBoundary().values[spatial_dimension*i] = true;
if(model->getFEM().getMesh().getNodes().values[spatial_dimension*i + 1] <= eps ||
model->getFEM().getMesh().getNodes().values[spatial_dimension*i + 1] >= 1 - eps ) {
model->getBoundary().values[spatial_dimension*i + 1] = true;
}
}
akantu::Real time_step = model->getStableTimeStep() * time_factor;
std::cout << "Time Step = " << time_step << "s" << std::endl;
model->setTimeStep(time_step);
std::ofstream energy;
- energy.open("energy.csv");
+ energy.open("energy_bar_2d_structured.csv");
energy << "id,epot,ekin,tot" << std::endl;
for(akantu::UInt s = 1; s <= max_steps; ++s) {
model->explicitPred();
model->updateResidual();
model->updateAcceleration();
model->explicitCorr();
epot = model->getPotentialEnergy();
ekin = model->getKineticEnergy();
std::cerr << "passing step " << s << "/" << max_steps << std::endl;
energy << s << "," << epot << "," << ekin << "," << epot + ekin
<< std::endl;
}
energy.close();
return EXIT_SUCCESS;
}
diff --git a/test/test_model/test_solid_mechanics_model/test_solid_mechanics_model_bar_traction2d_structured.sh b/test/test_model/test_solid_mechanics_model/test_solid_mechanics_model_bar_traction2d_structured.sh
index 91e957fc1..c61e3828a 100755
--- a/test/test_model/test_solid_mechanics_model/test_solid_mechanics_model_bar_traction2d_structured.sh
+++ b/test/test_model/test_solid_mechanics_model/test_solid_mechanics_model_bar_traction2d_structured.sh
@@ -1,12 +1,12 @@
#!/bin/bash
rm energy.csv
./test_solid_mechanics_model_bar_traction2d_structured
ret=$?
if [ $ret -eq 0 ]
then
- ./test_cst_energy.pl energy.csv 1e-3
+ ./test_cst_energy.pl energy_bar_2d_structured.csv 1e-3
else
return $ret
fi
diff --git a/test/test_model/test_structural_mechanics_model/CMakeLists.txt b/test/test_model/test_structural_mechanics_model/CMakeLists.txt
index 08561ce76..36c6780ac 100644
--- a/test/test_model/test_structural_mechanics_model/CMakeLists.txt
+++ b/test/test_model/test_structural_mechanics_model/CMakeLists.txt
@@ -1,51 +1,56 @@
-#===============================================================================
# @file CMakeLists.txt
-#
# @author Fabian Barras <fabian.barras@epfl.ch>
+# @date Thu May 12 19:05:02 2011
#
-# @date Fri Jul 15 19:41:58 2011
-#
-# @brief configuration for StructuralMechanicsModel tests
+# @brief
#
# @section LICENSE
#
# Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
#
# Akantu is free software: you can 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 3 of the License, or (at your option) any
# later version.
#
# Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Akantu. If not, see <http://www.gnu.org/licenses/>.
#
-#===============================================================================
+#------------------------------------------------------------------------------
register_test(test_structural_mechanics_model_bernoulli_beam_2
- test_structural_mechanics_model_bernoulli_beam_2.cc
- DIRECTORIES_TO_CREATE paraview
- )
+ test_structural_mechanics_model_bernoulli_beam_2.cc)
register_test(test_structural_mechanics_model_boundary_bernoulli_beam_2
- test_structural_mechanics_model_boundary_bernoulli_beam_2.cc
- DIRECTORIES_TO_CREATE paraview
- )
+ test_structural_mechanics_model_boundary_bernoulli_beam_2.cc)
register_test(test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1
- test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1.cc
- DIRECTORIES_TO_CREATE paraview
- )
+ test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1.cc)
+
+register_test(test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1_y
+ test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1_y.cc)
+
+register_test(test_structural_mechanics_model_bernoulli_beam_3_exemple_1_1_xy
+ test_structural_mechanics_model_bernoulli_beam_3_exemple_1_1_xy.cc)
+
+register_test(test_structural_mechanics_model_bernoulli_beam_3_exemple_1_1_zy
+ test_structural_mechanics_model_bernoulli_beam_3_exemple_1_1_zy.cc)
+
+register_test(test_structural_mechanics_model_bernoulli_beam_3_local_force
+ test_structural_mechanics_model_bernoulli_beam_local_force.cc)
+
+register_test(test_structural_mechanics_model_bernoulli_beam_3_exercice_12_10_13
+ test_structural_mechanics_model_bernoulli_beam_3_exercice_12_10_13.cc)
add_mesh(complicated_mesh complicated.geo 1 1)
register_test(test_structural_mechanics_model_bernoulli_beam_2_complicated
test_structural_mechanics_model_bernoulli_beam_2_complicated.cc
- DEPENDENCIES complicated_mesh
- DIRECTORIES_TO_CREATE paraview
- )
+ DEPENDENCIES complicated_mesh)
+file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/paraview)
diff --git a/src/mesh_utils/mesh_io/mesh_io_abaqus.hh b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_12_10_13.cc
similarity index 58%
rename from src/mesh_utils/mesh_io/mesh_io_abaqus.hh
rename to test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_12_10_13.cc
index fd090918a..39ab9d611 100644
--- a/src/mesh_utils/mesh_io/mesh_io_abaqus.hh
+++ b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_12_10_13.cc
@@ -1,60 +1,28 @@
/**
- * @file mesh_io_abaqus.hh
- * @author Alejandro M. Aragón <alejandro.aragon@epfl.ch>
- * @date Fri Oct 7 10:59:00 2011
+ * @file test_structural_mechanics_model_bernoulli_beam_12_10_13.cc
+ * @author Fabian Barras <fabian.barras@epfl.ch>
+ * @date Tue Nov 29 09:16:11 2011
*
- * @brief read a mesh from an abaqus input file
+ * @brief
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
-
-#ifndef __AKANTU_MESH_IO_ABAQUS_HH__
-#define __AKANTU_MESH_IO_ABAQUS_HH__
-
-
-#include "mesh_io.hh"
-
-
-__BEGIN_AKANTU__
-
-class MeshIOAbaqus : public MeshIO {
-
-
-public:
-
- MeshIOAbaqus() {}
- virtual ~MeshIOAbaqus() {}
-
- /// read a mesh from the file
- virtual void read(const std::string & filename, Mesh & mesh);
-
- /// write a mesh to a file
- virtual void write(const std::string & filename, const Mesh & mesh) {}
-
-};
-
-
-
-
-__END_AKANTU__
-
-#endif /* __AKANTU_MESH_IO_ABAQUS_HH__ */
diff --git a/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_2.cc b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_2.cc
index 69650ee00..9581aa6be 100644
--- a/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_2.cc
+++ b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_2.cc
@@ -1,233 +1,133 @@
/**
* @file test_structural_mechanics_model_bernoulli_beam_2.cc
- *
* @author Fabian Barras <fabian.barras@epfl.ch>
+ * @date Thu May 12 16:34:09 2011
*
- * @date Fri Jul 15 19:41:58 2011
- *
- * @brief tests of the StructuralMechanicsModel for 2d Bernoulli beams
+ * @brief
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <limits>
#include <fstream>
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh_struct.hh"
#include "structural_mechanics_model.hh"
#include "material.hh"
/* -------------------------------------------------------------------------- */
#define TYPE _bernoulli_beam_2
using namespace akantu;
-#ifdef AKANTU_USE_IOHELPER
-# include "io_helper.hh"
-
-
-static void paraviewInit(iohelper::Dumper & dumper, const StructuralMechanicsModel & model);
-static void paraviewDump(iohelper::Dumper & dumper);
-#endif
-
//Linear load function
-static void lin_load(__attribute__ ((unused)) double * position,
- double * load,
- __attribute__ ((unused)) Real * normal,
- __attribute__ ((unused)) UInt surface_id){
+static void lin_load(double * position, double * load,
+ __attribute__ ((unused)) Real * normal, __attribute__ ((unused)) UInt surface_id){
memset(load,0,sizeof(Real)*3);
load[1]= -60000000;
}
int main(int argc, char *argv[]){
initialize(argc, argv);
Mesh beams(2);
debug::setDebugLevel(dblWarning);
/* -------------------------------------------------------------------------- */
// Defining the mesh
UInt nb_nodes=101;
UInt nb_element=nb_nodes-1;
UInt nb_nodes_h=101;
UInt nb_nodes_v= nb_nodes-nb_nodes_h;
- Vector<Real> & nodes = const_cast<Vector<Real> &>(beams.getNodes());
- nodes.resize(nb_nodes);
+ Vector<Real> & nodes = const_cast<Vector<Real> &>(beams.getNodes());
+ nodes.resize(nb_nodes);
- beams.addConnectivityType(_bernoulli_beam_2);
- Vector<UInt> & connectivity = const_cast<Vector<UInt> &>(beams.getConnectivity(_bernoulli_beam_2));
- connectivity.resize(nb_element);
+ beams.addConnectivityType(_bernoulli_beam_2);
+ Vector<UInt> & connectivity = const_cast<Vector<UInt> &>(beams.getConnectivity(_bernoulli_beam_2));
+ connectivity.resize(nb_element);
- for(UInt i=0; i<nb_nodes_h; ++i) {
+ for(UInt i=0; i<nb_nodes_h; ++i) {
- nodes(i,0)=2./((Real)nb_nodes_h-1)*i;
- nodes(i,1)=0;
- }
- for(UInt i=nb_nodes_h; i<nb_nodes; ++i) {
-
- nodes(i,0)=2;
- nodes(i,1)=2./((Real)nb_nodes_v)*(i-nb_nodes_h);
- }
-
-
- /**nodes(0,0)=0;
- nodes(1,0)=10;
- nodes(2,0)=18;
- */
- for(UInt i=0; i<nb_element; ++i) {
-
- connectivity(i,0)=i;
- connectivity(i,1)=i+1;
- }
- akantu::MeshIOMSHStruct mesh_io;
- mesh_io.write("b_beam_2.msh", beams);
+ nodes(i,0)=2./((Real)nb_nodes_h-1)*i;
+ nodes(i,1)=0;
+ }
+ for(UInt i=nb_nodes_h; i<nb_nodes; ++i) {
-/* -------------------------------------------------------------------------- */
- // Defining the forces
+ nodes(i,0)=2;
+ nodes(i,1)=2./((Real)nb_nodes_v)*(i-nb_nodes_h);
+ }
- // akantu::ElementType type = akantu::_bernoulli_beam_2;
+ /**nodes(0,0)=0;
+ nodes(1,0)=10;
+ nodes(2,0)=18;
+ */
- akantu::StructuralMechanicsModel * model;
+ for(UInt i=0; i<nb_element; ++i) {
+ connectivity(i,0)=i;
+ connectivity(i,1)=i+1;
+ }
- model = new akantu::StructuralMechanicsModel(beams);
- model->initModel();
+ akantu::StructuralMechanicsModel model(beams);
+ model.initFull();
StructuralMaterial mat1;
mat1.E=2.05e11;
mat1.I=0.00128;
mat1.A=0.01;
+ model.addMaterial(mat1);
-
- model->addMaterial(mat1);
-
- model->initVectors();
- model->initImplicitSolver();
-
- // const Real M = 3600; // Momentum at 3
-
- Vector<Real> & forces = model->getForce();
- Vector<Real> & displacement = model->getDisplacement();
- Vector<bool> & boundary = model->getBoundary();
-
- Vector<UInt> element_material = model->getElementMaterial(_bernoulli_beam_2);
-
- forces.clear();
- displacement.clear();
-
-
- model->computeForcesFromFunction(lin_load, akantu::_bft_traction);
-
- /**forces(0,2)=-N;
- forces(nb_nodes-1,2)=N;
-
- for (UInt i = 0; i < nb_nodes; ++i) {
- forces(i,1)=-N/nb_nodes;
- }
- */
+ Vector<bool> & boundary = model.getBoundary();
+ Vector<UInt> element_material = model.getElementMaterial(_bernoulli_beam_2);
+ model.computeForcesFromFunction<_bernoulli_beam_2>(lin_load, akantu::_bft_traction);
boundary(0,0) = true;
boundary(0,1) = true;
- //boundary(0,2) = true;
- //boundary(nb_nodes-1,0) = true;
boundary(nb_nodes-1,1) = true;
- //boundary(nb_nodes-1,2) = true;
Real error;
+ model.assembleStiffnessMatrix();
+ model.getStiffnessMatrix().saveMatrix("Kb.mtx");
- model->assembleStiffnessMatrix();
- model->getStiffnessMatrix().saveMatrix("Kb.mtx");
UInt count = 0;
-
-#ifdef AKANTU_USE_IOHELPER
- iohelper::DumperParaview dumper;
- paraviewInit(dumper, *model);
-#endif
+ model.addDumpField("displacememt");
+ model.addDumpField("rotation");
+ model.addDumpField("force");
+ model.addDumpField("momentum");
do {
if(count != 0) std::cerr << count << " - " << error << std::endl;
- model->updateResidual();
- model->solve();
+ model.updateResidual();
+ model.solve();
count++;
- } while (!model->testConvergenceIncrement(1e-10, error) && count < 10);
+ } while (!model.testConvergenceIncrement(1e-10, error) && count < 10);
std::cerr << count << " - " << error << std::endl;
- model->getStiffnessMatrix().saveMatrix("Ka.mtx");
-#ifdef AKANTU_USE_IOHELPER
- paraviewDump(dumper);
-#endif
-}
-
-
-
-/* -------------------------------------------------------------------------- */
-/* iohelper::Dumper vars */
-/* -------------------------------------------------------------------------- */
-
-#ifdef AKANTU_USE_IOHELPER
-
-// /* -------------------------------------------------------------------------- */
-// template <ElementType type> static iohelper::ElemType paraviewType();
-// template <> iohelper::ElemType paraviewType<_segment_2>() { return iohelper::LINE1; }
-// template <> iohelper::ElemType paraviewType<_segment_3>() { return iohelper::LINE2; }
-// template <> iohelper::ElemType paraviewType<_triangle_3>() { return iohelper::TRIANGLE1; }
-// template <> iohelper::ElemType paraviewType<_triangle_6>() { return iohelper::TRIANGLE2; }
-// template <> iohelper::ElemType paraviewType<_quadrangle_4>() { return iohelper::QUAD1; }
-// template <> iohelper::ElemType paraviewType<_tetrahedron_4>() { return iohelper::TETRA1; }
-// template <> iohelper::ElemType paraviewType<_tetrahedron_10>() { return iohelper::TETRA2; }
-// template <> iohelper::ElemType paraviewType<_hexahedron_8>() { return iohelper::HEX1; }
-// template <> iohelper::ElemType paraviewType<_bernoulli_beam_2>(){ return iohelper::LINE1; }
-/* -------------------------------------------------------------------------- */
-void paraviewInit(iohelper::Dumper & dumper, const StructuralMechanicsModel & model) {
- // UInt spatial_dimension = ElementClass<TYPE>::getSpatialDimension();
- // UInt nb_nodes = model.getFEM().getMesh().getNbNodes();
- // UInt nb_element = model.getFEM().getMesh().getNbElement(TYPE);
-
- // std::stringstream filename; filename << "beam";
-#pragma message "To change with new dumper"
- // dumper.SetMode(iohelper::TEXT);
- // dumper.SetPoints(model.getFEM().getMesh().getNodes().values,
- // spatial_dimension, nb_nodes, filename.str().c_str());
- // dumper.SetConnectivity((int *)model.getFEM().getMesh().getConnectivity(TYPE).values,
- // paraviewType<TYPE>(), nb_element, iohelper::C_MODE);
- // dumper.AddNodeDataField(model.getDisplacement().values,
- // 3, "displacements");
- // dumper.AddNodeDataField(model.getForce().values,
- // 3, "applied_force");
- // dumper.SetPrefix("paraview/");
- // dumper.Init();
- // dumper.Dump();
+ model.getStiffnessMatrix().saveMatrix("Ka.mtx");
+ model.dump();
}
-/* -------------------------------------------------------------------------- */
-void paraviewDump(iohelper::Dumper & dumper) {
- // dumper.Dump();
-}
-
-/* -------------------------------------------------------------------------- */
-
-#endif
diff --git a/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_2_complicated.cc b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_2_complicated.cc
index 552767386..9bd816f44 100644
--- a/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_2_complicated.cc
+++ b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_2_complicated.cc
@@ -1,239 +1,165 @@
/**
* @file test_structural_mechanics_model_bernoulli_beam_2_complicated.cc
- *
* @author Fabian Barras <fabian.barras@epfl.ch>
- *
- * @date Fri Jul 15 19:41:58 2011
+ * @date Wed Jun 1 16:06:45 2011
*
* @brief A very complicated structure
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <limits>
#include <fstream>
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh_struct.hh"
#include "structural_mechanics_model.hh"
#include "material.hh"
/* -------------------------------------------------------------------------- */
#define TYPE _bernoulli_beam_2
using namespace akantu;
-#ifdef AKANTU_USE_IOHELPER
-# include "io_helper.hh"
-
-static void paraviewInit(iohelper::Dumper & dumper, const StructuralMechanicsModel & model);
-static void paraviewDump(iohelper::Dumper & dumper);
-#endif
-
//Linear load function
static void lin_load(double * position, double * load,
- __attribute__ ((unused)) Real * normal,
- __attribute__ ((unused)) UInt surface_id){
+ __attribute__ ((unused)) Real * normal, __attribute__ ((unused)) UInt surface_id){
memset(load,0,sizeof(Real)*3);
if(position[1]>=0.-Math::getTolerance()) {
if ((position[0]<=10.)){
load[1]= -100;
} else if (position[0]<=20.){
load[1]= -70;
}
}
}
int main(int argc, char *argv[]){
initialize(argc, argv);
Mesh beams(2);
debug::setDebugLevel(dblWarning);
/* -------------------------------------------------------------------------- */
// Defining the mesh
akantu::MeshIOMSHStruct mesh_io;
mesh_io.read("complicated.msh", beams);
mesh_io.write("complicated_tata.msh", beams);
/* -------------------------------------------------------------------------- */
// Defining the material
const akantu::ElementType type = akantu::_bernoulli_beam_2;
- akantu::StructuralMechanicsModel * model;
-
- model = new akantu::StructuralMechanicsModel(beams);
+ akantu::StructuralMechanicsModel model(beams);
StructuralMaterial mat1;
mat1.E=3e10;
mat1.I=0.0025;
mat1.A=0.01;
- model->addMaterial(mat1);
+ model.addMaterial(mat1);
StructuralMaterial mat2 ;
mat2.E=3e10;
mat2.I=0.003125;
mat2.A=0.01;
- model->addMaterial(mat2);
+ model.addMaterial(mat2);
/* -------------------------------------------------------------------------- */
// Defining the forces
-
- model->initModel();
-
- model->initVectors();
+ model.initFull();
UInt nb_element = beams.getNbElement(type);
for (unsigned int i = 0; i < nb_element; ++i) {
- model->getElementMaterial(type)(i,0) = beams.getUIntData(type, "tag_0")(i,0) - 1;
+ model.getElementMaterial(type)(i,0) = beams.getUIntData(type, "tag_0")(i,0) - 1;
}
- Vector<Real> & forces = model->getForce();
- Vector<Real> & displacement = model->getDisplacement();
- Vector<bool> & boundary = model->getBoundary();
- // const Vector<Real> & N_M = model->getStress(_bernoulli_beam_2);
+ Vector<Real> & forces = model.getForce();
+ Vector<Real> & displacement = model.getDisplacement();
+ Vector<bool> & boundary = model.getBoundary();
+ // const Vector<Real> & N_M = model.getStress(_bernoulli_beam_2);
- // Vector<UInt> & element_material = model->getElementMaterial(_bernoulli_beam_2);
+ // Vector<UInt> & element_material = model.getElementMaterial(_bernoulli_beam_2);
forces.clear();
displacement.clear();
-
- model->computeForcesFromFunction(lin_load, akantu::_bft_traction);
+ model.computeForcesFromFunction<_bernoulli_beam_2>(lin_load, akantu::_bft_traction);
/* -------------------------------------------------------------------------- */
// Defining the boundary conditions
boundary(0,0) = true;
boundary(0,1) = true;
boundary(3,0) = true;
boundary(3,1) = true;
boundary(4,0) = true;
boundary(4,1) = true;
boundary(4,2) = true;
boundary(5,0) = true;
boundary(5,1) = true;
boundary(5,2) = true;
//boundary(2,1) = true;
//boundary(2,0) = true;
//boundary(1,1) = true;
//boundary(1,0) = true;
/* -------------------------------------------------------------------------- */
// Solve
-
- model->initImplicitSolver();
-
Real error;
- model->assembleStiffnessMatrix();
- model->getStiffnessMatrix().saveMatrix("Kb.mtx");
+ model.assembleStiffnessMatrix();
+ model.getStiffnessMatrix().saveMatrix("Kb.mtx");
UInt count = 0;
-#ifdef AKANTU_USE_IOHELPER
- iohelper::DumperParaview dumper;
- paraviewInit(dumper, *model);
-#endif
+ model.addDumpField("displacememt");
+ model.addDumpField("rotation");
+ model.addDumpField("force");
+ model.addDumpField("momentum");
do {
if(count != 0) std::cerr << count << " - " << error << std::endl;
- model->updateResidual();
- model->solve();
+ model.updateResidual();
+ model.solve();
count++;
- } while (!model->testConvergenceIncrement(1e-10, error) && count < 10);
+ } while (!model.testConvergenceIncrement(1e-10, error) && count < 10);
std::cerr << count << " - " << error << std::endl;
/* -------------------------------------------------------------------------- */
// Post-Processing
- model->computeStressOnQuad();
+ model.computeStresses();
- model->getStiffnessMatrix().saveMatrix("Ka.mtx");
+ model.getStiffnessMatrix().saveMatrix("Ka.mtx");
std::cout<< " x1 = " << displacement(1,2) << std::endl;
std::cout<< " x2 = " << displacement(2,2) << std::endl;
-
-#ifdef AKANTU_USE_IOHELPER
- paraviewDump(dumper);
-#endif
+ model.dump();
}
-
-
-
-/* -------------------------------------------------------------------------- */
-/* iohelper::Dumper vars */
-/* -------------------------------------------------------------------------- */
-
-#ifdef AKANTU_USE_IOHELPER
-
-/* -------------------------------------------------------------------------- */
-// template <ElementType type> static iohelper::ElemType paraviewType();
-// template <> iohelper::ElemType paraviewType<_segment_2>() { return iohelper::LINE1; }
-// template <> iohelper::ElemType paraviewType<_segment_3>() { return iohelper::LINE2; }
-// template <> iohelper::ElemType paraviewType<_triangle_3>() { return iohelper::TRIANGLE1; }
-// template <> iohelper::ElemType paraviewType<_triangle_6>() { return iohelper::TRIANGLE2; }
-// template <> iohelper::ElemType paraviewType<_quadrangle_4>() { return iohelper::QUAD1; }
-// template <> iohelper::ElemType paraviewType<_tetrahedron_4>() { return iohelper::TETRA1; }
-// template <> iohelper::ElemType paraviewType<_tetrahedron_10>() { return iohelper::TETRA2; }
-// template <> iohelper::ElemType paraviewType<_hexahedron_8>() { return iohelper::HEX1; }
-// template <> iohelper::ElemType paraviewType<_bernoulli_beam_2>(){ return iohelper::BEAM2; }
-/* -------------------------------------------------------------------------- */
-void paraviewInit(iohelper::Dumper & dumper, const StructuralMechanicsModel & model) {
- // UInt spatial_dimension = ElementClass<TYPE>::getSpatialDimension();
- // UInt nb_nodes = model.getFEM().getMesh().getNbNodes();
- // UInt nb_element = model.getFEM().getMesh().getNbElement(TYPE);
-
- // std::stringstream filename; filename << "beam";
-#pragma message "To change with new dumper"
- // dumper.SetMode(iohelper::TEXT);
- // dumper.SetPoints(model.getFEM().getMesh().getNodes().values,
- // spatial_dimension, nb_nodes, filename.str().c_str());
- // dumper.SetConnectivity((int *)model.getFEM().getMesh().getConnectivity(TYPE).values,
- // paraviewType<TYPE>(), nb_element, iohelper::C_MODE);
- // dumper.AddNodeDataField(model.getDisplacement().values,
- // 3, "displacements");
- // dumper.AddNodeDataField(model.getForce().values,
- // 3, "applied_force");
- // dumper.AddElemDataField(model.getStress(_bernoulli_beam_2).values,
- // 2, "stress");
- // dumper.SetPrefix("paraview/");
- // dumper.Init();
- // dumper.Dump();
-}
-
-/* -------------------------------------------------------------------------- */
-void paraviewDump(iohelper::Dumper & dumper) {
- // dumper.Dump();
-}
-
-/* -------------------------------------------------------------------------- */
-
-#endif
diff --git a/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1.cc b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1.cc
index 3e75c01ef..347bb7249 100644
--- a/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1.cc
+++ b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1.cc
@@ -1,260 +1,181 @@
/**
* @file test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1.cc
- *
* @author Fabian Barras <fabian.barras@epfl.ch>
+ * @date Tue May 31 19:10:26 2011
*
- * @date Fri Jul 15 19:41:58 2011
- *
- * @brief Computation of the analytical exemple 1.1 in the TGC vol 6
+ * @brief Computation of the analytical exemple 1.1 in the TGC vol 6
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <limits>
#include <fstream>
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh.hh"
#include "structural_mechanics_model.hh"
#include "material.hh"
/* -------------------------------------------------------------------------- */
#define TYPE _bernoulli_beam_2
using namespace akantu;
-#ifdef AKANTU_USE_IOHELPER
-# include "io_helper.hh"
-
-
-static void paraviewInit(iohelper::Dumper & dumper, const StructuralMechanicsModel & model);
-static void paraviewDump(iohelper::Dumper & dumper);
-#endif
-
//Linear load function
static void lin_load(double * position, double * load,
__attribute__ ((unused)) Real * normal, __attribute__ ((unused)) UInt surface_id){
memset(load,0,sizeof(Real)*3);
if (position[0]<=10){
load[1]= -6000;
}
}
int main(int argc, char *argv[]){
-
initialize(argc, argv);
Mesh beams(2);
debug::setDebugLevel(dblWarning);
/* -------------------------------------------------------------------------- */
// Defining the mesh
-
- UInt nb_nodes=401;
- UInt nb_nodes_1=200;
+ UInt nb_nodes=3;
+ UInt nb_nodes_1=1;
UInt nb_nodes_2=nb_nodes-nb_nodes_1 - 1;
UInt nb_element=nb_nodes-1;
Vector<Real> & nodes = const_cast<Vector<Real> &>(beams.getNodes());
nodes.resize(nb_nodes);
beams.addConnectivityType(_bernoulli_beam_2);
Vector<UInt> & connectivity = const_cast<Vector<UInt> &>(beams.getConnectivity(_bernoulli_beam_2));
connectivity.resize(nb_element);
for(UInt i=0; i<nb_nodes; ++i) {
nodes(i,1)=0;
}
for (UInt i = 0; i < nb_nodes_1; ++i) {
nodes(i,0)=10.*i/((Real)nb_nodes_1);
}
nodes(nb_nodes_1,0)=10;
for (UInt i = 0; i < nb_nodes_2; ++i) {
nodes(nb_nodes_1 + i + 1,0)=10+ 8.*(i+1)/((Real)nb_nodes_2);
}
for(UInt i=0; i<nb_element; ++i) {
connectivity(i,0)=i;
connectivity(i,1)=i+1;
}
- akantu::MeshIOMSH mesh_io;
- mesh_io.write("b_beam_2.msh", beams);
/* -------------------------------------------------------------------------- */
// Defining the materials
-
-
// akantu::ElementType type = akantu::_bernoulli_beam_2;
- akantu::StructuralMechanicsModel * model;
-
- model = new akantu::StructuralMechanicsModel(beams);
+ akantu::StructuralMechanicsModel model(beams);
StructuralMaterial mat1;
mat1.E=3e10;
mat1.I=0.0025;
mat1.A=0.01;
-
- model->addMaterial(mat1);
+ model.addMaterial(mat1);
StructuralMaterial mat2 ;
mat2.E=3e10;
mat2.I=0.00128;
mat2.A=0.01;
- model->addMaterial(mat2);
+ model.addMaterial(mat2);
/* -------------------------------------------------------------------------- */
// Defining the forces
-
- model->initModel();
-
- model->initVectors();
+ model.initFull();
const Real M = -3600; // Momentum at 3
- Vector<Real> & forces = model->getForce();
- Vector<Real> & displacement = model->getDisplacement();
- Vector<bool> & boundary = model->getBoundary();
- const Vector<Real> & N_M = model->getStress(_bernoulli_beam_2);
+ Vector<Real> & forces = model.getForce();
+ Vector<Real> & displacement = model.getDisplacement();
+ Vector<bool> & boundary = model.getBoundary();
+ const Vector<Real> & N_M = model.getStress(_bernoulli_beam_2);
- Vector<UInt> & element_material = model->getElementMaterial(_bernoulli_beam_2);
+ Vector<UInt> & element_material = model.getElementMaterial(_bernoulli_beam_2);
forces.clear();
displacement.clear();
for (UInt i = 0; i < nb_nodes_2; ++i) {
element_material(i+nb_nodes_1)=1;
-}
+ }
forces(nb_nodes-1,2) += M;
- model->computeForcesFromFunction(lin_load, akantu::_bft_traction);
+ model.computeForcesFromFunction<_bernoulli_beam_2>(lin_load, akantu::_bft_traction);
/* -------------------------------------------------------------------------- */
// Defining the boundary conditions
boundary(0,0) = true;
boundary(0,1) = true;
boundary(0,2) = true;
boundary(nb_nodes_1,1) = true;
boundary(nb_nodes-1,1) = true;
/* -------------------------------------------------------------------------- */
// Solve
-
- model->initImplicitSolver();
-
Real error;
- model->assembleStiffnessMatrix();
- model->getStiffnessMatrix().saveMatrix("Kb.mtx");
+ model.assembleStiffnessMatrix();
+ model.getStiffnessMatrix().saveMatrix("Kb.mtx");
UInt count = 0;
-#ifdef AKANTU_USE_IOHELPER
- iohelper::DumperParaview dumper;
- paraviewInit(dumper, *model);
-#endif
+ model.addDumpField("displacememt");
+ model.addDumpField("rotation");
+ model.addDumpField("force");
+ model.addDumpField("momentum");
do {
if(count != 0) std::cerr << count << " - " << error << std::endl;
- model->updateResidual();
- model->solve();
+ model.updateResidual();
+ model.solve();
count++;
- } while (!model->testConvergenceIncrement(1e-10, error) && count < 10);
+ } while (!model.testConvergenceIncrement(1e-10, error) && count < 10);
std::cerr << count << " - " << error << std::endl;
/* -------------------------------------------------------------------------- */
// Post-Processing
- model->computeStressOnQuad();
+ model.computeStresses();
- model->getStiffnessMatrix().saveMatrix("Ka.mtx");
+ model.getStiffnessMatrix().saveMatrix("Ka.mtx");
std::cout<< " d1 = " << displacement(nb_nodes_1,2) << std::endl;
std::cout<< " d2 = " << displacement(nb_nodes-1,2) << std::endl;
std::cout<< " M1 = " << N_M(0,1) << std::endl;
std::cout<< " M2 = " << N_M(2*(nb_nodes-2),1) << std::endl;
+ // model.dump();
-#ifdef AKANTU_USE_IOHELPER
- paraviewDump(dumper);
-#endif
+ finalize();
}
-
-
-
-/* -------------------------------------------------------------------------- */
-/* iohelper::Dumper vars */
-/* -------------------------------------------------------------------------- */
-
-#ifdef AKANTU_USE_IOHELPER
-
-/* -------------------------------------------------------------------------- */
-// template <ElementType type> static iohelper::ElemType paraviewType();
-// template <> iohelper::ElemType paraviewType<_segment_2>() { return iohelper::LINE1; }
-// template <> iohelper::ElemType paraviewType<_segment_3>() { return iohelper::LINE2; }
-// template <> iohelper::ElemType paraviewType<_triangle_3>() { return iohelper::TRIANGLE1; }
-// template <> iohelper::ElemType paraviewType<_triangle_6>() { return iohelper::TRIANGLE2; }
-// template <> iohelper::ElemType paraviewType<_quadrangle_4>() { return iohelper::QUAD1; }
-// template <> iohelper::ElemType paraviewType<_tetrahedron_4>() { return iohelper::TETRA1; }
-// template <> iohelper::ElemType paraviewType<_tetrahedron_10>() { return iohelper::TETRA2; }
-// template <> iohelper::ElemType paraviewType<_hexahedron_8>() { return iohelper::HEX1; }
-// template <> iohelper::ElemType paraviewType<_bernoulli_beam_2>(){ return iohelper::BEAM2; }
-/* -------------------------------------------------------------------------- */
-void paraviewInit(iohelper::Dumper & dumper, const StructuralMechanicsModel & model) {
- // UInt spatial_dimension = ElementClass<TYPE>::getSpatialDimension();
- // UInt nb_nodes = model.getFEM().getMesh().getNbNodes();
- // UInt nb_element = model.getFEM().getMesh().getNbElement(TYPE);
-
- // std::stringstream filename; filename << "beam";
-
-#pragma message "To change with new dumper"
- // dumper.SetMode(iohelper::TEXT);
- // dumper.SetPoints(model.getFEM().getMesh().getNodes().values,
- // spatial_dimension, nb_nodes, filename.str().c_str());
- // dumper.SetConnectivity((int *)model.getFEM().getMesh().getConnectivity(TYPE).values,
- // paraviewType<TYPE>(), nb_element, iohelper::C_MODE);
- // dumper.AddNodeDataField(model.getDisplacement().values,
- // 3, "displacements");
- // dumper.AddNodeDataField(model.getForce().values,
- // 3, "applied_force");
- // dumper.AddElemDataField(model.getStress(_bernoulli_beam_2).values,
- // 2, "stress");
- // dumper.SetPrefix("paraview/");
- // dumper.Init();
- // dumper.Dump();
-}
-
-/* -------------------------------------------------------------------------- */
-void paraviewDump(iohelper::Dumper & dumper) {
- // dumper.Dump();
-}
-
-/* -------------------------------------------------------------------------- */
-
-#endif
diff --git a/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1_y.cc b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1_y.cc
new file mode 100644
index 000000000..7a7d960f1
--- /dev/null
+++ b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1_y.cc
@@ -0,0 +1,176 @@
+/**
+ * @file test_structural_mechanics_model_bernoulli_beam_2_exemple_1_1_y.cc
+ * @author Fabian Barras <fabian.barras@epfl.ch>
+ * @date Wed Nov 16 18:44:45 2011
+ *
+ * @brief
+ *
+ * @section LICENSE
+ *
+ * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
+ * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
+ *
+ * Akantu is free software: you can 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 3 of the License, or (at your option) any
+ * later version.
+ *
+ * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+/* -------------------------------------------------------------------------- */
+#include <limits>
+#include <fstream>
+
+/* -------------------------------------------------------------------------- */
+#include "aka_common.hh"
+#include "mesh.hh"
+#include "mesh_io.hh"
+#include "mesh_io_msh.hh"
+#include "structural_mechanics_model.hh"
+#include "material.hh"
+/* -------------------------------------------------------------------------- */
+
+#define TYPE _bernoulli_beam_2
+
+using namespace akantu;
+
+//Linear load function
+static void lin_load(double * position, double * load,
+ __attribute__ ((unused)) Real * normal, __attribute__ ((unused)) UInt surface_id){
+ memset(load,0,sizeof(Real)*3);
+ if (position[1]<=10){
+ load[0]= 6000;
+ }
+}
+
+int main(int argc, char *argv[]){
+ initialize(argc, argv);
+ Mesh beams(2);
+ debug::setDebugLevel(dblWarning);
+
+ /* -------------------------------------------------------------------------- */
+ // Defining the mesh
+
+ UInt nb_nodes=3;
+ UInt nb_nodes_1=1;
+ UInt nb_nodes_2=nb_nodes-nb_nodes_1 - 1;
+ UInt nb_element=nb_nodes-1;
+
+ Vector<Real> & nodes = const_cast<Vector<Real> &>(beams.getNodes());
+ nodes.resize(nb_nodes);
+
+ beams.addConnectivityType(_bernoulli_beam_2);
+ Vector<UInt> & connectivity = const_cast<Vector<UInt> &>(beams.getConnectivity(_bernoulli_beam_2));
+ connectivity.resize(nb_element);
+
+ for(UInt i=0; i<nb_nodes; ++i) {
+ nodes(i,0)=0;
+ }
+ for (UInt i = 0; i < nb_nodes_1; ++i) {
+ nodes(i,1)=10.*i/((Real)nb_nodes_1);
+
+ }
+ nodes(nb_nodes_1,1)=10;
+
+ for (UInt i = 0; i < nb_nodes_2; ++i) {
+ nodes(nb_nodes_1 + i + 1,1)=10+ 8.*(i+1)/((Real)nb_nodes_2);
+
+ }
+
+ for(UInt i=0; i<nb_element; ++i) {
+
+ connectivity(i,0)=i;
+ connectivity(i,1)=i+1;
+ }
+ akantu::MeshIOMSH mesh_io;
+ mesh_io.write("b_beam_2.msh", beams);
+
+ /* -------------------------------------------------------------------------- */
+ // Defining the materials
+ akantu::StructuralMechanicsModel model(beams);
+
+ StructuralMaterial mat1;
+ mat1.E=3e10;
+ mat1.I=0.0025;
+ mat1.A=0.01;
+
+ model.addMaterial(mat1);
+
+ StructuralMaterial mat2 ;
+ mat2.E=3e10;
+ mat2.I=0.00128;
+ mat2.A=0.01;
+
+ model.addMaterial(mat2);
+
+ /* -------------------------------------------------------------------------- */
+ // Defining the forces
+ model.initFull();
+
+ const Real M = -3600; // Momentum at 3
+
+ Vector<Real> & forces = model.getForce();
+ Vector<Real> & displacement = model.getDisplacement();
+ Vector<bool> & boundary = model.getBoundary();
+ const Vector<Real> & N_M = model.getStress(_bernoulli_beam_2);
+
+ Vector<UInt> & element_material = model.getElementMaterial(_bernoulli_beam_2);
+
+ for (UInt i = 0; i < nb_nodes_2; ++i) {
+ element_material(i+nb_nodes_1)=1;
+ }
+
+
+ forces(nb_nodes-1,2) += M;
+ model.computeForcesFromFunction<_bernoulli_beam_2>(lin_load, akantu::_bft_traction);
+
+ /* -------------------------------------------------------------------------- */
+ // Defining the boundary conditions
+ boundary(0,0) = true;
+ boundary(0,1) = true;
+ boundary(0,2) = true;
+ boundary(nb_nodes_1,0) = true;
+ boundary(nb_nodes-1,0) = true;
+
+ /* -------------------------------------------------------------------------- */
+ // Solve
+ Real error;
+
+ model.assembleStiffnessMatrix();
+ model.getStiffnessMatrix().saveMatrix("Kb.mtx");
+ UInt count = 0;
+
+ model.addDumpField("displacememt");
+ model.addDumpField("rotation");
+ model.addDumpField("force");
+ model.addDumpField("momentum");
+
+ do {
+ if(count != 0) std::cerr << count << " - " << error << std::endl;
+ model.updateResidual();
+ model.solve();
+ count++;
+ } while (!model.testConvergenceIncrement(1e-10, error) && count < 10);
+ std::cerr << count << " - " << error << std::endl;
+
+ /* -------------------------------------------------------------------------- */
+ // Post-Processing
+
+ model.computeStresses();
+
+ model.getStiffnessMatrix().saveMatrix("Ka.mtx");
+ std::cout<< " d1 = " << displacement(nb_nodes_1,2) << std::endl;
+ std::cout<< " d2 = " << displacement(nb_nodes-1,2) << std::endl;
+ std::cout<< " M1 = " << N_M(0,1) << std::endl;
+ std::cout<< " M2 = " << N_M(2*(nb_nodes-2),1) << std::endl;
+
+ model.dump();
+}
diff --git a/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_3_exemple_1_1_xy.cc b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_3_exemple_1_1_xy.cc
new file mode 100644
index 000000000..8113bc7ef
--- /dev/null
+++ b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_3_exemple_1_1_xy.cc
@@ -0,0 +1,192 @@
+/**
+ * @file test_structural_mechanics_model_bernoulli_beam_3_exemple_1_1_xy.cc
+ * @author Fabian Barras <fabian.barras@epfl.ch>
+ * @date Fri Nov 11 17:14:10 2011
+ *
+ * @brief
+ *
+ * @section LICENSE
+ *
+ * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
+ * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
+ *
+ * Akantu is free software: you can 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 3 of the License, or (at your option) any
+ * later version.
+ *
+ * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+/* -------------------------------------------------------------------------- */
+#include <limits>
+#include <fstream>
+
+/* -------------------------------------------------------------------------- */
+#include "aka_common.hh"
+#include "mesh.hh"
+#include "mesh_io.hh"
+#include "mesh_io_msh.hh"
+#include "structural_mechanics_model.hh"
+#include "material.hh"
+/* -------------------------------------------------------------------------- */
+
+#define TYPE _bernoulli_beam_3
+
+using namespace akantu;
+
+//Linear load function
+static void lin_load(double * position, double * load,
+ __attribute__ ((unused)) Real * normal, __attribute__ ((unused)) UInt surface_id){
+ memset(load,0,sizeof(Real)*3);
+ if (position[0]<=10){
+ load[1]= -6000;
+ }
+}
+
+int main(int argc, char *argv[]){
+ initialize(argc, argv);
+ Mesh beams(3);
+ debug::setDebugLevel(dblWarning);
+ std::cout<<"Initialisation"<<std::endl;
+
+ /* -------------------------------------------------------------------------- */
+ // Defining the mesh
+
+ UInt nb_nodes=3;
+ UInt nb_nodes_1=1;
+ UInt nb_nodes_2=nb_nodes-nb_nodes_1 - 1;
+ UInt nb_element=nb_nodes-1;
+
+ Vector<Real> & nodes = const_cast<Vector<Real> &>(beams.getNodes());
+ nodes.resize(nb_nodes);
+
+ beams.addConnectivityType(_bernoulli_beam_3);
+ Vector<UInt> & connectivity = const_cast<Vector<UInt> &>(beams.getConnectivity(_bernoulli_beam_3));
+
+ connectivity.resize(nb_element);
+
+ beams.initNormals();
+
+ Vector<Real> & normals = const_cast<Vector<Real> &>(beams.getNormals(_bernoulli_beam_3));
+ normals.resize(nb_element);
+
+ for(UInt i=0; i<nb_nodes; ++i) {
+ nodes(i,1)=0;
+ nodes(i,2)=0;
+ }
+ for (UInt i = 0; i < nb_nodes_1; ++i) {
+ nodes(i,0)=10.*i/((Real)nb_nodes_1);
+ }
+
+ nodes(nb_nodes_1,0) = 10;
+ for (UInt i = 0; i < nb_nodes_2; ++i) {
+ nodes(nb_nodes_1 + i + 1,0)=10+ 8.*(i+1)/((Real)nb_nodes_2);
+ }
+
+ for(UInt i=0; i<nb_element; ++i) {
+ connectivity(i,0)=i;
+ connectivity(i,1)=i+1;
+
+ normals(i,0)=0;
+ normals(i,1)=0;
+ normals(i,2)=1;
+ }
+
+ akantu::MeshIOMSH mesh_io;
+ mesh_io.write("b_beam_3.msh", beams);
+ std::cout<<"Mesh definition"<<std::endl;
+
+ /* -------------------------------------------------------------------------- */
+ // Defining the materials
+ akantu::StructuralMechanicsModel model(beams);
+
+ StructuralMaterial mat1;
+ mat1.E=3e10;
+ mat1.Iz=0.0025;
+ mat1.A=0.01;
+ mat1.Iy=0.00128;
+ mat1.GJ=0.00128;
+
+ model.addMaterial(mat1);
+
+ StructuralMaterial mat2 ;
+ mat2.E=3e10;
+ mat2.Iz=0.00128;
+ mat2.A=0.01;
+ mat2.Iy=0.0025;
+ mat2.GJ=0.0025;
+
+ model.addMaterial(mat2);
+ std::cout<<"Material Definition"<<std::endl;
+ /* -------------------------------------------------------------------------- */
+ // Defining the forces
+
+ model.initFull();
+
+ const Real M = -3600; // Momentum at 3
+
+ Vector<Real> & forces = model.getForce();
+ Vector<Real> & displacement = model.getDisplacement();
+ Vector<bool> & boundary = model.getBoundary();
+ const Vector<Real> & N_M = model.getStress(_bernoulli_beam_3);
+
+ Vector<UInt> & element_material = model.getElementMaterial(_bernoulli_beam_3);
+
+ for (UInt i = 0; i < nb_nodes_2; ++i) {
+ element_material(i+nb_nodes_1)=1;
+ }
+
+ forces(nb_nodes-1,5) += M;
+
+ model.computeForcesFromFunction<_bernoulli_beam_3>(lin_load, akantu::_bft_traction);
+ std::cout<<"Force Definition"<<std::endl;
+
+ /* -------------------------------------------------------------------------- */
+ // Defining the boundary conditions
+ boundary(0,0) = true;
+ boundary(0,1) = true;
+ boundary(0,2) = true;
+ boundary(0,3) = true;
+ boundary(0,4) = true;
+ boundary(0,5) = true;
+ boundary(nb_nodes_1,1) = true;
+ boundary(nb_nodes-1,1) = true;
+ std::cout<<"BC Definition"<<std::endl;
+
+ /* -------------------------------------------------------------------------- */
+ // Solve
+ Real error;
+
+ model.assembleStiffnessMatrix();
+ std::cout<<"Assemble Done"<<std::endl;
+ model.getStiffnessMatrix().saveMatrix("Kbx.mtx");
+ UInt count = 0;
+ std::cout<<"Matrix saved"<<std::endl;
+
+ do {
+ if(count != 0) std::cerr << count << " - " << error << std::endl;
+ model.updateResidual();
+ model.solve();
+ count++;
+ } while (!model.testConvergenceIncrement(1e-10, error) && count < 10);
+ std::cerr << count << " - " << error << std::endl;
+
+ /* -------------------------------------------------------------------------- */
+ // Post-Processing
+ model.computeStresses();
+
+ model.getStiffnessMatrix().saveMatrix("Kax.mtx");
+ std::cout<< " d1 = " << displacement(nb_nodes_1,5) << std::endl;
+ std::cout<< " d2 = " << displacement(nb_nodes-1,5) << std::endl;
+ std::cout<< " M1 = " << N_M(0,1) << std::endl;
+ std::cout<< " M2 = " << N_M(2*(nb_nodes-2),1) << std::endl;
+}
+
diff --git a/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_3_exemple_1_1_zy.cc b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_3_exemple_1_1_zy.cc
new file mode 100644
index 000000000..25a3d984f
--- /dev/null
+++ b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_3_exemple_1_1_zy.cc
@@ -0,0 +1,203 @@
+/**
+ * @file test_structural_mechanics_model_bernoulli_beam_3_exemple_1_1_zy.cc
+ * @author Fabian Barras <fabian.barras@epfl.ch>
+ * @date Tue Nov 15 11:58:23 2011
+ *
+ * @brief
+ *
+ * @section LICENSE
+ *
+ * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
+ * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
+ *
+ * Akantu is free software: you can 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 3 of the License, or (at your option) any
+ * later version.
+ *
+ * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+/* -------------------------------------------------------------------------- */
+#include <limits>
+#include <fstream>
+
+/* -------------------------------------------------------------------------- */
+#include "aka_common.hh"
+#include "mesh.hh"
+#include "mesh_io.hh"
+#include "mesh_io_msh.hh"
+#include "structural_mechanics_model.hh"
+#include "material.hh"
+/* -------------------------------------------------------------------------- */
+
+#define TYPE _bernoulli_beam_3
+
+using namespace akantu;
+
+//Linear load function
+static void lin_load(double * position, double * load,
+ __attribute__ ((unused)) Real * normal, __attribute__ ((unused)) UInt surface_id){
+ memset(load,0,sizeof(Real)*3);
+ if (position[2]<=10){
+ load[1]= 6000;
+ }
+}
+
+int main(int argc, char *argv[]){
+ initialize(argc, argv);
+ Mesh beams(3);
+ debug::setDebugLevel(dblWarning);
+ std::cout<<"Initialisation"<<std::endl;
+ /* -------------------------------------------------------------------------- */
+ // Defining the mesh
+
+ UInt nb_nodes=3;
+ UInt nb_nodes_1=1;
+ UInt nb_nodes_2=nb_nodes-nb_nodes_1 - 1;
+ UInt nb_element=nb_nodes-1;
+
+ Vector<Real> & nodes = const_cast<Vector<Real> &>(beams.getNodes());
+ nodes.resize(nb_nodes);
+
+ beams.addConnectivityType(_bernoulli_beam_3);
+ Vector<UInt> & connectivity = const_cast<Vector<UInt> &>(beams.getConnectivity(_bernoulli_beam_3));
+ connectivity.resize(nb_element);
+
+ beams.initNormals();
+
+ Vector<Real> & normals = const_cast<Vector<Real> &>(beams.getNormals(_bernoulli_beam_3));
+ normals.resize(nb_element);
+
+ for(UInt i=0; i<nb_nodes; ++i) {
+ nodes(i,1)=0;
+ nodes(i,0)=0;
+ }
+ for (UInt i = 0; i < nb_nodes_1; ++i) {
+ nodes(i,2)=10.*i/((Real)nb_nodes_1);
+
+ }
+ nodes(nb_nodes_1,2)=10;
+
+ for (UInt i = 0; i < nb_nodes_2; ++i) {
+ nodes(nb_nodes_1 + i + 1,2)=10+ 8.*(i+1)/((Real)nb_nodes_2);
+
+ }
+
+ for(UInt i=0; i<nb_element; ++i) {
+
+ connectivity(i,0)=i;
+ connectivity(i,1)=i+1;
+
+ normals(i,0)=1;
+ normals(i,1)=0;
+ normals(i,2)=0;
+ }
+
+ akantu::MeshIOMSH mesh_io;
+ mesh_io.write("b_beam_3.msh", beams);
+ std::cout<<"Mesh definition"<<std::endl;
+ /* -------------------------------------------------------------------------- */
+ // Defining the materials
+
+
+ akantu::StructuralMechanicsModel model(beams);
+
+ StructuralMaterial mat1;
+ mat1.E=3e10;
+ mat1.Iz=0.0025;
+ mat1.A=0.01;
+ mat1.Iy=0.00128;
+ mat1.GJ=0.00128;
+
+
+ model.addMaterial(mat1);
+
+ StructuralMaterial mat2 ;
+ mat2.E=3e10;
+ mat2.Iz=0.00128;
+ mat2.A=0.01;
+ mat2.Iy=0.0025;
+ mat2.GJ=0.0025;
+
+ model.addMaterial(mat2);
+ std::cout<<"Material Definition"<<std::endl;
+ /* -------------------------------------------------------------------------- */
+ // Defining the forces
+ model.initFull();
+
+ const Real M = -3600; // Momentum at 3
+
+ Vector<Real> & forces = model.getForce();
+ Vector<Real> & displacement = model.getDisplacement();
+ Vector<bool> & boundary = model.getBoundary();
+ const Vector<Real> & N_M = model.getStress(_bernoulli_beam_3);
+
+ Vector<UInt> & element_material = model.getElementMaterial(_bernoulli_beam_3);
+
+ forces.clear();
+ displacement.clear();
+
+ for (UInt i = 0; i < nb_nodes_2; ++i) {
+ element_material(i+nb_nodes_1)=1;
+}
+
+
+ forces(nb_nodes-1,3) += M;
+
+ model.computeForcesFromFunction<_bernoulli_beam_3>(lin_load, akantu::_bft_traction);
+ std::cout<<"Force Definition"<<std::endl;
+ /* -------------------------------------------------------------------------- */
+ // Defining the boundary conditions
+
+ boundary(0,0) = true;
+ boundary(0,1) = true;
+ boundary(0,2) = true;
+ boundary(0,3) = true;
+ boundary(0,4) = true;
+ boundary(0,5) = true;
+ boundary(nb_nodes_1,1) = true;
+ boundary(nb_nodes-1,1) = true;
+ std::cout<<"BC Definition"<<std::endl;
+ /* -------------------------------------------------------------------------- */
+ // Solve
+ Real error;
+
+ model.assembleStiffnessMatrix();
+ std::cout<<"Assemble Done"<<std::endl;
+ model.getStiffnessMatrix().saveMatrix("Kbz.mtx");
+ UInt count = 0;
+ std::cout<<"Matrix saved"<<std::endl;
+
+ model.addDumpField("displacememt");
+ model.addDumpField("rotation");
+ model.addDumpField("force");
+ model.addDumpField("momentum");
+
+ do {
+ if(count != 0) std::cerr << count << " - " << error << std::endl;
+ model.updateResidual();
+ model.solve();
+ count++;
+ } while (!model.testConvergenceIncrement(1e-10, error) && count < 10);
+ std::cerr << count << " - " << error << std::endl;
+
+ /* -------------------------------------------------------------------------- */
+ // Post-Processing
+ model.computeStresses();
+
+ model.getStiffnessMatrix().saveMatrix("Kaz.mtx");
+ std::cout<< " d1 = " << displacement(nb_nodes_1,3) << std::endl;
+ std::cout<< " d2 = " << displacement(nb_nodes-1,3) << std::endl;
+ std::cout<< " M1 = " << N_M(0,1) << std::endl;
+ std::cout<< " M2 = " << N_M(2*(nb_nodes-2),1) << std::endl;
+
+ model.dump();
+}
diff --git a/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_3_exercice_12_10_13.cc b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_3_exercice_12_10_13.cc
new file mode 100644
index 000000000..72e737dd6
--- /dev/null
+++ b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_3_exercice_12_10_13.cc
@@ -0,0 +1,180 @@
+/**
+ * @file test_structural_mechanics_model_bernoulli_beam_3_exercice_12_10_13.cc
+ * @author Fabian Barras <fabian.barras@epfl.ch>
+ * @date Tue Nov 29 09:26:39 2011
+ *
+ * @brief
+ *
+ * @section LICENSE
+ *
+ * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
+ * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
+ *
+ * Akantu is free software: you can 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 3 of the License, or (at your option) any
+ * later version.
+ *
+ * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+/* -------------------------------------------------------------------------- */
+#include <limits>
+#include <fstream>
+
+/* -------------------------------------------------------------------------- */
+#include "aka_common.hh"
+#include "mesh.hh"
+#include "mesh_io.hh"
+#include "mesh_io_msh.hh"
+#include "structural_mechanics_model.hh"
+#include "material.hh"
+/* -------------------------------------------------------------------------- */
+
+#define TYPE _bernoulli_beam_3
+
+using namespace akantu;
+
+//Linear load function
+static void lin_load(double * position, double * load,
+ __attribute__ ((unused)) Real * normal, __attribute__ ((unused)) UInt surface_id){
+ memset(load,0,sizeof(Real)*6);
+ if (position[0]==1){
+ load[2]= -60.;
+ }
+}
+
+int main(int argc, char *argv[]){
+ initialize(argc, argv);
+ Mesh beams(3);
+ debug::setDebugLevel(dblWarning);
+ std::cout<<"Initialisation"<<std::endl;
+ /* -------------------------------------------------------------------------- */
+ // Defining the mesh
+
+ UInt nb_nodes=4;
+ UInt nb_element=nb_nodes-1;
+
+ Vector<Real> & nodes = const_cast<Vector<Real> &>(beams.getNodes());
+ nodes.resize(nb_nodes);
+
+ beams.addConnectivityType(_bernoulli_beam_3);
+ Vector<UInt> & connectivity = const_cast<Vector<UInt> &>(beams.getConnectivity(_bernoulli_beam_3));
+
+ connectivity.resize(nb_element);
+
+ beams.initNormals();
+
+ Vector<Real> & normals = const_cast<Vector<Real> &>(beams.getNormals(_bernoulli_beam_3));
+ normals.resize(nb_element);
+
+ nodes(0,0)=0.;
+ nodes(0,1)=0.;
+ nodes(0,2)=0.;
+
+ nodes(1,0)=0.;
+ nodes(1,1)=0.5;
+ nodes(1,2)=0.;
+
+ nodes(2,0)=1.;
+ nodes(2,1)=0.5;
+ nodes(2,2)=0.;
+
+ nodes(3,0)=1.;
+ nodes(3,1)=0.;
+ nodes(3,2)=0.;
+
+ for (UInt i=0; i<nb_element; ++i) {
+
+ connectivity(i,0)=i;
+ connectivity(i,1)=i+1;
+
+ normals(i,0)=0.;
+ normals(i,1)=0.;
+ normals(i,2)=1.;
+ }
+
+ akantu::MeshIOMSH mesh_io;
+ mesh_io.write("b_beam_3_12_10_13.msh", beams);
+ std::cout<<"Mesh definition"<<std::endl;
+ /* -------------------------------------------------------------------------- */
+ // Defining the materials
+
+
+ akantu::StructuralMechanicsModel model(beams);
+
+ StructuralMaterial mat1;
+ mat1.E=2.05e11;
+ mat1.Iz=2.8e-9;
+ mat1.A=1.33e-4;
+ mat1.Iy=2.8e-9;
+ mat1.GJ=220.77;
+
+ model.addMaterial(mat1);
+
+ std::cout<<"Material Definition"<<std::endl;
+ /* -------------------------------------------------------------------------- */
+ // Defining the forces
+
+ model.initFull();
+
+ Vector<Real> & displacement = model.getDisplacement();
+ Vector<bool> & boundary = model.getBoundary();
+
+ model.computeForcesFromFunction<_bernoulli_beam_3>(lin_load, akantu::_bft_traction);
+ std::cout<<"Force Definition"<<std::endl;
+ //forces(1,2)=-15;
+ //forces(0,2)=-15;
+ //forces(0,3)=-1.25;
+ //forces(1,4)=1.25;
+ /* -------------------------------------------------------------------------- */
+ // Defining the boundary conditions
+
+ boundary(0,0) = true;
+ boundary(0,1) = true;
+ boundary(0,2) = true;
+ boundary(0,3) = true;
+ boundary(0,4) = true;
+ boundary(0,5) = true;
+ std::cout<<"BC Definition"<<std::endl;
+ /* -------------------------------------------------------------------------- */
+ // Solve
+ Real error;
+
+ model.assembleStiffnessMatrix();
+ std::cout<<"Assemble Done"<<std::endl;
+ model.getStiffnessMatrix().saveMatrix("Kbx.mtx");
+ UInt count = 0;
+ std::cout<<"Matrix saved"<<std::endl;
+
+ model.addDumpField("displacememt");
+ model.addDumpField("rotation");
+ model.addDumpField("force");
+ model.addDumpField("momentum");
+
+ do {
+ if(count != 0) std::cerr << count << " - " << error << std::endl;
+ model.updateResidual();
+ model.solve();
+ count++;
+ } while (!model.testConvergenceIncrement(1e-10, error) && count < 10);
+ std::cerr << count << " - " << error << std::endl;
+
+ /* -------------------------------------------------------------------------- */
+ // Post-Processing
+
+ model.computeStresses();
+
+ model.getStiffnessMatrix().saveMatrix("Kax.mtx");
+ std::cout<< " wA = " << displacement(3,2) << std::endl;
+ std::cout<< " TethayB = " << displacement(2,4) << std::endl;
+
+ model.dump();
+}
diff --git a/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_local_force.cc b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_local_force.cc
new file mode 100644
index 000000000..6391a1d60
--- /dev/null
+++ b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_bernoulli_beam_local_force.cc
@@ -0,0 +1,172 @@
+/**
+ * @file test_structural_mechanics_model_bernoulli_beam_local_force.cc
+ * @author Fabian Barras <fabian.barras@epfl.ch>
+ * @date Fri Jan 6 12:31:43 2012
+ *
+ * @brief Test force defined locally
+ *
+ * @section LICENSE
+ *
+ * Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
+ * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
+ *
+ * Akantu is free software: you can 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 3 of the License, or (at your option) any
+ * later version.
+ *
+ * Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Akantu. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+/* -------------------------------------------------------------------------- */
+#include <limits>
+#include <fstream>
+
+/* -------------------------------------------------------------------------- */
+#include "aka_common.hh"
+#include "mesh.hh"
+#include "mesh_io.hh"
+#include "mesh_io_msh.hh"
+#include "structural_mechanics_model.hh"
+#include "material.hh"
+/* -------------------------------------------------------------------------- */
+
+#define TYPE _bernoulli_beam_3
+
+using namespace akantu;
+
+//Linear load function
+static void lin_load(double * position, double * load,
+ __attribute__ ((unused)) Real * normal,
+ __attribute__ ((unused)) UInt surface_id){
+ memset(load,0,sizeof(Real)*6);
+ load[1]= 60.;
+ }
+
+int main(int argc, char *argv[]){
+ initialize(argc, argv);
+ Mesh beams(3);
+ debug::setDebugLevel(dblWarning);
+ std::cout<<"Initialisation"<<std::endl;
+ /* -------------------------------------------------------------------------- */
+ // Defining the mesh
+
+ UInt nb_nodes=3;
+ UInt nb_element=nb_nodes-1;
+
+ Vector<Real> & nodes = const_cast<Vector<Real> &>(beams.getNodes());
+ nodes.resize(nb_nodes);
+
+ beams.addConnectivityType(_bernoulli_beam_3);
+ Vector<UInt> & connectivity = const_cast<Vector<UInt> &>(beams.getConnectivity(_bernoulli_beam_3));
+
+ connectivity.resize(nb_element);
+
+ beams.initNormals();
+
+ Vector<Real> & normals = const_cast<Vector<Real> &>(beams.getNormals(_bernoulli_beam_3));
+ normals.resize(nb_element);
+
+ nodes(0,0)=0.;
+ nodes(0,1)=0.;
+ nodes(0,2)=0.;
+
+ nodes(1,0)=1.;
+ nodes(1,1)=0.;
+ nodes(1,2)=0.;
+
+ nodes(2,0)=1.;
+ nodes(2,1)=1.;
+ nodes(2,2)=0.;
+
+ for (UInt i=0; i<nb_element; ++i) {
+
+ connectivity(i,0)=i;
+ connectivity(i,1)=i+1;
+
+ normals(i,0)=0.;
+ normals(i,1)=0.;
+ normals(i,2)=1.;
+ }
+
+ normals(1,0)=1.;
+ normals(1,1)=0.;
+ normals(1,2)=0.;
+
+ akantu::MeshIOMSH mesh_io;
+ mesh_io.write("beam_local_force.msh", beams);
+ std::cout<<"Mesh definition"<<std::endl;
+ /* -------------------------------------------------------------------------- */
+ // Defining the materials
+
+
+ akantu::StructuralMechanicsModel model(beams);
+
+ StructuralMaterial mat1;
+ mat1.E=2.05e11;
+ mat1.Iz=2.8e-9;
+ mat1.A=1.33e-4;
+ mat1.Iy=2.8e-9;
+ mat1.GJ=220.77;
+
+ model.addMaterial(mat1);
+
+ std::cout<<"Material Definition"<<std::endl;
+ /* -------------------------------------------------------------------------- */
+ // Defining the forces
+
+ model.initFull();
+
+ Vector<bool> & boundary = model.getBoundary();
+
+ model.computeForcesFromFunction<_bernoulli_beam_3>(lin_load, akantu::_bft_stress);
+ std::cout<<"Force Definition"<<std::endl;
+ /* -------------------------------------------------------------------------- */
+ // Defining the boundary conditions
+
+ boundary(0,0) = true;
+ boundary(0,1) = true;
+ boundary(0,2) = true;
+ boundary(0,3) = true;
+ boundary(0,4) = true;
+ boundary(0,5) = true;
+ std::cout<<"BC Definition"<<std::endl;
+ /* -------------------------------------------------------------------------- */
+ // Solve
+ Real error;
+
+ model.assembleStiffnessMatrix();
+ std::cout<<"Assemble Done"<<std::endl;
+ model.getStiffnessMatrix().saveMatrix("Klocb.mtx");
+ UInt count = 0;
+ std::cout<<"Matrix saved"<<std::endl;
+
+ model.addDumpField("displacememt");
+ model.addDumpField("rotation");
+ model.addDumpField("force");
+ model.addDumpField("momentum");
+
+ do {
+ if(count != 0) std::cerr << count << " - " << error << std::endl;
+ model.updateResidual();
+ model.solve();
+ count++;
+ } while (!model.testConvergenceIncrement(1e-10, error) && count < 10);
+ std::cerr << count << " - " << error << std::endl;
+
+ /* -------------------------------------------------------------------------- */
+ // Post-Processing
+
+ model.computeStresses();
+
+ model.getStiffnessMatrix().saveMatrix("Kloca.mtx");
+
+ model.dump();
+}
diff --git a/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_boundary_bernoulli_beam_2.cc b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_boundary_bernoulli_beam_2.cc
index 4114cd2d4..e840e82a4 100644
--- a/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_boundary_bernoulli_beam_2.cc
+++ b/test/test_model/test_structural_mechanics_model/test_structural_mechanics_model_boundary_bernoulli_beam_2.cc
@@ -1,113 +1,102 @@
/**
* @file test_structural_mechanics_model_boundary_bernoulli_beam_2.cc
- *
* @author Fabian Barras <fabian.barras@epfl.ch>
- *
- * @date Fri Jul 15 19:41:58 2011
+ * @date Thu May 26 12:52:54 2011
*
* @brief Test the computation of linear load
*
* @section LICENSE
*
* Copyright (©) 2010-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
* Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides)
*
* Akantu is free software: you can 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 3 of the License, or (at your option) any
* later version.
*
* Akantu is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Akantu. If not, see <http://www.gnu.org/licenses/>.
*
*/
/* -------------------------------------------------------------------------- */
#include <limits>
#include <fstream>
/* -------------------------------------------------------------------------- */
#include "aka_common.hh"
#include "mesh.hh"
#include "mesh_io.hh"
#include "mesh_io_msh.hh"
#include "structural_mechanics_model.hh"
/* -------------------------------------------------------------------------- */
#define TYPE _bernoulli_beam_2
using namespace akantu;
static void lin_load(double * position, double * load,
__attribute__ ((unused)) Real * normal, __attribute__ ((unused)) UInt surface_id){
memset(load,0,sizeof(Real)*3);
//load[1]= (position[0])*200000000;
load[1]= 200000000;
}
int main(int argc, char *argv[]){
-
initialize(argc, argv);
Mesh beams(2);
debug::setDebugLevel(dblWarning);
/* -------------------------------------------------------------------------- */
// Defining the mesh
UInt nb_nodes=2;
UInt nb_element=nb_nodes-1;
UInt nb_nodes_h=2;
UInt nb_nodes_v= nb_nodes-nb_nodes_h;
- Vector<Real> & nodes = const_cast<Vector<Real> &>(beams.getNodes());
- nodes.resize(nb_nodes);
-
- beams.addConnectivityType(_bernoulli_beam_2);
- Vector<UInt> & connectivity = const_cast<Vector<UInt> &>(beams.getConnectivity(_bernoulli_beam_2));
- connectivity.resize(nb_element);
-
- for(UInt i=0; i<nb_nodes_h; ++i) {
-
- nodes(i,0)=2./((Real)nb_nodes_h)*i;
- nodes(i,1)=0;
- }
- for(UInt i=nb_nodes_h; i<nb_nodes; ++i) {
+ Vector<Real> & nodes = const_cast<Vector<Real> &>(beams.getNodes());
+ nodes.resize(nb_nodes);
- nodes(i,0)=2;
- nodes(i,1)=2./((Real)nb_nodes_v)*(i-nb_nodes_h);
- }
+ beams.addConnectivityType(_bernoulli_beam_2);
+ Vector<UInt> & connectivity = const_cast<Vector<UInt> &>(beams.getConnectivity(_bernoulli_beam_2));
+ connectivity.resize(nb_element);
- for(UInt i=0; i<nb_element; ++i) {
+ for(UInt i=0; i<nb_nodes_h; ++i) {
- connectivity(i,0)=i;
- connectivity(i,1)=i+1;
- }
- akantu::MeshIOMSH mesh_io;
- mesh_io.write("b_beam_2.msh", beams);
-
-/* -------------------------------------------------------------------------- */
- // Defining the forces
+ nodes(i,0)=2./((Real)nb_nodes_h)*i;
+ nodes(i,1)=0;
+ }
+ for(UInt i=nb_nodes_h; i<nb_nodes; ++i) {
+ nodes(i,0)=2;
+ nodes(i,1)=2./((Real)nb_nodes_v)*(i-nb_nodes_h);
+ }
- // akantu::ElementType type = akantu::_bernoulli_beam_2;
+ for(UInt i=0; i<nb_element; ++i) {
- akantu::StructuralMechanicsModel * model;
+ connectivity(i,0)=i;
+ connectivity(i,1)=i+1;
+ }
+ akantu::MeshIOMSH mesh_io;
+ mesh_io.write("b_beam_2.msh", beams);
- model = new akantu::StructuralMechanicsModel(beams);
+ akantu::StructuralMechanicsModel model(beams);
- model->initModel();
- model->initVectors();
+ model.initModel();
+ model.initVectors();
- Vector<Real> & forces = model->getForce();
+ Vector<Real> & forces = model.getForce();
forces.clear();
- model->computeForcesFromFunction(lin_load, akantu::_bft_traction);
+ model.computeForcesFromFunction<_bernoulli_beam_2>(lin_load, akantu::_bft_traction);
}

Event Timeline