From 360f2a73d78720629961e27fda4bf56b05ee0434 Mon Sep 17 00:00:00 2001 From: Pierre Alliez Date: Sat, 27 Jun 2009 20:33:46 +0000 Subject: [PATCH] aabb tree: initial qt-based demo --- .gitattributes | 20 + AABB_tree/demo/AABB_demo.cpp | 40 + AABB_tree/demo/AABB_demo.qrc | 8 + AABB_tree/demo/CMakeLists.txt | 99 + AABB_tree/demo/MainWindow.cpp | 146 + AABB_tree/demo/MainWindow.h | 54 + AABB_tree/demo/MainWindow.ui | 80 + AABB_tree/demo/Scene.cpp | 74 + AABB_tree/demo/Scene.h | 58 + AABB_tree/demo/Viewer.cpp | 51 + AABB_tree/demo/Viewer.h | 26 + AABB_tree/demo/Viewer_moc.cpp | 62 + AABB_tree/demo/algorithms.cpp | 19 + AABB_tree/demo/data/anchor.off | 1573 +++++++ AABB_tree/demo/data/couplingdown.off | 5559 ++++++++++++++++++++++++ AABB_tree/demo/normal.h | 45 + AABB_tree/demo/render.h | 66 + AABB_tree/demo/resources/about.html | 30 + AABB_tree/demo/resources/cgal_logo.xpm | 24 + AABB_tree/demo/types.h | 19 + AABB_tree/demo/ui_MainWindow.h | 104 + 21 files changed, 8157 insertions(+) create mode 100644 AABB_tree/demo/AABB_demo.cpp create mode 100644 AABB_tree/demo/AABB_demo.qrc create mode 100644 AABB_tree/demo/CMakeLists.txt create mode 100644 AABB_tree/demo/MainWindow.cpp create mode 100644 AABB_tree/demo/MainWindow.h create mode 100644 AABB_tree/demo/MainWindow.ui create mode 100644 AABB_tree/demo/Scene.cpp create mode 100644 AABB_tree/demo/Scene.h create mode 100644 AABB_tree/demo/Viewer.cpp create mode 100644 AABB_tree/demo/Viewer.h create mode 100644 AABB_tree/demo/Viewer_moc.cpp create mode 100644 AABB_tree/demo/algorithms.cpp create mode 100644 AABB_tree/demo/data/anchor.off create mode 100644 AABB_tree/demo/data/couplingdown.off create mode 100644 AABB_tree/demo/normal.h create mode 100644 AABB_tree/demo/render.h create mode 100644 AABB_tree/demo/resources/about.html create mode 100644 AABB_tree/demo/resources/cgal_logo.xpm create mode 100644 AABB_tree/demo/types.h create mode 100644 AABB_tree/demo/ui_MainWindow.h diff --git a/.gitattributes b/.gitattributes index a095a3a346f..1c053152efc 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,4 +1,24 @@ * text=auto !eol +AABB_tree/demo/AABB_demo.cpp -text +AABB_tree/demo/AABB_demo.qrc -text +AABB_tree/demo/CMakeLists.txt -text +AABB_tree/demo/MainWindow.cpp -text +AABB_tree/demo/MainWindow.h -text +AABB_tree/demo/MainWindow.ui -text +AABB_tree/demo/Scene.cpp -text +AABB_tree/demo/Scene.h -text +AABB_tree/demo/Viewer.cpp -text +AABB_tree/demo/Viewer.h -text +AABB_tree/demo/Viewer_moc.cpp -text +AABB_tree/demo/algorithms.cpp -text +AABB_tree/demo/data/anchor.off -text +AABB_tree/demo/data/couplingdown.off -text +AABB_tree/demo/normal.h -text +AABB_tree/demo/render.h -text +AABB_tree/demo/resources/about.html -text +AABB_tree/demo/resources/cgal_logo.xpm -text +AABB_tree/demo/types.h -text +AABB_tree/demo/ui_MainWindow.h -text AABB_tree/doc_tex/AABB_tree/PkgDescription.tex -text AABB_tree/doc_tex/AABB_tree/anchor.eps -text AABB_tree/doc_tex/AABB_tree/anchor.jpg -text diff --git a/AABB_tree/demo/AABB_demo.cpp b/AABB_tree/demo/AABB_demo.cpp new file mode 100644 index 00000000000..76d05c6bbd3 --- /dev/null +++ b/AABB_tree/demo/AABB_demo.cpp @@ -0,0 +1,40 @@ +#include "MainWindow.h" +#include + +int main(int argc, char **argv) +{ + QApplication app(argc, argv); + app.setOrganizationDomain("inria.fr"); + app.setOrganizationName("INRIA"); + app.setApplicationName("AABB tree demo"); + + // Import resources from libCGALQt4. + // See http://doc.trolltech.com/4.4/qdir.html#Q_INIT_RESOURCE + Q_INIT_RESOURCE(File); + Q_INIT_RESOURCE(Triangulation_2); + Q_INIT_RESOURCE(Input); + Q_INIT_RESOURCE(CGAL); + + MainWindow mainWindow; + mainWindow.show(); + QStringList args = app.arguments(); + args.removeAt(0); + + if(!args.empty() && args[0] == "--use-meta") + { + mainWindow.setAddKeyFrameKeyboardModifiers(::Qt::MetaModifier); + args.removeAt(0); + } + + Q_FOREACH(QString filename, args) { + mainWindow.open(filename); + } + return app.exec(); +} + +# include "Scene.cpp" +# include "Scene_moc.cpp" +# include "Viewer.cpp" +# include "Viewer_moc.cpp" +# include "MainWindow.cpp" +# include "MainWindow_moc.cpp" diff --git a/AABB_tree/demo/AABB_demo.qrc b/AABB_tree/demo/AABB_demo.qrc new file mode 100644 index 00000000000..0d8949e4d5d --- /dev/null +++ b/AABB_tree/demo/AABB_demo.qrc @@ -0,0 +1,8 @@ + + + resources/cgal_logo.xpm + + + resources/about.html + + diff --git a/AABB_tree/demo/CMakeLists.txt b/AABB_tree/demo/CMakeLists.txt new file mode 100644 index 00000000000..13915a54f5e --- /dev/null +++ b/AABB_tree/demo/CMakeLists.txt @@ -0,0 +1,99 @@ +# This is the CMake script for compiling the AABB tree demo. + +project( AABB_demo ) + +cmake_minimum_required(VERSION 2.4.5) + +set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS true) + +if(COMMAND cmake_policy) + cmake_policy(SET CMP0003 NEW) +endif(COMMAND cmake_policy) + +foreach(INCDIR ./include ../../../AABB_tree/include ../../../STL_Extension/include ../../../GraphicsView/include ../../../filtered_kernel/include ) + if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${INCDIR}") + include_directories (BEFORE "${CMAKE_CURRENT_SOURCE_DIR}/${INCDIR}") + endif() +endforeach() + +include_directories( ./ ) + +# Find CGAL and CGAL Qt4 +find_package(CGAL COMPONENTS Qt4) +include( ${CGAL_USE_FILE} ) + +# Find Qt4 itself +set( QT_USE_QTXML TRUE ) +set( QT_USE_QTMAIN TRUE ) +set( QT_USE_QTSCRIPT TRUE ) +set( QT_USE_QTOPENGL TRUE ) +find_package(Qt4) + +# Find OpenGL +find_package(OpenGL) + +# Find QGLViewer +if(QT4_FOUND) + include(${QT_USE_FILE}) + find_package(QGLViewer ) +endif(QT4_FOUND) + +if(CGAL_Qt4_FOUND AND QT4_FOUND AND OPENGL_FOUND AND QGLVIEWER_FOUND) + + include_directories ( ${QGLVIEWER_INCLUDE_DIR} ) + + qt4_wrap_ui( UI_FILES MainWindow.ui ) + + include(AddFileDependencies) + + qt4_generate_moc( "${CMAKE_CURRENT_SOURCE_DIR}/MainWindow.h" MainWindow_moc.cpp ) + add_file_dependencies( MainWindow_moc.cpp "${CMAKE_CURRENT_SOURCE_DIR}/MainWindow.h" ) + + qt4_generate_moc( "${CMAKE_CURRENT_SOURCE_DIR}/Viewer.h" Viewer_moc.cpp ) + add_file_dependencies( Viewer_moc.cpp "${CMAKE_CURRENT_SOURCE_DIR}/Viewer.h" ) + + qt4_generate_moc( "${CMAKE_CURRENT_SOURCE_DIR}/Scene.h" Scene_moc.cpp ) + add_file_dependencies( Scene_moc.cpp "${CMAKE_CURRENT_SOURCE_DIR}/Scene.h" ) + + qt4_add_resources ( RESOURCE_FILES AABB_demo.qrc ) + + add_file_dependencies( AABB_demo.cpp "${CMAKE_CURRENT_BINARY_DIR}/MainWindow_moc.cpp" + "${CMAKE_CURRENT_BINARY_DIR}/Scene_moc.cpp" + "${CMAKE_CURRENT_BINARY_DIR}/Viewer_moc.cpp" ) + add_executable ( AABB_demo AABB_demo.cpp ${UI_FILES} ${RESOURCE_FILES} ) + + # Link with Qt libraries + target_link_libraries( AABB_demo ${QT_LIBRARIES} ) + + # Link with CGAL + target_link_libraries( AABB_demo ${CGAL_LIBRARIES} ${CGAL_3RD_PARTY_LIBRARIES} ) + + # Link with libQGLViewer, OpenGL + target_link_libraries( AABB_demo ${QGLVIEWER_LIBRARIES} ${OPENGL_gl_LIBRARY} ${OPENGL_glu_LIBRARY} ) + + add_to_cached_list( CGAL_EXECUTABLE_TARGETS AABB_demo ) + + +else (CGAL_Qt4_FOUND AND QT4_FOUND AND OPENGL_FOUND AND QGLVIEWER_FOUND) + + set(POLYHEDRON_MISSING_DEPS "") + + if(NOT CGAL_Qt4_FOUND) + set(AABB_MISSING_DEPS "the CGAL Qt4 library, ${POLYHEDRON_MISSING_DEPS}") + endif() + + if(NOT QT4_FOUND) + set(AABB_MISSING_DEPS "Qt4, ${AABB_MISSING_DEPS}") + endif() + + if(NOT OPENGL_FOUND) + set(AABB_MISSING_DEPS "OpenGL, ${AABB_MISSING_DEPS}") + endif() + + if(NOT QGLVIEWER_FOUND) + set(AABB_MISSING_DEPS "QGLViewer, ${AABB_MISSING_DEPS}") + endif() + + message(STATUS "NOTICE: This demo requires ${AABB_MISSING_DEPS}and will not be compiled.") + +endif (CGAL_Qt4_FOUND AND QT4_FOUND AND OPENGL_FOUND AND QGLVIEWER_FOUND) diff --git a/AABB_tree/demo/MainWindow.cpp b/AABB_tree/demo/MainWindow.cpp new file mode 100644 index 00000000000..d2892365e8d --- /dev/null +++ b/AABB_tree/demo/MainWindow.cpp @@ -0,0 +1,146 @@ +#include "MainWindow.h" +#include "Scene.h" +#include + +#include +#include +#include +#include +#include +#include +#include + +#include "ui_MainWindow.h" + +MainWindow::MainWindow(QWidget* parent) + : CGAL::Qt::DemosMainWindow(parent) +{ + ui = new Ui::MainWindow; + ui->setupUi(this); + + // Save some pointers from ui, for latter use. + m_pViewer = ui->viewer; + + // do not save the state of the viewer (anoying) + m_pViewer->setStateFileName(QString::null); + + // accept drop events + setAcceptDrops(true); + + // setup scene + m_pScene = new Scene; + m_pViewer->setScene(m_pScene); + + // Connect actionQuit (Ctrl+Q) and qApp->quit() + connect(ui->actionQuit, SIGNAL(triggered()), + this, SLOT(quit())); + + this->addRecentFiles(ui->menuFile, ui->actionQuit); + connect(this, SIGNAL(openRecentFile(QString)), + this, SLOT(open(QString))); + + readSettings(); // Among other things, the column widths are stored. +} + +MainWindow::~MainWindow() +{ + delete ui; +} + +void MainWindow::dragEnterEvent(QDragEnterEvent *event) +{ + if (event->mimeData()->hasFormat("text/uri-list")) + event->acceptProposedAction(); +} + +void MainWindow::dropEvent(QDropEvent *event) +{ + Q_FOREACH(QUrl url, event->mimeData()->urls()) { + QString filename = url.toLocalFile(); + if(!filename.isEmpty()) { + QTextStream(stderr) << QString("dropEvent(\"%1\")\n").arg(filename); + open(filename); + } + } + event->acceptProposedAction(); +} + +void MainWindow::updateViewerBBox() +{ + const Scene::Bbox bbox = m_pScene->bbox(); + const double xmin = bbox.xmin; + const double ymin = bbox.ymin; + const double zmin = bbox.zmin; + const double xmax = bbox.xmax; + const double ymax = bbox.ymax; + const double zmax = bbox.zmax; + qglviewer::Vec + vec_min(xmin, ymin, zmin), + vec_max(xmax, ymax, zmax); + m_pViewer->setSceneBoundingBox(vec_min,vec_max); + m_pViewer->camera()->showEntireScene(); +} + +void MainWindow::open(QString filename) +{ + QFileInfo fileinfo(filename); + if(fileinfo.isFile() && fileinfo.isReadable()) + { + int index = m_pScene->open(filename); + if(index >= 0) + { + QSettings settings; + settings.setValue("OFF open directory", + fileinfo.absoluteDir().absolutePath()); + this->addToRecentFiles(filename); + } + } +} + + +void MainWindow::readSettings() +{ + this->readState("MainWindow", Size|State); +} + +void MainWindow::writeSettings() +{ + this->writeState("MainWindow"); + std::cerr << "Write setting... done.\n"; +} + +void MainWindow::quit() +{ + writeSettings(); + close(); +} + +void MainWindow::closeEvent(QCloseEvent *event) +{ + writeSettings(); + event->accept(); +} + +void MainWindow::on_actionLoadPolyhedron_triggered() +{ + QSettings settings; + QString directory = settings.value("OFF open directory", + QDir::current().dirName()).toString(); + QStringList filenames = + QFileDialog::getOpenFileNames(this, + tr("Load polyhedron..."), + directory, + tr("OFF files (*.off)\n" + "All files (*)")); + if(!filenames.isEmpty()) { + Q_FOREACH(QString filename, filenames) { + open(filename); + } + } +} + + +void MainWindow::setAddKeyFrameKeyboardModifiers(::Qt::KeyboardModifiers m) +{ + m_pViewer->setAddKeyFrameKeyboardModifiers(m); +} diff --git a/AABB_tree/demo/MainWindow.h b/AABB_tree/demo/MainWindow.h new file mode 100644 index 00000000000..ad1b417e665 --- /dev/null +++ b/AABB_tree/demo/MainWindow.h @@ -0,0 +1,54 @@ +#ifndef MAINWINDOW_H +#define MAINWINDOW_H + +#include +#include + +class QDragEnterEvent; +class QDropEvent; +class Scene; +class Viewer; +namespace Ui { + class MainWindow; +} + +#include "types.h" + +class MainWindow : + public CGAL::Qt::DemosMainWindow +{ + Q_OBJECT +public: + MainWindow(QWidget* parent = 0); + ~MainWindow(); + + public slots: + void updateViewerBBox(); + void open(QString filename); + + void setAddKeyFrameKeyboardModifiers(Qt::KeyboardModifiers); + + protected slots: + + // settings + void quit(); + void readSettings(); + void writeSettings(); + + // load + void on_actionLoadPolyhedron_triggered(); + + // drag & drop + void dragEnterEvent(QDragEnterEvent *event); + void dropEvent(QDropEvent *event); + void closeEvent(QCloseEvent *event); + +private: + QString strippedName(const QString &fullFileName); + + Scene* m_pScene; + Viewer* m_pViewer; + Ui::MainWindow* ui; +}; + +#endif // ifndef MAINWINDOW_H diff --git a/AABB_tree/demo/MainWindow.ui b/AABB_tree/demo/MainWindow.ui new file mode 100644 index 00000000000..264a15be042 --- /dev/null +++ b/AABB_tree/demo/MainWindow.ui @@ -0,0 +1,80 @@ + + MainWindow + + + + 0 + 0 + 978 + 594 + + + + CGAL AABB tree demo + + + + :/cgal/icons/resources/cgal_logo.xpm:/cgal/icons/resources/cgal_logo.xpm + + + + + + + + + + + + + + + + 0 + 0 + 978 + 24 + + + + + &File + + + + + + + &View + + + + + + + + + &Quit + + + Ctrl+Q + + + + + Load polyhedron... + + + + + + Viewer + QWidget +
Viewer.h
+
+
+ + + + +
diff --git a/AABB_tree/demo/Scene.cpp b/AABB_tree/demo/Scene.cpp new file mode 100644 index 00000000000..d89ba509070 --- /dev/null +++ b/AABB_tree/demo/Scene.cpp @@ -0,0 +1,74 @@ +#include "Scene.h" + +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "render.h" +#include + + +Scene::Scene() +{ + m_pPolyhedron = NULL; +} + +Scene::~Scene() +{ + delete m_pPolyhedron; +} + +int +Scene::open(QString filename) +{ + QTextStream cerr(stderr); + cerr << QString("Opening file \"%1\"...").arg(filename); + + QApplication::setOverrideCursor(QCursor(::Qt::WaitCursor)); + + QFileInfo fileinfo(filename); + std::ifstream in(filename.toUtf8()); + + if(!in || !fileinfo.isFile() || ! fileinfo.isReadable()) + { + std::cerr << "cannot open file" << std::endl; + QApplication::restoreOverrideCursor(); + return -1; + } + + // allocate new polyhedron + m_pPolyhedron = new Polyhedron; + in >> *m_pPolyhedron; + if(!in) + { + std::cerr << "file is not a valid OFF file" << std::endl; + QApplication::restoreOverrideCursor(); + + delete m_pPolyhedron; + m_pPolyhedron = NULL; + + return -1; + } + + QApplication::restoreOverrideCursor(); + + cerr << " Ok.\n"; + return 0; +} + +void Scene::draw() +{ + if(m_pPolyhedron != NULL) + gl_render_facets(*m_pPolyhedron); +} + + diff --git a/AABB_tree/demo/Scene.h b/AABB_tree/demo/Scene.h new file mode 100644 index 00000000000..d14e9db29f4 --- /dev/null +++ b/AABB_tree/demo/Scene.h @@ -0,0 +1,58 @@ +#ifndef SCENE_H +#define SCENE_H + +#include + +#include "types.h" + +#include +#include + +class Scene +{ +public: + + Scene(); + ~Scene(); + + Polyhedron* polyhedron() const; + + void draw(); + + struct Bbox { + double xmin, ymin, zmin; + double xmax, ymax, zmax; + Bbox(const double _xmin,const double _ymin,const double _zmin, + const double _xmax,const double _ymax,const double _zmax) + : xmin(_xmin), ymin(_ymin), zmin(_zmin), + xmax(_xmax), ymax(_ymax), zmax(_zmax) + { + } + Bbox() + : xmin(0.0), ymin(0.0), zmin(0.0), + xmax(1.0), ymax(1.0), zmax(1.0) + { + } + }; + + double len_diagonal() + { + Bbox box = bbox(); + double dx = box.xmax - box.xmin; + double dy = box.ymax - box.ymin; + double dz = box.zmax - box.zmin; + return std::sqrt(dx*dx + dy*dy + dz*dz); + } + + // TO DEFINE + Bbox bbox() { return Bbox(); } + +public: + int open(QString filename); + +private: + Polyhedron *m_pPolyhedron; +}; // end class Scene + + +#endif // SCENE_H diff --git a/AABB_tree/demo/Viewer.cpp b/AABB_tree/demo/Viewer.cpp new file mode 100644 index 00000000000..85490810016 --- /dev/null +++ b/AABB_tree/demo/Viewer.cpp @@ -0,0 +1,51 @@ +#include "Viewer.h" +#include "Scene.h" + +Viewer::Viewer(QWidget* parent) + : QGLViewer(parent), + m_pScene(NULL) +{ + setBackgroundColor(::Qt::white); +} + +void Viewer::setScene(Scene* pScene) +{ + this->m_pScene = pScene; +} + +void Viewer::draw() +{ + QGLViewer::draw(); + if(m_pScene == 0) + return; + + ::glLineWidth(1.0f); + ::glPointSize(10.f); + ::glEnable(GL_POLYGON_OFFSET_FILL); + ::glPolygonOffset(1.0f,1.0f); + ::glClearColor(1.0f,1.0f,1.0f,0.0f); + ::glPolygonMode(GL_FRONT_AND_BACK,GL_FILL); + + if(true) + { + ::glEnable(GL_BLEND); + ::glEnable(GL_LINE_SMOOTH); + ::glHint(GL_LINE_SMOOTH_HINT, GL_NICEST); + ::glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); + } + else + { + ::glDisable(GL_BLEND); + ::glDisable(GL_LINE_SMOOTH); + ::glDisable(GL_POLYGON_SMOOTH_HINT); + ::glBlendFunc(GL_ONE, GL_ZERO); + ::glHint(GL_LINE_SMOOTH_HINT, GL_FASTEST); + } + m_pScene->draw(); +} + +void Viewer::initializeGL() +{ + QGLViewer::initializeGL(); +} + diff --git a/AABB_tree/demo/Viewer.h b/AABB_tree/demo/Viewer.h new file mode 100644 index 00000000000..69800d79588 --- /dev/null +++ b/AABB_tree/demo/Viewer.h @@ -0,0 +1,26 @@ +#ifndef VIEWER_H +#define VIEWER_H + +#include + +// forward declarations +class QWidget; +class Scene; + +class Viewer : public QGLViewer { + + Q_OBJECT + +public: + Viewer(QWidget * parent); + + // overload several QGLViewer virtual functions + void draw(); + void initializeGL(); + void setScene(Scene* pScene); + +private: + Scene* m_pScene; +}; // end class Viewer + +#endif // VIEWER_H diff --git a/AABB_tree/demo/Viewer_moc.cpp b/AABB_tree/demo/Viewer_moc.cpp new file mode 100644 index 00000000000..5f16ac863dd --- /dev/null +++ b/AABB_tree/demo/Viewer_moc.cpp @@ -0,0 +1,62 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'Viewer.h' +** +** Created: Sat 27. Jun 22:22:12 2009 +** by: The Qt Meta Object Compiler version 59 (Qt 4.4.3) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "Viewer.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'Viewer.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 59 +#error "This file was generated using the moc from 4.4.3. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_Viewer[] = { + + // content: + 1, // revision + 0, // classname + 0, 0, // classinfo + 0, 0, // methods + 0, 0, // properties + 0, 0, // enums/sets + + 0 // eod +}; + +static const char qt_meta_stringdata_Viewer[] = { + "Viewer\0" +}; + +const QMetaObject Viewer::staticMetaObject = { + { &QGLViewer::staticMetaObject, qt_meta_stringdata_Viewer, + qt_meta_data_Viewer, 0 } +}; + +const QMetaObject *Viewer::metaObject() const +{ + return &staticMetaObject; +} + +void *Viewer::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_Viewer)) + return static_cast(const_cast< Viewer*>(this)); + return QGLViewer::qt_metacast(_clname); +} + +int Viewer::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QGLViewer::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + return _id; +} +QT_END_MOC_NAMESPACE diff --git a/AABB_tree/demo/algorithms.cpp b/AABB_tree/demo/algorithms.cpp new file mode 100644 index 00000000000..69ca2ccf17f --- /dev/null +++ b/AABB_tree/demo/algorithms.cpp @@ -0,0 +1,19 @@ +#include +#include "MainWindow.h" +#include "Scene.h" +#include "types.h" + +void MainWindow::on_actionInsideOut_triggered() +{ + // wait cursor + QApplication::setOverrideCursor(Qt::WaitCursor); + + // get selected polyhedron + Polyhedron* pMesh = m_pScene->polyhedron(); + + // inside out + pMesh->inside_out(); + + // default cursor + QApplication::restoreOverrideCursor(); +} diff --git a/AABB_tree/demo/data/anchor.off b/AABB_tree/demo/data/anchor.off new file mode 100644 index 00000000000..941ac3b141e --- /dev/null +++ b/AABB_tree/demo/data/anchor.off @@ -0,0 +1,1573 @@ +OFF +519 1050 0 + +0.287649 0.0626717 0.234059 +0.294541 0.0487499 0.227166 +0.358579 0.2 0.163128 +0.29962 0.0333468 0.222087 +0.30273 0.0169306 0.218977 +0.222863 0.0960186 0.298844 +0.234835 0.0974999 0.286872 +0.234835 0.2 0.286872 +0.246807 0.0960186 0.2749 +0.258415 0.0916199 0.263292 +0.269307 0.0844374 0.252401 +0.108828 -0.0907982 0.412879 +0.120422 -0.117557 0.401284 +0.182022 -0.0626719 0.339685 +0.134835 -0.141421 0.386872 +0.19052 -0.0746895 0.331188 +0.151709 -0.161804 0.369997 +0.200364 -0.0844376 0.321344 +0.170631 -0.178201 0.351076 +0.211255 -0.0916202 0.310452 +0.191134 -0.190211 0.330574 +0.222863 -0.0960189 0.298844 +0.212712 -0.197538 0.308995 +0.234835 -0.0975001 0.286872 +0.234835 -0.2 0.286872 +0.246807 -0.0960189 0.2749 +0.258415 -0.0916202 0.263292 +0.279151 0.0746892 0.242556 +0.151709 0.161803 0.369997 +0.19052 0.0746892 0.331188 +0.170631 0.178201 0.351076 +0.200364 0.0844374 0.321344 +0.191134 0.190211 0.330574 +0.211255 0.0916199 0.310452 +0.212712 0.197538 0.308995 +0.287649 -0.0626719 0.234059 +0.279151 -0.0746895 0.242556 +0.358579 -0.2 0.163128 +0.269307 -0.0844376 0.252401 +0.175129 -0.0487501 0.346578 +0.100335 -0.0618035 0.421372 +0.17005 -0.0333471 0.351657 +0.0951545 -0.031287 0.426552 +0.16694 -0.0169308 0.354768 +0.0934135 -1e-007 0.428293 +0.165892 -1e-007 0.355815 +0.0951545 0.0312868 0.426552 +0.16694 0.0169306 0.354768 +0.100335 0.0618033 0.421372 +0.17005 0.0333468 0.351657 +0.108828 0.090798 0.412879 +0.175129 0.0487499 0.346578 +0.120422 0.117557 0.401284 +0.182022 0.0626717 0.339685 +0.134835 0.141421 0.386872 +0.30273 -0.0169308 0.218977 +0.29962 -0.0333471 0.222087 +0.294541 -0.0487501 0.227166 +0.303778 -1e-007 0.217929 +-0.431382 0.166979 0.0217069 +-0.434088 0.177081 0.0217069 +-0.5 0.1875 0.0217069 +-0.435 0.1875 0.0217069 +-0.498101 0.209206 0.0217069 +-0.434088 0.197919 0.0217069 +-0.492462 0.230253 0.0217069 +-0.431382 0.208021 0.0217069 +-0.483253 0.25 0.0217069 +-0.426962 0.2175 0.0217069 +-0.470756 0.267848 0.0217069 +-0.420963 0.226067 0.0217069 +-0.455348 0.283256 0.0217069 +-0.413567 0.233463 0.0217069 +-0.4375 0.295753 0.0217069 +-0.405 0.239462 0.0217069 +-0.417752 0.304962 0.0217069 +-0.395521 0.243882 0.0217069 +-0.396706 0.310601 0.0217069 +-0.385419 0.246588 0.0217069 +-0.375 0.3125 0.0217069 +-0.375 0.2475 0.0217069 +-0.364581 0.246588 0.0217069 +-0.117552 0.189849 0.0217069 +-0.107158 0.19248 0.0217069 +-0.315912 0.197919 0.0217069 +-0.0745123 0.197312 0.0217069 +0.5 0.3125 0.0217069 +-0.0691105 0.198111 0.0217069 +-0.0303301 0.2 0.0217069 +-0.385419 0.128411 0.0217069 +-0.395521 0.131118 0.0217069 +-0.307489 0.0398918 0.0217069 +-0.405 0.135538 0.0217069 +-0.413567 0.141537 0.0217069 +-0.420963 0.148933 0.0217069 +-0.354479 0.243882 0.0217069 +-0.345 0.239462 0.0217069 +-0.336433 0.233463 0.0217069 +-0.329037 0.226067 0.0217069 +-0.29904 0.061747 0.0217069 +-0.345 0.135538 0.0217069 +-0.297643 0.0653594 0.0217069 +-0.336433 0.141537 0.0217069 +-0.282445 0.0906584 0.0217069 +-0.329037 0.148933 0.0217069 +-0.282332 0.0907925 0.0217069 +-0.323038 0.1575 0.0217069 +-0.262485 0.114245 0.0217069 +-0.258891 0.117409 0.0217069 +-0.354479 -0.243882 0.0217069 +-0.364581 -0.246589 0.0217069 +-0.375 -0.3125 0.0217069 +-0.375 -0.2475 0.0217069 +-0.396706 -0.310601 0.0217069 +-0.385419 -0.246589 0.0217069 +-0.417752 -0.304962 0.0217069 +-0.395521 -0.243882 0.0217069 +-0.4375 -0.295753 0.0217069 +-0.405 -0.239462 0.0217069 +-0.455348 -0.283256 0.0217069 +-0.413567 -0.233463 0.0217069 +-0.470756 -0.267849 0.0217069 +-0.420963 -0.226067 0.0217069 +-0.483253 -0.25 0.0217069 +-0.426962 -0.2175 0.0217069 +-0.492462 -0.230253 0.0217069 +-0.431382 -0.208021 0.0217069 +-0.498101 -0.209206 0.0217069 +-0.434088 -0.197919 0.0217069 +-0.5 -0.1875 0.0217069 +-0.435 -0.1875 0.0217069 +-0.434088 -0.177081 0.0217069 +-0.354479 0.131118 0.0217069 +-0.364581 0.128411 0.0217069 +-0.375 0.1275 0.0217069 +-0.318618 0.166979 0.0217069 +-0.238141 0.135674 0.0217069 +-0.315912 0.177081 0.0217069 +-0.229951 0.141139 0.0217069 +-0.209871 0.15454 0.0217069 +-0.323038 -0.2175 0.0217069 +-0.329037 -0.226067 0.0217069 +0.5 -0.3125 0.0217069 +-0.336433 -0.233463 0.0217069 +-0.345 -0.239462 0.0217069 +-0.158436 0.177791 0.0217069 +-0.143755 0.183214 0.0217069 +-0.315 0.1875 0.0217069 +-0.0303301 -0.2 0.0217069 +-0.0384488 -0.199918 0.0217069 +-0.0745586 -0.197421 0.0217069 +-0.315912 -0.197919 0.0217069 +-0.0771365 -0.197243 0.0217069 +-0.11494 -0.190842 0.0217069 +-0.323038 0.2175 0.0217069 +-0.318618 0.208021 0.0217069 +-0.151146 -0.180836 0.0217069 +-0.158518 -0.17792 0.0217069 +-0.315 -0.1875 0.0217069 +-0.185069 -0.167416 0.0217069 +-0.315912 -0.177081 0.0217069 +-0.196211 -0.161456 0.0217069 +-0.21607 -0.150832 0.0217069 +-0.229857 -0.141087 0.0217069 +-0.318618 -0.166979 0.0217069 +-0.243562 -0.1314 0.0217069 +-0.323038 -0.1575 0.0217069 +-0.258665 -0.117296 0.0217069 +-0.329037 -0.148933 0.0217069 +-0.267027 -0.109486 0.0217069 +-0.336433 -0.141537 0.0217069 +-0.281951 -0.0906433 0.0217069 +-0.286022 -0.0855042 0.0217069 +-0.426962 -0.1575 0.0217069 +-0.420963 -0.148933 0.0217069 +-0.413567 -0.141537 0.0217069 +-0.308914 -0.0345768 0.0217069 +-0.405 -0.135539 0.0217069 +-0.395521 -0.131119 0.0217069 +-0.117667 -0.190088 0.0217069 +-0.375 -0.1275 0.0217069 +-0.364581 -0.128412 0.0217069 +-0.354479 -0.131119 0.0217069 +-0.300186 -0.0599071 0.0217069 +-0.345 -0.135539 0.0217069 +-0.299162 -0.0617575 0.0217069 +-0.385419 -0.128412 0.0217069 +-0.431382 -0.166979 0.0217069 +-0.426962 0.1575 0.0217069 +-0.1962 0.161426 0.0217069 +-0.178209 0.170487 0.0217069 +-0.318618 -0.208021 0.0217069 +-0.312657 -4.91e-006 0.0217069 +-0.312379 0.0149694 0.0217069 +-0.309187 0.0312374 0.0217069 +-0.309437 -0.0312669 0.0217069 +-0.312838 -0.00973102 0.0217069 +0.5 -0.2 0.0217069 +0.5 0.2 0.0217069 +-0.5 0.1875 -0.103293 +-0.5 -0.1875 -0.103293 +0.5 0.243882 -0.282772 +0.5 0.246588 -0.292874 +0.5 0.3125 -0.303293 +0.5 0.2475 -0.303293 +0.5 0.310601 -0.324999 +0.5 0.246588 -0.313712 +0.5 0.304962 -0.346046 +0.5 0.243882 -0.323814 +0.5 0.295753 -0.365793 +0.5 0.239462 -0.333293 +0.5 0.283256 -0.383642 +0.5 0.233463 -0.34186 +0.5 0.267848 -0.399049 +0.5 0.226067 -0.349256 +0.5 0.25 -0.411546 +0.5 0.2175 -0.355255 +0.5 0.230253 -0.420755 +0.5 0.208021 -0.359675 +0.5 0.209206 -0.426394 +0.5 0.197919 -0.362382 +0.5 0.1875 -0.428293 +0.5 0.1875 -0.363293 +0.5 0.177081 -0.362382 +0.5 0.239462 -0.273293 +0.5 0.233463 -0.264726 +0.5 0.226067 -0.25733 +0.5 0.197919 -0.244205 +0.5 0.208021 -0.246912 +0.5 0.2175 -0.251332 +0.5 0.177081 -0.244205 +0.5 0.1875 -0.243293 +0.5 -0.135539 -0.273293 +0.5 0.1575 -0.355255 +0.5 -0.141537 -0.264726 +0.5 0.148933 -0.349256 +0.5 0.141537 -0.34186 +0.5 0.131118 -0.282772 +0.5 0.135538 -0.273293 +0.5 0.141537 -0.264726 +0.5 0.148933 -0.25733 +0.5 0.1575 -0.251332 +0.5 0.128411 -0.313712 +0.5 0.1275 -0.303293 +0.5 0.128411 -0.292874 +0.5 0.135538 -0.333293 +0.5 0.131118 -0.323814 +0.5 -0.226067 -0.25733 +0.5 -0.2175 -0.251332 +0.5 -0.208021 -0.246912 +0.5 -0.197919 -0.244205 +0.5 -0.1875 -0.243293 +0.5 -0.2475 -0.303293 +0.5 -0.246589 -0.292874 +0.5 -0.3125 -0.303293 +0.5 -0.243882 -0.282772 +0.5 -0.239462 -0.273293 +0.5 -0.233463 -0.264726 +0.5 0.166979 -0.246912 +0.5 -0.1275 -0.303293 +0.5 -0.128412 -0.292874 +0.5 0.166979 -0.359675 +0.5 -0.177081 -0.244205 +0.5 -0.166979 -0.246912 +0.5 -0.1575 -0.251332 +0.5 -0.148933 -0.25733 +0.5 -0.166979 -0.359675 +0.5 -0.177081 -0.362382 +0.5 -0.1875 -0.428293 +0.5 -0.1875 -0.363293 +0.5 -0.209206 -0.426394 +0.5 -0.197919 -0.362382 +0.5 -0.230253 -0.420755 +0.5 -0.208021 -0.359675 +0.5 -0.25 -0.411546 +0.5 -0.2175 -0.355255 +0.5 -0.267849 -0.399049 +0.5 -0.226067 -0.349256 +0.5 -0.283256 -0.383642 +0.5 -0.233463 -0.34186 +0.5 -0.295753 -0.365793 +0.5 -0.239462 -0.333293 +0.5 -0.304962 -0.346046 +0.5 -0.243882 -0.323814 +0.5 -0.310601 -0.324999 +0.5 -0.246589 -0.313712 +0.5 -0.1575 -0.355255 +0.5 -0.148933 -0.349256 +0.5 -0.141537 -0.34186 +0.5 -0.128412 -0.313712 +0.5 -0.131119 -0.323814 +0.5 -0.135539 -0.333293 +0.5 -0.131119 -0.282772 +0.375 -0.1875 -0.428293 +0.375 0.1875 -0.428293 +0.375 0.166979 -0.359675 +0.375 0.177081 -0.362382 +0.375 0.1875 -0.363293 +0.375 0.209206 -0.426394 +0.375 0.197919 -0.362382 +0.375 0.230253 -0.420755 +0.375 0.208021 -0.359675 +0.375 0.25 -0.411546 +0.375 0.2175 -0.355255 +0.375 0.267848 -0.399049 +0.375 0.226067 -0.349256 +0.375 0.283256 -0.383642 +0.375 0.233463 -0.34186 +0.375 0.295753 -0.365793 +0.375 0.239462 -0.333293 +0.375 0.304962 -0.346046 +0.375 0.243882 -0.323814 +0.375 0.310601 -0.324999 +0.375 0.246588 -0.313712 +0.375 0.3125 -0.303293 +0.375 0.2475 -0.303293 +0.375 0.246588 -0.292874 +0.375 0.243882 -0.282772 +0.375 0.3125 -0.103293 +0.375 0.239462 -0.273293 +0.375 0.233463 -0.264726 +0.375 0.226067 -0.25733 +0.375 0.2175 -0.251332 +0.375 0.208021 -0.246912 +0.375 0.135538 -0.333293 +0.375 0.141537 -0.34186 +0.375 -0.141537 -0.34186 +0.375 0.148933 -0.349256 +0.375 0.1575 -0.355255 +0.375 0.197919 -0.244205 +0.375 0.1875 -0.243293 +0.375 0.177081 -0.244205 +0.375 -0.135539 -0.333293 +0.375 -0.131119 -0.323814 +0.375 0.128411 -0.313712 +0.375 -0.128412 -0.313712 +0.375 0.1275 -0.303293 +0.375 -0.1275 -0.303293 +0.375 0.128411 -0.292874 +0.375 -0.128412 -0.292874 +0.375 -0.131119 -0.282772 +0.375 -0.1875 -0.363293 +0.375 -0.177081 -0.362382 +0.375 -0.166979 -0.359675 +0.375 -0.1575 -0.355255 +0.375 -0.148933 -0.349256 +0.375 0.131118 -0.323814 +0.375 -0.197919 -0.362382 +0.375 -0.209206 -0.426394 +0.375 -0.208021 -0.359675 +0.375 -0.230253 -0.420755 +0.375 -0.2175 -0.355255 +0.375 -0.25 -0.411546 +0.375 -0.226067 -0.349256 +0.375 -0.267849 -0.399049 +0.375 -0.233463 -0.34186 +0.375 -0.283256 -0.383642 +0.375 -0.239462 -0.333293 +0.375 -0.295753 -0.365793 +0.375 -0.243882 -0.323814 +0.375 -0.304962 -0.346046 +0.375 -0.246589 -0.313712 +0.375 -0.310601 -0.324999 +0.375 -0.2475 -0.303293 +0.375 -0.3125 -0.303293 +0.375 -0.246589 -0.292874 +0.375 -0.243882 -0.282772 +0.375 -0.239462 -0.273293 +0.375 -0.3125 -0.103293 +0.375 -0.233463 -0.264726 +0.375 -0.226067 -0.25733 +0.375 -0.148933 -0.25733 +0.375 -0.1575 -0.251332 +0.375 -0.166979 -0.246912 +0.375 -0.177081 -0.244205 +0.375 -0.1875 -0.243293 +0.375 0.141537 -0.264726 +0.375 0.135538 -0.273293 +0.375 -0.141537 -0.264726 +0.375 0.131118 -0.282772 +0.375 -0.135539 -0.273293 +0.375 0.166979 -0.246912 +0.375 0.1575 -0.251332 +0.375 0.148933 -0.25733 +0.375 -0.197919 -0.244205 +0.375 -0.208021 -0.246912 +0.375 -0.2175 -0.251332 +-0.345 -0.135539 -0.103293 +-0.354479 -0.131119 -0.103293 +-0.364581 0.128411 -0.103293 +-0.364581 -0.128412 -0.103293 +-0.375 0.1275 -0.103293 +-0.375 -0.1275 -0.103293 +-0.385419 0.128411 -0.103293 +-0.385419 -0.128412 -0.103293 +-0.395521 -0.131119 -0.103293 +-0.405 0.135538 -0.103293 +-0.413567 -0.141537 -0.103293 +-0.413567 0.141537 -0.103293 +-0.420963 -0.148933 -0.103293 +-0.426962 -0.1575 -0.103293 +-0.431382 -0.166979 -0.103293 +-0.354479 0.243882 -0.103293 +-0.364581 0.246588 -0.103293 +-0.375 0.3125 -0.103293 +-0.375 0.2475 -0.103293 +-0.396706 0.310601 -0.103293 +-0.385419 0.246588 -0.103293 +-0.417752 0.304962 -0.103293 +-0.395521 0.243882 -0.103293 +-0.4375 0.295753 -0.103293 +-0.405 0.239462 -0.103293 +-0.455348 0.283256 -0.103293 +-0.413567 0.233463 -0.103293 +-0.470756 0.267848 -0.103293 +-0.420963 0.226067 -0.103293 +-0.483253 0.25 -0.103293 +-0.426962 0.2175 -0.103293 +-0.492462 0.230253 -0.103293 +-0.431382 0.208021 -0.103293 +-0.498101 0.209206 -0.103293 +-0.434088 0.197919 -0.103293 +-0.435 0.1875 -0.103293 +-0.434088 0.177081 -0.103293 +-0.434088 -0.177081 -0.103293 +-0.435 -0.1875 -0.103293 +-0.498101 -0.209206 -0.103293 +-0.434088 -0.197919 -0.103293 +-0.492462 -0.230253 -0.103293 +-0.431382 -0.208021 -0.103293 +-0.483253 -0.25 -0.103293 +-0.426962 -0.2175 -0.103293 +-0.470756 -0.267849 -0.103293 +-0.420963 -0.226067 -0.103293 +-0.455348 -0.283256 -0.103293 +-0.413567 -0.233463 -0.103293 +-0.4375 -0.295753 -0.103293 +-0.405 -0.239462 -0.103293 +-0.417752 -0.304962 -0.103293 +-0.395521 -0.243882 -0.103293 +-0.396706 -0.310601 -0.103293 +-0.385419 -0.246589 -0.103293 +-0.375 -0.3125 -0.103293 +-0.375 -0.2475 -0.103293 +-0.364581 -0.246589 -0.103293 +-0.405 -0.135539 -0.103293 +-0.395521 0.131118 -0.103293 +-0.354479 0.131118 -0.103293 +-0.345 0.135538 -0.103293 +-0.336433 -0.141537 -0.103293 +-0.336433 0.141537 -0.103293 +-0.329037 0.148933 -0.103293 +-0.431382 0.166979 -0.103293 +-0.426962 0.1575 -0.103293 +-0.420963 0.148933 -0.103293 +-0.323038 0.1575 -0.103293 +-0.318618 0.166979 -0.103293 +-0.315912 0.177081 -0.103293 +-0.315 0.1875 -0.103293 +-0.329037 -0.148933 -0.103293 +-0.354479 -0.243882 -0.103293 +-0.345 -0.239462 -0.103293 +-0.336433 -0.233463 -0.103293 +-0.329037 -0.226067 -0.103293 +-0.323038 0.2175 -0.103293 +-0.329037 0.226067 -0.103293 +-0.336433 0.233463 -0.103293 +-0.345 0.239462 -0.103293 +-0.315912 -0.197919 -0.103293 +-0.315 -0.1875 -0.103293 +-0.315912 -0.177081 -0.103293 +-0.318618 -0.166979 -0.103293 +-0.323038 -0.1575 -0.103293 +-0.315912 0.197919 -0.103293 +-0.318618 0.208021 -0.103293 +-0.323038 -0.2175 -0.103293 +-0.318618 -0.208021 -0.103293 +0.305546 -0.2 0.110095 +0.358579 -0.2 0.0570622 +0.411612 -0.2 0.110095 +0.305546 0.2 0.110095 +0.358579 0.2 0.0570622 +0.411612 0.2 0.110095 +-0.00983727 -0.0169308 0.177991 +-0.00672688 -0.0333471 0.17488 +-0.0108847 -1e-007 0.179038 +-0.00164795 -0.0487501 0.169802 +-0.00983727 0.0169306 0.177991 +0.00524502 -0.0626719 0.162909 +-0.00672688 0.0333468 0.17488 +0.0137425 -0.0746895 0.154411 +-0.00164795 0.0487499 0.169802 +0.023587 -0.0844376 0.144567 +0.00524502 0.0626717 0.162909 +0.0344785 -0.0916202 0.133675 +0.0137425 0.0746892 0.154411 +0.0460865 -0.0960189 0.122067 +0.023587 0.0844374 0.144567 +0.0580581 -0.0975001 0.110095 +0.0344785 0.0916199 0.133675 +0.07003 -0.0960189 0.0981236 +0.0460865 0.0960186 0.122067 +0.081638 -0.0916202 0.0865151 +0.0580581 0.0974999 0.110095 +0.0925295 -0.0844376 0.0756236 +0.07003 0.0960186 0.0981236 +0.102374 -0.0746895 0.0657796 +0.081638 0.0916199 0.0865151 +0.110872 -0.0626719 0.0572819 +0.0925295 0.0844374 0.0756236 +0.117765 -0.0487501 0.0503889 +0.102374 0.0746892 0.0657796 +0.122844 -0.0333471 0.0453101 +0.110872 0.0626717 0.0572819 +0.125953 -0.0169308 0.0421997 +0.117765 0.0487499 0.0503889 +0.127001 -1e-007 0.0411523 +0.122844 0.0333468 0.0453101 +0.125953 0.0169306 0.0421997 +3 0 1 2 +3 2 1 3 +3 2 3 4 +3 5 6 7 +3 7 6 8 +3 7 8 2 +3 2 8 9 +3 2 9 10 +3 11 12 13 +3 13 12 14 +3 13 14 15 +3 15 14 16 +3 15 16 17 +3 17 16 18 +3 17 18 19 +3 19 18 20 +3 19 20 21 +3 21 20 22 +3 21 22 23 +3 23 22 24 +3 23 24 25 +3 25 24 26 +3 10 27 2 +3 2 27 0 +3 28 29 30 +3 30 29 31 +3 30 31 32 +3 32 31 33 +3 32 33 34 +3 34 33 5 +3 34 5 7 +3 35 36 37 +3 37 36 38 +3 37 38 26 +3 11 39 40 +3 40 39 41 +3 40 41 42 +3 42 41 43 +3 42 43 44 +3 44 43 45 +3 44 45 46 +3 46 45 47 +3 46 47 48 +3 48 47 49 +3 48 49 50 +3 50 49 51 +3 50 51 52 +3 52 51 53 +3 52 53 54 +3 54 53 29 +3 54 29 28 +3 55 56 37 +3 37 56 57 +3 37 57 35 +3 55 37 58 +3 58 37 2 +3 58 2 4 +3 13 39 11 +3 24 37 26 +3 59 60 61 +3 61 60 62 +3 61 62 63 +3 63 62 64 +3 63 64 65 +3 65 64 66 +3 65 66 67 +3 67 66 68 +3 67 68 69 +3 69 68 70 +3 69 70 71 +3 71 70 72 +3 71 72 73 +3 73 72 74 +3 73 74 75 +3 75 74 76 +3 75 76 77 +3 77 76 78 +3 77 78 79 +3 79 78 80 +3 79 80 81 +3 82 83 84 +3 84 83 85 +3 84 85 86 +3 86 85 87 +3 86 87 88 +3 89 90 91 +3 91 90 92 +3 91 92 61 +3 61 92 93 +3 61 93 94 +3 81 95 79 +3 79 95 96 +3 79 96 86 +3 86 96 97 +3 86 97 98 +3 91 99 100 +3 100 99 101 +3 100 101 102 +3 102 101 103 +3 102 103 104 +3 104 103 105 +3 104 105 106 +3 106 105 107 +3 106 107 108 +3 109 110 111 +3 111 110 112 +3 111 112 113 +3 113 112 114 +3 113 114 115 +3 115 114 116 +3 115 116 117 +3 117 116 118 +3 117 118 119 +3 119 118 120 +3 119 120 121 +3 121 120 122 +3 121 122 123 +3 123 122 124 +3 123 124 125 +3 125 124 126 +3 125 126 127 +3 127 126 128 +3 127 128 129 +3 129 128 130 +3 129 130 131 +3 132 133 91 +3 91 133 134 +3 91 134 89 +3 106 108 135 +3 135 108 136 +3 135 136 137 +3 137 136 138 +3 137 138 139 +3 140 141 142 +3 142 141 143 +3 142 143 111 +3 111 143 144 +3 111 144 109 +3 145 146 147 +3 147 146 82 +3 147 82 84 +3 148 149 142 +3 142 149 150 +3 142 150 151 +3 151 150 152 +3 151 152 153 +3 98 154 86 +3 86 154 155 +3 86 155 84 +3 156 157 158 +3 158 157 159 +3 158 159 160 +3 160 159 161 +3 160 161 162 +3 162 163 164 +3 164 163 165 +3 164 165 166 +3 166 165 167 +3 166 167 168 +3 168 167 169 +3 168 169 170 +3 170 169 171 +3 170 171 172 +3 173 174 129 +3 129 174 175 +3 129 175 176 +3 176 175 177 +3 176 177 178 +3 151 153 158 +3 158 153 179 +3 158 179 156 +3 180 181 176 +3 176 181 182 +3 176 182 183 +3 183 182 184 +3 183 184 185 +3 185 184 172 +3 180 176 186 +3 186 176 178 +3 131 187 129 +3 129 187 173 +3 188 61 94 +3 139 189 147 +3 147 189 190 +3 147 190 145 +3 140 142 191 +3 191 142 151 +3 192 193 61 +3 61 193 194 +3 61 194 91 +3 176 195 129 +3 129 195 196 +3 129 196 61 +3 61 196 192 +3 142 197 148 +3 100 132 91 +3 164 160 162 +3 184 170 172 +3 147 137 139 +3 188 59 61 +3 88 198 86 +3 199 200 61 +3 61 200 129 +3 201 202 203 +3 203 202 204 +3 203 204 205 +3 205 204 206 +3 205 206 207 +3 207 206 208 +3 207 208 209 +3 209 208 210 +3 209 210 211 +3 211 210 212 +3 211 212 213 +3 213 212 214 +3 213 214 215 +3 215 214 216 +3 215 216 217 +3 217 216 218 +3 217 218 219 +3 219 218 220 +3 219 220 221 +3 221 220 222 +3 221 222 223 +3 201 203 224 +3 224 203 86 +3 224 86 225 +3 225 86 226 +3 227 228 86 +3 86 228 229 +3 86 229 226 +3 230 231 198 +3 198 231 227 +3 198 227 86 +3 232 233 234 +3 234 233 235 +3 234 235 236 +3 237 238 234 +3 234 238 239 +3 234 239 198 +3 198 239 240 +3 198 240 241 +3 242 243 234 +3 234 243 244 +3 234 244 237 +3 236 245 234 +3 234 245 246 +3 234 246 242 +3 247 248 142 +3 142 248 249 +3 142 249 197 +3 197 249 250 +3 197 250 251 +3 252 253 254 +3 254 253 255 +3 254 255 142 +3 142 255 256 +3 142 256 257 +3 230 198 258 +3 258 198 241 +3 259 223 260 +3 260 223 261 +3 260 261 233 +3 251 262 197 +3 197 262 263 +3 197 263 198 +3 198 263 264 +3 198 264 265 +3 266 267 268 +3 268 267 269 +3 268 269 270 +3 270 269 271 +3 270 271 272 +3 272 271 273 +3 272 273 274 +3 274 273 275 +3 274 275 276 +3 276 275 277 +3 276 277 278 +3 278 277 279 +3 278 279 280 +3 280 279 281 +3 280 281 282 +3 282 281 283 +3 282 283 284 +3 284 283 285 +3 284 285 254 +3 254 285 252 +3 266 268 286 +3 286 268 221 +3 286 221 287 +3 287 221 288 +3 259 289 223 +3 223 289 290 +3 223 290 221 +3 221 290 291 +3 221 291 288 +3 232 292 233 +3 233 292 260 +3 142 257 247 +3 265 234 198 +3 293 294 268 +3 268 294 221 +3 295 296 294 +3 294 296 297 +3 294 297 298 +3 298 297 299 +3 298 299 300 +3 300 299 301 +3 300 301 302 +3 302 301 303 +3 302 303 304 +3 304 303 305 +3 304 305 306 +3 306 305 307 +3 306 307 308 +3 308 307 309 +3 308 309 310 +3 310 309 311 +3 310 311 312 +3 312 311 313 +3 312 313 314 +3 314 313 315 +3 314 315 316 +3 314 317 318 +3 318 317 319 +3 318 319 320 +3 320 321 318 +3 318 321 322 +3 318 322 323 +3 324 325 326 +3 326 325 327 +3 326 327 294 +3 294 327 328 +3 294 328 295 +3 323 329 318 +3 318 329 330 +3 318 330 331 +3 332 333 334 +3 334 333 335 +3 334 335 336 +3 336 335 337 +3 336 337 338 +3 338 337 339 +3 338 339 340 +3 341 342 293 +3 293 342 343 +3 293 343 294 +3 294 343 344 +3 294 344 345 +3 332 334 326 +3 326 334 346 +3 326 346 324 +3 341 293 347 +3 347 293 348 +3 347 348 349 +3 349 348 350 +3 349 350 351 +3 351 350 352 +3 351 352 353 +3 353 352 354 +3 353 354 355 +3 355 354 356 +3 355 356 357 +3 357 356 358 +3 357 358 359 +3 359 358 360 +3 359 360 361 +3 361 360 362 +3 361 362 363 +3 363 362 364 +3 363 364 365 +3 365 364 366 +3 366 364 367 +3 367 364 368 +3 367 368 369 +3 369 368 370 +3 371 372 318 +3 318 372 373 +3 318 373 368 +3 368 373 374 +3 368 374 375 +3 376 377 378 +3 378 377 379 +3 378 379 380 +3 380 379 340 +3 318 381 378 +3 378 381 382 +3 378 382 383 +3 384 385 368 +3 368 385 386 +3 368 386 370 +3 316 317 314 +3 340 379 338 +3 383 376 378 +3 318 331 381 +3 368 375 384 +3 318 378 371 +3 345 326 294 +3 387 388 389 +3 389 388 390 +3 389 390 391 +3 391 390 392 +3 391 392 393 +3 393 392 394 +3 393 394 395 +3 396 397 398 +3 398 397 399 +3 398 399 200 +3 200 399 400 +3 200 400 401 +3 402 403 404 +3 404 403 405 +3 404 405 406 +3 406 405 407 +3 406 407 408 +3 408 407 409 +3 408 409 410 +3 410 409 411 +3 410 411 412 +3 412 411 413 +3 412 413 414 +3 414 413 415 +3 414 415 416 +3 416 415 417 +3 416 417 418 +3 418 417 419 +3 418 419 420 +3 420 419 421 +3 420 421 199 +3 199 421 422 +3 199 422 423 +3 401 424 200 +3 200 424 425 +3 200 425 426 +3 426 425 427 +3 426 427 428 +3 428 427 429 +3 428 429 430 +3 430 429 431 +3 430 431 432 +3 432 431 433 +3 432 433 434 +3 434 433 435 +3 434 435 436 +3 436 435 437 +3 436 437 438 +3 438 437 439 +3 438 439 440 +3 440 439 441 +3 440 441 442 +3 442 441 443 +3 442 443 444 +3 395 445 446 +3 446 445 397 +3 446 397 396 +3 447 448 449 +3 449 448 450 +3 449 450 451 +3 447 449 389 +3 389 449 387 +3 199 452 200 +3 200 452 453 +3 200 453 454 +3 455 456 318 +3 318 456 457 +3 318 457 458 +3 459 449 318 +3 318 449 451 +3 318 451 455 +3 444 460 442 +3 442 460 461 +3 442 461 368 +3 368 461 462 +3 368 462 463 +3 464 465 318 +3 318 465 466 +3 318 466 404 +3 404 466 467 +3 404 467 402 +3 468 469 368 +3 368 469 470 +3 368 470 318 +3 318 470 471 +3 318 471 472 +3 458 473 318 +3 318 473 474 +3 318 474 464 +3 463 475 368 +3 368 475 476 +3 368 476 468 +3 395 446 393 +3 454 398 200 +3 318 472 459 +3 423 452 199 +3 404 79 318 +3 318 79 86 +3 318 86 314 +3 314 86 203 +3 364 254 368 +3 368 254 142 +3 368 142 442 +3 442 142 111 +3 129 200 127 +3 127 200 426 +3 127 426 125 +3 125 426 428 +3 125 428 123 +3 123 428 430 +3 123 430 121 +3 121 430 432 +3 121 432 119 +3 119 432 434 +3 119 434 117 +3 117 434 436 +3 117 436 115 +3 115 436 438 +3 115 438 113 +3 113 438 440 +3 113 440 111 +3 111 440 442 +3 199 61 420 +3 420 61 63 +3 420 63 418 +3 418 63 65 +3 418 65 416 +3 416 65 67 +3 416 67 414 +3 414 67 69 +3 414 69 412 +3 412 69 71 +3 412 71 410 +3 410 71 73 +3 410 73 408 +3 408 73 75 +3 408 75 406 +3 406 75 77 +3 406 77 404 +3 404 77 79 +3 221 294 219 +3 219 294 298 +3 219 298 217 +3 217 298 300 +3 217 300 215 +3 215 300 302 +3 215 302 213 +3 213 302 304 +3 213 304 211 +3 211 304 306 +3 211 306 209 +3 209 306 308 +3 209 308 207 +3 207 308 310 +3 207 310 205 +3 205 310 312 +3 205 312 203 +3 203 312 314 +3 293 268 348 +3 348 268 270 +3 348 270 350 +3 350 270 272 +3 350 272 352 +3 352 272 274 +3 352 274 354 +3 354 274 276 +3 354 276 356 +3 356 276 278 +3 356 278 358 +3 358 278 280 +3 358 280 360 +3 360 280 282 +3 360 282 362 +3 362 282 284 +3 362 284 364 +3 364 284 254 +3 342 267 343 +3 343 267 266 +3 343 266 344 +3 344 266 286 +3 344 286 345 +3 345 286 287 +3 345 287 326 +3 326 287 288 +3 326 288 332 +3 332 288 291 +3 332 291 333 +3 333 291 290 +3 333 290 335 +3 335 290 289 +3 335 289 337 +3 337 289 259 +3 337 259 339 +3 339 259 260 +3 339 260 340 +3 340 260 292 +3 340 292 380 +3 380 292 232 +3 380 232 378 +3 378 232 234 +3 378 234 371 +3 371 234 265 +3 371 265 372 +3 372 265 264 +3 372 264 373 +3 373 264 263 +3 373 263 374 +3 374 263 262 +3 374 262 375 +3 375 262 251 +3 375 251 384 +3 384 251 250 +3 384 250 385 +3 385 250 249 +3 385 249 386 +3 386 249 248 +3 386 248 370 +3 370 248 247 +3 370 247 369 +3 369 247 257 +3 369 257 367 +3 367 257 256 +3 367 256 366 +3 366 256 255 +3 366 255 365 +3 365 255 253 +3 365 253 363 +3 363 253 252 +3 363 252 361 +3 361 252 285 +3 361 285 359 +3 359 285 283 +3 359 283 357 +3 357 283 281 +3 357 281 355 +3 355 281 279 +3 355 279 353 +3 353 279 277 +3 353 277 351 +3 351 277 275 +3 351 275 349 +3 349 275 273 +3 349 273 347 +3 347 273 271 +3 347 271 341 +3 341 271 269 +3 341 269 342 +3 342 269 267 +3 299 220 301 +3 301 220 218 +3 301 218 303 +3 303 218 216 +3 303 216 305 +3 305 216 214 +3 305 214 307 +3 307 214 212 +3 307 212 309 +3 309 212 210 +3 309 210 311 +3 311 210 208 +3 311 208 313 +3 313 208 206 +3 313 206 315 +3 315 206 204 +3 315 204 316 +3 316 204 202 +3 316 202 317 +3 317 202 201 +3 317 201 319 +3 319 201 224 +3 319 224 320 +3 320 224 225 +3 320 225 321 +3 321 225 226 +3 321 226 322 +3 322 226 229 +3 322 229 323 +3 323 229 228 +3 323 228 329 +3 329 228 227 +3 329 227 330 +3 330 227 231 +3 330 231 331 +3 331 231 230 +3 331 230 381 +3 381 230 258 +3 381 258 382 +3 382 258 241 +3 382 241 383 +3 383 241 240 +3 383 240 376 +3 376 240 239 +3 376 239 377 +3 377 239 238 +3 377 238 379 +3 379 238 237 +3 379 237 338 +3 338 237 244 +3 338 244 336 +3 336 244 243 +3 336 243 334 +3 334 243 242 +3 334 242 346 +3 346 242 246 +3 346 246 324 +3 324 246 245 +3 324 245 325 +3 325 245 236 +3 325 236 327 +3 327 236 235 +3 327 235 328 +3 328 235 233 +3 328 233 295 +3 295 233 261 +3 295 261 296 +3 296 261 223 +3 296 223 297 +3 297 223 222 +3 297 222 299 +3 299 222 220 +3 470 160 471 +3 471 160 164 +3 471 164 472 +3 472 164 166 +3 472 166 459 +3 459 166 168 +3 459 168 449 +3 449 168 170 +3 449 170 387 +3 387 170 184 +3 387 184 388 +3 388 184 182 +3 388 182 390 +3 390 182 181 +3 390 181 392 +3 392 181 180 +3 392 180 394 +3 394 180 186 +3 394 186 395 +3 395 186 178 +3 395 178 445 +3 445 178 177 +3 445 177 397 +3 397 177 175 +3 397 175 399 +3 399 175 174 +3 399 174 400 +3 400 174 173 +3 400 173 401 +3 401 173 187 +3 401 187 424 +3 424 187 131 +3 424 131 425 +3 425 131 130 +3 425 130 427 +3 427 130 128 +3 427 128 429 +3 429 128 126 +3 429 126 431 +3 431 126 124 +3 431 124 433 +3 433 124 122 +3 433 122 435 +3 435 122 120 +3 435 120 437 +3 437 120 118 +3 437 118 439 +3 439 118 116 +3 439 116 441 +3 441 116 114 +3 441 114 443 +3 443 114 112 +3 443 112 444 +3 444 112 110 +3 444 110 460 +3 460 110 109 +3 460 109 461 +3 461 109 144 +3 461 144 462 +3 462 144 143 +3 462 143 463 +3 463 143 141 +3 463 141 475 +3 475 141 140 +3 475 140 476 +3 476 140 191 +3 476 191 468 +3 468 191 151 +3 468 151 469 +3 469 151 158 +3 469 158 470 +3 470 158 160 +3 473 84 474 +3 474 84 155 +3 474 155 464 +3 464 155 154 +3 464 154 465 +3 465 154 98 +3 465 98 466 +3 466 98 97 +3 466 97 467 +3 467 97 96 +3 467 96 402 +3 402 96 95 +3 402 95 403 +3 403 95 81 +3 403 81 405 +3 405 81 80 +3 405 80 407 +3 407 80 78 +3 407 78 409 +3 409 78 76 +3 409 76 411 +3 411 76 74 +3 411 74 413 +3 413 74 72 +3 413 72 415 +3 415 72 70 +3 415 70 417 +3 417 70 68 +3 417 68 419 +3 419 68 66 +3 419 66 421 +3 421 66 64 +3 421 64 422 +3 422 64 62 +3 422 62 423 +3 423 62 60 +3 423 60 452 +3 452 60 59 +3 452 59 453 +3 453 59 188 +3 453 188 454 +3 454 188 94 +3 454 94 398 +3 398 94 93 +3 398 93 396 +3 396 93 92 +3 396 92 446 +3 446 92 90 +3 446 90 393 +3 393 90 89 +3 393 89 391 +3 391 89 134 +3 391 134 389 +3 389 134 133 +3 389 133 447 +3 447 133 132 +3 447 132 448 +3 448 132 100 +3 448 100 450 +3 450 100 102 +3 450 102 451 +3 451 102 104 +3 451 104 455 +3 455 104 106 +3 455 106 456 +3 456 106 135 +3 456 135 457 +3 457 135 137 +3 457 137 458 +3 458 137 147 +3 458 147 473 +3 473 147 84 +3 37 24 477 +3 477 24 148 +3 477 148 478 +3 478 148 197 +3 478 197 479 +3 2 480 88 +3 88 480 481 +3 88 481 198 +3 198 481 482 +3 88 7 2 +3 85 34 87 +3 87 34 7 +3 87 7 88 +3 82 32 83 +3 83 32 34 +3 83 34 85 +3 145 30 146 +3 146 30 32 +3 146 32 82 +3 189 28 190 +3 190 28 30 +3 190 30 145 +3 138 54 139 +3 139 54 28 +3 139 28 189 +3 108 52 136 +3 136 52 54 +3 136 54 138 +3 103 48 105 +3 105 48 50 +3 105 50 107 +3 107 50 52 +3 107 52 108 +3 103 101 48 +3 48 101 99 +3 48 99 91 +3 48 91 46 +3 46 91 194 +3 46 194 193 +3 46 193 44 +3 44 193 192 +3 44 192 196 +3 44 196 42 +3 42 196 195 +3 42 195 176 +3 185 40 183 +3 183 40 42 +3 183 42 176 +3 171 11 172 +3 172 11 40 +3 172 40 185 +3 167 12 169 +3 169 12 11 +3 169 11 171 +3 163 14 165 +3 165 14 12 +3 165 12 167 +3 161 16 162 +3 162 16 14 +3 162 14 163 +3 157 18 159 +3 159 18 16 +3 159 16 161 +3 179 20 156 +3 156 20 18 +3 156 18 157 +3 179 153 20 +3 20 153 152 +3 20 152 22 +3 22 152 150 +3 22 150 149 +3 148 24 149 +3 149 24 22 +3 197 198 479 +3 479 198 482 +3 483 484 485 +3 485 484 486 +3 485 486 487 +3 487 486 488 +3 487 488 489 +3 489 488 490 +3 489 490 491 +3 491 490 492 +3 491 492 493 +3 493 492 494 +3 493 494 495 +3 495 494 496 +3 495 496 497 +3 497 496 498 +3 497 498 499 +3 499 498 500 +3 499 500 501 +3 501 500 502 +3 501 502 503 +3 503 502 504 +3 503 504 505 +3 505 504 506 +3 505 506 507 +3 507 506 508 +3 507 508 509 +3 509 508 510 +3 509 510 511 +3 511 510 512 +3 511 512 513 +3 513 512 514 +3 513 514 515 +3 515 514 516 +3 515 516 517 +3 517 516 518 +3 55 514 56 +3 56 514 512 +3 56 512 57 +3 57 512 510 +3 57 510 35 +3 35 510 508 +3 35 508 36 +3 36 508 506 +3 36 506 38 +3 38 506 504 +3 38 504 26 +3 26 504 502 +3 26 502 25 +3 25 502 500 +3 25 500 23 +3 23 500 498 +3 23 498 21 +3 21 498 496 +3 21 496 19 +3 19 496 494 +3 19 494 17 +3 17 494 492 +3 17 492 15 +3 15 492 490 +3 15 490 13 +3 13 490 488 +3 13 488 39 +3 39 488 486 +3 39 486 41 +3 41 486 484 +3 41 484 43 +3 43 484 483 +3 43 483 45 +3 45 483 485 +3 45 485 47 +3 47 485 487 +3 47 487 49 +3 49 487 489 +3 49 489 51 +3 51 489 491 +3 51 491 53 +3 53 491 493 +3 53 493 29 +3 29 493 495 +3 29 495 31 +3 31 495 497 +3 31 497 33 +3 33 497 499 +3 33 499 5 +3 5 499 501 +3 5 501 6 +3 6 501 503 +3 6 503 8 +3 8 503 505 +3 8 505 9 +3 9 505 507 +3 9 507 10 +3 10 507 509 +3 10 509 27 +3 27 509 511 +3 27 511 0 +3 0 511 513 +3 0 513 1 +3 1 513 515 +3 1 515 3 +3 3 515 517 +3 3 517 4 +3 4 517 518 +3 4 518 58 +3 58 518 516 +3 58 516 55 +3 55 516 514 +3 477 480 37 +3 37 480 2 +3 478 481 477 +3 477 481 480 +3 479 482 478 +3 478 482 481 + diff --git a/AABB_tree/demo/data/couplingdown.off b/AABB_tree/demo/data/couplingdown.off new file mode 100644 index 00000000000..58743f0b3c0 --- /dev/null +++ b/AABB_tree/demo/data/couplingdown.off @@ -0,0 +1,5559 @@ +OFF +1841 3714 0 + +-0.486584 0.0183084 -0.18239 +-0.478988 0.0162827 -0.174528 +-0.481132 1.98113e-010 -0.174528 +-0.479516 0.0353743 -0.18239 +-0.472701 0.0314542 -0.174528 +-0.462703 0.0444798 -0.174528 +-0.468273 0.0500284 -0.18239 +-0.45362 0.0612732 -0.18239 +-0.449675 0.0544719 -0.174528 +-0.436555 0.0683427 -0.18239 +-0.434509 0.0607514 -0.174528 +-0.418239 0.0628931 -0.174528 +-0.418242 0.0707547 -0.18239 +-0.399928 0.0683443 -0.18239 +-0.355346 0 -0.174528 +-0.357488 0.0162703 -0.174528 +-0.347484 2.21698e-010 -0.18239 +-0.363767 0.0314364 -0.174528 +-0.356965 0.0353793 -0.18239 +-0.349896 0.0183139 -0.18239 +-0.373759 0.0444636 -0.174528 +-0.36821 0.0500331 -0.18239 +-0.382864 0.0612766 -0.18239 +-0.386785 0.0544622 -0.174528 +-0.401956 0.0607487 -0.174528 +-0.488994 -1.10063e-011 -0.18239 +-0.478989 0.0162777 -0.0628931 +-0.481132 2.09119e-010 -0.0628931 +-0.472707 0.0314454 -0.0628931 +-0.462712 0.0444711 -0.0628931 +-0.449686 0.0544669 -0.0628931 +-0.434519 0.0607495 -0.0628931 +-0.41824 0.062893 -0.0628931 +-0.401962 0.0607503 -0.0628931 +-0.357489 0.0162793 -0.0628931 +-0.355346 0 -0.0628931 +-0.363773 0.0314478 -0.0628931 +-0.373767 0.0444727 -0.0628931 +-0.386794 0.0544679 -0.0628931 +-0.349895 -0.0183112 -0.18239 +-0.363777 -0.0314542 -0.174528 +-0.35749 -0.0162827 -0.174528 +-0.356963 -0.0353755 -0.18239 +-0.38286 -0.0612744 -0.18239 +-0.373775 -0.0444798 -0.174528 +-0.368206 -0.0500295 -0.18239 +-0.399924 -0.0683433 -0.18239 +-0.401969 -0.0607514 -0.174528 +-0.386803 -0.0544719 -0.174528 +-0.418236 -0.0707547 -0.18239 +-0.436548 -0.0683447 -0.18239 +-0.418239 -0.0628931 -0.174528 +-0.434522 -0.0607487 -0.174528 +-0.453613 -0.0612772 -0.18239 +-0.449693 -0.0544622 -0.174528 +-0.462719 -0.0444636 -0.174528 +-0.468268 -0.0500335 -0.18239 +-0.486582 -0.0183172 -0.18239 +-0.47899 -0.0162703 -0.174528 +-0.472711 -0.0314364 -0.174528 +-0.479512 -0.0353805 -0.18239 +-0.309748 7.65723e-010 -0.18239 +-0.307268 -0.0346823 -0.18239 +-0.299877 -0.0686588 -0.18239 +-0.287726 -0.101238 -0.18239 +-0.403931 -0.28114 -0.18239 +-0.250225 -0.159593 -0.18239 +-0.373416 -0.320563 -0.18239 +-0.430301 -0.238833 -0.18239 +-0.225638 -0.184181 -0.18239 +-0.301244 -0.389169 -0.18239 +-0.33907 -0.356696 -0.18239 +-0.197802 -0.205019 -0.18239 +-0.452255 -0.194075 -0.18239 +-0.271062 -0.131756 -0.18239 +-0.134705 -0.233837 -0.18239 +-0.260327 -0.417648 -0.18239 +-0.167284 -0.221684 -0.18239 +-3.21898e-006 -0.347484 -0.18239 +-0.0313598 -0.241231 -0.18239 +0.00261829 -0.23384 -0.18239 +-0.0183165 -0.349896 -0.18239 +-0.0660437 -0.243711 -0.18239 +0.035375 -0.356962 -0.18239 +0.0183106 -0.349895 -0.18239 +0.0351988 -0.221689 -0.18239 +0.0500291 -0.368206 -0.18239 +0.0935558 -0.184187 -0.18239 +0.0612742 -0.38286 -0.18239 +0.118144 -0.159599 -0.18239 +0.339065 -0.3567 -0.18239 +0.301238 -0.389173 -0.18239 +0.260321 -0.417652 -0.18239 +0.175192 -0.0346844 -0.18239 +0.177673 -7.65723e-010 -0.18239 +0.214832 -0.0260734 -0.18239 +0.0657184 -0.205025 -0.18239 +0.212264 4.19811e-010 -0.18239 +0.214832 0.0260734 -0.18239 +0.175192 0.0346823 -0.18239 +0.222437 0.0511448 -0.18239 +0.167802 0.0686588 -0.18239 +0.155651 0.101238 -0.18239 +0.234788 0.0742507 -0.18239 +0.138987 0.131756 -0.18239 +0.251409 0.0945033 -0.18239 +0.11815 0.159593 -0.18239 +0.271661 0.111124 -0.18239 +0.294767 0.123474 -0.18239 +0.33907 0.356696 -0.18239 +0.0612764 0.382864 -0.18239 +0.260327 0.417648 -0.18239 +0.0935628 0.184181 -0.18239 +0.0352087 0.221684 -0.18239 +0.00262929 0.233837 -0.18239 +0.0183145 0.349896 -0.18239 +0.301244 0.389169 -0.18239 +3.23189e-006 0.347484 -0.18239 +-0.0313481 0.241229 -0.18239 +-0.018309 0.349894 -0.18239 +-0.0500288 0.368206 -0.18239 +-0.0353741 0.356962 -0.18239 +-0.0660318 0.243711 -0.18239 +-0.0612735 0.382859 -0.18239 +-0.100716 0.241231 -0.18239 +-0.260321 0.417652 -0.18239 +-0.216732 0.441846 -0.18239 +-0.134694 0.23384 -0.18239 +-0.197794 0.205025 -0.18239 +-0.301238 0.389173 -0.18239 +-0.167274 0.221689 -0.18239 +-0.373412 0.320567 -0.18239 +-0.225631 0.184187 -0.18239 +-0.25022 0.159599 -0.18239 +-0.339065 0.3567 -0.18239 +-0.271059 0.131762 -0.18239 +-0.430299 0.238837 -0.18239 +-0.403928 0.281145 -0.18239 +0.222437 -0.0511448 -0.18239 +0.234788 -0.0742507 -0.18239 +0.167801 -0.0686626 -0.18239 +0.251409 -0.0945033 -0.18239 +0.271661 -0.111124 -0.18239 +0.138983 -0.131762 -0.18239 +0.155648 -0.101243 -0.18239 +0.294767 -0.123474 -0.18239 +0.373412 -0.320567 -0.18239 +0.403928 -0.281145 -0.18239 +0.345912 -0.133648 -0.18239 +0.430299 -0.238837 -0.18239 +0.371985 -0.13108 -0.18239 +0.452254 -0.194079 -0.18239 +0.397057 -0.123474 -0.18239 +0.469568 -0.147329 -0.18239 +0.420163 -0.111124 -0.18239 +0.440415 -0.0945033 -0.18239 +0.457036 -0.0742507 -0.18239 +0.482064 -0.0990674 -0.18239 +0.469386 -0.0511448 -0.18239 +0.489613 -0.0497892 -0.18239 +0.476992 -0.0260734 -0.18239 +0.47956 -4.19811e-010 -0.18239 +0.492138 1.5456e-009 -0.18239 +0.476992 0.0260734 -0.18239 +0.457036 0.0742507 -0.18239 +0.489613 0.0497881 -0.18239 +0.469386 0.0511448 -0.18239 +0.440415 0.0945033 -0.18239 +0.482064 0.0990654 -0.18239 +0.420163 0.111124 -0.18239 +0.469569 0.147326 -0.18239 +0.397057 0.123474 -0.18239 +0.371985 0.13108 -0.18239 +0.452255 0.194075 -0.18239 +0.345912 0.133648 -0.18239 +0.430301 0.238833 -0.18239 +0.319839 0.13108 -0.18239 +0.403931 0.28114 -0.18239 +0.373416 0.320563 -0.18239 +0.0500327 0.368209 -0.18239 +0.035379 0.356965 -0.18239 +0.12336 0.476427 -0.18239 +0.0707547 0.418239 -0.18239 +0.0683435 0.436553 -0.18239 +0.0612742 0.453618 -0.18239 +0.035375 0.479516 -0.18239 +0.0745276 0.486462 -0.18239 +0.0500291 0.468272 -0.18239 +0.0249306 0.491506 -0.18239 +-0.0249223 0.491507 -0.18239 +-3.21898e-006 0.488994 -0.18239 +-0.035381 0.479512 -0.18239 +-0.0183165 0.486582 -0.18239 +-0.0500338 0.468267 -0.18239 +-0.0745194 0.486464 -0.18239 +-0.0612771 0.453613 -0.18239 +-0.123352 0.476429 -0.18239 +-0.0707546 0.418239 -0.18239 +-0.0683449 0.436547 -0.18239 +-0.170919 0.461505 -0.18239 +-0.0683425 0.399922 -0.18239 +-0.307268 0.0346844 -0.18239 +-0.452254 0.194079 -0.18239 +0.0183106 0.486583 -0.18239 +0.170926 0.461502 -0.18239 +-0.299876 0.0686626 -0.18239 +-0.287724 0.101243 -0.18239 +-0.482064 0.0990674 -0.18239 +-0.469568 0.147329 -0.18239 +-0.489613 0.0497892 -0.18239 +-0.492138 -1.5456e-009 -0.18239 +-0.489613 -0.0497881 -0.18239 +-0.482064 -0.0990654 -0.18239 +-0.469569 -0.147326 -0.18239 +-0.216739 -0.441842 -0.18239 +-0.0500338 -0.368211 -0.18239 +-0.0612771 -0.382865 -0.18239 +-0.100727 -0.241229 -0.18239 +0.170919 -0.461505 -0.18239 +0.0707547 -0.418239 -0.18239 +0.0683435 -0.399925 -0.18239 +0.216732 -0.441846 -0.18239 +0.319839 -0.13108 -0.18239 +0.216739 0.441842 -0.18239 +-0.0683425 -0.436556 -0.18239 +-0.12336 -0.476427 -0.18239 +-0.0707546 -0.418239 -0.18239 +-0.0612735 -0.45362 -0.18239 +-0.0500288 -0.468272 -0.18239 +-0.0745276 -0.486462 -0.18239 +-0.0353741 -0.479516 -0.18239 +-0.0249306 -0.491506 -0.18239 +0.0249223 -0.491507 -0.18239 +3.23189e-006 -0.488994 -0.18239 +0.035379 -0.479513 -0.18239 +0.0183145 -0.486582 -0.18239 +0.0612764 -0.453614 -0.18239 +0.0745194 -0.486464 -0.18239 +0.0500327 -0.468269 -0.18239 +0.0683441 -0.43655 -0.18239 +0.123352 -0.476429 -0.18239 +-0.018309 -0.486584 -0.18239 +0.065727 0.205019 -0.18239 +0.0683441 0.399928 -0.18239 +-0.035381 -0.356966 -0.18239 +-0.170926 -0.461502 -0.18239 +-0.0683449 -0.399931 -0.18239 +-0.450743 0.0118331 -0.0628931 +-0.45283 0 -0.0628931 +-0.435532 0.029958 -0.0628931 +-0.444737 0.0222351 -0.0628931 +-0.424245 0.0340657 -0.0628931 +-0.400943 0.0299566 -0.0628931 +-0.391739 0.022233 -0.0628931 +-0.385734 0.0118311 -0.0628931 +-0.383648 1.69811e-010 -0.0628931 +-0.357489 -0.0162765 -0.0628931 +-0.385734 -0.0118305 -0.0628931 +-0.363772 -0.0314457 -0.0628931 +-0.391742 -0.0222361 -0.0628931 +-0.373766 -0.0444715 -0.0628931 +-0.386791 -0.0544662 -0.0628931 +-0.400943 -0.0299567 -0.0628931 +-0.401961 -0.0607499 -0.0628931 +-0.412234 -0.0340659 -0.0628931 +-0.418238 -0.062893 -0.0628931 +-0.424246 -0.0340657 -0.0628931 +-0.434516 -0.0607503 -0.0628931 +-0.449686 -0.0544669 -0.0628931 +-0.435536 -0.0299557 -0.0628931 +-0.472706 -0.0314471 -0.0628931 +-0.444737 -0.0222348 -0.0628931 +-0.46271 -0.044473 -0.0628931 +-0.478989 -0.0162784 -0.0628931 +-0.450745 -0.0118288 -0.0628931 +-0.41223 0.0340651 -0.0628931 +0.222543 0.024541 -0.174528 +0.220126 3.94654e-010 -0.174528 +0.229702 0.0481388 -0.174528 +0.241327 0.0698863 -0.174528 +0.256971 0.0889478 -0.174528 +0.276034 0.104591 -0.174528 +0.297782 0.116214 -0.174528 +0.32138 0.12337 -0.174528 +0.34592 0.125786 -0.174528 +0.434861 0.0889389 -0.174528 +0.415801 0.104583 -0.174528 +0.471698 0 -0.174528 +0.469281 0.0245372 -0.174528 +0.462125 0.048132 -0.174528 +0.450502 0.0698778 -0.174528 +0.37046 0.123367 -0.174528 +0.394056 0.116208 -0.174528 +0.497592 0.0490074 -0.174528 +0.490393 0.097543 -0.174528 +0.478471 0.145139 -0.174528 +0.461941 0.191338 -0.174528 +0.440962 0.235695 -0.174528 +0.415737 0.277782 -0.174528 +0.386508 0.317193 -0.174528 +0.353556 0.35355 -0.174528 +0.3172 0.386503 -0.174528 +0.277788 0.415733 -0.174528 +0.235701 0.440959 -0.174528 +0.191344 0.461939 -0.174528 +0.145144 0.47847 -0.174528 +0.0975465 0.490392 -0.174528 +0.0490092 0.497592 -0.174528 +-7.06918e-009 0.5 -0.174528 +-0.0490073 0.497592 -0.174528 +-0.47847 0.145144 -0.174528 +-0.461939 0.191344 -0.174528 +-0.5 1.57075e-008 -0.174528 +-0.497592 0.0490092 -0.174528 +-0.490392 0.0975465 -0.174528 +-0.35355 0.353556 -0.174528 +-0.415733 0.277788 -0.174528 +-0.440959 0.235701 -0.174528 +-0.386503 0.3172 -0.174528 +-0.191338 0.461941 -0.174528 +-0.317193 0.386508 -0.174528 +-0.277782 0.415737 -0.174528 +-0.235695 0.440962 -0.174528 +-0.145139 0.478471 -0.174528 +-0.097543 0.490393 -0.174528 +0.5 0 -0.174528 +0.169811 -7.40566e-010 -0.174528 +0.160257 -0.0664491 -0.174528 +0.16741 -0.0335663 -0.174528 +0.148496 -0.097979 -0.174528 +0.112201 -0.154453 -0.174528 +0.132368 -0.127514 -0.174528 +0.0884057 -0.178247 -0.174528 +0.0614665 -0.198412 -0.174528 +0.0319323 -0.214538 -0.174528 +0.000404297 -0.226297 -0.174528 +-0.0660377 -0.235849 -0.174528 +-0.0324755 -0.233449 -0.174528 +-0.099604 -0.233448 -0.174528 +-0.164017 -0.214534 -0.174528 +-0.132487 -0.226295 -0.174528 +-0.193552 -0.198406 -0.174528 +-0.22049 -0.178239 -0.174528 +-0.299486 -0.0335622 -0.174528 +-0.301887 0 -0.174528 +-0.292334 -0.066442 -0.174528 +-0.280576 -0.09797 -0.174528 +-0.26445 -0.127504 -0.174528 +-0.244285 -0.154443 -0.174528 +0.462122 -0.0481388 -0.174528 +0.469281 -0.024541 -0.174528 +0.450497 -0.0698863 -0.174528 +0.41579 -0.104591 -0.174528 +0.434853 -0.0889478 -0.174528 +0.394042 -0.116214 -0.174528 +0.370444 -0.12337 -0.174528 +0.345904 -0.125786 -0.174528 +0.321364 -0.123367 -0.174528 +0.276023 -0.104583 -0.174528 +0.297768 -0.116208 -0.174528 +0.256963 -0.0889389 -0.174528 +0.222542 -0.0245372 -0.174528 +0.229699 -0.048132 -0.174528 +0.241322 -0.0698778 -0.174528 +-0.0607487 -0.401956 -0.174528 +-0.0628931 -0.418239 -0.174528 +-0.0544622 -0.386785 -0.174528 +-0.0444636 -0.373759 -0.174528 +-0.0314364 -0.363767 -0.174528 +-0.0162703 -0.357488 -0.174528 +8.88365e-010 -0.355346 -0.174528 +0.0544719 -0.386803 -0.174528 +0.0607514 -0.401969 -0.174528 +0.0628931 -0.418239 -0.174528 +0.0162827 -0.35749 -0.174528 +0.0444798 -0.373775 -0.174528 +0.0314542 -0.363777 -0.174528 +-0.299486 0.0335663 -0.174528 +-0.292332 0.0664491 -0.174528 +-0.280572 0.097979 -0.174528 +-0.264444 0.127514 -0.174528 +-0.244277 0.154453 -0.174528 +-0.220481 0.178247 -0.174528 +-0.193542 0.198412 -0.174528 +-0.164008 0.214538 -0.174528 +-0.13248 0.226297 -0.174528 +-0.0996 0.233449 -0.174528 +-0.0660377 0.235849 -0.174528 +0.167411 0.0335622 -0.174528 +0.1485 0.09797 -0.174528 +0.132374 0.127504 -0.174528 +0.160259 0.066442 -0.174528 +-0.0324714 0.233448 -0.174528 +0.112209 0.154443 -0.174528 +0.0884149 0.178239 -0.174528 +0.0614762 0.198406 -0.174528 +0.0319413 0.214534 -0.174528 +0.00041139 0.226295 -0.174528 +-0.0607487 0.434522 -0.174528 +-0.0628931 0.418239 -0.174528 +-0.0544622 0.449693 -0.174528 +-0.0444636 0.462719 -0.174528 +-0.0314364 0.472711 -0.174528 +-0.0162703 0.47899 -0.174528 +8.88365e-010 0.481132 -0.174528 +0.0544719 0.449675 -0.174528 +0.0607514 0.434509 -0.174528 +0.0628931 0.418239 -0.174528 +0.0162827 0.478988 -0.174528 +0.0444798 0.462703 -0.174528 +0.0314542 0.472701 -0.174528 +-0.497592 -0.0490074 -0.174528 +-0.490393 -0.097543 -0.174528 +-0.478471 -0.145139 -0.174528 +-0.461941 -0.191338 -0.174528 +-0.440962 -0.235695 -0.174528 +-0.386508 -0.317193 -0.174528 +-0.415737 -0.277782 -0.174528 +-0.353556 -0.35355 -0.174528 +-0.277788 -0.415733 -0.174528 +-0.3172 -0.386503 -0.174528 +-0.235701 -0.440959 -0.174528 +-0.191344 -0.461939 -0.174528 +-0.145144 -0.47847 -0.174528 +-0.0975465 -0.490392 -0.174528 +7.06918e-009 -0.5 -0.174528 +-0.0490092 -0.497592 -0.174528 +0.0490073 -0.497592 -0.174528 +0.145139 -0.478471 -0.174528 +0.097543 -0.490393 -0.174528 +0.191338 -0.461941 -0.174528 +0.235695 -0.440962 -0.174528 +0.277782 -0.415737 -0.174528 +0.317193 -0.386508 -0.174528 +0.35355 -0.353556 -0.174528 +0.497592 -0.0490092 -0.174528 +0.490392 -0.0975465 -0.174528 +0.47847 -0.145144 -0.174528 +0.461939 -0.191344 -0.174528 +0.440959 -0.235701 -0.174528 +0.415733 -0.277788 -0.174528 +0.386503 -0.3172 -0.174528 +0.0544622 0.386785 -0.174528 +0.0607487 0.401956 -0.174528 +0.0444636 0.373759 -0.174528 +0.0162703 0.357488 -0.174528 +0.0314364 0.363767 -0.174528 +-8.88365e-010 0.355346 -0.174528 +-0.0162827 0.35749 -0.174528 +-0.0314542 0.363777 -0.174528 +-0.0444798 0.373775 -0.174528 +-0.0607514 0.401969 -0.174528 +-0.0544719 0.386803 -0.174528 +0.0544622 -0.449693 -0.174528 +0.0607487 -0.434522 -0.174528 +0.0444636 -0.462719 -0.174528 +0.0162703 -0.47899 -0.174528 +0.0314364 -0.472711 -0.174528 +-8.88365e-010 -0.481132 -0.174528 +-0.0162827 -0.478988 -0.174528 +-0.0314542 -0.472701 -0.174528 +-0.0444798 -0.462703 -0.174528 +-0.0607514 -0.434509 -0.174528 +-0.0544719 -0.449675 -0.174528 +-0.450745 0.0118288 0.157233 +-0.45283 1.08491e-010 0.157233 +-0.444737 0.0222348 0.157233 +-0.435536 0.0299557 0.157233 +-0.424246 0.0340657 0.157233 +-0.412234 0.0340659 0.157233 +-0.383648 -6.13207e-011 0.157233 +-0.385734 0.0118305 0.157233 +-0.391742 0.0222361 0.157233 +-0.400943 0.0299567 0.157233 +-0.385734 -0.0118311 0.157233 +-0.391739 -0.022233 0.157233 +-0.400943 -0.0299566 0.157233 +-0.41223 -0.0340651 0.157233 +-0.435532 -0.029958 0.157233 +-0.424245 -0.0340657 0.157233 +-0.444737 -0.0222351 0.157233 +-0.450743 -0.0118331 0.157233 +0.229686 0.0480996 0.18239 +0.241292 0.0698336 0.18239 +0.222539 0.0245197 0.18239 +0.220126 1.99686e-010 0.18239 +0.275946 0.104532 0.18239 +0.256911 0.0888878 0.18239 +0.37032 0.123395 0.149371 +0.345755 0.125786 0.149371 +0.297666 0.116166 0.18239 +0.393944 0.116254 0.149371 +0.41572 0.104637 0.149371 +0.434807 0.0889932 0.149371 +0.450471 0.0699242 0.149371 +0.345755 0.125786 0.18239 +0.321237 0.123342 0.18239 +0.469278 0.024554 0.149371 +0.471698 0 0.149371 +0.462111 0.0481651 0.149371 +-0.5 1.57075e-008 0.149371 +-0.497592 0.0490092 0.149371 +-0.490392 0.0975465 0.149371 +-0.47847 0.145144 0.149371 +-0.461939 0.191344 0.149371 +-0.440959 0.235701 0.149371 +-0.415733 0.277788 0.149371 +-0.386503 0.3172 0.149371 +-0.35355 0.353556 0.149371 +-0.317193 0.386508 0.149371 +-0.277782 0.415737 0.149371 +-0.235695 0.440962 0.149371 +-0.191338 0.461941 0.149371 +-0.145139 0.478471 0.149371 +-0.097543 0.490393 0.149371 +-0.0490073 0.497592 0.149371 +-7.06918e-009 0.5 0.149371 +0.0490092 0.497592 0.149371 +0.5 0 0.149371 +0.497592 0.0490074 0.149371 +0.490393 0.097543 0.149371 +0.478471 0.145139 0.149371 +0.461941 0.191338 0.149371 +0.440962 0.235695 0.149371 +0.415737 0.277782 0.149371 +0.386508 0.317193 0.149371 +0.353556 0.35355 0.149371 +0.3172 0.386503 0.149371 +0.277788 0.415733 0.149371 +0.235701 0.440959 0.149371 +0.191344 0.461939 0.149371 +0.145144 0.47847 0.149371 +0.0975465 0.490392 0.149371 +0.163898 -0.0524814 -0.0330189 +0.168327 -0.0264128 -0.0330189 +0.156574 -0.0779018 -0.0330189 +0.146455 -0.102331 -0.0330189 +0.118356 -0.147049 -0.0330189 +0.133658 -0.125484 -0.0330189 +0.100728 -0.166775 -0.0330189 +0.0810117 -0.184394 -0.0330189 +0.0594362 -0.199702 -0.0330189 +0.0118524 -0.222616 -0.0330189 +0.0362933 -0.212493 -0.0330189 +-0.0396372 -0.234367 -0.0330189 +-0.0135564 -0.229936 -0.0330189 +-0.0924506 -0.234365 -0.0330189 +-0.0660377 -0.235849 -0.0330189 +-0.118519 -0.229936 -0.0330189 +-0.168369 -0.212493 -0.0330189 +-0.14394 -0.222612 -0.0330189 +-0.191522 -0.199696 -0.0330189 +-0.213087 -0.184394 -0.0330189 +-0.301887 0 -0.0330189 +-0.300404 -0.0264006 -0.0330189 +-0.295974 -0.0524814 -0.0330189 +-0.288654 -0.0778901 -0.0330189 +-0.27853 -0.102331 -0.0330189 +-0.26574 -0.125474 -0.0330189 +-0.250432 -0.147049 -0.0330189 +-0.232812 -0.166766 -0.0330189 +0.169811 -7.40566e-010 -0.0330189 +0.462106 -0.0481778 0.149371 +0.469277 -0.0245618 0.149371 +0.450462 -0.0699384 0.149371 +0.434794 -0.089006 0.149371 +0.393932 -0.116259 0.149371 +0.415705 -0.104647 0.149371 +0.370312 -0.123397 0.149371 +0.321238 -0.123342 0.18239 +0.345755 -0.125786 0.149371 +0.297668 -0.116166 0.18239 +0.275948 -0.104533 0.18239 +0.256913 -0.0888891 0.18239 +0.222539 -0.0245212 0.18239 +0.241292 -0.0698341 0.18239 +0.229686 -0.0481004 0.18239 +0.345755 -0.125786 0.18239 +-0.0607501 -0.401961 -0.0628931 +-0.062893 -0.418239 -0.0628931 +-0.0544675 -0.386794 -0.0628931 +-0.044473 -0.373768 -0.0628931 +-0.0314467 -0.363772 -0.0628931 +-0.0162796 -0.35749 -0.0628931 +-1.25699e-006 -0.355346 -0.0628931 +0.0162768 -0.357489 -0.0628931 +0.0607496 -0.40196 -0.0628931 +0.0628931 -0.418239 -0.0628931 +0.0544662 -0.386791 -0.0628931 +0.0444715 -0.373766 -0.0628931 +0.0314449 -0.363771 -0.0628931 +-0.300403 0.0264128 -0.0330189 +-0.295974 0.0524814 -0.0330189 +-0.28865 0.0779018 -0.0330189 +-0.27853 0.102331 -0.0330189 +-0.265733 0.125484 -0.0330189 +-0.250432 0.147049 -0.0330189 +-0.232804 0.166775 -0.0330189 +-0.213087 0.184394 -0.0330189 +-0.168369 0.212493 -0.0330189 +-0.191512 0.199702 -0.0330189 +-0.143928 0.222616 -0.0330189 +-0.118519 0.229936 -0.0330189 +-0.0924383 0.234367 -0.0330189 +0.168329 0.0264006 -0.0330189 +0.163898 0.0524814 -0.0330189 +0.156578 0.0778901 -0.0330189 +0.146455 0.102331 -0.0330189 +0.118356 0.147049 -0.0330189 +0.133665 0.125474 -0.0330189 +0.100737 0.166766 -0.0330189 +0.0810117 0.184394 -0.0330189 +0.0594467 0.199696 -0.0330189 +0.0362933 0.212493 -0.0330189 +0.011864 0.222612 -0.0330189 +-0.0135564 0.229936 -0.0330189 +-0.0396249 0.234365 -0.0330189 +-0.0660377 0.235849 -0.0330189 +-0.0607501 0.434517 -0.0628931 +-0.062893 0.418239 -0.0628931 +-0.0544675 0.449684 -0.0628931 +-0.044473 0.46271 -0.0628931 +-0.0314467 0.472706 -0.0628931 +-0.0162796 0.478988 -0.0628931 +-1.25699e-006 0.481132 -0.0628931 +0.0162768 0.478989 -0.0628931 +0.0607496 0.434518 -0.0628931 +0.0628931 0.418239 -0.0628931 +0.0544662 0.449687 -0.0628931 +0.0444715 0.462712 -0.0628931 +0.0314449 0.472707 -0.0628931 +0.497592 -0.0490092 0.149371 +0.490392 -0.0975465 0.149371 +0.47847 -0.145144 0.149371 +0.461939 -0.191344 0.149371 +0.440959 -0.235701 0.149371 +0.415733 -0.277788 0.149371 +0.35355 -0.353556 0.149371 +0.386503 -0.3172 0.149371 +0.317193 -0.386508 0.149371 +0.277782 -0.415737 0.149371 +0.235695 -0.440962 0.149371 +0.191338 -0.461941 0.149371 +0.145139 -0.478471 0.149371 +0.097543 -0.490393 0.149371 +0.0490073 -0.497592 0.149371 +-0.0490092 -0.497592 0.149371 +7.06918e-009 -0.5 0.149371 +-0.0975465 -0.490392 0.149371 +-0.145144 -0.47847 0.149371 +-0.191344 -0.461939 0.149371 +-0.235701 -0.440959 0.149371 +-0.277788 -0.415733 0.149371 +-0.3172 -0.386503 0.149371 +-0.353556 -0.35355 0.149371 +-0.497592 -0.0490074 0.149371 +-0.490393 -0.097543 0.149371 +-0.478471 -0.145139 0.149371 +-0.461941 -0.191338 0.149371 +-0.440962 -0.235695 0.149371 +-0.415737 -0.277782 0.149371 +-0.386508 -0.317193 0.149371 +0.0544675 0.386793 -0.0628931 +0.0607504 0.401963 -0.0628931 +0.0444727 0.373767 -0.0628931 +0.0162784 0.357489 -0.0628931 +0.0314478 0.363773 -0.0628931 +1.26817e-006 0.355346 -0.0628931 +-0.0162767 0.357489 -0.0628931 +-0.0314466 0.363772 -0.0628931 +-0.0444711 0.373766 -0.0628931 +-0.0607499 0.401961 -0.0628931 +-0.0544666 0.386792 -0.0628931 +0.0544675 -0.449685 -0.0628931 +0.0607504 -0.434515 -0.0628931 +0.0444727 -0.462711 -0.0628931 +0.0162784 -0.478989 -0.0628931 +0.0314478 -0.472705 -0.0628931 +1.26817e-006 -0.481132 -0.0628931 +-0.0162767 -0.478989 -0.0628931 +-0.0314466 -0.472706 -0.0628931 +-0.0444711 -0.462712 -0.0628931 +-0.0607499 -0.434517 -0.0628931 +-0.0544666 -0.449686 -0.0628931 +-0.492138 -1.54607e-008 0.157233 +-0.489613 -0.0497892 0.157233 +-0.482064 -0.0990674 0.157233 +-0.358929 -0.0808609 0.157233 +-0.365669 -0.0406794 0.157233 +-0.367925 1.01918e-008 0.157233 +-0.365668 0.0406834 0.157233 +-0.358927 0.0808676 0.157233 +-0.482064 0.0990654 0.157233 +-0.489613 0.0497881 0.157233 +-0.0345912 0.418239 0.157233 +-0.087889 0.357273 0.157233 +-0.0325042 0.406406 0.157233 +-0.0264981 0.396004 0.157233 +-0.0478455 0.3648 0.157233 +-0.0172932 0.388281 0.157233 +-0.00600619 0.384173 0.157233 +-0.00721597 0.367854 0.157233 +0.00600918 0.384174 0.157233 +0.0335014 0.366396 0.157233 +0.0172958 0.388282 0.157233 +0.0264997 0.396006 0.157233 +0.0325049 0.406408 0.157233 +0.073807 0.360445 0.157233 +0.123352 0.476429 0.157233 +0.034591 0.418239 0.157233 +0.0745194 0.486464 0.157233 +0.0249223 0.491507 0.157233 +0.0264971 0.440475 0.157233 +0.0325052 0.430069 0.157233 +0.00600464 0.452305 0.157233 +0.0172957 0.448196 0.157233 +-0.0249306 0.491506 0.157233 +-0.0172974 0.448195 0.157233 +-0.0264984 0.440474 0.157233 +-0.0745276 0.486462 0.157233 +-0.0325057 0.430068 0.157233 +-0.0325042 -0.430072 0.157233 +-0.0745194 -0.486464 0.157233 +-0.0264981 -0.440474 0.157233 +-0.0345912 -0.418239 0.157233 +-0.0172932 -0.448197 0.157233 +-0.0249223 -0.491507 0.157233 +-0.00600619 -0.452305 0.157233 +0.0249306 -0.491506 0.157233 +0.00600918 -0.452304 0.157233 +0.0745276 -0.486462 0.157233 +0.0264997 -0.440472 0.157233 +0.0172958 -0.448196 0.157233 +0.12336 -0.476427 0.157233 +0.034591 -0.418239 0.157233 +0.0325049 -0.43007 0.157233 +0.0738043 -0.360446 0.157233 +0.0334954 -0.366397 0.157233 +0.0325052 -0.406409 0.157233 +0.0264971 -0.396003 0.157233 +-0.00722415 -0.367854 0.157233 +0.00600464 -0.384173 0.157233 +-0.00600667 -0.384173 0.157233 +-0.0172974 -0.388283 0.157233 +-0.0478547 -0.364799 0.157233 +-0.0264984 -0.396004 0.157233 +-0.087898 -0.357271 0.157233 +-0.0325057 -0.40641 0.157233 +-0.469568 -0.147329 0.157233 +-0.452254 -0.194079 0.157233 +-0.33238 -0.157771 0.157233 +-0.347787 -0.120052 0.157233 +-0.403928 -0.281145 0.157233 +-0.312897 -0.193556 0.157233 +-0.430299 -0.238837 0.157233 +-0.262704 -0.257595 0.157233 +-0.289576 -0.226967 0.157233 +-0.373412 -0.320567 0.157233 +-0.339065 -0.3567 0.157233 +-0.199664 -0.309035 0.157233 +-0.301238 -0.389173 0.157233 +-0.260321 -0.417652 0.157233 +-0.232609 -0.285064 0.157233 +-0.164271 -0.329216 0.157233 +-0.126863 -0.345361 0.157233 +-0.216732 -0.441846 0.157233 +-0.170919 -0.461505 0.157233 +-0.123352 -0.476429 0.157233 +0.0172957 -0.388282 0.157233 +0.113207 -0.350075 0.157233 +0.170926 -0.461502 0.157233 +0.151219 -0.335412 0.157233 +0.216739 -0.441842 0.157233 +0.187378 -0.316635 0.157233 +0.260327 -0.417648 0.157233 +0.221239 -0.293976 0.157233 +0.301244 -0.389169 0.157233 +0.252388 -0.26771 0.157233 +0.33907 -0.356696 0.157233 +0.373416 -0.320563 0.157233 +0.280442 -0.238161 0.157233 +0.430301 -0.238833 0.157233 +0.369315 -0.131583 0.157233 +0.32593 -0.170698 0.157233 +0.452255 -0.194075 0.157233 +0.469569 -0.147326 0.157233 +0.394898 -0.124347 0.157233 +0.482064 -0.0990654 0.157233 +0.439311 -0.0955942 0.157233 +0.489613 -0.0497881 0.157233 +0.476916 -0.0264531 0.157233 +0.469088 -0.0518603 0.157233 +0.456385 -0.0752154 0.157233 +0.492138 1.54607e-008 0.157233 +0.47956 -1.5723e-012 0.157233 +0.476915 0.0264549 0.157233 +0.469087 0.0518621 0.157233 +0.489613 0.0497892 0.157233 +0.456384 0.075217 0.157233 +0.482064 0.0990674 0.157233 +0.469568 0.147329 0.157233 +0.43931 0.0955955 0.157233 +0.452254 0.194079 0.157233 +0.394897 0.124347 0.157233 +0.41854 0.112191 0.157233 +0.430299 0.238837 0.157233 +0.369315 0.131583 0.157233 +0.325932 0.170695 0.157233 +0.30506 0.205686 0.157233 +0.403928 0.281145 0.157233 +0.280447 0.238155 0.157233 +0.373412 0.320567 0.157233 +0.252395 0.267704 0.157233 +0.339065 0.3567 0.157233 +0.301238 0.389173 0.157233 +0.221246 0.29397 0.157233 +0.260321 0.417652 0.157233 +0.187384 0.316632 0.157233 +0.216732 0.441846 0.157233 +0.151224 0.33541 0.157233 +0.113208 0.350075 0.157233 +0.170919 0.461505 0.157233 +-0.00600667 0.452305 0.157233 +-0.12336 0.476427 0.157233 +-0.126855 0.345364 0.157233 +-0.170926 0.461502 0.157233 +-0.216739 0.441842 0.157233 +-0.164266 0.329219 0.157233 +-0.260327 0.417648 0.157233 +-0.199662 0.309037 0.157233 +-0.301244 0.389169 0.157233 +-0.232608 0.285065 0.157233 +-0.33907 0.356696 0.157233 +-0.2627 0.257599 0.157233 +-0.289572 0.226973 0.157233 +-0.373416 0.320563 0.157233 +-0.403931 0.28114 0.157233 +-0.312892 0.193563 0.157233 +-0.430301 0.238833 0.157233 +-0.332376 0.157779 0.157233 +-0.452255 0.194075 0.157233 +0.403931 -0.28114 0.157233 +0.305057 -0.205691 0.157233 +-0.347784 0.12006 0.157233 +-0.469569 0.147326 0.157233 +0.418542 -0.11219 0.157233 +0.342807 0.133612 0.157233 +0.342807 -0.133612 0.157233 +-0.346635 -0.0369426 0.18239 +-0.365631 -0.0410158 0.18239 +-0.339412 -0.073253 0.18239 +-0.349057 8.89151e-009 0.18239 +-0.367925 -1.02752e-008 0.18239 +-0.35878 -0.0815202 0.18239 +-0.347456 -0.121008 0.18239 +-0.327512 -0.10831 0.18239 +-0.3318 -0.158987 0.18239 +-0.311137 -0.141513 0.18239 +-0.312009 -0.194984 0.18239 +-0.290568 -0.172295 0.18239 +-0.288329 -0.228549 0.18239 +-0.238324 -0.224537 0.18239 +-0.266158 -0.200128 0.18239 +-0.261055 -0.259265 0.18239 +-0.207542 -0.245104 0.18239 +-0.230528 -0.286749 0.18239 +-0.17434 -0.261477 0.18239 +-0.161266 -0.330699 0.18239 +-0.197126 -0.31066 0.18239 +-0.123395 -0.346615 0.18239 +-0.139285 -0.273376 0.18239 +-0.0660377 -0.283019 0.18239 +-0.102977 -0.280598 0.18239 +-0.0839858 -0.358211 0.18239 +-0.0290951 -0.280597 0.18239 +-0.0435305 -0.36534 0.18239 +0.00721529 -0.273375 0.18239 +-0.00253317 -0.367916 0.18239 +0.0422721 -0.261474 0.18239 +0.038495 -0.365905 0.18239 +0.0754755 -0.245099 0.18239 +0.0790424 -0.359334 0.18239 +0.118605 -0.348283 0.18239 +0.156692 -0.33289 0.18239 +0.106257 -0.224531 0.18239 +0.192826 -0.313348 0.18239 +0.134091 -0.20012 0.18239 +0.226555 -0.289899 0.18239 +0.1585 -0.172286 0.18239 +0.25746 -0.262836 0.18239 +0.21456 -0.0369392 0.18239 +0.216981 -8.89151e-009 0.18239 +0.21456 0.0369426 0.18239 +0.207337 0.073253 0.18239 +0.195436 0.10831 0.18239 +0.179062 0.141513 0.18239 +0.158493 0.172295 0.18239 +0.285149 0.232505 0.18239 +0.226548 0.289904 0.18239 +0.257453 0.262843 0.18239 +0.192819 0.313352 0.18239 +0.134083 0.200128 0.18239 +0.118604 0.348284 0.18239 +0.0754668 0.245104 0.18239 +0.156687 0.332893 0.18239 +0.309291 0.199268 0.18239 +0.0790397 0.359334 0.18239 +0.0072092 0.273376 0.18239 +0.0384889 0.365906 0.18239 +-0.00254156 0.367916 0.18239 +-0.0290986 0.280598 0.18239 +-0.0435399 0.365339 0.18239 +-0.0660377 0.283019 0.18239 +-0.083995 0.358208 0.18239 +-0.174348 0.261474 0.18239 +-0.139291 0.273375 0.18239 +-0.197129 0.310659 0.18239 +-0.207551 0.245099 0.18239 +-0.23053 0.286748 0.18239 +-0.288334 0.228543 0.18239 +-0.238333 0.224531 0.18239 +-0.261059 0.259262 0.18239 +-0.312014 0.194976 0.18239 +-0.266166 0.20012 0.18239 +-0.331805 0.158978 0.18239 +-0.290575 0.172286 0.18239 +-0.347459 0.121 0.18239 +-0.327515 0.108302 0.18239 +-0.311142 0.141505 0.18239 +-0.358781 0.0815134 0.18239 +-0.339414 0.0732469 0.18239 +-0.346636 0.0369392 0.18239 +0.329579 -0.163543 0.18239 +0.309295 -0.199262 0.18239 +0.179066 -0.141505 0.18239 +0.195439 -0.108302 0.18239 +0.207338 -0.0732469 0.18239 +0.285155 -0.232498 0.18239 +-0.365632 0.0410118 0.18239 +-0.161271 0.330696 0.18239 +-0.10298 0.280597 0.18239 +-0.123403 0.346612 0.18239 +0.0422643 0.261477 0.18239 +0.106249 0.224537 0.18239 +0.329577 0.163546 0.18239 +-0.299234 -0.0263058 -0.028951 +-0.294816 -0.0522675 -0.028951 +-0.300834 0 -0.0290881 +-0.297956 0 -0.0262105 +-0.29663 -0.026012 -0.0263305 +-0.292261 -0.0516838 -0.0263305 +-0.288309 -0.050732 -0.0251572 +-0.287527 -0.0775477 -0.028951 +-0.292592 -0.0255265 -0.0251572 +-0.281231 -0.0752995 -0.0251572 +-0.285053 -0.0766818 -0.0263305 +-0.275112 -0.100685 -0.0263305 +-0.277473 -0.101822 -0.028951 +-0.271447 -0.09892 -0.0251572 +-0.262508 -0.123486 -0.0263305 +-0.264726 -0.124881 -0.028951 +-0.25908 -0.121297 -0.0251572 +-0.247433 -0.14472 -0.0263305 +-0.249482 -0.146355 -0.028951 +-0.244285 -0.142148 -0.0251572 +-0.230093 -0.164115 -0.0263305 +-0.231946 -0.165969 -0.028951 +-0.227249 -0.161211 -0.0251572 +-0.210722 -0.181428 -0.0263305 +-0.212356 -0.183477 -0.028951 +-0.208186 -0.178248 -0.0251572 +-0.189472 -0.196502 -0.0263305 +-0.190866 -0.198721 -0.028951 +-0.187334 -0.193042 -0.0251572 +-0.166678 -0.209093 -0.0263305 +-0.167814 -0.211454 -0.028951 +-0.164958 -0.20541 -0.0251572 +-0.14264 -0.219044 -0.0263305 +-0.143505 -0.221517 -0.028951 +-0.141337 -0.215194 -0.0251572 +-0.117675 -0.226237 -0.0263305 +-0.118258 -0.228792 -0.028951 +-0.11677 -0.222271 -0.0251572 +-0.0919894 -0.230599 -0.0263305 +-0.0922825 -0.233203 -0.028951 +-0.0915642 -0.226554 -0.0251572 +-0.0659893 -0.232053 -0.0263305 +-0.0659887 -0.234673 -0.028951 +-0.0660377 -0.227987 -0.0251572 +-0.0400141 -0.230588 -0.0263305 +-0.0397203 -0.233192 -0.028951 +-0.0405112 -0.226554 -0.0251572 +-0.0144006 -0.226237 -0.0263305 +-0.0138174 -0.228792 -0.028951 +-0.0153058 -0.222271 -0.0251572 +0.0106336 -0.219022 -0.0263305 +0.0114994 -0.221496 -0.028951 +0.00926173 -0.215194 -0.0251572 +0.0346897 -0.209051 -0.0263305 +0.0358272 -0.211412 -0.028951 +0.0328823 -0.20541 -0.0251572 +0.057457 -0.196461 -0.0263305 +0.0588516 -0.19868 -0.028951 +0.0552589 -0.193042 -0.0251572 +0.0786464 -0.181428 -0.0263305 +0.0802802 -0.183477 -0.028951 +0.0761101 -0.178248 -0.0251572 +0.098071 -0.164066 -0.0263305 +0.0999242 -0.165919 -0.028951 +0.0951737 -0.161211 -0.0251572 +0.115418 -0.144645 -0.0263305 +0.117468 -0.146278 -0.028951 +0.11221 -0.142148 -0.0251572 +0.130469 -0.123423 -0.0263305 +0.132688 -0.124817 -0.028951 +0.127005 -0.121297 -0.0251572 +0.143037 -0.100685 -0.0263305 +0.145398 -0.101822 -0.028951 +0.139372 -0.09892 -0.0251572 +0.153005 -0.0766141 -0.0263305 +0.155478 -0.0774793 -0.028951 +0.149156 -0.0752995 -0.0251572 +0.160208 -0.0515893 -0.0263305 +0.162762 -0.0521719 -0.028951 +0.156234 -0.050732 -0.0251572 +0.164554 -0.026012 -0.0263305 +0.167158 -0.0263057 -0.028951 +0.160516 -0.0255265 -0.0251572 +0.165881 0 -0.0262105 +0.168758 0 -0.0290881 +0.16195 -7.16981e-010 -0.0251572 +-0.294025 0 -0.0251572 +-0.0325042 -0.406406 -0.0628931 +-0.0345912 -0.418239 -0.0628931 +-0.0172932 -0.388281 -0.0628931 +-0.0264981 -0.396004 -0.0628931 +-0.00600619 -0.384173 -0.0628931 +0.0172958 -0.388282 -0.0628931 +0.0264997 -0.396006 -0.0628931 +0.0325049 -0.406408 -0.0628931 +0.034591 -0.418239 -0.0628931 +0.0325052 -0.430069 -0.0628931 +0.0264971 -0.440475 -0.0628931 +0.0172957 -0.448196 -0.0628931 +0.00600464 -0.452305 -0.0628931 +-0.00600667 -0.452305 -0.0628931 +-0.0172974 -0.448195 -0.0628931 +-0.0264984 -0.440474 -0.0628931 +-0.0325057 -0.430068 -0.0628931 +0.00600918 -0.384174 -0.0628931 +0.167158 0.0263058 -0.028951 +0.162741 0.0522675 -0.028951 +0.164554 0.026012 -0.0263305 +0.160186 0.0516838 -0.0263305 +0.156234 0.050732 -0.0251572 +0.155451 0.0775477 -0.028951 +0.160516 0.0255265 -0.0251572 +0.149156 0.0752995 -0.0251572 +0.152978 0.0766818 -0.0263305 +0.143037 0.100685 -0.0263305 +0.145398 0.101822 -0.028951 +0.139372 0.09892 -0.0251572 +0.130432 0.123486 -0.0263305 +0.132651 0.124881 -0.028951 +0.127005 0.121297 -0.0251572 +0.115358 0.14472 -0.0263305 +0.117406 0.146355 -0.028951 +0.11221 0.142148 -0.0251572 +0.0980177 0.164115 -0.0263305 +0.0998703 0.165969 -0.028951 +0.0951737 0.161211 -0.0251572 +0.0786463 0.181428 -0.0263305 +0.0802802 0.183477 -0.028951 +0.0761101 0.178248 -0.0251572 +0.057397 0.196502 -0.0263305 +0.0587909 0.198721 -0.028951 +0.0552589 0.193042 -0.0251572 +0.0346024 0.209093 -0.0263305 +0.0357389 0.211454 -0.028951 +0.0328823 0.20541 -0.0251572 +0.0105641 0.219044 -0.0263305 +0.0114292 0.221517 -0.028951 +0.00926174 0.215194 -0.0251572 +-0.0144006 0.226237 -0.0263305 +-0.0138175 0.228792 -0.028951 +-0.0153058 0.222271 -0.0251572 +-0.040086 0.230599 -0.0263305 +-0.039793 0.233203 -0.028951 +-0.0405112 0.226554 -0.0251572 +-0.0660862 0.232053 -0.0263305 +-0.0660867 0.234673 -0.028951 +-0.0660377 0.227987 -0.0251572 +-0.0920613 0.230588 -0.0263305 +-0.0923552 0.233192 -0.028951 +-0.0915642 0.226554 -0.0251572 +-0.117675 0.226237 -0.0263305 +-0.118258 0.228792 -0.028951 +-0.11677 0.222271 -0.0251572 +-0.142709 0.219022 -0.0263305 +-0.143575 0.221496 -0.028951 +-0.141337 0.215194 -0.0251572 +-0.166765 0.209051 -0.0263305 +-0.167903 0.211412 -0.028951 +-0.164958 0.20541 -0.0251572 +-0.189533 0.196461 -0.0263305 +-0.190927 0.19868 -0.028951 +-0.187334 0.193042 -0.0251572 +-0.210722 0.181428 -0.0263305 +-0.212356 0.183477 -0.028951 +-0.208186 0.178248 -0.0251572 +-0.230146 0.164066 -0.0263305 +-0.232 0.165919 -0.028951 +-0.227249 0.161211 -0.0251572 +-0.247494 0.144645 -0.0263305 +-0.249543 0.146278 -0.028951 +-0.244285 0.142148 -0.0251572 +-0.262544 0.123423 -0.0263305 +-0.264763 0.124817 -0.028951 +-0.25908 0.121297 -0.0251572 +-0.275112 0.100685 -0.0263305 +-0.277473 0.101822 -0.028951 +-0.271447 0.09892 -0.0251572 +-0.28508 0.0766141 -0.0263305 +-0.287554 0.0774793 -0.028951 +-0.281231 0.0752995 -0.0251572 +-0.292283 0.0515893 -0.0263305 +-0.294838 0.0521719 -0.028951 +-0.288309 0.050732 -0.0251572 +-0.29663 0.026012 -0.0263305 +-0.299234 0.0263057 -0.028951 +-0.292592 0.0255265 -0.0251572 +-0.0325042 0.430072 -0.0628931 +-0.0345912 0.418239 -0.0628931 +-0.0172932 0.448197 -0.0628931 +-0.0264981 0.440474 -0.0628931 +-0.00600619 0.452305 -0.0628931 +0.0172958 0.448196 -0.0628931 +0.0264997 0.440472 -0.0628931 +0.0325049 0.43007 -0.0628931 +0.034591 0.418239 -0.0628931 +0.0325052 0.406409 -0.0628931 +0.0264971 0.396003 -0.0628931 +0.0172957 0.388282 -0.0628931 +0.00600464 0.384173 -0.0628931 +-0.00600667 0.384173 -0.0628931 +-0.0172974 0.388283 -0.0628931 +-0.0264984 0.396004 -0.0628931 +-0.0325057 0.40641 -0.0628931 +0.00600918 0.452304 -0.0628931 +0.206765 0.0359164 0.174528 +0.20912 8.6478e-010 0.174528 +0.199743 0.0712182 0.174528 +0.188173 0.105301 0.174528 +0.172253 0.137582 0.174528 +0.152256 0.167509 0.174528 +0.128524 0.194569 0.174528 +0.101463 0.2183 0.174528 +0.0715361 0.238296 0.174528 +0.0392559 0.254214 0.174528 +0.00517456 0.265782 0.174528 +-0.0301246 0.272803 0.174528 +-0.0660377 0.275157 0.174528 +-0.341195 0 0.174528 +-0.338841 0.0359131 0.174528 +-0.33182 0.0712123 0.174528 +-0.137256 0.265781 0.174528 +-0.101954 0.272803 0.174528 +-0.320252 0.105294 0.174528 +-0.171339 0.254211 0.174528 +-0.233547 0.218294 0.174528 +-0.260607 0.194562 0.174528 +-0.304333 0.137574 0.174528 +-0.284338 0.167501 0.174528 +-0.20362 0.238291 0.174528 +-0.331819 -0.0712182 0.174528 +-0.338841 -0.0359164 0.174528 +-0.320249 -0.105301 0.174528 +-0.284331 -0.167509 0.174528 +-0.304329 -0.137582 0.174528 +-0.260599 -0.194569 0.174528 +-0.233538 -0.2183 0.174528 +-0.203612 -0.238296 0.174528 +-0.171331 -0.254214 0.174528 +-0.101951 -0.272803 0.174528 +-0.13725 -0.265782 0.174528 +-0.0660377 -0.275157 0.174528 +0.00518048 -0.265781 0.174528 +-0.0301213 -0.272803 0.174528 +0.0392635 -0.254211 0.174528 +0.0715446 -0.238291 0.174528 +0.101471 -0.218294 0.174528 +0.128532 -0.194562 0.174528 +0.206766 -0.0359131 0.174528 +0.199745 -0.0712123 0.174528 +0.188176 -0.105294 0.174528 +0.172258 -0.137574 0.174528 +0.152262 -0.167501 0.174528 +0.117316 -0.0095531 -0.0251572 +0.111206 -0.0172118 -0.0251572 +0.119497 6.91824e-011 -0.0251572 +0.0574367 -0.0511448 -0.0251572 +0.102381 -0.0214608 -0.0251572 +0.0925833 -0.0214598 -0.0251572 +0.0650421 -0.0260734 -0.0251572 +0.0676101 4.19811e-009 -0.0251572 +0.0776514 -0.00955018 -0.0251572 +0.075472 -1.71384e-010 -0.0251572 +0.0837606 0.0172108 -0.0251572 +0.0650421 0.0260734 -0.0251572 +0.0925885 0.0214611 -0.0251572 +0.0776523 0.00955179 -0.0251572 +0.0574367 0.0511448 -0.0251572 +0.102383 0.0214604 -0.0251572 +0.117318 0.0095485 -0.0251572 +-0.0462063 0.153969 -0.0251572 +-0.0399643 0.13108 -0.0251572 +-0.0523156 0.14631 -0.0251572 +-0.0440252 0.163522 -0.0251572 +-0.0148929 0.123474 -0.0251572 +-0.0611406 0.142061 -0.0251572 +-0.0660377 0.133648 -0.0251572 +-0.0709387 0.142062 -0.0251572 +-0.0797639 0.146313 -0.0251572 +-0.0921111 0.13108 -0.0251572 +-0.0858706 0.153972 -0.0251572 +-0.08805 0.163522 -0.0251572 +-0.117183 0.123474 -0.0251572 +-0.0858697 0.173074 -0.0251572 +-0.0709335 0.184983 -0.0251572 +-0.0797614 0.180733 -0.0251572 +-0.0611387 0.184982 -0.0251572 +-0.0523118 0.180731 -0.0251572 +-0.0462041 0.173071 -0.0251572 +-0.209728 -0.0095531 -0.0251572 +-0.207547 6.91824e-011 -0.0251572 +-0.199686 -4.19811e-009 -0.0251572 +-0.215838 -0.0172118 -0.0251572 +-0.197118 -0.0260734 -0.0251572 +-0.224663 -0.0214608 -0.0251572 +-0.189512 -0.0511448 -0.0251572 +-0.234461 -0.0214598 -0.0251572 +-0.249393 -0.00955018 -0.0251572 +-0.243286 -0.0172085 -0.0251572 +-0.251572 -1.71384e-010 -0.0251572 +-0.249392 0.00955179 -0.0251572 +-0.243283 0.0172108 -0.0251572 +-0.189512 0.0511448 -0.0251572 +-0.234456 0.0214611 -0.0251572 +-0.215834 0.017209 -0.0251572 +-0.197118 0.0260734 -0.0251572 +-0.209726 0.0095485 -0.0251572 +-0.224661 0.0214604 -0.0251572 +-0.0462063 -0.173075 -0.0251572 +-0.0523156 -0.180734 -0.0251572 +-0.0440252 -0.163522 -0.0251572 +-0.0611406 -0.184983 -0.0251572 +-0.0709387 -0.184982 -0.0251572 +-0.0797639 -0.180731 -0.0251572 +-0.08805 -0.163522 -0.0251572 +-0.0858706 -0.173072 -0.0251572 +-0.0797614 -0.146311 -0.0251572 +-0.0921111 -0.13108 -0.0251572 +-0.0709335 -0.142061 -0.0251572 +-0.117183 -0.123474 -0.0251572 +-0.0858697 -0.15397 -0.0251572 +-0.0660377 -0.133648 -0.0251572 +-0.0611387 -0.142062 -0.0251572 +-0.0523118 -0.146313 -0.0251572 +-0.0399643 -0.13108 -0.0251572 +-0.0462041 -0.153974 -0.0251572 +-0.0148929 -0.123474 -0.0251572 +0.0450863 -0.0742507 -0.0251572 +0.0284655 -0.0945033 -0.0251572 +0.008213 -0.111124 -0.0251572 +-0.140288 -0.111124 -0.0251572 +-0.160541 -0.0945033 -0.0251572 +-0.177162 -0.0742507 -0.0251572 +-0.177162 0.0742507 -0.0251572 +-0.160541 0.0945033 -0.0251572 +-0.140288 0.111124 -0.0251572 +0.008213 0.111124 -0.0251572 +0.0284655 0.0945033 -0.0251572 +0.11121 0.017209 -0.0251572 +0.0450863 0.0742507 -0.0251572 +0.0837581 -0.0172085 -0.0251572 +0.207611 0.0287671 0.0613208 +0.20912 8.6478e-010 0.0613208 +0.203106 0.0572101 0.0613208 +0.195651 0.0850329 0.0613208 +0.185329 0.111919 0.0613208 +0.172253 0.137582 0.0613208 +0.156567 0.161737 0.0613208 +0.138441 0.184119 0.0613208 +0.118075 0.204485 0.0613208 +0.0956933 0.222609 0.0613208 +0.0715361 0.238296 0.0613208 +0.045877 0.251369 0.0613208 +0.0189851 0.261692 0.0613208 +-0.00883028 0.269145 0.0613208 +-0.0372815 0.27365 0.0613208 +-0.339688 0.0287562 0.0613208 +-0.341195 0 0.0613208 +-0.335182 0.0572075 0.0613208 +-0.327729 0.0850229 0.0613208 +-0.317407 0.111915 0.0613208 +-0.288646 0.161731 0.0613208 +-0.304333 0.137574 0.0613208 +-0.270523 0.184112 0.0613208 +-0.250157 0.204479 0.0613208 +-0.227774 0.222604 0.0613208 +-0.20362 0.238291 0.0613208 +-0.177957 0.251367 0.0613208 +-0.151071 0.261688 0.0613208 +-0.123248 0.269144 0.0613208 +-0.0948048 0.273649 0.0613208 +-0.0660377 0.275157 0.0613208 +-0.335182 -0.0572101 0.0613208 +-0.339687 -0.0287671 0.0613208 +-0.327726 -0.0850329 0.0613208 +-0.317405 -0.111919 0.0613208 +-0.288642 -0.161737 0.0613208 +-0.304329 -0.137582 0.0613208 +-0.270517 -0.184119 0.0613208 +-0.25015 -0.204485 0.0613208 +-0.227769 -0.222609 0.0613208 +-0.177953 -0.251369 0.0613208 +-0.203612 -0.238296 0.0613208 +-0.151061 -0.261692 0.0613208 +-0.123245 -0.269145 0.0613208 +-0.0947939 -0.27365 0.0613208 +-0.0372707 -0.273649 0.0613208 +-0.0660377 -0.275157 0.0613208 +0.0189952 -0.261688 0.0613208 +-0.00882763 -0.269144 0.0613208 +0.0715446 -0.238291 0.0613208 +0.0458816 -0.251367 0.0613208 +0.0956989 -0.222604 0.0613208 +0.118081 -0.204479 0.0613208 +0.207613 -0.0287562 0.0613208 +0.203107 -0.0572075 0.0613208 +0.195654 -0.0850229 0.0613208 +0.185332 -0.111915 0.0613208 +0.172258 -0.137574 0.0613208 +0.156571 -0.161731 0.0613208 +0.138447 -0.184112 0.0613208 +0.119497 0 0.0283019 +0.117316 0.0095531 0.0283019 +0.111206 0.0172118 0.0283019 +0.102381 0.0214608 0.0283019 +0.0925833 0.0214598 0.0283019 +0.075472 2.40566e-010 0.0283019 +0.0776514 0.00955018 0.0283019 +0.0837581 0.0172085 0.0283019 +-0.207547 0 0.0283019 +-0.209728 0.0095531 0.0283019 +-0.215838 0.0172118 0.0283019 +-0.224663 0.0214608 0.0283019 +-0.234461 0.0214598 0.0283019 +-0.251572 2.40566e-010 0.0283019 +-0.249393 0.00955018 0.0283019 +-0.243286 0.0172085 0.0283019 +-0.0858697 -0.173074 0.0283019 +-0.08805 -0.163522 0.0283019 +-0.0797614 -0.180733 0.0283019 +-0.0709335 -0.184983 0.0283019 +-0.0611387 -0.184982 0.0283019 +-0.0523118 -0.180731 0.0283019 +-0.0462041 -0.173071 0.0283019 +-0.0440252 -0.163522 0.0283019 +-0.0858697 0.15397 0.0283019 +-0.08805 0.163522 0.0283019 +-0.0797614 0.146311 0.0283019 +-0.0709335 0.142061 0.0283019 +-0.0611387 0.142062 0.0283019 +-0.0523118 0.146313 0.0283019 +-0.0462041 0.153974 0.0283019 +-0.0440252 0.163522 0.0283019 +-0.249392 -0.00955179 0.0283019 +-0.243283 -0.0172108 0.0283019 +-0.234456 -0.0214611 0.0283019 +-0.224661 -0.0214604 0.0283019 +-0.215834 -0.017209 0.0283019 +-0.209726 -0.0095485 0.0283019 +-0.189407 0.024541 -0.0172956 +-0.191824 3.94654e-010 -0.0172956 +-0.182248 0.0481388 -0.0172956 +-0.170623 0.0698863 -0.0172956 +-0.154978 0.0889478 -0.0172956 +-0.135916 0.104591 -0.0172956 +-0.114167 0.116214 -0.0172956 +-0.0905698 0.12337 -0.0172956 +-0.0660296 0.125786 -0.0172956 +0.00385165 0.104583 -0.0172956 +-0.0178939 0.116208 -0.0172956 +0.0573318 0.0245372 -0.0172956 +0.0597484 0 -0.0172956 +0.050175 0.048132 -0.0172956 +0.0385527 0.0698778 -0.0172956 +0.0229113 0.0889389 -0.0172956 +-0.0414899 0.123367 -0.0172956 +0.0501725 -0.0481388 -0.0172956 +0.0573312 -0.024541 -0.0172956 +0.0385474 -0.0698863 -0.0172956 +0.00384012 -0.104591 -0.0172956 +0.0229028 -0.0889478 -0.0172956 +-0.017908 -0.116214 -0.0172956 +-0.0415057 -0.12337 -0.0172956 +-0.0660459 -0.125786 -0.0172956 +-0.0905856 -0.123367 -0.0172956 +-0.135927 -0.104583 -0.0172956 +-0.114182 -0.116208 -0.0172956 +-0.154987 -0.0889389 -0.0172956 +-0.189407 -0.0245372 -0.0172956 +-0.18225 -0.048132 -0.0172956 +-0.170628 -0.0698778 -0.0172956 +-0.0462063 0.173075 0.0283019 +-0.0523156 0.180734 0.0283019 +-0.0611406 0.184983 0.0283019 +-0.0709387 0.184982 0.0283019 +-0.0858706 0.173072 0.0283019 +-0.0797639 0.180731 0.0283019 +0.0776523 -0.00955179 0.0283019 +0.0837606 -0.0172108 0.0283019 +0.0925885 -0.0214611 0.0283019 +0.102383 -0.0214604 0.0283019 +0.11121 -0.017209 0.0283019 +0.117318 -0.0095485 0.0283019 +-0.0462063 -0.153969 0.0283019 +-0.0523156 -0.14631 0.0283019 +-0.0611406 -0.142061 0.0283019 +-0.0709387 -0.142062 0.0283019 +-0.0858706 -0.153972 0.0283019 +-0.0797639 -0.146313 0.0283019 +-0.338518 0.0286646 0.0572529 +-0.334024 0.0570056 0.0572529 +-0.340142 0 0.0573899 +-0.337264 0 0.0545124 +-0.335911 0.0283905 0.0546324 +-0.331461 0.0564604 0.0546324 +-0.327492 0.0555741 0.0534591 +-0.326596 0.0847042 0.0572529 +-0.331869 0.0279401 0.0534591 +-0.320251 0.0825992 0.0534591 +-0.324104 0.0838941 0.0546324 +-0.313934 0.110386 0.0546324 +-0.316328 0.111452 0.0572529 +-0.310224 0.108719 0.0534591 +-0.301036 0.135698 0.0546324 +-0.303305 0.137008 0.0572529 +-0.297522 0.133648 0.0534591 +-0.285551 0.159534 0.0546324 +-0.287671 0.161074 0.0572529 +-0.282284 0.157113 0.0534591 +-0.267669 0.181608 0.0546324 +-0.269616 0.183362 0.0572529 +-0.264677 0.178856 0.0534591 +-0.247595 0.201677 0.0546324 +-0.249349 0.203625 0.0572529 +-0.244893 0.19864 0.0534591 +-0.225532 0.219544 0.0546324 +-0.227072 0.221664 0.0572529 +-0.22315 0.216247 0.0534591 +-0.201689 0.235024 0.0546324 +-0.202999 0.237293 0.0572529 +-0.199685 0.231485 0.0534591 +-0.17637 0.247919 0.0546324 +-0.177435 0.250313 0.0572529 +-0.174756 0.244187 0.0534591 +-0.149861 0.25809 0.0546324 +-0.150671 0.260582 0.0572529 +-0.148636 0.254213 0.0534591 +-0.122454 0.265434 0.0546324 +-0.122998 0.267998 0.0572529 +-0.121611 0.261455 0.0534591 +-0.0943745 0.269879 0.0546324 +-0.0946481 0.272485 0.0572529 +-0.093977 0.265831 0.0534591 +-0.0659946 0.271361 0.0546324 +-0.0659942 0.273982 0.0572529 +-0.0660371 0.267296 0.0534591 +-0.0376341 0.26987 0.0546324 +-0.0373598 0.272476 0.0572529 +-0.0380971 0.265831 0.0534591 +-0.00961112 0.265431 0.0546324 +-0.00906621 0.267995 0.0572529 +-0.0104632 0.261454 0.0534591 +0.0178391 0.258075 0.0546324 +0.0186491 0.260567 0.0572529 +0.0165617 0.254213 0.0534591 +0.044372 0.247885 0.0546324 +0.0454382 0.250279 0.0572529 +0.0426817 0.244186 0.0534591 +0.0696794 0.234984 0.0546324 +0.07099 0.237253 0.0572529 +0.0676105 0.231485 0.0534591 +0.0934805 0.219525 0.0546324 +0.095021 0.221645 0.0572529 +0.0910751 0.216246 0.0534591 +0.115551 0.201652 0.0546324 +0.117305 0.203599 0.0572529 +0.112818 0.198639 0.0534591 +0.135648 0.18155 0.0546324 +0.137596 0.183303 0.0572529 +0.132602 0.178855 0.0534591 +0.153524 0.159466 0.0546324 +0.155644 0.161006 0.0572529 +0.150209 0.157112 0.0534591 +0.168982 0.135655 0.0546324 +0.171252 0.136965 0.0572529 +0.165447 0.133648 0.0534591 +0.181868 0.110366 0.0546324 +0.184262 0.111432 0.0572529 +0.178149 0.108719 0.0534591 +0.192053 0.0838257 0.0546324 +0.194545 0.0846352 0.0572529 +0.188176 0.0825987 0.0534591 +0.199403 0.0563762 0.0546324 +0.201966 0.0569206 0.0572529 +0.195417 0.0555738 0.0534591 +0.203836 0.0283904 0.0546324 +0.206442 0.0286646 0.0572529 +0.199794 0.0279399 0.0534591 +0.208066 0 0.0573899 +-0.333333 0 0.0534591 +0.205189 0 0.0545124 +0.201258 8.39623e-010 0.0534591 +0.206442 -0.0286646 0.0572529 +0.201948 -0.0570056 0.0572529 +0.203836 -0.0283905 0.0546324 +0.199385 -0.0564604 0.0546324 +0.195417 -0.0555741 0.0534591 +0.194521 -0.0847042 0.0572529 +0.199794 -0.0279401 0.0534591 +0.188175 -0.0825992 0.0534591 +0.192029 -0.0838941 0.0546324 +0.181858 -0.110386 0.0546324 +0.184252 -0.111452 0.0572529 +0.178149 -0.108719 0.0534591 +0.16896 -0.135698 0.0546324 +0.17123 -0.137008 0.0572529 +0.165447 -0.133648 0.0534591 +0.153476 -0.159534 0.0546324 +0.155596 -0.161074 0.0572529 +0.150209 -0.157113 0.0534591 +0.135593 -0.181608 0.0546324 +0.13754 -0.183362 0.0572529 +0.132601 -0.178856 0.0534591 +0.11552 -0.201677 0.0546324 +0.117273 -0.203625 0.0572529 +0.112817 -0.19864 0.0534591 +0.0934564 -0.219544 0.0546324 +0.0949966 -0.221664 0.0572529 +0.0910741 -0.216247 0.0534591 +0.0696138 -0.235024 0.0546324 +0.0709238 -0.237293 0.0572529 +0.0676095 -0.231485 0.0534591 +0.0442942 -0.247919 0.0546324 +0.0453597 -0.250313 0.0572529 +0.0426805 -0.244187 0.0534591 +0.0177859 -0.25809 0.0546324 +0.0185953 -0.260582 0.0572529 +0.0165605 -0.254213 0.0534591 +-0.00962191 -0.265434 0.0546324 +-0.0090771 -0.267998 0.0572529 +-0.0104645 -0.261455 0.0534591 +-0.037701 -0.269879 0.0546324 +-0.0374274 -0.272485 0.0572529 +-0.0380984 -0.265831 0.0534591 +-0.0660809 -0.271361 0.0546324 +-0.0660813 -0.273982 0.0572529 +-0.0660384 -0.267296 0.0534591 +-0.0944414 -0.26987 0.0546324 +-0.0947157 -0.272476 0.0572529 +-0.0939784 -0.265831 0.0534591 +-0.122464 -0.265431 0.0546324 +-0.123009 -0.267995 0.0572529 +-0.121612 -0.261454 0.0534591 +-0.149915 -0.258075 0.0546324 +-0.150725 -0.260567 0.0572529 +-0.148637 -0.254213 0.0534591 +-0.176447 -0.247885 0.0546324 +-0.177514 -0.250279 0.0572529 +-0.174757 -0.244186 0.0534591 +-0.201755 -0.234984 0.0546324 +-0.203065 -0.237253 0.0572529 +-0.199686 -0.231485 0.0534591 +-0.225556 -0.219525 0.0546324 +-0.227096 -0.221645 0.0572529 +-0.223151 -0.216246 0.0534591 +-0.247626 -0.201652 0.0546324 +-0.24938 -0.203599 0.0572529 +-0.244894 -0.198639 0.0534591 +-0.267723 -0.18155 0.0546324 +-0.269671 -0.183303 0.0572529 +-0.264677 -0.178855 0.0534591 +-0.285599 -0.159466 0.0546324 +-0.287719 -0.161006 0.0572529 +-0.282285 -0.157112 0.0534591 +-0.301058 -0.135655 0.0546324 +-0.303327 -0.136965 0.0572529 +-0.297523 -0.133648 0.0534591 +-0.313944 -0.110366 0.0546324 +-0.316338 -0.111432 0.0572529 +-0.310225 -0.108719 0.0534591 +-0.324129 -0.0838257 0.0546324 +-0.326621 -0.0846352 0.0572529 +-0.320251 -0.0825987 0.0534591 +-0.331478 -0.0563762 0.0546324 +-0.334041 -0.0569206 0.0572529 +-0.327492 -0.0555738 0.0534591 +-0.335911 -0.0283904 0.0546324 +-0.338518 -0.0286646 0.0572529 +-0.331869 -0.0279399 0.0534591 +0.132945 0.0129056 0.0283019 +0.126392 0.0242556 0.0283019 +0.116354 0.032679 0.0283019 +0.104039 0.0371621 0.0283019 +0.0909325 0.0371626 0.0283019 +0.078618 0.032681 0.0283019 +0.0685786 0.0242579 0.0283019 +0.0620248 0.0129079 0.0283019 +0.0597484 0 0.0283019 +0.0620237 -0.0129047 0.0283019 +0.0685758 -0.0242547 0.0283019 +0.0786156 -0.0326798 0.0283019 +0.0909306 -0.0371623 0.0283019 +0.104035 -0.0371628 0.0283019 +0.116351 -0.0326808 0.0283019 +0.126392 -0.0242561 0.0283019 +0.132944 -0.0129075 0.0283019 +0.13522 1.6195e-010 0.0283019 +-0.194099 0.0129056 0.0283019 +-0.200652 0.0242556 0.0283019 +-0.21069 0.032679 0.0283019 +-0.223005 0.0371621 0.0283019 +-0.236111 0.0371626 0.0283019 +-0.248426 0.032681 0.0283019 +-0.258465 0.0242579 0.0283019 +-0.265019 0.0129079 0.0283019 +-0.267296 0 0.0283019 +-0.26502 -0.0129047 0.0283019 +-0.258468 -0.0242547 0.0283019 +-0.248428 -0.0326798 0.0283019 +-0.236113 -0.0371623 0.0283019 +-0.223009 -0.0371628 0.0283019 +-0.210693 -0.0326808 0.0283019 +-0.200652 -0.0242561 0.0283019 +-0.1941 -0.0129075 0.0283019 +-0.191824 1.6195e-010 0.0283019 +-0.0305774 -0.150616 0.0283019 +-0.0371301 -0.139266 0.0283019 +-0.047168 -0.130843 0.0283019 +-0.0594829 -0.12636 0.0283019 +-0.0725895 -0.126359 0.0283019 +-0.0849041 -0.130841 0.0283019 +-0.0949434 -0.139264 0.0283019 +-0.101497 -0.150614 0.0283019 +-0.103774 -0.163522 0.0283019 +-0.101498 -0.176427 0.0283019 +-0.0949462 -0.187777 0.0283019 +-0.0849064 -0.196202 0.0283019 +-0.0725914 -0.200684 0.0283019 +-0.0594869 -0.200685 0.0283019 +-0.0471711 -0.196203 0.0283019 +-0.0371305 -0.187778 0.0283019 +-0.0305782 -0.17643 0.0283019 +-0.0283021 -0.163522 0.0283019 +-0.0305774 0.176428 0.0283019 +-0.0371301 0.187778 0.0283019 +-0.047168 0.196201 0.0283019 +-0.0594829 0.200684 0.0283019 +-0.0725895 0.200685 0.0283019 +-0.0849041 0.196203 0.0283019 +-0.0949434 0.18778 0.0283019 +-0.101497 0.17643 0.0283019 +-0.103774 0.163522 0.0283019 +-0.101498 0.150617 0.0283019 +-0.0949462 0.139267 0.0283019 +-0.0849064 0.130842 0.0283019 +-0.0725914 0.12636 0.0283019 +-0.0594869 0.126359 0.0283019 +-0.0471711 0.130841 0.0283019 +-0.0371305 0.139266 0.0283019 +-0.0305782 0.150615 0.0283019 +-0.0283021 0.163522 0.0283019 +-0.189407 0.0245391 0.0188679 +-0.191824 3.94654e-010 0.0188679 +-0.182249 0.0481354 0.0188679 +-0.170626 0.0698822 0.0188679 +-0.154983 0.0889435 0.0188679 +-0.135922 0.104587 0.0188679 +-0.114175 0.116211 0.0188679 +-0.0905777 0.123369 0.0188679 +-0.0660377 0.125786 0.0188679 +-0.0414986 0.123369 0.0188679 +0.0573314 0.02454 0.0188679 +0.0597484 0 0.0188679 +0.0501733 0.0481369 0.0188679 +0.0385491 0.0698838 0.0188679 +0.0229058 0.088945 0.0188679 +0.00384444 0.104588 0.0188679 +-0.0179023 0.116212 0.0188679 +0.0501738 -0.0481354 0.0188679 +0.0573316 -0.0245391 0.0188679 +0.0385502 -0.0698822 0.0188679 +0.00384603 -0.104587 0.0188679 +0.0229072 -0.0889435 0.0188679 +-0.0179009 -0.116211 0.0188679 +-0.0414977 -0.123369 0.0188679 +-0.0660377 -0.125786 0.0188679 +-0.0905768 -0.123369 0.0188679 +-0.13592 -0.104588 0.0188679 +-0.114173 -0.116212 0.0188679 +-0.154981 -0.088945 0.0188679 +-0.189407 -0.02454 0.0188679 +-0.182249 -0.0481369 0.0188679 +-0.170625 -0.0698838 0.0188679 +-0.194099 -0.0129047 0.0534591 +-0.200651 -0.0242547 0.0534591 +-0.145422 -0.0195687 0.0534591 +-0.147799 2.56918e-009 0.0534591 +-0.210691 -0.0326798 0.0534591 +-0.127233 -0.0542219 0.0534591 +-0.138432 -0.0379998 0.0534591 +-0.112477 -0.0672921 0.0534591 +-0.101498 -0.150616 0.0534591 +-0.0849074 -0.130843 0.0534591 +-0.0725925 -0.12636 0.0534591 +-0.0758832 -0.0811656 0.0534591 +-0.223006 -0.0371623 0.0534591 +-0.0471714 -0.130841 0.0534591 +-0.0561724 -0.0811631 0.0534591 +-0.059486 -0.126359 0.0534591 +-0.037132 -0.139264 0.0534591 +-0.0195846 -0.0672819 0.0534591 +-0.0370355 -0.0764437 0.0534591 +-0.00483359 -0.0542108 0.0534591 +-0.0305782 -0.150614 0.0534591 +0.0909334 -0.0371628 0.0534591 +0.068577 -0.0242561 0.0534591 +0.0620247 -0.0129075 0.0534591 +0.013348 -0.019563 0.0534591 +0.0786176 -0.0326808 0.0534591 +0.00636059 -0.0379903 0.0534591 +0.0157233 -2.56918e-009 0.0534591 +0.062024 0.0129056 0.0534591 +0.0597486 1.6195e-010 0.0534591 +0.0685767 0.0242556 0.0534591 +0.0133469 0.0195687 0.0534591 +0.0786146 0.032679 0.0534591 +-0.00484275 0.0542219 0.0534591 +0.0063561 0.0379998 0.0534591 +-0.0195985 0.0672921 0.0534591 +-0.0305771 0.150617 0.0534591 +-0.0471691 0.130842 0.0534591 +-0.0594841 0.12636 0.0534591 +-0.0561923 0.0811656 0.0534591 +-0.0371293 0.139267 0.0534591 +-0.0370533 0.0764507 0.0534591 +0.0909295 0.0371621 0.0534591 +-0.0849044 0.130841 0.0534591 +-0.0759031 0.0811631 0.0534591 +-0.0725886 0.126359 0.0534591 +-0.094945 0.139266 0.0534591 +-0.112491 0.0672819 0.0534591 +-0.09504 0.0764437 0.0534591 +-0.127242 0.0542108 0.0534591 +-0.101497 0.150615 0.0534591 +-0.223008 0.0371626 0.0534591 +-0.210693 0.032681 0.0534591 +-0.200654 0.0242579 0.0534591 +-0.138436 0.0379903 0.0534591 +0.132944 0.0129079 0.0534591 +0.13522 0 0.0534591 +0.116351 0.032681 0.0534591 +0.12639 0.0242579 0.0534591 +0.104036 0.0371626 0.0534591 +0.104038 -0.0371623 0.0534591 +0.116353 -0.0326798 0.0534591 +-0.0283019 0.163522 0.0534591 +-0.0305782 0.17643 0.0534591 +-0.0471714 0.196203 0.0534591 +-0.037132 0.18778 0.0534591 +-0.0725925 0.200684 0.0534591 +-0.059486 0.200685 0.0534591 +-0.0949453 0.187778 0.0534591 +-0.0849074 0.196201 0.0534591 +-0.101498 0.176428 0.0534591 +-0.103773 0.163522 0.0534591 +-0.145423 0.019563 0.0534591 +-0.1941 0.0129079 0.0534591 +-0.191824 0 0.0534591 +-0.236115 0.0371621 0.0534591 +-0.248429 0.032679 0.0534591 +-0.258467 0.0242556 0.0534591 +-0.26502 0.0129056 0.0534591 +-0.265019 -0.0129075 0.0534591 +-0.267295 1.6195e-010 0.0534591 +-0.258467 -0.0242561 0.0534591 +-0.248426 -0.0326808 0.0534591 +-0.236111 -0.0371628 0.0534591 +-0.0950222 -0.0764507 0.0534591 +-0.0949453 -0.139266 0.0534591 +-0.0283019 -0.163522 0.0534591 +0.126393 -0.0242547 0.0534591 +0.132945 -0.0129047 0.0534591 +-0.101497 -0.17643 0.0534591 +-0.0849044 -0.196203 0.0534591 +-0.094945 -0.187778 0.0534591 +-0.0725886 -0.200685 0.0534591 +-0.0471691 -0.196202 0.0534591 +-0.0594841 -0.200684 0.0534591 +-0.0371293 -0.187777 0.0534591 +-0.0305771 -0.176427 0.0534591 +-0.103773 -0.163522 0.0534591 +-0.145422 0.0195687 0.0188679 +-0.147799 -2.56918e-009 0.0188679 +-0.138432 0.0379998 0.0188679 +-0.127233 0.0542219 0.0188679 +-0.112477 0.0672921 0.0188679 +-0.0950222 0.0764507 0.0188679 +-0.0561724 0.0811631 0.0188679 +-0.0758832 0.0811656 0.0188679 +-0.0370355 0.0764437 0.0188679 +-0.0195846 0.0672819 0.0188679 +-0.00483359 0.0542108 0.0188679 +0.013348 0.019563 0.0188679 +0.00636059 0.0379903 0.0188679 +0.0157233 2.56918e-009 0.0188679 +0.0133469 -0.0195687 0.0188679 +-0.00484275 -0.0542219 0.0188679 +0.0063561 -0.0379998 0.0188679 +-0.0195985 -0.0672921 0.0188679 +-0.0370533 -0.0764507 0.0188679 +-0.0759031 -0.0811631 0.0188679 +-0.0561923 -0.0811656 0.0188679 +-0.09504 -0.0764437 0.0188679 +-0.112491 -0.0672819 0.0188679 +-0.138436 -0.0379903 0.0188679 +-0.127242 -0.0542108 0.0188679 +-0.145423 -0.019563 0.0188679 +3 0 1 2 +3 1 3 4 +3 3 1 0 +3 5 4 6 +3 3 6 4 +3 7 8 5 +3 5 6 7 +3 8 9 10 +3 9 8 7 +3 11 10 12 +3 9 12 10 +3 11 12 13 +3 14 15 16 +3 17 18 19 +3 17 19 15 +3 15 19 16 +3 18 20 21 +3 22 23 24 +3 18 17 20 +3 21 20 23 +3 21 23 22 +3 11 13 24 +3 2 25 0 +3 13 22 24 +3 2 26 27 +3 26 1 28 +3 1 26 2 +3 29 28 4 +3 1 4 28 +3 5 30 29 +3 29 4 5 +3 30 8 31 +3 8 30 5 +3 32 31 10 +3 8 10 31 +3 11 32 10 +3 33 32 11 +3 34 15 35 +3 35 15 14 +3 34 36 17 +3 17 15 34 +3 20 36 37 +3 36 20 17 +3 38 23 37 +3 20 37 23 +3 38 33 24 +3 24 23 38 +3 33 11 24 +3 16 39 14 +3 40 41 42 +3 42 41 39 +3 43 44 45 +3 45 44 40 +3 46 47 48 +3 43 46 48 +3 49 50 51 +3 47 49 51 +3 52 53 54 +3 52 50 53 +3 55 54 56 +3 57 25 58 +3 2 58 25 +3 59 60 57 +3 57 58 59 +3 60 55 56 +3 55 60 59 +3 52 51 50 +3 54 53 56 +3 44 43 48 +3 46 49 47 +3 42 45 40 +3 41 14 39 +3 39 61 62 +3 62 42 39 +3 45 63 43 +3 45 42 63 +3 43 64 46 +3 65 66 67 +3 66 65 68 +3 67 66 69 +3 70 71 72 +3 73 64 74 +3 75 76 77 +3 77 70 72 +3 64 43 63 +3 78 79 80 +3 81 82 79 +3 83 84 85 +3 84 78 80 +3 86 87 88 +3 89 90 91 +3 91 92 87 +3 92 88 87 +3 93 94 95 +3 96 87 86 +3 97 94 98 +3 96 83 85 +3 98 99 100 +3 101 102 103 +3 102 104 105 +3 104 106 107 +3 108 106 109 +3 110 111 112 +3 113 114 115 +3 106 116 109 +3 107 106 108 +3 117 118 119 +3 115 114 117 +3 105 104 107 +3 120 121 122 +3 119 118 122 +3 123 120 124 +3 125 126 127 +3 128 129 130 +3 131 132 133 +3 134 128 132 +3 135 136 133 +3 137 131 133 +3 99 98 94 +3 103 100 101 +3 16 61 39 +3 100 99 101 +3 93 95 138 +3 139 140 138 +3 140 93 138 +3 141 142 143 +3 144 141 143 +3 142 89 143 +3 90 145 146 +3 147 148 149 +3 149 150 151 +3 151 152 153 +3 154 155 153 +3 155 156 157 +3 156 158 159 +3 160 161 162 +3 162 159 160 +3 163 162 161 +3 164 165 166 +3 166 165 163 +3 167 168 164 +3 167 169 170 +3 170 168 167 +3 171 172 173 +3 171 173 170 +3 172 174 175 +3 174 176 177 +3 178 108 109 +3 176 108 178 +3 179 110 112 +3 113 115 180 +3 164 168 165 +3 144 139 141 +3 181 182 183 +3 184 181 183 +3 185 186 187 +3 186 184 187 +3 185 188 186 +3 189 188 190 +3 191 189 192 +3 189 190 192 +3 193 194 191 +3 195 196 194 +3 194 193 195 +3 197 196 198 +3 199 196 197 +3 200 126 199 +3 129 125 130 +3 132 131 134 +3 201 19 18 +3 127 130 125 +3 102 105 103 +3 136 135 202 +3 127 123 124 +3 173 172 175 +3 171 170 169 +3 190 188 203 +3 181 204 182 +3 127 126 123 +3 124 120 122 +3 196 195 198 +3 133 136 137 +3 201 61 19 +3 21 205 18 +3 205 22 206 +3 9 207 208 +3 13 12 208 +3 9 7 207 +3 0 209 3 +3 6 209 207 +3 0 210 209 +3 57 210 25 +3 60 211 57 +3 211 210 57 +3 56 212 211 +3 211 60 56 +3 50 213 212 +3 50 212 53 +3 46 73 213 +3 46 213 49 +3 68 74 66 +3 69 72 71 +3 76 75 214 +3 215 216 217 +3 7 6 207 +3 95 94 97 +3 218 219 220 +3 88 92 221 +3 220 221 218 +3 87 89 91 +3 222 147 146 +3 153 152 154 +3 158 160 159 +3 121 119 122 +3 111 110 223 +3 188 185 203 +3 145 222 146 +3 13 202 206 +3 216 214 75 +3 75 217 216 +3 224 225 226 +3 227 228 229 +3 230 231 229 +3 232 231 233 +3 234 232 235 +3 232 233 235 +3 236 237 238 +3 238 237 234 +3 236 239 240 +3 240 237 236 +3 88 221 220 +3 218 240 219 +3 219 240 239 +3 233 231 241 +3 68 73 74 +3 96 86 83 +3 148 147 222 +3 145 90 89 +3 53 212 56 +3 150 152 151 +3 210 0 25 +3 208 12 9 +3 155 157 153 +3 157 156 159 +3 13 208 202 +3 165 162 163 +3 116 106 112 +3 177 176 178 +3 16 19 61 +3 116 112 111 +3 118 117 114 +3 63 42 62 +3 139 144 140 +3 179 112 242 +3 180 242 113 +3 129 128 134 +3 199 197 200 +3 243 223 110 +3 243 182 204 +3 194 189 191 +3 223 243 204 +3 186 181 184 +3 179 242 180 +3 200 123 126 +3 202 135 206 +3 174 177 175 +3 18 205 201 +3 89 142 145 +3 22 13 206 +3 149 148 150 +3 3 209 6 +3 71 67 69 +3 50 49 213 +3 234 237 232 +3 77 76 70 +3 241 231 230 +3 46 64 73 +3 228 230 229 +3 84 80 85 +3 79 78 81 +3 81 244 82 +3 229 225 227 +3 217 82 215 +3 224 227 225 +3 244 215 82 +3 225 245 226 +3 214 216 246 +3 246 226 245 +3 205 21 22 +3 246 245 214 +3 247 248 26 +3 26 28 247 +3 29 30 249 +3 28 29 250 +3 31 249 30 +3 32 251 31 +3 33 38 252 +3 37 253 252 +3 36 254 253 +3 34 35 255 +3 256 257 255 +3 258 259 257 +3 260 261 262 +3 263 264 262 +3 265 266 264 +3 267 268 269 +3 270 271 272 +3 272 271 269 +3 27 248 273 +3 274 273 248 +3 257 256 258 +3 258 260 259 +3 32 33 275 +3 274 271 270 +3 37 36 253 +3 254 36 34 +3 33 252 275 +3 27 26 248 +3 250 29 249 +3 32 275 251 +3 249 31 251 +3 37 252 38 +3 250 247 28 +3 255 35 256 +3 274 270 273 +3 267 269 266 +3 269 268 272 +3 260 262 259 +3 261 263 262 +3 267 266 265 +3 34 255 254 +3 263 265 264 +3 258 256 41 +3 256 14 41 +3 44 260 40 +3 40 260 258 +3 48 263 261 +3 44 48 261 +3 47 51 265 +3 263 47 265 +3 267 52 268 +3 267 51 52 +3 54 272 268 +3 54 55 272 +3 58 2 27 +3 273 59 58 +3 58 27 273 +3 59 270 55 +3 270 59 273 +3 54 268 52 +3 270 272 55 +3 263 48 47 +3 265 51 267 +3 40 258 41 +3 44 261 260 +3 14 256 35 +3 98 276 277 +3 276 100 278 +3 100 276 98 +3 279 278 103 +3 100 103 278 +3 105 280 279 +3 279 103 105 +3 280 107 281 +3 107 280 105 +3 282 281 108 +3 107 108 281 +3 176 283 282 +3 282 108 176 +3 283 174 284 +3 174 283 176 +3 172 284 174 +3 285 286 167 +3 287 288 161 +3 288 289 163 +3 161 288 163 +3 166 163 289 +3 164 166 290 +3 289 290 166 +3 167 164 285 +3 164 290 285 +3 286 169 167 +3 172 291 284 +3 171 291 172 +3 292 171 169 +3 286 292 169 +3 277 97 98 +3 291 171 292 +3 162 165 293 +3 168 294 165 +3 293 165 294 +3 295 168 170 +3 168 295 294 +3 170 173 296 +3 296 295 170 +3 175 297 173 +3 296 173 297 +3 298 175 177 +3 175 298 297 +3 177 178 299 +3 299 298 177 +3 109 300 178 +3 299 178 300 +3 301 109 116 +3 109 301 300 +3 116 111 302 +3 302 301 116 +3 223 303 111 +3 302 111 303 +3 304 223 204 +3 223 304 303 +3 204 181 305 +3 305 304 204 +3 186 306 181 +3 305 181 306 +3 307 186 188 +3 186 307 306 +3 188 189 308 +3 308 307 188 +3 189 309 308 +3 208 310 311 +3 210 312 313 +3 313 314 209 +3 207 310 208 +3 313 209 210 +3 310 207 314 +3 207 209 314 +3 134 131 315 +3 136 316 137 +3 208 311 202 +3 317 202 311 +3 317 136 202 +3 131 318 315 +3 136 317 316 +3 137 316 318 +3 131 137 318 +3 126 319 199 +3 134 320 129 +3 315 320 134 +3 129 321 125 +3 321 129 320 +3 125 321 322 +3 319 126 322 +3 322 126 125 +3 194 309 189 +3 323 199 319 +3 324 196 323 +3 196 199 323 +3 324 194 196 +3 293 325 162 +3 324 309 194 +3 94 93 326 +3 327 328 140 +3 140 328 93 +3 143 329 144 +3 144 329 327 +3 89 330 331 +3 143 89 331 +3 87 96 332 +3 330 87 332 +3 333 85 334 +3 333 96 85 +3 335 80 79 +3 335 334 80 +3 336 337 82 +3 82 337 79 +3 75 338 217 +3 217 338 336 +3 77 339 340 +3 75 77 340 +3 72 69 341 +3 339 72 341 +3 69 66 342 +3 62 61 343 +3 344 343 61 +3 345 63 62 +3 62 343 345 +3 63 346 64 +3 346 63 345 +3 74 64 347 +3 346 347 64 +3 348 66 74 +3 74 347 348 +3 342 341 69 +3 342 66 348 +3 338 75 340 +3 77 72 339 +3 79 337 335 +3 217 336 82 +3 333 332 96 +3 334 85 80 +3 329 143 331 +3 89 87 330 +3 140 144 327 +3 328 326 93 +3 161 160 287 +3 349 350 158 +3 158 350 160 +3 155 351 156 +3 156 351 349 +3 154 352 353 +3 155 154 353 +3 152 150 354 +3 352 152 354 +3 355 148 356 +3 355 150 148 +3 357 222 145 +3 357 356 222 +3 358 359 142 +3 142 359 145 +3 360 358 141 +3 95 97 361 +3 277 361 97 +3 362 138 95 +3 95 361 362 +3 138 363 139 +3 363 138 362 +3 141 139 360 +3 363 360 139 +3 145 359 357 +3 141 358 142 +3 355 354 150 +3 356 148 222 +3 351 155 353 +3 154 152 352 +3 158 156 349 +3 350 287 160 +3 246 364 365 +3 364 216 366 +3 216 364 246 +3 367 366 215 +3 216 215 366 +3 244 368 367 +3 367 215 244 +3 368 81 369 +3 81 368 244 +3 370 369 78 +3 81 78 369 +3 370 78 84 +3 371 220 372 +3 220 219 372 +3 373 372 219 +3 83 374 84 +3 220 371 88 +3 88 375 86 +3 86 375 376 +3 88 371 375 +3 374 83 376 +3 86 376 83 +3 365 226 246 +3 370 84 374 +3 201 377 344 +3 377 205 378 +3 205 377 201 +3 379 378 206 +3 205 206 378 +3 135 380 379 +3 379 206 135 +3 380 133 381 +3 133 380 135 +3 382 381 132 +3 133 132 381 +3 128 383 382 +3 382 132 128 +3 383 130 384 +3 130 383 128 +3 385 384 127 +3 130 127 384 +3 124 386 385 +3 385 127 124 +3 386 122 387 +3 122 386 124 +3 387 122 118 +3 326 388 94 +3 389 390 102 +3 99 94 388 +3 99 388 391 +3 101 99 391 +3 101 389 102 +3 391 389 101 +3 392 118 114 +3 390 104 102 +3 104 390 393 +3 393 394 106 +3 393 106 104 +3 112 394 395 +3 112 106 394 +3 396 242 395 +3 112 395 242 +3 113 397 114 +3 242 396 113 +3 114 397 392 +3 396 397 113 +3 344 61 201 +3 118 392 387 +3 198 398 399 +3 398 195 400 +3 195 398 198 +3 401 400 193 +3 195 193 400 +3 191 402 401 +3 401 193 191 +3 402 192 403 +3 192 402 191 +3 404 403 190 +3 192 190 403 +3 404 190 203 +3 405 183 406 +3 183 182 406 +3 407 406 182 +3 185 408 203 +3 183 405 184 +3 184 409 187 +3 187 409 410 +3 184 405 409 +3 408 185 410 +3 187 410 185 +3 399 197 198 +3 404 203 408 +3 210 411 312 +3 412 211 212 +3 411 211 412 +3 413 213 414 +3 212 213 413 +3 73 68 415 +3 73 415 414 +3 65 416 417 +3 65 417 68 +3 71 418 67 +3 418 416 67 +3 419 420 70 +3 420 71 70 +3 421 76 214 +3 419 76 421 +3 422 245 423 +3 214 245 422 +3 225 229 424 +3 225 424 423 +3 231 425 426 +3 231 426 229 +3 237 427 232 +3 427 425 232 +3 428 429 240 +3 429 237 240 +3 430 218 221 +3 428 218 430 +3 431 92 432 +3 221 92 431 +3 433 91 90 +3 91 433 432 +3 433 90 434 +3 162 325 435 +3 435 436 159 +3 159 162 435 +3 437 157 436 +3 159 436 157 +3 153 437 438 +3 437 153 157 +3 438 439 151 +3 151 153 438 +3 440 149 439 +3 151 439 149 +3 147 440 441 +3 440 147 149 +3 441 434 146 +3 146 147 441 +3 91 432 92 +3 146 434 90 +3 240 218 428 +3 430 221 431 +3 425 231 232 +3 429 427 237 +3 225 423 245 +3 229 426 424 +3 70 76 419 +3 421 214 422 +3 416 65 67 +3 420 418 71 +3 73 414 213 +3 68 417 415 +3 212 413 412 +3 411 210 211 +3 182 243 407 +3 442 443 110 +3 110 443 243 +3 180 444 179 +3 179 444 442 +3 115 445 446 +3 180 115 446 +3 117 119 447 +3 445 117 447 +3 448 121 449 +3 448 119 121 +3 450 449 120 +3 200 197 451 +3 399 451 197 +3 452 123 200 +3 200 451 452 +3 123 450 120 +3 450 123 452 +3 448 447 119 +3 449 121 120 +3 444 180 446 +3 115 117 445 +3 110 179 442 +3 443 407 243 +3 219 239 373 +3 453 454 236 +3 236 454 239 +3 234 455 238 +3 238 455 453 +3 235 456 457 +3 234 235 457 +3 233 241 458 +3 456 233 458 +3 459 230 460 +3 459 241 230 +3 461 460 228 +3 224 226 462 +3 365 462 226 +3 463 227 224 +3 224 462 463 +3 227 461 228 +3 461 227 463 +3 459 458 241 +3 460 230 228 +3 455 234 457 +3 235 233 456 +3 236 238 453 +3 454 373 239 +3 248 464 465 +3 248 247 464 +3 466 247 250 +3 247 466 464 +3 249 467 250 +3 466 250 467 +3 249 251 468 +3 468 467 249 +3 468 251 469 +3 251 275 469 +3 255 470 254 +3 471 253 254 +3 254 470 471 +3 253 472 252 +3 472 253 471 +3 275 252 473 +3 472 473 252 +3 275 473 469 +3 257 474 255 +3 475 259 476 +3 474 257 475 +3 477 262 264 +3 476 259 262 +3 478 479 266 +3 479 477 264 +3 266 269 478 +3 269 271 480 +3 481 274 465 +3 248 465 274 +3 481 480 271 +3 271 274 481 +3 479 264 266 +3 478 269 480 +3 259 475 257 +3 262 477 476 +3 255 474 470 +3 482 278 483 +3 276 484 277 +3 485 277 484 +3 276 278 482 +3 482 484 276 +3 280 486 487 +3 279 483 278 +3 284 488 489 +3 282 490 281 +3 488 291 491 +3 291 488 284 +3 492 491 292 +3 291 292 491 +3 286 493 492 +3 492 292 286 +3 286 285 493 +3 494 493 285 +3 489 495 496 +3 496 283 489 +3 497 288 498 +3 498 288 287 +3 283 496 282 +3 496 490 282 +3 497 499 289 +3 289 288 497 +3 486 281 490 +3 280 281 486 +3 290 499 494 +3 499 290 289 +3 280 487 279 +3 487 483 279 +3 284 489 283 +3 290 494 285 +3 500 501 312 +3 502 313 501 +3 312 501 313 +3 314 502 503 +3 502 314 313 +3 503 504 310 +3 310 314 503 +3 505 311 504 +3 310 504 311 +3 317 505 506 +3 505 317 311 +3 506 507 316 +3 316 317 506 +3 508 318 507 +3 316 507 318 +3 315 508 509 +3 508 315 318 +3 509 510 320 +3 320 315 509 +3 511 321 510 +3 320 510 321 +3 322 511 512 +3 511 322 321 +3 512 513 319 +3 319 322 512 +3 514 323 513 +3 319 513 323 +3 324 514 515 +3 514 324 323 +3 515 516 309 +3 309 324 515 +3 516 308 309 +3 308 516 517 +3 518 293 519 +3 325 293 518 +3 294 520 519 +3 519 293 294 +3 521 520 295 +3 294 295 520 +3 521 296 522 +3 296 521 295 +3 297 523 522 +3 522 296 297 +3 524 523 298 +3 297 298 523 +3 524 299 525 +3 299 524 298 +3 300 526 525 +3 525 299 300 +3 527 526 301 +3 300 301 526 +3 527 302 528 +3 302 527 301 +3 303 529 528 +3 528 302 303 +3 530 529 304 +3 303 304 529 +3 530 305 531 +3 305 530 304 +3 306 532 531 +3 531 305 306 +3 517 532 307 +3 306 307 532 +3 308 517 307 +3 533 534 328 +3 534 326 328 +3 535 329 536 +3 533 327 535 +3 537 538 331 +3 536 329 331 +3 330 332 539 +3 330 537 331 +3 540 333 541 +3 540 332 333 +3 334 335 542 +3 333 334 543 +3 544 545 337 +3 542 335 545 +3 336 546 547 +3 336 547 544 +3 338 340 548 +3 546 338 548 +3 341 549 339 +3 339 550 340 +3 549 341 551 +3 342 552 341 +3 344 553 554 +3 555 343 554 +3 344 554 343 +3 555 556 345 +3 345 343 555 +3 346 556 557 +3 556 346 345 +3 558 347 557 +3 346 557 347 +3 559 348 347 +3 347 558 559 +3 348 560 342 +3 560 348 559 +3 341 552 551 +3 560 552 342 +3 550 548 340 +3 550 339 549 +3 337 336 544 +3 336 338 546 +3 334 542 543 +3 337 545 335 +3 540 539 332 +3 543 541 333 +3 536 331 538 +3 537 330 539 +3 327 533 328 +3 329 535 327 +3 326 534 561 +3 562 563 350 +3 563 287 350 +3 562 351 564 +3 351 562 349 +3 565 353 352 +3 564 351 353 +3 566 567 354 +3 567 565 352 +3 356 568 355 +3 355 566 354 +3 357 569 570 +3 356 570 568 +3 359 358 571 +3 357 359 569 +3 572 571 358 +3 363 573 360 +3 361 277 485 +3 574 362 361 +3 361 485 574 +3 363 575 573 +3 576 362 574 +3 575 363 576 +3 362 576 363 +3 573 572 360 +3 570 569 577 +3 572 358 360 +3 357 570 356 +3 571 569 359 +3 567 352 354 +3 566 355 568 +3 349 562 350 +3 353 565 564 +3 287 563 498 +3 365 578 579 +3 578 364 580 +3 364 578 365 +3 581 580 366 +3 364 366 580 +3 367 582 581 +3 581 366 367 +3 582 368 583 +3 368 582 367 +3 584 583 369 +3 368 369 583 +3 370 584 369 +3 585 584 370 +3 586 372 587 +3 587 372 373 +3 586 588 371 +3 371 372 586 +3 375 588 589 +3 588 375 371 +3 590 376 589 +3 375 589 376 +3 590 585 374 +3 374 376 590 +3 585 370 374 +3 344 591 553 +3 591 377 592 +3 377 591 344 +3 593 592 378 +3 377 378 592 +3 379 594 593 +3 593 378 379 +3 594 380 595 +3 380 594 379 +3 381 596 380 +3 595 380 596 +3 381 382 597 +3 597 596 381 +3 598 382 383 +3 382 598 597 +3 383 599 600 +3 598 383 600 +3 599 384 601 +3 384 599 383 +3 602 601 385 +3 384 385 601 +3 386 602 385 +3 386 603 602 +3 388 326 604 +3 604 326 561 +3 605 391 388 +3 388 604 605 +3 391 606 389 +3 606 391 605 +3 390 389 607 +3 606 607 389 +3 608 390 609 +3 390 607 609 +3 608 610 393 +3 393 390 608 +3 394 610 611 +3 610 394 393 +3 612 395 611 +3 394 611 395 +3 613 396 395 +3 395 612 613 +3 396 614 397 +3 614 396 613 +3 392 397 615 +3 614 615 397 +3 616 387 392 +3 392 615 616 +3 617 603 387 +3 617 387 616 +3 603 386 387 +3 399 618 619 +3 618 398 620 +3 398 618 399 +3 621 620 400 +3 398 400 620 +3 401 622 621 +3 621 400 401 +3 622 402 623 +3 402 622 401 +3 624 623 403 +3 402 403 623 +3 404 624 403 +3 625 624 404 +3 626 406 627 +3 627 406 407 +3 626 628 405 +3 405 406 626 +3 409 628 629 +3 628 409 405 +3 630 410 629 +3 409 629 410 +3 630 625 408 +3 408 410 630 +3 625 404 408 +3 435 631 632 +3 435 325 631 +3 436 633 437 +3 632 633 436 +3 634 635 438 +3 634 438 437 +3 636 440 439 +3 636 439 635 +3 637 441 638 +3 441 440 638 +3 433 434 639 +3 434 637 639 +3 432 640 641 +3 433 640 432 +3 431 642 430 +3 641 642 431 +3 643 644 428 +3 643 428 430 +3 645 427 429 +3 645 429 644 +3 646 425 647 +3 425 427 647 +3 424 426 648 +3 426 646 648 +3 423 649 650 +3 424 649 423 +3 422 651 421 +3 650 651 422 +3 652 653 419 +3 652 419 421 +3 420 653 654 +3 654 418 420 +3 500 312 411 +3 411 412 655 +3 655 500 411 +3 413 656 412 +3 655 412 656 +3 657 413 414 +3 413 657 656 +3 414 415 658 +3 658 657 414 +3 417 659 415 +3 658 415 659 +3 660 417 416 +3 417 660 659 +3 416 418 661 +3 661 660 416 +3 420 419 653 +3 661 418 654 +3 650 422 423 +3 651 652 421 +3 425 646 426 +3 424 648 649 +3 429 428 644 +3 647 427 645 +3 641 431 432 +3 642 643 430 +3 441 637 434 +3 433 639 640 +3 439 438 635 +3 638 440 636 +3 435 632 436 +3 633 634 437 +3 518 631 325 +3 662 663 443 +3 663 407 443 +3 444 664 442 +3 442 664 662 +3 446 665 666 +3 444 446 666 +3 445 447 667 +3 665 445 667 +3 668 448 669 +3 668 447 448 +3 449 670 669 +3 449 450 670 +3 451 399 619 +3 671 452 451 +3 451 619 671 +3 452 672 450 +3 672 452 671 +3 449 669 448 +3 672 670 450 +3 665 446 445 +3 667 447 668 +3 442 662 443 +3 444 666 664 +3 407 663 627 +3 673 674 454 +3 674 373 454 +3 455 675 453 +3 453 675 673 +3 457 676 677 +3 455 457 677 +3 456 458 678 +3 676 456 678 +3 679 459 680 +3 679 458 459 +3 460 681 680 +3 460 461 681 +3 462 365 579 +3 682 463 462 +3 462 579 682 +3 463 683 461 +3 683 463 682 +3 460 680 459 +3 683 681 461 +3 676 457 456 +3 678 458 679 +3 453 673 454 +3 455 677 675 +3 373 674 587 +3 481 465 684 +3 684 685 481 +3 685 686 478 +3 478 480 685 +3 687 477 479 +3 686 687 479 +3 475 688 474 +3 687 476 477 +3 686 479 478 +3 689 470 474 +3 474 688 689 +3 471 690 472 +3 690 691 473 +3 473 472 690 +3 469 691 468 +3 692 693 467 +3 468 692 467 +3 692 468 691 +3 693 684 464 +3 693 466 467 +3 469 473 691 +3 480 481 685 +3 694 695 696 +3 697 698 699 +3 697 696 698 +3 700 701 702 +3 698 701 699 +3 702 703 704 +3 705 703 706 +3 705 704 703 +3 707 708 709 +3 706 707 709 +3 710 711 712 +3 713 709 710 +3 711 714 715 +3 708 710 709 +3 716 714 711 +3 717 716 718 +3 719 720 718 +3 718 716 719 +3 706 703 707 +3 701 700 699 +3 721 722 723 +3 721 724 722 +3 725 726 727 +3 722 726 723 +3 728 729 727 +3 727 726 728 +3 728 730 731 +3 732 728 731 +3 732 729 728 +3 730 733 734 +3 735 730 734 +3 736 737 738 +3 736 734 733 +3 737 739 738 +3 737 740 741 +3 742 740 743 +3 743 744 745 +3 744 746 747 +3 747 745 744 +3 735 731 730 +3 470 689 471 +3 686 748 687 +3 476 687 688 +3 749 750 751 +3 748 751 687 +3 752 753 754 +3 754 750 749 +3 755 756 757 +3 756 753 752 +3 755 757 758 +3 759 760 761 +3 762 758 760 +3 759 761 763 +3 764 765 766 +3 764 767 746 +3 724 746 767 +3 747 746 724 +3 741 768 737 +3 734 736 738 +3 769 733 770 +3 771 770 772 +3 773 772 774 +3 775 774 776 +3 777 776 778 +3 770 771 769 +3 764 763 765 +3 777 779 780 +3 781 782 783 +3 784 785 786 +3 787 788 785 +3 789 790 791 +3 787 791 792 +3 793 794 790 +3 794 793 795 +3 796 797 798 +3 795 797 796 +3 799 800 801 +3 798 799 801 +3 800 802 803 +3 804 800 803 +3 790 789 793 +3 789 791 787 +3 797 795 793 +3 800 804 801 +3 805 806 802 +3 806 805 807 +3 808 805 809 +3 810 809 811 +3 812 811 813 +3 812 814 815 +3 815 816 817 +3 817 818 819 +3 820 821 708 +3 710 712 713 +3 822 714 716 +3 702 701 703 +3 823 694 719 +3 694 823 695 +3 824 823 825 +3 824 826 827 +3 827 828 829 +3 829 830 831 +3 831 832 833 +3 834 835 836 +3 837 836 838 +3 839 838 840 +3 775 776 777 +3 464 466 693 +3 779 841 780 +3 777 778 779 +3 773 774 775 +3 471 689 690 +3 842 781 783 +3 841 781 842 +3 843 844 691 +3 782 781 784 +3 843 840 844 +3 837 838 839 +3 786 782 784 +3 845 785 788 +3 837 834 836 +3 787 792 788 +3 797 799 798 +3 832 831 830 +3 826 828 827 +3 802 806 803 +3 808 807 805 +3 824 825 826 +3 698 696 695 +3 810 808 809 +3 813 814 812 +3 719 694 720 +3 711 715 712 +3 814 816 815 +3 819 818 821 +3 708 707 820 +3 816 818 817 +3 820 819 821 +3 812 810 811 +3 717 822 716 +3 807 846 806 +3 695 823 824 +3 829 828 830 +3 845 786 785 +3 833 835 834 +3 782 847 783 +3 840 843 839 +3 842 780 841 +3 691 844 692 +3 773 771 772 +3 684 465 464 +3 733 769 736 +3 688 475 476 +3 768 739 737 +3 751 748 749 +3 753 750 754 +3 757 756 752 +3 744 743 740 +3 755 758 762 +3 740 742 741 +3 760 759 762 +3 725 723 726 +3 765 763 761 +3 767 722 724 +3 833 832 835 +3 766 767 764 +3 848 849 850 +3 851 852 848 +3 853 854 855 +3 849 853 850 +3 854 856 857 +3 856 858 859 +3 860 861 862 +3 858 860 862 +3 863 864 861 +3 865 866 864 +3 867 866 868 +3 869 870 867 +3 871 872 873 +3 873 872 869 +3 874 871 875 +3 876 874 877 +3 878 876 879 +3 880 878 881 +3 880 882 883 +3 884 883 885 +3 886 885 887 +3 888 887 889 +3 890 576 574 +3 881 882 880 +3 484 891 485 +3 891 574 485 +3 891 484 892 +3 482 483 893 +3 892 482 893 +3 487 894 893 +3 486 895 894 +3 896 895 897 +3 898 896 899 +3 900 901 898 +3 902 903 904 +3 486 905 895 +3 903 902 906 +3 894 487 486 +3 907 908 909 +3 910 909 911 +3 912 911 913 +3 487 893 483 +3 914 915 916 +3 917 914 918 +3 919 920 921 +3 922 923 919 +3 924 925 922 +3 926 927 928 +3 929 930 927 +3 931 852 851 +3 482 892 484 +3 577 569 932 +3 933 932 571 +3 569 571 932 +3 572 934 933 +3 572 933 571 +3 935 573 936 +3 572 573 935 +3 936 573 575 +3 935 934 572 +3 576 936 575 +3 933 934 937 +3 576 890 936 +3 934 888 937 +3 886 887 888 +3 888 889 937 +3 885 886 884 +3 891 890 574 +3 884 880 883 +3 877 879 876 +3 881 878 879 +3 875 877 874 +3 870 866 867 +3 870 869 872 +3 865 868 866 +3 855 854 857 +3 858 862 859 +3 860 863 861 +3 848 852 849 +3 859 857 856 +3 931 938 852 +3 928 924 926 +3 927 926 929 +3 922 925 923 +3 924 928 925 +3 917 921 920 +3 920 919 923 +3 916 915 939 +3 918 914 916 +3 913 940 912 +3 915 940 941 +3 908 942 906 +3 909 910 907 +3 903 943 904 +3 906 942 903 +3 944 496 495 +3 901 900 943 +3 944 490 496 +3 486 490 905 +3 944 905 490 +3 897 895 905 +3 896 898 901 +3 899 896 897 +3 911 912 910 +3 908 907 942 +3 921 917 918 +3 941 940 913 +3 938 930 929 +3 939 915 941 +3 938 931 930 +3 864 863 865 +3 850 853 855 +3 904 943 900 +3 875 871 873 +3 852 690 689 +3 691 938 929 +3 690 938 691 +3 843 926 839 +3 929 926 843 +3 924 922 837 +3 924 837 839 +3 919 833 834 +3 919 834 922 +3 918 831 921 +3 831 833 921 +3 827 829 916 +3 829 918 916 +3 824 939 941 +3 827 939 824 +3 695 913 698 +3 941 913 695 +3 911 909 701 +3 911 701 698 +3 908 707 703 +3 908 703 909 +3 817 900 815 +3 707 906 820 +3 897 810 899 +3 846 495 489 +3 846 944 495 +3 906 902 820 +3 846 807 944 +3 807 808 905 +3 944 807 905 +3 808 810 897 +3 905 808 897 +3 899 812 898 +3 812 899 810 +3 898 815 900 +3 898 812 815 +3 819 904 817 +3 900 817 904 +3 820 902 819 +3 819 902 904 +3 703 701 909 +3 906 707 908 +3 941 695 824 +3 913 911 698 +3 831 918 829 +3 827 916 939 +3 834 837 922 +3 921 833 919 +3 691 929 843 +3 926 924 839 +3 938 690 852 +3 499 497 795 +3 795 498 794 +3 798 494 796 +3 796 494 499 +3 801 492 493 +3 798 801 493 +3 491 492 804 +3 804 803 491 +3 488 806 489 +3 846 489 806 +3 488 491 803 +3 803 806 488 +3 494 798 493 +3 801 804 492 +3 795 796 499 +3 497 498 795 +3 684 693 501 +3 692 502 693 +3 501 693 502 +3 503 692 844 +3 692 503 502 +3 844 840 504 +3 504 503 844 +3 838 505 840 +3 504 840 505 +3 506 838 836 +3 838 506 505 +3 836 835 507 +3 507 506 836 +3 832 508 835 +3 507 835 508 +3 509 832 830 +3 832 509 508 +3 830 828 510 +3 510 509 830 +3 826 511 828 +3 510 828 511 +3 512 826 825 +3 826 512 511 +3 825 823 513 +3 513 512 825 +3 719 514 823 +3 513 823 514 +3 515 719 716 +3 719 515 514 +3 716 711 516 +3 516 515 716 +3 517 516 711 +3 793 519 797 +3 797 520 799 +3 520 797 519 +3 518 519 793 +3 802 522 523 +3 800 521 522 +3 522 802 800 +3 521 799 520 +3 521 800 799 +3 816 814 528 +3 805 523 524 +3 526 811 525 +3 805 802 523 +3 525 811 809 +3 525 809 524 +3 527 813 526 +3 809 805 524 +3 813 811 526 +3 814 527 528 +3 814 813 527 +3 708 821 531 +3 529 818 816 +3 531 821 530 +3 529 816 528 +3 530 818 529 +3 530 821 818 +3 517 711 710 +3 710 708 532 +3 532 517 710 +3 501 500 684 +3 708 531 532 +3 945 946 554 +3 945 553 947 +3 947 948 949 +3 950 949 951 +3 946 952 555 +3 555 554 946 +3 951 949 953 +3 950 954 955 +3 952 956 957 +3 957 556 952 +3 954 950 951 +3 955 958 956 +3 957 959 960 +3 960 557 957 +3 958 955 954 +3 956 961 959 +3 960 962 963 +3 963 558 960 +3 961 956 958 +3 959 964 962 +3 963 965 966 +3 966 559 963 +3 964 959 961 +3 962 967 965 +3 966 968 969 +3 969 560 966 +3 967 962 964 +3 965 970 968 +3 969 971 972 +3 972 552 969 +3 970 965 967 +3 968 973 971 +3 972 974 975 +3 975 551 972 +3 973 968 970 +3 971 976 974 +3 975 977 978 +3 978 549 975 +3 976 971 973 +3 974 979 977 +3 978 980 981 +3 981 550 978 +3 979 974 976 +3 977 982 980 +3 981 983 984 +3 984 548 981 +3 982 977 979 +3 980 985 983 +3 984 986 987 +3 987 546 984 +3 985 980 982 +3 983 988 986 +3 987 989 990 +3 990 547 987 +3 988 983 985 +3 986 991 989 +3 990 992 993 +3 993 544 990 +3 991 986 988 +3 989 994 992 +3 993 995 996 +3 996 545 993 +3 994 989 991 +3 992 997 995 +3 996 998 999 +3 999 542 996 +3 997 992 994 +3 995 1000 998 +3 999 1001 1002 +3 1002 543 999 +3 1000 995 997 +3 998 1003 1001 +3 1002 1004 1005 +3 1005 541 1002 +3 1003 998 1000 +3 1001 1006 1004 +3 1005 1007 1008 +3 1008 540 1005 +3 1006 1001 1003 +3 1004 1009 1007 +3 1008 1010 1011 +3 1011 539 1008 +3 1009 1004 1006 +3 1007 1012 1010 +3 1011 1013 1014 +3 1014 537 1011 +3 1012 1007 1009 +3 1010 1015 1013 +3 1014 1016 1017 +3 1017 538 1014 +3 1015 1010 1012 +3 1013 1018 1016 +3 1017 1019 1020 +3 1020 536 1017 +3 1018 1013 1015 +3 1016 1021 1019 +3 1020 1022 1023 +3 1023 535 1020 +3 1021 1016 1018 +3 1019 1024 1022 +3 1023 1025 1026 +3 1026 533 1023 +3 1024 1019 1021 +3 1022 1027 1025 +3 1026 1028 1029 +3 1029 534 1026 +3 1027 1022 1024 +3 1025 1030 1028 +3 1030 1025 1027 +3 1026 534 533 +3 1029 561 534 +3 1022 1025 1023 +3 1020 1019 1022 +3 533 535 1023 +3 1019 1017 1016 +3 1020 535 536 +3 1013 1016 1014 +3 538 1017 536 +3 1011 1010 1013 +3 538 537 1014 +3 1010 1008 1007 +3 1011 537 539 +3 1004 1007 1005 +3 540 1008 539 +3 1002 1001 1004 +3 540 541 1005 +3 1001 999 998 +3 1002 541 543 +3 995 998 996 +3 542 999 543 +3 993 992 995 +3 542 545 996 +3 992 990 989 +3 993 545 544 +3 986 989 987 +3 547 990 544 +3 984 983 986 +3 547 546 987 +3 548 984 546 +3 981 980 983 +3 1031 953 948 +3 552 972 551 +3 949 948 953 +3 947 949 945 +3 553 945 554 +3 945 949 950 +3 952 946 955 +3 955 946 950 +3 950 946 945 +3 962 965 963 +3 956 952 955 +3 962 960 959 +3 960 558 557 +3 557 556 957 +3 558 963 559 +3 959 957 956 +3 966 560 559 +3 952 556 555 +3 966 965 968 +3 969 968 971 +3 969 552 560 +3 981 548 550 +3 549 551 975 +3 974 972 971 +3 974 977 975 +3 549 978 550 +3 1026 1025 1028 +3 977 980 978 +3 782 568 570 +3 568 786 566 +3 786 568 782 +3 567 566 845 +3 786 845 566 +3 788 565 567 +3 567 845 788 +3 565 788 792 +3 498 563 794 +3 563 790 794 +3 562 790 563 +3 564 565 792 +3 790 562 791 +3 791 564 792 +3 570 847 782 +3 791 562 564 +3 570 577 847 +3 577 932 847 +3 932 783 847 +3 842 783 933 +3 932 933 783 +3 842 937 780 +3 937 842 933 +3 889 777 780 +3 780 937 889 +3 775 777 887 +3 889 887 777 +3 775 885 773 +3 885 775 887 +3 883 771 773 +3 773 885 883 +3 769 771 882 +3 883 882 771 +3 769 881 736 +3 881 769 882 +3 879 737 736 +3 736 881 879 +3 740 737 877 +3 879 877 737 +3 740 875 744 +3 875 740 877 +3 875 873 744 +3 873 746 744 +3 688 852 689 +3 688 687 849 +3 849 852 688 +3 751 853 687 +3 849 687 853 +3 854 751 750 +3 751 854 853 +3 750 753 856 +3 856 854 750 +3 756 858 753 +3 856 753 858 +3 860 756 755 +3 756 860 858 +3 755 762 863 +3 863 860 755 +3 759 865 762 +3 863 762 865 +3 868 759 763 +3 759 868 865 +3 763 764 867 +3 867 868 763 +3 746 869 764 +3 867 764 869 +3 746 873 869 +3 1032 1033 578 +3 578 580 1032 +3 581 582 1034 +3 580 581 1035 +3 583 1034 582 +3 584 1036 583 +3 585 590 1037 +3 589 1038 1037 +3 588 1039 1038 +3 586 587 1040 +3 674 1041 1040 +3 673 1042 1041 +3 675 677 1043 +3 676 1044 1043 +3 678 1045 1044 +3 679 680 1046 +3 683 1047 681 +3 681 1047 1046 +3 579 1033 682 +3 1048 682 1033 +3 1041 674 673 +3 673 675 1042 +3 584 585 1049 +3 1048 1047 683 +3 589 588 1038 +3 1039 588 586 +3 585 1037 1049 +3 579 578 1033 +3 1035 581 1034 +3 584 1049 1036 +3 1034 583 1036 +3 589 1037 590 +3 1035 1032 580 +3 1040 587 674 +3 1048 683 682 +3 679 1046 1045 +3 1046 680 681 +3 675 1043 1042 +3 677 676 1043 +3 679 1045 678 +3 586 1040 1039 +3 676 678 1044 +3 1050 1051 604 +3 1050 561 1029 +3 1029 1028 1052 +3 1053 1052 1054 +3 1051 1055 605 +3 605 604 1051 +3 1054 1052 1056 +3 1053 1057 1058 +3 1055 1059 1060 +3 1060 606 1055 +3 1057 1053 1054 +3 1058 1061 1059 +3 1060 1062 1063 +3 1063 607 1060 +3 1061 1058 1057 +3 1059 1064 1062 +3 1063 1065 1066 +3 1066 609 1063 +3 1064 1059 1061 +3 1062 1067 1065 +3 1066 1068 1069 +3 1069 608 1066 +3 1067 1062 1064 +3 1065 1070 1068 +3 1069 1071 1072 +3 1072 610 1069 +3 1070 1065 1067 +3 1068 1073 1071 +3 1072 1074 1075 +3 1075 611 1072 +3 1073 1068 1070 +3 1071 1076 1074 +3 1075 1077 1078 +3 1078 612 1075 +3 1076 1071 1073 +3 1074 1079 1077 +3 1078 1080 1081 +3 1081 613 1078 +3 1079 1074 1076 +3 1077 1082 1080 +3 1081 1083 1084 +3 1084 614 1081 +3 1082 1077 1079 +3 1080 1085 1083 +3 1084 1086 1087 +3 1087 615 1084 +3 1085 1080 1082 +3 1083 1088 1086 +3 1087 1089 1090 +3 1090 616 1087 +3 1088 1083 1085 +3 1086 1091 1089 +3 1090 1092 1093 +3 1093 617 1090 +3 1091 1086 1088 +3 1089 1094 1092 +3 1093 1095 1096 +3 1096 603 1093 +3 1094 1089 1091 +3 1092 1097 1095 +3 1096 1098 1099 +3 1099 602 1096 +3 1097 1092 1094 +3 1095 1100 1098 +3 1099 1101 1102 +3 1102 601 1099 +3 1100 1095 1097 +3 1098 1103 1101 +3 1102 1104 1105 +3 1105 599 1102 +3 1103 1098 1100 +3 1101 1106 1104 +3 1105 1107 1108 +3 1108 600 1105 +3 1106 1101 1103 +3 1104 1109 1107 +3 1108 1110 1111 +3 1111 598 1108 +3 1109 1104 1106 +3 1107 1112 1110 +3 1111 1113 1114 +3 1114 597 1111 +3 1112 1107 1109 +3 1110 1115 1113 +3 1114 1116 1117 +3 1117 596 1114 +3 1115 1110 1112 +3 1113 1118 1116 +3 1117 1119 1120 +3 1120 595 1117 +3 1118 1113 1115 +3 1116 1121 1119 +3 1120 1122 1123 +3 1123 594 1120 +3 1121 1116 1118 +3 1119 1124 1122 +3 1123 1125 1126 +3 1126 593 1123 +3 1124 1119 1121 +3 1122 1127 1125 +3 1126 1128 1129 +3 1129 592 1126 +3 1127 1122 1124 +3 1125 1130 1128 +3 947 591 1129 +3 1125 1128 1126 +3 592 1129 591 +3 1130 1125 1127 +3 1056 1028 1030 +3 1052 1028 1056 +3 1050 1029 1052 +3 1058 1051 1053 +3 1050 1053 1051 +3 1060 1059 1062 +3 606 1060 607 +3 609 1066 608 +3 1065 1063 1062 +3 1071 1069 1068 +3 610 608 1069 +3 612 611 1075 +3 1071 1074 1072 +3 1077 1080 1078 +3 1078 613 612 +3 1084 615 614 +3 1081 1080 1083 +3 1087 1086 1089 +3 615 1087 616 +3 617 1093 603 +3 1092 1090 1089 +3 1098 1096 1095 +3 602 603 1096 +3 599 601 1102 +3 1098 1101 1099 +3 1104 1107 1105 +3 1105 600 599 +3 1110 1113 1111 +3 1107 1110 1108 +3 591 947 553 +3 1119 1117 1116 +3 1129 948 947 +3 1129 1128 948 +3 948 1128 1031 +3 1031 1128 1130 +3 1122 1125 1123 +3 593 1126 592 +3 1120 1119 1122 +3 593 594 1123 +3 596 1117 595 +3 1120 594 595 +3 596 597 1114 +3 1114 1113 1116 +3 598 600 1108 +3 598 1111 597 +3 602 1099 601 +3 1102 1101 1104 +3 1090 617 616 +3 1092 1095 1093 +3 614 613 1081 +3 1086 1084 1083 +3 611 610 1072 +3 1075 1074 1077 +3 605 1055 606 +3 607 1063 609 +3 1052 1053 1050 +3 1059 1055 1058 +3 1051 1058 1055 +3 561 1050 604 +3 1068 1066 1065 +3 1131 1132 618 +3 618 620 1131 +3 621 622 1133 +3 620 621 1134 +3 623 1133 622 +3 624 1135 623 +3 625 630 1136 +3 629 1137 1136 +3 628 1138 1137 +3 626 627 1139 +3 663 1140 1139 +3 662 1141 1140 +3 664 666 1142 +3 665 1143 1142 +3 667 1144 1143 +3 668 669 1145 +3 672 1146 670 +3 670 1146 1145 +3 619 1132 671 +3 1147 671 1132 +3 1140 663 662 +3 662 664 1141 +3 624 625 1148 +3 1147 1146 672 +3 629 628 1137 +3 1138 628 626 +3 625 1136 1148 +3 619 618 1132 +3 1134 621 1133 +3 624 1148 1135 +3 1133 623 1135 +3 629 1136 630 +3 1134 1131 620 +3 1139 627 663 +3 1147 672 671 +3 668 1145 1144 +3 1145 669 670 +3 664 1142 1141 +3 666 665 1142 +3 668 1144 667 +3 626 1139 1138 +3 665 667 1143 +3 793 631 518 +3 632 789 787 +3 631 789 632 +3 633 785 634 +3 787 785 633 +3 784 781 635 +3 784 635 634 +3 841 638 636 +3 841 636 781 +3 778 637 779 +3 637 638 779 +3 640 639 776 +3 639 778 776 +3 641 774 772 +3 640 774 641 +3 642 770 643 +3 772 770 642 +3 733 730 644 +3 733 644 643 +3 728 647 645 +3 728 645 730 +3 722 646 726 +3 646 647 726 +3 649 648 767 +3 648 722 767 +3 650 766 765 +3 649 766 650 +3 651 761 652 +3 765 761 651 +3 653 760 758 +3 760 653 652 +3 653 758 654 +3 684 500 655 +3 655 656 685 +3 685 684 655 +3 657 686 656 +3 685 656 686 +3 748 657 658 +3 657 748 686 +3 658 659 749 +3 749 748 658 +3 660 754 659 +3 749 659 754 +3 752 660 661 +3 660 752 754 +3 661 654 757 +3 757 752 661 +3 760 652 761 +3 757 654 758 +3 767 766 649 +3 650 765 651 +3 647 728 726 +3 648 646 722 +3 733 643 770 +3 730 645 644 +3 776 774 640 +3 641 772 642 +3 638 841 779 +3 639 637 778 +3 784 634 785 +3 781 636 635 +3 787 633 632 +3 631 793 789 +3 1041 735 1040 +3 731 1042 732 +3 735 1041 731 +3 729 1043 1044 +3 732 1042 1043 +3 725 727 1045 +3 727 729 1044 +3 1045 1046 725 +3 1046 1047 723 +3 721 1048 724 +3 1033 724 1048 +3 721 723 1047 +3 1047 1048 721 +3 727 1044 1045 +3 725 1046 723 +3 1042 731 1041 +3 1043 729 732 +3 1040 735 734 +3 1132 720 694 +3 1132 1131 720 +3 718 1131 1134 +3 1131 718 720 +3 1133 717 1134 +3 718 1134 717 +3 1133 1135 822 +3 822 717 1133 +3 822 1135 714 +3 1135 1148 714 +3 1139 709 1138 +3 713 1137 1138 +3 1138 709 713 +3 1137 712 1136 +3 712 1137 713 +3 1148 1136 715 +3 712 715 1136 +3 1148 715 714 +3 1140 706 1139 +3 705 1141 704 +3 706 1140 705 +3 702 1142 1143 +3 704 1141 1142 +3 699 700 1144 +3 700 702 1143 +3 1144 1145 699 +3 1145 1146 697 +3 696 1147 694 +3 1132 694 1147 +3 696 697 1146 +3 1146 1147 696 +3 700 1143 1144 +3 699 1145 697 +3 1141 705 1140 +3 1142 702 704 +3 1139 706 709 +3 1033 747 724 +3 1033 1032 747 +3 745 1032 1035 +3 1032 745 747 +3 1034 743 1035 +3 745 1035 743 +3 1034 1036 742 +3 742 743 1034 +3 742 1036 741 +3 1036 1049 741 +3 1040 734 1039 +3 738 1038 1039 +3 1039 734 738 +3 1038 739 1037 +3 739 1038 738 +3 1049 1037 768 +3 739 768 1037 +3 1049 768 741 +3 892 1149 1150 +3 1149 893 1151 +3 893 1149 892 +3 1152 1151 894 +3 893 894 1151 +3 895 1153 1152 +3 1152 894 895 +3 1153 896 1154 +3 896 1153 895 +3 1155 1154 901 +3 896 901 1154 +3 943 1156 1155 +3 1155 901 943 +3 1156 903 1157 +3 903 1156 943 +3 1158 1157 942 +3 903 942 1157 +3 907 1159 1158 +3 1158 942 907 +3 1159 910 1160 +3 910 1159 907 +3 1161 1160 912 +3 910 912 1160 +3 1161 912 940 +3 851 1162 1163 +3 1164 930 931 +3 1164 931 1163 +3 931 851 1163 +3 1165 1166 915 +3 930 1167 927 +3 914 917 1168 +3 1169 923 1170 +3 1167 1171 927 +3 925 928 1172 +3 1172 928 1171 +3 927 1171 928 +3 925 1172 1170 +3 1164 1167 930 +3 1169 1173 920 +3 1170 923 925 +3 1173 1168 917 +3 1173 917 920 +3 920 923 1169 +3 915 914 1165 +3 914 1168 1165 +3 1161 940 1166 +3 1150 891 892 +3 940 915 1166 +3 851 848 1162 +3 1174 1175 850 +3 850 1175 848 +3 857 1176 855 +3 855 1176 1174 +3 859 1177 1178 +3 857 859 1178 +3 862 861 1179 +3 1177 862 1179 +3 1180 864 1181 +3 1180 861 864 +3 1182 866 870 +3 1182 1181 866 +3 1183 1184 872 +3 872 1184 870 +3 874 1185 871 +3 871 1185 1183 +3 876 1186 1187 +3 874 876 1187 +3 878 880 1188 +3 1186 878 1188 +3 1189 884 1190 +3 1189 880 884 +3 1191 1190 886 +3 890 891 1192 +3 1150 1192 891 +3 1193 936 890 +3 890 1192 1193 +3 936 1194 935 +3 1194 936 1193 +3 934 935 1195 +3 1194 1195 935 +3 1196 888 934 +3 934 1195 1196 +3 888 1191 886 +3 1191 888 1196 +3 1189 1188 880 +3 1190 884 886 +3 1185 874 1187 +3 876 878 1186 +3 870 1184 1182 +3 871 1183 872 +3 1180 1179 861 +3 1181 864 866 +3 1176 857 1178 +3 859 862 1177 +3 850 855 1174 +3 1175 1162 848 +3 1197 1027 1198 +3 1199 1030 1197 +3 1027 1024 1198 +3 1021 1200 1201 +3 1200 1202 1201 +3 1024 1021 1201 +3 1203 1204 1205 +3 1204 1206 1205 +3 1207 1208 1209 +3 1210 1208 1207 +3 1209 1211 1212 +3 1057 1054 1212 +3 1211 1061 1212 +3 1208 1210 1204 +3 1213 1030 1199 +3 1208 1211 1209 +3 1214 1215 1216 +3 1217 1218 1214 +3 1219 1220 1221 +3 1216 1215 1219 +3 1222 1223 1224 +3 1221 1223 1222 +3 1103 1225 1226 +3 1224 1226 1225 +3 1100 1097 1227 +3 1225 1100 1227 +3 1094 1228 1229 +3 1091 1088 1230 +3 1088 1085 1231 +3 1223 1221 1220 +3 1082 1232 1085 +3 1223 1226 1224 +3 1233 1234 1235 +3 1236 1237 1238 +3 1235 1237 1233 +3 1238 1239 1240 +3 954 951 1240 +3 953 1241 1242 +3 1239 958 1240 +3 1031 1241 953 +3 1031 1243 1241 +3 1031 1130 1244 +3 1130 1127 1245 +3 1124 1246 1247 +3 1248 1249 1250 +3 1246 1251 1247 +3 1127 1124 1247 +3 1237 1239 1238 +3 1127 1247 1245 +3 1244 1130 1245 +3 1252 994 1253 +3 1254 997 1252 +3 991 988 1255 +3 994 991 1253 +3 988 1256 1255 +3 985 982 1257 +3 979 1258 1259 +3 982 979 1259 +3 976 1258 979 +3 1260 1261 1262 +3 1263 1264 1258 +3 1262 1265 1266 +3 1267 1268 1269 +3 1266 1268 1267 +3 985 1257 1256 +3 1269 1270 1254 +3 1269 1268 1270 +3 1204 1210 1206 +3 1021 1018 1200 +3 1202 1200 1203 +3 1018 1271 1200 +3 1012 1271 1015 +3 1009 1272 1012 +3 1273 1272 1006 +3 1273 1003 1000 +3 1000 997 1254 +3 994 1252 997 +3 1265 1262 1261 +3 1261 1264 1263 +3 1274 1263 976 +3 1274 973 970 +3 1275 967 964 +3 1276 958 1239 +3 1276 961 958 +3 951 1242 1240 +3 1244 1243 1031 +3 1249 1235 1250 +3 1249 1251 1246 +3 1277 1246 1121 +3 1277 1118 1115 +3 1278 1112 1109 +3 1279 1106 1103 +3 1097 1229 1227 +3 1230 1228 1091 +3 1085 1232 1231 +3 1079 1217 1082 +3 1280 1218 1079 +3 1280 1076 1073 +3 1281 1070 1067 +3 988 985 1256 +3 1282 1054 1056 +3 1275 970 967 +3 1251 1249 1248 +3 1246 1124 1121 +3 1280 1073 1281 +3 1079 1076 1280 +3 1237 1236 1233 +3 1250 1235 1234 +3 1067 1064 1283 +3 1281 1067 1283 +3 958 954 1240 +3 951 953 1242 +3 1057 1212 1061 +3 1061 1211 1283 +3 1275 964 1276 +3 1276 964 961 +3 1056 1213 1282 +3 1213 1056 1030 +3 1258 976 1263 +3 973 1274 976 +3 1198 1024 1201 +3 1284 1203 1205 +3 1018 1015 1271 +3 1265 1268 1266 +3 1253 991 1255 +3 1272 1271 1012 +3 1006 1003 1273 +3 1270 1000 1254 +3 1000 1270 1273 +3 982 1259 1257 +3 1006 1272 1009 +3 1261 1260 1264 +3 1284 1202 1203 +3 970 1275 1274 +3 1030 1027 1197 +3 1212 1054 1282 +3 1283 1064 1061 +3 1281 1073 1070 +3 1218 1215 1214 +3 1079 1218 1217 +3 1082 1217 1232 +3 1277 1121 1118 +3 1219 1215 1220 +3 1277 1115 1278 +3 1231 1230 1088 +3 1112 1278 1115 +3 1228 1094 1091 +3 1109 1279 1278 +3 1097 1094 1229 +3 1279 1109 1106 +3 1100 1225 1103 +3 1103 1226 1279 +3 1150 1285 1286 +3 1285 1149 1287 +3 1149 1285 1150 +3 1288 1287 1151 +3 1149 1151 1287 +3 1152 1289 1288 +3 1288 1151 1152 +3 1289 1153 1290 +3 1153 1289 1152 +3 1154 1291 1153 +3 1290 1153 1291 +3 1154 1155 1292 +3 1292 1291 1154 +3 1293 1155 1156 +3 1155 1293 1292 +3 1157 1294 1156 +3 1293 1156 1294 +3 1295 1157 1296 +3 1295 1294 1157 +3 1297 1296 1158 +3 1157 1158 1296 +3 1159 1298 1297 +3 1297 1158 1159 +3 1159 1160 1298 +3 1160 1299 1298 +3 1163 1162 1300 +3 1300 1162 1301 +3 1302 1164 1163 +3 1163 1300 1302 +3 1164 1303 1167 +3 1303 1164 1302 +3 1171 1167 1304 +3 1303 1304 1167 +3 1305 1171 1306 +3 1171 1304 1306 +3 1305 1307 1172 +3 1172 1171 1305 +3 1170 1307 1308 +3 1307 1170 1172 +3 1309 1169 1308 +3 1170 1308 1169 +3 1309 1310 1173 +3 1173 1169 1309 +3 1173 1311 1168 +3 1311 1173 1310 +3 1165 1168 1312 +3 1311 1312 1168 +3 1313 1166 1165 +3 1165 1312 1313 +3 1166 1314 1161 +3 1314 1166 1313 +3 1161 1315 1299 +3 1314 1315 1161 +3 1161 1299 1160 +3 1316 1317 1175 +3 1317 1162 1175 +3 1318 1176 1319 +3 1316 1174 1318 +3 1320 1321 1178 +3 1319 1176 1178 +3 1177 1179 1322 +3 1177 1320 1178 +3 1323 1180 1324 +3 1323 1179 1180 +3 1181 1182 1325 +3 1181 1326 1324 +3 1327 1184 1328 +3 1325 1182 1327 +3 1185 1329 1183 +3 1328 1184 1183 +3 1185 1187 1330 +3 1331 1185 1330 +3 1188 1332 1186 +3 1186 1333 1187 +3 1189 1334 1335 +3 1188 1335 1332 +3 1336 1334 1189 +3 1336 1190 1337 +3 1150 1286 1338 +3 1339 1192 1338 +3 1150 1338 1192 +3 1339 1340 1193 +3 1193 1192 1339 +3 1194 1340 1341 +3 1340 1194 1193 +3 1342 1195 1341 +3 1194 1341 1195 +3 1343 1196 1195 +3 1195 1342 1343 +3 1196 1344 1191 +3 1344 1196 1343 +3 1190 1191 1337 +3 1344 1337 1191 +3 1189 1335 1188 +3 1190 1336 1189 +3 1333 1330 1187 +3 1333 1186 1332 +3 1328 1183 1329 +3 1185 1331 1329 +3 1181 1325 1326 +3 1184 1327 1182 +3 1323 1322 1179 +3 1324 1180 1181 +3 1319 1178 1321 +3 1320 1177 1322 +3 1174 1316 1175 +3 1176 1318 1174 +3 1162 1317 1301 +3 1345 1213 1199 +3 1345 1346 1213 +3 1282 1346 1347 +3 1346 1282 1213 +3 1348 1212 1347 +3 1282 1347 1212 +3 1348 1209 1212 +3 1348 1349 1209 +3 1350 1206 1351 +3 1210 1352 1351 +3 1351 1206 1210 +3 1352 1207 1349 +3 1207 1352 1210 +3 1207 1209 1349 +3 1353 1250 1234 +3 1353 1354 1250 +3 1248 1354 1355 +3 1354 1248 1250 +3 1356 1251 1355 +3 1248 1355 1251 +3 1356 1247 1251 +3 1356 1357 1247 +3 1358 1243 1359 +3 1244 1360 1359 +3 1359 1243 1244 +3 1360 1245 1357 +3 1245 1360 1244 +3 1245 1247 1357 +3 1361 1259 1362 +3 1257 1363 1256 +3 1259 1361 1257 +3 1255 1364 1365 +3 1256 1363 1364 +3 1365 1253 1255 +3 1252 1253 1366 +3 1252 1367 1254 +3 1368 1254 1367 +3 1253 1365 1366 +3 1366 1367 1252 +3 1363 1257 1361 +3 1364 1255 1256 +3 1362 1259 1258 +3 1369 1224 1370 +3 1222 1371 1221 +3 1224 1369 1222 +3 1219 1372 1373 +3 1221 1371 1372 +3 1373 1216 1219 +3 1214 1216 1374 +3 1214 1375 1217 +3 1376 1217 1375 +3 1216 1373 1374 +3 1374 1375 1214 +3 1371 1222 1369 +3 1372 1219 1221 +3 1370 1224 1225 +3 1377 1241 1358 +3 1242 1378 1240 +3 1241 1377 1242 +3 1238 1379 1380 +3 1240 1378 1379 +3 1380 1236 1238 +3 1233 1236 1381 +3 1233 1382 1234 +3 1353 1234 1382 +3 1236 1380 1381 +3 1381 1382 1233 +3 1378 1242 1377 +3 1379 1238 1240 +3 1358 1241 1243 +3 1249 1383 1384 +3 1383 1246 1385 +3 1246 1383 1249 +3 1386 1385 1277 +3 1246 1277 1385 +3 1278 1387 1386 +3 1386 1277 1278 +3 1387 1279 1388 +3 1279 1387 1278 +3 1389 1388 1226 +3 1279 1226 1388 +3 1223 1390 1389 +3 1389 1226 1223 +3 1390 1220 1391 +3 1220 1390 1223 +3 1215 1391 1220 +3 1392 1393 1280 +3 1394 1208 1204 +3 1395 1394 1204 +3 1208 1396 1211 +3 1396 1208 1394 +3 1283 1211 1397 +3 1396 1397 1211 +3 1280 1281 1392 +3 1283 1397 1398 +3 1281 1283 1398 +3 1281 1398 1392 +3 1399 1391 1215 +3 1399 1218 1393 +3 1393 1218 1280 +3 1384 1235 1249 +3 1215 1218 1399 +3 1204 1203 1395 +3 1400 1401 1200 +3 1200 1401 1203 +3 1272 1402 1271 +3 1271 1402 1400 +3 1273 1403 1404 +3 1272 1273 1404 +3 1270 1268 1405 +3 1403 1270 1405 +3 1406 1265 1407 +3 1406 1268 1265 +3 1408 1261 1263 +3 1408 1407 1261 +3 1409 1410 1274 +3 1274 1410 1263 +3 1411 1409 1275 +3 1237 1235 1412 +3 1384 1412 1235 +3 1413 1239 1237 +3 1237 1412 1413 +3 1239 1414 1276 +3 1414 1239 1413 +3 1275 1276 1411 +3 1414 1411 1276 +3 1263 1410 1408 +3 1275 1409 1274 +3 1406 1405 1268 +3 1407 1265 1261 +3 1402 1272 1404 +3 1273 1270 1403 +3 1200 1271 1400 +3 1401 1395 1203 +3 1376 1232 1217 +3 1376 1415 1232 +3 1231 1415 1416 +3 1415 1231 1232 +3 1417 1230 1416 +3 1231 1416 1230 +3 1417 1228 1230 +3 1417 1418 1228 +3 1370 1225 1419 +3 1227 1420 1419 +3 1419 1225 1227 +3 1420 1229 1418 +3 1229 1420 1227 +3 1229 1228 1418 +3 1421 1205 1350 +3 1284 1422 1202 +3 1205 1421 1284 +3 1201 1423 1424 +3 1202 1422 1423 +3 1424 1198 1201 +3 1197 1198 1425 +3 1197 1426 1199 +3 1345 1199 1426 +3 1198 1424 1425 +3 1425 1426 1197 +3 1422 1284 1421 +3 1423 1201 1202 +3 1350 1205 1206 +3 1368 1269 1254 +3 1368 1427 1269 +3 1267 1427 1428 +3 1427 1267 1269 +3 1429 1266 1428 +3 1267 1428 1266 +3 1429 1262 1266 +3 1429 1430 1262 +3 1362 1258 1431 +3 1264 1432 1431 +3 1431 1258 1264 +3 1432 1260 1430 +3 1260 1432 1264 +3 1260 1262 1430 +3 1433 1434 1300 +3 1433 1301 1435 +3 1435 1436 1437 +3 1438 1437 1439 +3 1434 1440 1302 +3 1302 1300 1434 +3 1439 1437 1441 +3 1438 1442 1443 +3 1440 1444 1445 +3 1445 1303 1440 +3 1442 1438 1439 +3 1443 1446 1444 +3 1445 1447 1448 +3 1448 1304 1445 +3 1446 1443 1442 +3 1444 1449 1447 +3 1448 1450 1451 +3 1451 1306 1448 +3 1449 1444 1446 +3 1447 1452 1450 +3 1451 1453 1454 +3 1454 1305 1451 +3 1452 1447 1449 +3 1450 1455 1453 +3 1454 1456 1457 +3 1457 1307 1454 +3 1455 1450 1452 +3 1453 1458 1456 +3 1457 1459 1460 +3 1460 1308 1457 +3 1458 1453 1455 +3 1456 1461 1459 +3 1460 1462 1463 +3 1463 1309 1460 +3 1461 1456 1458 +3 1459 1464 1462 +3 1463 1465 1466 +3 1466 1310 1463 +3 1464 1459 1461 +3 1462 1467 1465 +3 1466 1468 1469 +3 1469 1311 1466 +3 1467 1462 1464 +3 1465 1470 1468 +3 1469 1471 1472 +3 1472 1312 1469 +3 1470 1465 1467 +3 1468 1473 1471 +3 1472 1474 1475 +3 1475 1313 1472 +3 1473 1468 1470 +3 1471 1476 1474 +3 1475 1477 1478 +3 1478 1314 1475 +3 1476 1471 1473 +3 1474 1479 1477 +3 1478 1480 1481 +3 1481 1315 1478 +3 1479 1474 1476 +3 1477 1482 1480 +3 1481 1483 1484 +3 1484 1299 1481 +3 1482 1477 1479 +3 1480 1485 1483 +3 1484 1486 1487 +3 1487 1298 1484 +3 1485 1480 1482 +3 1483 1488 1486 +3 1487 1489 1490 +3 1490 1297 1487 +3 1488 1483 1485 +3 1486 1491 1489 +3 1490 1492 1493 +3 1493 1296 1490 +3 1491 1486 1488 +3 1489 1494 1492 +3 1493 1495 1496 +3 1496 1295 1493 +3 1494 1489 1491 +3 1492 1497 1495 +3 1496 1498 1499 +3 1499 1294 1496 +3 1497 1492 1494 +3 1495 1500 1498 +3 1499 1501 1502 +3 1502 1293 1499 +3 1500 1495 1497 +3 1498 1503 1501 +3 1502 1504 1505 +3 1505 1292 1502 +3 1503 1498 1500 +3 1501 1506 1504 +3 1505 1507 1508 +3 1508 1291 1505 +3 1506 1501 1503 +3 1504 1509 1507 +3 1508 1510 1511 +3 1511 1290 1508 +3 1509 1504 1506 +3 1507 1512 1510 +3 1511 1513 1514 +3 1514 1289 1511 +3 1512 1507 1509 +3 1510 1515 1513 +3 1514 1516 1517 +3 1517 1288 1514 +3 1515 1510 1512 +3 1513 1518 1516 +3 1517 1519 1520 +3 1520 1287 1517 +3 1518 1513 1515 +3 1516 1521 1519 +3 1522 1285 1520 +3 1516 1519 1517 +3 1287 1520 1285 +3 1521 1516 1518 +3 1441 1436 1523 +3 1441 1437 1436 +3 1433 1435 1437 +3 1438 1443 1434 +3 1433 1438 1434 +3 1445 1444 1447 +3 1303 1445 1304 +3 1306 1451 1305 +3 1450 1448 1447 +3 1456 1454 1453 +3 1307 1305 1454 +3 1309 1308 1460 +3 1456 1459 1457 +3 1462 1465 1463 +3 1463 1310 1309 +3 1469 1312 1311 +3 1466 1465 1468 +3 1472 1471 1474 +3 1312 1472 1313 +3 1314 1478 1315 +3 1477 1475 1474 +3 1483 1481 1480 +3 1299 1315 1481 +3 1297 1298 1487 +3 1483 1486 1484 +3 1489 1492 1490 +3 1490 1296 1297 +3 1496 1294 1295 +3 1493 1492 1495 +3 1502 1292 1293 +3 1499 1293 1294 +3 1285 1522 1286 +3 1508 1290 1291 +3 1520 1524 1522 +3 1520 1519 1524 +3 1524 1519 1525 +3 1525 1519 1521 +3 1513 1516 1514 +3 1288 1517 1287 +3 1511 1510 1513 +3 1288 1289 1514 +3 1510 1508 1507 +3 1511 1289 1290 +3 1291 1292 1505 +3 1505 1504 1507 +3 1498 1501 1499 +3 1504 1502 1501 +3 1295 1296 1493 +3 1498 1496 1495 +3 1299 1484 1298 +3 1487 1486 1489 +3 1475 1314 1313 +3 1477 1480 1478 +3 1311 1310 1466 +3 1471 1469 1468 +3 1308 1307 1457 +3 1460 1459 1462 +3 1443 1444 1440 +3 1304 1448 1306 +3 1440 1434 1443 +3 1440 1303 1302 +3 1300 1301 1433 +3 1437 1438 1433 +3 1453 1451 1450 +3 1526 1527 1338 +3 1526 1286 1522 +3 1522 1524 1528 +3 1529 1528 1530 +3 1527 1531 1339 +3 1339 1338 1527 +3 1530 1528 1532 +3 1529 1533 1534 +3 1531 1535 1536 +3 1536 1340 1531 +3 1533 1529 1530 +3 1534 1537 1535 +3 1536 1538 1539 +3 1539 1341 1536 +3 1537 1534 1533 +3 1535 1540 1538 +3 1539 1541 1542 +3 1542 1342 1539 +3 1540 1535 1537 +3 1538 1543 1541 +3 1542 1544 1545 +3 1545 1343 1542 +3 1543 1538 1540 +3 1541 1546 1544 +3 1545 1547 1548 +3 1548 1344 1545 +3 1546 1541 1543 +3 1544 1549 1547 +3 1548 1550 1551 +3 1551 1337 1548 +3 1549 1544 1546 +3 1547 1552 1550 +3 1551 1553 1554 +3 1554 1336 1551 +3 1552 1547 1549 +3 1550 1555 1553 +3 1554 1556 1557 +3 1557 1334 1554 +3 1555 1550 1552 +3 1553 1558 1556 +3 1557 1559 1560 +3 1560 1335 1557 +3 1558 1553 1555 +3 1556 1561 1559 +3 1560 1562 1563 +3 1563 1332 1560 +3 1561 1556 1558 +3 1559 1564 1562 +3 1563 1565 1566 +3 1566 1333 1563 +3 1564 1559 1561 +3 1562 1567 1565 +3 1566 1568 1569 +3 1569 1330 1566 +3 1567 1562 1564 +3 1565 1570 1568 +3 1569 1571 1572 +3 1572 1331 1569 +3 1570 1565 1567 +3 1568 1573 1571 +3 1572 1574 1575 +3 1575 1329 1572 +3 1573 1568 1570 +3 1571 1576 1574 +3 1575 1577 1578 +3 1578 1328 1575 +3 1576 1571 1573 +3 1574 1579 1577 +3 1578 1580 1581 +3 1581 1327 1578 +3 1579 1574 1576 +3 1577 1582 1580 +3 1581 1583 1584 +3 1584 1325 1581 +3 1582 1577 1579 +3 1580 1585 1583 +3 1584 1586 1587 +3 1587 1326 1584 +3 1585 1580 1582 +3 1583 1588 1586 +3 1587 1589 1590 +3 1590 1324 1587 +3 1588 1583 1585 +3 1586 1591 1589 +3 1590 1592 1593 +3 1593 1323 1590 +3 1591 1586 1588 +3 1589 1594 1592 +3 1593 1595 1596 +3 1596 1322 1593 +3 1594 1589 1591 +3 1592 1597 1595 +3 1596 1598 1599 +3 1599 1320 1596 +3 1597 1592 1594 +3 1595 1600 1598 +3 1599 1601 1602 +3 1602 1321 1599 +3 1600 1595 1597 +3 1598 1603 1601 +3 1602 1604 1605 +3 1605 1319 1602 +3 1603 1598 1600 +3 1601 1606 1604 +3 1605 1607 1608 +3 1608 1318 1605 +3 1606 1601 1603 +3 1604 1609 1607 +3 1608 1610 1611 +3 1611 1316 1608 +3 1609 1604 1606 +3 1607 1612 1610 +3 1611 1436 1435 +3 1435 1317 1611 +3 1612 1607 1609 +3 1610 1523 1436 +3 1523 1610 1612 +3 1611 1317 1316 +3 1435 1301 1317 +3 1607 1610 1608 +3 1605 1604 1607 +3 1316 1318 1608 +3 1604 1602 1601 +3 1605 1318 1319 +3 1598 1601 1599 +3 1321 1602 1319 +3 1596 1595 1598 +3 1321 1320 1599 +3 1595 1593 1592 +3 1596 1320 1322 +3 1589 1592 1590 +3 1323 1593 1322 +3 1587 1586 1589 +3 1323 1324 1590 +3 1586 1584 1583 +3 1587 1324 1326 +3 1580 1583 1581 +3 1325 1584 1326 +3 1578 1577 1580 +3 1325 1327 1581 +3 1577 1575 1574 +3 1578 1327 1328 +3 1571 1574 1572 +3 1329 1575 1328 +3 1569 1568 1571 +3 1329 1331 1572 +3 1568 1566 1565 +3 1569 1331 1330 +3 1330 1333 1566 +3 1562 1565 1563 +3 1525 1532 1524 +3 1526 1522 1528 +3 1554 1334 1336 +3 1524 1532 1528 +3 1286 1526 1338 +3 1528 1529 1526 +3 1531 1527 1534 +3 1534 1527 1529 +3 1526 1529 1527 +3 1538 1541 1539 +3 1538 1536 1535 +3 1339 1531 1340 +3 1539 1342 1341 +3 1535 1531 1534 +3 1547 1545 1544 +3 1536 1341 1340 +3 1344 1343 1545 +3 1542 1343 1342 +3 1541 1544 1542 +3 1550 1548 1547 +3 1551 1550 1553 +3 1548 1337 1344 +3 1551 1336 1337 +3 1557 1556 1559 +3 1557 1335 1334 +3 1553 1556 1554 +3 1332 1335 1560 +3 1332 1563 1333 +3 1611 1610 1436 +3 1560 1559 1562 +3 1346 1345 1613 +3 1613 1614 1346 +3 1614 1615 1347 +3 1616 1617 1348 +3 1617 1618 1349 +3 1618 1619 1352 +3 1619 1620 1351 +3 1621 1622 1350 +3 1622 1623 1421 +3 1623 1624 1422 +3 1625 1626 1423 +3 1626 1627 1424 +3 1628 1426 1425 +3 1627 1628 1425 +3 1351 1352 1619 +3 1629 1630 1345 +3 1422 1421 1623 +3 1615 1616 1348 +3 1629 1426 1628 +3 1345 1630 1613 +3 1620 1350 1351 +3 1617 1349 1348 +3 1347 1346 1614 +3 1349 1618 1352 +3 1615 1348 1347 +3 1622 1421 1350 +3 1345 1426 1629 +3 1425 1424 1627 +3 1424 1423 1626 +3 1624 1423 1422 +3 1350 1620 1621 +3 1624 1625 1423 +3 1354 1353 1631 +3 1631 1632 1354 +3 1632 1633 1355 +3 1634 1635 1356 +3 1635 1636 1357 +3 1636 1637 1360 +3 1637 1638 1359 +3 1639 1640 1358 +3 1640 1641 1377 +3 1641 1642 1378 +3 1643 1644 1379 +3 1644 1645 1380 +3 1646 1382 1381 +3 1645 1646 1381 +3 1359 1360 1637 +3 1647 1648 1353 +3 1378 1377 1641 +3 1633 1634 1356 +3 1647 1382 1646 +3 1353 1648 1631 +3 1638 1358 1359 +3 1635 1357 1356 +3 1355 1354 1632 +3 1357 1636 1360 +3 1633 1356 1355 +3 1640 1377 1358 +3 1353 1382 1647 +3 1381 1380 1645 +3 1380 1379 1644 +3 1642 1379 1378 +3 1358 1638 1639 +3 1642 1643 1379 +3 1427 1368 1649 +3 1649 1650 1427 +3 1650 1651 1428 +3 1652 1653 1429 +3 1653 1654 1430 +3 1654 1655 1432 +3 1655 1656 1431 +3 1657 1658 1362 +3 1658 1659 1361 +3 1659 1660 1363 +3 1661 1662 1364 +3 1662 1663 1365 +3 1664 1367 1366 +3 1663 1664 1366 +3 1431 1432 1655 +3 1665 1666 1368 +3 1363 1361 1659 +3 1651 1652 1429 +3 1665 1367 1664 +3 1368 1666 1649 +3 1656 1362 1431 +3 1653 1430 1429 +3 1428 1427 1650 +3 1430 1654 1432 +3 1651 1429 1428 +3 1658 1361 1362 +3 1368 1367 1665 +3 1366 1365 1663 +3 1365 1364 1662 +3 1660 1364 1363 +3 1362 1656 1657 +3 1660 1661 1364 +3 1415 1376 1667 +3 1667 1668 1415 +3 1668 1669 1416 +3 1670 1671 1417 +3 1671 1672 1418 +3 1672 1673 1420 +3 1673 1674 1419 +3 1675 1676 1370 +3 1676 1677 1369 +3 1677 1678 1371 +3 1679 1680 1372 +3 1680 1681 1373 +3 1682 1375 1374 +3 1681 1682 1374 +3 1419 1420 1673 +3 1683 1684 1376 +3 1371 1369 1677 +3 1669 1670 1417 +3 1683 1375 1682 +3 1376 1684 1667 +3 1674 1370 1419 +3 1671 1418 1417 +3 1416 1415 1668 +3 1418 1672 1420 +3 1669 1417 1416 +3 1676 1369 1370 +3 1376 1375 1683 +3 1374 1373 1681 +3 1373 1372 1680 +3 1678 1372 1371 +3 1370 1674 1675 +3 1678 1679 1372 +3 1384 1685 1686 +3 1685 1383 1687 +3 1383 1685 1384 +3 1688 1687 1385 +3 1383 1385 1687 +3 1386 1689 1688 +3 1688 1385 1386 +3 1689 1387 1690 +3 1387 1689 1386 +3 1691 1690 1388 +3 1387 1388 1690 +3 1389 1692 1691 +3 1691 1388 1389 +3 1692 1390 1693 +3 1390 1692 1389 +3 1693 1390 1391 +3 1694 1693 1391 +3 1695 1394 1696 +3 1696 1394 1395 +3 1695 1697 1396 +3 1396 1394 1695 +3 1397 1697 1698 +3 1697 1397 1396 +3 1699 1398 1698 +3 1397 1698 1398 +3 1699 1700 1392 +3 1392 1398 1699 +3 1393 1700 1701 +3 1700 1393 1392 +3 1694 1399 1701 +3 1393 1701 1399 +3 1391 1399 1694 +3 1702 1703 1401 +3 1703 1395 1401 +3 1402 1704 1400 +3 1400 1704 1702 +3 1404 1705 1706 +3 1402 1404 1706 +3 1403 1405 1707 +3 1705 1403 1707 +3 1708 1406 1709 +3 1708 1405 1406 +3 1710 1407 1408 +3 1710 1709 1407 +3 1711 1712 1410 +3 1410 1712 1408 +3 1711 1409 1713 +3 1409 1411 1713 +3 1412 1384 1686 +3 1714 1413 1412 +3 1412 1686 1714 +3 1413 1715 1414 +3 1715 1413 1714 +3 1411 1414 1716 +3 1715 1716 1414 +3 1410 1409 1711 +3 1411 1716 1713 +3 1407 1709 1406 +3 1712 1710 1408 +3 1705 1404 1403 +3 1707 1405 1708 +3 1400 1702 1401 +3 1402 1706 1704 +3 1395 1703 1696 +3 1717 1718 1719 +3 1719 1720 1717 +3 1721 1722 1723 +3 1718 1723 1719 +3 1724 1722 1725 +3 1726 1727 1728 +3 1729 1722 1721 +3 1730 1731 1732 +3 1732 1728 1727 +3 1733 1734 1735 +3 1736 1737 1738 +3 1739 1740 1741 +3 1742 1739 1743 +3 1740 1744 1741 +3 1745 1744 1746 +3 1736 1734 1737 +3 1734 1733 1737 +3 1747 1748 1745 +3 1749 1750 1751 +3 1752 1750 1753 +3 1754 1755 1756 +3 1757 1754 1758 +3 1759 1750 1749 +3 1760 1761 1762 +3 1762 1756 1755 +3 1763 1764 1765 +3 1766 1767 1768 +3 1769 1770 1771 +3 1730 1735 1731 +3 1767 1764 1763 +3 1747 1749 1751 +3 1521 1518 1772 +3 1773 1525 1772 +3 1515 1774 1775 +3 1518 1775 1772 +3 1512 1774 1515 +3 1506 1759 1776 +3 1750 1759 1753 +3 1758 1754 1756 +3 1752 1757 1758 +3 1746 1744 1740 +3 1741 1743 1739 +3 1543 1777 1738 +3 1540 1777 1543 +3 1778 1537 1533 +3 1543 1738 1546 +3 1751 1748 1747 +3 1521 1772 1525 +3 1779 1494 1780 +3 1491 1488 1780 +3 1485 1482 1781 +3 1488 1485 1782 +3 1479 1783 1784 +3 1482 1784 1781 +3 1476 1783 1479 +3 1473 1785 1786 +3 1470 1787 1785 +3 1464 1788 1787 +3 1458 1767 1788 +3 1789 1771 1770 +3 1789 1790 1720 +3 1766 1768 1769 +3 1720 1791 1717 +3 1742 1743 1736 +3 1775 1518 1515 +3 1738 1737 1546 +3 1782 1780 1488 +3 1494 1491 1780 +3 1786 1476 1473 +3 1738 1742 1736 +3 1473 1470 1785 +3 1788 1461 1458 +3 1790 1789 1770 +3 1452 1768 1455 +3 1792 1452 1449 +3 1442 1793 1446 +3 1439 1794 1442 +3 1439 1441 1795 +3 1523 1796 1797 +3 1609 1798 1796 +3 1606 1799 1798 +3 1603 1800 1799 +3 1597 1729 1800 +3 1722 1729 1725 +3 1726 1728 1801 +3 1724 1802 1801 +3 1794 1793 1442 +3 1718 1721 1723 +3 1803 1549 1737 +3 1540 1537 1777 +3 1533 1804 1778 +3 1805 1804 1530 +3 1773 1805 1532 +3 1503 1753 1759 +3 1753 1503 1500 +3 1786 1783 1476 +3 1767 1766 1764 +3 1797 1441 1523 +3 1728 1732 1731 +3 1802 1724 1725 +3 1806 1582 1579 +3 1807 1808 1576 +3 1570 1809 1573 +3 1567 1810 1811 +3 1561 1812 1564 +3 1564 1812 1810 +3 1552 1803 1555 +3 1813 1555 1803 +3 1506 1503 1759 +3 1765 1761 1760 +3 1768 1767 1455 +3 1769 1771 1766 +3 1512 1509 1776 +3 1532 1525 1773 +3 1792 1446 1793 +3 1449 1446 1792 +3 1778 1777 1537 +3 1804 1533 1530 +3 1612 1796 1523 +3 1795 1794 1439 +3 1606 1798 1609 +3 1549 1803 1552 +3 1800 1603 1600 +3 1799 1606 1603 +3 1812 1561 1813 +3 1813 1561 1558 +3 1729 1594 1725 +3 1594 1729 1597 +3 1567 1564 1810 +3 1726 1801 1802 +3 1570 1567 1811 +3 1809 1807 1573 +3 1591 1725 1594 +3 1591 1588 1814 +3 1573 1807 1576 +3 1806 1579 1808 +3 1806 1814 1585 +3 1582 1806 1585 +3 1591 1814 1725 +3 1576 1808 1579 +3 1441 1797 1795 +3 1811 1809 1570 +3 1800 1600 1597 +3 1814 1588 1585 +3 1555 1813 1558 +3 1737 1549 1546 +3 1796 1612 1609 +3 1792 1768 1452 +3 1735 1730 1733 +3 1767 1458 1455 +3 1760 1763 1765 +3 1761 1756 1762 +3 1790 1791 1720 +3 1776 1509 1506 +3 1461 1788 1464 +3 1753 1757 1752 +3 1774 1512 1776 +3 1753 1500 1779 +3 1787 1467 1464 +3 1779 1500 1497 +3 1787 1470 1467 +3 1497 1494 1779 +3 1744 1745 1748 +3 1782 1485 1781 +3 1482 1479 1784 +3 1530 1532 1805 +3 1773 1613 1630 +3 1773 1772 1613 +3 1614 1772 1775 +3 1772 1614 1613 +3 1774 1615 1775 +3 1614 1775 1615 +3 1774 1776 1616 +3 1616 1615 1774 +3 1616 1776 1617 +3 1776 1759 1617 +3 1746 1621 1745 +3 1620 1747 1745 +3 1745 1621 1620 +3 1747 1619 1749 +3 1619 1747 1620 +3 1759 1749 1618 +3 1619 1618 1749 +3 1759 1618 1617 +3 1740 1622 1746 +3 1623 1739 1624 +3 1622 1740 1623 +3 1625 1742 1738 +3 1624 1739 1742 +3 1627 1626 1777 +3 1626 1625 1738 +3 1777 1778 1627 +3 1778 1804 1628 +3 1629 1805 1630 +3 1773 1630 1805 +3 1629 1628 1804 +3 1804 1805 1629 +3 1626 1738 1777 +3 1627 1778 1628 +3 1739 1623 1740 +3 1742 1625 1624 +3 1746 1622 1621 +3 1791 1631 1648 +3 1791 1790 1631 +3 1632 1790 1770 +3 1790 1632 1631 +3 1769 1633 1770 +3 1632 1770 1633 +3 1769 1768 1634 +3 1634 1633 1769 +3 1634 1768 1635 +3 1768 1792 1635 +3 1797 1639 1795 +3 1638 1794 1795 +3 1795 1639 1638 +3 1794 1637 1793 +3 1637 1794 1638 +3 1792 1793 1636 +3 1637 1636 1793 +3 1792 1636 1635 +3 1796 1640 1797 +3 1641 1798 1642 +3 1640 1796 1641 +3 1643 1799 1800 +3 1642 1798 1799 +3 1645 1644 1729 +3 1644 1643 1800 +3 1729 1721 1645 +3 1721 1718 1646 +3 1647 1717 1648 +3 1791 1648 1717 +3 1647 1646 1718 +3 1718 1717 1647 +3 1644 1800 1729 +3 1645 1721 1646 +3 1798 1641 1796 +3 1799 1643 1642 +3 1797 1640 1639 +3 1806 1658 1814 +3 1659 1808 1660 +3 1658 1806 1659 +3 1661 1807 1809 +3 1660 1808 1807 +3 1663 1662 1811 +3 1662 1661 1809 +3 1811 1810 1663 +3 1810 1812 1664 +3 1665 1813 1666 +3 1803 1666 1813 +3 1665 1664 1812 +3 1812 1813 1665 +3 1662 1809 1811 +3 1663 1810 1664 +3 1808 1659 1806 +3 1807 1661 1660 +3 1814 1658 1657 +3 1803 1649 1666 +3 1803 1737 1649 +3 1650 1737 1733 +3 1737 1650 1649 +3 1730 1651 1733 +3 1650 1733 1651 +3 1730 1732 1652 +3 1652 1651 1730 +3 1652 1732 1653 +3 1732 1727 1653 +3 1814 1657 1725 +3 1656 1802 1725 +3 1725 1657 1656 +3 1802 1655 1726 +3 1655 1802 1656 +3 1727 1726 1654 +3 1655 1654 1726 +3 1727 1654 1653 +3 1767 1676 1788 +3 1677 1763 1678 +3 1676 1767 1677 +3 1679 1760 1762 +3 1678 1763 1760 +3 1681 1680 1755 +3 1680 1679 1762 +3 1755 1754 1681 +3 1754 1757 1682 +3 1683 1753 1684 +3 1779 1684 1753 +3 1683 1682 1757 +3 1757 1753 1683 +3 1680 1762 1755 +3 1681 1754 1682 +3 1763 1677 1767 +3 1760 1679 1678 +3 1788 1676 1675 +3 1779 1667 1684 +3 1779 1780 1667 +3 1668 1780 1782 +3 1780 1668 1667 +3 1781 1669 1782 +3 1668 1782 1669 +3 1781 1784 1670 +3 1670 1669 1781 +3 1670 1784 1671 +3 1784 1783 1671 +3 1788 1675 1787 +3 1674 1785 1787 +3 1787 1675 1674 +3 1785 1673 1786 +3 1673 1785 1674 +3 1783 1786 1672 +3 1673 1672 1786 +3 1783 1672 1671 +3 1815 1816 1685 +3 1687 1688 1817 +3 1685 1687 1815 +3 1688 1818 1817 +3 1691 1819 1690 +3 1689 1819 1818 +3 1820 1819 1691 +3 1693 1821 1822 +3 1694 1823 1821 +3 1701 1824 1823 +3 1699 1824 1700 +3 1698 1825 1699 +3 1697 1826 1827 +3 1695 1828 1826 +3 1703 1828 1696 +3 1702 1829 1703 +3 1704 1830 1831 +3 1706 1832 1830 +3 1707 1832 1705 +3 1708 1833 1707 +3 1709 1834 1835 +3 1710 1836 1834 +3 1712 1837 1836 +3 1713 1837 1711 +3 1838 1839 1716 +3 1716 1839 1713 +3 1686 1816 1714 +3 1840 1714 1816 +3 1699 1825 1824 +3 1686 1685 1816 +3 1827 1698 1697 +3 1825 1698 1827 +3 1716 1715 1838 +3 1838 1715 1840 +3 1828 1703 1829 +3 1696 1828 1695 +3 1837 1712 1711 +3 1839 1837 1713 +3 1702 1704 1831 +3 1710 1834 1709 +3 1830 1704 1706 +3 1833 1832 1707 +3 1709 1835 1708 +3 1708 1835 1833 +3 1710 1712 1836 +3 1706 1705 1832 +3 1829 1702 1831 +3 1714 1840 1715 +3 1692 1822 1820 +3 1694 1701 1823 +3 1700 1824 1701 +3 1694 1821 1693 +3 1687 1817 1815 +3 1822 1692 1693 +3 1818 1688 1689 +3 1820 1691 1692 +3 1819 1689 1690 +3 1695 1826 1697 +3 1744 1826 1828 +3 1744 1748 1826 +3 1827 1748 1751 +3 1748 1827 1826 +3 1750 1825 1751 +3 1827 1751 1825 +3 1750 1752 1824 +3 1824 1825 1750 +3 1823 1752 1758 +3 1752 1823 1824 +3 1756 1821 1758 +3 1823 1758 1821 +3 1756 1822 1821 +3 1756 1761 1822 +3 1720 1816 1789 +3 1815 1771 1789 +3 1789 1816 1815 +3 1771 1817 1766 +3 1817 1771 1815 +3 1764 1766 1818 +3 1817 1818 1766 +3 1819 1765 1764 +3 1764 1818 1819 +3 1765 1820 1761 +3 1820 1765 1819 +3 1820 1822 1761 +3 1719 1840 1720 +3 1838 1723 1839 +3 1840 1719 1838 +3 1837 1722 1724 +3 1839 1723 1722 +3 1834 1836 1801 +3 1836 1837 1724 +3 1731 1835 1728 +3 1728 1834 1801 +3 1735 1832 1833 +3 1731 1833 1835 +3 1832 1735 1734 +3 1734 1736 1830 +3 1829 1741 1828 +3 1744 1828 1741 +3 1829 1831 1743 +3 1743 1741 1829 +3 1736 1831 1830 +3 1831 1736 1743 +3 1735 1833 1731 +3 1830 1832 1734 +3 1836 1724 1801 +3 1834 1728 1835 +3 1723 1838 1719 +3 1722 1837 1839 +3 1720 1840 1816 + diff --git a/AABB_tree/demo/normal.h b/AABB_tree/demo/normal.h new file mode 100644 index 00000000000..f6b97ee3b28 --- /dev/null +++ b/AABB_tree/demo/normal.h @@ -0,0 +1,45 @@ +#ifndef _COMPUTE_NORMAL_ +#define _COMPUTE_NORMAL_ + +template +typename Kernel::Vector_3 compute_facet_normal(Facet& f) +{ + typedef typename Kernel::Point_3 Point; + typedef typename Kernel::Vector_3 Vector; + typedef typename Facet::Halfedge_around_facet_circulator HF_circulator; + Vector normal = CGAL::NULL_VECTOR; + HF_circulator he = f.facet_begin(); + HF_circulator end = he; + CGAL_For_all(he,end) + { + const Point& prev = he->prev()->vertex()->point(); + const Point& curr = he->vertex()->point(); + const Point& next = he->next()->vertex()->point(); + Vector n = CGAL::cross_product(next-curr,prev-curr); + normal = normal + (n / std::sqrt(n*n)); + } + return normal / std::sqrt(normal * normal); +} + +template +typename Kernel::Vector_3 compute_vertex_normal(Vertex& v) +{ + typedef typename Kernel::Point_3 Point; + typedef typename Kernel::Vector_3 Vector; + typedef typename Vertex::Halfedge_around_vertex_circulator HV_circulator; + typedef typename Vertex::Facet Facet; + Vector normal = CGAL::NULL_VECTOR; + HV_circulator he = v.vertex_begin(); + HV_circulator end = he; + CGAL_For_all(he,end) + { + if(!he->is_border()) + { + Vector n = compute_facet_normal(*he->facet()); + normal = normal + (n / std::sqrt(n*n)); + } + } + return normal / std::sqrt(normal * normal); +} + +#endif // _COMPUTE_NORMAL_ diff --git a/AABB_tree/demo/render.h b/AABB_tree/demo/render.h new file mode 100644 index 00000000000..67e870a9158 --- /dev/null +++ b/AABB_tree/demo/render.h @@ -0,0 +1,66 @@ +#ifndef _GL_RENDER_ +#define _GL_RENDER_ + +#include +#include "normal.h" + +template +void gl_render_facets(Polyhedron& polyhedron) +{ + typedef typename Polyhedron::Traits Kernel; + typedef typename Kernel::Point_3 Point; + typedef typename Kernel::Vector_3 Vector; + typedef typename Polyhedron::Facet Facet; + typedef typename Polyhedron::Facet_iterator Facet_iterator; + typedef typename Polyhedron::Halfedge_around_facet_circulator HF_circulator; + + Facet_iterator f; + for(f = polyhedron.facets_begin(); + f != polyhedron.facets_end(); + f++) + { + ::glBegin(GL_POLYGON); + + // compute normal + Vector n = compute_facet_normal(*f); + ::glNormal3d(n.x(),n.y(),n.z()); + + // revolve around current face to get vertices + HF_circulator he = f->facet_begin(); + HF_circulator end = he; + CGAL_For_all(he,end) + { + const Point& p = he->vertex()->point(); + ::glVertex3d(p.x(),p.y(),p.z()); + } + ::glEnd(); + } +} // end gl_render_facets + +template +void gl_render_edges(Polyhedron& polyhedron) +{ + typedef typename Polyhedron::Traits Kernel; + typedef typename Kernel::Point_3 Point; + typedef typename Polyhedron::Edge_iterator Edge_iterator; + + ::glBegin(GL_LINES); + Edge_iterator he; + for(he = polyhedron.edges_begin(); + he != polyhedron.edges_end(); + he++) + { + const Point& a = he->vertex()->point(); + const Point& b = he->opposite()->vertex()->point(); + ::glVertex3d(a.x(),a.y(),a.z()); + ::glVertex3d(b.x(),b.y(),b.z()); + } + ::glEnd(); +} // end gl_render_edges + + +#endif // _GL_RENDER_ + + + + diff --git a/AABB_tree/demo/resources/about.html b/AABB_tree/demo/resources/about.html new file mode 100644 index 00000000000..8b5c76b19b9 --- /dev/null +++ b/AABB_tree/demo/resources/about.html @@ -0,0 +1,30 @@ + + +

3D Polyhedral Surfaces

+

Copyright ©2008 + GeometryFactory + and INRIA Sophia Antipolis - Mediterranee

+

This application illustrates the 3D polyhedral surfaces + of CGAL, and operations and + algorithms that can be applied to.

+

See also the following chapters of the manual: +

+

+ + diff --git a/AABB_tree/demo/resources/cgal_logo.xpm b/AABB_tree/demo/resources/cgal_logo.xpm new file mode 100644 index 00000000000..6a69b3d67e1 --- /dev/null +++ b/AABB_tree/demo/resources/cgal_logo.xpm @@ -0,0 +1,24 @@ +/* XPM */ +const char * demoicon_xpm[] = { +/* columns rows colors chars-per-pixel */ +"16 16 3 1", +" c None", +". c #FFFF00", +"+ c #000000", +/* pixels */ +"................", +"...++++...++++..", +"..+....+.+....+.", +"..+......+......", +"..+......+..+++.", +"..+......+....+.", +"..+....+.+....+.", +"...++++...++++..", +"................", +"...++++...+.....", +"..+....+..+.....", +"..+....+..+.....", +"..++++++..+.....", +"..+....+..+.....", +"..+....+..+++++.", +"................"}; diff --git a/AABB_tree/demo/types.h b/AABB_tree/demo/types.h new file mode 100644 index 00000000000..b148164ce85 --- /dev/null +++ b/AABB_tree/demo/types.h @@ -0,0 +1,19 @@ +#ifndef POLYHEDRON_TYPE_H +#define POLYHEDRON_TYPE_H + +#include +#include + +typedef CGAL::Exact_predicates_inexact_constructions_kernel Kernel; + +typedef Kernel::FT FT; +typedef Kernel::Line_3 Line; +typedef Kernel::Point_3 Point; +typedef Kernel::Plane_3 Plane; +typedef Kernel::Sphere_3 Sphere; +typedef Kernel::Vector_3 Vector; +typedef Kernel::Triangle_3 Triangle; +typedef Kernel::Iso_cuboid_3 Iso_cuboid; +typedef CGAL::Polyhedron_3 Polyhedron; + +#endif // POLYHEDRON_TYPE_H diff --git a/AABB_tree/demo/ui_MainWindow.h b/AABB_tree/demo/ui_MainWindow.h new file mode 100644 index 00000000000..3442c81e00d --- /dev/null +++ b/AABB_tree/demo/ui_MainWindow.h @@ -0,0 +1,104 @@ +/******************************************************************************** +** Form generated from reading ui file 'MainWindow.ui' +** +** Created: Sat 27. Jun 22:31:39 2009 +** by: Qt User Interface Compiler version 4.4.3 +** +** WARNING! All changes made in this file will be lost when recompiling ui file! +********************************************************************************/ + +#ifndef UI_MAINWINDOW_H +#define UI_MAINWINDOW_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "Viewer.h" + +QT_BEGIN_NAMESPACE + +class Ui_MainWindow +{ +public: + QAction *actionQuit; + QAction *actionLoadPolyhedron; + QWidget *centralwidget; + QGridLayout *gridLayout; + Viewer *viewer; + QMenuBar *menubar; + QMenu *menuFile; + QMenu *menuView; + QStatusBar *statusbar; + + void setupUi(QMainWindow *MainWindow) + { + if (MainWindow->objectName().isEmpty()) + MainWindow->setObjectName(QString::fromUtf8("MainWindow")); + MainWindow->resize(978, 594); + QIcon icon; + icon.addPixmap(QPixmap(QString::fromUtf8(":/cgal/icons/resources/cgal_logo.xpm")), QIcon::Normal, QIcon::Off); + MainWindow->setWindowIcon(icon); + actionQuit = new QAction(MainWindow); + actionQuit->setObjectName(QString::fromUtf8("actionQuit")); + actionLoadPolyhedron = new QAction(MainWindow); + actionLoadPolyhedron->setObjectName(QString::fromUtf8("actionLoadPolyhedron")); + centralwidget = new QWidget(MainWindow); + centralwidget->setObjectName(QString::fromUtf8("centralwidget")); + gridLayout = new QGridLayout(centralwidget); + gridLayout->setObjectName(QString::fromUtf8("gridLayout")); + viewer = new Viewer(centralwidget); + viewer->setObjectName(QString::fromUtf8("viewer")); + viewer->setLocale(QLocale(QLocale::English, QLocale::UnitedStates)); + + gridLayout->addWidget(viewer, 0, 1, 1, 1); + + MainWindow->setCentralWidget(centralwidget); + menubar = new QMenuBar(MainWindow); + menubar->setObjectName(QString::fromUtf8("menubar")); + menubar->setGeometry(QRect(0, 0, 978, 24)); + menuFile = new QMenu(menubar); + menuFile->setObjectName(QString::fromUtf8("menuFile")); + menuView = new QMenu(menubar); + menuView->setObjectName(QString::fromUtf8("menuView")); + MainWindow->setMenuBar(menubar); + statusbar = new QStatusBar(MainWindow); + statusbar->setObjectName(QString::fromUtf8("statusbar")); + MainWindow->setStatusBar(statusbar); + + menubar->addAction(menuFile->menuAction()); + menubar->addAction(menuView->menuAction()); + menuFile->addAction(actionQuit); + menuFile->addAction(actionLoadPolyhedron); + + retranslateUi(MainWindow); + + QMetaObject::connectSlotsByName(MainWindow); + } // setupUi + + void retranslateUi(QMainWindow *MainWindow) + { + MainWindow->setWindowTitle(QApplication::translate("MainWindow", "CGAL AABB tree demo", 0, QApplication::UnicodeUTF8)); + actionQuit->setText(QApplication::translate("MainWindow", "&Quit", 0, QApplication::UnicodeUTF8)); + actionQuit->setShortcut(QApplication::translate("MainWindow", "Ctrl+Q", 0, QApplication::UnicodeUTF8)); + actionLoadPolyhedron->setText(QApplication::translate("MainWindow", "Load polyhedron...", 0, QApplication::UnicodeUTF8)); + menuFile->setTitle(QApplication::translate("MainWindow", "&File", 0, QApplication::UnicodeUTF8)); + menuView->setTitle(QApplication::translate("MainWindow", "&View", 0, QApplication::UnicodeUTF8)); + } // retranslateUi + +}; + +namespace Ui { + class MainWindow: public Ui_MainWindow {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // UI_MAINWINDOW_H